Eine verwaltete Knotengruppe für Ihren Cluster aktualisieren - Amazon EKS

Unterstützung für die Verbesserung dieser Seite beitragen

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

Eine verwaltete Knotengruppe für Ihren Cluster aktualisieren

Wenn Sie eine Aktualisierung der verwalteten Knotengruppe initiieren, aktualisiert Amazon EKS Ihre Knoten automatisch für Sie. Führen Sie die Schritte aus, die unter Jede Phase der Knotenaktualisierungen verstehen aufgelistet sind. Wenn Sie ein Amazon-EKS-optimiertes AMI verwenden, wendet Amazon EKS automatisch die neuesten Sicherheits-Patches und Betriebssystem-Aktualisierungen auf Ihre Knoten als Teil der neuesten AMI-Versionsversion an.

Es gibt mehrere Szenarien, in denen Sie die Version oder Konfiguration Ihrer verwalteten Amazon-EKS-Knotengruppe aktualisieren:

  • Sie haben die Kubernetes-Version für Ihren Amazon-EKS-Cluster aktualisiert und möchten Ihre Arbeitsknoten so aktualisieren, dass sie dieselbe Kubernetes-Version verwenden.

  • Eine neue AMI-Version ist für Ihre verwaltete Knotengruppe verfügbar. Weitere Informationen zu AMI-Versionen finden Sie unter diesen Abschnitten:

  • Sie möchten die minimale, maximale oder gewünschte Anzahl der Instances in Ihrer verwalteten Knotengruppe anpassen.

  • Sie möchten Kubernetes-Labels hinzufügen oder aus den Instances in Ihrer verwalteten Knotengruppe entfernen.

  • Sie möchten AWS-Tags Ihrer verwalteten Knotengruppe hinzufügen oder daraus entfernen.

  • Sie müssen eine neue Version einer Startvorlage mit Konfigurationsänderungen bereitstellen, z. B. ein aktualisiertes benutzerdefiniertes AMI.

  • Sie haben Version 1.9.0 oder höher des Amazon-VPC-CNI-Add-Ons bereitgestellt, das Add-On für die Präfix-Delegierung aktiviert und möchten neue AWS-Nitro-System-Instances in einer Knotengruppe, um eine deutlich erhöhte Anzahl von Pods zu unterstützen. Weitere Informationen finden Sie unter Zuweisung weiterer IP-Adressen mit Präfixen zu Amazon-EKS-Knoten.

  • Sie haben die IP-Präfix-Delegierung für Windows-Knoten aktiviert und möchten, dass neue AWS-Nitro-System-Instances in einer Knotengruppe eine deutlich erhöhte Anzahl von Pods unterstützen. Weitere Informationen finden Sie unter Zuweisung weiterer IP-Adressen mit Präfixen zu Amazon-EKS-Knoten.

Wenn es eine neuere AMI-Version für die Kubernetes-Version Ihrer verwalteten Knotengruppe gibt als die, welche Ihre Knotengruppe derzeit ausführt, können Sie sie aktualisieren, um diese neue AMI-Version zu verwenden. Wenn Ihr Cluster eine neuere Kubernetes-Version als Ihre Knotengruppe ausführt, können Sie die Knotengruppe so aktualisieren, dass sie die neueste AMI-Version verwendet, welche der Kubernetes-Version Ihres Clusters entspricht.

Wenn ein Knoten in einer verwalteten Knotengruppe aufgrund eines Skalierungsvorgangs oder Aktualisierung beendet wird, werden die Pods in diesem Knoten zuerst geleert. Weitere Informationen finden Sie unter Alle Phasen der Knotenaktualisierung verstehen.

Aktualisieren einer Knotengruppenversion

Sie können eine Knotengruppen-Version mit einer der folgenden Methoden aktualisieren:

Die Version, auf die Sie aktualisieren, darf nicht höher sein als die Version der Steuerebene.

eksctl

Aktualisierung einer verwalteten Knotengruppe mithilfe von eksctl

Aktualisieren Sie eine verwaltete Knotengruppe mit dem folgenden Befehl auf die neueste AMI-Version derselben Kubernetes-Version, die derzeit auf den Knoten bereitgestellt wird. Ersetzen Sie jeden Beispielwert durch Ihre eigenen Werte.

eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=my-cluster \ --region=region-code
Anmerkung

