[libvirt] [PATCH v4 1/1] migration: add support for migrateURI configuration
chen.fan.fnst at cn.fujitsu.com
chen.fan.fnst at cn.fujitsu.com
Thu May 15 02:53:58 UTC 2014
Hi all,
this series patch has been no response for several days, at opening
discussion at
https://www.redhat.com/archives/libvir-list/2014-April/msg00682.html,
Jiri agreed with my point of view. but does anyone else have an opinion
about this? any suggestion is welcome.
Thanks,
Chen
On Wed, 2014-05-14 at 15:18 +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.
> diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
> index 198ee2f..43361dc 100644
> --- a/src/qemu/qemu_conf.c
> +++ b/src/qemu/qemu_conf.c
> @@ -574,6 +574,7 @@ int virQEMUDriverConfigLoadFile(virQEMUDriverConfigPtr cfg,
>
> GET_VALUE_LONG("seccomp_sandbox", cfg->seccompSandbox);
>
> + GET_VALUE_STR("migrate_uri", cfg->migrateUri);
> GET_VALUE_STR("migration_address", cfg->migrationAddress);
>
> ret = 0;
> diff --git a/src/qemu/qemu_conf.h b/src/qemu/qemu_conf.h
> index a36ea63..f99c56e 100644
> --- a/src/qemu/qemu_conf.h
> +++ b/src/qemu/qemu_conf.h
> @@ -163,6 +163,7 @@ struct _virQEMUDriverConfig {
>
> int seccompSandbox;
>
> + char *migrateUri;
> /* The default for -incoming */
> char *migrationAddress;
> int migrationPortMin;
> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index fca1a91..56c24b5 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -10888,7 +10888,7 @@ qemuDomainMigratePrepare3Params(virConnectPtr dconn,
> virDomainDefPtr def = NULL;
> const char *dom_xml = NULL;
> const char *dname = NULL;
> - const char *uri_in = NULL;
> + const char *uri_in = cfg->migrateUri;
> const char *listenAddress = cfg->migrationAddress;
> char *origname = NULL;
> int ret = -1;
More information about the libvir-list
mailing list