[libvirt] PATCH: 0/3: Run QEMU guests within a CGroup

Daniel P. Berrange berrange at redhat.com
Fri Feb 27 10:48:13 UTC 2009


On Thu, Feb 26, 2009 at 10:40:54PM +0000, David Lutterkort wrote:
> On Thu, 2009-02-26 at 16:36 +0000, Daniel P. Berrange wrote:
> > Recent Linux kernels have a new concept of 'CGroups' which is a way to
> > group tasks on the system and apply policy to them as a whole. We already
> > use this in the LXC container driver, to control total memory usage of
> > things runing within a container.
> > 
> > This patch series is a proof of concept to make use of CGroups in the
> > QEMU driver. The idea is that we have a 3 level cgroup hierarchy
> > 
> >  - Top level; contains the libvirtd daemon itself
> >  - 2nd level: one per libvirt driver, but dos not contain any
> >               processes.
> >  - 3rd level: one per guest VM. Contains the QEMU process
> 
> Why the separate group for the driver ? Do you see partitioning of
> resources by driver as an important requirement ?

It is mostly a namespacing issue. The per-VM group names on the filesystem
are based off the VM name. VM names are only unique within scope of a
driver. Since both LXC and QEMU drivers use CGroups, we need to make
sure they have separate namespace in cgroups. A per-driver cgroup solves
this nicely.


Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list