[Maas-devel] IP address reservation API

Jeroen Vermeulen jeroen.vermeulen at canonical.com
Wed Jun 25 09:29:44 UTC 2014


On 2014-06-25 09:03, Julian Edwards wrote:

> Each of the "cluster interface" parameters are required so we know on
> which network the IP must be allocated.  We have a few different ways to
> identify a cluster interface, some of which may be more or less
> appropriate depending on what the caller already knows:
>
>   - the network details, e.g. N.N.N.N/bits (or ipv6 equivalent)
>   - the cluster ID plus one of its NIC names (won't work for IPv6 I am
> told by jtv, he can explain)

Very well: a single network interface can have multiple IPv6 addresses, 
in addition to its IPv4 address.  The IPv6 addresses can be in multiple 
networks (but typically, several per network as well).  Therefore, a 
network interface on the cluster controller no longer identifies a network.

What we've been wanting to do about this is make NodeGroupInterface 
refer to Network, instead of duplicating similar basic network 
information.  If we did that, we could identify networks by network 
specifier — which works with network names, IP addresses, etc.

That would still leave one wrinkle in the API: it identifies a cluster 
interface by cluster UUID and network interface name.  That won't work 
for IPv6.  But an IPv4-only compatibility layer looks doable.


Jeroen




More information about the Maas-devel mailing list