Разовый cgroup в legacy v1 cgroups
Разовый лимит через libcgroup v1. note: в единой иерархии v2 используйте systemd-run --scope -p
cgcreate -g memory:/<name>; cgset -r memory.limit_in_bytes=512M <name>; cgexec -g memory:/<name> <command>
more cgroups
all 8 commands →
Учёт памяти сервиса (cgroup v2)
cat /sys/fs/cgroup/system.slice/<name>.service/memory.current /sys/fs/cgroup/system.slice/<name>.service/memory.max
Память: задержки по PSI
cat /sys/fs/cgroup/system.slice/<name>.service/memory.pressure
Статистика троттлинга CPU (cgroup v2)
grep -E 'nr_throttled|throttled_usec' /sys/fs/cgroup/system.slice/<name>.service/cpu.stat
Чтение и установка квоты CPU (cgroup v2)
cat /sys/fs/cgroup/system.slice/<name>.service/cpu.max # "max 100000" = unlimited; "50000 100000" = 0.5 core
Давление и статистика IO по устройствам
cat /sys/fs/cgroup/system.slice/<name>.service/io.pressure /sys/fs/cgroup/system.slice/<name>.service/io.stat