Project

General

Profile

Bug #17244

Updated by Ward Vandewege over 3 years ago

Reading 

 https://docs.docker.com/config/containers/runmetrics/ 

 > Running Docker on cgroup v2 
 >  
 > Docker supports cgroup v2 experimentally since Docker 20.10. Running Docker on cgroup v2 also requires the following conditions to be satisfied: 
 >  
 > containerd: v1.4 or later 
 > runc: v1.0.0-rc91 or later 
 > Kernel: v4.15 or later (v5.2 or later is recommended) 
 >  
 > Note that the cgroup v2 mode behaves slightly different from the cgroup v1 mode: 
 >  
 > The default cgroup driver (dockerd --exec-opt native.cgroupdriver) is “systemd” on v2, “cgroupfs” on v1. 
 > The default cgroup namespace mode (docker run --cgroupns) is “private” on v2, “host” on v1. 
 > The docker run flags --oom-kill-disable and --kernel-memory are discarded on v2. 
 >  

 With all this changes, we have to make sure that: 

 # We can run a distro that has cgroup v2 by default (As in Fedora 2020) or kernel parameters that boot up with cgroups v2 enabled in systemd (kernel param systemd.unified_cgroup_hierarchy=1) and docker version >= 2020.04 
 # We can guide the admin to upgrade to cgroup v2 and have a test case easy to check that arvados will run 

 The last point is important because the current error is kindof cryptic: 

 <pre> 
 applying cgroup configuration for process caused: cannot enter cgroupv2 "/sys/fs/cgroup/docker" with domain controllers 
 </pre> 

 There also cryptic messages with a cgroupsv2 enabled host and Docker 19.03.13 
 <pre> 
 Status: Downloaded newer image for hello-world:latest 
 docker: Error response from daemon: cgroups: cgroup mountpoint does not exist: unknown. 
 ERRO[0005] error waiting for container: context canceled 
 </pre>  

 https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v2.html  

Back