Terraform para Iniciantes

Neste curso, aprenda os fundamentos de Infraestrutura como Código (IaC) usando Terraform. Explore instalação, configuração de projeto, criação de recursos, variáveis, outputs, módulos, gerenciamento de estado e destruição de recursos.

DevOps

💡 Este tutorial foi traduzido do inglês com assistência de IA. Para ver o original, você pode mudar para a versão em inglês

Introdução

Aprenda o workflow essencial de Infrastructure as Code do Terraform em oito laboratórios guiados no terminal. Após instalar no Ubuntu, você escreverá HCL, inicializará providers, planejará e aplicará mudanças, usará variáveis e outputs, criará um módulo local, inspecionará state e realizará uma destruição controlada.

O curso usa deliberadamente o provider hashicorp/local para gerenciar arquivos no laboratório. Assim você se concentra nos conceitos e comandos do Terraform sem plataforma cloud, credenciais ou infraestrutura cobrada.

O que você aprenderá

Ao concluir o curso, você saberá:

  • Instalar Terraform pelo repositório Ubuntu oficial da HashiCorp e verificar sua chave de assinatura.
  • Declarar um provider em HCL, inicializar com terraform init e inspecionar plugins baixados.
  • Definir um resource local_file, visualizar com terraform plan, aplicar e verificar o arquivo criado.
  • Declarar variáveis de entrada tipadas e fornecer valores para tornar a configuração flexível.
  • Definir outputs a partir de atributos de recursos e recuperá-los com terraform output.
  • Construir e chamar um child module local com entradas e saídas a partir da configuração root.
  • Inspecionar state local com terraform show, terraform state list e o arquivo, mover um endereço e executar refresh.
  • Visualizar a remoção com terraform plan -destroy, executar terraform destroy e confirmar o resultado.

Para quem é este curso

O curso é para iniciantes em Terraform, estudantes DevOps júnior e desenvolvedores que desejam compreender um workflow declarativo antes de trabalhar com provider cloud. Ele relaciona configuração, plugins, plans, resources, outputs, modules e state.

Pré-requisitos: Não é necessária experiência com Terraform. Você deve saber navegar em um terminal Ubuntu, criar e editar arquivos de texto e ler saídas de comandos; noções de configuração e instalação por linha de comando são úteis.

Ambiente de aprendizagem: Os oito laboratórios executam em terminais Ubuntu 22.04 fornecidos. Você instala Terraform no primeiro e depois trabalha com projetos locais e hashicorp/local, sem console cloud no navegador.

Perguntas frequentes

Vou criar recursos reais na AWS, Azure, Google Cloud ou outra nuvem?

Não. Todos os recursos são arquivos locais criados por hashicorp/local. Você aprende o workflow comum a cloud providers, sem credenciais ou custos.

Qual é a profundidade do gerenciamento de state?

Inclui inspeção local, lista de endereços, movimentação de um endereço e refresh. Remote backends, locking, workspaces, import e trabalho em equipe não são abordados.

O lab de modules usa o Terraform Registry público?

Não. Você cria um child module no diretório local modules, define entradas e saídas e o chama pela raiz. Publicação, versionamento e Registry modules ficam fora do escopo.

Preciso instalar Terraform no meu computador antes do curso?

Não. A instalação e os exercícios acontecem nos ambientes Ubuntu fornecidos, sem alterar sua máquina pessoal.

Professor

labby
Labby
Labby is the LabEx teacher.