ArgoCD

Тема дорожной карты · Kubernetes

Argo CD — это декларативный GitOps-контроллер непрерывной доставки для Kubernetes, который непрерывно отслеживает Git-репозитории и приводит живое состояние кластера в соответствие с желаемым состоянием, определённым в Helm-чартах, Kustomize-оверлеях или обычных YAML-манифестах. Развёрнутый как набор контроллеров Kubernetes в пространстве имён argocd, он предоставляет веб-интерфейс и CLI (argocd) для управления ресурсами Application и AppProject, запуска синхронизаций, просмотра диффов и отката к любой предыдущей ревизии Git. Argo CD поддерживает развёртывания в нескольких кластерах, SSO через OIDC, детально настраиваемые RBAC-политики и sync-хуки (PreSync, Sync, PostSync), которые запускают ресурсы Kubernetes Job в ходе конвейера развёртывания. Движок оценки состояния анализирует статус rollout Deployment, готовность StatefulSet и привязку PersistentVolumeClaim, немедленно отображая деградировавшие ресурсы на дашборде Argo CD.

Как это работает

ArgoCD рассматривает git-репозиторий как источник истины для состояния кластера. Агент внутри кластера (Argo CD, Flux CD) непрерывно сводит состояние кластера к тому, что в git: коммит в main триггерит redeployment; ручной kubectl edit откатывается агентом. Pull request становятся deployment-предложениями с reviewer; audit trail бесплатно из git history.

Когда применять

Принимайте ArgoCD когда (а) в команде больше 2-3 инженеров и прямой доступ к кластеру становится рискованным, (б) нужны audit trails для compliance, (в) хотите rollback deployment через git revert вместо ad-hoc kubectl. Пропустите GitOps для очень маленьких команд, где прямой kubectl-доступ достаточно быстрый — overhead превышает выгоду до тех пор, пока координация не становится важной.

Типичные ошибки

GitOps-ловушки: configuration drift между git и кластером (ручные изменения не откатываются, потому что агент неправильно настроен); секреты в plaintext git (используйте sealed-secrets или External Secrets); слишком много сред в одном репо (медленный CI, большой blast radius). Относитесь к GitOps-репо как к production infrastructure: PR review, branch protection, deployment workflows.

Связанные понятия

Полезные ресурсы