Profilanwendbarkeit: Stufe 2
Aktivieren Sie die Rotation des Client-Zertifikats für Kubelet.
Die Einstellung
--rotate-certificates
bewirkt, dass der Kubelet seine Client-Zertifikate durch das Erstellen neuer CSRs
dreht, wenn seine bestehenden Anmeldedaten ablaufen. Diese automatisierte periodische
Drehung stellt sicher, dass es keine Ausfallzeiten aufgrund abgelaufener Zertifikate
gibt und somit die Verfügbarkeit im CIA (Vertraulichkeit, Integrität und Verfügbarkeit)
Sicherheitsdreieck gewährleistet wird.Diese Empfehlung gilt nur, wenn Sie kubelets ihre Zertifikate vom API-Server beziehen
lassen. Falls Ihre kubelet-Zertifikate von einer externen Autorität/einem externen
Tool (z. B. Vault) stammen, müssen Sie die Rotation selbst implementieren. Diese Funktion
erfordert auch, dass das
RotateKubeletClientCertificate
Feature-Gate aktiviert ist.![]() |
HinweisSiehe die Azure AKS-Dokumentation für den Standardwert.
|
Auswirkung
Das Deaktivieren der Zertifikatsrotation kann dazu führen, dass abgelaufene Kubelet-Zertifikate
die Kommunikation mit dem API-Server unterbrechen, was potenziell zu Problemen mit
Knoten oder Pods führen kann. Dies kann manuelles Eingreifen erfordern und ist in
Produktionsumgebungen nicht nachhaltig.
Prüfung
-
SSH zu jedem Knoten und führen Sie den folgenden Befehl aus, um den Kubelet-Prozess zu finden:
ps -ef | grep kubelet
-
Wenn die Ausgabe das ausführbare Argument
--RotateCertificate
enthält, überprüfen Sie, ob es auftrue
gesetzt ist. -
Wenn die Ausgabe des obigen Befehls das ausführbare Argument
--RotateCertificate
nicht enthält, überprüfen Sie die Kubelet-Konfigurationsdatei.Die Ausgabe des obigen Befehls sollte etwas Ähnliches wie--config /etc/kubernetes/kubelet/kubelet-config.json
zurückgeben, was den Speicherort der Kubelet-Konfigurationsdatei darstellt. -
Öffnen Sie die Kubelet-Konfigurationsdatei:
cat /etc/kubernetes/kubelet/kubelet-config.json
-
Überprüfen Sie, dass das Argument
RotateCertificate
nicht vorhanden ist oder auftrue
gesetzt ist.
Wiederherstellung
Remediation Method 1:
Wenn Sie die Kubelet-Konfigurationsdatei ändern, bearbeiten Sie
/etc/kubernetes/kubelet/kubelet-config.json
und setzen Sie den untenstehenden Parameter auf true
:"rotateCertificates": true
Stellen Sie sicher, dass die Kubelet-Dienstdatei
/etc/systemd/system/kubelet.service.d/10-kubelet-args.conf
das ausführbare Argument --RotateCertificate
nicht auf false
setzt, da dies die Kubelet-Konfigurationsdatei überschreiben würde.Remediation Method 2:
Wenn ausführbare Argumente verwendet werden, bearbeiten Sie die Kubelet-Dienstdatei
/etc/systemd/system/kubelet.service.d/10-kubelet-args.conf
auf jedem Worker-Knoten und fügen Sie am Ende der KUBELET_ARGS
-Zeichenfolge den folgenden Parameter hinzu:--RotateCertificate=true