一、cgroup v2 有哪些优势?
- Linux 中有两个 cgroup 版本:cgroup v1 和 cgroup v2。cgroup v2 是新一代的 cgroup API。Kubernetes 自 v1.25 起 cgroup2 特性正式 stable。
- cgroup v2 提供了一个具有增强资源管理能力的统一控制系统,cgroup v2 对 cgroup v1 进行了多项改进,例如:
-
- API 中单个统一的层次结构设计;
-
- 更安全的子树委派给容器;
-
- 更新的功能特性, 例如压力阻塞信息(Pressure Stall Information,PSI);
-
- 跨多个资源的增强资源分配管理和隔离;
-
- 统一核算不同类型的内存分配(网络内存、内核内存等);
-
- 考虑非即时资源变化,例如页面缓存回写;
- 一些 Kubernetes 特性专门使用 cgroup v2 来增强资源管理和隔离。例如,MemoryQoS 特性改进了内存 QoS 并依赖于 cgro