Cert-manager#
Cert-manager - инструмент, предназначенный для автоматизации управления TLS-сертификатами внутри кластера. Он позволяет запрашивать, выдавать, обновлять и хранить сертификаты, обеспечивая безопасность сервисов без необходимости ручного вмешательства.
Основные задачи и возможности
Автоматическое создание и обновление сертификатов:
Cert-manager отслеживает срок действия сертификатов и автоматически продлевает их.
Интеграция с Kubernetes API:
Добавляет новые ресурсы в API Kubernetes, такие как
Certificate,IssuerиClusterIssuer, что позволяет управлять сертификатами через привычные манифесты.Поддержка разных типов издателей (Issuers):
Позволяет настраивать источники выдачи сертификатов, например, внутренние PKI или центры сертификации.
Хранение сертификатов в Kubernetes Secrets:
Готовые сертификаты сохраняются в виде Secret-ресурсов, что удобно для интеграции с другими компонентами кластера, такими как Ingress-контроллеры.
Гибкая конфигурация:
Поддерживает разные профили выпуска сертификатов, указание SAN (Subject Alternative Names), параметров ключа и других свойств.
Благодаря своей надежности и широким возможностям, Cert-manager является стандартным решением для управления TLS-сертификатами в экосистеме Kubernetes.
Примечание
Cert-manager является единственным инструментом в компоненте Cert-management, и он устанавливается по умолчанию в процессе установки всего кластера DropApp. В частности, его сертификаты использует инструмент Ingress-nginx в компоненте Ingress-controller.
Конфигурация values#
Значения можно переопределить через редактирование инструмента с именем cert-manager и указанием нужных values в spec.values. Общее описание конфигурации values для инструментов описано в разделе «Конфигурации инструментов дополнительных компонентов».
installCRDs - управление установкой Custom Resource Definitions#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Устаревший параметр для установки CRD, используйте |
|
crds - настройки Custom Resource Definitions#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Установить CRDs как часть Helm-установки |
|
|
Добавить аннотацию |
|
replicaCount - количество реплик#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Количество реплик контроллера Cert-manager для высокой доступности |
|
strategy - стратегия обновления контроллера deployment#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Стратегия обновления для deployment контроллера Cert-manager |
|
podDisruptionBudget - политика прерывания pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включить |
|
featureGates - экспериментальные функции#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список функций через запятую для включения в контроллере |
|
maxConcurrentChallenges - ограничение concurrent challenges#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Максимальное количество |
|
image - конфигурация образа контроллера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Репозиторий образа контроллера |
|
|
Тег образа контроллера Cert-manager |
|
|
Политика загрузки образа ( |
|
namespace - namespace для установки сервисов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Namespace для установки сервисов Cert-manager |
|
serviceAccount - настройки учетной записи сервиса#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создавать ServiceAccount для cert-manager |
|
|
Имя ServiceAccount |
|
|
Аннотации для ServiceAccount |
|
|
Автоматически монтировать API credentials для Service Account |
|
enableCertificateOwnerRef - автоматическое удаление секретов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Автоматически удалять секреты при удалении ресурса |
|
config - конфигурационный файл контроллера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
YAML-конфигурация для компонентов Cert-manager через файл |
|
dns01RecursiveNameservers - настройки DNS для ACME DNS01#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список рекурсивных |
|
|
Принуждать использовать только рекурсивные |
|
disableAutoApproval - отключение автоматического одобрения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Отключить встроенное автоматическое одобрение запросов на сертификаты |
|
approveSignerNames - список имен подписантов для автоодобрения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Список имен подписантов для автоматического одобрения |
|
extraArgs - дополнительные параметры запуска#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные аргументы командной строки для контроллера |
|
extraEnv - дополнительные переменные окружения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные переменные окружения для контроллера |
|
resources - лимиты и requests ресурсов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Запросы CPU |
|
|
Запросы памяти |
|
|
Лимит CPU |
|
|
Лимит памяти |
|
securityContext - securityContext контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Запуск от имени непривилегированного пользователя |
|
|
Тип профиля |
|
containerSecurityContext - контекст безопасности контейнера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Разрешить эскалацию привилегий |
|
|
Список |
|
|
Использовать read-only корневую файловую систему |
|
volumes - дополнительные тома для пода контроллера#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные тома для добавления к pod контроллера |
|
volumeMounts - дополнительные монтирования томов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные монтирования томов для контейнера контроллера |
|
podLabels - метки пода#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные метки для добавления к pods контроллера |
|
hostAliases - псевдонимы хостов для подов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Дополнительные |
|
nodeSelector - селектор узла пода#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ограничивает запуск pods на определенных (тэгированных) узлах |
|
|
Селектор операционной системы узла |
|
ingressShim - настройки ingress-shim#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Конфигурация для автоматического создания |
|
affinity - правила размещения pod#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Описывает правила размещения pods |
|
tolerations - разрешенные tolerations к taint узлов#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Разрешает запускаться на taint-узлах |
|
topologySpreadConstraints - равномерное распределение pods#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Ограничения распределения топологии Kubernetes |
|
livenessProbe - проверка работоспособности#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включить проверку работоспособности |
|
|
Задержка перед первой проверкой |
|
|
Периодичность |
|
|
Время ожидания проверки |
|
|
Количество неудачных проверок для перезапуска |
|
|
Количество успешных проверок для восстановления |
|
enableServiceLinks - связи сервисов в переменных окружения#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Внедрение информации о сервисах в переменные окружения |
|
prometheus - конфигурация мониторинга Prometheus#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включить мониторинг Prometheus |
|
|
Создать |
|
|
Метка |
|
|
Целевой порт для установки на |
|
|
Путь для сбора метрик |
|
|
Интервал сбора метрик |
|
|
Время ожидания сбора метрик |
|
|
Дополнительные метки для |
|
|
Дополнительные аннотации для |
|
|
Сохранять метки из scraped-данных |
|
|
Дополнительные свойства для endpoint |
|
|
Создать |
|
|
Метка Prometheus на создаваемом |
|
|
Путь для сбора метрик |
|
|
Интервал сбора метрик |
|
|
Время ожидания сбора метрик |
|
|
Дополнительные метки для |
|
|
Дополнительные аннотации для |
|
|
Сохранять метки из scraped-данных |
|
|
Дополнительные свойства для endpoint |
|
webhook - конфигурация компонента webhook#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Количество реплик webhook для высокой доступности |
|
|
Время ожидания API-сервера для ответа webhook (1-30 сек) |
|
|
Конфигурация для компонента webhook через файл |
|
|
Стратегия обновления для |
|
|
Запускать webhook от имени непривилегированного пользователя |
|
|
Тип профиля |
|
|
Разрешить эскалацию привилегий для webhook |
|
|
Список |
|
|
Использовать read-only файловую систему в webhook |
|
|
Включить |
|
|
Селектор namespace для |
|
|
Селектор namespace для |
|
|
Дополнительные аргументы командной строки для webhook |
|
|
Дополнительные переменные окружения для webhook |
|
|
Список функций через запятую для webhook |
|
|
Ресурсы для pod webhook |
|
|
Количество неудачных liveness проверок |
|
|
Задержка перед первой liveness проверкой |
|
|
Период между liveness проверками |
|
|
Количество успешных liveness проверок |
|
|
Время ожидания liveness проверки |
|
|
Количество неудачных readiness проверок |
|
|
Задержка перед первой readiness проверкой |
|
|
Период между readiness проверками |
|
|
Количество успешных readiness проверок |
|
|
Время ожидания readiness проверки |
|
|
Селектор операционной системы для webhook |
|
|
Kubernetes Affinity для планирования pods webhook |
|
|
Список Kubernetes Tolerations для pods webhook |
|
|
Ограничения распределения топологии для webhook |
|
|
Дополнительные метки для pods webhook |
|
|
Дополнительные метки для |
|
|
Политика IP-семейства для |
|
|
IP-семейства для |
|
|
Репозиторий образа webhook |
|
|
Тег образа webhook |
|
|
Политика получения образа webhook |
|
|
Создать сервисный аккаунт для webhook |
|
|
Автоматически монтировать API |
|
|
Порт, на котором webhook слушает запросы |
|
|
Запускать webhook в hostNetwork режиме |
|
|
Тип сервиса для webhook |
|
|
Переопределение URL для |
|
|
Создать сетевые политики для webhook |
|
|
Правила входящего трафика для сетевой политики |
|
|
Правила исходящего трафика для сетевой политики |
|
|
Дополнительные тома для контроллера |
|
|
Дополнительные монтирования томов для контроллера |
|
|
Внедрять информацию о сервисах в переменные окружения webhook |
|
cainjector - конфигурация компонента cainjector#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать |
|
|
Количество реплик |
|
|
Конфигурация для компонента |
|
|
Стратегия обновления для deployment |
|
|
Запускать |
|
|
Тип профиля |
|
|
Разрешить эскалацию привилегий для |
|
|
Список capabilities для удаления в |
|
|
Использовать read-only файловую систему в |
|
|
Включить PodDisruptionBudget для |
|
|
Дополнительные аргументы командной строки для |
|
|
Дополнительные переменные окружения для |
|
|
Список функций через запятую для |
|
|
Ресурсы для пода |
|
|
Селектор операционной системы для |
|
|
Kubernetes Affinity для планирования подов |
|
|
Список Kubernetes Tolerations для подов |
|
|
Ограничения распределения топологии для |
|
|
Дополнительные метки для подов |
|
|
Дополнительные метки для метрик Service |
|
|
Репозиторий образа |
|
|
Тег образа |
|
|
Политика получения образа |
|
|
Создать сервисный аккаунт для |
|
|
Автоматически монтировать API credentials для |
|
|
Дополнительные тома для контроллера |
|
|
Дополнительные монтирования томов для контроллера |
|
|
Внедрять информацию о сервисах в переменные окружения |
|
acmesolver - конфигурация ACME solver#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Репозиторий образа |
|
|
Тег образа |
|
|
Политика получения образа |
|
startupapicheck - проверка доступности API при запуске#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Включить проверку |
|
|
Запускать |
|
|
Тип профиля |
|
|
Разрешить эскалацию привилегий для |
|
|
Список |
|
|
Использовать read-only файловую систему в |
|
|
Время ожидания для команды |
|
|
Лимит повторных попыток Job |
|
|
Хук Helm для Job |
|
|
Вес хука Helm |
|
|
Политика удаления хука |
|
|
Дополнительные аргументы командной строки для |
|
|
Дополнительные переменные окружения для |
|
|
Ресурсы для pod |
|
|
Селектор операционной системы для |
|
|
Kubernetes Affinity для планирования pods |
|
|
Список Kubernetes Tolerations для pods |
|
|
Дополнительные метки для pods |
|
|
Репозиторий образа |
|
|
Тег образа |
|
|
Политика получения образа |
|
|
Хук Helm для RBAC ресурсов |
|
|
Вес хука Helm для RBAC |
|
|
Политика удаления хука для RBAC |
|
|
Создать сервисный аккаунт для |
|
|
Хук Helm для Service Account |
|
|
Вес хука Helm для Service Account |
|
|
Политика удаления хука для Service Account |
|
|
Автоматически монтировать API credentials для |
|
|
Дополнительные тома для контроллера |
|
|
Дополнительные монтирования томов для контроллера |
|
|
Внедрять информацию о сервисах в переменные окружения |
|
extraObjects - дополнительные Kubernetes ресурсы#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Создать дополнительные манифесты через значения |
|
creator - метка создателя#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Поле для обозначения способа создания ( |
|
enabled - состояние чарта#
Параметр |
Описание |
Значение по умолчанию |
|---|---|---|
|
Поле для использования в качестве условия зависимости |
|