可输入“modinfo bonding”查看当前bond的参数
配置有问题绑定的选项后,可运行 ifup bondN 启动并测试该连接。如果决定要更改选项,则需要先断开该接口,使用 sysfs 修改参数,然后启动接口,并再次测试。
确定绑定连接的最佳参数后,为要配置的绑定接口在 /etc/sysconfig/network-scripts/ifcfg-bondN 文件的 BONDING_OPTS= 指令中以空格分开的方式添加那些参数。无论何时连接该接口时(例如:若设置 ONBOOT=yes 指令,则在系统引导序列中),BONDING_OPTS 中指定的绑定选项即可生效。
以下列表提供了很多常见的频道绑定参数名称及其功能说明。有关详情,请查看 modinfobonding 输出中每个 parm 的概述,或查看 https://www.kernel.org/doc/Documentation/networking/bonding.txt 了解更详细的内容。
绑定接口参数
指定要使用的 802.3ad 聚合选择逻辑,可能值为:
stable 或者 0 — 默认设置。由最大聚合带宽选择的活动聚合器。只有全部从属聚合器失效,或活跃聚合器没有从属聚合器时,才会重新选择活动聚合器。
o 在绑定中添加或删除从属;
o 任意从属链接发生变化;
o 任意与 802.3ad 有关的状态变化;
o 绑定的管理状态改为 up。
bandwidth 和 count 选择策略允许活动聚合器部分失灵时进行 802.3ad 聚合故障转移。这样可保证聚合器高度可用,即 bandwidth 或从属连接数一直保持活动。
以毫秒为单位指定 ARP 监控的频繁度。
重要
关键是要指定 arp_interval 或 arp_ip_target 参数,或者指定 miimon 参数。否则会在链接失败时使网络性能降级。
如果在 mode=0 或者 mode=2(两种负载平衡模式)中使用这个设置,则必须配置网络交换机,以便使用网卡平均发送数据包。有关如何完成此操作的详情,请查看https://www.kernel.org/doc/Documentation/networking/bonding.txt。
默认将这个数值设定为 0,即禁用该功能。
启用 arp_interval 参数后,指定 ARP 请求的目标 IP 地址。在使用逗号分开的列表中最多可指定 16 个 IP 地址。
验证 ARP 探测的源/分配,默认为 none。其他值为 active、backup 和 all。
以毫秒为单位指定从链接失败到禁用该链接前要等待的时间。该值必须是 miimon 参数中的多个数值。默认将其设定为 0,即禁用该功能。
指定 active-backup 模式是否应该将所有从属连接设定为使用同一 MAC 地址作为 enslavement(传统行为),或在启用时根据所选策略执行绑定 MAC 地址的特殊处理。可能值为:
这个策略对永远无法更改其 MAC 地址的设备,或拒绝使用其自主源 MAC 地址传入多播的设备(影响 ARP 监控)很有帮助。这个策略的缺点是该网络中的每个设备必须通过免费 ARP 更新,这与切换 snoop 传入流量以便更新其 ARP 表的常规方法相反。如果免费 ARP 链接丢失,则可能破坏通讯。
使用这个策略同时采用 MII 监控时,在可真正传输并接受数据前就声明链接处于 up 状态的设备很可能会丢失免费 ARP,并可能需要设置正确的呼叫建立延迟(updelay)。
这个策略对使用同一 MAC 地址编程时变得混乱或发生性能损失的多端口设备有帮助。
指定链接伙伴应使用 802.3ad 模式传输 LACPDU 的速率:
以毫秒为单位指定 MII 链接监控的频率。这在需要高可用性时有用,因为 MII 是用来验证网卡是否激活。要验证某个支持 MII 工具的具体网卡的驱动程序,请作为 root 运行以下命令:
~]# ethtool interface_name |grep "Link detected:"
在这个命令中使用设备接口(比如 eth0),而不是绑定接口替换 interface_name。如果支持 MII,则该命令会返回:
Link detected: yes
如果为高可用性使用绑定的接口,则每个网卡的模块都必须支持 MII。将该值设定为 0(默认设置)即关闭此功能。配置这个设定时,最好从 100 开始。
重要
关键是要指定 arp_interval 或 arp_ip_target 参数,或者指定 miimon 参数。否则会在链接失败时使网络性能降级。
允许您指定绑定的策略。value 可为以下之一:
指定主设备的接口名称,比如 eth0。主设备是要使用的第一个绑定接口,且在其失败前不会放弃。当绑定接口的一个网卡较快并可处理较大负载时,这个设置特别有帮助。
只有在绑定接口处于 active-backup 模式时这个设置才有用。详情请查看https://www.kernel.org/doc/Documentation/networking/bonding.txt。
primary_reselect=value
为主从属接口指定重新选择策略。这会影响在活动从属接口失败或恢复主从属接口时,将主从属接口选为活动从属接口的方式。这个参数是用来防止主从属接口和其他从属接口之间的反转。可能值为:
在两种情况下会忽略 primary_reselect 设置:
使用 sysfs 更改 primary_reselect 策略后,会立即根据新策略选择最佳活动从属接口。这可能或可能不会造成活动从属接口变化,要看具体情况。
指定故障转移事件后要进行的 IGMP 成员报告数。故障转移后会立即提交一个报告,之后会每隔 200 毫秒发送数据包。
有效值范围为 0 到 255,默认值为 1。数值 0 可防止发出的 IGMP 成员报告响应故障转移事件。
这个选项在绑定模式 balance-rr (mode 0)、active-backup (mode 1)、balance-tlb (mode 5) 和balance-alb (mode 6) 中有帮助,这样可让故障转移将 IGMP 流量从一个从属接口转移到另一个从属接口。因此必须刷新 IGMP 报告以便让交换机将传入 IGMP 流量通过新选择的从属接口转发。
以毫秒为单位指定启用某个链接前要等待的时间。该数值必须是在 miimon 参数值指定值的倍数。默认设定为 0,即禁用该参数。
指定 miimon 是否应该使用 MII/ETHTOOL ioctls 或者 netif_carrier_ok() 来决定该链接状态。netif_carrier_ok() 功能以来设备驱动程序维持其 netif_carrier_on/off 状态,大多数设备驱动程序支持此功能。
MII/ETHTOOL ioctls 工具利用内核中的弃用调用序列。但这还是可以配置的,以防您的设备驱动程序不支持 netif_carrier_on/off。
有效数值是:
注意
如果绑定接口坚持链接应处于 up 状态(即使它不应处于该状态),原因可能是因为您的网络设备驱动程序不支持 netif_carrier_on/off。
选择 balance-xor 和 802.3ad 模式中用来选择从属接口的传输哈希策略。可能值为:
(source_MAC_address XOR destination_MAC) MODULO slave_count
这个算法会将所有流量放到同一从属接口的特定对等网络中,且该网络兼容 802.3ad。
未碎片化 TCP 及 UDP 数据包使用的公式为:
((source_port XOR dest_port) XOR
((source_IP XOR dest_IP) AND 0xffff)
MODULO slave_count
在碎片化 TCP 或 UDP 以及所有其他 IP 协议流量中会省略源及目标端口信息。非 IP 流量的公式与 layer2 传输哈希策略相同。
这个策略旨在模拟某些交换机的行为,特别是附带 PFC2 以及一些 Foundry 和 IBM 产品的 Cisco 交换机。
这个策略使用的算法不兼容 802.3ad。
使用硬件 MAC 地址及 IP 地址生成该哈希。这个公式为:
(((source_IP XOR dest_IP) AND 0xffff) XOR
( source_MAC XOR destination_MAC ))
MODULO slave_count
这个算法将所有流量放到同一从属接口的特定对等网络中。非 IP 流量的公式与 layer2 传输哈希策略相同。
这个策略旨在提供比单独使用 layer2 更平衡的流量分配,特别是在需要 layer3 网关设备的环境,以便连接到大多数目标。
这个算法兼容 802.3ad。