GitOps Pipeline: ArgoCD & Blue/Green Deployment no EKS

Implementação de um pipeline de Continuous Delivery (CD) production-ready utilizando ArgoCD como controlador GitOps no Amazon EKS. O projeto automatiza o ciclo de vida completo da aplicação, desde o provisionamento da infraestrutura via Terraform até a entrega de novas versões. Utilizando Kustomize para gestão de overlays, a solução habilita estratégias avançadas de Blue/Green Deployment com zero downtime e rollback instantâneo (<30s), garantindo que o estado do cluster esteja sempre sincronizado com o repositório Git.


Engenharia de Plataforma com GitOps e IaC

Visão holística da arquitetura projetada para máxima eficiência operacional. A fundação é estabelecida via Terraform (IaC), que provisiona toda a Cloud Platform (AWS) e o plano de controle do Kubernetes (EKS). A inteligência de entrega é baseada no modelo GitOps, utilizando o Git como fonte única da verdade. O ArgoCD monitora as definições de configuração (via Kustomize) e orquestra o Auto Deploy, garantindo que o estado desejado no cluster EKS esteja sempre em sincronia com o repositório, eliminando drifts de configuração e automatizando o ciclo de vida da aplicação.

Sincronização Contínua (GitOps)

O painel do ArgoCD atua como a torre de controle do deploy. Ele monitora o repositório GitHub a cada 30 segundos, detecta alterações nos manifestos (commits) e aplica as mudanças automaticamente no cluster. O status "Synced" garante visualmente que a infraestrutura real reflete exatamente a "Single Source of Truth" definida no Git.

Gestão Declarativa de Ambientes

Utilização do Kustomize para gerenciar configurações complexas sem duplicação de código. Através de overlays de produção, o projeto define versões distintas da aplicação (v1/v2). A troca de versão é feita via código ou script auxiliar, permitindo auditoria total de quem realizou a mudança e quando ela ocorreu.

Estratégia Blue/Green e Zero Downtime

Demonstração prática de atualização sem impacto. A arquitetura permite o deploy de uma nova versão (v2) em paralelo à atual. A virada de chave (Traffic Switch) é realizada instantaneamente manipulando os seletores do Kubernetes Service, garantindo que o usuário final navegue entre versões sem perceber interrupções ou erros 404.

Networking e Acesso Externo

Exposição da aplicação via AWS Load Balancer Controller, que provisiona automaticamente um ALB integrado ao cluster EKS. O acesso externo é configurado através de um registro CNAME no provedor DNS (Hostgator), apontando eks.devopsproject.com.br para o endpoint do Load Balancer, demonstrando integração entre infraestrutura cloud e DNS externo.

GitOps Core

ArgoCD, Kustomize, GitHub

Cloud Native

AWS EKS, ALB Controller, IAM OIDC

IaC & Automation

Terraform, Helm Charts, Bash Scripts