Volver al curso

DevOps Moderno: CI/CD, Docker y Kubernetes

leccion
6 / 12
advanced
30 horas
CI/CD: Pipelines de Integracion y Despliegue Continuo

GitOps con ArgoCD: Infraestructura Declarativa

Lectura
50 min~2 min lectura

GitOps: Git como Fuente de Verdad

GitOps es un paradigma donde la infraestructura y las aplicaciones se definen declarativamente en Git. Cualquier cambio en produccion se hace via pull request, dando trazabilidad completa y la capacidad de auditar quien cambio que y cuando.

Principios de GitOps

  • Declarativo: Todo el estado deseado del sistema esta descrito en Git.
  • Versionado: Git es la unica fuente de verdad. Todo cambio es un commit.
  • Automatizado: Los cambios aprobados se aplican automaticamente.
  • Self-healing: Si el estado real difiere del declarado, se corrige automaticamente.
# argocd-app.yml - Definir aplicacion en ArgoCD
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: mi-app
  namespace: argocd
spec:
  project: default
  source:
    repoURL: https://github.com/empresa/k8s-manifests
    targetRevision: main
    path: apps/mi-app/overlays/production
  destination:
    server: https://kubernetes.default.svc
    namespace: production
  syncPolicy:
    automated:
      prune: true
      selfHeal: true
    syncOptions:
      - CreateNamespace=true
HerramientaModeloMejor para
ArgoCDPull-based (cluster monitorea Git)Kubernetes nativo, UI web excelente
FluxPull-based (mas ligero)Equipos que prefieren CLI
Jenkins XPush-basedEquipos enterprise con Jenkins

🚀 Dato Clave

El flujo GitOps: Developer hace PR con cambio de manifiesto K8s, equipo revisa, se mergea a main, ArgoCD detecta el cambio y lo aplica automaticamente al cluster. Zero acceso manual al cluster en produccion.

Estructura de Repositorio GitOps

# Estructura recomendada con Kustomize
k8s-manifests/
  apps/
    mi-app/
      base/
        deployment.yml
        service.yml
        kustomization.yml
      overlays/
        staging/
          kustomization.yml  # replicas: 1
        production/
          kustomization.yml  # replicas: 3
  infrastructure/
    monitoring/
    ingress/
    cert-manager/
GitOps workflow

GitOps es el futuro de la gestion de infraestructura. Aprende ArgoCD y tu perfil DevOps sera mucho mas competitivo.