Модуль не включен по умолчанию в каком-либо наборе модулей.

Как явно включить или отключить модуль…

Чтобы явно включить или выключить модуль delivery, установите spec.enabled в true или false в ModuleConfig/delivery (создайте, при необходимости), или воспользуйтесь командой deckhouse-controller module в поде d8-system/deckhouse.

Пример включения модуля:

  • с помощью ресурса ModuleConfig:

    1apiVersion: deckhouse.io/v1alpha1
    2kind: ModuleConfig
    3metadata:
    4  name: delivery
    5spec:
    6  enabled: true
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    1kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module enable delivery
    

Пример выключения модуля:

  • с помощью ресурса ModuleConfig:

    1apiVersion: deckhouse.io/v1alpha1
    2kind: ModuleConfig
    3metadata:
    4  name: delivery
    5spec:
    6  enabled: false
    
  • с помощью команды deckhouse-controller (требуется kubectl, настроенный на работу с кластером):

    1kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module disable delivery
    

Чтобы настроить модуль, используйте custom resource ModuleConfig с именем delivery (подробнее о настройке Deckhouse…).

Пример ресурса ModuleConfig/delivery для настройки модуля:

1apiVersion: deckhouse.io/v1alpha1
2kind: ModuleConfig
3metadata:
4  name: delivery
5spec:
6  version: 1
7  enabled: true
8  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

Версия схемы: 1

  • argocd
    объект

    Конфигурация Argo CD.

    • argocd.admin
      объект
      • argocd.admin.enabled
        булевый

        Флаг управляет включением пользователя admin.

        Он может понадобиться, если в кластере не используется Dex или если нужно настроить доступ в CLI утилитой argocd (читайте подробнее в разделе Примеры).

        По умолчанию: false

  • https
    объект

    Тип сертификата, используемого для веб-приложения Argo CD.

    При использовании этого параметра полностью переопределяются глобальные настройки global.modules.https.

    Примеры:

    1https:
    2  mode: CustomCertificate
    3  customCertificate:
    4    secretName: foobar
    
    1https:
    2  mode: CertManager
    3  certManager:
    4    clusterIssuerName: letsencrypt
    
    • https.certManager
      объект
      • https.certManager.clusterIssuerName
        строка

        ClusterIssuer, используемый для Argo CD.

        Доступны letsencrypt, letsencrypt-staging, selfsigned, но вы можете определить свои.

        По умолчанию: "letsencrypt"

    • https.customCertificate
      объект
      • https.customCertificate.secretName
        строка

        Имя Secret’а в namespace d8-system, который будет использоваться для Argo CD.

        Secret должен быть в формате kubernetes.io/tls.

        По умолчанию: "false"

    • https.mode
      строка

      Режим работы HTTPS:

      • Disabled — веб-интерфейс Argo CD будет работать только по HTTP;
      • CertManager — веб-интерфейс Argo CD будет работать по HTTPS и заказывать сертификат с помощью ClusterIssuer, заданного в параметре certManager.clusterIssuerName;
      • CustomCertificate — веб-интерфейс Argo CD будет работать по HTTPS, используя сертификат из namespace d8-system;
      • OnlyInURI — веб-интерфейс Argo CD будет работать по HTTP (подразумевая, что перед ним стоит внешний балансировщик, который терминирует HTTPS) и все ссылки в user-authn будут генерироваться с HTTPS-схемой. Балансировщик должен обеспечивать перенаправление с HTTP на HTTPS.

      По умолчанию: "Disabled"

      Допустимые значения: Disabled, CertManager, CustomCertificate, OnlyInURI

  • nodeSelector
    объект

    Структура, аналогичная spec.nodeSelector пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

    Пример:

    1nodeSelector:
    2  disktype: ssd
    
  • storageClass

    Имя StorageClass’а, который предполагается использовать.

    Если не указано — используется StorageClass существующей PVC, а если PVC пока нет — используется или глобальный StorageClass, или global.discovery.defaultStorageClass, а если и их нет — данные сохраняются в emptyDir.

    global.discovery.defaultStorageClass применяется только при включении модуля, смена StorageClass по умолчанию в кластере не приведет к перезаказу диска.

    ОСТОРОЖНО! При указании этой опции в значение, отличное от текущего (из существующей PVC), диск будет перезаказан, а все данные удалены.

    Если указать false — будет форсироваться использование emptyDir’а.

    Примеры:

    1storageClass: false
    
    1storageClass: default
    
  • tolerations
    массив объектов

    Структура, аналогичная spec.tolerations пода Kubernetes.

    Если ничего не указано или указано false, будет использоваться автоматика.

    Пример:

    1tolerations:
    2- key: key1
    3  operator: Equal
    4  value: value1
    5  effect: NoSchedule
    
    • tolerations.effect
      строка
    • tolerations.key
      строка
    • tolerations.operator
      строка
    • tolerations.tolerationSeconds
      целочисленный
    • tolerations.value
      строка