檢閱標準支援 Kubernetes 版本的版本備註 - Amazon EKS

協助改進此頁面

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

檢閱標準支援 Kubernetes 版本的版本備註

提示

註冊即將舉行的 Amazon EKS 研討會。

本主題提供標準支援的每個 Kubernetes 版本需要注意的重要變更。於升級時,請仔細檢閱叢集舊版和新版本之間發生的變更。

Kubernetes 1.35

Kubernetes 1.35 現已可在 Amazon EKS 中使用。如需 Kubernetes 1.35 的詳細資訊,請參閱官方版本公告

重要
  • Cgroup v1 支援已移除:Kubernetes 1.35 取代 cgroup v1 支援,這表示 kubelet 預設會拒絕在使用 cgroup v1 的節點上啟動。

    • AL2023:AL2023 預設使用 cgroup v2,並與 Kubernetes 上游行為保持一致。

      • 必要動作:手動設定 AL2023 使用 cgroup v1 的客戶必須遷移至 cgroups v2 或手動failCgroupV1: false設定 kubelet 組態。

    • Bottlerocket:根據預設, Bottlerocket 1.35 會使用 cgroup v2,但 kubelet 組態failCgroupV1: false中會設定 ,以維持回溯相容性。

    • Fargate:Fargate 繼續使用 cgroup v1。

  • Containerd 1.x 終止支援:Kubernetes 1.35 是支援 Containerd 1.x 的最後一個版本。您必須先切換至容器化 2.0 或更新版本,才能升級至下一個 Kubernetes 版本。

  • 2026 年 3 月,上游 Kubernetes 專案將淘汰 Ingress NGINX,這是許多 Kubernetes 環境的關鍵基礎設施元件。

    • 必要動作:EKS 客戶應評估他們是否依賴輸入 NGINX,並開始規劃遷移到閘道 API 或第三方輸入控制器等替代方案,因為淘汰後不會再發佈錯誤修正、安全修補程式或更新。現有的部署將繼續運作,但在淘汰後繼續使用 Ingress NGINX 會讓您的環境面臨安全風險,因為沒有任何可用的替代方案是直接插入取代,而且需要規劃和工程時間。如需此 Kubernetes 公告的詳細資訊,請參閱 Kubernetes 指導和安全回應委員會傳入 NGINX 淘汰的官方陳述式。

  • 就地 Pod 資源更新 (穩定):就地 Pod 資源更新可讓使用者調整 CPU 和記憶體資源,而無需重新啟動 Pod 或容器。先前,這類修改需要重新建立 Pod,這可能會中斷工作負載,特別是對於有狀態或批次的應用程式。新的就地功能允許更順暢、不中斷的垂直擴展、提高效率,也可以簡化開發。

  • PreferSameNode 流量分佈 (Stable):已更新 服務trafficDistribution的欄位,以提供更明確的流量路由控制。已推出新選項 PreferSameNode,以允許服務在可用時嚴格排定本機節點上端點的優先順序,否則會回到遠端端點。此變更可讓 API 更明確地偏好目前節點內的流量。

  • StatefulSet MaxUnavailable (Beta):此功能可透過設定 maxUnavailable(例如 3 或 10%) 來啟用平行 Pod 更新,讓資料庫叢集等具狀態應用程式比循序one-at-a-time更新最多快 60%,大幅減少維護時段。

  • Windows Server 2025 支援:EKS 1.35 新增對 Windows Server 2025 的支援。

  • Kubelet 標記移除:已從 kubelet 移除--pod-infra-container-image標記。自訂 AMI 使用者必須先從 kubelet 組態中移除此旗標,才能升級至 1.35。

  • 棄用通知 - IPVS 模式:kube-proxy 中的 IPVS 模式已棄用,並將在 Kubernetes 1.36 中移除。

如需完整的 Kubernetes 1.35變更日誌,請參閱 https://https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.35.md

Kubernetes 1.34

Kubernetes 1.34 現已可在 Amazon EKS 中使用。如需 Kubernetes 1.34 的詳細資訊,請參閱官方版本公告

