Guia para iniciantes: Provisione sua primeira infraestrutura com Terraform e AWS
Palestra sobre como funciona o lifecycle do Terraform e principais conceitos da configuração de um arquivo para provisionar uma infraestrutura para AWS.
Pós graduanda em Engenharia de Software pela USP Conselheira e Líder do Programa de Embaixadoras na WomakersCode Co-Organizadora da NodeBR Criadora de conteúdo no @mayumidev Golfista nas horas vagas @mayumidev
criação, configuração e gerenciamento de infraestrutura de TI Ferramenta de código aberto Criado pela Hashicorp é uma ferramenta gratuita usado por equipes de DevOps e Engenheiros Código Terraform Os arquivos incluem informações sobre os recursos e como devem ser configurados. Podendo ser parametrizados. @mayumidev
Terraform reutilizáveis para encapsular configurações comuns ou complexas. Integração O Terraform é frequentemente usado em conjunto com outras ferramentas, como sistemas de CI/CD, ferramentas de gerenciamento de configuração e orquestração de contêineres. Controle de Estado O Terraform mantém um estado que rastreia o estado atual da infraestrutura provisionada, minimizando os riscos de conflitos. @mayumidev
o gerenciamento de recursos da AWS através de scripts. Terraform A instalação do Terraform varia conforme o seu sistema operacional, instale a versão mais recente no seu computador. @mayumidev
uma série de etapas que ocorrem ao criar, modificar ou destruir recursos de infraestrutura. Essas etapas são gerenciadas pelo Terraform para garantir que a infraestrutura seja criada e mantida de acordo com as especificações declaradas em seu código Terraform. @mayumidev
Terraform. Isso envolve a criação de arquivos de configuração que especificam quais recursos você deseja provisionar. Você também define variáveis, módulos, provedores e outros elementos necessários para sua configuração. @mayumidev
você precisa inicializá-lo. Isso é feito executando o comando “terraform init”. Durante a inicialização, o Terraform baixa os plugins (provers) necessários e configura o estado (state) inicial. O estado é um arquivo que rastreia o estado atual dos recursos de infraestrutura gerenciados pelo Terraform. @mayumidev
projeto, você pode executar o comando “terraform plan”. O Terraform examina sua configuração e o estado atual. Ele gera um plano de execução que mostra quais recursos serão criados, modificados ou destruídos. @mayumidev
está satisfeito com as mudanças propostas, você pode aplicar as alterações executando o comando terraform apply. Durante a aplicação, o Terraform também atualiza o estado para refletir o novo estado da infraestrutura. @mayumidev
estado atual dos recursos provisionados. Isso é usado para garantir que o Terraform saiba quais recursos já foram criados e como eles estão configurados. @mayumidev @mayumidev
código Terraform para refletir as alterações desejadas. Depois de atualizar seu código, você pode executar novamente o ciclo de planejamento e aplicação para implementar as alterações. @mayumidev
o comando “terraform destroy”. Isso remove todos os recursos gerenciados pelo Terraform, conforme definido em seu código. É importante ter backups adequados e entender as implicações antes de executar esse comando. @mayumidev
de arquivos de configuração que descrevem a infraestrutura que você deseja provisionar. Os arquivos de configuração geralmente seguem uma estrutura comum que inclui os seguintes elementos: Providers (Provedores) Você especifica os provedores de infraestrutura que deseja usar no início do arquivo de configuração. Um provedor é uma plataforma ou serviço de nuvem como GCP, AWS, Azure, etc. Depois de definir o provedor, você pode começar a descrever os recursos de infraestrutura que deseja criar. Recursos podem ser máquinas virtuais, bancos de dados, redes, etc. Resources (Recursos) @mayumidev
reutilizável, você pode definir variáveis para valores que podem ser parametrizados. Isso permite que você configure dinamicamente recursos e mantenha a flexibilidade. À medida que sua infraestrutura cresce e fica mais complexa, você pode criar módulos reutilizáveis para encapsular configurações e funcionalidades específicas. Modules (Módulos) Outputs (Saídas) Para fornecer informações úteis após a criação da infraestrutura, você pode definir saídas que exibem valores específicos, como endereços IP ou IDs de recursos. O Terraform mantém um arquivo de estado que rastreia o estado atual da infraestrutura. Este arquivo é usado para determinar as alterações necessárias quando você executa comandos como terraform apply. State (Estado) @mayumidev