cri-resource-manager icon indicating copy to clipboard operation
cri-resource-manager copied to clipboard

Implement autodetection of cgroupv2 and proper container resource control using cgroupv2.

Open klihub opened this issue 3 years ago • 0 comments

Describe the bug

cri-resmgr fails to properly adjust resources in container creation/update requests, if the node is using cgroup v2.

Expected behavior

cri-resmgr autodetects if cgroup v2 is in use and properly adjusts itself to control resources using entries in the unified cgroupv2 CRI resource field.

To Reproduce

  1. Enable a cgroup v2 on a node
  2. Configure kubelet using cri-resmgr as the CRI runtime, and for instance topology-aware policy
  3. Create a burstable or a guaranteed container.
  4. Observe the logs about where/to which CPUs cri-resmgr assigns containers.
  5. Observe actual pinning, or to be precise the lack of thereof. Containers are running on all CPUs.

Environment

Should not matter, as long as the kernel, the real runtime and kubelet are all cgroupv2 aware.

klihub avatar Mar 02 '22 20:03 klihub