diff options
author | Dmitry Guryanov <dguryanov@parallels.com> | 2015-02-02 20:12:04 +0300 |
---|---|---|
committer | Alexander Burluka <aburluka@parallels.com> | 2015-02-05 12:12:01 -0500 |
commit | 105c78efbe6e483c3d781adab52cd6bb0cb4a4f0 (patch) | |
tree | 5e1b3d0930ec6748ef56707d4f9c1660d74b1b0a /etc | |
parent | 5e1d37489d5d936f3222d6f122672b1dcbf5c1fb (diff) | |
download | nova-105c78efbe6e483c3d781adab52cd6bb0cb4a4f0.tar.gz |
libvirt: add ploop disks format support
The way how PCS works with disks slightly differs from
how qemu does. In PCS each disk has metadata, stored in
a separate xml file. The most important thing in this
metadata is paths and types of base image and deltas.
The name of xml file is fixed (DiskDescriptor.xml) and
usually all images are stored in the same directory.
Images are being downloaded from glance to cache in a form
of files. So imagecache will work in the same way as with Raw
image type.
Here is and example of libvirt's disk config:
<disk type='file' device='disk'>
<driver type='ploop'/>
<source file='/path/to/dir/with/xml'/>
<target dev='sda' bus='sata'/>
</disk>
Since you need to provide a directory with xml file to
libvirt, separate class is needed imagebackend.py for
working with such images.
This patch introduces class Ploop which are similar to Raw,
it copies base image to the instance's dir and prepares it
for starting VM or container from this image.
If force_raw_images is false, then only raw and ploop image
types allowed. If force_raw_images is true, then all image
types, which are supported by qemu-img can be used.
Partially implements blueprint pcs-support
Change-Id: I9c2a0da52dbda7d45f749f9d42b2760a0d2e790f
Diffstat (limited to 'etc')
-rw-r--r-- | etc/nova/rootwrap.d/compute.filters | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/etc/nova/rootwrap.d/compute.filters b/etc/nova/rootwrap.d/compute.filters index 1e0c029af2..4d35d4fb03 100644 --- a/etc/nova/rootwrap.d/compute.filters +++ b/etc/nova/rootwrap.d/compute.filters @@ -227,3 +227,5 @@ cp: CommandFilter, cp, root # nova/virt/xenapi/vm_utils.py: sync: CommandFilter, sync, root +# nova/virt/libvirt/imagebackend.py: +ploop: CommandFilter, ploop, root |