Conceptos

GitOps

Práctica operacional que usa Git como fuente única de verdad para infraestructura y configuración, con reconciliación automática entre el estado deseado y el real.

seed#gitops#argocd#flux#kubernetes#automation#declarative

¿Qué es?

GitOps es una práctica donde Git es la fuente única de verdad para el estado deseado de la infraestructura y aplicaciones. Un operador (ArgoCD, Flux) monitorea el repositorio y reconcilia automáticamente el estado real con el declarado en Git.

Principios

  1. Declarativo: el estado deseado se describe, no los pasos
  2. Versionado: todo en Git con historial completo
  3. Automático: cambios en Git se aplican automáticamente
  4. Reconciliación: el operador corrige drift continuamente

Flujo

Dev → PR → Review → Merge → Git repo
                              ↓
                    Operador GitOps detecta cambio
                              ↓
                    Aplica cambios al cluster
                              ↓
                    Reconcilia estado continuamente

Herramientas

HerramientaEnfoque
ArgoCDUI rica, multi-cluster
FluxLigero, CNCF
CrossplaneInfraestructura cloud via K8s

¿Cuándo no usar GitOps?

  • Aplicaciones que requieren despliegues imperativos con lógica condicional compleja
  • Equipos sin experiencia en Kubernetes — la curva de aprendizaje se multiplica
  • Secretos que no deben vivir en Git (requiere herramientas adicionales como Sealed Secrets o External Secrets)

¿Por qué importa?

GitOps convierte Git en la fuente de verdad para la infraestructura y las aplicaciones. Cada cambio pasa por un PR, es revisado y se aplica automáticamente. Esto proporciona auditoría completa, rollback instantáneo y un flujo de trabajo que los desarrolladores ya conocen.

Referencias

  • OpenGitOps — Principios y estándar.
  • ArgoCD — Documentación oficial.
  • Flux CD — CNCF, 2024. Herramienta GitOps nativa de Kubernetes.
Conceptos