Skip to content

Что такое ArgoCD

Коротко:

ArgoCD — most popular GitOps tool для Kubernetes (CNCF graduated 2022). Agent в cluster continuously compares Git state vs actual, applies diffs. Nice web UI с visualisation health/sync status. Typical setup: 1 ArgoCD install manages multiple clusters/apps. Scale: Intuit uses ArgoCD для 1000+ apps. Alternatives: Flux CD (simpler, pull-based).

Ниже: подробности, пример, смежные термины, FAQ.

Подробности

  • Application CRD: points Git repo path → K8s namespace
  • ApplicationSet: generate apps for multi-env (dev/staging/prod)
  • App of apps: one app manages many (hierarchical)
  • Sync waves: ordered resource creation (order annotations)
  • Notifications: Slack/Teams на sync events

Пример

# App of apps bootstrap
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: bootstrap
spec:
  source:
    repoURL: git@github.com:me/manifests
    path: apps/        # contains more Application CRDs
    targetRevision: HEAD
  destination: { server: https://kubernetes.default.svc, namespace: argocd }
  syncPolicy: { automated: { prune: true } }

Смежные термины

Больше по теме

Часто задаваемые вопросы

ArgoCD vs Flux?

ArgoCD: better UI, UI-driven adoption. Flux: simpler, native cross-cluster. Enterprise often ArgoCD (UI для devs). Platform teams часто Flux.

Multi-cluster?

ArgoCD manages multiple clusters из one UI. Нужны credentials. Alternative — instance per cluster.

Scaling limits?

Default configs: ~1000 apps per instance. Large setups — shard controllers по clusters/projects.