[vdsm] [RFC] ipv6 support of vdsm

Dan Kenigsberg danken at redhat.com
Thu Nov 8 21:25:19 UTC 2012


On Thu, Nov 08, 2012 at 06:58:09PM +0800, huntxu wrote:
> Hi, folks.
> 
> Recently I am considering to implement ipv6 support for vdsm. First
> of all I
> would like to know whether there is already someone working on this
> feature.

I am not aware of anyone working on ipv6 at the momemnt. You are more
than welcome to lead the way!

> If so, I might do something to help, however, if not, I would try to
> implement
> it with suggestions from this discussion.
> 
> With ipv6 support vdsm is supposed to work properly in:
>     * mixed environment, in which ipv4 and ipv6 addresses coexist
>     * ipv6-pure environment
> 
> My idea is:
> 
> 1) Provide a mechanism to setup ipv6 address configuration of a host via
> XMLRPC/RestAPI. This would be done in the current ConfigNetwork module by
> modifying the network-scripts/ifcfg-* of the devices. Thus the host is
> able to access ipv6 network (with correct configuration).

Host network configuration is an important part. We would have to report
ipv6 addresses, too.

Please keep in mind, that we would like to move away from direct ifcfg
mangaling since it's distribution-dependent, and not even the common
practice in modern Fedoras. (sob)

> 
> 2) For incoming spice connections, qemu is able to listen to ipv6 address,
> so we use a boolean option "spice_use_ipv6" which indicates whether qemu
> should listen to incoming ipv6 or ipv4 connections.
> 
> 3) Make the connection with ovirt-engine(management connection) also ipv6-
> compatible. This requires modifying both XMLRPC and RestAPI servers to make
> them able to bind to the ipv6 address of the host. Also we need another
> boolean option "use_ipv6" to indicate what is the ip version of the
> management connection.

As former posters have noted, I'm not sure that a boolean flag is the
best practice here. Currently, vdsm can listen to all ipv4 addresses, or
to a single one, specified by vdsm.conf's management_address. This
should be extended to allow ipv6 addresses.

> 
> 4) Regarding the register process, all is the same with the current
> workflow,
> except for if we use ipv6 to register, we should firstly set "use_ipv6" to
> True, then XMLRPC and RestAPI servers would be listening on the ipv6
> address
> after vdsm restarts.

ditto regarding use_ipv6 boolean.

> 
> 5) The management connection is supposed to be able to switch between ipv4
> and ipv6 on the fly (when host is under maintenance and with proper network
> configuration of the host). This requires another vdsm API.

This problem is already with us - if vdsm.conf is configured to listen
on one address, and a setupNetwork call changes the management network
address to something else, I'm pretty sure that we'd get disconnected.
This bug is not widely noticed, since vdsm listens to all ip addresses
by default.

6) migration over ipv6,

7) connection to remote iscsi/nfs over ipv6.

8) guest ipv6 - I believe we're already there.

... and probably more.

> 
> Suggestions are always welcome. Thanks.

Good luck, it would be great to see progress here.

Regards,
Dan.


More information about the vdsm-devel mailing list