重要
  • 容器已更新至 1.34 版中的 2.1 以啟動。

  • AWS 不會發佈適用於 Kubernetes 1.34 的 EKS 最佳化 Amazon Linux 2 AMI。

  • AppArmor 在 Kubernetes 1.34 中已棄用。

  • VolumeAttributesClass (VAC) 在 Kubernetes 1.34 中畢業至 GA,從 Beta API (storage.k8s.io/v1beta1) 遷移至穩定的 API (storage.k8s.io/v1)。

    • 如果您使用 EBS CSI 驅動程式搭配 AWS受管附屬容器 (來自 ECR Gallery 上的 CSI 元件),磁碟區修改將繼續在 EKS 1.31-1.33 叢集上順暢運作。 AWS 將修補附屬項目以支援 Beta VAC APIs,直到 EKS 1.33 標準支援結束 (2026 年 7 月 29 日)。

    • 如果您自行管理 CSI 附屬容器,您可能需要鎖定至 1.34 版之前的叢集上的較舊附屬版本,以維護 VAC 功能。

    • 若要使用 GA VolumeAttributesClass 功能 (例如修改轉返),請升級至 EKS 1.34 或更新版本。

  • 外部 JWT Signer for Service 帳戶權杖已提升為 Beta 版。使用外部簽署者時,不再完全遵守 --service-account-extend-token-expiration 旗標。API 伺服器會強制執行所需延伸項目 (1 年) 與外部簽署者限制 (24 小時) 之間的最短過期時間。

  • 動態資源分配 (DRA) 核心 APIs (GA):動態資源分配已進入穩定狀態,可透過標準化配置界面有效率地管理 GPUs 等特殊硬體 - 簡化硬體加速器的資源管理並改善特殊資源的使用率。

  • 適用於 Kubelet (Beta) 的投影 ServiceAccount 權杖:此增強功能透過使用容器映像提取的短期憑證而非長期秘密來提高安全性 - 降低憑證暴露風險並增強叢集的整體安全狀態。

  • Pod 層級的資源請求和限制 (Beta):此功能允許多容器 Pod 的共用資源集區來簡化資源管理,為具有多個容器的複雜應用程式提供更有效率的資源分配和使用率。

  • 可變 CSI 節點可配置計數 (Beta):MutableCSINodeAllocatableCount特徵閘道預設為在 EKS 1.34 中啟用,使 CSINode 最大可連接磁碟區計數屬性可變,並引入根據 CSI 驅動程式層級的使用者組態動態更新的機制。這些更新可以透過定期間隔或故障偵測觸發,透過解決節點上報告和實際連接容量之間的不相符,增強具狀態 Pod 排程的可靠性。

  • 棄用通知 - cgroup 驅動程式組態:手動 cgroup 驅動程式組態已棄用,有利於自動偵測。

    • 客戶影響:如果您目前在 kubelet 組態中手動設定--cgroup-driver旗標,您應該準備移除此組態。

    • 必要動作:計劃更新節點引導指令碼和自訂 AMI 組態,以在功能在未來 Kubernetes 版本中移除之前移除手動 cgroup 驅動程式設定。

    • 如需詳細資訊,請參閱 cgroup 驅動程式文件

如需完整的 Kubernetes 1.34變更日誌,請參閱 https://https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.34.md

Kubernetes 1.33

Kubernetes 1.33 現已可在 Amazon EKS 中使用。如需 Kubernetes 1.33 的詳細資訊,請參閱官方版本公告

