Hi Dan,
        FWIW, this looks pretty much spot on to me ... I'm not sure there's a
lot to discuss :-)

On Tue, 2007-10-16 at 16:19 +0100, Daniel P. Berrange wrote:

> Application users
> =================
> 
>  - virt-manager / virt-install
>     - Enumerate available pools
>     - Allocate volume from pool
>     - Create guest with volume

        Nice that you list these and concentrate on them.

> Two core concepts
> 
>  - Volume
>     - a chunk of storage
>     - assignable to a guest
>     - assignable to a pool
>     - optionally part of a pool
> 
>  - Pool
>     - a chunk of storage
>     - contains free space
>     - allocate to provide volumes
>     - compromised of volumes
> 
> Recursive! 
> 
>   n x Volume -> Pool -> n x Volume 
> 
> Nesting to many levels...

        Hmm, I'd try and avoid the confusion associated with this nesting
concept ...

        What kind of uses for it are you thinking? 

        (e.g. something like allocate a big raw sparse volume, create a pool
from it and and then allocate volumes from that pool?)

        Is it that you need to somehow represent the storage that a pool can
allocate from and that that winds up being similar to how you represent
storage that is assignable to a pool?

        If that's the case, maybe fold the concept of "what a pool allocates
from" into the pool concept and make the volume concept just about "what
are assignable to guests".

> Operations
> ==========
> 
> Limited set of operations to perform
> 
>  - List host volumes   (physical attached devices)
>  - List pools          (logical volume groups, partitioned devs, filesystems)
>  - List pool volumes   (dev partitions, LVM logical volumes, files)

        Perhaps there should be a default pool for each host so that to list
host volumes you just list the volumes from the default pool?

Cheers,
Mark.

--
Libvir-list mailing list
Libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to