Cumulus Linux (NVUE) โ Fault finding
Telemetry-driven troubleshooting and health assertions for Cumulus Linux (NVUE) data center fabrics (VXLAN/EVPN). Part of the multi-vendor Data Center automation guide.
Setup, key commands & run examples
Confirm the overlay is up on Cumulus Linux (NVUE): every EVPN/BGP peer should be Established.
nv show vrf default router bgp neighbor
# any neighbor not "Established" / Up is a faultCollect BGP/EVPN neighbors from Cumulus and print any peer that is down.
# parse "nv show vrf default router bgp neighbor" structured output
for nbr in get_bgp_neighbors(): # via NVUE REST
if nbr["state"] != "established":
print(f"[FAULT] Cumulus EVPN peer {nbr['peer']} {nbr['state']}")Most overlay faults hide in the underlay โ verify routes and interfaces on Cumulus before blaming EVPN.
nv show interface
nv show vrf default router rib ipv4Best practices
Assert, don't eyeball
Codify the checks โ Cumulus EVPN peers up, all VTEPs reachable, no climbing error counters.
Underlay before overlay
Verify OSPF/eBGP and MTU first; VXLAN/EVPN faults usually trace back to the underlay.
Compare against a baseline
Snapshot a healthy fabric state and diff against it so you spot what changed.
Both members of a pair
Check MLAG/ESI consistency on both leaves of a redundant pair, not just one.
Hands-on exercises
Guided practice tasks โ copy the starter snippet, run it against a lab device, and extend it to meet the goal.
Goal: Loop over leaves, collect EVPN neighbors and print any peer that is not up.
for dev in leaves:
# TODO: collect EVPN neighbors and report any down peerGoal: For each remote VTEP, confirm it is present in the overlay and reachable in the underlay.
expected_vteps = {"10.255.0.21", "10.255.0.22", "10.255.0.23"}
# TODO: compare against learned VTEPs and ping in the underlay VRFCurated videos & guides
Checklist โ pitfalls, gotchas & verification
Common pitfalls
- โขBlaming the overlay when the underlay (routing/MTU) is the real fault.
- โขReading Cumulus CLI by eye instead of asserting on structured state.
- โขChecking only one leaf of an MLAG/ESI pair.
Gotchas to watch
- โขAn empty diff/return is not the same as healthy โ assert peers are explicitly up.
- โขCumulus counters reset on reload โ compare deltas, not absolutes.
Verify it works
- โขRe-read EVPN neighbors and confirm every peer is Established.
- โขConfirm all expected VTEPs appear and L2/L3 VNIs are programmed.