
У меня есть кластер HA k8s, созданный kubeadm. Я хотел бы обновить сертификат сервера API, чтобы добавить дополнительные SAN. Для этого я выполнил некоторые шаги, описанные в другомпочта, а вот что я сделал для кластера HA:
Удалены сертификаты API-серверана всех узлах плоскости управления
Получена текущая карта конфигурации kubeadm
kubectl get configmap kubeadm-config \ --namespace kube-system \ --output jsonpath={{ .data.ClusterConfiguration }}
- Расширено необходимой частью конфигурации.
apiServer: certSANs: - localhost - 127.0.0.1
- Сгенерированы новые сертификаты с обновленной конфигурациейна всех узлах плоскости управления
kubeadm init phase certs apiserver --config <config_path>
Перезапущен контейнер сервера API.на всех узлах плоскости управления
Обновленная внутрикластерная конфигурация
kubeadm init phase upload-config kubeadm --config <config_path>
Вопрос в том, правильны ли эти шаги или есть другой, более простой способ?
решение1
Самый быстрый способ, который приходит мне в голову, это:
# remove current apiserver certificates
sudo rm /etc/kubernetes/pki/apiserver.*
# generate new certificates
sudo kubeadm init phase certs apiserver --apiserver-cert-extra-sans=localhost,127.0.0.1
Помните, что вам необходимо запустить его на всех узлах control-plain.