View a markdown version of this page

Rollback des Clusters auf vorherige Kubernetes-Version - Amazon EKS

Unterstützung für die Verbesserung dieser Seite beitragen

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Rollback des Clusters auf vorherige Kubernetes-Version

Mit dem Amazon EKS-Versions-Rollback können Sie die Kubernetes-Steuerebene Ihres Clusters auf die vorherige Nebenversion zurücksetzen, nachdem Sie ein direktes Upgrade durchgeführt haben. Wenn nach dem Upgrade Probleme auftreten, wie z. B. Anwendungsinkompatibilitäten, veraltete API-Nutzung oder unerwartetes Verhalten, können Sie einen Rollback durchführen, um Ihren Cluster auf einen zweifelsfrei funktionierenden Zustand zurückzusetzen.

Während eines Rollbacks setzt Amazon EKS den Kubernetes-API-Server und die Komponenten der Steuerungsebene auf die vorherige Version zurück, wobei alle etcd-Daten, Kunden-Workloads und persistenten Volumes beibehalten werden.

Was wird zurückgesetzt

  • Kubernetes-API-Serverversion

  • Komponenten der Steuerungsebene und ihre Konfigurationen

  • Plattformversion (kehrt zur neuesten Plattformversion für die vorherige Kubernetes-Version zurück)

  • EKS-Workerknoten im automatischen Modus. Bei Clustern, auf denen der EKS-Auto-Modus ausgeführt wird, verwaltet EKS automatisch das Rollback der Workerknoten im automatischen Modus, bevor die Steuerungsebene zurückgesetzt wird. Weitere Informationen finden Sie unter Rollback EKS-Automodus-Cluster.

Was wird NICHT zurückgesetzt

  • etcd-Daten. Alle Clusterstatus, Ressourcen und Konfigurationen werden beibehalten.

  • Workloads der Kunden. Ihre Pods, Bereitstellungen und Dienste werden weiterhin ausgeführt.

  • EKS-Add-Ons. Add-on Versionen bleiben unverändert. Sie verwalten diese separat.

  • Persistente Volumen und Daten. Alle Kundendaten bleiben intakt.

  • Self-managed Knoten und Hybridknoten. Sie sind dafür verantwortlich, diese rückgängig zu machen.

  • Verwaltete Knotengruppen. Sie müssen diese mithilfe der UpdateNodegroupVersion API separat rückgängig machen.

Voraussetzungen

Bevor Sie einen Cluster rückgängig machen können, müssen alle der folgenden Bedingungen erfüllt sein:

Anforderung Details

Zeitfenster von 7 Tagen

Das Rollback muss innerhalb von 7 Tagen nach Abschluss des Upgrades eingeleitet werden. Nach 7 Tagen ist das Rollback nicht mehr verfügbar.

Der Cluster wurde aktualisiert

Der Cluster muss durch ein direktes Upgrade auf seine aktuelle Version aktualisiert worden sein. Cluster, die mit ihrer aktuellen Version erstellt wurden, können nicht rückgängig gemacht werden.

Nur eine Version

Ein Rollback ist nur für eine Nebenversion (N bis N-1) möglich. Wenn Sie ein Upgrade von 1.31 auf 1.32 und dann auf 1.33 durchgeführt haben, können Sie nur ein Rollback auf 1.32 durchführen, nicht auf 1.31.

Unterstützte Version

Ein Versions-Rollback ist für derzeit unterstützte EKS-Versionen verfügbar.

Erweiterte Support-Richtlinie

Um zu einer Version zurückzukehren, für die der erweiterte Support gilt, müssen Sie zunächst die Upgrade-Richtlinie des Clusters auf EXTENDED ändern.

Kein automatisches Upgrade am Ende des erweiterten Supports

Wenn Ihr Cluster am Ende des erweiterten Supports automatisch aktualisiert wurde, können Sie nicht zur vorherigen Version zurückkehren. Wenn Ihr Cluster am Ende des Standard-Supports automatisch aktualisiert wurde, können Sie ein Rollback durchführen, müssen jedoch zuerst die Upgrade-Richtlinie auf ändernEXTENDED.

Cluster-Status

Der Cluster muss im ACTIVE Status sein. Sie können kein Rollback initiieren, während ein anderes Update ausgeführt wird.

