Сегодня наша лаборатория кластера k8s перестала работать с кластером. Когда я окопался, это было потому, что срок действия сертификатов истек.
Я восстановил сертификаты и конфиги, но когда я перезапускаю kubelet, мы все равно получаем connection refused
к apiserver. Apiserver запущен, но порт 6443 не открыт. При отладке журналов выводится следующая ошибка (возможно, отвлекающий маневр, но не уверен):
Current certificate CN (system:node:lab-02) does not match requested CN (system:node:control-plane-xm2c9)
Это kubeadm
создан кластер. я использовал kubeadm
для восстановления всех сертификатов (кроме CA). Были использованы следующие команды:
# kubeadm init phase certs apiserver --apiserver-cert-extra-sans control-plane-xm2c9 --apiserver-advertise-address 192.168.2.78
# kubeadm init phase certs apiserver-etcd-client
# kubeadm init phase certs apiserver-kubelet-client
Конфиги я создал с помощью:
# kubeadm init phase kubeconfig admin --apiserver-advertise-address 192.168.2.78
# kubeadm init phase kubeconfig kubelet --apiserver-advertise-address 192.168.2.78
# kubeadm init phase kubeconfig controller-manager --apiserver-advertise-address 192.168.2.78
# kubeadm init phase kubeconfig scheduler --apiserver-advertise-address 192.168.2.78
Я все еще просматриваю логи. Я думаю, что это корень моей проблемы, но не знаю, как ее решить. Любая помощь была бы замечательной! TIA