View a markdown version of this page

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

協助改進此頁面

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

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

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

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

提示

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

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

Kubernetes 1.36

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

重要
  • gitRepo 磁碟區移除:在 Kubernetes 1.36 中永久停用磁碟gitRepo區類型,無法重新啟用。Kubernetes API 仍然接受具有磁碟gitRepo區的 Pod,但 kubelet 會拒絕執行它們並傳回錯誤。

  • SELinux 磁碟區標籤變更 (GA):更快速的 SELinux 磁碟區標籤現在預設為 Kubernetes 1.36 中的所有磁碟區,使用 mount -o context而不是遞迴檔案重新標籤。在相同節點上的特權和非特權 Pod 之間共用磁碟區可能會導致問題。未來的 Kubernetes 版本可能會帶來與此功能相關的其他重大變更。

  • 依預設啟用嚴格 IP/CIDR 驗證:功能StrictIPCIDRValidation閘道現在預設為針對內建 API 類型啟用。API 欄位不再接受具有外部前導零 (例如010.000.000.005,而非 10.0.0.5) 的 IP 或 CIDR 值,或具有不明確語意 (例如,192.168.0.5/24而非 192.168.0.0/24) 的 CIDR 值。現有的儲存物件會透過驗證追逐保留,但新建立和更新將被拒絕。這不適用於自訂資源類型。

    • 必要動作:檢閱資訊清單、Helm Chart 和包含前導零或非正式 CIDR 表示法的 IP 地址自動化。升級之前,請更新它們以使用正式格式。如需詳細資訊,請參閱 KEP-4858

  • User Namespaces (Stable):User Namespaces 透過將容器的根使用者映射到主機上的非特殊權限使用者來提供defense-in-depth,確保容器細分不會授予節點的管理能力。

  • 資源運作狀態 (Beta):以 Pod 狀態報告每個裝置的運作狀態,讓操作員判斷當機迴圈是由於運作狀態不佳或不明的裝置狀態,而非應用程式問題。適用於裝置外掛程式和動態資源配置。

    • 如需詳細資訊,請參閱 KEP-4680

  • 動態資源配置功能 (Beta):數個 DRA 功能現在預設為啟用:可分割裝置和消耗容量可更精細地共用 GPUs 等硬體,以及裝置繫結條件可在排程之前進行徹底的裝置準備度檢查。

  • 棄用通知 — 服務 externalIPs:服務中的 externalIPs 欄位.spec已在 Kubernetes 1.36 中棄用。建立或更新使用此欄位的 服務時,您會看到棄用警告。Kubernetes 1.43 計劃完全移除。使用 的客戶externalIPs應遷移至 LoadBalancer Services、NodePort 或 Gateway API。如需詳細資訊,請參閱 KEP-5707

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

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