1
resposta

[Projeto] iac aws

Subindo a Aplicação no Kubernetes na AWS com Terraform

Agora que declaramos nossa aplicação para o Kubernetes, chegou o momento de provisioná-la na AWS e verificar se tudo está correto. Abaixo, seguem os passos para garantir que nossa aplicação seja criada corretamente no Kubernetes, e como verificar se todos os recursos foram gerados conforme esperado.

Passo 1: Acessando a pasta do ambiente de produção

Primeiramente, abra o terminal e entre na pasta do ambiente de produção:

cd env/prod/

Passo 2: Inicializando o Terraform

Como fizemos modificações significativas no código, incluindo a inserção do provider do Kubernetes, precisamos inicializar o Terraform para garantir que todas as dependências e configurações estejam prontas. Isso é feito com o comando:

terraform init

Esse comando irá baixar todos os plugins necessários para que o Terraform interaja com a AWS e o Kubernetes. Após o processo de inicialização, limpe o terminal para deixar o ambiente mais organizado:

clear

Passo 3: Aplicando as alterações com o Terraform

Agora que o Terraform está inicializado, podemos verificar o que será criado ou modificado na nossa infraestrutura. Execute o comando:

terraform apply

O Terraform irá comparar o estado atual da infraestrutura com o que está definido no código e mostrará as ações necessárias (criar, modificar ou destruir recursos). No final, ele mostrará uma saída como esta:

Plan: 1 to add, 0 to change, 0 to destroy

Este é o comportamento esperado, já que estamos apenas adicionando nossa aplicação. Observe também a saída que indica o que será criado, que neste caso será o recurso module.prod.kubernetes_deployment.Django_API.

Passo 4: Confirmando a execução do plano

Ao visualizar o que o Terraform pretende realizar, suba no terminal até encontrar a frase:

Terraform will perform the following actions:

Abaixo dessa frase, você verá o recurso module.prod.kubernetes_deployment.Django_API que será criado, exatamente como planejado. Para continuar com a execução do plano, digite:

yes

Isso fará com que o Terraform crie a infraestrutura necessária para rodar a aplicação no Kubernetes.

Passo 5: Verificando na AWS se a aplicação foi criada

Após o Terraform terminar o processo de criação dos recursos, vamos verificar na AWS se tudo foi criado corretamente. Para isso, abra o Console de Gerenciamento da AWS e siga os passos:

Acesse o Elastic Kubernetes Service (EKS).

Selecione o cluster "producao".

Na página do cluster, você verá os três nós (máquinas virtuais) em execução, conforme esperado. Agora, vá para a aba "Cargas de Trabalho" (Workloads). Lá, você deverá ver a aplicação django-api em execução.

Passo 6: Validando o status da aplicação

Na coluna "Status", você deve ver que as três réplicas da aplicação estão em status "prontas" e nenhuma com falha. O número de réplicas deverá ser igual ao que foi configurado no arquivo Kubernetes.tf (neste caso, replicas = 3), o que indica que tudo está funcionando corretamente.

Passo 7: Acessando a aplicação

Para que os usuários possam acessar a aplicação e realizar requisições, precisaremos configurar um load balancer.

1 resposta

Oi, Ubirajara!

Agradeço por compartilhar.

Sua explicação sobre o processo de deploy no Kubernetes usando Terraform está bem detalhada e mostra domínio dos passos, desde a inicialização até a verificação na AWS. A clareza com que você descreveu cada etapa ajuda bastante quem está aprendendo a testar e validar a aplicação em produção.

Continue praticando esse fluxo, pois ele consolida muito bem o aprendizado.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!