Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-wiki:kubernetes:super-admin-conf

Warum braucht kube-vip ggf. super-admin.conf?

Die Datei super-admin.conf kann in bestimmten Setups benötigt werden – z. B. wenn man kube-vip im Leader-Election-Modus als Static Pod unter /etc/kubernetes/manifests/ laufen lässt, wie es oft bei Highly Available (HA) Kubernetes Control Planes der Fall ist.

Der Grund liegt darin, dass kube-vip direkt mit dem Kubernetes-API-Server kommunizieren muss, um z. B.:

  • sich an der Leader-Election als „Leader“ zu registrieren,
  • Konfigurationsinformationen aus dem Cluster zu lesen/schreiben,
  • eigene Ressourcen zu erstellen oder zu aktualisieren.

Damit kube-vip diese Operationen durchführen kann, braucht es Zugriffsrechte.

In einem sehr frühen Stadium des Clusterstarts – noch bevor RBAC vollständig eingerichtet ist – oder wenn kube-vip als Static Pod im Control Plane läuft, ist es oft nötig, dass kube-vip nicht durch RBAC eingeschränkt wird. Hier kommt die super-admin.conf ins Spiel.

Vorteile von super-admin.conf für kube-vip

  • RBAC-unabhängiger Zugriff: kube-vip kann den API-Server erreichen, auch wenn noch keine passenden RBAC-Rollen oder ClusterRoles eingerichtet sind.
  • Zuverlässiger Clusterstart: Wenn kube-vip an der IP-Adressvergabe oder Load-Balancer-Konfiguration beteiligt ist, muss es sicherstellen, dass es jederzeit auf den API-Server zugreifen kann.
  • Leader-Election funktioniert reibungslos, weil kube-vip Einträge in ConfigMaps oder Leases aktualisieren muss.

Beispiel im Manifest

In einem Manifest eines Static Pods unter /etc/kubernetes/manifests/kube-vip.yaml sieht man z. B. folgenden Eintrag:

volumeMounts:
  - mountPath: /etc/kubernetes/super-admin.conf
    name: kubeconfig
    readOnly: true
...
volumes:
  - name: kubeconfig
    hostPath:
      path: /etc/kubernetes/super-admin.conf
      type: File
Und im Start-Command von kube-vip:

args:
  - "manager"
  - "--kubeconfig"
  - "/etc/kubernetes/super-admin.conf"

Fazit

super-admin.conf wird von kube-vip insbesondere dann verwendet, wenn es als Static Pod läuft und immer vollen Zugriff auf den Kubernetes-API-Server braucht – unabhängig vom RBAC. Sie garantiert, dass kube-vip auch in frühen Phasen des Clusterstarts oder bei Problemen mit RBAC weiterhin korrekt funktionieren kann.

it-wiki/kubernetes/super-admin-conf.txt · Zuletzt geändert: 2025/05/01 06:14 von marko