-
Improvement
-
Resolution: Unresolved
-
Normal
-
None
Host processes are managed using systemd on our hosts, but Docker processes are managed using a separate cgroup driver by default (named "cgroupfs") . Using the same cgroup driver as systemd would allow to balance I/O weights between processes ran in containers and other processes ran directly in host system.
It seems to require restarting the Docker daemon, so it might require everyone to be around when doing that and possibly some downtime announcement.
References:
- Documentation for block I/O weights in Docker containers: https://docs.docker.com/engine/reference/run/#block-io-bandwidth-blkio-constraint
- Rationale for using "systemd" cgroup driver in Kubernetes: https://kubernetes.io/docs/setup/production-environment/container-runtimes/#cgroup-drivers
- How to change cgroup driver in Docker: https://www.devopsschool.com/blog/how-to-change-the-cgroup-driver-from-cgroupfs-systemd-in-docker/