Wenn Sie eine Knotengruppe, die mit einer Startvorlage bereitgestellt wurde, auf eine neue Version der Startvorlage aktualisieren, fügen Sie --launch-template-version version-number dem vorangehenden Befehl hinzu. Die Startvorlage muss die unter Anpassen verwalteter Knoten mit Startvorlagen beschriebenen Anforderungen erfüllen. Wenn die Startvorlage eine benutzerdefinierte AMI enthält, muss die AMI die Anforderungen unter Angabe einer AMI erfüllen. Wenn Sie Ihre Knotengruppe auf eine neuere Version Ihrer Startvorlage aktualisieren, wird jeder Knoten wiederverwertet, um mit der neuen Konfiguration der angegebenen Startvorlagenversion übereinzustimmen.

Sie können eine Knotengruppe, die ohne eine Startvorlage bereitgestellt wird, nicht direkt auf eine neue Startvorlagenversion aktualisieren. Stattdessen müssen Sie mithilfe der Startvorlage eine neue Knotengruppe bereitstellen, um die Knotengruppe auf eine neue Version der Startvorlage zu aktualisieren.

Sie können eine Knotengruppe auf dieselbe Version aktualisieren wie die Kubernetes-Version der Steuerebene. Wenn Sie beispielsweise über einen Cluster mit Kubernetes 1.33 verfügen, können Sie Knoten, auf denen derzeit Kubernetes 1.32 ausgeführt wird, mit dem folgenden Befehl auf Version 1.33 aktualisieren.

eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=my-cluster \ --region=region-code \ --kubernetes-version=1.33

AWS-Managementkonsole

Aktualisierung einer verwalteten Knotengruppe mithilfe von AWS-Managementkonsole

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

  2. Wählen Sie den Cluster aus, der die zu aktualisierende Knotengruppe enthält.

  3. Wenn mindestens eine Knotengruppe über ein verfügbares Update verfügt, wird oben auf der Seite ein Feld angezeigt, in dem Sie über das verfügbare Update informiert werden. Wenn Sie die Registerkarte Datenverarbeitung wählen, finden Sie den Eintrag Jetzt aktualisieren in der Spalte AMI-Vorversion in der Tabelle Knotengruppen für die Knotengruppe, für die eine Aktualisierung verfügbar ist. Um die Knotengruppe zu aktualisieren, wählen Sie Update now (Jetzt aktualisieren).

    Es wird keine Benachrichtigung für Knotengruppen angezeigt, die mit einem benutzerdefinierten AMI bereitgestellt wurden. Wenn Ihre Knoten mit einem benutzerdefinierten AMI bereitgestellt werden, führen Sie die folgenden Schritte aus, um ein neues aktualisiertes benutzerdefiniertes AMI bereitzustellen.

    1. Erstellen Sie eine neue Version Ihres AMI.

    2. Erstellen Sie eine neue Version der Startvorlage mit der neuen AMI-ID.

    3. Aktualisieren Sie die Knoten auf die neue Version der Startvorlage.

  4. Aktivieren oder deaktivieren Sie im Dialogfeld Update node group version (Knotengruppenversion aktualisieren) die folgenden Optionen:

    • Update node group version (Knotengruppenversion aktualisieren) – Diese Option ist nicht verfügbar, wenn Sie ein benutzerdefiniertes AMI bereitgestellt haben oder Ihr Amazon EKS-optimiertes AMI derzeit über die neueste Version für Ihren Cluster verfügt.

    • Change launch template version (Startvorlagenversion ändern) – Diese Option ist nicht verfügbar, wenn die Knotengruppe ohne eine benutzerdefinierte Startvorlage bereitgestellt wird. Sie können die Version der Startvorlage nur für eine Knotengruppe aktualisieren, die mit einer benutzerdefinierten Startvorlage bereitgestellt wurde. Wählen Sie die Launch template version (Startvorlagenversion) aus, auf die Sie die Knotengruppe aktualisieren möchten. Wenn Ihre Knotengruppe mit einem benutzerdefinierten AMI konfiguriert ist, muss die ausgewählte Version auch ein AMI angeben. Wenn Sie ein Upgrade auf eine neuere Version Ihrer Startvorlage durchführen, wird jeder Knoten wiederverwertet, damit er der neuen Konfiguration der angegebenen Startvorlagenversion entspricht.

  5. Wählen Sie für Update strategy (Aktualisierungsstrategie) eine der folgenden Optionen aus:

    • Fortlaufende Aktualisierung – Diese Option berücksichtigt die Budgets für die Pod-Unterbrechung Ihres Clusters. Aktualisierungen schlagen fehl, wenn ein Problem mit einem Budget für Pod-Unterbrechung auftritt, das dazu führt, dass Amazon EKS die Pods, die auf dieser Knotengruppe ausgeführt werden, nicht ordnungsgemäß entleert werden kann.

    • Aktualisierung erzwingen – Bei dieser Option werden Budgets für Pod-Unterbrechungen nicht berücksichtigt. Aktualisierungen erfolgen unabhängig von Problemen mit Budgets für Pod-Unterbrechung, indem Knoten-Neustarts erzwungen werden.

  6. Wählen Sie Aktualisieren.

