Kubernetes 1.31:節點 Cgroup 驅動程式的自動組態 (Beta 版)

從歷史上看,為運行新的 Kubernetes 叢集的使用者配置正確的 cgroup 驅動程式一直是一個痛點。在 Linux 系統上,有兩個不同的 cgroup 驅動程式:cgroupfssystemd。過去,kubelet 和 CRI 實作(如 CRI-O 或 containerd)都需要配置為使用相同的 cgroup 驅動程式,否則 kubelet 將會退出並顯示錯誤。這對許多叢集管理員來說是一個頭痛的問題。但是,隧道盡頭已經出現曙光!

自動 cgroup 驅動程式偵測

在 v1.28.0 中,SIG Node 社群引入了功能閘道 KubeletCgroupDriverFromCRI,指示 kubelet 詢問 CRI 實作要使用哪個 cgroup 驅動程式。在我們等待主要兩個 CRI 實作 (containerd 和 CRI-O) 支援的同時,Kubernetes 發生了幾個小版本發布,但從 v1.31.0 開始,此功能現在已進入 Beta 階段!

除了設定功能閘道之外,叢集管理員還需要確保他們的 CRI 實作版本夠新

  • containerd:在 v2.0.0 中新增了支援
  • CRI-O:在 v1.28.0 中新增了支援

然後,他們應該確保他們的 CRI 實作配置為他們想要使用的 cgroup_driver。

未來工作

最終,將會移除對 kubelet 的 cgroupDriver 配置欄位的支援,如果 CRI 實作版本不夠新,無法支援此功能,kubelet 將無法啟動。