目录

  • 一、配置网卡聚合链路的作用
  • 二、聚合链路的四种模式
  • 三、实验环境
  • 四、实验步骤


一、配置网卡聚合链路的作用

将主机的多块网卡通过逻辑的方式聚合在一起,目的是加大带宽、冗余备份,提供了网卡的高可用

二、聚合链路的四种模式

注意:聚合链路一般有bond和team两种模式,bond模式最多两块网卡,而team最多可以加8快网卡,最常用的为team模式

  • active-backup: 一个端口处于主状态,一个处于从状态,所有的流量都在主链路上处理,从链路不会有任何流量,当主链路出错,从链路会顶替原来的主链路成为新的主链路。当坏掉的主链路恢复后并不会顶替掉从链路
  • loadbalance: 这个模式又分为主动模式和被动模式。
    主动模式为:逻辑网卡team会智能判断并且进行负载均衡
    被动模式为:逻辑网卡team进行随机的负载均衡
  • roundrobin: 这个模式会让两个链路以轮询的方式来处理所有端口的流量
  • random: 这个模式会让两个链路的流量进行随机分配

三、实验环境

Centos7

双网卡(必须都是同一VM网卡)

最好先使用Xshell或其他的软件进行远程连接

四、实验步骤

(1)保证Network Manager服务正常允许,然后写一份脚本,因为此实验需要关闭网卡,使用远程连接软件方便进行配置

[root@Centos7 ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
   Active: active (running) since 六 2021-03-27 00:01:14 CST; 13min ago
     Docs: man:NetworkManager(8)
 Main PID: 667 (NetworkManager)
   CGroup: /system.slice/NetworkManager.service
           ├─ 667 /usr/sbin/NetworkManager --no-daemon
           └─1779 /usr/bin/teamd -o -n -U -D -N -t team0 -c {"hw...

3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
3月 27 00:07:53 Centos7.4-1 NetworkManager[667]: <info>  [16167...
Hint: Some lines were ellipsized, use -l to show in full

[root@Centos7 ~]# vim aaa.sh 
#!/bin/bash
# 创建公共网卡设备team0,使用active-backup模式
nmcli connection add con-name team0 type team ifname team0 config '{"runner":{"name":"activebackup"}}'

# 将ens32和ens34网卡添加到逻辑网卡team中并且重命名为team0-1和team0-2
nmcli connection add con-name team0-1 type team-slave ifname ens32 master team0
nmcli connection add con-name team0-2 type team-slave ifname ens34 master team0

# 启动新建的team0-1和team0-2网卡
nmcli connection up team0-1
nmcli connection up team0-2

# 查看网卡设备信息,team0为黄色,team0-1和team0-2为绿色即为正常
nmcli connection show
# 让脚本停止十秒钟,方便查看状态
sleep 10

# 查看链路聚合状态是冗余备份的状态,会发现当前的活跃网卡 active port 为ens32
teamdctl team0 state
# 让脚本停止十秒钟,方便查看状态
sleep 10

# 设置team0网卡的临时ip并且启动该网卡
nmcli connection modify team0 ipv4.addresses 192.168.100.203/24 ipv4.gateway 192.168.100.254 ipv4.method manual
nmcli connection up team0

# 修改team0的配置文件,把none改为static
sed -i 's/none/static/g' /etc/sysconfig/network-scripts/ifcfg-team0

# 重新启动网卡
systemctl restart network

# 查看网卡信息
ifconfig
保存退出

(2)删除原来的ens32和ens34网卡的配置文件,并且重新启动网络服务

[root@Centos7 ~]# rm -rf /etc/sysconfig/network-scripts/ifcfg-ens32
[root@Centos7 ~]# rm -rf /etc/sysconfig/network-scripts/ifcfg-ens34
[root@Centos7 ~]# systemctl restart network

(3)这时候远程连接的设备会掉,跳到虚拟机,执行脚本

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_centos网卡聚合时网卡名有横杠


(4)提示网卡内容如图所示,“黄绿绿”即为正常

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_centos_02


(5)可以看到现在的活跃网卡为ens32

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_centos_03


(6)发现ens32的地址和team0相同

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_centos_04


(7)这个时候发现xshell已经可以重新连接了

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_centos_05


(8)关掉第一个网卡,点击断开连接

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_聚合链路_06


(9)发现还是可以连接xshell,但是活跃端口active port 变成了ens34,至此,网卡的高可用已经配置完成

centos网卡聚合时网卡名有横杠 centos网卡聚合配置_聚合链路_07


centos网卡聚合时网卡名有横杠 centos网卡聚合配置_高可用_08