Kubernetes v1.35 搶先看

新聞
HongKong
13
10:16 AM · Nov 27 ,2025

隨着 Kubernetes v1.35 發佈臨近,Kubernetes 項目持續發展。部分功能可能被廢棄、移除或替換,以提升項目整體健康度。本文介紹了 v1.35 計劃中的變更,發佈團隊認為你應當瞭解這些內容,以保證 Kubernetes 集羣的平穩運行,並及時掌握最新進展。以下內容基於當前 v1.35 狀態,最終版本可能有所調整。

Kubernetes v1.35 的廢棄與移除

cgroup v1 支持

Linux 節點上,容器運行時通常依賴 cgroup(控制組)。Kubernetes 自 v1.25 起已對 cgroup v2 提供穩定支持,作為對原始 cgroup v1 的替代。cgroup v1 曾是最初的資源控制機制,但存在已知不一致和限制。支持 cgroup v2 後,實現了統一的控制組層級,提升資源隔離,併為現代特性奠定基礎,故舊版 cgroup v1 支持將被移除。

cgroup v1 支持移除只會影響運行在不支持 cgroup v2 的舊 Linux 發行版節點,相關節點上的 kubelet 將無法啓動。管理員需將節點遷移到啓用 cgroup v2 的系統。關於兼容性要求的詳細信息將在 v1.35 發佈後不久通過博客發佈。

kube-proxy 中 ipvs 模式的廢棄

Kubernetes 很早以前在 kube-proxy 中實現了 ipvs 模式,因其負載均衡性能優於 iptables 模式而被採用。但由於技術複雜性和需求分歧,維護 ipvs 與其他模式的功能一致性變得困難,導致技術債務增加,且不利於支持新網絡功能。

因此,Kubernetes 計劃在 v1.35 中廢棄 kube-proxy 的 ipvs 模式,簡化代碼庫。對於 Linux 節點,推薦使用的 kube-proxy 模式已是 nftables。

Kubernetes 廢棄 containerd v1.x 支持

雖然 v1.35 仍支持 containerd 1.7 及其他 LTS 版本,但因自動 cgroup 驅動檢測機制,SIG Node 社區已正式確定 containerd v1.x 的最終支持時間表。v1.35 是最後支持該版本的 Kubernetes 版本(對應 containerd 1.7 EOL)。

這是最後警告:如果你還使用 containerd 1.x,必須在升級 Kubernetes 到下一個版本前切換到 2.0 或更高版本。可通過監控 kubelet_cri_losing_support 指標,檢測集羣中是否有節點使用即將不支持的 containerd 版本。

Kubernetes v1.35 重點新特性

以下是部分預計包含於 v1.35 的新特性,內容非最終確定,可能會變動。

節點聲明特性

調度 Pod 時,Kubernetes 通過節點標籤、污點和容忍匹配工作負載需求與節點能力。但升級時控制平面與節點版本不一致,導致節點特性兼容性難管,可能讓 Pod 被調度到不支持所需特性的節點,導致運行失敗。

節點聲明特性框架為節點聲明支持的 Kubernetes 功能提供標準機制。啓用該 alpha 功能後,節點通過 .status.declaredFeatures 字段向控制平面報告支持的功能,調度器、准入控制器及第三方組件可基於此信息進行調度和 API 驗證,確保 Pod 僅調度到兼容節點。

該機制減少手動標籤管理,提升調度準確率,且可與 Cluster Autoscaler 集成,實現更智能的擴容決策。特性聲明與 Kubernetes 功能開關綁定,方便安全推廣和清理。

計劃在 v1.35 作為 alpha 發佈。

Pod 資源原地更新

Pod 資源原地更新功能畢業為 GA,允許用户調整 Pod 的 CPU 和內存資源,無需重啓 Pod 或容器。之前這類調整需重建 Pod,影響有狀態或批處理應用穩定性。

CRI 也有改進,Windows 及未來運行時支持 UpdateContainerResources API,ContainerStatus 可報告實時資源配置。整體提升 Kubernetes 的彈性擴縮容能力,減少中斷。該功能自 v1.27 alpha 起步,v1.33 升級為 beta,v1.35 計劃穩定。

Pod 證書支持

微服務間通常需要強身份認證,實現基於 mTLS 的安全通信。Kubernetes 提供的 Service Account Token 只適用於 API 認證,非通用工作負載身份。
之前需依賴 SPIFFE/SPIRE 或 cert-manager 等外部項目管理證書。KEP-4317 設計了原生 Pod 證書支持,允許 kubelet 通過投影卷自動請求並掛載短期唯一證書,簡化服務網格和零信任網絡策略的部署。

該功能在 v1.34 作為 alpha 發佈,v1.35 目標升級為 beta。

污點的數值比較支持

Kubernetes 擴展污點和容忍機制,新增數值比較操作符,如 Gt(大於)、Lt(小於)。

此前容忍只支持等於或存在匹配,不適合數值屬性(如可靠性 SLA)。新支持後,Pod 可容忍滿足特定數值閾值的節點,例如要求 SLA 污點值大於 950。

該機制比節點親和性更強大,支持 NoExecute 效果,節點數值低於閾值時自動驅逐 Pod。

用户命名空間支持

Pod 內可用 securityContext 降權,但容器內進程通常仍以 root(UID 0)運行,且此 UID 映射到宿主機 root。此設計存在容器逃逸風險。

KEP-127 引入 Linux 用户命名空間支持,動態將容器 root 映射為宿主機上的非特權高 UID。容器內仍擁有 root 權限,但宿主機上是普通用户,極大提升安全性。

該功能自 v1.25 alpha 起,v1.30 beta,持續完善中,為未來“無 root”容器奠定基礎。

支持將 OCI 鏡像掛載為卷

Pod 配置時常需攜帶數據、二進制或配置文件。以前多將數據打包進鏡像,或用 init 容器下載解壓到 emptyDir。

Kubernetes v1.31 增加 image 卷類型支持,允許 Pod 直接從 OCI 鏡像倉庫拉取並解包數據卷,解耦數據與鏡像,簡化流程。該卷類型自 v1.33 進入 beta,v1.35 可能默認啓用。

更多詳情可查看:https://kubernetes.io/blog/2025/11/26/kubernetes-v1-35-sneak-peek/

user avatar
0 位用戶收藏了這個故事!
收藏

發佈 評論

Some HTML is okay.