У модуля нет обязательных настроек.

В модуле реализовано 3 алерта.

Модуль включен по умолчанию в наборах модулей: Default, Managed. Модуль выключен по умолчанию в наборе модулей Minimal.

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

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

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

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

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

    kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module enable cert-manager
    

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

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

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

    kubectl -ti -n d8-system exec svc/deckhouse-leader -c deckhouse -- deckhouse-controller module disable cert-manager
    

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

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

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: cert-manager
spec:
  version: 1
  enabled: true
  settings: # <-- Параметры модуля из раздела "Параметры" ниже.

Параметры

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

  • settings
    объект
    • settings.cleanupOrphanSecrets
      булевый

      Удалять Secret с сертификатом автоматически, если соответствующий ресурс Certificate удален из кластера.

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

      Примеры:

      cleanupOrphanSecrets: true
      
      cleanupOrphanSecrets: false
      
    • settings.cloudDNSServiceAccount
      строка

      Service Account для Google Cloud из того же проекта с ролью Администратора DNS.

      Пример:

      cloudDNSServiceAccount: eyJzYSI6ICJhYmNkZWZnaEBzZXJ2aWNlYWNjb3VudC5jb20iLCAicHJvamVjdF9pZCI6ImFhYWFhIn0=
      
    • settings.cloudflareAPIToken
      строка

      API Tokens позволяют использовать ключи, привязанные к определенным DNS-зонам.

      Рекомендуется использовать API Tokens для более высокой безопасности, поскольку они имеют более строгие разрешения и могут быть легко отозваны.

      Способ проверки того, что домены, указанные в ресурсе Certificate, для которых заказывается сертификат, находятся под управлением cert-manager у DNS-провайдера Cloudflare. Проверка происходит путем добавления специальных TXT-записей для домена ACME DNS01 Challenge Provider.

      Пример:

      cloudflareAPIToken: token
      
    • settings.cloudflareEmail
      строка

      Почтовый ящик проекта, на который выдавались доступы для управления Cloudflare.

      Пример:

      cloudflareEmail: example@example.com
      
    • settings.cloudflareGlobalAPIKey
      строка

      Cloudflare Global API key для управления DNS-записями.

      Способ проверки того, что домены, указанные в ресурсе Certificate, для которых заказывается сертификат, находятся под управлением cert-manager у DNS-провайдера Cloudflare. Проверка происходит путем добавления специальных TXT-записей для домена ACME DNS01 Challenge Provider.

      Пример:

      cloudflareGlobalAPIKey: key
      
    • settings.digitalOceanCredentials
      строка

      Access Token от Digital Ocean API, который можно создать в разделе API.

      Пример:

      digitalOceanCredentials: creds
      
    • settings.disableLetsencrypt
      булевый

      Не создавать ClusterIssuer letsencrypt и letsencrypt-staging в кластере (если true).

      Примеры:

      disableLetsencrypt: true
      
      disableLetsencrypt: false
      
    • settings.email
      строка

      Почтовый ящик проекта, на который LetsEncrypt будет слать уведомления.

      Пример:

      email: example@example.com
      
    • settings.enableCAInjector
      булевый

      Включить CAInjector. Он необходим только для инъекции CA-сертификатов в ValidatingWebhookConfiguration, MutatingWebhookConfiguration, CustomResourceDefinition и APIService. Deckhouse не использует CAInjector, поэтому включать нужно только в том случае, если вы используете в своих сервисах пользовательские инъекции CA.

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

      Примеры:

      enableCAInjector: true
      
      enableCAInjector: false
      
    • settings.maxConcurrentChallenges
      целочисленный

      Максимальное количество одновременных Challenges в статусе Processing

      Допустимые значения: 0 <= X

      Пример:

      maxConcurrentChallenges: 25
      
    • settings.nodeSelector
      объект

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

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

      Пример:

      nodeSelector:
        has-gpu: 'true'
      
    • settings.route53AccessKeyID
      строка

      Access Key ID пользователя с необходимыми правами.

      Amazon Route53 IAM Policy для управления доменными записями домена.

      Пример:

      route53AccessKeyID: key_id
      
    • settings.route53SecretAccessKey
      строка

      Secret Access Key пользователя с необходимыми правами для управления доменными записями домена.

      Пример:

      route53SecretAccessKey: secret
      
    • settings.tolerations
      массив объектов

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

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

      Пример:

      tolerations:
      - key: dedicated.deckhouse.io
        operator: Equal
        value: cert-manager
      
      • settings.tolerations.effect
        строка
      • settings.tolerations.key
        строка
      • settings.tolerations.operator
        строка
      • settings.tolerations.tolerationSeconds
        целочисленный
      • settings.tolerations.value
        строка