Daniel P. Berrange schreef:
On Wed, Jul 23, 2008 at 12:43:25PM +0200, Stefan de Konink wrote:
> Daniel P. Berrange schreef:
>> On Wed, Jul 23, 2008 at 11:54:11AM +0200, Stefan de Konink wrote:
>>> DP: Would a patch be accepted that makes this configurable for *all*
>>> implementations? So that by after configuration a file is saved, and is
>>> queried after the platform specific implementation doesn't list the
>>> domain as defined?
>>>
>>> List Defined domains:
>>> - Query current implementation
>>> - If defined merge all non available domains.
>>>
>>> In principle what I want to see is that if a domain is not defined in
>>> the specific hypervisor, the domain file can be queried. I know I can
>>> implement this behavior in my own code, but I really thing this would be
>>> a cool thing for more people.
>> This doesn't make any sense. We have APIs for listing & defining inactive
>> domains. The individual drivers implement these APIs according to the
>> required API contract, and the underlying impl is not something which any
>> application using libvirt need know or care about. If your application is
>> relying on the inactive domains being stored in files it is broken.
> Or you could say that libvirt is broken because it isn't able to
> distribute the inactive domains across the network in a consistent way.
No, because that is not libvirt's job. The goal of libvirt is to provide
an API for managing virtualization capabilities on a host. Data center or
network management is an application level problem, out of scope for libvirt.
That calls for a libvirt-fork that does implement what is needed to
consistently providing a replicated pool of domains; call it
libvirt-datacenter-edition. I think it is the biggest non sense for
implementing shortcommings/management in kvm/qemu, but don't provide
these to the other hypervisors 'just because they implement it
theirselves locally'.
It is non-trivial to provide a 'xenstored' for the complete network,
while it is relatively easy to put an NFS dir on the libvirt xml configs.
Stefan