On Mon, Feb 04, 2013 at 08:13:20PM +0400, Alexander Gordeev wrote:
Hi!
I'd like to develop libvirt integration with Parallels Cloud
Storage (Pstorage) which is a new distributed file system from
Parallels designed specifically for storing VM images:
http://www.parallels.com/products/pcs/cloud-storage/
Yay, yet another filesystem :-( Everyone seems to think they need to
write their own custom network/cluster/cloud FUSE filesystem these
days.
It's not a POSIX FS but there is a FUSE client for it that can
be
used to access and manipulate images. It's quite high speed but only
when used with O_DIRECT + aio. I tried to setup several KVMs on top of
a Pstorage mount using virt-manager. It worked good, but I had to:
1. tune cache and IO settings for every disk
2. disable space allocation by libvirt because it is using sync IO and
is therefore slow
I tried to find ways to solve the first issue and IMHO this can be
done by adding a way to specify per-pool defaults for cache and IO
settings. I didn't find any way for this in the current code and UI.
I'd like to add a new storage backend also that will be a 'dir' backend
with extra ability to manage Pstorage mount points and UI integration.
I'd like to merge my work to the main tree when it's finished if
possible.
I don't think that putting cache/IO defaults in the XML is really
appropriate. There are too many different scenarios which want
different settings to be able to clearly identify one set of
perfect settings. I see this as primarily a documentation problem.
Someone needs to write something describing the diferrent settings
for each storage pool & what the pros/cons are for each. Downstream
app developers can then make decisions about suitable defaults for
their use cases
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 :|