Пользовательские сертификаты для Ingress-ресурсов
При установке Nova Container Platform вы можете указать цепочку сертификатов собственного центра сертификации, которая будет использована в ходе установки Nova Container Platform для инициализации центра сертификации nova-kubernetes-pki-ingress. Данный центр сертификации используется по умолчанию в платформе для всех Ingress-ресурсов.
1. Предварительные условия
-
Вы ознакомились с блоком конфигурации параметров собственного CA-сертификата.
-
Вы подготовили сертификат корневого центра сертификации в формате
pem. -
Вы подготовили сертификат промежуточного центра сертификации в формате
pemсо сроком действия не менее двух лет с текущей даты. -
Вы подготовили зашифрованный приватный ключ промежуточного центра сертификации.
|
При подготовке сертификата промежуточного центра сертификации, рекомендуется ограничить возможность подписи этим сертификатом других промежуточных центров сертификации параметром |
2. Подготовительные действия
Если приватный ключ промежуточного центра сертификации не зашифрован, то необходимо выполнить его шифрование.
Пример
openssl rsa -in intermediateCA/private/intermediate.key.pem -aes256 -out intermediateCA/private/intermediate.key.pem.crypted
writing RSA key
Enter pass phrase:
На запрос Enter pass phrase: введите парольную фразу.
На этапе запуска установки Nova Container Platform вам будет необходимо указать парольную фразу для продолжения установки.
Пример
nova-ctl bootstrap --ssh-key key.pem --ssh-user nova-installer
Enter ingress CA key passphrase:
Сертификаты корневого и промежуточного центров сертификации, а также приватный ключ промежуточного центра сертификации передаются в виде строки с данными, закодированными в base64.
Закодируйте сертификаты и приватный ключ промежуточного центра сертификации в base64.
Пример
cat rootCA/certs/ca.cert.pem | base64 -w0
cat intermediateCA/certs/intermediate.cert.pem | base64 -w0
cat intermediateCA/private/intermediate.key.pem.crypted | base64 -w0
3. Пример файла конфигурации установки
Ниже представлен пример файла конфигурации установки Nova Container Platform с использованием собственного центра сертификации для выпуска сертификатов Ingress-ресурсов.
Пример
apiVersion: "config.nova-platform.io/v1alpha3"
kind: "Infrastructure"
metadata:
name: "cluster"
spec:
customerID: "5d4a2c84b6e22323"
licenseKey: "a098f0aefdc022b643c2eb76c1cad0a8"
version: "v1.1.0"
infrastructureProvider:
none: {}
clusterNodes:
master:
- networkSpec:
ip: "172.31.101.24"
hostname: "master.nova.internal"
state: "present"
worker:
- networkSpec:
ip: "172.31.101.25"
hostname: "worker.nova.internal"
state: "present"
infra:
- networkSpec:
ip: "172.31.101.26"
hostname: "infra.nova.internal"
state: "present"
ingress:
- networkSpec:
ip: "172.31.101.27"
hostname: "ingress.nova.internal"
state: "present"
clusterConfiguration:
dnsBaseDomain: "apps.cls01.nova.internal"
extraOptions:
ingressTLSConfig:
externalCA:
tlsConfig:
ca: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC.." (1)
cert: "LS0tLS1CRUdJTiBDRVJdGbUSUdmMyTnZkek.." (2)
key: "LS0tLS1CRUdJTiBFTkNSWVBURUQgUFJJVkFU.." (3)
| 1 | Сертификат корневого центра сертификации, закодированный в base64. |
| 2 | Сертификат промежуточного центра сертификации, закодированный в base64. |
| 3 | Зашифрованный приватный ключ промежуточного центра сертификации, закодированный в base64. |