Robuste Kubelet-Konfiguration
|
Diese Seite behandelt Softwarequellen von Drittanbietern, die nicht offiziell mit dem Fedora-Projekt verbunden sind oder von diesem unterstützt werden. Die Nutzung erfolgt auf eigene Verantwortung. Fedora empfiehlt die Verwendung freier und quelloffener Software und rät von patentgeschützter Software ab. |
kubelet-Übersicht
Das ist der Kubernetes-Agent, der auf jedem Knoten eines Clusters ausgeführt wird. Das kubelet wird mithilfe des Kubernetes-RPMs installiert (z. B. ist kubelet ein versioniertes RPM für Kubernetes v1.30). Unter Fedora läuft das kubernetes1.30 als systemd-Dienst. In frühen Implementierungen wurde das kubelet über Flags konfiguriert, die in einer systemd-Unit-Datei festgelegt und als Befehlszeilenparameter an das kubelet übergeben wurden.kubelet
In neueren Versionen von kubelet sind diese Flags veraltet und werden zugunsten einer Konfigurationsdatei ersetzt, die entweder JSON oder YAML für die Konfigurationssyntax verwendet.
Die älteren RPM-Pakete ohne Versionsnummer verwenden standardmäßig Flags zur Konfiguration des . RPM-Pakete mit Versionsnummer nutzen die Methode über eine Konfigurationsdatei.kubelet
Sowohl bei versionierten als auch bei nicht versionierten RPM-Paketen können sämtliche Dateien – einschließlich derer, die sich auf systemd beziehen – während Versionsaktualisierungen (z. B. von Kubernetes 1.29 auf 1.30, also Nebenversion-Aktualisierungen) gelöscht werden. Wurden diese Dateien vom Benutzer verändert, besteht die Gefahr, dass nützliche oder wichtige Änderungen verloren gehen. Systemd bietet Optionen, die dazu beitragen, den Verlust knotenspezifischer Konfigurationen zu verhindern.
Systemd-Konfigurationsempfehlungen
Die Flags für das auf einem Node laufende werden in einer systemd-Unit-Datei festgelegt, wobei die jeweilige Datei davon abhängt, welche RPM-Pakete installiert sind.kubelet
Das Kubernetes-RPM (z. B. kubernetes1.30 für Version 1.30) installiert die Standard-systemd-Datei für unter:kubelet
/usr/lib/systemd/system/kubelet.service
Das kubernetes-kubeadm-RPM installiert eine -Unit-Datei, die die Standarddatei überschreibt, unter:kubelet
/usr/lib/systemd/system/kubelet.service.d/10-kubeadm.conf
Wir raten dringend davon ab, eine der beiden Dateien zu ändern, da jegliche Änderungen bei einer Aktualisierung verloren gehen könnten.
Erstellen Sie, wie vom Kubernetes-Team hier dokumentiert, das folgende Verzeichnis für benutzerdefinierte Systemd-Overrides für das auf Systemebene:kubelet
$ sudo mkdir -p /etc/systemd/system/kubelet.service.d/
Erstellen Sie anschließend eine Unit-Datei (die Dateiendung ist erforderlich) und kopieren Sie diese in das oben genannte Verzeichnis. Die Einstellungen in dieser Datei haben Vorrang vor den Einstellungen in einer oder beiden der standardmäßigen systemd-Dateien..conf
Diese Datei wird von der Paketverwaltung des Systems nicht erfasst und bleibt bei Kubernetes-Versionsaktualisierungen unverändert. Stellen Sie sicher, dass eine Software-Versionsverwaltung und/oder ein Backup-Konzept vorhanden sind, um Datenverluste bei einer Fedora-Systemaktualisierung oder einem Systemabsturz zu vermeiden.
Empfehlungen für Konfigurationsdateien
Alle versionierten Kubernetes-RPMs verwenden standardmäßig eine -Konfigurationsdatei. Falls diese Datei nicht existiert, wird sie während der Cluster-Instanziierung erstellt. Der Standardspeicherort für die Konfigurationsdatei ist:kubelet
# default configuration file
$ /var/lib/kubelet/config.yaml
Diese Datei wird nicht von RPM verwaltet, so dass sie bei Kubernetes-Aktualisierungen erhalten bleibt.
Drop-in-Konfigurationsdatei
Kubernetes 1.30 und neuere Versionen verfügen über eine Option für Drop-in-Konfigurationsdateien, die standardmäßig nicht aktiviert ist. Definieren Sie in einer systemd-Datei einen Pfad mithilfe der Option :--config-dir
# define configdir
--config-dir=/etc/kubernetes/kubelet.conf.d
In der Online-Dokumentation finden Sie aktuelle Informationen, einschließlich einer Option zur Aktivierung dieser Funktion für v1.28 oder v1.29.
Reihenfolge der Zusammenführung von Konfigurationsdateien
Beim Start des werden die Konfigurationseinstellungen in der folgenden Reihenfolge zusammengeführt (Dokumentation zur Zusammenführungsreihenfolge):kubelet
-
Über die Befehlszeile angegebene Feature-Gates (niedrigste Priorität).
-
Die Kubelet-Konfiguration.
-
Drop-in-Konfigurationsdateien, entsprechend der Sortierreihenfolge.
-
Befehlszeilenargumente unter Ausschluss von Feature-Gates (höchste Priorität).
Want to help? Learn how to contribute to Fedora Docs ›