[libvirt] [PATCH v4 1/1] migration: add support for migrateURI configuration

Daniel P. Berrange berrange at redhat.com
Fri May 16 13:51:07 UTC 2014


On Thu, May 15, 2014 at 11:50:54AM +0200, Jiri Denemark wrote:
> On Wed, May 14, 2014 at 15:18:09 +0800, Chen Fan wrote:
> > For now, we set the migration URI via command line '--migrate_uri' or
> > construct the URI by looking up the dest host's hostname which could be
> > solved by DNS automatically.
> > 
> > But in cases the dest host have two or more NICs to reach, we may need to
> > send the migration data over a specific NIC which is different from the
> > automatically resloved one for some reason like performance, security, etc.
> > thus we must explicitly specify the migrateuri in command line everytime,
> > but it is too troublesome if there are many such hosts(and don't forget
> > virt-manager).
> > 
> > This patches add a configuration file option on dest host to save the
> > default migrate uri which explicitly specify which of this host's
> > addresses is used for transferring data, thus user doesn't boring
> > to specify it in command line everytime.
> > 
> > Signed-off-by: Chen Fan <chen.fan.fnst at cn.fujitsu.com>
> > ---
> > 
> > v3-v4: move up the default uri_in setting to
> >        qemuDomainMigratePrepare3Params()
> > 
> >  src/qemu/qemu.conf     | 6 +++++-
> >  src/qemu/qemu_conf.c   | 1 +
> >  src/qemu/qemu_conf.h   | 1 +
> >  src/qemu/qemu_driver.c | 2 +-
> >  4 files changed, 8 insertions(+), 2 deletions(-)
> > 
> > diff --git a/src/qemu/qemu.conf b/src/qemu/qemu.conf
> > index f0e802f..6b443d0 100644
> > --- a/src/qemu/qemu.conf
> > +++ b/src/qemu/qemu.conf
> > @@ -449,7 +449,11 @@
> >  #
> >  #seccomp_sandbox = 1
> >  
> > -
> > +# Override the migration URI for specifying one of host's IP addresses
> > +# to transfer the migration data stream.
> > +# Defaults to hostname, both IPv4 and IPv6 addresses are accepted.
> > +#
> > +#migrate_uri = "tcp://192.168.0.1"
> >  
> >  # Override the listen address for all incoming migrations. Defaults to
> >  # 0.0.0.0, or :: if both host and qemu are capable of IPv6.
> 
> The more I think about this the more I incline to a slightly different
> approach. Rather than providing a way to override migration URI, we
> could just provide an option in libvirtd.conf to override what
> virGetHostname returns. That is, the option (naturally called hostname)
> would tell libvirt to use the configured hostname (which might even be
> just an IP address) instead of trying to detect it.

I'm not sure this is a good idea. The hostname is used in a number of places
in libvirt, and we don't neccessarily want them all to use the same interface
as the migration data. eg if you have a NIC that is dedicated just for migration
traffic, you won't want to force other parts of libvirt to use that. So having
the migration hostname specified separately is a good idea IMHO. Perhaps we
could simplify though by having 'migrate_host' rather than 'migrate_uri' ?

And perhaps we do want a hostname override globally anyway, for other reasons.


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list