On Tue, Jan 26, 2010 at 11:57:25AM +0200, Kenneth Nagin wrote:
On January 5 I asked for comments on adding libvirt support for live
migration with non-shared storage on kvm. I did not get any comments so I
am repeating my request:
Sorry I missed your original mail - January 5th was unlucky timing, since I had
a backlog of several thousand emails from the xmas break :-)
Support for live migration between hosts that do not share storage
was
added to qemu-kvm release 0.12.1.
It supports two flags:
-b migration without shared storage with full disk copy
-i migration without shared storage with incremental copy (same base image
shared between source and destination).
Interesting, I'd not seen those flags before. How does that work with the
destination side, if the disks do not already exist there ? Does the
mgmt app have to just create a zero-sized disk, start QEMU & then let the
data be copied. I'm guessing QEMU can't create the disk itself, since it'll
be trying to open it on the destination before the incoming migration even
starts.
I suggest adding these flags to virDomainMigrate.
That sounds reasonable.
If I'm not mistaken qemuMonitorTextMigrate is the function that
actually
invokes the kvm monitor.
Thus, it would be necessary to pass the flags to qemuMonitorTextMigrate..
But qemuMonitorTextMigrate does not have a flag input parameter. I think
the least disruptive way to support the new flags is use the existing
"background" parameter
to pass the flags. Of course this would require some changes to the
upstream functions that are invoked for migration.
That is an internal function, so adding extra parameters to it is no
problem at all - no need to reuse/abuse existing parameters.
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://ovirt.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|