← Seguridad
KUBERNETES · GITOPS & CLOUD

GitOps
y ecosistema cloud

Git como fuente de verdad · Argo CD / Flux · Clusters gestionados · EKS / GKE / AKS

K8S · GITOPS
📂 Repo → cluster 🔄 Reconcile loop ☁ Managed 🧩 Add-ons
01 GitOps — principios
📌
DECLARATIVO
El estado deseado vive en Git
PR review
Cambios al cluster = merge a la rama que observa el operador. Rollback = revert del commit. Auditoría y diffs legibles por diseño.
No: kubectl apply manual en prod sin reflejar en repo (drift).
🔁
PULL-BASED
El agente aplica desde dentro
outbound
El controlador en el cluster tira de Git (o de OCI Helm). No hace falta exponer el API del cluster a la CI con permisos admin — reduce superficie de ataque.
La CI construye y publica imagen; GitOps actualiza solo el tag o digest en manifiestos.
⚖️
DRIFT
Detección y autocorrección
sync prune
Si alguien muta recursos a mano, el siguiente sync puede sobrescribir o marcar OutOfSync según política. Define si permites “self-heal” automático.
Políticas de prune con cuidado: borrar namespaces por error duele.
Bucle típico GitOps
Git (main)
Argo CD / Flux
API Server
workloads alineados con el commit
02 Argo CD vs Flux — encaje rápido
Aspecto
Argo CD
Flux v2
Modelo mental
Aplicaciones como objetos CRD con UI CLI potentes; “App of Apps”
Controllers modulares (source, kustomize, helm, notification); GitOps Toolkit
Helm
Soporte nativo de charts y parámetros por UI
HelmRelease CRD + reconciler dedicado
Multi-repo / multi-cluster
Proyectos, permisos granulares, patrones maduros en enterprise
Composición con dependencias entre sources; encaja en pipelines Git-native
Cuándo elegir
Equipos que quieren UI y visibilidad de sync unificada
Equipos muy orientados a controllers + YAML y CNCF pura
03 Kubernetes gestionado — qué delegas
🅰
EKS
AWS
Control plane gestionado; integración con IAM, ALB/NLB, VPC CNI. Tú gestionas nodos (Managed Node Groups, Karpenter, Fargate profiles) y add-ons (CNI, CoreDNS, kube-proxy / legacy).
Actualizaciones: versiones de Kubernetes en cadencia AWS; planifica ventanas y prueba en staging.
🅶
GKE
Google Cloud
Autopilot vs Standard: en Autopilot Google administra más la capa de nodos y límites de seguridad. Buena integración con Artifact Registry e IAM de workload.
Red: Network Endpoint Groups (NEG) para Ingress/Gateway con backends fine-grained.
🅼
AKS
Azure
Control plane gratis (modelo de precios distinto); integración con Entra ID, Azure CNI, Application Gateway. Node pools por SKU/OS.
Windows containers y escenarios híbridos on-prem↔cloud son frecuentes en clientes Azure.
04 CLI — inspeccionar GitOps
Argo CD CLI (ejemplos)
# Login (SSO o admin bootstrap solo en lab)
argocd login argocd.mi-dominio.com

# Estado de aplicaciones
argocd app list
argocd app get mi-app -o wide

# Forzar reconciliación / sync manual (según política)
argocd app sync mi-app --prune

# Flux: ver Kustomizations y fuentes
flux get kustomizations -n flux-system
flux get sources git -n flux-system
🌿
Un repo vs muchos
Monorepo simplifica dependencias; multirepo aísla blast radius. Ambos funcionan con GitOps si el árbol de aplicaciones está claro.
🔐
Secretos en Git
Nunca en claro. SOPS, Sealed Secrets o vault agent + referencias. GitOps y seguridad van en el mismo barco.
🧭
Versión del control plane
En managed, deprecations y APIs beta te alcanzan igual. Sigue el changelog del proveedor y prueba upgrades en cluster espejo.