¿Qué es Argo CD?
Argo CD es una herramienta declarativa de distribución continua para Kubernetes. Se puede utilizar como una herramienta independiente o como parte del flujo de trabajo de integración y distribución continuas (CI/CD) para distribuir los recursos que los clústeres necesitan.
Para gestionar las configuraciones de la infraestructura y las aplicaciones en consonancia con GitOps, tu repositorio de Git debe ser la única fuente de información. Es necesario expresar el estado deseado de manera declarativa, crear versiones de él y extraerlo automáticamente. Aquí es donde entra en juego Argo CD.
En este video el director de tecnología de Red Hat, Chris Wright, junto con Ed Lee de Intuit, hablan sobre la adopción de GitOps y Argo CD para las operaciones de desarrollo.
Ventajas de utilizar Argo CD con OpenShift
Argo CD puede implementarse específicamente con Red Hat® OpenShift® para distribuir los recursos globales personalizados de un repositorio de Git (tu fuente de información) a los clústeres de OpenShift. Estos recursos pueden contener definiciones de las aplicaciones, configuraciones y estados deseados para tus entornos, cuyas versiones se pueden controlar con Argo CD.
El uso de esta herramienta para distribuir los recursos de forma permanente garantiza que tus aplicaciones nunca dejen de estar sincronizadas con los estados deseados.
En una arquitectura de ejemplo, Argo CD actúa como el controlador que verifica de forma permanente que los parámetros definidos por el administrador de clústeres en el repositorio de Git coincidan con los de las aplicaciones.
Casos prácticos de Argo CD
Si una aplicación cumple con los criterios de cualquier enlace definido por el usuario para los eventos del ciclo de vida (PreSync, Sync, PostSync), Argo CD puede optar por emitir acciones correctivas, en función del modo en que esté configurada. Este es solo uno de los tantos casos prácticos a los que se puede aplicar Argo CD. Otras opciones incluyen:
- Sincronización con un administrador de secretos
- Mantén sincronizados los secretos de OpenShift con un administrador de secretos, como Vault.
- Identificación de los desajustes en la configuración
- OpenShift GitOps detectará si las configuraciones de los clústeres no están en sincronía con el repositorio de Git designado, y mostrará una advertencia al respecto.
- Varios clústeres en un solo registro
- Define varias configuraciones para los clústeres de OpenShift en un único repositorio de Git y aplícalas a los clústeres de forma selectiva, de manera que todas las configuraciones provengan de una misma fuente de información.
- Jerarquía de las configuraciones de los clústeres (heredadas)
- Define una jerarquía para las configuraciones de los clústeres (etapa, producción, cartera de aplicaciones, etc. que pueden heredarse) en un repositorio de Git, de manera que estas puedan aplicarse a un único clúster de Kubernetes o a varios de ellos.
- Organización en plantillas y anulación de las configuraciones
- Anula un subconjunto de configuraciones heredadas y sus valores, de manera que la configuración se pueda ajustar a los clústeres específicos en los que va a aplicarse.
- Anula un subconjunto de configuraciones heredadas y sus valores, de manera que la configuración se pueda ajustar a los clústeres específicos en los que va a aplicarse.
Pruéba Argo CD con un laboratorio interactivo
Si quieres experimentar por ti mismo con Argo CD, prueba nuestro laboratorio interactivo sin costo, en el cual podrás implementar una aplicación de muestra con estas herramientas.