Networking - Teams rather than Bonds

Hi All,

Does Clear linux natively support the use of the network team driver (and teamd utility) now?

Background:

I’ve been away from Clear Linux project for a bit, but I’m almost in a position to start again. I notice that it seems Clear has moved from native systemd management of hardware NICs, to Network Manager for management of bare metal NICs.

I was quickly playing around with a fresh server install a few days ago, and figured I would setup the network with two interfaces as a LACP 802.3ad LAG. I did this using the team option, rather than the linux bond, under NMTUI.

It all seemed to work from a config standpoint, but failed when I attempted to bring the interface up. Not sure if I screwed up somewhere, if NMTU/NMCLI supports team config fine, but something is missing from my Clear Kernel (nothing fancy, just a default Clear native kernel) or userspace to run it correctly (I know I didn’t have teamd available and with a 3 second look I couldn’t locate that with a swupd search either…)

The error was:
Could not activate connection: NetworkManager plugin for ‘team’ unavailable.

1 Like

?
What was the error? And can you share your config?

Have edited the first post. Basically it seems to be missing a plugin. Guides for various RHEL/Fedora distro’s suggest just adding the plugin via the package manager, but that couldn’t be found in a swupd search, at least not under the suggested name, with the basic advice being:
‘Install NetworkManager-team and restart NetworkManager to enable the plugin.’

I also tried configuring it via nmcli, that basically produced the same error:
“Error: Connection activation failed: NetworkManager plugin for ‘team’ unavailable”

These are the steps I took, more or less:

nmcli connection add type team con-name mgmt-team ifname mgmt-team0 config ‘{“runner”: {“name”: “lacp”}, “link_watch”: {“name”: “ethtool”}}’

nmcli connection add type team-slave con-name mgmt-team-port1 ifname enp4s0 master mgmt-team0
nmcli connection add type team-slave con-name mgmt-team-port2 ifname enp5s0 master mgmt-team0

nmcli con modify mgmt-team-port1 802-3-ethernet.mtu 9000
nmcli con modify mgmt-team-port2 802-3-ethernet.mtu 9000
nmcli con modify mgmt-team 802-3-ethernet.mtu 9000

nmcli con up mgmt-team

(Also tried:
nmcli con up mgmt-team0-port1
nmcli con up mgmt-team0-port2
Same result.)

CLR’s NetworkManager seems to be compiled without libteam support.

Even after compiling libdaemon, libteam and manually starting teamd the mentioned error message remains:

sudo LC_ALL="C" nmcli con up Team
Error: Connection activation failed: NetworkManager plugin for 'team' unavailable

But after starting “teamd -d” I now have a team0 device.

team0            team      unmanaged     --
1 Like

Looks like you are right. It disable teamd

Github Issue: https://github.com/clearlinux/distribution/issues/2070

2 Likes

Thanks for looking into it and for the confirmation, I’ll run with bonds for now and try playing with teams once some of those changes make their way into a release.

I use CL servers, but none of them are on metal so Ive never run into this. You might try opening and issue on github and ask that it not be disabled. It should be fairly painless for them to support. Thanks for mentioning this here though. Might’ve save me a few hours one day tinkering in the lab. :joy::man_facepalming: Should have read all the posts before making that suggestion. Guess I’ll just go +1 it