Ir al contenido principal

Argo CD GitOps Kubernetes CD

Entrega GitOps con Argo CD para Kubernetes a escala de producción

Con GitOps, Argo CD convierte un repositorio Git en la única fuente de verdad de cada clúster de Kubernetes: sin scripts imperativos de kubectl apply, sin deriva de configuración y sin cambios manuales no documentados. Diseñamos e implantamos plataformas Argo CD para clientes de EE. UU. y la UE: arranque con App-of-Apps, ApplicationSets multiclúster, estrategias canary y blue-green con Argo Rollouts, integración con Sealed Secrets y External Secrets, RBAC respaldado por SSO y pipelines de notificaciones completos.

Pedir propuesta Ver casos

Pipeline de entrega continua GitOps con Argo CD para Kubernetes

Con GitOps, Argo CD convierte un repositorio Git en la única fuente de verdad de cada clúster de Kubernetes: sin scripts imperativos de kubectl apply, sin deriva de configuración y sin cambios manuales no documentados. Diseñamos e implantamos plataformas Argo CD para clientes de EE. UU. y la UE: arranque con App-of-Apps, ApplicationSets multiclúster, estrategias canary y blue-green con Argo Rollouts, integración con Sealed Secrets y External Secrets, RBAC respaldado por SSO y pipelines de notificaciones completos.

Retos

Retos del sector que resolvemos

Gestión de secretos en GitOps

Guardar secretos en repositorios Git, aunque estén cifrados, exige un enfoque disciplinado. Los equipos que confirman credenciales en texto plano exponen las credenciales de producción en el historial de versiones. Implantamos Sealed Secrets o External Secrets Operator para que Git contenga solo referencias cifradas, no valores en bruto.

Escala multiclúster y multi-tenant

Gestionar decenas de clústeres y cientos de aplicaciones con manifiestos de Application de Argo CD individuales se vuelve inmanejable muy pronto. Los ApplicationSets generan recursos Application de forma dinámica a partir de generadores de clústeres, de Git o de matriz, y reducen el trabajo repetitivo de cientos de archivos YAML a una sola plantilla.

Deriva de configuración y cambios manuales

Los operadores que aplican parches de kubectl directamente en los clústeres de producción rompen en silencio el contrato de GitOps. Argo CD detecta en minutos los cambios hechos fuera del repositorio y puede autorrepararlos (modo self-heal) o alertar de la deriva, de modo que Git sea la única vía de cambio aceptada.

Entrega progresiva a nivel de clúster

Desplegar nuevas versiones sin tiempo de inactividad y con reversión segura requiere más que una actualización gradual (rolling update). Argo Rollouts añade estrategias canary y blue-green con puertas de análisis automatizadas: solo promueve cuando las tasas de error y la latencia se mantienen dentro de los umbrales definidos.

Orden de sincronización entre recursos dependientes

Las aplicaciones con migraciones de bases de datos, instalaciones de CRD o dependencias de infraestructura compartida deben aplicar los recursos en el orden correcto. Las sync waves y los sync hooks de Argo CD permiten a los equipos declarar las reglas de orden de forma declarativa y evitan condiciones de carrera durante el arranque del clúster.

Gobernanza de RBAC y SSO entre equipos

En las grandes organizaciones, varios equipos comparten una instancia de Argo CD y deben estar aislados de las aplicaciones de los demás. Sin un RBAC de grano fino, un desarrollador de un equipo puede volver a desplegar el servicio de otro. Diseñamos políticas de RBAC acotadas por proyecto y respaldadas por grupos de SSO para que los permisos sigan los límites de la organización.

Soluciones

Soluciones que desarrollamos

Arranque GitOps con App-of-Apps

Una única Application raíz gestiona de forma declarativa todas las Applications hijas. Añadir un servicio nuevo es una pull request: Argo CD lo descubre y lo sincroniza automáticamente. Estructuramos la jerarquía App-of-Apps para separar las capas de infraestructura, plataforma y aplicación.

ApplicationSets multiclúster

Los ApplicationSets generan plantillas de recursos Application en cualquier número de clústeres mediante generadores de Git, de lista de clústeres o de matriz. Promover un cambio de staging a producción es un git merge, sin operaciones manuales por clúster.

Gestión de secretos (External Secrets / SOPS)

Integramos External Secrets Operator con AWS Secrets Manager, HashiCorp Vault o Azure Key Vault: los secretos viven en el KMS, no en Git. Para entornos aislados de la red (air-gapped) configuramos SOPS con age o GPG para archivos de secretos cifrados que se pueden confirmar con seguridad.

Entrega progresiva con Argo Rollouts

