As shown in the diagram above, we have a Server which needs to PXE to fetch its Kernel/RAM Disk/etc via Provisioning vlan (205).
The server is dual homed to LeafA and LeafB which are in MLAG.
Use Case: We don’t want to waste a dedicated NIC on the Server, on the Switch and cabling just for PXE boot.
We would like to leverage an LACP bond used for other Openstack VLANs (e.g. internal API, Storage, Storage-mgmt, etc) for PXE/Provisioning too.
Problem: LACP is configured on the 2 Leaf switches, but the server doesn’t even have an OS to form the LACP bond.
Solution: Configure switches to process non LACP traffic, (such as PXE) for a predefined interval before falling back to LACP.
Details: Here the switches are configured with a feature called LACP fallback, where in with few knobs, we can instruct the switches to process non-LACP traffic (such as UDP broadcast for PXE). Here the switches, whichever receives the 1st packet turn that port active, owns the server’s mac and shuts down the other interface. Thus treating the bond as similar to Active-Standby or in other words, a single homed server.
Shown below is the config for both the leafs
! Interface Port-channel 212 description controller-bond2 on Controller01 switchport switchport mode trunk switchport trunk native vlan 205 switchport trunk allowed vlan 201,205 mlag 212 port-channel lacp fallback port-channel lacp fallback timeout 5 ! Interface Ethernet 21/2 description Controller01 Slot11Port1 BOND2 channel-group 212 mode active lacp port-priority 15000 !
! Interface Port-channel 212 description controller-bond2 on Controller01 switchport switchport mode trunk switchport trunk native vlan 205 switchport trunk allowed vlan 201,205 mlag 212 port-channel lacp fallback port-channel lacp fallback timeout 5 ! Interface Ethernet 21/2 Description Controller01 Slot11Port2 BOND2 channel-group 212 mode active lacp port-priority 30000 !
Note: VLAN 201-205 are Openstack VLANs, with VLAN 205 meant for Provisioning.
Since Server BIOS was configured not to send TAGGED traffic for VLAN205 during PXE, we have to make VLAN205 as NATIVE vlan
For further reading : Port-channels and LACP chapter from the EOS user manual.