mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-03 20:01:16 +00:00
29bc4fe646
This patch brings support to manage sheepdog pools and volumes to libvirt. It uses the "collie" command-line utility that comes with sheepdog for that. A sheepdog pool in libvirt maps to a sheepdog cluster. It needs a host and port to connect to, which in most cases is just going to be the default of localhost on port 7000. A sheepdog volume in libvirt maps to a sheepdog vdi. To create one specify the pool, a name and the capacity. Volumes can also be resized later. In the volume XML the vdi name has to be put into the <target><path>. To use the volume as a disk source for virtual machines specify the vdi name as "name" attribute of the <source>. The host and port information from the pool are specified inside the host tag. <disk type='network'> ... <source protocol="sheepdog" name="vdi_name"> <host name="localhost" port="7000"/> </source> </disk> To work right this patch parses the output of collie, so it relies on the raw output option. There recently was a bug which caused size information to be reported wrong. This is fixed upstream already and will be in the next release. Signed-off-by: Sebastian Wiedenroth <wiedi@frubar.net>
12 lines
317 B
XML
12 lines
317 B
XML
<pool type='sheepdog'>
|
|
<name>sheepdog</name>
|
|
<uuid>65fcba04-5b13-bd93-cff3-52ce48e11ad7</uuid>
|
|
<capacity unit='bytes'>0</capacity>
|
|
<allocation unit='bytes'>0</allocation>
|
|
<available unit='bytes'>0</available>
|
|
<source>
|
|
<host name='localhost' port='7000'/>
|
|
<name>sheepdog</name>
|
|
</source>
|
|
</pool>
|