Запускаем демон конфигурации сгрупп:
После этого будут созданы группы:
Настравиаем его:
/etc/init.d/cgconfig start
chkconfig cgconfig on
После этого будут созданы группы:
cat /proc/mounts
rootfs / rootfs rw 0 0
/proc /proc proc rw,relatime 0 0
/sys /sys sysfs rw,relatime 0 0
udev /dev devtmpfs rw,relatime,size=8125048k,nr_inodes=2031262,mode=755 0 0
devpts /dev/pts devpts rw,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /dev/shm tmpfs rw,relatime 0 0
/dev/mapper/vg_msk3-lv_root / ext4 rw,relatime,barrier=1,data=ordered 0 0
/proc/bus/usb /proc/bus/usb usbfs rw,relatime 0 0
/dev/sdb1 /boot ext4 rw,relatime,barrier=1,data=ordered 0 0
/dev/mapper/vg_msk3-lv_home /home ext4 rw,relatime,barrier=1,data=ordered 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0
/dev/sdc /ssd ext3 rw,relatime,errors=continue,barrier=1,data=ordered 0 0
cgroup /cgroup/cpuset cgroup rw,relatime,cpuset 0 0
cgroup /cgroup/cpu cgroup rw,relatime,cpu 0 0
cgroup /cgroup/cpuacct cgroup rw,relatime,cpuacct 0 0
cgroup /cgroup/memory cgroup rw,relatime,memory 0 0
cgroup /cgroup/devices cgroup rw,relatime,devices 0 0
cgroup /cgroup/freezer cgroup rw,relatime,freezer 0 0
cgroup /cgroup/net_cls cgroup rw,relatime,net_cls 0 0
cgroup /cgroup/blkio cgroup rw,relatime,blkio 0 0
Настравиаем его:
vi /etc/cgrules.confВписываем в начало5
server-689-5106-ssh cpu client1
Включаем демон автораспихивания процессов по сгруппам на основании имени юзера:
Создаем сгруппу, куда будут помещены процессы:
Смотрим, чтобы процессы попали в группу:
Все!
chkconfig cgred on
/etc/init.d/cgred start
Создаем сгруппу, куда будут помещены процессы:
mkdir /cgroup/cpu/client1/Настроим параметр приоритета процессора:
echo 512 > /cgroup/cpu/client1/cpu.sharesПосле этого, пробуем войти данным пользователем и все его процессы автоматически влетят в группу client1.
Смотрим, чтобы процессы попали в группу:
cat /cgroup/cpu/client1/tasks
18642
18643
18660
18671
18672
18674
18677
Все!
"echo 512 > /cgroup/cpu/client1/cpu.shares"
ReplyDeleteПаш, это проще в cgconfig.conf записывать (скриптом) и уж потом рестартовать cgconfig и cgred. Например так:
group users/user1374 {
cpu {
cpu.shares = 60;
}
}
group users/user1375 {
cpu {
cpu.shares = 500;
}
}
group users/user1376 {
cpu {
cpu.shares = 1500;
}
}
Ого, круто! Не знал, что они настолько продвинулись.
ReplyDelete