Curso: Fundamentals Terraform
O curso Fundamentals Terraform é ideal para profissionais de DevOps, engenheiros de software, administradores de sistemas e desenvolvedores que desejam aprender a utilizar o Terraform para gerenciar e automatizar infraestrutura. O curso abrange desde a instalação e conceitos básicos até o provisionamento e gerenciamento de ambientes em cloud com Terraform, incluindo boas práticas de modularização e gerenciamento de estado.
1. Introdução ao Terraform e Infraestrutura como Código
- O que é Terraform? Visão geral e benefícios
- Princípios de infraestrutura como código (IaC)
- Instalação e configuração do Terraform
- Conceitos básicos de provedores de infraestrutura (AWS, Azure, GCP)
2. Fundamentos da Sintaxe HCL (HashiCorp Configuration Language)
- Entendimento da sintaxe HCL para criar recursos
- Definição de blocos de recursos:
resource
, provider
, variable
- Uso de variáveis e outputs para reutilização de código
- Uso de dependências implícitas e explícitas entre recursos
3. Provisão e Gerenciamento de Infraestrutura
- Comandos básicos do Terraform:
terraform init
, terraform plan
, terraform apply
, terraform destroy
- Criação e gerenciamento de instâncias de nuvem (EC2, VM)
- Configuração de redes e provisionamento de VPCs, subnets e grupos de segurança
- Gerenciamento de storage (S3, discos) e bancos de dados (RDS, etc.) com Terraform
4. Gerenciamento de Estado no Terraform
- Entendimento do conceito de estado no Terraform
- Gerenciamento de arquivos de estado locais e remotos
- Boas práticas para armazenamento seguro do estado
- Divisão de infraestrutura em workspaces e ambientes diferentes (desenvolvimento, produção)
5. Modularização e Reutilização de Código
- Introdução aos módulos do Terraform
- Criação de módulos reutilizáveis para provisionamento de infraestrutura
- Uso de módulos externos do Terraform Registry
- Estruturação e organização de código para projetos complexos
6. Provisionamento Avançado com Terraform
- Integração de scripts de provisionamento (Shell, Ansible, etc.) com Terraform
- Uso de provisões remotas e local-exec
- Gerenciamento de rotas e balanceamento de carga (ELB, ALB) com Terraform
- Configuração de DNS e certificados SSL (Route 53, Let’s Encrypt)
7. Boas Práticas e Colaboração com Equipes
- Implementação de controle de versão para código Terraform (Git)
- Uso de práticas de revisão e controle de alterações
- Boas práticas de segurança e governança em Terraform
- Automatização de infraestrutura com integração contínua (CI/CD)
8. Integração com Serviços de Cloud
- Uso do Terraform com provedores de cloud (AWS, Azure, Google Cloud)
- Configuração de autenticação e permissões para o Terraform em ambientes de cloud
- Provisão e destruição de infraestrutura de forma automatizada
- Exemplos práticos de implantação de ambientes multi-cloud
9. Preparação para Certificações e Próximos Passos
- Exploração de certificações Terraform: Terraform Associate
- Práticas de simulação e testes para certificação
- Revisão de conceitos avançados: Remote State, Workspaces e módulos
- Recursos adicionais e boas práticas para continuar aprendendo Terraform
Pré-requisitos
- Conhecimento básico de redes, sistemas operacionais e infraestrutura de cloud
- Experiência com linha de comando e conceitos de automação é recomendada
A quem se dirige
- Engenheiros de DevOps que buscam automatizar provisionamento de infraestrutura
- Desenvolvedores que desejam aprender a usar infraestrutura como código
- Administradores de sistemas que desejam gerenciar ambientes de nuvem com eficiência
- Profissionais que buscam certificações Terraform e desejam otimizar sua gestão de infraestrutura