linux bond模式原理与配置

目录

目录

一、bond模式原理和工作模式

1.bond模式原理

2..bond工作模式

二、查看查看系统内核是否支持 bonding

三、bonding 的七种工作模式

四、bonding 网卡配置 (mode=0)

五、bonding 网卡配置 (mode=1)



一、bond模式原理和工作模式

1.bond模式原理

多块网卡虚拟成一张,实现冗余;多张网卡对外显示一张,具有同一个IP;网络配置都会使用Bonding技术做网口硬件层面的冗余,防止单个网口应用的单点故障。

对于多物理网卡的 Bond 网卡而言,其中一块物理网卡会被设置为 Master(主设备),其他的网卡都是 Slave(从设备),Bond 网卡的 MAC 地址取自标志为 Master 的物理网卡,然后将这个 MAC 地址复制到其他物理网卡上。

2..bond工作模式

在主备模式下 , 只有主网卡 eth0 工作,eth1 作为备份网卡是不工作的,只有当一个网络接口失效时 ( 例如主交换机掉电等 ),为了不会出现网络中断,系统会按照配置指定的网卡顺序启动工作,保证机器仍能对外服务,起到了失效保护的功能。

在负载均衡模式下,由于两块网卡都正常工作,它能提供两倍的带宽,在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用。

二、查看查看系统内核是否支持 bonding

bonding 技术是 Linux 系统内核层面实现的,它是一个内核模块(驱动)。

三、bonding 的七种工作模式

bonding 技术提供了七种工作模式,常用的模式有 0、1、4、6,每种工作模式都有其各自的优缺点:

1、mode=0(balance-rr):Round-robin policy(平衡轮询策略)
特点:传输数据包顺序是依次传输,比如第一个包走 eth0,第二个包走 eth1,直到数据包发送完毕。增加了带宽,同时支持容错能力,当有链路出问题,会把流量切换到正常的链路上。
缺点:需要接入交换机做端口聚合。

2、mode=1(active-backup):Active-backup policy(主-备份策略)
特点:当一个宕掉另一个马上由备份转换为主设备。冗余性高,不需要交换机端支持。
缺点:资源利用率较低,只有一个接口处于工作状态。

3、mode=2(balance-xor):XOR policy(平衡策略)
特点:基于指定的传输 HASH 策略传输数据包。此模式提供负载平衡和容错能力。
缺点:需要交换机配置端口聚合。

4、mode=3(broadcast):broadcast(广播策略)
特点:在每个 slave 接口上传输每个数据包,此模式提供了容错能力。

5、802.3ad(mode=4):IEEE 802.3adDynamic link aggregation(IEEE 802.3ad 动态 链接聚合)
创建一个聚合组,它们共享同样的速率和双工设定。根据 802.3ad 规范将多个 slave 工作在同一个激活的聚合体下。
特点:
(1)ethtool支持获取每个slave的速率和双工设定。
(2)交换机支持 IEEE 802.3ad Dynamic link aggregation。
(3)大多数交换机需要经过特定配置才能支持 802.3ad模式。

6、mode=5(balance-tlb):Adaptive transmit load balancing(适配器传输负载均衡)
特点:不需要任何特别的交换机支持的通道 bonding。在每个 slave 上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的 slave 出故障了,另一个 slave 接管失败的 slave 的 MAC 地址。

7、mode=6(balance-alb):Adaptive load balancing(适配器适应性负载均衡)
特点:该模式包含了 balance-tlb 模式,同时加上针对 IPV4 流量的接收负载均衡(receive load balance,rlb),而且不需要任何交换机的支持。

 

四、bonding 网卡配置 (mode=0)

操作系统: Centos7
网卡: ens33、ens37
bond1:192.168.131.100
负载模式: mode=0(balance-rr)Round-robin policy(平衡轮询策略)      

1.关闭防火墙,关闭核心防护,停止NetworkManager

2.备份ens33、ens37 网卡配置

3.修改网卡ens33的配置文件,内容如下

 修改网卡ens37的配置文件,内容如下

 4.创建网卡bond0的配置文件,内容如下

5.在/etc/rc.d/rc.local 添加    ifenslave bond0 ens33 ens37

 6.加载 bond module

7. 重启网卡,并查看网卡状态如下

 测试

断开ens33    ifdown ens33   (断开之后,xshell也断开了,所以直接在终端测试)

 ping www.baidu.com     发现无法访问

查看bond0网卡状态,发现ens37是up状态。

 再次恢复ens33网卡,查看bond0状态,可以进行网络连接了

 

五、bonding 网卡配置 (mode=1)

mode=1的基本配置与mode=0一样,

只需要在  ifcfg-bond0  中 将  mode=0  改成  mode=1 

重启网卡 ,查看

发现两个不同的MAC地址

ip addr  查看bond网卡状态

主设备的MAC地址就是bond0的MAC地址

 断开  ens33   ,所以仍有网络连接

 ip addr  查看bond网卡状态

发现主设备变成ens37的MAC地址,说明ens37顶替了ens33

再次恢复ens33,查看

 主设备还是ens37,说明网卡恢复后,bond不会主动切回原先主设备 (可以重启恢复)

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值