Curso HashiCorp Terraform Certified Associate Preparation

  • DevOps | CI | CD | Kubernetes | Web3

Curso HashiCorp Terraform Certified Associate Preparation

24 horas
Visão Geral

Curso Preparação para a Certificação HashiCorp Terraform Certified Associate. Este curso intensivo e focado é projetado especificamente para engenheiros de DevOps, engenheiros de Cloud, arquitetos de infraestrutura e profissionais de TI que desejam obter a certificação HashiCorp Certified Terraform Associate. Do ponto de vista técnico, o curso cobrirá todos os objetivos do exame, desde os conceitos fundamentais de Infrastructure as Code (IaC) e a arquitetura do Terraform, passando pela sintaxe HCL, o ciclo de vida do Terraform CLI (init, plan, apply, destroy), gerenciamento de estado (local e remoto), uso de providers, módulos, e as capacidades básicas do Terraform Cloud/Enterprise. O foco será em exemplos práticos, laboratórios e cenários de exame para garantir que os participantes não apenas compreendam a teoria, mas também sejam capazes de aplicá-la e demonstrar proficiência para o exame.

Curso Preparação para a Certificação HashiCorp Terraform Certified Associate, a certificação HashiCorp Certified Terraform Associate valida as habilidades dos profissionais em uma das ferramentas de IaC mais dominantes do mercado. Para as empresas, significa ter uma equipe que pode provisionar e gerenciar infraestrutura de forma consistente, escalável e segura, reduzindo erros manuais e acelerando o tempo de entrega de projetos. A certificação atesta a capacidade de padronizar ambientes e implementar práticas de DevOps eficazes, o que leva a maior agilidade nos negócios, otimização de custos e melhor governança de TI. Profissionais certificados são altamente valorizados e procurados, impulsionando a eficiência e a inovação nas organizações.

Objetivo

Ao final do Curso Preparação para a Certificação HashiCorp Terraform Certified Associate, você será capaz de:

  • Compreender os conceitos fundamentais de Infrastructure as Code (IaC) e a proposta de valor do Terraform.
  • Explicar a arquitetura do Terraform (Core, Providers, State).
  • Dominar a linguagem de configuração HCL (HashiCorp Configuration Language) para definir recursos, data sources, variáveis e outputs.
  • Utilizar o Terraform CLI para todas as etapas do ciclo de vida da infraestrutura (init, plan, apply, destroy, validate, fmt, taint, import, workspace).
  • Gerenciar e manipular o estado do Terraform (local, remoto, bloqueio, considerações de segurança).
  • Desenvolver e consumir módulos Terraform para reutilização de código e modularidade.
  • Entender o papel dos Providers e como configurá-los.
  • Compreender as capacidades e usos do Terraform Cloud/Enterprise.
  • Aplicar as melhores práticas para escrever e organizar configurações Terraform.
  • Estar totalmente preparado e confiante para realizar e passar no exame HashiCorp Certified Terraform Associate.
Publico Alvo
  • Profissionais buscando a Certificação: Indivíduos que pretendem fazer o exame HashiCorp Certified Terraform Associate.
  • Engenheiros de DevOps/Cloud/Infraestrutura: Que utilizam ou planejam utilizar Terraform no dia a dia e querem formalizar seu conhecimento.
  • Desenvolvedores: Que estão se aprofundando em IaC e automação de infraestrutura.
Pre-Requisitos
  • Noções básicas de Cloud Computing: Familiaridade com conceitos de VMs, redes, armazenamento em qualquer provedor de nuvem (AWS, Azure, GCP).
  • Familiaridade com linha de comando (CLI): Comandos básicos de navegação e execução.
  • Conhecimento de um editor de texto (VS Code, Sublime Text, etc.).
  • (Desejável) Noções de controle de versão (Git).
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico

