[libvirt] [PATCH 0/7] fspool: backend directory

Daniel P. Berrange berrange at redhat.com
Thu Aug 25 01:14:29 UTC 2016


On Fri, Aug 19, 2016 at 06:03:28PM +0300, Olga Krishtal wrote:
> Hi everyone, we would like to propose the first implementation of fspool 
> with directory backend.
> 
> Filesystem pools is a facility to manage filesystems resources similar
> to how storage pools manages volume resources. Furthermore new API follows
> storage API closely where it makes sense. Uploading/downloading operations
> are not defined yet as it is not obvious how to make it properly. I guess
> we can use some kind of tar to make a stream from a filesystem. Please share
> you thoughts on this particular issue.
> 
> The patchset provides 'dir' backend which simply expose directories in some
> directory in host filesystem. The virsh commands are provided too. So it is
> ready to play with, just replace 'pool' in xml descriptions and virsh commands
> to 'fspool' and 'volume' to 'item'.
> Examle and usage:
> Define:
> virsh -c qemu:///system fspool-define-as fs_pool_name dir --target /path/on/host
> Build
> virsh -c qemu:///system fspool-build fs_pool_name
> Start
> virsh -c qemu:///system fspool-start fs_pool_name
> Look inside
> virsh -c qemu:///system fspool-list (--all) fspool_name
> 
> Fspool called POOL, on the host fs uses /fs_driver to hold items.
>   virsh -c qemu:///system fspool-dumpxml POOL
>   <fspool type='dir'>
>     <name>POOL</name>
>     <uuid>c57c9d7c-b1d5-4c45-ba9c-67f03d4da160</uuid>
>     <capacity unit='bytes'>733722615808</capacity>
>     <allocation unit='bytes'>1331486720</allocation>
>     <available unit='bytes'>534810800128</available>
>     <source>
>     </source>
>     <target>
>       <path>/fs_driver</path>
>       <permissions>
>         <mode>0755</mode>
>         <owner>0</owner>
>         <group>0</group>
>       </permissions>
>     </target>
>   </fspool>
> 
> virsh -c qemu:///system fspool-info POOL
> Name:           POOL
> UUID:           c57c9d7c-b1d5-4c45-ba9c-67f03d4da160
> State:          running
> Persistent:     yes
> Autostart:      no autostart
> Capacity:       683.33 GiB
> Allocation:     1.24 GiB
> Available:      498.08 GiB
> 
> virsh -c qemu+unix:///system item-list POOL
>   Name                 Path
> ------------------------------------------------------------------------------
> item1                /fs_driver/item1
> item10               /fs_driver/item10
> item11               /fs_driver/item11
> item12               /fs_driver/item12
> item15               /fs_driver/item15
> 
> Fspool of directory type is some directory on host fs that holds items (subdirs).
> Example of usage for items:
> virsh -c vz+unix:///system item-create-as POOL item1 1g - create item
> virsh -c qemu+unix:///system item-dumpxml item1 POOL
> <fsitem>
>     <name>item1</name>
>     <key>/fs_driver/item1</key>
>     <source>
>       fspoo ='POOL'

Is this a typo, or is it really what you intend the <source>
content to look like. It seems rather odd to me

>     </source>
>     <capacity unit='bytes'>0</capacity>
>     <allocation unit='bytes'>0</allocation>
>     <target>
>       <format type='dir'/>
>     </target>
>   </fsitem>
> virsh -c qemu+unix:///system item-info item1 POOL
> Name:           item1
> Type:           dir
> Capacity:       683.33 GiB
> Allocation:     634.87 MiB
> Autostart:      no autostart
> Capacity:       683.33 GiB
> Allocation:     1.24 GiB
> Available:      498.08 GiB
> virsh -c qemu+unix:///system item-list POOL
>   Name                 Path
> ------------------------------------------------------------------------------
>   item1                /fs_driver/item1
>   item10               /fs_driver/item10
>   item11               /fs_driver/item11
>   item12               /fs_driver/item12
>   item15               /fs_driver/item15 
> 

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