GitOps con ArgoCD: Gestión declarativa de infraestructura Kubernetes
GitOps convierte Git en la única fuente de verdad para su infraestructura Kubernetes. ArgoCD sincroniza automáticamente — haga push a Git y despliegue al clúster.
¿Qué es GitOps?
GitOps es un modelo operativo en el que el estado deseado de su infraestructura se define en un repositorio Git. Un operador (como ArgoCD) supervisa el repositorio y sincroniza el clúster automáticamente.
¿Por qué ArgoCD?
- Declarativo: Defina Applications como CRDs de Kubernetes; ArgoCD se encarga del resto.
- Estrategias de sincronización: Automática (Push to Git = Deploy) o manual (revisión antes del despliegue), configurable por Application.
- Rollback: Cada commit de Git es un punto de rollback potencial. Revert = Rollback.
- Multi-Cluster: Gestione múltiples clústeres Kubernetes desde una sola instancia de ArgoCD.
Buenas prácticas
- App of Apps: Una Application ArgoCD superior que gestiona todas las demás Applications: bootstrapping de todo el clúster desde un solo repositorio.
- Helm + Kustomize: Helm Charts para dependencias externas, Kustomize para overlays específicos por entorno.
- Repositorios separados: Código de la aplicación y manifiestos de Kubernetes en repositorios separados, para ciclos de despliegue independientes.
- Sealed Secrets: Almacenar Secrets cifrados en el repositorio Git con Bitnami Sealed Secrets o SOPS.
Conclusión
GitOps con ArgoCD ha reemplazado completamente kubectl apply y los despliegues manuales en devRocks. El audit trail es completo, los rollbacks tardan segundos y el equipo tiene en todo momento una visión general del estado de todos los clústeres.
¿Preguntas sobre este tema?
Le asesoramos con gusto sobre las tecnologías y soluciones descritas en este artículo.
Contactar