Bug #17244
Updated by Tom Clegg over 1 year 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
We can remove the crunchstat command-line program and debian package rather than update it.