Kubernetes 1.29:PodReadyToStartContainers 條件移至 Beta 階段

隨著 Kubernetes 1.29 的最新發布,預設情況下 PodReadyToStartContainers 狀況 已可用。 kubelet 在 Pod 的整個生命週期中管理該狀況的值,位於 Pod 的狀態欄位中。 kubelet 將使用 PodReadyToStartContainers 狀況,從容器運行時的 Pod 沙箱建立和網路設定的角度,準確地呈現 Pod 的初始化狀態。

此功能背後的動機是什麼?

叢集管理員沒有清晰且易於存取的方式來檢視 Pod 沙箱建立和初始化的完成情況。 從 1.28 版本開始,Pods 中的 Initialized 狀況追蹤 init 容器的執行情況。 然而,它在準確反映叢集中所有 Pod 的沙箱建立完成情況和容器啟動就緒狀態方面存在限制。 這種區別在多租戶叢集中尤其重要,在多租戶叢集中,租戶擁有 Pod 規格(包括 init 容器集),而叢集管理員管理儲存外掛程式、網路外掛程式和容器運行時處理常式。 因此,需要一種改進的機制,為叢集管理員提供清晰且全面的 Pod 沙箱建立完成情況和容器就緒狀態的檢視。

好處是什麼?

  1. 改善的可見性:叢集管理員可以更清晰、更全面地檢視 Pod 沙箱建立完成情況和容器就緒狀態。 這種增強的可見性使他們能夠做出更明智的決策,並更有效地排除問題。
  2. 指標收集和監控:監控服務可以利用與 PodReadyToStartContainers 狀況相關聯的欄位來報告沙箱建立狀態和延遲。 可以收集每個 Pod 基數的指標,或根據 Pod 的各種屬性(例如 volumesruntimeClassName、CNI 和 IPAM 外掛程式或任意標籤和註釋的自訂註釋,以及 PersistentVolumeClaims 的 storageClassName)進行彙總。 這實現了對整個叢集中 Pod 就緒狀態的全面監控和分析。
  3. 增強的疑難排解:透過更準確地呈現 Pod 沙箱建立和容器就緒狀態,叢集管理員可以快速識別和解決初始化過程中可能出現的任何問題。 這有助於改善疑難排解能力並減少停機時間。

下一步是什麼?

由於回饋和採用,Kubernetes 團隊在 1.29 版本中將 PodReadyToStartContainersCondition 提升為 Beta 版。 您的意見將有助於確定此狀況是否繼續向前推進以升級到 GA 版,因此請提交有關此功能的其他回饋!

如何了解更多資訊?

請查看 文件,了解有關 PodReadyToStartContainersCondition 的更多資訊,以及它如何與其他 Pod 狀況相關聯。

如何參與?

此功能由 SIG Node 社群驅動。 請加入我們,與社群聯繫,並分享您關於上述功能及其他方面的想法和回饋。 我們期待您的來信!