[libvirt] Quorum block driver libvirt support proposal
Benoît Canet
benoit.canet at irqsave.net
Fri May 16 14:05:43 UTC 2014
The Friday 16 May 2014 à 09:54:43 (-0400), Daniel P. Berrange wrote :
> On Fri, May 16, 2014 at 12:33:04PM +0200, Benoît Canet wrote:
> >
> > Hello list,
> >
> > I want to implement libvirt Quorum support.
> > (https://github.com/qemu/qemu/commit/c88a1de51ab2f26a9a37ffc317249736de8c015c)
> > Quorum is a QEMU RAID like block storage driver.
> > Data are written on n replicas and when a read is done a comparison between the
> > replica read is done. If more than threshold reads are identical the read succeed
> > else it's and error.
> >
> > For example a Quorum with n = 3 and threshold = 2 would be made of three QCOW2
> > backing chains used as identicals replicas. threshold = 2 means that at least
> > 2 replica must be identical when doing a read.
> >
> > I want to make use of the new backingStore xml element to implement quorum.
> >
> > Proposed Quorum libvirt format:
> > -------------------------------
> >
> > <disk type='quorum' device='disk'>
> > <driver name='qemu' type='quorum'/>
> > <threshold value=2/>
> > <backingStore type='file'>
> > <format type='qcow2'/>
> > <source file='/var/lib/libvirt/images/file1.qcow2'/>
> > </backingStore>
> > <backingStore type='file'>
> > <format type='qcow2'/>
> > <source file='/var/lib/libvirt/images/file2.qcow2'/>
> > </backingStore>
> > <backingStore type='file'>
> > <format type='qcow2'/>
> > <source file='/var/lib/libvirt/images/file3.qcow2'/>
> > </backingStore>
> > <target dev='vda' bus='virtio'/>
> > </disk>
>
> It feels rather odd to have <backingStore> elements but no top level
> disk images. Really these are all top level images
It reflect the ways QEMU does it. A single BlockDriverState holding n
quorum BlockDriverState children. There is a 1-1 mapping.
How would you see it ?
Best regards
Benoît
>
>
> Regards,
> Daniel
> --
> |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org -o- http://virt-manager.org :|
> |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
> |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list