Kompatibilität der EKS-Funktionen

Wenn eine auf Ihrem Cluster aktivierte EKS-Funktion in der vorherigen Version nicht unterstützt wird, schlägt die Rollback-Anfrage fehl. Diese Prüfung kann nicht umgangen werden. --force

Zusätzlich zu den oben genannten Anforderungen machen bestimmte Bedingungen ein Rollback auch mit der Markierung unmöglich. --force Dazu gehören: Der Cluster wurde mit der aktuellen Version erstellt, seit dem Upgrade sind mehr als 7 Tage vergangen, der Cluster wurde bereits erneut auf eine neuere Version aktualisiert, oder an der aktuellen Versionsgrenze wurde eine abwärtsinkompatible EKS-Funktion aktiviert.

Zusammenfassung

Die allgemeine Zusammenfassung des Amazon EKS-Cluster-Rollback-Prozesses lautet wie folgt:

  1. Überprüfen Sie die Erkenntnisse zur Rollback-Bereitschaft, um Probleme zu identifizieren, die sich auf das Rollback auswirken könnten.

  2. Beheben Sie alle Blockierungsprobleme (ERROR Status Insights) oder verwenden Sie diese Methode, um --force Insight-Checks zu umgehen.

  3. Stellen Sie sicher, dass Ihre Anwendungen, benutzerdefinierten Controller und Tools von Drittanbietern mit der vorherigen Kubernetes-Version kompatibel sind.

  4. Wenn auf Ihren Worker-Knoten dieselbe Kubernetes-Version wie auf der Steuerungsebene ausgeführt wird, führen Sie zunächst ein Rollback der Worker-Knoten durch.

  5. Wenn Sie über Add-Ons verfügen, auf denen Versionen ausgeführt werden, die mit der vorherigen Kubernetes-Version nicht kompatibel sind, führen Sie ein Downgrade auf eine kompatible Version durch.

  6. Initiieren Sie das Rollback der Steuerungsebene.

  7. Überwachen Sie den Fortschritt des Rollbacks.

Wichtig

Bei Clustern, auf denen der EKS-Automatikmodus ausgeführt wird, wird Schritt 4 automatisch ausgeführt. Wenn Sie das Rollback einleiten, führt EKS ein Rollback der Knoten im automatischen Modus vor der Steuerungsebene durch. Weitere Informationen finden Sie unter Rollback EKS-Automodus-Cluster.

Schritt 1: Überprüfen Sie die Erkenntnisse zur Rollback-Bereitschaft

Amazon EKS bewertet Ihren Cluster automatisch anhand einer Reihe von zeitpunktbezogenen Rollback-Bereitschaftsprüfungen und deckt alle Probleme anhand von Cluster-Erkenntnissen unter der Kategorie auf. ROLLBACK_READINESS Diese Erkenntnisse werden angezeigt, nachdem Sie ein Upgrade durchgeführt haben, und stehen während des 7-tägigen Rollback-Berechtigungsfensters weiterhin zur Verfügung.

Einblicke in die Rollback-Bereitschaft anzeigen

AWS Konsole:

  1. Öffnen Sie die Amazon-EKS-Konsole.

  2. Wählen Sie Ihren Cluster aus.

  3. Navigieren Sie zur Registerkarte Upgrade-Einblicke. Nach einem Upgrade werden hier Informationen zur Rollback-Bereitschaft angezeigt.

  4. Überprüfen Sie alle Erkenntnisse mit dem Status FEHLER oder WARNUNG.

AWS CLI:

aws eks list-insights \ --cluster-name my-cluster \ --region us-west-2 \ --filter '{"categories": ["ROLLBACK_READINESS"]}'

Um Einzelheiten zu einem bestimmten Einblick zu erhalten:

aws eks describe-insight \ --cluster-name my-cluster \ --region us-west-2 \ --id <insight-id>

Erfrischende Einblicke

EKS aktualisiert die Erkenntnisse alle 24 Stunden. Sie können manuell eine Aktualisierung auslösen, nachdem Sie Probleme behoben haben, indem Sie die Schaltfläche Aktualisieren in der Amazon EKS-Konsole verwenden oder die CLI verwenden:

