У модуля нет обязательных настроек.
В модуле реализовано 3 алерта.
Модуль включен по умолчанию в наборах модулей: Default
, Managed
.
Модуль выключен по умолчанию в наборе модулей Minimal
.
Чтобы настроить модуль, используйте 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