Доступно с ограничениями в редакциях: CSE Lite (1.73), CSE Pro (1.73)
Доступно без ограничений в редакциях: EE
Модуль operator-argo предназначен для инженеров платформы и DevOps-команд, которые организуют доставку приложений по модели GitOps в Deckhouse Kubernetes Platform. Он позволяет декларативно разворачивать и обслуживать инсталляции Argo CD, не устанавливая и не поддерживая их компоненты вручную.
Модуль разворачивает в кластере Argo CD Operator. Вы описываете нужный экземпляр Argo CD в кастомном ресурсе ArgoCD, а оператор создаёт и поддерживает в согласованном состоянии все его компоненты: сервер API, сервер репозиториев, контроллер приложений и Redis.
Модуль также интегрирует Argo CD с платформой: единый вход через Dex, управление ресурсами через модуль vertical-pod-autoscaler и передачу метрик в систему мониторинга.
Основные возможности
- Декларативная установка Argo CD через кастомный ресурс ArgoCD: достаточно один раз описать экземпляр, и оператор создаст и обновит все его компоненты.
- Единый вход с учётными записями платформы через провайдер Dex Deckhouse Kubernetes Platform, что избавляет от ведения отдельных учётных данных Argo CD.
- Режим высокой доступности, в котором HAProxy размещается перед Redis и делает хранилище состояния Argo CD устойчивым к отказам узлов.
- Автоматическое обновление образов через встроенный Argo CD Image Updater, что удерживает развёрнутые приложения на нужных версиях образов.
- Доступ к cluster-wide-ресурсам для выбранных неймспейсов, который управляется параметром модуля
clusterConfigNamespaces. - Управление запросами ресурсов (requests) для компонентов оператора через статические значения или модуль
vertical-pod-autoscaler. - Встроенная интеграция с мониторингом, которая передаёт метрики оператора и Argo CD в систему мониторинга платформы.
Ограничения
- Режим высокой доступности требует не менее трёх узлов из-за правил pod anti-affinity в спецификациях компонентов и не поддерживает кластеры, работающие только с IPv6.
- Режим высокой доступности обеспечивает высокую доступность только для хранилища состояния Redis (через HAProxy) и не делает все компоненты Argo CD высокодоступными автоматически.