Los despliegues canary con puertas de análisis automatizadas de PromQL y Datadog promueven el tráfico de forma gradual y revierten automáticamente ante un incumplimiento de SLO. Los despliegues blue-green permiten un cambio instantáneo con reversión sin tiempo de inactividad a nivel de servicio de Kubernetes.

RBAC, SSO y pipeline de notificaciones

La integración de SSO mediante OIDC (Okta, Azure AD, Dex) asigna los grupos del proveedor de identidad a roles RBAC de Argo CD acotados por proyecto y clúster de destino. Argo CD Notifications envía los eventos de despliegue a Slack, PagerDuty y correo electrónico, con mensajes basados en plantillas que incluyen enlaces al diff e instrucciones de reversión.

Detección de deriva y autorreparación

Argo CD consulta el estado del clúster cada tres minutos y marca las aplicaciones como OutOfSync ante cualquier desviación. Configuramos políticas de self-heal por entorno — permisivas en desarrollo (solo alertan) y estrictas en producción (reversión automática) — con Argo CD Notifications avisando de cada evento de deriva detectado.

Stack

Stack tecnológico

Argo CD, ApplicationSets, App-of-Apps, Argo Rollouts (canary / blue-green), Helm, Kustomize, Git (fuente de verdad), SSO / OIDC / RBAC, Argo CD Notifications, Sealed Secrets / SOPS / External Secrets Operator, Kubernetes, ArgoCD Image Updater, sync waves y sync hooks.

Cumplimiento

Cumplimiento y normativa

Traza de auditoría GitOps (historial completo de git) · RBAC + SSO de mínimo privilegio · commits firmados y verificación de imágenes · detección de deriva y autorreparación

UE

  • RGPD — ningún secreto se guarda en Git; Sealed Secrets y External Secrets Operator mantienen las credenciales en Vault o en el KMS de la nube; los clústeres residentes en la UE permanecen en regiones de la UE con aislamiento a nivel de namespace.
  • Reglamento de IA de la UE — cada despliegue de un modelo o de una carga de trabajo de IA es trazable mediante el historial de commits de git, lo que aporta el linaje completo de despliegues exigido en la documentación de los sistemas de IA de alto riesgo.
  • NIS2 — la detección automatizada de deriva señala y revierte los cambios de configuración no autorizados; RBAC + SSO imponen un acceso de mínimo privilegio en todos los clústeres y namespaces.
  • eIDAS — la verificación de commits firmados (GPG / Sigstore) puede imponerse como puerta de sincronización y aportar una prueba criptográfica de un cambio autorizado antes de que Argo CD promueva a producción.

EE. UU.

  • SOC 2 (gestión de cambios) — cada despliegue es un commit de git con autor, marca de tiempo y diff; Argo CD aporta las evidencias inmutables de gestión de cambios que los clientes regulados necesitan para las auditorías de Type II.
  • Traza de auditoría GitOps — el historial de git es a prueba de manipulaciones; volver a cualquier estado anterior es la reversión de un solo commit, lo que hace determinista la respuesta a incidentes y la recopilación de evidencias de auditoría.
  • RBAC + SSO de mínimo privilegio — políticas RBAC de Argo CD acotadas por proyecto y clúster; la integración de SSO (Okta, Azure AD, Google) garantiza que cada acción esté vinculada a una identidad autenticada.
  • Seguridad de la cadena de suministro — los commits firmados y las imágenes de contenedor firmadas (cosign) pueden verificarse antes de sincronizar; la detección de deriva impide que la configuración en ejecución se aparte del estado aprobado en git.

Por qué YuSMP

Por qué los equipos de ingeniería de plataforma eligen YuSMP para Argo CD y la entrega GitOps

Disciplina GitOps desde el primer día

Diseñamos la estructura del repositorio, la estrategia de ramas y el flujo de promoción antes de escribir un solo manifiesto de Application, de modo que la plataforma haga cumplir su proceso de lanzamiento en lugar de eludirlo.

Evidencias de cumplimiento integradas

Cada despliegue es un commit de git firmado con autor, revisor y marca de tiempo. El registro de auditoría de Argo CD y el historial de git aportan juntos las evidencias de gestión de cambios que exigen los auditores de SOC 2 y NIS2, sin herramientas adicionales.

Escala de un clúster a muchos

La misma plataforma basada en ApplicationSets que gestiona un único clúster de staging escala a cincuenta clústeres de producción en distintas regiones. Hemos entregado plataformas Argo CD multiclúster a clientes de fintech, logística y SaaS.

Preguntas frecuentes

Preguntas frecuentes sobre Argo CD y GitOps

