Доступно с ограничениями в редакциях 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 высокодоступными автоматически.