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.
Upgrade von Amazon Linux 2 zu Amazon Linux 2023
Warnung
Amazon EKS hat die Veröffentlichung von EKS-optimiertem Amazon Linux 2 (AL2) AMIs am 26. November 2025 eingestellt. AL2023 und Bottlerocket auf Basis von Amazon EKS sind AMIs für alle unterstützten Kubernetes-Versionen einschließlich 1.33 und höher verfügbar.
AL2023 ist ein Linux-basiertes Betriebssystem, das entwickelt wurde, um eine sichere, stabile und leistungsstarke Umgebung für Ihre Cloud-Anwendungen bereitzustellen. Es handelt sich um die nächste Generation von Amazon Linux von Amazon Web Services und ist für alle unterstützten Amazon-EKS-Versionen verfügbar.
AL2023 bietet mehrere Verbesserungen gegenüber AL2. Einen vollständigen Vergleich finden Sie unter AL2 Comparing and Amazon Linux 2023 im Amazon Linux 2023-Benutzerhandbuch. Es wurden mehrere Pakete hinzugefügt, aktualisiert und entfernt AL2. Es wird dringend empfohlen, Ihre Anwendungen AL2023 vor dem Upgrade mit zu testen. Eine Liste aller Paketänderungen in AL2023 finden Sie unter Paketänderungen in Amazon Linux 2023 in den Versionshinweisen zu Amazon Linux 2023.
Zusätzlich zu diesen Änderungen sollten Sie Folgendes beachten:
-
AL2023 führt einen neuen Knoteninitialisierungsprozess ein
nodeadm, der ein YAML-Konfigurationsschema verwendet. Wenn Sie selbstverwaltete Knotengruppen oder eine AMI mit einer Startvorlage verwenden, müssen Sie nun beim Erstellen einer neuen Knotengruppe explizit zusätzliche Cluster-Metadaten angeben. Ein Beispielfür die mindestens erforderlichen Parameter ist wie folgt, wobei jetzt apiServerEndpoint,certificateAuthorityund Service-cidrerforderlich sind:--- apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: my-cluster apiServerEndpoint: https://example.com certificateAuthority: Y2VydGlmaWNhdGVBdXRob3JpdHk= cidr: 10.100.0.0/16AL2In wurden die Metadaten dieser Parameter aus dem Amazon
DescribeClusterEKS-API-Aufruf ermittelt. Mit hat sich dieses Verhalten geändert AL2023, da durch den zusätzlichen API-Aufruf die Gefahr einer Drosselung bei der Skalierung großer Knoten besteht. Diese Änderung betrifft Sie nicht, wenn Sie verwaltete Knotengruppen ohne Startvorlage verwenden oder wenn Sie Karpenter verwenden. Weitere Informationen zucertificateAuthorityund Servicecidrfinden Sie unterDescribeClusterin der API-Referenz von Amazon EKS. -
Denn ändert
nodeadmauch das Format AL2023, in dem Parameterkubeletfür jeden verwendeten Knoten angewendet werden.NodeConfigSpecIn AL2, das wurde mit dem --kubelet-extra-argsParameter gemacht. Dies wird häufig verwendet, um Knoten mit Beschriftungen und Taints zu versehen. Ein Beispiel unten zeigt die Anwendung vonmaxPodsund--node-labelsauf den Knoten.--- apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: test-cluster apiServerEndpoint: https://example.com certificateAuthority: Y2VydGlmaWNhdGVBdXRob3JpdHk= cidr: 10.100.0.0/16 kubelet: config: maxPods: 110 flags: - --node-labels=karpenter.sh/capacity-type=on-demand,karpenter.sh/nodepool=test -
Amazon VPC CNI-Version
1.16.2oder höher ist erforderlich für. AL2023 -
AL2023 erfordert
IMDSv2standardmäßig.IMDSv2hat mehrere Vorteile, die zur Verbesserung der Sicherheitslage beitragen. Das Programm verwendet eine sitzungsorientierte Authentifizierungsmethode, welche die Erstellung eines geheimen Tokens in einer einfachen HTTP-PUT-Anfrage zum Starten der Sitzung erfordert. Die Gültigkeitsdauer eines Sitzungs-Tokens kann zwischen 1 Sekunde und 6 Stunden variieren. Weitere Informationen zum Übergang vonIMDSv1zuIMDSv2finden Sie unter Umstellung auf Instance Metadata Service Version 2 und Nutzen Sie alle Vorteile IMDSv2 und deaktivieren Sie Ihre IMDSv1 gesamte AWS Infrastruktur. Wenn Sie IMDSv1verwenden möchten, können Sie dies dennoch tun, indem Sie die Einstellungen mithilfe der Starteigenschaften der Instance-Metadatenoption manuell überschreiben.Anmerkung
IMDSv2Bei kann AL2023 die Standard-Hop-Anzahl für verwaltete Knotengruppen variieren:-
Wenn keine Startvorlage verwendet wird, ist der Standardwert auf
1eingestellt. Dies bedeutet, dass Container über IMDS keinen Zugriff auf die Anmeldeinformationen des Knotens haben. Wenn Sie Container-Zugriff auf die Anmeldeinformationen des Knotens benötigen, können Sie dies weiterhin mithilfe einer benutzerdefinierten Amazon-EC2-Startvorlage tun. -
Wenn Sie in einer Startvorlage ein benutzerdefiniertes AMI verwenden, wird das Standard-
HttpPutResponseHopLimitauf2gesetzt. Sie könnenHttpPutResponseHopLimitin der Startvorlage manuell überschreiben.
Alternativ können Sie anstelle von
IMDSv2Amazon EKS Pod Identity verwenden, um Anmeldeinformationen bereitzustellen. -
-
AL2023 bietet die nächste Generation einheitlicher Kontrollgruppenhierarchien (
cgroupv2).cgroupv2wird verwendet, um eine Container-Laufzeit zu implementieren, und vonsystemd. Es enthält zwar AL2023 immer noch Code, mit dem das System zum Laufen gebracht werden kanncgroupv1, ist aber keine empfohlene oder unterstützte Konfiguration. Diese Konfiguration wird in einer zukünftigen Hauptversion von Amazon Linux vollständig entfernt. -
eksctlFüreksctldie Unterstützung ist eine Version0.176.0oder höher erforderlich AL2023.
Für bereits bestehende verwaltete Knotengruppen können Sie entweder ein direktes Upgrade oder ein blue/green Upgrade durchführen, je nachdem, wie Sie eine Startvorlage verwenden:
-
Wenn Sie ein benutzerdefiniertes AMI mit einer verwalteten Knotengruppe verwenden, können Sie ein direktes Upgrade durchführen, indem Sie die AMI-ID in der Startvorlage austauschen. Sie sollten sicherstellen, dass Ihre Anwendungen und alle Benutzerdaten an AL2023 First übertragen werden, bevor Sie diese Upgrade-Strategie durchführen.
-
Wenn Sie verwaltete Knotengruppen entweder mit der Standardstartvorlage oder mit einer benutzerdefinierten Startvorlage verwenden, die die AMI-ID nicht angibt, müssen Sie das Upgrade mithilfe einer blue/green Strategie durchführen. Ein blue/green Upgrade ist in der Regel komplexer und beinhaltet die Erstellung einer völlig neuen Knotengruppe, die Sie AL2023 als AMI-Typ angeben würden. Die neue Knotengruppe muss anschließend sorgfältig konfiguriert werden, um sicherzustellen, dass alle benutzerdefinierten Daten aus der AL2 Knotengruppe mit dem neuen Betriebssystem kompatibel sind. Sobald die neue Knotengruppe mit Ihren Anwendungen getestet und validiert wurde, können Pods von der alten Knotengruppe auf die neue Knotengruppe migriert werden. Nach Abschluss der Migration können Sie die alte Knotengruppe löschen.
Wenn Sie Karpenter verwenden und verwenden möchten AL2023, müssen Sie das EC2NodeClass amiFamily Feld mit ändern. AL2023 Drift ist standardmäßig in Karpenter aktiviert. Dies bedeutet, dass Karpenter nach einer Änderung des amiFamily-Feldes Ihre Worker-Knoten automatisch auf die neueste AMI aktualisiert, sobald diese verfügbar ist.
Zusätzliche Informationen zu nodeadm
Wenn Sie ein EKS-optimiertes Amazon Linux 2023 AMI verwenden oder ein benutzerdefiniertes EKS Amazon Linux 2023 AMI mithilfe der im offiziellen amazon-eks-ami GitHub Repository bereitgestellten Packer-Skripts erstellen, sollten Sie es vermeiden, nodeadm init explizit in EC2-Benutzerdaten oder als Teil Ihres benutzerdefinierten AMI auszuführen.
Wenn Sie NodeConfig in Ihren Benutzerdaten Dynamik erzeugen möchten, können Sie diese Konfiguration in eine Drop-In-Yaml- oder JSON-Datei schreiben. /etc/eks/nodeadm.d Diese Konfigurationsdateien werden zusammengeführt und auf Ihren Knoten angewendet, wenn nodeadm init später im Startvorgang automatisch gestartet wird. Beispiel:
cat > /etc/eks/nodeadm.d/additional-node-labels.yaml << EOF apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: kubelet: flags: - --node-labels=foo=bar EOF
Das EKS-optimierte Amazon Linux 2023 führt nodeadm init AMIs automatisch in zwei Phasen über separate Systemd-Dienste aus: nodeadm-config wird vor der Ausführung der Benutzerdaten ausgeführt, während nodeadm-run danach ausgeführt wird. Der Dienst nodeadm-config richtet Basiskonfigurationen für containerd und kubelet ein, bevor Benutzerdaten ausgeführt werden. Der Dienst nodeadm-run führt ausgewählte System-Daemons aus und schließt alle endgültigen Konfigurationen nach der Ausführung der Benutzerdaten ab. Wenn der Befehl nodeadm init ein weiteres Mal über Benutzerdaten oder ein benutzerdefiniertes AMI ausgeführt wird, kann er Annahmen über die Reihenfolge der Ausführung widerlegen, was zu unerwarteten Ergebnissen, einschließlich einer Fehlkonfiguration, führen kann. ENIs