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.

Upgrade und Rollback von Kubernetes

Nach einem Upgrade auf die neueste Version von Rancher können nachgelagerte Kubernetes-Cluster auf die neueste unterstützte Version von Kubernetes aktualisiert werden.

Rancher ruft RKE (Rancher Kubernetes Engine) als Bibliothek auf, wenn RKE-Cluster bereitgestellt und bearbeitet werden. Für weitere Informationen zur Konfiguration der Upgrade-Strategie für RKE-Cluster verweisen Sie auf die RKE-Dokumentation.

Getestete Kubernetes-Versionen

Bevor eine neue Version von Rancher veröffentlicht wird, wird sie mit den neuesten Minor-Versionen von Kubernetes getestet, um die Kompatibilität sicherzustellen. Für Details zu den getesteten Kubernetes-Versionen mit jeder Rancher-Version verweisen Sie auf die Support-Wartungsbedingungen.

Wie Upgrades funktionieren

RKE v1.1.0 hat die Art und Weise geändert, wie Cluster aktualisiert werden.

In diesem Abschnitt der RKE-Dokumentation, erfahren Sie, was passiert, wenn Sie Ihren RKE-Kubernetes-Cluster bearbeiten oder aktualisieren.

Beim Upgrade der Kubernetes-Version eines Clusters empfehlen wir, dass Sie:

  1. Einen Snapshot erstellen.

  2. Initiieren Sie ein Kubernetes-Upgrade.

  3. Wenn das Upgrade fehlschlägt, setzen Sie den Cluster auf die Kubernetes-Version vor dem Upgrade zurück. Dies wird erreicht, indem Sie die Option Wiederherstellen der etcd- und Kubernetes-Version auswählen. Dies bringt Ihren Cluster auf die Kubernetes-Version vor dem Upgrade zurück, bevor der etcd-Snapshot wiederhergestellt wird.

Der Wiederherstellungsprozess funktioniert auch bei einem Cluster, der sich nicht in einem gesunden oder aktiven Zustand befindet.

Kubernetes-Version aktualisieren

Voraussetzungen:
  1. Klicken Sie in der oberen linken Ecke auf ☰ > Clusterverwaltung.

  2. Gehen Sie auf der Cluster-Seite zu dem Cluster, den Sie upgraden möchten, und klicken Sie auf ⋮ > Konfiguration bearbeiten.

  3. Wählen Sie im Dropdown-Menü Kubernetes-Version die Kubernetes-Version aus, die Sie für den Cluster verwenden möchten.

  4. Klicken Sie auf Speichern.

Ergebnis: Kubernetes beginnt mit der Aktualisierung des Clusters.

Rollback

Ein Cluster kann auf ein Backup wiederhergestellt werden, in dem die vorherige Kubernetes-Version verwendet wurde. Für weitere Informationen siehe die folgenden Abschnitte:

Konfigurieren der Upgrade-Strategie

Seit RKE v1.1.0 sind zusätzliche Upgrade-Optionen verfügbar, um Ihnen eine granularere Kontrolle über den Upgrade-Prozess zu geben. Diese Optionen können verwendet werden, um die Verfügbarkeit Ihrer Anwendungen während eines Cluster-Upgrades aufrechtzuerhalten, wenn bestimmte Bedingungen und Anforderungen erfüllt sind.

Die Upgrade-Strategie kann in der Rancher-Benutzeroberfläche konfiguriert oder durch Bearbeiten der cluster.yml angepasst werden. Erweiterte Optionen sind verfügbar, indem die cluster.yml bearbeitet wird.

Konfiguration der maximalen Anzahl nicht verfügbarer Arbeitsknoten in der Rancher-Benutzeroberfläche

In der Rancher-Benutzeroberfläche kann die maximale Anzahl nicht verfügbarer Arbeitsknoten konfiguriert werden. Während eines Cluster-Upgrades werden die Arbeitsknoten in Chargen dieser Größe aktualisiert.

Standardmäßig wird die maximale Anzahl nicht verfügbarer Arbeitsknoten als 10 Prozent aller Arbeitsknoten definiert. Diese Zahl kann als Prozentsatz oder als ganze Zahl konfiguriert werden. Wenn sie als Prozentsatz definiert ist, wird die Batch-Größe auf den nächstgelegenen Knoten abgerundet, mit einem Minimum von einem Knoten.

Um die Standardanzahl oder den Prozentsatz der Arbeitsknoten zu ändern,

  1. Klicken Sie in der oberen linken Ecke auf ☰ > Clusterverwaltung.

  2. Gehen Sie auf der Cluster-Seite zu dem Cluster, den Sie upgraden möchten, und klicken Sie auf ⋮ > Konfiguration bearbeiten.

  3. Geben Sie im Upgrade-Strategie Tab die Arbeitskonkurrenz als feste Zahl oder Prozentsatz ein. Um diese Zahl zu erhalten, können Sie die Anzahl der Knoten in Ihrem Cluster nehmen und die maximal nicht verfügbaren Knoten abziehen.

  4. Klicken Sie auf Speichern.

