On 11/02/2010 07:08 AM, Daniel P. Berrange wrote: > Migration just seems togo from bad to worse. We already had to > introduce a second migration protocol when adding the QEMU driver, > since the one from Xen was insufficiently flexible to cope with > passing the data the QEMU driver required. > > This patch attempts to introduce a version 3 that uses the > improved 5 step sequence > > * Src: Begin > - Generate XML to pass to dst > - Generate optional cookie to pass to dst > > * Dst: Prepare > - Get ready to accept incoming VM > - Generate optional cookie to pass to src > > * Src: Perform > - Start migration and wait for send completion > - Generate optional cookie to pass to dst > > * Dst: Finish > - Wait for recv completion and check status > - Kill off VM if failed, resume if success > - Generate optional cookie to pass to src > > * Src: Confirm > - Kill off VM if success, resume if failed Are we any closer to implementing this new migration protocol? Meanwhile, I just came up with a question - how does live migration interact with transient changes? For example, consider Osier's recent patches for things like virDomainIsUpdated which tracks whether a running guest has had transient changes that should be tracked as long as the guest runs, but which should not impact the persistent xml definition of the guest when it stops and is restarted. Does that mean that live migration has to send two XML definitions over the wire, for both the persistent definition (to be used if the guest is stopped and restarted) as well as the transient definition (to accurately reflect the running state of the guest, including currently hot-plugged devices)? Does this protocol accurately allow for the transfer of two differing XML descriptions associated with a single running domain? -- Eric Blake eblake@xxxxxxxxxx +1-801-349-2682 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list