![Aktualisieren Sie APIServer-Zertifikate für den HA K8S-Cluster](https://rvso.com/image/756224/Aktualisieren%20Sie%20APIServer-Zertifikate%20f%C3%BCr%20den%20HA%20K8S-Cluster.png)
Ich habe einen HA k8s-Cluster, der von kubeadm erstellt wurde. Ich möchte das API-Serverzertifikat aktualisieren, um zusätzliche SANs hinzuzufügen. Zu diesem Zweck habe ich einige Schritte befolgt, die in einem anderen beschrieben sindPost, aber was ich für den HA-Cluster getan habe:
API-Serverzertifikate entferntauf allen Control-Plane-Knoten
Aktuelle Kubeadm-Konfigurationskarte abgerufen
kubectl get configmap kubeadm-config \ --namespace kube-system \ --output jsonpath={{ .data.ClusterConfiguration }}
- Erweitern Sie es mit dem erforderlichen Konfigurationsteil
apiServer: certSANs: - localhost - 127.0.0.1
- Neue Zertifikate mit aktualisierter Konfiguration generiertauf allen Control-Plane-Knoten
kubeadm init phase certs apiserver --config <config_path>
API-Servercontainer neu gestartetauf allen Control-Plane-Knoten
Aktualisierte In-Cluster-Konfiguration
kubeadm init phase upload-config kubeadm --config <config_path>
Die Frage ist, ob diese Schritte richtig sind oder ob es einen anderen, einfacheren Weg gibt?
Antwort1
Der schnellste Weg, der mir einfällt, ist dieser:
# 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
Denken Sie daran, dass Sie es auf allen Control-Plain-Knoten ausführen müssen.