Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Harvester Node Driver

Der Harvester Node Driver wird, ähnlich wie der Docker Machine-Treiber, verwendet, um VMs im SUSE Virtualization-Cluster bereitzustellen, und Rancher nutzt ihn, um Kubernetes-Cluster zu starten und zu verwalten.

Ein Vorteil der Installation von Kubernetes auf Knotenpools, die vom Knoten-Treiber gehostet werden, besteht darin, dass Rancher automatisch einen weiteren Knoten erstellen kann, um dem Cluster beizutreten, falls ein Knoten die Verbindung verliert, sodass die Anzahl des Knotenpools wie erwartet erhalten bleibt. Darüber hinaus ist der Harvester Node Driver standardmäßig in den Harvester Cloud-Anbieter integriert und bietet integrierte Unterstützung für Lastenausgleich sowie Speicher-Passthrough vom Bare-Metal-Cluster zu den Gast-Kubernetes-Clustern, um native Speicherleistung zu erzielen.

In diesem Abschnitt lernen Sie, wie Sie Rancher konfigurieren, um den Harvester Node Driver zu verwenden, um Kubernetes-Cluster zu starten und zu verwalten.

Der Harvester Node Driver unterstützt nur Cloud-Images. Das liegt daran, dass ISO-Images normalerweise zusätzliche Konfigurationen erfordern, die eine saubere Bereitstellung (ohne Benutzerintervention) stören, und sie werden in Cloud-Umgebungen normalerweise nicht verwendet.

Harvester Node Driver

Ab Rancher v2.6.3 ist der Harvester Node Driver standardmäßig aktiviert. Sie können zur Seite Cluster Management > Drivers > Node Drivers gehen, um den Status des Harvester Node Drivers zu überprüfen.

edit-node-driver

Wenn der Harvester Node Driver aktiviert ist, können Sie Kubernetes-Cluster auf dem SUSE Virtualization-Cluster erstellen und diese von Rancher aus verwalten.

harvester-node-driver
  • Verweisen Sie auf die Rancher Downstream-Cluster-Unterstützungsmatrix für die unterstützten RKE2-Versionen und Gastbetriebssystemversionen.

  • Änderungen an der Konfiguration des Harvester Node Drivers werden nicht gespeichert. Alle angewendeten Änderungen werden beim Neustart des Rancher-Containers zurückgesetzt.

  • Beginnend mit Harvester Node Driver v0.6.3 wurde die automatische Injektion des qemu-guest-agent aus dem Backend entfernt. Wenn das von Ihnen verwendete Image das qemu-guest-agent-Paket nicht enthält, können Sie es dennoch über die userdata-Konfiguration installieren. Andernfalls wird der Cluster nicht erfolgreich bereitgestellt.

     #cloud-config
     package_update: true
     packages:
     - qemu-guest-agent
     runcmd:
     - - systemctl
       - enable
       - '--now'
       - qemu-guest-agent.service

Bekannte Probleme

Rancher verliert die Fähigkeit, Gastcluster zu verwalten oder zu skalieren, wenn die entsprechenden API-Token ablaufen.

Problem: #5827

Beschreibung: Rancher verwendet kubeconfigs mit eingebetteten Authentifizierungs-Token, um Gast-Kubernetes-Cluster auf SUSE Virtualization bereitzustellen. Wenn diese Tokens ablaufen, verliert Rancher die Fähigkeit, Verwaltungsoperationen für den entsprechenden, von Rancher verwalteten Gast-Kubernetes-Cluster durchzuführen. Dieses Problem betrifft nur Gast-Kubernetes-Cluster, die auf SUSE Virtualization laufen und Cloud-Anmeldeinformationen verwenden, die nach der Installation oder dem Upgrade auf Rancher v2.8.x erstellt wurden, was die kubeconfig-default-token-ttl-minutes-Einstellung sowie die auth-token-max-ttl-minutes-Einstellung auf 30 Tage bzw. 90 Tage reduzierte.

Status: Ein vorübergehender Workaround ist verfügbar.

Zuletzt aktualisiert: 2024-05-21

RKE2 Kubernetes-Cluster

K3s Kubernetes-Cluster

Topologie-Verbreitungsbeschränkungen

Innerhalb Ihres Gast-Kubernetes-Clusters können Sie Topologie-Verbreitungsbeschränkungen verwenden, um zu verwalten, wie Arbeitslasten über Knoten verteilt werden, wobei Faktoren wie Ausfallbereiche wie Regionen und Zonen berücksichtigt werden. Dies hilft, hohe Verfügbarkeit und effiziente Ressourcennutzung der SUSE Virtualization-Clusterressourcen zu erreichen.

Für RKE2-Versionen vor v1.25.x sind die minimal erforderlichen Versionen zur Unterstützung der Topologie-Label-Synchronisierungsfunktion wie folgt:

Minimale erforderliche RKE2-Version

>= v1.24.3+rke2r1

>= v1.23.9+rke2r1

>= v1.22.12+rke2r1

Darüber hinaus sollte für die benutzerdefinierte Installation die Version des Harvester Cloud Providers >= v0.1.4 sein.

Synchronisieren Sie die Topologie-Labels auf dem Gast-Cluster-Knoten.

Während der Cluster-Installation wird der Harvester Node Driver automatisch helfen, die Topologie-Labels von VM-Knoten zu Gast-Cluster-Knoten zu synchronisieren. Derzeit werden nur die Topologie-Labels region und zone unterstützt.

  1. Konfigurieren Sie die Topologie-Labels auf den SUSE Virtualization Knoten auf der Seite Hosts > Edit Config > Labels. Fügen Sie beispielsweise die Topologie-Labels wie folgt hinzu:

    topology.kubernetes.io/region: us-east-1
    topology.kubernetes.io/zone: us-east-1a
    node add affinity labels
  2. Erstellen Sie einen Downstream-RKE2-Cluster mit dem Harvester Node Driver und aktiviertem Harvester Cloud Provider. Wir empfehlen, die Node-Affinitätsregeln hinzuzufügen, um zu verhindern, dass Knoten nach dem Wiederaufbau von VMs in andere Zonen abdriften.

    create rke2 harvester cluster 3
  3. Nachdem der Cluster bereit ist, bestätigen Sie, dass diese Topologie-Labels erfolgreich auf die Knoten im Gast-Kubernetes-Cluster synchronisiert wurden.

  4. Jetzt können Sie Workloads in Ihrem Gast-Kubernetes-Cluster bereitstellen, und Sie sollten in der Lage sein, diese mit den Topologie-Verbreitungsbeschränkungen zu verwalten.

Für Harvester Cloud Provider >= v0.2.0 werden die Topologie-Labels auf dem SUSE Virtualization Knoten automatisch resynchronisiert, wenn eine VM (entsprechend dem Gastknoten) migriert oder aktualisiert wird.

Für Harvester Cloud Provider < v0.2.0 erfolgt die Labelsynchronisation nur während der Initialisierung der Gastknoten. Um zu verhindern, dass Knoten in verschiedene Regionen oder Zonen abdriften, empfehlen wir, während der Clusterbereitstellung Node-Affinitätsregeln hinzuzufügen. Dies ermöglicht es Ihnen, VMs in derselben Zone zu planen, selbst nach dem Wiederaufbau.