[Libvir] [PATCH 1/2] virDomainMigrate implementation (Xen only, no remote, no qemu, no virsh)

Daniel P. Berrange berrange at redhat.com
Mon Jul 16 14:57:15 UTC 2007


On Mon, Jul 16, 2007 at 07:22:27AM -0700, Dan Smith wrote:
> RJ>  * Params is a linked list of hypervisor-specific parameters.  Each
> RJ>  * element is a virMigrateParamPtr containing the following fields:
> RJ>  *   name               Parameter name being set.
> RJ>  *   value              A union expressing the value.
> RJ>  *     value.strv         A string value.
> RJ>  *     value.longv        A long value.
> RJ>  *   next               Next in linked list (or NULL for end of list).
> 
> This should allow us to pass URIs to qemu, as well.  I like it :)

I don't.  The API should be hypervisor agnostic. Needing to pass HV specific
attributes to make it works shows we have failed.

> RJ> +    /* Try to migrate. */
> RJ> +    ddomain = conn->driver->domainMigrate (domain, dconn, flags,
> RJ> +                                           dname,
> RJ> +                                           hostname ? hostname : nchostname,
> RJ> +                                           params);
> 
> As was previously mentioned, don't we need a call to the remote side
> to let it know that the domain is coming before we start the actual
> migration?  Are you expecting the driver implementation to do this?

Yep, I suspect for internal driver API we will need to decompose the
single virDomainMigrate call into several internal calls. We will need
to speak to the the destination ahead of time in QEMU case to tell it to
get ready to accept the new domain.  

When Xen gets a sane (well any) security model for migration we'll probably
need to speak to the destination end ahead of time too - if only to retrieve
some kind of 'auth token'.

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  -=| 




More information about the libvir-list mailing list