diff --git a/README.md b/README.md new file mode 100644 index 0000000..1dbac14 --- /dev/null +++ b/README.md @@ -0,0 +1,97 @@ +

TECHMEDICOS

+ +# Tech Medicos IaC +Projeto Hackaton + +Este repositório contém o código Terraform necessário para provisionar a infraestrutura na AWS e automatizar o deploy contínuo (CD) da nossa aplicação do Hackaton da FIAP - Turma 4SOAT. + +# Descrição + +Este projeto faz parte do desafio hackaton 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. +Em resumo o objetivo central é demonstrar como a integração dessas práticas pode melhorar o ciclo de vida dos aplicativos, abrangendo desde o desenvolvimento até a produção, e promover um fluxo de trabalho ágil e eficiente através da aplicação de metodologias e ferramentas modernas para a construção de sistemas robustos, escaláveis e automatizados. +# 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/techmedicos-iac](https://github.com/g12-4soat/techmedicos-iac.git)_ + +1. Abra a pasta via linha de comando no diretório escolhido no **passo 1**. _Ex.: c:\> cd “c:/techmedicos-iac”_ + +## 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:\techmedicos-iac/src/terraform> terraform init + +### Validando script Terraform +> c:\techmedicos-iac/src/terraform> terraform validate + +### Verificando plano de implantação do script +> c:\techmedicos-iac/src/terraform> terraform plan + +### Aplicando plano de implantação do script +> c:\techmedicos-iac> 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.](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)_ + +## 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 --region + +## 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-medicos\k8s> sh apply-all.sh + +### Unix Systems (Linux distros | MacOS) +> $ exec apply-all.sh +> +
+ +
+ Versões + +## Software +- Terraform - >= 0.13 +
+ +--- +# Dependências +- [Terraform](https://www.terraform.io/) +- [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) + +--- +## Pipeline Status +| Pipeline | Status | +| --- | --- | +| Deploy AWS Infrastructure| [![Deploy Infrastructure](https://github.com/g12-4soat/techmedicos-iac/actions/workflows/pipeline.yml/badge.svg)](https://github.com/g12-4soat/techmedicos-iac/actions/workflows/pipeline.yml) +|Apply K8s Deployments| [![Apply Deployments](https://github.com/g12-4soat/techmedicos-iac/actions/workflows/deployments.yml/badge.svg)](https://github.com/g12-4soat/techmedicos-iac/actions/workflows/deployments.yml) +--- +# Visite a nossa [Wiki](https://github.com/g12-4soat/tech-medicos/wiki) diff --git a/docs/Imagem/logo-techmedicos.png b/docs/Imagem/logo-techmedicos.png new file mode 100644 index 0000000..b0362ca Binary files /dev/null and b/docs/Imagem/logo-techmedicos.png differ