kubernetes: файл CA при развертывании через копы
Я создал кластер на aws
с помощью kops
,
Однако я не могу найти файл, используемый как / центром сертификации для порождения клиентских сертификатов.
Есть ли kops
создать такую вещь по умолчанию?
Если да, каков рекомендуемый процесс создания клиентских сертификатов?
Документация Kops не очень ясно об этом.
1 ответ
Решение
Я делал это в прошлом:
- Скачать
kops
сертификат CA и ключ подписи от S3:s3://<BUCKET_NAME>/<CLUSTER_NAME>/pki/private/ca/*.key
s3://<BUCKET_NAME>/<CLUSTER_NAME>/pki/issued/ca/*.crt
- Сгенерируйте клиентский ключ:
openssl genrsa -out client-key.pem 2048
Создайте CSR:
openssl req -new \ -key client-key.pem \ -out client-csr.pem \ -subj "/CN=<CLIENT_CN>/O=dev"`
Создайте сертификат клиента:
openssl x509 -req \ -in client-csr.pem \ -CA <PATH_TO_DOWNLOADED_CA_CERT> \ -CAkey <PATH_TO_DOWNLOADED_CA_KEY> \ -CAcreateserial \ -out client-crt.pem \ -days 10000
- Закодируйте Base64 ключом клиента, сертификатом клиента и сертификатом CA и заполните эти значения в
config.yml
Например, это - Распределить населенный
config.yml
вашим разработчикам.
5 и 6, очевидно, могут быть распределены любым способом, который вы хотите, не нужно делать config.yml
для ваших разработчиков.