[libvirt] [PATCH v9] support offline migration
li guang
lig.fnst at cn.fujitsu.com
Thu Oct 11 02:43:14 UTC 2012
在 2012-10-10三的 14:38 +0100,Daniel P. Berrange写道:
> On Tue, Sep 25, 2012 at 03:45:24PM +0800, liguang wrote:
> > original migration did not aware of offline case,
> > so, try to support offline migration quietly
> > (did not disturb original migration) by pass
> > VIR_MIGRATE_OFFLINE flag to migration APIs if only
> > the domain is really inactive, and
> > migration process will not puzzled by domain
> > offline and exit unexpectedly.
> > these changes did not take care of disk images the
> > domain required, for them could be transferred by
> > other APIs as suggested, then VIR_MIGRATE_OFFLINE
> > should not combined with VIR_MIGRATE_NON_SHARED_*.
> > so, this migration result is just make domain
> > definition alive at target side.
> >
> > Signed-off-by: liguang <lig.fnst at cn.fujitsu.com>
> > ---
> > include/libvirt/libvirt.h.in | 1 +
> > src/qemu/qemu_driver.c | 15 ++++++++++++
> > src/qemu/qemu_migration.c | 53 ++++++++++++++++++++++++++++++++++++-----
> > src/qemu/qemu_migration.h | 3 +-
> > tools/virsh-domain.c | 6 ++++
> > 5 files changed, 70 insertions(+), 8 deletions(-)
>
> In my testing this patch is still badly broken, apparently no different
> than the previous version I tested
>
> I have 2 hosts, avocado & mustard and stopped guest vm1. I try to
> migrate the VM from avocado to mustard thus:
>
> # ./tools/virsh -c qemu+ssh://root@avocado/system migrate --undefinesource --offline vm1 qemu+ssh://root@mustard/system
>
> This should *not* even run because I did not pass the --persistent flag,
> but it does in fact complete. I creates a guest 'vm1' on the target host,
> but does not write out any config. This is a completely bogus scenario.
> If a guest has no config, it is transient and thus must not exist if it
> is shutoff, but your patch is resulting in a transient, shutoff guest.
>
> If I set the '--persistent' flag, there is no diffrence in behaviour. We
> still get a transient shutoff guest on the target.
pretty logical requirement,
actually, you've got it located at for
example /var/run/libvirt/qemu/dom.xml,
and it's really persistent.
I'll try to save config normally.
>
> Also the '--undefinesource' flag appeared to have no effect at all. The
> guest still exists on the source, both in libvirtd & on disk.
>
Yes, I did fail to take care of it, thanks!
>
> Daniel
--
liguang lig.fnst at cn.fujitsu.com
FNST linux kernel team
More information about the libvir-list
mailing list