aws eks start-insights-refresh \ --cluster-name my-cluster \ --region us-west-2
Anmerkung

EKS aktualisiert die Erkenntnisse automatisch, wenn Sie ein Rollback initiieren, um sicherzustellen, dass die Prüfungen anhand des aktuellen Clusterstatus ausgeführt werden.

Verhalten des Insight-Status

Status Bedeutung Auswirkung auf den Rollback

VORBEIGEHEN

Bei dieser Prüfung wurden keine Probleme festgestellt

Rollback erlaubt

WARNUNG

Potenzielles Problem erkannt, nicht blockiert

Rollback zulässig (nur als Empfehlung)

FEHLER

Ein Blockierungsproblem wurde festgestellt

Das Rollback wurde blockiert, bis es behoben ist, oder wird --force zur Umgehung verwendet

UNKNOWN

Der Status konnte nicht ermittelt werden

Rollback wird blockiert, bis es behoben ist, oder wird --force zur Umgehung verwendet

Insights mit dem Status FEHLER oder UNBEKANNT blockieren den Rollback. Erkenntnisse mit dem Status PASSING oder WARNING hindern Sie nicht daran, ein Rollback durchzuführen.

Prüfungen, ob ein Rollback bereit ist

Amazon EKS führt im Rahmen von Rollback Readiness Insights eine Reihe von Prüfungen durch. Bei diesen Prüfungen werden die Kompatibilität der API-Nutzung (einschließlich der Erkennung von Änderungen auf Feldebene), die Cluster-Integrität, die Kubelet-Versionsabweichung, die Kube-Proxy-Versionsabweichung und die Kompatibilität der Add-On-Versionen bewertet. Bei Clustern, auf denen der automatische EKS-Modus ausgeführt wird, werden durch zusätzliche Prüfungen die Budgets für Störungen, Anmerkungen und Konfigurationen bewertet, die nicht NodePool gestört werden müssen. PodDisruptionBudget

Verwenden des Flags --force

Wenn Rollback Readiness Insights den Status FEHLER anzeigt und Sie fortfahren möchten, ohne die Probleme zu lösen, können Sie das --force Flag verwenden, um alle Insight-Checks zu umgehen:

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --force \ --region us-west-2
Warnung

Beim Verwenden --force werden alle Insight-Checks (FEHLER, WARNUNG, UNKNOWN) umgangen und es wird direkt mit dem Rollback fortgefahren. EKS kann die Sicherheit des Rollbacks nicht garantieren, wenn Insight-Checks umgangen werden. Sie übernehmen die volle Verantwortung für alle auftretenden Probleme.

Die --force Markierung umgeht nur Insight-Checks. Es umgeht keine erforderlichen Validierungen wie das 7-Tage-Fenster, die Versionsprüfung bei der Erstellung oder die sequentielle Rollback-Überprüfung. Bei Clustern im automatischen Modus werden Unterbrechungskontrollen --force nicht außer Kraft gesetzt. NodePool Unterbrechungsbudgets, PDBs und Anmerkungen zur Nichtunterbrechung werden weiterhin berücksichtigt.

Schritt 2: Worker-Knoten vorbereiten

Stellen Sie vor dem Rollback der Steuerungsebene sicher, dass Ihre Worker-Knoten mit der Zielversion kompatibel sind. Die Richtlinie „Version Skew“ von Kubernetes verlangt, dass Worker-Knoten keine neuere Version als die Kontrollebene ausführen dürfen.

EKS Auto Mode

Es ist keine Aktion erforderlich. Wenn Sie das Rollback initiieren, führt EKS automatisch ein Rollback der Knoten im automatischen Modus vor der Steuerungsebene durch. Weitere Informationen finden Sie unter Rollback EKS-Automodus-Cluster.

Verwaltete Knotengruppen (MNG)

Sie müssen Ihre verwalteten Knotengruppen auf die vorherige Version zurücksetzen, bevor Sie die Steuerungsebene zurücksetzen können. Verwenden Sie die UpdateNodegroupVersion API:

aws eks update-nodegroup-version \ --cluster-name my-cluster \ --nodegroup-name my-nodegroup \ --kubernetes-version 1.30 \ --region us-west-2

