K0s 1.34 發佈 - News Detail

k0s 1.34 版本現已發佈,本次更新在 Windows 節點支持、IPv6 單棧自動化(Alpha)和構建可復現性方面帶來了重要改進。該版本繼續致力於打造一個適用於生產環境的、簡潔且一致的 Kubernetes 發行版,優化 Linux 和 Windows 環境的使用體驗。

Kubernetes 1.34 新特性

上游 Kubernetes 1.34 提升了穩定性和可觀測性,主要亮點包括:

  • Pod 生命週期改進:Windows 節點的優雅關閉處理,改進的 Job Pod 替換策略,以及更細粒度的容器重啓規則。
  • 動態資源分配(DRA)GA:結構化分配 GPU、TPU、網卡等設備,增強監控和優先級管理。
  • 網絡增強:Windows kube-proxy 支持直接服務器返回(DSR),降低負載均衡器延遲和負載。
  • 卷和存儲更新:VolumeAttributesClass GA 和卷擴容失敗恢復功能,提高靈活性和可靠性。
  • Pod 級資源管理(Beta):定義跨多個容器共享的 Pod 總資源,簡化調度。
  • 容器生命週期鈎子:PreStop/PostStart 鈎子支持穩定的 Sleep 操作,改善生命週期管理。
  • 流和緩存改進:流式 LIST 響應和穩健的 watch 緩存初始化,減輕內存壓力,提高 API 服務器性能。
  • 安全增強:Pod 證書用於 mTLS 認證(Alpha)、變異准入策略(Beta)和更嚴格的匿名請求控制。

k0s 1.34 新特性

本次發佈聚焦四大領域:IPv6 網絡、Windows 穩定性與集成、功能門控和開發者自動化。

Windows 節點改進

雖然 Windows 支持尚未完全進入生產,但本版本中持續完善了節點生命週期、進程管理和集羣一致性:

  • 優化 kubelet 進程在節點關閉和重啓時的清理,防止遺留進程。
  • 增強 Windows 服務停止處理,確保 kubelet 在 SIGTERM 等事件下正常退出。
  • 新增針對 Windows 工作節點配置的語義校驗,防止無效配置生效。
  • 修復工作運行時目錄初始化中的路徑解析問題,確保 Windows 主機設置穩定。
  • 改進 Windows 容器的 CRI 運行時連接管理,減少啓動失敗。
  • 驗證混合 Linux/Windows 集羣的雙棧網絡配置。
  • 確保 Calico Windows 組件兼容新的 IPv6 和安全上下文變更。
  • 優化基於 PowerShell 的代理二進制及運行時依賴打包腳本。
  • 加強跨平台符合性測試,確保 Linux 與 Windows 節點行為一致。

這些改進顯著提升了 Windows 工作節點的穩定性,為混合集羣運行打下堅實基礎。

IPv6 單棧支持

k0s 1.34 引入了 IPv6 單棧集羣的 Alpha 支持,適合現代或受限環境部署。此前 k0s 僅支持 IPv4 單棧和 IPv4/IPv6 雙棧。IPv6 單棧下,k0s 的所有功能均已實現,包括 Calico 和 kube-router 支持、NLLB、CPLB 等。

功能門控

新增 k0s Feature Gates,允許在不改代碼的情況下選擇性開啓實驗性功能,便於新功能的控制測試和驗證。目前唯一的功能門控是針對 IPv6 單棧。

核心組件更新

  • Kubernetes 升級至 v1.34.1
  • CoreDNS 更新至 v1.13.1
  • etcd 升級至 v3.6.5
  • Helm 更新至 v3.19.0
  • Calico 升級至 v3.29.6
  • Kube-router 升級至 v2.6.1
  • Go 運行時更新至 v1.24.8
  • containerd 升級至 v1.7.28
  • runc 更新至 v1.3.2,提升安全性和性能

CLI 和配置改進

  • k0s kubeconfig create 新增 --context-name 標誌,支持多集羣更靈活配置。
  • 加強 Linux 和 Windows 工作節點配置驗證。
  • 優化集羣初始化中的錯誤報告和鎖機制。

 詳情可查看:https://blog.k0sproject.io/posts/k0s-1.34-released/