/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/
E eu reiniciei os serviços por meio de comandos:
service cgconfig restart
service cgred restart
Depois de executar meu script python do usuário que pertence ao grupo gatewayer
, pude ver o PID ao executar cat /cgroup/memory/memlimit/cgroup.procs
e o limite foi aplicado no processo em execução. No entanto, o limite na cpu não entra em vigor e cat /cgroup/cpu/cpulimit/cgroup.procs
não imprime o PID como esperado.
Eu tentei verificar o processo, e acabou por ser o mesmo resultado, que a memória é limitada por cgroups enquanto cpu não é:
$ cat /proc/18113/cgroup
174:blkio:/
173:net_cls:/
172:freezer:/
171:devices:/
170:memory:/memlimit
169:cpuacct:/
168:cpu:/
167:cpuset:/
Alguém poderia me ajudar? Muito obrigado.
Tags linux linux-kernel cgroups