[libvirt] Implement quorum support.

Matthias Gatto matthias.gatto at outscale.com
Mon Oct 20 09:49:42 UTC 2014


Hello,

I'm implementing quorum in libvirt.
I've try to follow this proposal:
http://www.redhat.com/archives/libvir-list/2014-May/msg00546.html
At this point I've done this:
- add all the field need by quorum in _virStorageSource
(nBackingStores, threshold).
- handle more than one backing store in virStorageSource by adding a
function virStorageSourcePushBackingStore
- add support of the quorum syntax for the xml parser.

so now i have to work on qemuBuildDriveStr

But I've a problem:
in qemu a child of a quorum is a BlockDriverState, where it's a
virStorageSource in libvirt, so a child in qemu contain more
information than a backingStore in libvirt(blockinfo, throttle...).

I think about several solution for this problem:
- I can handle quorum's child differently than backingStore and create
a "virDomainDiskDefPtr childs" field in virDomainDiskDef or
virStorageSource.
- I can change the virStorageSourcePtr backingStore, to
virDomainDiskDefPtr backingStore, and move the field to backingStore
to virDomainDiskDef.
-I can move all the field need by a quorum's child from
virStorageSource to virDomainDiskDef.

But i don't know which solution is the best for libvirt, how do you
think i can handle this problem ?

Best regards,
Matthias




More information about the libvir-list mailing list