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:

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 kubectl, um Kubernetes-Metriken (wie den Kubernetes-Knotenstatus) für selbstverwaltete Knoten anzuzeigen, und zeigen Sie auf der Seite "Konsolenmetriken" des Compute-Service Compute-Metriken (wie Speicherauslastung) für Compute-Instanzen an, die selbstverwaltete Knoten hosten.

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.