麒麟网络负载均衡与高可用方案实践
安装 teamd 包。
yum -y install teamd
Copy
一、配置TEAMING
查看两个网卡信息
ifconfig
Copy
注意:根据实际网卡设备名称情况调整代码!不同环境下网卡名称略有不同!
根据查询的结果,两张网卡设备名称分别为 enp0s2 和 enp0s3
ifconfig enp0s2 && ifconfig enp0s3
Copy
添加team连接,取名为 team 0,此处将127.0.0.1和 127.0.0.3 进行聚合
nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup", "hwaddr_policy": "by_active"}}' ipv4.addresses 127.0.0.1/3
nmcli connection show
Copy
添加team0的两个slave
注意:如下代码涉及了网卡名称,请根据实际情况调整
nmcli con add con-name team0-port1 type team-slave ifname enp0s2 master team0
nmcli con add con-name team0-port2 type team-slave ifname enp0s3 master team0
Copy
启动team0连接
nmcli connection up team0
Copy
查看此时的连接状态。发现 Net1/Net2 因为 enp0s2/enp0s3 网卡被占据,而没能启动连接。
nmcli connection show
Copy
可以看到 Net1/Net2 目前占据着enp0s2/enp0s3 网卡我们需要将它 down 掉。
注意:如下代码涉及了网卡名称,请根据实际情况调整
nmcli connection down Net1
nmcli connection down Net2
Copy
此时再次查看网卡连接情况,确认 team0 和 team0-port0、team0-port1 能正常开启。
nmcli connection show
Copy
二、验证故障切换
查看team0状态,确认激活的网卡
teamdctl team0 stat
Copy
模拟网卡故障
注意:根据实际情况,down掉激活的网卡。
ifconfig 激活的网卡 down
Copy
此时再次查看team0被激活的链路是否变更为另一张网卡
teamdctl team0 stat
Copy
三、配置BONDING
由于teamd服务和libteam库在RHEL 9中已弃用,并将在下一个主要版本中删除,建议同学同时掌握bonding的使用方法,其配置步骤与teaming大体类似,给出示例如下:
添加bond连接
nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ipv4.addresses 127.0.0.2/4 ipv4.method manual
Copy
添加bond的两个slave
注意:如下代码涉及了网卡名称,请根据实际情况调整
nmcli connection add type bond-slave ifname enp0s2 master bond0
nmcli connection add type bond-slave ifname enp0s3 master bond0
Copy
down掉两个网卡连接,启动bond
nmcli connection up bond-slave-enp0s2
nmcli connection up bond-slave-enp0s3
Copy
查看网卡连接情况
nmcli connection show
Copy