Visão Geral
Terraform é um aparelho para construir, mudar, e versionar infra-estruturas de forma segura e rápida. A Terraform facilita a utilização de Infra-estruturas como Código para o fornecimento e gestão de qualquer nuvem, serviço ou infra-estrutura. A Terraform pode gerir fornecedores de serviços existentes e populares, bem como soluções internas personalizadas. A Terraform liga-se a vários serviços e ajuda a criar, configurar e gerir esses serviços. A infra-estrutura que a Terraform gere pode ser alojada em nuvens públicas como a Amazon Web Services (AWS), Microsoft Azure, e Google Cloud Platform (GCP), ou on-prem em nuvens privadas como VMWare vSphere, OpenStack, ou CloudStack.
Neste Curso de Formação de Certificação Terraform, vamos levá-lo em Terraform a partir do básico. Enquanto constrói uma base forte para que possa fazer um mergulho profundo nos seus blocos de construção e compreender passo a passo o processo de utilização da Terraform.
Conteúdo Programatico
Getting Started & Setting Up Labs
- Choosing a right Infrastructure as Code tool
- Installing Terraform - Windows Users
- Installing Terraform - MacOS and Linux Users
- Choosing Right IDE for Terraform IAC development
- Setting up AWS account
Deploying Infrastructure with Terraform
- Creating first EC2 instance with Terraform
- Understanding Resources & Providers
- Understanding Resource & Providers - Part 2
- Destroying Infrastructure with Terraform
- Understanding Terraform State files
- Understanding Desired & Current States
- Challenges with the current state on computed values
- Terraform Provider Versioning
- Types of Terraform Providers
Read, Generate, Modify Configurations
- Understanding Attributes and Output Values in Terraform
- Referencing Cross-Account Resource Attributes
- Terraform Variables
- Approaches for Variable Assignment
- Data Types for Variables
- Fetching Data from Maps and List in Variable
- Count and Count Index
- Conditional Expressions
- Local Values
- Terraform Functions
- Data Sources
- Debugging in Terraform
- Terraform Format
- Validating Terraform Configuration Files
- Load Order & Semantics
- Dynamic Blocks
- Tainting Resources
- Splat Expressions
- Terraform Graph
- Saving Terraform Plan to File
Terraform Provisioners
- Understanding Provisioners in Terraform
- Types of Provisioners
- Implementing remote-exec provisioners
- Implementing local-exec provisioners
Terraform Modules & Workspaces
- Understanding DRY principle
- Implementing EC2 module with Terraform
- Variables and Terraform Modules
- Terraform Registry
- Terraform Workspace
- Implementing Terraform Workspace
Remote State Management
- Integrating with GIT for team management
- Security Challenges in Commiting TFState to GIT
- Remote State Management with Terraform
- Implementing S3 Backend
- Challenges with State File locking
- Integrating DynamoDB with S3 for state locking
- Terraform State Management
- Importing Existing Resources with Terraform Import
Security Primer
- Handling Access & Secret Keys the Right Way in Providers
- Terraform Provider Use Case - Resources in Multiple Regions
- Handling Multiple AWS Profiles with Terraform Providers
- Terraform & Assume Role with AWS STS
- Sensitive Parameter