neutron-linuxbridge-agent flat network incompatibility with systemd-networkd
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
systemd (Ubuntu) |
New
|
Low
|
Unassigned |
Bug Description
We are running an OpenStack installation from Ubuntu's Cloud Archive, and our computer hosts have their network configured with systemd-networkd. For example, a bond and several VLANs on top, including two VLANs used for OpenStack flat networks. We are using neutron-
Network interface overview:
┌──────┐ ┌──────┐ ┌──────┐
│ eno2 │ │ eno3 │ │ eno4 │
└───┬──┘ └───┬──┘ └───┬──┘
│ │ │
┌─
│ bond0 │
└─
│ │ │
┌───┴──┐ ┌──┴───┐ ┌───┴────┐
│ tnet │ │ stor │ │ public │
└──────┘ └──────┘ └────────┘
The "public" network is a flat provider network (VLAN) that shall be used by neutron-
The systemd-networkd configuration sets up all interfaces. We previously used netplan, but missing some needed options. It does use systemd-networkd too, so no relevant change to the problem.
Since merging https:/
The fix was revered in bug #1929560, but the behavior will not be reverted in newer releases. Therefore, every reload of systemd-networkd will remove the physical network interface from neutrons bridge.
Using "bridge_mappings" with nova-compute has never been finished, according to bug #1105488. nova-compute always requires the dynamic bridge, e.g. brq88363244-5f, to be present.
@ddstreet asked for a new bug and the network configuration:
# /etc/systemd/
[..]
# /etc/systemd/
[Match]
Name=eno2
[Network]
LinkLocalAd
Bond=bond0
# /etc/systemd/
[Match]
Name=eno3
[Network]
LinkLocalAd
Bond=bond0
# /etc/systemd/
[Match]
Name=eno4
[Network]
LinkLocalAd
Bond=bond0
# /etc/systemd/
[NetDev]
Name=bond0
Kind=bond
MTUBytes=9000
[Bond]
Mode=802.3ad
LACPTransmi
MIIMonitorS
TransmitHas
# /etc/systemd/
[Match]
Name=bond0
[Link]
MTUBytes=9000
[Network]
LinkLocalAd
ConfigureWi
VLAN=tnet
VLAN=stor
VLAN=pulic
# /etc/systemd/
[NetDev]
Name=public
Kind=vlan
MTUBytes=1500
[VLAN]
Id=82
# /etc/systemd/
[Match]
Name=public
[Link]
MTUBytes=1500
[Network]
LinkLocalAd
ConfigureWi
# /etc/systemd/
[..]
# /etc/systemd/
[..]
# /etc/systemd/
[..]
# /etc/systemd/
[..]
neutron-
# /etc/neutron/
[linux_bridge]
physical_
[..]
When everything is started and a VM needs to be connected to the flat network, neutron-
14: public@bond0: <BROADCAST,
59: brqe240c66b-da: <BROADCAST,
When systemd-networkd is restarted, it will see that "public" is up but has a master assigned. It will be unassigned and break the flat network:
14: public@bond0: <BROADCAST,
59: brqe240c66b-da: <BROADCAST,
What would be the recommended why to configure networking on compute hosts with Ubuntu OpenStack and flat networks? Not using systemd-networkd or netplan at all, but only /etc/network/
Is there any modern alternative?
Changed in systemd (Ubuntu): | |
status: | Incomplete → New |
importance: | Undecided → Low |
> Since merging https:/ /github. com/systemd/ systemd/ pull/17392, systemd-network will remove the master flag > from the "public" interface, that neutron- linuxbridge- agent assigned to the bridge for the network, e.g. > brq88363244-5f, breaking all network on the flat network.
> The fix was revered in bug #1929560, but the behavior will not be reverted in newer releases. Therefore, > every reload of systemd-networkd will remove the physical network interface from neutrons bridge.
It looks like the patch was backported to stable releases in that bug; not reverted. Are you saying that that patch is wrong? Or that you want that behavior still? Looking at the upstream code quickly, things have changed quite a bit so I am not sure what the current behavior is.
> What would be the recommended why to configure networking on compute hosts with Ubuntu OpenStack and flat > networks? Not using systemd-networkd or netplan at all, but only /etc/network/ interfaces?
>
> Is there any modern alternative?
It sounds like a support site would be more appropriate: https:/ /discourse. ubuntu. com/t/community -support/ 709.