¿Qué es GitOps y cómo lo implementa Argo CD?

GitOps es un modelo operativo en el que Git es la única fuente de verdad de la infraestructura declarativa y de la configuración de las aplicaciones. Argo CD compara de forma continua el estado deseado en Git con el estado real en Kubernetes y concilia cualquier diferencia. Cada cambio es una pull request: se revisa, se aprueba y se fusiona antes de llegar a un clúster. Esto da a los equipos una traza de auditoría completa, reversión instantánea y detección de deriva sin herramientas adicionales.

¿Cómo se compara Argo CD con Flux?

Tanto Argo CD como Flux implementan GitOps para Kubernetes. Argo CD ofrece una interfaz web madura, un multi-tenancy sólido mediante proyectos y Argo Rollouts para la entrega progresiva, lo que lo convierte en la opción natural para los equipos que quieren visibilidad y un RBAC de grano fino entre muchos equipos. Flux es solo un conjunto de controladores, sin interfaz integrada, y se integra más estrechamente con el controlador de Helm y con Flagger. Trabajamos con ambos; Argo CD es nuestra recomendación por defecto para los equipos de ingeniería de plataforma.

¿Cómo gestionan los secretos en un flujo GitOps sin confirmarlos en Git?

Usamos uno de dos enfoques, según la infraestructura del cliente. External Secrets Operator sincroniza en tiempo de ejecución los secretos de AWS Secrets Manager, HashiCorp Vault o Azure Key Vault con Secrets de Kubernetes: Git solo contiene una referencia a la ruta del secreto, no el valor. En entornos sin KMS, usamos SOPS con age o GPG para cifrar los archivos de secretos antes de confirmarlos; Argo CD los descifra durante la sincronización. En ambos casos, las credenciales en texto plano nunca entran en el repositorio Git.

¿Cómo gestiona Argo CD los despliegues en varios clústeres?

Los ApplicationSets permiten que una sola instancia de Argo CD gestione aplicaciones en decenas de clústeres. Un generador de lista de clústeres o de cluster-decision-resource produce una Application por clúster a partir de una única plantilla. Promover una versión de staging a producción es un git merge en la rama de producción: Argo CD detecta el cambio y sincroniza todos los clústeres de destino sin intervención manual. Diseñamos la estrategia del generador para que se ajuste a la topología de entornos del cliente (región, nivel, equipo).

¿Qué es Argo Rollouts y cuándo debo usarlo en lugar de una actualización gradual estándar de Kubernetes?

Argo Rollouts amplía Kubernetes con estrategias de despliegue canary y blue-green. Una actualización gradual estándar sustituye los pods poco a poco, pero no puede revertir automáticamente en función de las tasas de error. Argo Rollouts se integra con Prometheus, Datadog o CloudWatch para evaluar métricas de análisis durante una promoción canary: si la tasa de error o la latencia supera el umbral configurado, el despliegue se aborta y el tráfico vuelve a la versión estable. Úselo siempre que un mal despliegue pueda afectar a los usuarios finales antes de que una persona pueda reaccionar.

¿Cómo detecta Argo CD la deriva de configuración y cómo responde?

Argo CD consulta el estado real del clúster cada tres minutos y lo compara con el estado deseado declarado en Git. Cualquier desviación — un despliegue parcheado a mano, un ConfigMap modificado en el clúster, un número de réplicas ajustado por una persona — marca la aplicación como OutOfSync. Configuramos políticas de self-heal por entorno: los clústeres de desarrollo alertan de la deriva y los de producción la revierten automáticamente. Argo CD Notifications envía un informe detallado de la deriva a Slack o PagerDuty cada vez que se activa una acción de self-heal.

¿En qué se diferencia Argo CD de ejecutar kubectl apply desde el CI en un pipeline?

Ejecutar kubectl apply desde el CI es imperativo: el pipeline empuja el estado al clúster. Si el pipeline falla a medio camino, el clúster queda en un estado parcial desconocido. Argo CD se ejecuta de forma continua dentro del clúster y concilia de forma declarativa: siempre conoce el estado deseado completo desde Git y converge hacia él, incluso tras reinicios o fallos parciales. La reversión es un git revert, no la reejecución de un pipeline. Para los clientes regulados, la traza de auditoría basada en git es considerablemente más sólida que los logs de un pipeline.

Cree una plataforma GitOps de nivel de producción con ingenieros sénior de Argo CD

Respuesta en 1 día hábil. NDA a petición.

Pedir propuesta

Pedir propuesta

Cuéntenos algunos detalles y un consultor sénior le responderá en un día hábil.