GitOps traz a disciplina do Git para a operação de infraestrutura e aplicações. Em vez de executar comandos manuais ou scripts ad hoc, todo o estado desejado fica versionado em repositórios. Uma das ferramentas mais populares para implementar GitOps em Kubernetes é o Argo CD. Neste guia, mostramos como configurar Argo CD do zero em VPS OTH Host, integrar pipelines e garantir deploys confiáveis e auditáveis.
1. Pré-requisitos
- VPS OTH Host com Kubernetes instalado (k3s, kubeadm ou distribuição gerenciada).
- Repositório Git (GitLab, GitHub, Bitbucket) acessível via HTTPS/SSH.
- Ferramentas: kubectl, helm, acesso administrativo ao cluster.
- Pipeline CI existente (GitLab CI, GitHub Actions) para build de imagens Docker.
2. Instalação do Argo CD
- Crie namespace dedicado:
kubectl create namespace argocd - Instale via manifestos oficiais:
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml - Exponha o Argo CD por ingress (recomendado) ou port-forward. Em ambientes OTH Host, configure ingress com TLS, autenticação e WAF se necessário.
3. Segurança e autenticação
Alterar a senha padrão é fundamental. Execute:
argoCDServer=$(kubectl -n argocd get pods -l app.kubernetes.io/name=argocd-server -o name)
kubectl -n argocd exec -it $argoCDServer -- argocd account update-password
Integre login com SSO (OIDC) ou configure RBAC baseado em equipes. Armazene credenciais em cofre seguro (Vault/Secrets Manager) com rotinas de rotação.
4. Estrutura de repositórios Git
Recomendamos separar repositórios de aplicação (contendo código) e infraestrutura (manifestos Helm/Kustomize). Exemplo de layout:
gitops/
apps/
staging/
production/
base/
helm-chart/
kustomize/
O Argo CD sincroniza automaticamente o estado do cluster com esse repositório, aplicando alterações declarativas.
5. Criar aplicação no Argo CD
argocd app create minha-api
--repo https://git.example.com/dev/gitops.git
--path apps/production/minha-api
--dest-server https://kubernetes.default.svc
--dest-namespace minha-api-prod
--sync-policy automated
Habilite --self-heal e --prune para que o Argo CD corrija drift automaticamente e remova recursos obsoletos.
6. Integração com CI (build de imagens)
Configure pipeline de build para gerar imagens Docker e atualizar manifestos (tagging). Exemplos:
- GitLab CI: após build, utilize
yqouhelmpara atualizarvalues.yamle faça commit automático em branch de infraestrutura. - GitHub Actions: use ação que atualiza Kustomize ou Helm com a nova imagem e abre PR para revisão.
O merge no branch principal dispara a sincronização automática do Argo CD.
7. Observabilidade e alertas
Argo CD possui métricas nativas (Prometheus) e eventos de webhook. Configure:
- Dashboard Grafana com status de sincronização, tempo de deploy e falhas.
- Alertas via Slack/Teams usando Argo Alerts ou ferramentas como Alertmanager.
A OTH Host oferece painéis pré-configurados e suporte 24/7 para monitorar clusters, garantindo que falhas de sincronização sejam resolvidas rapidamente.
8. Boas práticas operacionais
- Mantenha o Argo CD atualizado e restrinja quem pode aplicar alterações diretamente no cluster.
- Utilize ApplicationSets para gerenciar múltiplos ambientes com templates.
- Armazene secrets com ferramentas externas (Sealed Secrets, External Secrets) para evitar exposição no Git.
- Implemente políticas de aprovação para produção (pull requests e revisão manual quando necessário).
9. Vantagens de GitOps com Argo CD
Ao adotar GitOps, você ganha:
- Auditabilidade: cada mudança é rastreada no Git, facilitando auditorias.
- Consistência: ambientes são reproduzidos com fidelidade, reduzindo “config drift”.
- Velocidade: deploys frequentes e seguros, com rollback instantâneo.
- Colaboração: times usam PRs para discutir infraestrutura e políticas.
Conclusão
GitOps com Argo CD transforma a forma como você gerencia deploys. Em VPS OTH Host, com monitoramento proativo, backups e suporte SRE, a solução entrega alta disponibilidade e governança. Comece pelo ambiente de staging, evolua para produção e colha os benefícios de uma operação moderna, eficiente e auditável.