/techlanches-infra-k8s

Projeto Tech Challenge Fase 3

Primary LanguageHCLMIT LicenseMIT

TECHLANCHES

Tech Lanches

Este repositório contém o código Terraform necessário para provisionar a infraestrutura do Kubernetes na AWS e automatizar o deploy contínuo (CD) da nossa aplicação do TechChallenge da FIAP - Turma 4SOAT

Descrição

Este projeto faz parte do curso de pós-graduação em Arquitetura de Software oferecido pela FIAP. Nosso objetivo é demonstrar a utilização de práticas modernas de infraestrutura como código (IaC) e integração contínua/entrega contínua (CI/CD) para implantar e gerenciar aplicativos em um ambiente de Kubernetes na AWS.

Documentação

Conteúdo:

src/: Este diretório contém todos os arquivos Terraform necessários para provisionar a infraestrutura na AWS.

k8s/: Aqui você encontrará os arquivos de manifesto Kubernetes necessários para implantar nossa aplicação nos clusters provisionados.

Stack

Como executar o terraform local?

Executando o Projeto

O procedimento para executar o Terraform local é simples e leva poucos passos:

  1. Clone o repositório: https://github.com/g12-4soat/techlanches-infra-k8s

  2. Abra a pasta via linha de comando no diretório escolhido no passo 1. Ex.: c:> cd “c:/techlanches-infra-k8s”

Rodando Terraform

Da raiz do repositório, entre no diretório ./src (onde se encontram todos os scripts Terraform), e execute os seguintes comandos no terminal:

Iniciando o Terraform

c:\techlanches-infra-k8s/src/terraform> terraform init

Validando script Terraform

c:\techlanches-infra-k8s/src/terraform> terraform validate

Verificando plano de implantação do script

c:\techlanches-infra-k8s/src/terraform> terraform plan

Aplicando plano de implantação do script

c:\techlanches-infra-k8s> terraform apply

Como configurar os pods no cluster AWS?

Instalar AWS CLI

Certifique-se de ter o AWS CLI instalado e configurado em seu sistema. Você pode baixá-lo e instalá-lo seguindo as instruções fornecidas em AWS CLI Installation.

Configurar o AWS CLI

Após a instalação, você precisa configurar o AWS CLI com suas credenciais. Isso pode ser feito executando o comando aws configure no seu terminal e fornecendo as credenciais da AWS quando solicitado. Certifique-se de configurar o AWS CLI com as credenciais que têm permissões para acessar o cluster EKS.

Configurar o kubectl

O kubectl é uma ferramenta de linha de comando usada para interagir com clusters Kubernetes. Você precisa configurá-lo para acessar o cluster EKS. Isso pode ser feito executando o comando aws eks update-kubeconfig com o nome do seu cluster e a região onde ele está localizado. Por exemplo: aws eks update-kubeconfig --name <NOME_DO_CLUSTER_EKS> --region <REGIÃO>

Verificar a conexão

Após configurar o kubectl, você pode verificar se está conectado ao cluster corretamente executando um comando como kubectl get nodes. Isso deve retornar uma lista dos nós (nodes) no seu cluster EKS.

Executar apply Kubernetes

Da raiz do repositório, entre no diretório ./k8s (onde se encontram todos os manifestos .yaml para execução no kubernetes), dê um duplo clique no arquivo "apply-all.sh" ou execute o seguinte comando no terminal:

Windows

PS c:\tech-lanches\k8s> sh apply-all.sh

Unix Systems (Linux distros | MacOS)

$ exec apply-all.sh

Versões

Software

  • Terraform - >= 0.13

Dependências


Pipeline Status

Pipeline Status
Deploy EKS Infrastructure Deploy EKS Infrastructure
Apply K8s Deployments Apply K8s Deployments

Visite a nossa Wiki