[Sysadmins] Не работает cgroup на ядре с OpenVZ
Васюк Максим Анатольевич
vaksim на gmail.com
Пт Дек 4 16:56:50 MSK 2015
Привет, Всем!
Есть у меня Хост с KVM на t7
# uname -r
3.10.32-std-def-alt1
# rpm -qa | grep qemu
qemu-aux-1.4.0-alt1.1
ipxe-roms-qemu-1.0.0-alt2.git174df77
qemu-common-1.4.0-alt1.1
libvirt-qemu-common-1.0.4-alt2
qemu-img-1.4.0-alt1.1
libvirt-daemon-driver-qemu-1.0.4-alt2
qemu-system-1.4.0-alt1.1
# findmnt -t cgroup
TARGET SOURCE FSTYPE OPTIONS
/sys/fs/cgroup/cpu cgroup cgroup rw,relatime,cpu
/sys/fs/cgroup/blkio cgroup cgroup rw,relatime,blkio
В конфиге гостя было выставлено:
<vcpu placement='static' cpuset='1'>1</vcpu>
И оно срабатывало.
Появился второй Хост с KVM и OpenVZ на t7
# uname -r
2.6.32-ovz-el-alt137
# rpm -qa | grep qemu
libvirt-qemu-common-1.0.4-alt2
qemu-aux-1.4.0-alt1.1
qemu-common-1.4.0-alt1.1
libvirt-daemon-driver-qemu-1.0.4-alt2
qemu-system-1.4.0-alt1.1
qemu-img-1.4.0-alt1.1
ipxe-roms-qemu-1.0.0-alt2.git174df77
# findmnt -t cgroup
TARGET SOURCE FSTYPE OPTIONS
/proc/vz/beancounter beancounter cgroup rw,relatime,blkio,name=beancounter
/proc/vz/container container cgroup
rw,relatime,freezer,devices,name=container
/proc/vz/fairsched fairsched cgroup
rw,relatime,cpuacct,cpu,cpuset,name=fairsched
При переезде гостя с хоста где был один KVM на хост где KVM и OpenVZ при
загрузке гостя сразу заругалось:
# virsh -c qemu:///system start tw1
ошибка: Не удалось запустить домен tw1
ошибка: Unable to set cpuset.cpus: Permission denied
Разбираться было некогда, поэтому просто убрал cpuset='1' из конфига.
Сейчас хост нагрузили и требуется настройка лимитов.
Вернул обратно cpuset='1' в конфиг.
При старте гостя в лог libvirt валится:
2015-12-04 13:36:30.517+0000: 5838: warning : qemuSetupCgroup:406 :
Could not autoset a RSS limit for domain tw1
2015-12-04 13:36:31.506+0000: 5838: error :
qemuSetupCgroupEmulatorPin:546 : Unable to set cpuset.cpus: Permission
denied
2015-12-04 13:36:31.506+0000: 5838: error :
virCgroupRemoveRecursively:732 : Unable to remove
/proc/vz/fairsched/0/libvirt/qemu/tw1/vcp
-------------------
Тут еще несколько аналогичных строк
-------------------
2015-12-04 13:36:31.506+0000: 5838: error :
virCgroupRemoveRecursively:732 : Unable to remove
/proc/vz/beancounter/0/libvirt/qemu/tw1/
Убираю параметр, стартую гостя, в логе осталось только:
2015-12-04 13:44:12.065+0000: 5837: warning : qemuSetupCgroup:406 :
Could not autoset a RSS limit for domain tw1
Но виртуалка грузится и работает.
В /proc/vz/fairsched/0/libvirt/qemu/ автоматом создался каталог tw1.
Пробую руками:
# echo 3 > /proc/vz/fairsched/0/libvirt/qemu/tw1/cpuset.cpus
bash: echo: ошибка записи: Отказано в доступе
# ls -l cpuset.cpus
-rw-r--r-- 1 root root 0 дек 4 19:47 cpuset.cpus
--
С уважением,
Васюк Максим
Подробная информация о списке рассылки Sysadmins