Bearbeiten einer Knotengruppenkonfiguration

Sie können einige Konfigurationen einer verwalteten Knotengruppe ändern.

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

  2. Wählen Sie den Cluster aus, der die zu bearbeitende Knotengruppe enthält.

  3. Wählen Sie die Registerkarte Compute (Datenverarbeitung) aus.

  4. Wählen Sie die zu bearbeitende Knotengruppe aus und wählen Sie dann Edit (Bearbeiten).

  5. (Optional) Gehen Sie auf der Seite Edit node group (Knotengruppe bearbeiten) wie folgt vor:

    1. Bearbeiten Sie die Node group scaling configuration (Skalierungskonfiguration der Knotengruppe).

      • Desired size (Gewünschte Größe) – Geben Sie die aktuelle Anzahl von Knoten an, die die verwaltete Knotengruppe beibehalten soll.

      • Minimum size (Mindestgröße) – Geben Sie die Mindestanzahl von Knoten an, auf die die verwaltete Knotengruppe skaliert werden kann.

      • Maximum size (Maximale Größe) – Geben Sie die maximale Anzahl von Knoten an, auf die die verwaltete Knotengruppe skaliert werden kann. Die maximale Anzahl von Knoten, die in einer Knotengruppe unterstützt werden, finden Sie unter Service Quotas für Amazon EKS und Fargate anzeigen und verwalten.

    2. (Optional) Fügen Sie den Knoten in Ihrer Knotengruppe Kubernetes-Labels hinzu oder entfernen Sie sie. Die hier gezeigten Labels sind nur die Labels, die Sie mit Amazon EKS angewendet haben. Andere Labels können auf Ihren Knoten vorhanden sein, die hier nicht angezeigt werden.

    3. (Optional) Fügen Sie den Knoten in Ihrer Knotengruppe Kubernetes-Taints hinzu oder entfernen Sie sie. Hinzugefügte Färbungen können die Wirkung von NoSchedule , NoExecute , oder PreferNoSchedule haben. Weitere Informationen finden Sie unter Anleitung: Verhindern, dass Pods auf bestimmten Knoten geplant werden.

    4. (Optional) Fügen Sie Tags zu Ihrer Knotengruppenressource hinzu oder entfernen Sie sie. Diese Markierungen werden nur auf die Amazon-EKS-Knotengruppe angewendet. Knotengruppen-Tags werden nicht auf andere Ressourcen übertragen, die der Knotengruppe zugeordnet sind, z. B. die Amazon-EC2-Instances oder Subnetze.

    5. (Optional) Bearbeiten Sie Konfiguration der Knotengruppe aktualisieren. Wählen Sie entweder Zahl oder Prozentanteil aus.

      • Zahl – Wählen und geben Sie die Anzahl der Knoten in Ihrer Knotengruppe an, die parallel aktualisiert werden können. Diese Knoten sind während der Aktualisierung nicht verfügbar.

      • Prozentsatz – Wählen und geben Sie den Prozentsatz der Knoten in der Knotengruppe an, die parallel aktualisiert werden können. Diese Knoten sind während der Aktualisierung nicht verfügbar. Dies ist nützlich, wenn Sie viele Knoten in Ihrer Knotengruppe haben.

    6. Wenn Sie mit der Bearbeitung fertig sind, wählen Sie Änderungen speichern aus.

Wichtig

Bei der Aktualisierung der Knotengruppen-Konfiguration werden durch die Änderung von NodegroupScalingConfig die Budgets für Pod-Unterbrechung (PDBs) nicht berücksichtigt. Im Gegensatz zum Aktualisierungsprozess für Knotengruppen (bei dem Knoten während der Aktualisierungsphase entleert und PDBs berücksichtigt werden) führt die Aktualisierung der Skalierungskonfiguration dazu, dass Knoten sofort über einen Aufruf zur Verkleinerung der Auto-Scaling-Gruppe (ASG) beendet werden. Dies geschieht ohne Berücksichtigung von PDBs, unabhängig von der Zielgröße, auf die Sie skalieren. Das bedeutet, dass bei einer Reduzierung von desiredSize einer von Amazon EKS verwalteten Knotengruppe die Pods sofort nach Beendigung der Knoten entfernt werden, ohne dass PDBs berücksichtigt werden.