Ergebnis: Der Cluster wird aktualisiert, um die neue Upgrade-Strategie zu verwenden.

Aktivierung des Entleerens von Knoten während Upgrades über die Rancher-Benutzeroberfläche

Standardmäßig cordons RKE jeden Knoten, bevor er aktualisiert wird. Entleeren ist während Upgrades standardmäßig deaktiviert. Wenn das Entleeren in der Clusterkonfiguration aktiviert ist, wird RKE den Knoten sowohl cordonieren als auch entleeren, bevor er aktualisiert wird.

Um das Entleeren jedes Knotens während eines Cluster-Upgrades zu aktivieren,

  1. Klicken Sie in der oberen linken Ecke auf ☰ > Clusterverwaltung.

  2. Gehen Sie auf der Cluster Seite zu dem Cluster, für den Sie das Entleeren der Knoten aktivieren möchten, und klicken Sie auf ⋮ > Konfiguration bearbeiten.

  3. Klicken Sie auf ⋮ > Bearbeiten.

  4. Gehen Sie im Upgrade-Strategie Tab zum Feld Knoten entleeren und klicken Sie auf Ja. Das Entleeren von Knoten wird separat für Steuerungsebene und Arbeitsknoten konfiguriert.

  5. Konfigurieren Sie die Optionen, wie Pods gelöscht werden. Für weitere Informationen zu jeder Option, siehe diesen Abschnitt.

  6. Optional können Sie einen Kulanzzeitraum konfigurieren. Der Kulanzzeitraum ist die Zeitüberschreitung, die jedem Pod gegeben wird, um Dinge aufzuräumen, damit er die Möglichkeit hat, ordentlich zu beenden. Pods müssen möglicherweise ausstehende Anfragen abschließen, Transaktionen zurückrollen oder den Zustand in einem externen Speicher speichern. Wenn dieser Wert negativ ist, wird der im Pod angegebene Standardwert verwendet.

  7. Optional können Sie eine Zeitüberschreitung konfigurieren, die die Zeitspanne angibt, die das Entleeren warten soll, bevor es aufgibt.

  8. Klicken Sie auf Speichern.

Ergebnis: Der Cluster wird aktualisiert, um die neue Upgrade-Strategie zu verwenden.

  • Es gibt ein bekanntes Problem, bei dem die Rancher-Benutzeroberfläche den Zustand von etcd und controlplane nicht als entleert anzeigt, obwohl sie entleert werden.

  • Während eines Upgrades können Knoten entleert werden, auch wenn keine für den Benutzer sichtbaren YAML-Änderungen vorhanden sind. Dies kann auftreten, wenn nicht-dynamische Konfigurationsdateien aktualisiert werden oder wenn ein neues system-agent-installer`Bild eingeführt wird. In solchen Fällen generiert Rancher einen neuen Upgrade-Plan, was zu einem neuen Plan-Hash führt. Wenn `Upgrade Strategy auf Drain nodes gesetzt ist, kann diese Planänderung das Entleeren des Knotens auslösen.

Verfügbarkeit für Anwendungen während Upgrades aufrechterhalten

In diesem Abschnitt der RKE-Dokumentation, erfahren Sie die Anforderungen, um Ausfallzeiten für Ihre Anwendungen beim Upgrade des Clusters zu vermeiden.

Konfigurieren der Upgrade-Strategie in der cluster.yml

Erweiterte Optionen zur Konfiguration der Upgrade-Strategie sind verfügbar, indem Sie die cluster.yml bearbeiten.

Für Details siehe Konfigurieren der Upgrade-Strategie in der RKE-Dokumentation. Der Abschnitt enthält auch ein Beispiel cluster.yml zur Konfiguration der Upgrade-Strategie.

Fehlerbehebung

Wenn ein Knoten nach einem Upgrade nicht hochfährt, schlägt der rke up Befehl fehl.

Kein Upgrade wird fortgesetzt, wenn die Anzahl der nicht verfügbaren Knoten die konfigurierte Höchstzahl überschreitet.

Wenn ein Upgrade stoppt, müssen Sie möglicherweise einen nicht verfügbaren Knoten reparieren oder ihn aus dem Cluster entfernen, bevor das Upgrade fortgesetzt werden kann.

Ein fehlgeschlagener Knoten könnte sich in vielen verschiedenen Zuständen befinden:

  • Ausgeschaltet

  • Nicht verfügbar

  • Der Benutzer entleert einen Knoten, während das Upgrade im Gange ist, sodass keine Kubelets auf dem Knoten vorhanden sind.

  • Das Upgrade selbst ist fehlgeschlagen.

Wenn die maximale Anzahl nicht verfügbarer Knoten während eines Upgrades erreicht wird, werden Rancher-Benutzercluster im Aktualisierungszustand feststecken und können mit dem Upgrade anderer Steuerungsknoten nicht fortfahren. Es wird weiterhin die Menge der nicht verfügbaren Knoten bewerten, falls einer der Knoten verfügbar wird. Wenn der Knoten nicht repariert werden kann, müssen Sie den Knoten entfernen, um das Upgrade fortzusetzen.