重要
  • 動態資源配置 Beta 版 Kubernetes API 現已啟用。

    • 此 Beta 版 API 可改善排程和監控需要 GPU 等資源的工作負載的體驗。

    • Beta 版 API 由 Kubernetes 社群所定義,且 Kubernetes 的未來版本可能會有所變更。

    • 仔細檢閱 Kubernetes 文件中的功能階段,了解使用 Beta 版 API 的影響。

  • AWS 不會發佈適用於 Kubernetes 1.33 的 EKS 最佳化 Amazon Linux 2 AMI。

  • 就地 Pod 資源調整 (Beta 版):就地資源調整已升級為 Beta 版,允許對現有 Pod 的 CPU 和記憶體資源進行動態更新,而無需重新啟動 - 實現具狀態的工作負載的垂直擴展,零停機時間,以及根據流量模式無縫調整資源。

  • 附屬容器現已穩定:附屬容器已逐步進入穩定狀態,將附屬容器作為特殊的 init 容器實作,其 restartPolicy: Always 在應用程式容器之前已啟動,在整個 Pod 生命週期中執行,並支援用於操作狀態訊號的探查。

    • 如需詳細資訊,請參閱 Kubernetes 文件中的附屬容器

  • 端點 API 棄用:端點 API 現在已正式棄用,並會在存取時傳回警告 - 移轉工作負載和指令碼,以改用 EndpointSlices API,其中它會支援雙堆疊聯網等現代功能,並依服務處理多個 EndpointSlices。

  • Elastic Fabric Adapter 支援:Amazon EKS 叢集的預設安全群組現在支援 Elastic Fabric Adapter (EFA) 流量。預設的安全群組具有新的傳出規則,該規則允許具有相同安全群組目的地的 EFA 流量。這允許叢集內的 EFA 流量。

如需完整的 Kubernetes 1.33變更日誌,請參閱 https://https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.33.md

Kubernetes 1.32

Kubernetes 1.32 現已可在 Amazon EKS 中使用。如需 Kubernetes 1.32 的詳細資訊,請參閱官方版本公告

重要
  • FlowSchema 和 PriorityLevelConfiguration 的 flowcontrol.apiserver.k8s.io/v1beta3 API 版本已在版本 1.32 中移除。如果您正在使用這些 API,則必須在升級之前更新組態以便使用最新的支援版本。

  • 版本 1.32 中已棄用 ServiceAccount metadata.annotations[kubernetes.io/enforce-mountable-secrets],且未來的 Kubernetes 次要版本也會將其移除。建議使用不同的命名空間來隔離對已掛載秘密的存取。

  • Kubernetes 版本 1.32 是 Amazon EKS 將發行的 Amazon Linux 2 (AL2) AMI 的最新版本。從版本 1.33 開始,Amazon EKS 將繼續發行 Amazon Linux 2023 (AL2023) 和 Bottlerocket 型 AMI。

  • 在 Kubernetes 版本 1.32 中,Memory Manager 功能已逐步升級為正式上市 (GA) 狀態。此增強功能可為容器化應用程式提供更高效且可預測的記憶體配置,特別有益於具有特定記憶體需求的工作負載。

  • StatefulSets 建立的 PersistentVolumeClaims (PVC) 現在包含自動清除功能。當不再需要 PVC 時,系統會自動將其刪除,同時在 StatefulSet 更新和節點維護操作期間,維護資料持續性。此功能可簡化儲存管理,並有助於防止叢集中的孤立 PVC。

  • 自訂資源欄位選取器功能現已推出,讓開發人員能夠將欄位選取器新增至自訂資源。此功能為自訂資源提供與內建 Kubernetes 物件相同的篩選功能,從而實現更精確且更高效的資源篩選,並促進更優質的 API 設計實務。

如需完整的 Kubernetes 1.32變更日誌,請參閱 https://https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.32.md

匿名身分驗證變更

從 Amazon EKS 1.32 開始,匿名身分驗證僅限於下列 API 伺服器運作狀態檢查端點:

  • /healthz

  • /livez

  • /readyz

使用 system:unauthenticated 使用者而向任何其他端點提出的請求將會收到 401 Unauthorized HTTP 回應。此安全增強功能有助於避免因設定錯誤的 RBAC 政策而可能發生的意外叢集存取。

注意

public-info-viewer RBAC 角色會繼續套用至上文所列的運作狀態檢查端點。

Amazon Linux 2 AMI 棄用

Kubernetes 版本1.32是 Amazon EKS 發行 AL2 AMIs最後一個版本。從版本 1.33 開始,Amazon EKS 將繼續發行 AL2023 和 Bottlerocket 型 AMI。如需詳細資訊,請參閱EKS AL2 和 AL2 加速 AMI 移轉功能指南