When we deploy a new container to our cluster all the containers become unresponsive. It looks a bit like this, where it’s enabling a new interface and other interfaces become unresponsive. Sorry for the rough logs.
Sep 18 16:06:47 container2 systemd-udevd[31736]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Sep 18 16:06:47 container2 systemd-udevd[31737]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Sep 18 16:06:47 container2 systemd-udevd[31737]: Could not generate persistent MAC address for vethe0e6ad52: No such file or directory
Sep 18 16:06:47 container2 systemd-networkd[917]: vethe0e6ad52: Link UP
Sep 18 16:06:47 container2 kernel: [3603425.459129] eth0: renamed from veth75f39ae7
Sep 18 16:06:47 container2 kernel: [3603425.481912] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Sep 18 16:06:47 container2 kernel: [3603425.483082] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sep 18 16:06:47 container2 kernel: [3603425.483111] br0: port 29(vethe0e6ad52) entered blocking state
Sep 18 16:06:47 container2 kernel: [3603425.483112] br0: port 29(vethe0e6ad52) entered forwarding state
Sep 18 16:06:48 container2 systemd-networkd[917]: vethe0e6ad52: Gained carrier
We’re running lxd 4.5 and kernel 4.15.0-112-generic #113-Ubuntu SMP
That said, this issue has been around for a while.
Thanks. I’m not even sure what to look at at the moment. The whole cluster freezes when I add a new container. The database is often locked. Have to wait about 5 minutes to do anything after deploying. The cluster also just freezes up from time to time. I’m at a loss.
If you’re directly bridging to the host network, it may be because your bridge doesn’t have a pinned MAC address. Unless you have a pinned MAC address, a bridge will take the lowest MAC of all its members, making it potentially change MAC every time an instance starts/stops, which combined with ARP delays and distributed database could explain what you’re seeing.
Whatever tool you’re using for that will most likely have a way to set the MAC of the bridge, it’s usually something called macaddress or hwaddr, set that to the MAC of your bond 7e:17:65:63:dd:80 then reboot to confirm it all applies properly on boot and you should be good, your bridge will never change MAC address again.
The MAC of the bond doesn’t really matter, it will always be that of the first interface which is added to the bond with that address then getting applied to the bond and to the other interfaces in the bond. But none of that matters since you’re putting your IP addresses on the bridge and not on the bond.