/etc/cgconfig.conf
...
group memlimit {
memory {
memory.limit_in_bytes = 8589934592;
}
}
group cpulimit {
cpu {
cpu.shares = 1024;
}
}
/etc/cgrules.conf:
@gatewayer memory memlimit/
@gatewayer cpu cpulimit/
我已经通过命令重新启动了服务:
service cgconfig restart
service cgred restart
当我从属于 group 的用户执行我的 python 脚本后gatewayer
,我可以在执行时看到 PID cat /cgroup/memory/memlimit/cgroup.procs
,并且限制已应用于正在运行的进程。但是,对 cpu 的限制不会生效,并且cat /cgroup/cpu/cpulimit/cgroup.procs
不会按预期打印 PID。
我尝试检查该进程,结果是相同的结果,内存受 cgroup 限制,而 cpu 则不受限制:
$ cat /proc/18113/cgroup
174:blkio:/
173:net_cls:/
172:freezer:/
171:devices:/
170:memory:/memlimit
169:cpuacct:/
168:cpu:/
167:cpuset:/
有人可以给我一些帮助吗?非常感谢。