Ansichten:
Profilanwendbarkeit: Stufe 1 - Masterknoten
Verwenden Sie individuelle Dienstkontenanmeldedaten für jeden Controller.
Der Controller-Manager erstellt ein Servicekonto pro Controller im kube-system-Namespace, generiert ein Anmeldeinformation dafür und baut einen dedizierten API-Client mit diesem Servicekonto-Anmeldeinformation für jede Controller-Schleife. Wenn --use-service-account-credentials auf true gesetzt wird, läuft jede Kontrollschleife innerhalb des Controller-Managers mit einem separaten Servicekonto-Anmeldeinformation. In Kombination mit RBAC wird dadurch sichergestellt, dass die Kontrollschleifen mit den minimalen Berechtigungen erforderlich ausgeführt werden, um ihre vorgesehenen Aufgaben zu erfüllen.
Hinweis
Hinweis
Standardmäßig ist --use-service-account-credentials auf false gesetzt.

Auswirkung

Unabhängig davon, welcher Autorisierer für den Cluster konfiguriert ist, muss er den Dienstkonten ausreichende Berechtigungen gewähren, um ihre vorgesehenen Aufgaben auszuführen. Bei Verwendung des RBAC-Autorisierers werden diese Rollen erstellt und automatisch mit den entsprechenden Dienstkonten im kube-system-Namespace mit Standardrollen und Rollenbindungen verknüpft, die beim Start automatisch abgeglichen werden.
Wenn andere Autorisierungsmethoden (ABAC, Webhook usw.) verwendet werden, ist der Cluster-Deployeur dafür verantwortlich, den Dienstkonten die entsprechenden Berechtigungen zu erteilen (die erforderlichen Berechtigungen können durch Überprüfung der Dateien controller-roles.yaml und controller-role-bindings.yaml für die RBAC-Rollen eingesehen werden).

Prüfung

Führen Sie den folgenden Befehl auf dem Control Plane-Knoten aus:
ps -ef | grep kube-controller-manager
Überprüfen Sie, ob das Argument --use-service-account-credentials auf true gesetzt ist.

Wiederherstellung

Bearbeiten Sie die Controller-Manager-Pod-Spezifikationsdatei /etc/kubernetes/manifests/kube-controller-manager.yaml auf dem Steuerungsebenenknoten, um den untenstehenden Parameter festzulegen.
--use-service-account-credentials=true