Linux虚拟机网卡bond配置


前言

我们日常访问网络的时候可能会出现信号不佳、网络丢失等问题,所以一张网卡访问网络的时候可能会出现问题。就像手机的双卡双待模式,虚拟机的网卡也可以使用多张网卡,一般常见的服务器都有2~4张网卡来进行网络服务的运行。


一、bond概述

1、bond概念

bond是将多块物理网卡虚拟为一块逻辑网卡,使多块网卡看起来像一块网卡,通过主从的配置来讲进行网络的运行维护

2、bond优点

linux系统下配置bond,通过网卡绑定可增加服务器可靠性,同时可增加网络带宽,提供稳定的网络服务

二、bond模式

网卡bonding模式共有0、1、2、3、4、5、6共7种,其中mode1、5、6不需要要交换机设置,mode0、2、3、4需要交换机设置

1、mode=0 (round-robin)

轮询策略,数据包在每个slave网卡上都进行数据传输,以逐包形式在两个物理网卡上转发数据。这种模式提供了数据的负载均衡和容错能力。

2、mode=1 (active-backup)

主备策略,只有一个slave被激活,只有当active的slave的接口down时,才会激活其它slave接口。主备模式下发生一次故障切换,在新激活的slave接口上会发送一个或者多个gratuitous ARP。主salve接口上以及配置在接口上的所有VLAN接口都会发送gratuitous ARP,需要在这些接口上配置了至少一个IP地址。VLAN接口上发送的的gratuitous ARP将会附上适当的VLAN id。本模式提供容错能力。

3、mode=2(XOR)

基于所选择的hash策略,本模式也提供负载均衡和容错能力

4、mode=3(broadcast)

广播策略,向所有的slave接口发送数据包,本模式提供容错能力

5、mode=4(802.3ad)

动态链路聚合,根据802.3ad标准利用所有的slave建立聚合链路。slave接口的出口取决于传输的hash策略,默认策略是简单的XOR策略,而hash策略则可以通xmit_hash_policy选项配置。

前提:每个slave网卡支持ethtool获取速率和双工状态

6、mode=5(balance-tlb)

自适应传输负载均衡:根据每个slave的负载(相对速度)决定从哪个接口发送数据包,从当前接口接收数据包。如果接收的slave接口故障,其它slave接口将接管它的mac地址继续接收。

前提:每个slave网卡支持ethtool获取速率。

7、mode=6(balance-alb)

自适应负载均衡:

前提:每个slave网卡支持ethtool获取速率

      每个slave网卡支持启用时重新设置硬件地址

三、案例操作

将两张网卡绑定配置成一张虚拟网卡

1、添加网卡

在这里插入图片描述

2、修改网卡的配置文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、添加配置文件

在这里插入图片描述

4、关闭NetworkManager服务

在这里插入图片描述

5、重启网络

在这里插入图片描述

6、获取状态

在这里插入图片描述
在这里插入图片描述

7、开启httpd服务访问网页

使用ab命令来进行压力测试,模拟有多个IP登录并访问网页
在这里插入图片描述

8、关闭网卡查询数据流向

可以通过sar命令进行数据流向的查询

关闭ens33

在这里插入图片描述

关闭ens37

在这里插入图片描述