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 :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list