
On Tue, Oct 16, 2007 at 05:16:33PM +0100, Richard W.M. Jones wrote:
Daniel P. Berrange wrote:
On Tue, Oct 16, 2007 at 04:34:26PM +0100, Richard W.M. Jones wrote:
Daniel P. Berrange wrote:
http://www.redhat.com/archives/libvir-list/2007-September/msg00119.html Since that thread is split across two months, can I bring to everyone's attention the post I made yesterday:
http://www.redhat.com/archives/libvir-list/2007-October/msg00057.html
In particular the concept at the end that we shouldn't even try to support every possible remote storage, but instead allow the administrator to write "scriptlets" (small shell scripts with a well-defined input & output) to perform a set of operations:
This is really just an implementation detail. We still need to define the storage concepts we want to expose in the public API, before figuring out on the backend implementation. Most of the implementation wiill pretty much have to follow the scheme of just invoking command line tools like lvcreate and lvs, since formal APIs are scarse.
Well, a basic set of operations would be whatever we need to implement virt-install/virt-manager remotely now, plus other suggestions as they come along.
From a fairly brief scan of the virt-install & virt-manager code that would be:
- Create an empty a file with given name & size & sparseness. - Detect if a named device or file exists (basically a remote stat). - Copy image to remote temporary file (for kernel/CD-ROM). - Check free space (remote statvfs).
It might be nice to list LVs, but it doesn't seem to be necessary to implement remote virt-* at the moment (AFAICS).
Current virt-manager doesn't enumerate block devices at all - it just presents a file selection dialog rooted in /dev letting you select a block device, be it a disk, or a logical volume. Using LVM volumes for guests is probably more common than using raw partitions based on user reports i see. Dan. - |=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=| |=- Perl modules: http://search.cpan.org/~danberr/ -=| |=- Projects: http://freshmeat.net/~danielpb/ -=| |=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|