В некоторых случаях требуется доверять пользовательским сертификатам CA. Kyverno позволяет автоматически добавлять том, содержащий пользовательские сертификаты CA, в контейнеры с определённой меткой.
Установка состоит из двух этапов:
Шаг 1. Подготовка Secret с сертификатом корневого CA
Создайте Secret с сертификатом корневого CA в пространстве имён, где установлено приложение ELMA365. Если в кластере Kubernetes установлено несколько экземпляров приложения ELMA365, добавьте Secret только в пространствах имён нужных экземпляров ELMA365.
Создайте Secret с наименованием elma365-onpremise-ca в пространство имён, где установлено приложение ELMA365, выполнив команду:
kubectl create secret generic elma365-onpremise-ca --from-file=elma365-onpremise-ca.pem=/etc/ssl/certs/rootCA.pem [-n namespace]
Где в --from-file указывается путь до вашего сертификата корневого CA в формате .pem.
Шаг 2. Заполнение конфигурационного файла
Заполните конфигурационный файл values-policies.yaml для установки политик Kyverno:
- Настройте политику добавления пользовательских сертификатов CA во все контейнеры. Политика включена по умолчанию — в параметре injectCerts.enabled выставлено true.
- В параметре injectCerts.secretCA укажите наименование Secret, созданного на шаге 1. В примере в данной статье — это значение elma365-onpremise-ca. Политика добавляет том, содержащий сертификат CA, ко всем контейнерам с меткой tier=elma365.
- Если в кластере Kubernetes установлено несколько экземпляров приложения ELMA365 On-Premises, но пользовательский сертификат CA нужно добавить только к части экземпляров приложений ELMA365, заполните параметр injectCerts.injectNamespace.
В параметре injectCerts.injectNamespace указаваются пространства имён экземпляров приложения ELMA365, для которых будет применена политика добавления сертификатов и добавлен том, содержащий сертификат CA. Убедитесь, что на шаге 1 Secret с сертификатом корневого CA были добавлены в пространства имён, перечисленные в injectCerts.injectNamespace.
# Настройки kyverno-policies
# политика добавляет том, содержащий сертификат CA, ко всем контейнерам с меткой tier=elma365
injectCerts:
enabled: true
# имя секрета с сертификатом корневого CA для работы https с самоподписанным сертификатом
secretCA: elma365-onpremise-ca
# список namespace, в которых будет применена политика
# injectNamespace:
# - elma365-dev
# - elma365-prod
...
- После настройки политики безопасности выполните установку чарта kyverno-policies, как указано в шаге 3 этапа 2 статьи «Установка Kyverno».
начало внимание
Установка компонента дополнений Kyverno автоматически не подключает том, содержащий сертификат CA, к уже запущенным подам приложения ELMA365. После установки Kyverno перезапустите сервисы приложения ELMA365.
конец внимание