LACP 旁路
在 Cumulus Linux 中,LACP 旁路允许以 802.3ad 模式配置的 bond 即使在没有 LACP 伙伴的情况下也能变为活动状态并转发流量。例如,您可以使不具备运行 LACP 能力的主机在连接到以 802.3ad 模式配置的 bond 上的交换机时进行 PXE 启动。在预启动过程完成后,并且主机能够运行 LACP 后,正常的 802.3ad 链路聚合操作将接管。
LACP 旁路全活动模式
在全活动模式下,当 bond 具有多个从属接口时,每个 bond 从属接口在 bond 处于旁路模式时都作为活动链路运行。这在具有多个 NIC 的服务器的 PXE 启动期间非常有用,因为您无法预先确定哪个端口需要处于活动状态。
- 在未指定为交换机上的桥接端口的 bond 上,不支持全活动模式。
- 当 LACP bond 处于全活动模式时,STP 不在单独的 bond 从属接口上运行。仅在面向主机的 LACP bond 上使用全活动模式。将 STP BPDU 保护与全活动模式一起配置。
- 在 MLAG 部署中,当主机的 bond 从属接口连接到两个交换机且 bond 处于全活动模式时,bond 的所有从属接口在主 MLAG 节点和辅助 MLAG 节点上都处于活动状态。如果物理主机上存在多个物理 NIC 接口或多个物理 NIC,NVIDIA 建议您在 PXE 启动配置文件中定义哪个物理 NIC 或接口运行 PXE 启动。如果您未定义特定的 NIC 或接口,交换机将在 bond 中的所有接口上发送 PXE 启动请求,并且 PXE 请求将失败。
- LACP 旁路适用于 EVPN 多宿主。
- Cumulus Linux 不支持 priority mode、bond-lacp-bypass-period、bond-lacp-bypass-priority 和 bond-lacp-bypass-all-active。
配置 LACP 旁路
要在面向主机的 bond 上启用 LACP 旁路
以下命令创建一个启用 LACP 旁路的 VLAN 感知桥接
cumulus@leaf01:~$ nv set interface bond1 bond member swp1-2
cumulus@leaf01:~$ nv set interface bond1 bond mlag id 1
cumulus@leaf01:~$ nv set interface bond1 bond lacp-bypass on
cumulus@leaf01:~$ nv set interface bond1-3 bridge domain br_default
cumulus@leaf01:~$ nv set bridge domain br_default vlan 10,20,30
cumulus@leaf01:~$ nv config apply
编辑 /etc/network/interfaces 文件以添加 set bond-lacp-bypass-allow 为 yes 选项,然后运行 ifreload -a 命令。以下配置创建一个启用 LACP 旁路的 VLAN 感知桥接。
cumulus@switch:~$ sudo nano /etc/network/interfaces
...
auto bond1
iface bond1
bond-slaves swp1 swp2
bond-mode 802.3ad
bond-lacp-bypass-allow yes
clag-id 1
...
auto bridge
iface bridge
bridge-ports bond1 bond2 bond3
bridge-vids 10 20 30
bridge-vlan-aware yes
...
cumulus@switch:~$ sudo ifreload -a
要显示 bond 配置,请运行 nv show interface <bond> 命令。
cumulus@leaf01:mgmt:~$ nv show interface bond1
operational applied description
----------------------- ----------------- ---------- ----------------------------------------------------------------------
type bond bond The type of interface
[acl] Interface ACL rules
bond
down-delay 0 0 bond down delay
lacp-bypass on lacp bypass
lacp-rate fast fast lacp rate
mode lacp bond mode
up-delay 0 0 bond up delay
[member] swp1 swp1 Set of bond members
mlag
enable on Turn the feature 'on' or 'off'. The default is 'off'.
id 1 1 MLAG id
peer-interface bond1 Peer interface
status dual Mlag Interface status
bridge
[domain] br_default br_default Bridge domains on this interface
...
要检查链路的状态,请在 bond 及其从属接口上运行 NVUE nv show interface <interface> 命令或 Linux ip link show 命令
cumulus@switch:~$ ip link show bond1
164: bond1: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue master br0 state UP mode DORMANT group default
link/ether c4:54:44:f6:44:5a brd ff:ff:ff:ff:ff:ff
cumulus@switch:~$ ip link show swp1
55: swp1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond1 state UP mode DEFAULT group default qlen 1000
link/ether c4:54:44:f6:44:5a brd ff:ff:ff:ff:ff:ff
cumulus@switch:~$ ip link show swp2
56: swp2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond1 state UP mode DEFAULT group default qlen 1000
link/ether c4:54:44:f6:44:5a brd ff:ff:ff:ff:ff:ff