zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

rhel8配置bond的active-backup策略

配置 策略 Active backup Bond
2023-09-14 09:15:53 时间

bond常用两种模式

参考:
Linux网卡bond的七种模式详解
https://blog.51cto.com/linuxnote/1680315
https://blog.csdn.net/quqi99/article/details/51251210

1、mode=4(802.3ad)(IEEE 802.3ad 动态链接聚合)–lacp模式
表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy).标准要求所有设备在聚合操作时,要在同样的速率和双工模式,而且,和除了balance-rr模式外的其它bonding负载均衡模式一样,任何连接都不能使用多于一个接口的带宽。
特点:创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。
外出流量的slave选举是基于传输hash策略,该策略可以通过xmit_hash_policy选项从缺省的XOR策略改变到其他策略。需要注意的 是,并不是所有的传输策略都是802.3ad适应的,
尤其考虑到在802.3ad标准43.2.4章节提及的包乱序问题。不同的实现可能会有不同的适应 性。
必要条件:
条件1:ethtool支持获取每个slave的速率和双工设定
条件2:switch(交换机)支持IEEE 802.3ad Dynamic link aggregation
条件3:大多数switch(交换机)需要经过特定配置才能支持802.3ad模式

2、mode=1(active-backup)(主-备份策略)
这个是主备模式,只有一块网卡是active,另一块是备用的standby,所有流量都在active链路上处理,交换机配置的是捆绑的话将不能工作,因为交换机往两块网卡发包,有一半包是丢弃的。
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。
此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N

配置bond


nmcli dev connect eno16777736     #连接设备eno16777736,该操作类似于接上网卡网线
nmcli dev disconnect eno16777736  #断开设备eno16777736,类似于拔掉网线

nmcli conn down eno16777736  #关闭连接eno16777736

nmcli conn up eno16777736  #打开连接eno16777736 

nmcli dev show   #查看设备详细信息

删除旧的网卡配置文件

假定将使用ens4和ens5创建bond0

# 查看系统现有网络设备的连接状态
nmcli dev status

# 查看已有连接
nmcli conn show

# 删除ens4和ens5的旧配置文件
nmcli conn delete ens4 ens5

创建bond主接口

在这里插入图片描述

# 创建bond0主虚拟网卡
nmcli con add con-name bond0 ifname bond0 type bond mode active-banckup

# 查看系统现有网络设备的连接状态
nmcli dev status

配置bond从接口

# 配置ens4从网卡
nmcli con add con-name bond0-port1 ifname ens4 type bond-slave master bond0

# 配置ens5从网卡
nmcli con add con-name bond0-port2 ifname ens5 type bond-slave master bond0

# 查看网卡信息
nmcli con show

查看bonding状态

# 查看bond状态
cat /proc/net/bonding/bond0
## 此时查看bon0并没有up起来

# 查看网卡的概述信息
nmcli dev status
## 此时查看bon0并没有up起来

给bond0主网卡配置ip地址

# 给主接口分配ip地址
nmcli con mod bond0  ipv4.addresses 11.16.25.100/24 ipv4.method manual

# 设置开机自动连接
nmcli con mod bond0 connection.autoconnect yes

# 将bond0网卡设置up
nmcli con up bond0

# 查看网卡状态
nmcli con show

# 查看bond状态
cat /proc/net/bonding/bond0
## 此时查看bon0已经up起来