[2.5] IP assignments not preserved when creating bonds or bridges

Bug #1808028 reported by Mike Pontillo on 2018-12-11
This bug affects 1 person
Affects Status Importance Assigned to Milestone

Bug Description

Observed behavior

Given a machine with system_id 'ta3rxy' and two NICs (IDs 6 and 8), the minimum to create a bond is something like the following:

    maas admin interfaces create-bond ta3rxy parents=6 parents=10 name=bond0

(It fails without the `name=bond0` part.)

The documentation states that leaving out the VLAN results in "disconnected", but that turns out to not be true. In MAAS 2.5, leaving the VLAN out results in the bond being connected to the same VLAN as its parent.

Just as is the case with the UI, creating the bond results in no IP addresses being transferred to the new bond.

Similarly, this is the minimum command to create a bridge:

    maas admin interfaces create-bridge ta3rxy parents=6 name=br0

As with bonds, no IP address assignments are transferred to the new bridge.

Expected behavior

MAAS should preserve IP links when using the API to create bonds and bridges.

In order of priority:

 - MAAS should preserve any and all IP assignments and move them to the new interface
 - If no static assignments exist, MAAS should assume the intent is for the interface to be DHCP-enabled if at least one parent interface is DHCP enabled.
 - If no parent interface has any static or DHCP IP addresses, but at least one AUTO IP assignment exists on a parent, MAAS should carry the AUTO assignment to the new interface.
 - If all of the parent interfaces are unconfigured, MAAS should leave the new bond or bridge unconfigured.

API users relying on existing functionality may be broken by this change, so we might want to consider adding an option to preserve the previous behavior, or requiring a new parameter for the new expected behavior.

Changed in maas:
importance: Undecided → Medium
Changed in maas:
milestone: 2.5.1 → 2.5.2
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers