Ansichten:
Profilanwendbarkeit: Stufe 1
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 rotiert, wenn seine bestehenden Anmeldeinformationen ablaufen. Diese automatisierte periodische Rotation stellt sicher, dass es keine Ausfallzeiten aufgrund abgelaufener Zertifikate gibt und somit die Verfügbarkeit im CIA-Sicherheitstriad (Vertraulichkeit, Integrität und Verfügbarkeit) gewährleistet wird.
Diese Funktion erfordert auch, dass das Feature-Gate RotateKubeletClientCertificate aktiviert ist.
Hinweis
Hinweis
Diese Empfehlung gilt nur, wenn Sie kubelets ihre Zertifikate vom API-Server beziehen lassen. Falls Ihre kubelet-Zertifikate von einer externen Behörde/Tool (z.B. Vault) stammen, müssen Sie die Rotation selbst implementieren. Hinweis: Diese Funktion erfordert auch, dass das RotateKubeletClientCertificate-Feature-Gate aktiviert ist.
Hinweis
Hinweis
Siehe die Amazon EKS-Dokumentation für den Standardwert.

Prüfung

Prüfmethode 1:
  1. 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 auf true gesetzt ist. Wenn die Ausgabe das ausführbare Argument --RotateCertificate nicht enthält, überprüfen Sie die Kubelet-Konfigurationsdatei. Die Ausgabe sollte etwas Ähnliches wie --config /etc/kubernetes/kubelet/kubelet-config.json zurückgeben, was den Speicherort der Kubelet-Konfigurationsdatei angibt.
  2. Öffnen Sie die Kubelet-Konfigurationsdatei:
    cat /etc/kubernetes/kubelet/kubelet-config.json
  3. Überprüfen Sie, dass das Argument RotateCertificate nicht vorhanden ist oder auf true gesetzt ist.

Wiederherstellung

Behebungsmethode 1:
Wenn Sie die Kubelet-Konfigurationsdatei ändern, bearbeiten Sie die Datei kubelet-config.json /etc/kubernetes/kubelet/kubelet-config.json und setzen Sie den folgenden Parameter auf true:
"RotateCertificate":true
Stellen Sie außerdem 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.
Behebungsmethode 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-Variablenzeichenfolge den untenstehenden Parameter hinzu.
--RotateCertificate=true