Ressourcen für Kubelet- und Betriebssystem-Daemons auf Oracle Cloud Infrastructure Kubernetes Engine-Knoten reservieren

Einführung

Bei der Ausführung von Kubernetes-Workloads auf Oracle Cloud Infrastructure Kubernetes Engine (OKE) muss unbedingt sichergestellt werden, dass Worker-Knoten Ressourcen für Kubernetes-Kontrollkomponenten und Betriebssystem-(BS-)Daemons reserviert haben. Die richtige Reservierung verhindert Ressourcenkonflikte, reduziert den Speicherdruck und erhöht die Clusterstabilität. Dies ist besonders wichtig in Multi-Tenant-Umgebungen, Workloads mit hoher Dichte oder bei der Behebung von Knotendruckproblemen. In diesem Tutorial erfahren Sie, wie Sie diese Reservierungen mit einem benutzerdefinierten Skript cloud-init konfigurieren, das bei der Erstellung des Knotenpools angewendet wird. Durch die Nutzung von cloud-init können Sie diese Konfigurationen mit minimalem Aufwand über Ihre Clusterknoten hinweg standardisieren.

Kubelet-Ressourcenkonfiguration

Kubelet, der primäre Knoten-Agent in Kubernetes, unterstützt die Ressourcenverwaltung durch Konfigurations-Flags oder -Dateien. Sie können Folgendes definieren:

Ziele

Voraussetzungen

Schritt 1: Schreiben Sie das Skript cloud-init

Das folgende cloud-init-Skript erstellt eine Kubelet-Konfigurationsdatei, die CPU-, Speicher- und ephemeren Speicher reserviert und Räumungsschwellenwerte festlegt.

#!/bin/bash
curl --fail -H "Authorization: Bearer Oracle" -L0 http://169.254.169.254/opc/v2/instance/metadata/oke_init_script | base64 --decode >/var/run/oke-init.sh
bash /var/run/oke-init.sh --kubelet-extra-args "--kube-reserved=cpu=500m,memory=1Gi --system-reserved=cpu=100m,memory=100Mi"

Schritt 2: Erstellen eines Knotenpools mit dem Skript cloud-init

  1. Navigieren Sie zur OCI-Konsole, und navigieren Sie zu Ihrem OKE-Cluster.

  2. Wählen Sie Knotenpools aus, und klicken Sie auf Knotenpool hinzufügen, um einen neuen Pool zu erstellen, oder klicken Sie auf Bearbeiten, um einen vorhandenen Knotenpool zu ändern.

  3. Legen Sie den Knotenpool mit Ihren Voreinstellungen für Name, Compartment, Knotenplatzierung, Ausprägung und Networking fest.

  4. Klicken Sie unter Erweiterte Optionen anzeigen auf Cloud-Init-Skript einfügen, und fügen Sie Ihr benutzerdefiniertes Skript ein.

  5. Vervollständigen Sie die restlichen Knotenpooleinstellungen, und klicken Sie auf Hinzufügen.

Knotenpool hinzufügen

Nachdem die Knoten bereitgestellt wurden, wird das Skript beim Booten ausgeführt und wendet die Ressourcenbeschränkungen automatisch an.

Hinweis: Wenn Sie das Setup mit Terraform automatisieren, können Sie das Skript im Block node_config_details.cloud_init_script übergeben, wenn Sie die Knotenpoolressource erstellen.

Bestätigungen

Weitere Lernressourcen

Sehen Sie sich weitere Übungen zu docs.oracle.com/learn an, oder greifen Sie auf weitere kostenlose Lerninhalte im Oracle Learning YouTube-Kanal zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um ein Oracle Learning Explorer zu werden.

Die Produktdokumentation finden Sie im Oracle Help Center.