Hello, I'm running Debian Sid with libvirt/qemu/kvm packages from experimental: $ qemu --version QEMU emulator version 0.13.0 (Debian 0.13.0+dfsg-2), Copyright (c) 2003-2008 Fabrice Bellard $ kvm --version QEMU emulator version 0.13.0 (qemu-kvm-0.13.0 Debian 0.13.0+dfsg-2), Copyright (c) 2003-2008 Fabrice Bellard $ libvirtd --version libvirtd (libvirt) 0.8.6 /etc/libvirt/qemu.conf cgroup_controllers = [ "cpu", "devices" ] cgroup_device_acl = [ "/dev/null", "/dev/full", "/dev/zero", "/dev/random", "/dev/urandom", "/dev/ptmx", "/dev/kvm", "/dev/kqemu", "/dev/rtc", "/dev/hpet", "/dev/net/tun", ] /etc/cgconfig.conf mount { cpu = /dev/cgroup/cpu; cpuacct = /dev/cgroup/cpuacct; devices = /dev/cgroup/devices; # memory = /dev/cgroup/memory; blkio = /dev/cgroup/blkio; } When I'm running virsh, and want to change cpu shares I receive an error virsh # schedinfo --set cpu.shares=2048 test Scheduler : posix error: internal error cannot find cgroup for domain test Really I didn't have any group test in $ ls /dev/cgroup/cpu/sysdefault/libvirt/qemu/ cgroup.clone_children cgroup.event_control cgroup.procs cpu.shares notify_on_release tasks It happens if I run libvirt as usual user, how can I grant access to create cgroup to ordinary user? -- Nikita A Menkovich JID: menkovich at gmail.com
On Sun, Jan 23, 2011 at 05:38:33PM +0300, Nikita A Menkovich wrote:> Hello, > > I'm running Debian Sid with libvirt/qemu/kvm packages from experimental: > $ qemu --version > QEMU emulator version 0.13.0 (Debian 0.13.0+dfsg-2), Copyright (c) > 2003-2008 Fabrice Bellard > $ kvm --version > QEMU emulator version 0.13.0 (qemu-kvm-0.13.0 Debian 0.13.0+dfsg-2), > Copyright (c) 2003-2008 Fabrice Bellard > $ libvirtd --version > libvirtd (libvirt) 0.8.6 > > /etc/libvirt/qemu.conf > cgroup_controllers = [ "cpu", "devices" ] > cgroup_device_acl = [ > "/dev/null", "/dev/full", "/dev/zero", > "/dev/random", "/dev/urandom", > "/dev/ptmx", "/dev/kvm", "/dev/kqemu", > "/dev/rtc", "/dev/hpet", "/dev/net/tun", > ] > /etc/cgconfig.conf > mount { > cpu = /dev/cgroup/cpu; > cpuacct = /dev/cgroup/cpuacct; > devices = /dev/cgroup/devices; > # memory = /dev/cgroup/memory; > blkio = /dev/cgroup/blkio; > } > When I'm running virsh, and want to change cpu shares I receive an error > virsh # schedinfo --set cpu.shares=2048 test > Scheduler : posix > error: internal error cannot find cgroup for domain test > Really I didn't have any group test in > $ ls /dev/cgroup/cpu/sysdefault/libvirt/qemu/ > cgroup.clone_children cgroup.event_control cgroup.procs cpu.shares > notify_on_release tasks > > It happens if I run libvirt as usual user, how can I grant access to > create cgroup to ordinary user?When run libvirt will create cgroups under whichever group it was in when it was started. Out of the box this will only work for libvirt run as root, because the 'sysdefault' cgroup is readonly for non-root users. You need to configure things such that your user login is given a dedicated cgroup + ownership on that cgroup to let it do 'mkdir' while non-root. Daniel
Hi Should libvirtd be in a cgroup hierarchy rooted at /dev/cgroup or it can be rooted also at /cgroup i,e can /etc/cgconfig.conf look like his (without the /dev) : mount { cpuset = /cgroup/cpuset; cpu = /cgroup/cpu; cpuacct = /cgroup/cpuacct; memory = /cgroup/memory; devices = /cgroup/devices; freezer = /cgroup/freezer; net_cls = /cgroup/net_cls; ns = /cgroup/ns; blkio = /cgroup/blkio; } thanks Zvi Dubitzky Email:dubi at il.ibm.com
Seemingly Similar Threads
- Re: cgroup error starting domains
- How to change libvirt / cgroup interaction?
- RHEL6 cgroup error after a few days of uptime
- libvirt with lxc: internal error The 'cpuacct', 'devices' & 'memory' cgroups controllers must be mounted
- Question about putting vm in blkio cgroup