Das Knotengruppen-Update berücksichtigt Ihre konfigurierten Aktualisierungseinstellungen (maxUnavailableodermaxUnavailablePercentage) und Ihre Aktualisierungsstrategie (Rolling oder Force).

Self-managed Knoten und Hybridknoten

Sie sind für das Rollback von selbstverwalteten Knoten und Hybridknoten verantwortlich. Aktualisieren Sie Ihre Knoten-AMIs oder -Konfigurationen, sodass sie die vorherige Kubernetes-Version verwenden, bevor Sie die Kontrollebene zurücksetzen.

Fargate

Ein Versions-Rollback wird für Fargate-Worker-Knoten nicht unterstützt. Sie können die Steuerungsebene eines Clusters, der Fargate verwendet, rückgängig machen, aber Fargate-Pods, auf denen dieselbe Kubernetes-Version wie die Kontrollebene ausgeführt wird, lösen die Kubelet-Version Skew Insight mit dem Status ERROR aus.

EKS kann Fargate-Pods nicht automatisch auf eine ältere Kubelet-Version zurücksetzen.

Problemumgehung: Wenn Sie Fargate-Pods haben, auf denen dieselbe Kubernetes-Version wie auf der Steuerungsebene ausgeführt wird, löschen Sie diese Pods, bevor Sie das Rollback einleiten. Führen Sie dann ein Rollback Ihrer Steuerungsebene durch. Alle verbleibenden Pods werden mit der Rollback-Version gestartet, wenn Sie sie erneut bereitstellen.

Verwenden Sie diese Option alternativ, --force um die Insight-Prüfung zu umgehen. Wenn Sie jedoch mit einem Verstoß gegen die Kubelet-Versionsverzerrung fortfahren, kann dies zu unerwartetem Verhalten für Ihre Fargate-Workloads führen, bis diese Pods ersetzt werden.

Schritt 3: Rollback der Cluster-Steuerungsebene

Sie können ein Rollback mithilfe der AWS Konsole, der AWS CLI oder der EKS-API initiieren.

Rollback-Cluster mit dem AWS Konsole

  1. Öffnen Sie die Amazon-EKS-Konsole.

  2. Wählen Sie Ihren Cluster aus.

  3. Wählen Sie die Dropdownliste Aktionen aus.

  4. Wählen Sie die Rollback-Cluster-Version.

  5. Überprüfen Sie die Rollback-Zusammenfassung, einschließlich aller Insight-Warnungen.

  6. Wählen Sie die Rollback-Version.

Der Rollback dauert mehrere Minuten. Bei Clustern im automatischen Modus kann die Node-Rollback-Phase länger dauern. Weitere Informationen finden Sie unter Rollback EKS-Automodus-Cluster.

Rollback-Cluster mit dem AWS CLI

Verwenden Sie den vorhandenen update-cluster-version Befehl mit der vorherigen (N-1) Kubernetes-Version:

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --region us-west-2

Beispielantwort:

{ "update": { "id": "e4091a28-ea14-48fd-a8c7-975aeb469e8a", "status": "InProgress", "type": "VersionRollback", "params": [ { "type": "Version", "value": "1.30" }, { "type": "PlatformVersion", "value": "eks.16" } ], "createdAt": "2026-05-12T16:56:01.082000-04:00", "errors": [] } }
Anmerkung

EKS führt vor dem Rollback eine Insight-Aktualisierung durch, wenn die Insight-Daten veraltet sind.

Schritt 4: Überwachen Sie den Fortschritt des Rollbacks

Sie können den Status Ihres Cluster-Rollbacks mit der Amazon EKS-Konsole oder der AWS CLI überwachen.

AWS CLI:

aws eks describe-update \ --name my-cluster \ --region us-west-2 \ --update-id e4091a28-ea14-48fd-a8c7-975aeb469e8a

AWS Konsole:

  1. Öffnen Sie die Amazon-EKS-Konsole.

  2. Wählen Sie Ihren Cluster aus.

  3. Navigieren Sie zur Registerkarte Update-Verlauf.

  4. Suchen Sie die mit dem Rollback verknüpfte Update-ID, um dessen aktuellen Status einzusehen.

Statusübergänge

Für Standardcluster (ohne automatischen Modus):

InProgress → Successful
InProgress → Failed

