Hi everyone
I was wondering if openvswitch was broken on the latest version of PVE, especially regarding LACP bonding in balance-tcp mode. Here's my story:
I've had a node for a while which was built about 3 years ago with OVS bridges and has seen numerous upgrades and experiments which led to its demise when I upgraded from 8.4 to 9.1. After some troubleshooting I finally managed to recover it and boot, set up an LACP OVS bond to my L2 switch and everything was running fine.
At that point, knowing that the next upgrade might again break things I'd have to fix, I figured this was a good time to start from a fresh install and rid myself of past mistakes and whatever timebombs I might have left unexploded. I backed /etc with my working network config and all VMs and went ahead.
And that's where trouble began. I set everything back up again, manually, using /etc/network/interfaces as a reference, but the bond never came up. I could set trunking with all the required vlans on each port and interface individually using OVS bridges on individual nics, but they never worked in an OVS bond, despite trying numerous options. A friend of mine experienced the same phenomenon on a fresh install, which I of course blamed on his skill, and had to use Linux bridges in order to get a working LACP trunk.
I had a feeling in my gut that something was different from the last time I installed: network interface pinning. It turns out that reinstalling without pinning and leaving the default interface names works, I was able to set up a LACP bond, so I guess openvswitch does not yet work well with the generated names.
For the exact fix: I reinstalled without enabling the interface name pinning at install and it worked. And I guess it's not in the documentation yet. I might be wrong, I just went on this hunch and it worked out, so feel free to share your experiences.
I don't know if the hardware is relevant here but just in case, the server is a minisforum HM90.
I was wondering if openvswitch was broken on the latest version of PVE, especially regarding LACP bonding in balance-tcp mode. Here's my story:
I've had a node for a while which was built about 3 years ago with OVS bridges and has seen numerous upgrades and experiments which led to its demise when I upgraded from 8.4 to 9.1. After some troubleshooting I finally managed to recover it and boot, set up an LACP OVS bond to my L2 switch and everything was running fine.
At that point, knowing that the next upgrade might again break things I'd have to fix, I figured this was a good time to start from a fresh install and rid myself of past mistakes and whatever timebombs I might have left unexploded. I backed /etc with my working network config and all VMs and went ahead.
And that's where trouble began. I set everything back up again, manually, using /etc/network/interfaces as a reference, but the bond never came up. I could set trunking with all the required vlans on each port and interface individually using OVS bridges on individual nics, but they never worked in an OVS bond, despite trying numerous options. A friend of mine experienced the same phenomenon on a fresh install, which I of course blamed on his skill, and had to use Linux bridges in order to get a working LACP trunk.
I had a feeling in my gut that something was different from the last time I installed: network interface pinning. It turns out that reinstalling without pinning and leaving the default interface names works, I was able to set up a LACP bond, so I guess openvswitch does not yet work well with the generated names.
For the exact fix: I reinstalled without enabling the interface name pinning at install and it worked. And I guess it's not in the documentation yet. I might be wrong, I just went on this hunch and it worked out, so feel free to share your experiences.
I don't know if the hardware is relevant here but just in case, the server is a minisforum HM90.