Módulo 1: Introdução à IaC e Fundamentos do Terraform (3 horas)

  • 1.1. O que é Infrastructure as Code (IaC)?
    • Definição, benefícios e princípios.
    • Ferramentas de IaC: declarativas vs. imperativas.
  • 1.2. Introdução ao Terraform:
    • Propósito e casos de uso do Terraform.
    • Comparativo com outras ferramentas (Ansible, Chef, Puppet, CloudFormation).
  • 1.3. Arquitetura do Terraform:
    • Terraform Core.
    • Providers (Provedores de Infraestrutura).
    • State (Estado).
  • 1.4. Instalação e Configuração Básica do Terraform CLI:
    • Instalando o Terraform.
    • Configuração inicial de um provedor (ex: AWS, Azure, GCP).
  • Prática: Instalar o Terraform CLI. Configurar um provedor de nuvem básico. Rodar um terraform init e terraform plan simples.

Módulo 2: Sintaxe HCL e Blocos de Configuração Essenciais (4 horas)

  • 2.1. HashiCorp Configuration Language (HCL):
    • Sintaxe básica HCL: blocos, argumentos, atributos.
    • Tipos de dados HCL (strings, numbers, booleans, lists, maps, objects).
  • 2.2. Bloco resource:
    • Definindo recursos de infraestrutura (ex: aws_instance, azurerm_resource_group, google_compute_instance).
    • Nomes lógicos e nomes de recursos.
  • 2.3. Bloco data (Data Sources):
    • Consultando informações de infraestrutura existente.
    • Exemplos de uso (ex: aws_ami, azurerm_resource_group, google_compute_subnetwork).
  • 2.4. Variáveis de Entrada (variable):
    • Definindo variáveis para tornar as configurações reutilizáveis.
    • default, description, type.
    • Métodos de passagem de variáveis (CLI, .tfvars, variáveis de ambiente).
  • 2.5. Saídas (output):
    • Expondo informações úteis da infraestrutura provisionada.
  • 2.6. Variáveis Locais (locals):
    • Definindo variáveis intermediárias para simplificar expressões complexas.
  • Prática: Escrever uma configuração Terraform com recursos, data sources, variáveis de entrada e outputs para provisionar uma VM básica em um provedor de nuvem.

Módulo 3: O Ciclo de Vida do Terraform CLI (5 horas)

  • 3.1. terraform init:
    • Inicialização de diretórios de trabalho.
    • Download de plugins de providers e módulos.
    • Configuração de backends de estado.
  • 3.2. terraform plan:
    • Geração de um plano de execução.
    • Analisando o plano: adições, modificações, deleções.
    • terraform plan -out=file.
  • 3.3. terraform apply:
    • Executando o plano para provisionar a infraestrutura.
    • Confirmação e automação.
  • 3.4. terraform destroy:
    • Removendo a infraestrutura gerenciada pelo Terraform.
  • 3.5. Comandos de Validação e Formatação:
    • terraform validate: Verificando a sintaxe e a consistência da configuração.
    • terraform fmt: Formatando arquivos HCL.
    • tflint: Ferramenta de linting (opcional, mas recomendado).
  • 3.6. Gerenciamento de Recursos Específicos:
    • terraform import: Importando infraestrutura existente para o estado do Terraform.
    • terraform taint / untaint: Marcando recursos para serem recriados.
    • terraform refresh: Atualizando o estado local com a infraestrutura real.
  • 3.7. Workspaces (terraform workspace):
    • Gerenciando múltiplos ambientes (dev, prod) a partir da mesma configuração.
  • Prática: Realizar o ciclo de vida completo (init, plan, apply, destroy). Utilizar validate e fmt. Importar um recurso existente. Criar e gerenciar workspaces.

Módulo 4: Providers, Recursos e Meta-Argumentos (3 horas)

  • 4.1. Configuração de Providers:
    • Bloco provider.
    • Múltiplas instâncias de provedores (aliasing).
    • Versão de provedores.
  • 4.2. Atributos e Referências:
    • Acessando atributos de recursos e data sources.
    • Interpolação de variáveis e expressões.
  • 4.3. Meta-Argumento count:
    • Provisionando múltiplas instâncias do mesmo recurso.
    • Acessando elementos da lista de recursos.
  • 4.4. Meta-Argumento for_each:
    • Provisionando múltiplos recursos de forma mais flexível com mapas e sets.
  • 4.5. Meta-Argumento depends_on:
    • Gerenciando dependências explícitas entre recursos.
  • Prática: Usar count para criar múltiplas VMs. Usar for_each para criar recursos baseados em um mapa. Adicionar uma dependência explícita usando depends_on.

