大家好,欢迎来到IT知识分享网。
网卡bond模式共有7种
总的来说mode1、5、6不需要要交换机设置,而mode0、2、3、4需要交换机设置
一、bond的七种模式介绍:
1、mode=0(balance-rr)(平衡抡循环策略)
链路负载均衡,增加带宽,支持容错,一条链路故障会自动切换正常链路。交换机需要配置聚合口。
特点:传输数据包顺序是依次在成员口传输,此模式提供负载平衡和容错能力;但是如果数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降。
2、mode=1(active-backup)(主-备份策略)
这个是主备模式,只有一块网卡是active,另一块是备用的standby,所有流量都在active链路上处理。
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。
3、mode=2(balance-xor)(平衡策略)
表示XOR Hash负载分担,和交换机的聚合强制不协商方式配合。
特点:基于指定的传输HASH策略传输数据包。
4、mode=3(broadcast)(广播策略)
表示所有包从所有网络接口发出,这个不均衡,只有冗余机制,但过于浪费资源。此模式适用于金融行业,因为他们需要高可靠性的网络,不允许出现任何问题。需要和交换机的聚合强制不协商方式配合。
特点:在每个slave接口上传输每个数据包,此模式提供了容错能力
5、mode=4(802.3ad)(IEEE 802.3ad 动态链接聚合)
表示支持802.3ad协议,和交换机的聚合LACP方式配合。标准要求所有设备在聚合操作时,要在同样的速率和双工模式。
特点:创建一个聚合组,它们共享同样的速率和双工设定。根据802.3ad规范将多个slave工作在同一个激活的聚合体下。
必要条件:
条件1:ethtool支持获取每个slave的速率和双工设定
条件2:switch(交换机)支持IEEE 802.3ad Dynamic link aggregation
条件3:大多数switch(交换机)需要经过特定配置才能支持802.3ad模式
6、mode=5(balance-tlb)(适配器传输负载均衡)
是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave。该模式要求slave接口的网络设备驱动有某种ethtool支持;而且ARP监控不可用。
特点:不需要任何特别的switch(交换机)支持的通道bonding。在每个slave上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的slave出故障了,另一个slave接管失败的slave的MAC地址。
必要条件:
ethtool支持获取每个slave的速率
7、mode=6(balance-alb)(适配器适应性负载均衡)
在5的tlb基础上增加了rlb(接收负载均衡receive load balance).不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的.
特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance, rlb),而且不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的。bonding驱动截获本机发送的ARP应答,并把源硬件地址改写为bond中某个slave的唯一硬件地址,从而使得不同的对端使用不同的硬件地址进行通信。
二、配置步骤
(1) 增加冗余口的配置文件
创建冗余口 bond0,将网卡绑定模式配置为模式 2:
通过“vim /etc/sysconfig/network-scripts/ifcfg-bond0” 命令创建聚合口 bond0,并进入
ifcfg-bond0 的配置文件增加以下配置,参数均必选,参数取值以实际组网规划为准。
DEVICE=bond0
IPADDR=192.168.15.99
NETMASK=255.255.0.0
GATEWAY=192.168.15.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
NM_CONTROLLED=no
BONDING_OPTS=”mode=2 miimon=120″
其中, “DEVICE”需与虚拟网卡名称保持一致。 “miimon” 表示进行链路状态检测的时间间
隔。
(2) 加载 bond0 接口到内核
通过“vim /etc/modprobe.d/bonding.conf” 命令进入 bonding 配置文件,增加以下配置:
alias bond0 bonding
(3) 配置成员端口
创建目录,备份待聚合网卡的文件后对文件进行修改。将要聚合的网口分别添加到冗余口下,
以网卡 ens32 的配置为例,通过“vim /etc/sysconfig/network-scripts/ifcfg-ens32” 命令
进入网卡配置文件,增加以下配置,参数均必选,参数取值以实际组网规划为准:
TYPE=Ethernet
DEVICE=ens32
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes17-4
USERCTL=no
NM_CONTROLLED=no
其中, DEVICE 需要与网卡名称保持一致, MASTER 为虚拟网卡的名称。
(4) 加载 bonding 模块
通过“modprobe bonding”命令加载 bonding 模块。
(5) 重启服务
通过“service network restart” 命令重启服务。如果多次修改过 bond 配置,可能需要重启
服务器。
(6) 查看配置是否生效
通过“cat /sys/class/net/bond0/bonding/mode”命令查看当前聚合模式是否生效。
通过“cat /proc/net/bonding/bond0”命令查看聚合接口信息。17-5
(7) 通过“vim /etc/rc.d/rc.local”,将如下配置信息加入开机自启动。
ifenslave bond0 ens32 ens33 ens34
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/164893.html