Bei Clustern im automatischen Modus bleibt der Clusterstatus ACTIVE während des Rollbacks der Knoten bestehen und ändert sich UPDATING erst, wenn das Rollback der Steuerungsebene beginnt. Wird verwendetdescribe-update, um den gesamten Rollback-Fortschritt zu verfolgen. Weitere Informationen finden Sie unter Rollback EKS-Automodus-Cluster.

Wenn ein Successful Status angezeigt wird, ist das Rollback abgeschlossen.

Überlegungen und Warnungen

Erkenntnisse werden nach bestem Wissen und zum richtigen Zeitpunkt erstellt

Cluster-Erkenntnisse werden zu dem Zeitpunkt ausgewertet, zu dem ein Rollback ausgelöst wird. Wenn Sie nach der Überprüfung der Erkenntnisse, aber vor Abschluss des Rollbacks Änderungen an Ihrem Cluster vornehmen (z. B. beim Erstellen von Ressourcen mithilfe neuer APIs), werden diese Änderungen bei der ersten Prüfung der Erkenntnisse nicht erfasst und können nach Abschluss des Rollbacks zu Problemen führen.

etcd Datenerhaltung

EKS bewahrt die etcd-Daten während des Rollbacks. Inkompatible Ressourcen, die mithilfe des --force Flags umgangen wurden, bleiben erhalten und werden nicht automatisch gelöscht.

Gebühren für erweiterten Support

Wenn Sie von einer Version mit Standard-Support zu einer Version mit erweitertem Support zurückkehren, fallen für Ihren Cluster zusätzliche Support-Gebühren an. Wenn Sie beispielsweise ein Upgrade von 1.30 (erweiterter Support) auf 1.31 (Standardsupport) durchführen und dann auf 1.30 zurückkehren, fallen die Gebühren für den erweiterten Support weiter an.

Modell der geteilten Verantwortung für Rollback

EKS setzt die Kubernetes-Steuerebene auf die gewünschte Version zurück. Im Rahmen des Modells der gemeinsamen Verantwortung sind Sie dafür verantwortlich, die Anwendungskompatibilität mit der Vorgängerversion zu überprüfen:

  • EKS ist für die sichere Wiederherstellung der Komponenten der Steuerungsebene verantwortlich.

  • Sie sind dafür verantwortlich, dass Ihre Anwendungen, Konfigurationen und Abhängigkeiten mit der vorherigen Version kompatibel sind.

  • Sie müssen alle Inkompatibilitäten zwischen den Versionen überprüfen, Ihren Cluster auf mögliche Risiken hin untersuchen und etwaige Probleme beheben.

CloudFormation Verhalten beim Stack-Rollback

Wenn ein CloudFormation Stack-Update fehlschlägt und ein Stack-Rollback auslöst, löst die Rückkehr zu einer früheren Vorlagenversion, die eine niedrigere Kubernetes-Version angibt, kein Rollback der Cluster-Version aus. Das Versions-Rollback muss explizit über die UpdateClusterVersion API, CLI oder Konsole initiiert werden.

Rollback und Add-Ons

EKS führt während eines Rollbacks der Cluster-Version kein automatisches Rollback von Add-On-Versionen durch. Sie müssen Add-On-Versionen separat verwalten.

Bevor Sie die Steuerungsebene zurücksetzen:

  1. Überprüfen Sie anhand der Informationen zur Rollback-Bereitschaft die Kompatibilität des Add-ons mit der Zielversion.

  2. Wenn eine Add-On-Version nicht mit der vorherigen Kubernetes-Version kompatibel ist, führen Sie zunächst ein Downgrade durch:

aws eks update-addon \
  --cluster-name my-cluster \
  --addon-name vpc-cni \
  --addon-version v1.12.0-eksbuild.2 \
  --region us-west-2

+. Stellen Sie nach Abschluss des Rollbacks der Steuerungsebene sicher, dass alle Add-Ons ordnungsgemäß funktionieren.

Anmerkung

Anhand von Erkenntnissen zur Rollback-Bereitschaft werden nur EKS-managed Add-On-Versionen geprüft. Bei selbstverwalteten Add-Ons sind Sie dafür verantwortlich, die Kompatibilität mit der Zielversion zu überprüfen, bevor Sie ein Rollback durchführen.