Ключевые принципы
- Декларативность — состояние инфраструктуры описывается файлами (Kubernetes manifests, Helm charts)
- Git как единый источник — любое изменение проходит через Pull Request с ревью и CI
- Автоматическая синхронизация — оператор (ArgoCD, Flux) отслеживает Git и применяет изменения
- Наблюдаемость — легко сравнить текущее состояние кластера с описанным в Git
GitOps vs CI/CD Push
- Push — CI-пайплайн сам деплоит (kubectl apply). Требует credentials в CI
- Pull (GitOps) — оператор внутри кластера сам тянет изменения из Git. Меньше поверхность атаки
Инструменты
ArgoCD и Flux CD — наиболее популярные GitOps-операторы для Kubernetes.