Bond 和接口之间的 Linux 生成树

Bond 和接口之间的 Linux 生成树

我尝试使用网络虚拟化来让我的 Proxmox 服务器在 HA 环境中做好生产准备

我正在使用 openvswitch 2.5

我尝试达到的设置:

我的服务器有 4 个接口,其中 3 个连接到交换机 1,1 个连接到交换机 2,以便在绑定断开时实现冗余

我成功地在我的 2 个物理交换机和服务器上的虚拟网桥之间创建了一个生成树环境。但它只有在没有 Bond 的情况下才能工作

我将 eth0 连接到交换机 1,将 eth3 连接到交换机 2,并将交换机 1 和交换机 2 连接在一起。

Proxmox 与 openvswitch 接口配置

auto br1
allow-ovs br1
iface br1 inet manual
    ovs_type OVSBridge
    ovs_ports eth0 eth3 vint1

allow-br1 eth3
iface eth3 inet manual
    ovs_bridge br1
    ovs_type OVSPort
    ovs_options other_config:stp-path-cost=100

allow-br1 eth0
iface eth0 inet manual
    ovs_bridge br1
    ovs_type OVSPort
    ovs_options other_config:stp-path-cost=10

auto vint1
allow-br1 vint1
iface vint1 inet static
    ovs_type OVSIntPort
    ovs_bridge br1
    ovs_options vlan_mode=native-untagged
    ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)${IFACE}-vif
    address 10.2.2.4
netmask 255.255.255.192
gateway 10.2.2.1

它可以工作,但是当我尝试用具有 eth0 eth1 和 eth2 作为从属的绑定替换 eth0 时。

生成树不想工作

接口配置:

auto br1
allow-ovs br1
iface br1 inet manual
    ovs_type OVSBridge
    ovs_ports bond1 eth3 vint1

allow-br1 bond1
iface bond1 inet manual
    ovs_bridge br1
    ovs_type OVSBond
    ovs_bonds eth0 eth1 eth2
    ovs_options bond_mode=balance-tcp lacp=active other_config:lacp-time=fast other_config:stp-path-cost=10

allow-br1 eth3
iface eth3 inet manual
    ovs_bridge br1
    ovs_type OVSPort
    ovs_options other_config:stp-path-cost=100

auto vint1
allow-br1 vint1
iface vint1 inet static
    ovs_type OVSIntPort
    ovs_bridge br1
    ovs_options vlan_mode=native-untagged
    ovs_extra set interface ${IFACE} external-ids:iface-id=$(hostname -s)-${IFACE}-vif
    address 10.2.2.4
    netmask 255.255.255.192
    gateway 10.2.2.1

在这种情况下,每个链接都会进入前向模式,并且网络上会开始循环。

LACP 连接正在工作。

我不知道在生成树环境中放置绑定(LACP)和经典接口是否常见。

我已经研究了好几天了,但就是找不到让它工作的方法。

我不知道当债券处于 UP 状态时我是否应该使用生成树以外的其他东西来切断安全链接。

我不知道 openvswitch 是否能完成我想要做的事情。

我不需要立即得到解决的答案

但它可以帮助我理解和尝试不同的事物。

我现在陷入了困境,我尝试了很多方法,但都失败了。

感谢那些帮助我的人。

答案1

不幸的是我认为 Open vSwitch 目前无法在绑定链路上执行 RSTP/STP(https://pve.proxmox.com/wiki/Open_vSwitch#Example_4:_Rapid_Spanning_Tree_.28RSTP.29_-_1Gbps_uplink.2C_10Gbps_interconnect)。我目前正在进行完全相同的设置,我真的希望这将很快实现。

相关内容