之前一直用bond,听说Team性能更好,就在虚拟机进行了测试,记录如下
全程使用nmcli命令操作,Network关闭状态
创建组team0,这里我设置主备模式,虚拟机还要加"hwaddr_policy":"by_active"参数,否则主备切换失败,实体机不需要。team自动是dhcp获取ip。
team四种模式:
broadcast (广播模式)
activebackup (主备模式)
roundrobin (轮训模式)
loadbalance (负载均衡) LACP
nmcli c add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup","hwaddr_policy":"by_active"},"link_watch" : { "name" : "ethtool" }}'
想修改team的模式,用下面命令
nmcli c modify team0 config '{"runner":{"name":"roundrobin","hwaddr_policy":"by_active"},"link_watch" : { "name" : "ethtool" }}'
创建并添加组成员,这里我用了3块网卡
nmcli c add type team-slave con-name team-ens33 ifname ens33 master team0
nmcli c add type team-slave con-name team-ens37 ifname ens37 master team0
nmcli c add type team-slave con-name team-ens38 ifname ens38 master team0
然后重启服务,全部自动连接,就是这么简单。
systemctl restart NetworkManager
连接情况,我是把所有系统自带连接全部删掉了。
ip a看到如下效果
干掉一个网卡,通讯还是正常,测试成功
nmcli c down team-ens33
附
team的参数找好久没找到,官方有个bond转team的工具可用,会自动生成team的参数在tmp目录下
如在bond时参数如下,进行转换。
bond2team --bonding_opts "mode=1 fail_over_mac=1"
转换结果如下
cat /tmp/bond2team.FbqgOR/ifcfg
其实也有配置模板的
ls /usr/share/doc/teamd-1.27/example_configs/
完