Signed-off-by: Olga Krishtal <okrishtal@xxxxxxxxxxxxx> --- docs/formatstorage.html.in | 7 ++++--- docs/schemas/storagepool.rng | 21 ++++++++++++++++++++ docs/storage.html.in | 28 ++++++++++++++++++++++++++- tests/storagepoolxml2xmlin/pool-vstorage.xml | 10 ++++++++++ tests/storagepoolxml2xmlout/pool-vstorage.xml | 18 +++++++++++++++++ tests/storagepoolxml2xmltest.c | 3 +++ 6 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 tests/storagepoolxml2xmlin/pool-vstorage.xml create mode 100644 tests/storagepoolxml2xmlout/pool-vstorage.xml diff --git a/docs/formatstorage.html.in b/docs/formatstorage.html.in index f6887ae..3c39266 100644 --- a/docs/formatstorage.html.in +++ b/docs/formatstorage.html.in @@ -24,8 +24,9 @@ (<span class="since">since 0.9.13</span>), <code>sheepdog</code> (<span class="since">since 0.10.0</span>), <code>gluster</code> (<span class="since">since - 1.2.0</span>) or <code>zfs</code> (<span class="since">since - 1.2.8</span>). This corresponds to the + 1.2.0</span>), <code>zfs</code> (<span class="since">since + 1.2.8</span>) or <code>vstorage</code> (<span class="since">since + 3.0.0</span>). This corresponds to the storage backend drivers listed further along in this document. </p> <h3><a name="StoragePoolFirst">General metadata</a></h3> @@ -124,7 +125,7 @@ <dt><code>device</code></dt> <dd>Provides the source for pools backed by physical devices (pool types <code>fs</code>, <code>logical</code>, <code>disk</code>, - <code>iscsi</code>, <code>zfs</code>). + <code>iscsi</code>, <code>zfs</code>, <code>vstorage</code>). May be repeated multiple times depending on backend driver. Contains a required attribute <code>path</code> which is either the fully qualified path to the block device node or for <code>iscsi</code> diff --git a/docs/schemas/storagepool.rng b/docs/schemas/storagepool.rng index 49d212f..c5d13a8 100644 --- a/docs/schemas/storagepool.rng +++ b/docs/schemas/storagepool.rng @@ -24,6 +24,7 @@ <ref name='poolsheepdog'/> <ref name='poolgluster'/> <ref name='poolzfs'/> + <ref name='poolvstorage'> </choice> </element> </define> @@ -173,6 +174,18 @@ </interleave> </define> + <define name='poolvstorage'> + <attribute name='type'> + <value>vstorage</value> + </attribute> + <interleave> + <ref name='commonmetadata'/> + <ref name='sizing'/> + <ref name='sourcevstorage'/> + <ref name='target'/> + </interleave> + </define> + <define name='sourceinfovendor'> <interleave> <optional> @@ -373,6 +386,14 @@ </element> </define> + <define name='sourcevstorage'> + <element name='source'> + <interleave> + <ref name='sourceinfoname'/> + </interleave> + </element> + </define> + <define name='sourcefmtfs'> <optional> <element name='format'> diff --git a/docs/storage.html.in b/docs/storage.html.in index 2e5b65e..26d21df 100644 --- a/docs/storage.html.in +++ b/docs/storage.html.in @@ -120,6 +120,9 @@ <li> <a href="#StorageBackendZFS">ZFS backend</a> </li> + <li> + <a href="#StorageBackendVstorage">Virtuozzo storage backend</a> + </li> </ul> <h2><a name="StorageBackendDir">Directory pool</a></h2> @@ -791,6 +794,29 @@ <p> The ZFS volume pool does not use the volume format type element. </p> - + <h2><a name="StorageBackendVstorage">Vstorage pools</a></h2> + <p> + This provides a pool based on Virtuozzo storage. Virtuozzo Storage is highly-avaliable + distributed software-defined storage with build-in replication and disaster recovery. + (More detailed information about storage and its managment can be found here: + <a href="https://openvz.org/Virtuozzo_Storage">Virtuozzo Storage</a>). + </p> + <p>Please refer to the Virtuozzo Storage documentation for details on a storage managment + and usage.</p> + <h3>Example pool input</h3> + <p>In order to create storage pool with Virtuozzo Storage bakend you have to provide + cluster name and be authorized within this cluster.</p> + <pre> +<pool type="vstorage"> + <name>myvstoragepool</name> + <source> + <name>clustername</name> + </source> + <target> + <path>/mnt/clustername</path> + </target> +</pool></pre> + <h3>Valid volume format types</h3> + <p>The valid volume types are the same as for the directory pool type.</p> </body> </html> diff --git a/tests/storagepoolxml2xmlin/pool-vstorage.xml b/tests/storagepoolxml2xmlin/pool-vstorage.xml new file mode 100644 index 0000000..31e36a2 --- /dev/null +++ b/tests/storagepoolxml2xmlin/pool-vstorage.xml @@ -0,0 +1,10 @@ +<pool type="vstorage"> + <name>vstorage</name> + <uuid>cfd270f9-acc7-4394-8685-4977eb318171</uuid> + <source> + <name>vzstorage-cluster</name> + </source> + <target> + <path>/mnt/vstorage_cluster</path> + </target> +</pool> diff --git a/tests/storagepoolxml2xmlout/pool-vstorage.xml b/tests/storagepoolxml2xmlout/pool-vstorage.xml new file mode 100644 index 0000000..8b2aecb --- /dev/null +++ b/tests/storagepoolxml2xmlout/pool-vstorage.xml @@ -0,0 +1,18 @@ +<pool type='vstorage'> + <name>vstorage</name> + <uuid>cfd270f9-acc7-4394-8685-4977eb318171</uuid> + <capacity unit='bytes'>0</capacity> + <allocation unit='bytes'>0</allocation> + <available unit='bytes'>0</available> + <source> + <name>vstorage-cluster</name> + </source> + <target> + <path>/mnt/vstorage-cluster</path> + <permissions> + <mode>0755</mode> + <owner>-1</owner> + <group>-1</group> + </permissions> + </target> +</pool> diff --git a/tests/storagepoolxml2xmltest.c b/tests/storagepoolxml2xmltest.c index 2e1e811..98a8449 100644 --- a/tests/storagepoolxml2xmltest.c +++ b/tests/storagepoolxml2xmltest.c @@ -104,6 +104,9 @@ mymain(void) #ifdef WITH_STORAGE_RBD DO_TEST("pool-rbd"); #endif +#ifdef WITH_STORAGE_VSTORAGE + DO_TEST("pool-vstorage"); +#endif return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE; } -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list