Mit selbstverwalteten Knoten arbeiten
Erfahren Sie, wie Sie selbstverwaltete Knoten mit Kubernetes Engine einrichten und verwenden.
Ein selbstverwalteter Knoten ist ein Worker-Knoten, der auf einer Compute-Instanz (oder einem Instanzpool) gehostet wird, die Sie selbst im Compute-Service erstellt haben, und nicht auf einer Compute-Instanz, die Kubernetes Engine für Sie erstellt hat. Selbstverwaltete Knoten werden oft als Bring Your Own Nodes (BYON) bezeichnet. Im Gegensatz zu verwalteten Knoten und virtuellen Knoten (die in verwaltete Knotenpools bzw. virtuelle Knotenpools gruppiert sind), werden selbstverwaltete Knoten nicht in Knotenpools gruppiert.
Mit dem Compute-Service erstellen Sie die Compute-Instanzen, auf denen selbstverwaltete Knoten gehostet werden sollen. Mit dem Compute-Service können Sie Compute-Instanzen für spezialisierte Workloads konfigurieren, einschließlich Compute-Ausprägungen und Imagekombinationen, die für verwaltete Knoten und virtuelle Knoten nicht verfügbar sind. Beispiel: Instanzen mit Ausprägungen, die für hardwarebeschleunigte Workloads (wie GPU-Ausprägungen) entwickelt wurden, oder Ausprägungen, die für High Performance Computing-(HPC-)Workloads entwickelt wurden und Hochfrequenzprozessorkerne erfordern (wie HPC und optimierte Ausprägungen). Sie können viele solcher Instanzen mit einem Netzwerk mit hoher Bandbreite und extrem geringer Latenz verbinden, um ein Oracle Cloud Infrastructure-Clusternetzwerk zu bilden (siehe RDMA-Clusternetzwerke verwenden).
Wenn Sie die Administration vereinfachen und mehrere selbstverwaltete Knoten als Gruppe verwalten möchten, erstellen Sie mit dem Compute-Service einen Compute-Instanzpool, um einen oder mehrere selbstverwaltete Knoten zu hosten.
Wenn Sie eine Compute-Instanz (oder einen Instanzpool) zum Hosten eines selbstverwalteten Knotens erstellen, geben Sie das Kubernetes-Cluster an, dem die Instanz hinzugefügt werden soll. Sie können selbstverwaltete Knoten nur erweiterten Clustern hinzufügen.
Sowohl das Cluster, dem Sie einen selbstverwalteten Knoten hinzufügen, als auch das Image, das Sie für die Compute-Instanz verwenden, die den selbstverwalteten Knoten hostet, müssen bestimmte Anforderungen erfüllen. Siehe Clusteranforderungen bzw. Imageanforderungen.
Auf hoher Ebene müssen Sie wie folgt eine Compute-Instanz erstellen, um einen selbstverwalteten Knoten zu hosten und zu einem vorhandenen Cluster hinzuzufügen:
- Erstellen Sie eine dynamische Gruppe (mit einer Regel, die die Compute-Instanz enthält, die dem Cluster hinzugefügt werden soll) und eine Policy für die dynamische Gruppe (mit einer Policy-Anweisung, mit der Mitglieder der dynamischen Gruppe dem Cluster beitreten können). Siehe Dynamische Gruppe und Policy für selbstverwaltete Knoten erstellen.
- Erstellen Sie ein cloud-init-Skript, das den privaten Kubernetes-API-Endpunkt des Clusters und das base64-codierte CA-Zertifikat enthält. Siehe Cloud-init-Skripte für selbstverwaltete Knoten erstellen.
- Erstellen Sie die neue Compute-Instanz basierend auf einem OKE-Image, und geben Sie das cloud-init-Skript an. Siehe Selbstverwaltete Knoten erstellen.
Wenn die Compute-Instanz erstellt wird, wird sie dem Cluster als selbstverwalteter Knoten hinzugefügt.
Beachten Sie Folgendes:
- Wenn Sie das Cluster löschen, dem Sie selbstverwaltete Knoten hinzugefügt haben, werden die Compute-Instanzen, auf denen die selbstverwalteten Knoten gehostet werden, nicht beendet. Container, die derzeit auf den Knoten ausgeführt werden, werden möglicherweise weiter ausgeführt, sofern sie nicht von der Kubernetes-Control Plane abhängig sind. Wenn Sie ein Cluster löschen, zu dem Sie selbstverwaltete Knoten hinzugefügt haben, müssen Sie die Compute-Instanzen beenden, die diese selbstverwalteten Knoten hosten.
- Mit dem Compute-Service können Sie nicht nur einzelne Compute-Instanzen zum Hosten einzelner selbstverwalteter Knoten erstellen, sondern auch mit dem Compute-Service einen Compute-Instanzpool zum Hosten von selbstverwalteten Knoten erstellen. Zuerst definieren Sie eine Instanzkonfiguration, die den privaten Kubernetes-API-Endpunkt des Clusters und das base64-codierte CA-Zertifikat in einem cloud-init-Skript enthält (als ob Sie eine einzelne Compute-Instanz erstellen würden). Anschließend erstellen Sie mit der Instanzkonfiguration eine oder mehrere Instanzen in einem Instanzpool, von denen jede einen selbstverwalteten Knoten hosten kann. Sie können die Instanzkonfiguration auch als Vorlage zum Starten einzelner Instanzen verwenden, die keinem Instanzpool gehören. Weitere Informationen finden Sie unter Instanzkonfigurationen erstellen und Instanzpools erstellen.
- Um die auf einem selbstverwalteten Knoten ausgeführte Kubernetes-Version upzugraden, müssen Sie den vorhandenen selbstverwalteten Knoten durch einen neuen selbstverwalteten Knoten ersetzen. Siehe Upgrade von selbstverwalteten Knoten auf eine neuere Kubernetes-Version durch Ersetzen des vorhandenen selbstverwalteten Knotens.
- Standardmäßig verwenden selbstverwaltete Knoten das Flannel-CNI-Plug-in für Podnetworking. Wenn Sie stattdessen das CNI-Plug-in für OCI-VCN-native Podnetworking für Podnetworking verwenden möchten, geben Sie die erforderlichen Parameter mit der CLI oder API an (siehe Selbstverwaltete Knoten erstellen). Um das CNI-Plug-in für OCI-VCN-native Podnetworking für Podnetworking zu verwenden (und nicht das CNI-Plug-in für Flannel), müssen die Control-Plane-Knoten des Clusters Kubernetes-Version 1.27.10 (oder höher) ausführen. Weitere Informationen zum CNI-Plug-in für OCI-VCN-native Podnetworking und zum CNI-Plug-in für Flannel finden Sie unter Podnetworking.
Selbstverwaltete Knoten mit Clusternetzwerken verwenden
Wenn Sie mit dem Compute-Service einen Compute-Instanzpool erstellen, um einen oder mehrere selbstverwaltete Knoten zu hosten, können Sie den Instanzpool als Oracle Cloud Infrastructure-Clusternetzwerk verwalten (siehe Clusternetzwerke mit Instanzpools). Compute-Instanzen innerhalb des Clusternetzwerks sind über ein RDMA-(Remote Direct Memory Access-)Netzwerk mit hoher Bandbreite und extrem geringer Latenz verbunden. Weitere Informationen zur Verwendung eines RDMA-Netzwerks mit Kubernetes Engine finden Sie unter RDMA-GPU-Workloads (Remote Direct Memory Access) auf OKE ausführen auf Github.
Wichtige Features und Funktionen, die bei Verwendung selbstverwalteter Knoten nicht unterstützt werden
Einige Features und Funktionen sind bei der Verwendung selbstverwalteter Knoten nicht verfügbar oder noch nicht verfügbar.
Da selbst verwaltete Knoten nicht in Knotenpools gruppiert sind, gelten keine Funktionen für Knotenpools.
Feature nicht unterstützt | Zusätzliche Informationen |
---|---|
Selbstverwaltete Knotenmetriken auf der Seite "Kubernetes-Engine-Metriken" in der Konsole | Kubernetes-Metriken für selbstverwaltete Knoten werden auf der Seite "Metriken" des Kubernetes Engine-Service in der Konsole nicht angezeigt. Verwenden Sie |
Selbstverwaltete Knoten in der Konsole oder über die OCI-OKE-API anzeigen | Selbstverwaltete Knoten sind auf den Konsolenseiten des Kubernetes Engine-Service oder über die OCI-OKE-API nicht sichtbar. Mit der Kubernetes-API können Sie selbstverwaltete Knoten mit dem Befehl kubectl get nodes auflisten. |
Wartungsvorgänge auf selbstverwalteten Knoten mit der Konsole ausführen | Wartungsvorgänge (wie Neustart, Boot-Volume-Ersatz, Beendigung und Ersatz) können nicht auf selbstverwalteten Knoten auf den Konsolenseiten des Kubernetes Engine-Service auf dieselbe Weise wie auf verwalteten Knoten ausgeführt werden. Beachten Sie, dass Kubernetes-Verfügbarkeitskonfigurationen nicht eingehalten werden, wenn Sie Wartungsvorgänge mit den Konsolenseiten des Compute-Service ausführen. |
Andere Images als OKE-Images OL7, OL8 und Ubuntu verwenden | Noch nicht verfügbar. |
Kubernetes verzerrt die Policy-Durchsetzung | Die Kubernetes-Schief-Policy, dass die Control-Plane-Knoten eines Clusters nicht mehr als zwei Nebenversionen (oder drei Nebenversionen ab Kubernetes-Version 1.28) vor den Worker-Knoten sein dürfen, wird nicht durchgesetzt. |
Autoscaler für Kubernetes-Cluster | Noch nicht verfügbar. |
Knotenneustart beim Upgrade oder Aktualisieren selbstverwalteter Knoten | Noch nicht verfügbar. |