Argo CD
Argo CD — GitOps инструмент для управления Kubernetes приложениями через сравнение desired state (Git) и actual state (кластера). Он выполняет reconcile loop, показывает drift (например, OutOfSync) и позволяет безопасно синхронизировать изменения из репозитория.
Материалы
- 1. База — желаемое/фактическое состояние, drift detection,
pullvspush, sync и reconciliation. - 2. Архитектура — компоненты Argo CD (API Server, Repo Server, Application Controller), как они взаимодействуют и как идёт sync.
- 3. Основные сущности — Application и AppProject, auto-sync/self-heal/prune, Sync waves.
- 4. Sync стратегии — manual/auto sync, hooks (PreSync/PostSync) и health/rollback сценарии.
- 5. Безопасность и доступы — RBAC, ограничения AppProject, OIDC и управление секретами.
- 6. Multi-cluster и multi-env — подключение кластеров, изоляция dev/stage/prod и подходы к управлению окружениями (включая AppSet).
- 7. Работа с Helm и Kustomize — значения и overrides, overlays/patches, private repos и практика настройки под окружения.
- 8. Production use cases — canary/blue-green, feature/preview окружения и практические шаблоны.
- 9. Наблюдаемость и troubleshooting — логи Argo CD, Kubernetes Events, diff view и воспроизводимые шаги восстановления.
- 10. Архитектура репозиториев GitOps — monorepo vs multirepo, App-of-apps и guardrails через per-app периметр.
- 11. Интеграции — CI → Argo CD webhooks и уведомления Slack/Email с production-подходом.
- 12. Advanced (для уверенного Middle+) — Image Updater, custom health checks, resource exclusions и performance tuning.