Módulo 5: Gerenciamento de Estado (State Management) (3 horas)

  • 5.1. O Arquivo de Estado (State File):
    • O que é o estado do Terraform e por que ele é crucial.
    • Onde o estado é armazenado localmente (terraform.tfstate).
    • Conteúdo do arquivo de estado (mapeamento da infraestrutura real).
  • 5.2. Backends de Estado Remotos:
    • Benefícios do estado remoto (colaboração, bloqueio, durabilidade).
    • Configurando backends comuns (S3, Azure Storage Account, GCS, Terraform Cloud).
    • Considerações de segurança para o estado remoto.
  • 5.3. Bloqueio de Estado (State Locking):
    • Como o Terraform evita edições simultâneas do estado.
    • O papel dos backends no bloqueio.
  • 5.4. Manipulação do Estado (terraform state commands):
    • list, show, mv, rm.
    • Removendo recursos do estado (state rm).
    • Importando recursos para o estado (state import).
  • 5.5. Dados Sensíveis no Estado:
    • Limitações e melhores práticas para senhas e chaves.
  • Prática: Configurar um backend de estado remoto (ex: S3 ou Azure Storage). Realizar operações de estado (terraform state list, terraform state rm). Discutir como evitar dados sensíveis no estado.

Módulo 6: Reutilização de Código com Módulos (3 horas)

  • 6.1. O que são Módulos Terraform?
    • Encapsulando e reutilizando configurações Terraform.
    • Hierarquia de módulos (Root Module, Child Modules).
  • 6.2. Estrutura de um Módulo:
    • main.tf, variables.tf, outputs.tf.
  • 6.3. Fontes de Módulos (Module Sources):
    • Módulos locais.
    • Módulos remotos (Terraform Registry, Git, S3/GCS).
  • 6.4. Passando Variáveis e Recebendo Outputs de Módulos:
    • source, version.
    • Input variables e Output attributes.
  • 6.5. Boas Práticas para Módulos:
    • Granularidade, documentação, versionamento.
  • Prática: Criar um módulo Terraform reutilizável (ex: para uma rede VPC/VNet básica). Consumir o módulo em uma configuração raiz e passar variáveis.

Módulo 7: Terraform Cloud/Enterprise e Preparação Final (2 horas)

  • 7.1. Introdução ao Terraform Cloud/Enterprise:
    • O que é e suas principais funcionalidades.
    • Remote Operations: Execução de Terraform na nuvem.
    • Workspaces e Organizações.
    • Version Control System (VCS) Integration: Fluxo de trabalho baseado em Git.
  • 7.2. Política como Código (Policy as Code):
    • Visão geral do Sentinel para garantir conformidade e governança.
  • 7.3. Gerenciamento de Custos e Colaboração:
    • Estimativa de custos.
    • Colaboração em equipes.
  • 7.4. Revisão dos Objetivos do Exame:
    • Revisão ponto a ponto de todos os objetivos do exame HashiCorp Certified Terraform Associate.
  • 7.5. Estratégias para o Exame:
    • Formato do exame, tipos de questão.
    • Dicas para a prova (gerenciamento de tempo, leitura de questões).
    • Recursos de estudo adicionais (documentação, simulados).
  • Prática: Conectar uma configuração local ao Terraform Cloud e executar um plan/apply remoto. Revisar questões de exemplo no estilo do exame.
TENHO INTERESSE

Cursos Relacionados

Curso Ansible Red Hat Basics Automation Technical Foundation

16 horas

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Curso Ansible Linux Automation with Ansible

24 horas

Ansible Overview of Ansible architecture

16h

Advanced Automation: Ansible Best Practices

32h