GitOps
Manejar la infraestructura desde Git, con un agente que hace que la realidad coincida.
GitOps es una forma de operar sistemas, sobre todo en Kubernetes, donde un repositorio Git es la única fuente de verdad sobre qué tiene que estar corriendo. El repositorio guarda archivos declarativos que describen el estado deseado: qué apps, qué versiones de imágenes de contenedor, cuántas réplicas, qué configuración. Para cambiar producción no corrés comandos contra el cluster; abrís un pull request, alguien lo revisa y se mergea.
Un agente que corre dentro del cluster, como Argo CD o Flux, vigila el repositorio. Cuando cambia el estado deseado, trae el cambio y lo aplica. Y lo más importante: compara todo el tiempo lo que dice Git con lo que está corriendo de verdad y corrige cualquier diferencia, un ciclo que se llama reconciliación. Si alguien toca algo a mano a las 3 de la mañana, el agente detecta el desvío y lo vuelve a su lugar, o por lo menos avisa.
Los beneficios vienen del propio Git. Cada cambio tiene autor, revisión y fecha, lo que facilita mucho las auditorías y los análisis de incidentes. Volver atrás es revertir un commit. Un entorno entero se puede reconstruir desde el repositorio. Y como el agente trae los cambios desde adentro, el sistema de CI no necesita credenciales de administrador del cluster. El proyecto OpenGitOps lo resume en cuatro principios: declarativo, versionado e inmutable, traído automáticamente y reconciliado de forma continua. Los costos: los secretos necesitan un manejo especial, porque no deberían quedar en Git en texto plano, y los equipos se tienen que acostumbrar a no "arreglarlo rapidito" a mano nunca más.
Para quedarse
- Git guarda el estado deseado; el cluster se ajusta para coincidir.
- Un agente como Argo CD o Flux trae los cambios y corrige los desvíos todo el tiempo.
- Cada cambio es un commit revisado; volver atrás es un revert.
- Los secretos y los arreglos manuales piden disciplina y herramientas extra.