Neste tutorial aprenderemos a subir uma aplicação simples em K8s, subiremos a infraestrutura com Terraform e será exposta a aplicação com LoadBalancer
https://github.com/Juanmichael00/myapp-k8s.git
https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html
3 - Instale o kubectl (linux) https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
./kubectl
echo $PATH
mv kubectl /usr/local/bin
https://docs.aws.amazon.com/eks/latest/userguide/creating-a-vpc.html
https://docs.aws.amazon.com/eks/latest/userguide/creating-a-vpc.html
4 (manual) - Crie um cluster do EKS (versão 1.25) com role eks cluster atachada - politica AmazonEKSClusterPolicy
5 (manual) - Crie um node group no EKS criado com role "ec2" atachada com política "AmazonEKSWorkerNodePolicy", "AmazonEKS_CNI_Policy" e "AmazonEC2ContainerRegistryReadOnly"
6 - Conecte-se ao cluster EKS para atualizar o arquivo de configuração kubeconfig com as informações do seu cluster:
aws eks --region <região> update-kubeconfig --name <nome_do_cluster>
kubectl get nodes
Obs: Você deve ver uma lista dos nós do cluster
8 - Crie os arquivos de manifesto YAML para os recursos do Kubernetes necessários, como implantações, serviços e ingressos, no nosso lab usaremos o deployment.yaml para nossa aplicação e o service.yaml para configuração do serviço da sua aplicação.
kubectl apply -f deployment.yaml
kubectl get deployments
kubectl get pods
kubectl apply -f service.yaml
kubectl get services
kubectl delete service minha-aplicacao-service
kubectl delete deployment minha-aplicacao
kubectl get services
kubectl get deployments
terraform destroy --auto-approve