Repositório completo em: https://github.com/camilla-m/descomplicando-devops
Criar GKE com Terraform
- Fazer no Cloud Shell um terraform init e um terraform apply neste arquivo main.tf na pasta terraform.
resource "google_container_cluster" "my_autopilot_cluster" {
name = "linuxtips"
location = "us-central1" # or your desired region
enable_autopilot = true
}
Quando o cluster ficar pronto, rodar este comando no Cloud Shell:
gcloud container clusters get-credentials linuxtips \
--location us-central1
Criar cloudbuild reutilizando Artifact Registry hello-repo
- Reutilizar Artifact Registry desta aula de conteinerização com Artifact Registry.
- Atualizar cloudbuild.yaml do repositório com informações do PROJECT_ID e nome da imagem e nome do repositório, caso necessário. Atualizar as linhas 11, 12 e 13. Revisar linhas 4, 7 e 9.
- Se orientar de renomear o cloudbuild_kubernetes.yaml para cloudbuild.yaml para reaproveitar o Cloud Build deste tutorial, pois ele busca um cloudbuild.yaml para configurar a pipeline.
Aplicar deploy e serviço no Kubernetes
- Dar um kubectl apply -f no deployment.yaml e service.yaml do repositório do Github. Se atentar principalmente no arquivo de deployment se o nome do repositório do Artifact Registry, do ID do projeto e da imagem está correto.
- Pegar o external ip do serviço novo que foi criado e acessar: http://EXTERNAL-IP e reservar no browser.
Subir uma alteração
- Subir alteração no server.js na parte da mensagem do GET dar um push para depois avaliar a execução do Cloud Build.
- Após subir alteração, entrar no Cloud Shell e dar um kubectl get pods para acompanhar a substituição de um pod velho pelo novo que está subindo.
- Assim que substituir e o status estiver como Running do mais recente, acessar novamente o IP externo e ver a atualização.
No Comments