3

So as of redhat/centos 7, system resource management got a big overhaul. Before redhat/centos 7, cgroups were run using libcgroup packages and daemons like cgred.

Before, if I wanted to move a process into a cgroup, I could do something like:

cgclassify -g cpu:some_cgroup <pid>

In researching systemd's take on resource management however, I found articles stating that libcgroup packages were deprecated and mostly won't work on redhat/centos 7.

If cgclassify should still work, I'm confused as to how I would use it to move processes because there really arent named cgroups anymore, but rather slices/scopes/services.

Assuming I have a logged in user with uid 1111, that I created some rules for limiting resources for in systemd, the following command doesnt work to move a process to their user slice:

cgclassify -g cpu:user-1111.slice <pid>

Is there a convention I'm missing here?

I've also seen that there is a systemd-run command that almost does what I want, but theres no way to blanketly pass every current environment variable to it, which isnt even something you need to worry about with cgclassify. You can pass environment variables, but to actually pass all variables, you'd literally have to have an entry for each variable passed via the command that lets you pass environment variables.

Anyone have anythought on getting cgclassify to work, or even just an approach change I can take?

Rooster
  • 485
  • 2
  • 7
  • 21

0 Answers0