我正在设置一对 CentOS 6.3 服务器,它们将运行几个 KVM vm,并且在设置绑定桥时遇到了问题。
我在连接到 R320 服务器的一对堆叠 Dell Powerconnect 5524 交换机上使用模式 4 (802.3ad) 绑定。有 2 条链路(每台交换机 1 条)构成链路聚合组(802.3ad / LACP 绑定)。在绑定之上,我还有 VLAN 标记。
我已经验证了这是多种其他粘合模式中存在的问题,因此这不仅仅是模式 4 的问题。
我正在测试当 1 个链接断开时会发生什么(即交换机死机、电缆断裂等)。
如果我没有桥接器(用于 KVM),一切都会正常工作,故障转移会按预期发生。
如果我启用了桥接,它会正常工作,直到发生故障转移(拔掉电缆)。当发生故障转移时,/var/log/messages 显示从属链接断开,随后在一秒钟内出现:
kernel: br1: port 1(bond0.8) entering disabled state
问题是 /proc/net/bonding/bond0 显示链接已按预期启动(只是只有 1 个从属设备,而不是 2 个)。如果我重新插入电缆,它会恢复并将桥接器恢复到启用状态。
我实际上已经在 ping 过程中测试过这一点,如果时间正确,数据包实际上会在链接丢失后离开系统,但是前出现禁用消息。
我认为这种禁用状态是 STP,但是我在桥接配置上禁用了 STP,但此问题仍然存在。
brctl showstp br1
当没有从属设备运行时,仍显示链接为已禁用。
我还在服务器的网卡之间切换了(我有 2 个 Broadcom 和 4 个英特尔)。无论我使用哪种配置都没关系。
是否有人知道如何强制桥接保持启用状态,或者为什么它将键检测为已禁用(而实际上并未禁用)?
答案1
我在 2 台 Dell R410 和一对卡住的 PowerConnect 6448 上运行 Fedora 16 时遇到了完全相同的问题。
802.3ad 绑定顶部的桥接接口。
我遇到了完全一样的症状。
以下是配置文件:
猫/etc/modprobe.d/bonding.conf
别名 netdev-bond0 绑定
别名 netdev-bond1 绑定
别名 netdev-bond2 绑定
猫/ proc / net / bonding / bond0
以太网通道绑定驱动程序:v3.7.1(2011 年 4 月 27 日)
绑定模式:IEEE 802.3ad 动态链路聚合
传输哈希策略:layer3+4(1)
MII 状态:已启动
MII 轮询间隔(毫秒):100
启动延迟(毫秒):0
下行延迟(毫秒):0
802.3ad 信息
LACP速率:快
最小链接数:0
聚合器选择策略(ad_select):稳定
主动聚合器信息:
聚合器 ID:23
端口数量: 2
演员密钥:17
合作伙伴密钥:629
合作伙伴 Mac 地址:00:21:9b:b2:08:40
从属接口:em1
MII 状态:已启动
速度:1000 Mbps
双工:全双工
链接失败次数:0
永久硬件地址:00:1e:c9:fd:f1:5e
聚合器 ID:23
从队列ID:0
从属接口:em2
MII 状态:已启动
速度:1000 Mbps
双工:全双工
链接失败次数:0
永久硬件地址:00:1e:c9:fd:f1:60
聚合器 ID:23
从队列ID:0
猫/等/系统配置/网络脚本/ifcfg-br0
设备=br0
ONBOOT=是
类型=桥梁
BOOTPROTO=无
IP地址=10.100.100.101
网络掩码=255.255.255.0
IPV6INIT=否
IPV6_AUTOCONF=否
DHCPV6=否
IPV6ADDR=fe80::21e:c9ff:fefd:f15e/64
/etc/sysconfig/网络脚本/ifcfg-bond0
设备=bond0
用户控制=否
BOOTPROTO=无
ONBOOT=是
BONDING_OPTS="miimon=100 模式=4 lacp_rate=1 xmit_hash_policy=1"
桥=br0
猫/等/系统配置/网络脚本/ifcfg-em1
设备=em1
HWADDR=00:1E:C9:FD:F1:5E
ONBOOT=是
MASTER=bond0
SLAVE=是