Versionshinweise für Kubernetes-Versionen mit Standard-Support anzeigen - 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.

Versionshinweise für Kubernetes-Versionen mit Standard-Support anzeigen

Dieses Thema enthält wichtige Änderungen, die Sie für jede Kubernetes-Version im Standard-Support beachten sollten. Überprüfen Sie beim Upgrade sorgfältig die Änderungen, die zwischen der alten und der neuen Version für Ihren Cluster vorgenommen wurden.

Kubernetes 1.33

Kubernetes 1.33 ist jetzt in Amazon EKS verfügbar. Weitere Informationen zu Kubernetes 1.33 finden Sie in der offiziellen Versionsankündigung.

Wichtig
  • Die beta-Version der Kubernetes-API für die dynamische Ressourcenzuweisung ist aktiviert.

    • Diese Beta-API verbessert die Erfahrung bei der Planung und Überwachung von Workloads, die Ressourcen wie GPUs erfordern.

    • Die Beta-API wird von der Kubernetes-Community definiert und kann sich in zukünftigen Versionen von Kubernetes ändern.

    • Lesen Sie die Feature-Phasen in der Kubernetes-Dokumentation sorgfältig durch, um die Auswirkungen der Verwendung von Beta-APIs zu verstehen.

  • AWS veröffentlicht kein EKS-optimiertes Amazon Linux 2 AMI für Kubernetes 1.33.

  • Pod-Ressourcenanpassung vor Ort (Beta): Die Ressourcenanpassung vor Ort wurde in die Beta-Phase hochgestuft, sodass CPU- und Speicherressourcen für vorhandene Pods ohne Neustart dynamisch aktualisiert werden können. Dies ermöglicht die vertikale Skalierung von zustandsbehafteten Workloads ohne Ausfallzeiten und eine nahtlose Ressourcenanpassung basierend auf Datenverkehrsmustern.

  • Sidecar-Container jetzt stabil: Sidecar-Container sind nun stabil und implementieren Sidecars als spezielle Init-Container mit restartPolicy: Always, die vor Anwendungs-Containern gestartet werden, während des gesamten Pod-Lebenszyklus ausgeführt werden und Muster zur Signalisierung des Betriebszustands unterstützen.

    • Weitere Informationen finden Sie unter Sidecar-Container in der Kubernetes-Dokumentation.

  • Veraltete Endpunkte-API: Die Endpunkte-API ist nun offiziell veraltet und gibt bei Zugriff Warnungen aus. Migrieren Sie Workloads und Skripte, um stattdessen die EndpointSlices API zu verwenden, die moderne Features wie Dual-Stack-Netzwerke unterstützt und mehrere EndpointSlices pro Service verarbeitet.

  • Support für Elastic Fabric Adapter: Die Standardsicherheitsgruppe für Amazon-EKS-Cluster unterstützt nun Datenverkehr für Elastic Fabric Adapter (EFA). Die Standardsicherheitsgruppe verfügt über eine neue Ausgangsregel, die EFA-Datenverkehr mit dem Ziel derselben Sicherheitsgruppe zulässt. Dadurch wird EFA-Datenverkehr innerhalb des Clusters ermöglicht.

Das vollständige Änderungsprotokoll für Kubernetes 1.33 finden Sie unter https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md

Kubernetes 1.32

Kubernetes 1.32 ist jetzt in Amazon EKS verfügbar. Weitere Informationen zu Kubernetes 1.32 finden Sie in der offiziellen Versionsankündigung.

Wichtig
  • Die flowcontrol.apiserver.k8s.io/v1beta3-API-Version von FlowSchema und PriorityLevelConfiguration wurde in Version 1.32 entfernt. Falls Sie diese APIs verwenden, müssen Sie Ihre Konfigurationen vor dem Upgrade auf die neueste unterstützte Version aktualisieren.

  • ServiceAccount metadata.annotations[kubernetes.io/enforce-mountable-secrets] ist in Version 1.32 veraltet und wird in einer zukünftigen Nebenversion von Kubernetes entfernt. Es wird empfohlen, separate Namespaces zu verwenden, um den Zugriff auf eingebundene Geheimnisse zu isolieren.

  • Kubernetes-Version 1.32 ist die neueste Version, für die Amazon EKS Amazon Linux 2 (AL2) AMIs veröffentlichen wird. Ab Version 1.33 veröffentlicht Amazon EKS weiterhin Amazon Linux 2023 (AL2023) und Bottlerocket-basierte AMIs.

  • Das Memory-Manager-Feature hat in Kubernetes Version 1.32 den Status „Generally Available“ (GA) erreicht. Diese Verbesserung ermöglicht eine effizientere und besser vorhersehbare Speicherzuweisung für containerisierte Anwendungen. Dies ist besonders vorteilhaft für Workloads mit spezifischen Speicheranforderungen.

  • PersistentVolumeClaims (PVCs), die von StatefulSets erstellt wurden, verfügen nun über eine automatische Bereinigungsfunktion. Wenn PVCs nicht mehr benötigt werden, werden sie automatisch gelöscht, wobei die Datenpersistenz während StatefulSet-Aktualisierungen und Knoten-Wartungsvorgängen erhalten bleibt. Dieses Feature vereinfacht die Speicherverwaltung und trägt dazu bei, die Verwendung von nicht funktionierenden PVCs in Ihrem Cluster zu verhindern.

  • Es wurde die Funktion „Benutzerdefinierte Ressourcenfeldauswahl“ eingeführt, mit der Entwickler Feldauswahlfunktionen zu benutzerdefinierten Ressourcen hinzufügen können. Dieses Feature bietet dieselben Filterfunktionen, die für integrierte Kubernetes-Objekte verfügbar sind, auch für benutzerdefinierte Ressourcen. Dadurch wird eine präzisere und effizientere Ressourcenfilterung ermöglicht und ein besseres API-Design gefördert.

