Почему использование cgroup не может ограничить ресурсы процессора? - PullRequest
1 голос
/ 12 апреля 2019

Я хочу использовать cgroup, чтобы ограничить ресурс процессора для каждой группы в CentOS 7. Я добавил две группы в ОС, у одной группы есть веб-сайт - web2, у другой группы есть веб-сайт - web3, я следую этой командной строке типа ссылки шаг за шагом.

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/resource_management_guide/ch-using_control_groups

1

yum install libcgroup-tools

2.В файле /etc/cgconfig.conf

group client0 {
        cpu {
                cpu.shares="250";
        }
        cpuacct {
                cpuacct.usage="0";
        }
        memory {
                memory.limit_in_bytes="2G";
                memory.memsw.limit_in_bytes="3G";
        }
}

group client1 {
        cpu {
                cpu.shares="500";
        }
        cpuacct {
                cpuacct.usage="0";
        }
        memory {
                memory.limit_in_bytes="4G";
                memory.memsw.limit_in_bytes="6G";
        }
}
  1. в файле /etc/cgrules.conf
@client0 cpu,cpuacct,memory     client0
@client1 cpu,cpuacct,memory     client1

4

service cgconfig restart; service cgred restart

5.в файле cpu.sh

x=0
while [ True ];do
    x=$x+1
done;

Я тестирую его для использования этой двух командной строки:

sudo -u web2 sh /tmp/cpu.sh &
sudo -u web3 sh /tmp/cpu.sh & 

Это сработало, один в два раза больше другого. Но с другой стороны, я написал код цикла для использования ресурсов процессора и зашел на два веб-сайта в браузере, затем я захожу в ОС и набираю команду - top, я вижу две строки, строка команды - php-fpm, значение строки% cpu это то же самое, это неверно, должно быть одно в два раза больше другого. Что не так?

...