Kubernetes v1.32:記憶體管理器正式 GA
隨著 Kubernetes 1.32 的發布,記憶體管理器已正式升級為正式發行版 (GA),標誌著在為容器化應用程式實現高效且可預測的記憶體分配的旅程中,邁出了重要的一步。自 Kubernetes v1.22 升級到 Beta 版以來,記憶體管理器已被證明是可靠、穩定且 CPU 管理器 的良好補充功能。
作為 kubelet 工作負載准入過程的一部分,記憶體管理器提供拓撲提示,以優化記憶體分配和對齊。這使使用者能夠在 Guaranteed QoS 類別中為 Pod 分配獨佔記憶體。有關該過程的更多詳細資訊,請參閱記憶體管理器進入 Beta 版的 部落格文章。
自 Beta 版以來引入的大多數變更都是錯誤修復、內部重構和可觀察性改進,例如指標和更好的日誌記錄。
可觀察性改進
作為提高記憶體管理器可觀察性的工作的一部分,已新增新的指標,以提供有關記憶體分配模式的一些統計資訊。
memory_manager_pinning_requests_total - 追蹤 Pod 規範要求記憶體管理器釘住記憶體頁面的次數。
memory_manager_pinning_errors_total - 追蹤 Pod 規範要求記憶體管理器釘住記憶體頁面,但分配失敗的次數。
提高記憶體管理器的可靠性和一致性
kubelet 不保證在重新啟動或重新開機後准入 Pod 時的 Pod 順序。
在某些邊緣情況下,此行為可能會導致記憶體管理器拒絕某些 Pod,而在更極端的情況下,可能會導致 kubelet 在重新啟動時失敗。
先前,Beta 版實作缺少某些檢查和邏輯來防止這些問題。
為了穩定記憶體管理器以達到正式發行版 (GA) 的準備狀態,已對演算法進行了微小但關鍵的改進,從而提高了其穩健性和邊緣情況的處理能力。
未來發展
Topology Manager 的未來,尤其是記憶體管理器,還有更多值得期待。值得注意的是,正在進行的工作正在將 記憶體管理器支援擴展到 Windows,從而在 Windows 作業系統上啟用 CPU 和記憶體親和性。
參與其中
此功能由 SIG Node 社群驅動。請加入我們,與社群聯繫,並分享您對上述功能及其他功能的想法和回饋。我們期待您的來信!