Das vollständige Änderungsprotokoll für Kubernetes 1.32 finden Sie unter https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.32.md

Änderungen bei der anonymen Authentifizierung

Beim Einstieg mit Amazon EKS 1.32 ist die anonyme Authentifizierung auf die folgenden Endpunkte für die Zustandsprüfung des API-Serverstatus beschränkt:

  • /healthz

  • /livez

  • /readyz

Anfragen an andere Endpunkte, die den system:unauthenticated-Benutzer verwenden, erhalten eine 401 Unauthorized-HTTP-Antwort. Diese Sicherheitsverbesserung trägt dazu bei, unbeabsichtigten Cluster-Zugriff zu verhindern, der aufgrund falsch konfigurierter RBAC-Richtlinien auftreten könnte.

Anmerkung

Die public-info-viewer-RBAC-Rolle gilt weiterhin für die oben aufgeführten Endpunkte der Zustandsprüfung.

Veraltung von Amazon Linux 2 AMI

Für Kubernetes-Versionen 1.33 und höher stellt EKS keine vorgefertigten, optimierten Amazon Linux 2 (AL2) Amazon Machine Images (AMIs) bereit.

AWS empfiehlt die Verwendung von EKS Auto Mode oder den Umstieg auf ein neueres Betriebssystem wie Amazon Linux 2023 (AL2023) oder Bottlerocket.

Anmerkung

Diese Aktualisierung gilt für EKS-optimierte AL2-AMIs. Weitere Informationen zum Betriebssystem selbst finden Sie unter Häufig gestellte Fragen zu Amazon Linux 2.

Kubernetes 1.31

Kubernetes 1.31 ist jetzt in Amazon EKS verfügbar. Weitere Informationen zu Kubernetes 1.31 finden Sie in der offiziellen Versionsankündigung.

Wichtig
  • Das seit 2017 veraltete Kubelet-Flag --keep-terminated-pod-volumes wurde im Rahmen der Veröffentlichung der Version 1.31 entfernt. Diese Änderung wirkt sich darauf aus, wie gekündigte Pod-Volumes vom Kubelet verarbeitet werden. Wenn Sie dieses Flag in Ihren Knotenkonfigurationen verwenden, müssen Sie Ihre Bootstrap-Skripte und Startvorlagen aktualisieren, um es vor der Aktualisierung zu entfernen.

  • Das Beta-Feature Gate VolumeAttributesClass und die API-Ressource sind in der Amazon-EKS-Version 1.31 aktiviert. Mit diesem Feature können Cluster-Betreiber veränderbare Eigenschaften von Persistent Volumes (PVs) ändern, die von kompatiblen CSI-Treibern verwaltet werden, darunter auch der Amazon-EBS-CSI-Treiber. Um dieses Feature nutzen zu können, stellen Sie sicher, dass Ihr CSI-Treiber das VolumeAttributesClass-Feature unterstützt (für den Amazon-EBS-CSI-Treiber führen Sie ein Upgrade auf Version 1.35.0 oder höher durch, um das Feature automatisch zu aktivieren). Sie können VolumeAttributesClass-Objekte erstellen, um die gewünschten Volume-Attribute wie Volume-Typ und Durchsatz zu definieren, und diese mit Ihren Persistent Volume Claims (PVCs) verknüpfen. Weitere Informationen finden Sie in der offiziellen Kubernetes-Dokumentation sowie in der Dokumentation Ihres CSI-Treibers.

  • Der Kubernetes-Support für AppArmor wurde auf den Status „stabil“ hochgestuft und steht nun allgemein für die öffentliche Nutzung zur Verfügung. Mit diesem Feature können Sie Ihre Container mit AppArmor schützen, indem Sie das Feld appArmorProfile.type im securityContext des Containers entsprechend konfigurieren. Vor der Kubernetes-Version 1.30 wurde AppArmor durch Annotationen gesteuert. Ab Version 1.30 erfolgt die Steuerung über Felder. Um dieses Feature optimal zu nutzen, empfehlen wir, Annotationen zu migrieren und das appArmorProfile.type-Feld zu verwenden, um die Kompatibilität Ihrer Workloads sicherzustellen.

  • Das Feature „PersistentVolume – letzte Phasenübergangszeit“ wurde in den stabilen Zustand versetzt und ist jetzt in Kubernetes-Version 1.31 allgemein für die öffentliche Nutzung verfügbar. Dieses Feature führt ein neues Feld, .status.lastTransitionTime, in den PersistentVolumeStatus ein, das einen Zeitstempel bereitstellt, der angibt, wann ein PersistentVolume zuletzt in eine andere Phase übergegangen ist. Diese Verbesserung ermöglicht eine bessere Nachverfolgung und Verwaltung von PersistentVolumes, insbesondere in Szenarien, in denen das Verständnis des Lebenszyklus von Volumes wichtig ist.

Das vollständige Änderungsprotokoll für Kubernetes 1.31 finden Sie unter https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.31.md