Summary
Enabling LLDP (Link Layer Discovery Protocol) allows devices on the VAST Internal network to discover each other. This is specifically useful for network visibility and troubleshooting, as well as for finding which node is connected to which switch and which port.
What is LLDP
LLDP is an open standard (IEEE 802.1AB) protocol, which means it works with equipment from virtually all network vendors (NVIDIA, Arista, Cisco, Juniper, HPE, etc.), making it ideal for any mixed-vendor environment
It allows VAST Cluster nodes to automatically discover and advertise their information to the network switch they are directly connected to. This is incredibly useful in larger clusters.
What does VAST use LLDP for?
Automated Network Mapping & Documentation
What Information is Exchanged?
When enabled, your server will periodically send LLDP packets to its neighbor (the switch) containing information like:
System Name: The server's hostname (e.g.,
web-server-01).Port ID: The name of the network interface (e.g.,
eth0orenp1s0).System Description:
Vendor: The manufacturer of the device (VAST Data).
Software Version: The operating system and version number (VAST-OS 12.15.3).
Hardware Model: The specific model of the device.
System Capabilities: It's a server (as opposed to a switch or router).
Management Address: The server's IP address.
In return, the switch sends the VAST Cluster:
Chassis ID: The switch's unique identifier (often its MAC address).14
System Name: The switch's configured hostname (e.g.,
core-switch-A).Port ID: The name of the switch port (e.g.,
Gi1/0/12).15Port Description: The human-readable description of the port (e.g.,
U14-Rack-Server-web-server-01).16VLAN Information: The VLAN ID assigned to the port.17
In short, enabling LLDP is a best practice that costs very little in resources but provides immense value for managing, documenting, and troubleshooting your network connections.
⚠️ Warning
Warning! Do not use LLDPAD
Using LLDPAD with Arista or Cisco switches where LLDP may not be running will result in LLDPAD removing PFC config from VAST C or D nodes.sudo systemctl stop lldpad sudo systemctl disable lldpad sudo python3 /usr/bin/vast_pfc.py
The new VAST OS (12.15.3+) is installed with LLDPD, we can just enable it so it is ready to go.
sudo systemctl status lldpd
### if not running, enable it
sudo systemctl enable --now lldpdIf the VAST OS only has lldpad installed, disable it and install lldpd. This steps are tested on VAST OS 12.14.25.
sudo systemctl disable --now lldpad
sudo yum install lldpd
sudo systemctl enable --now lldpdYou can then use lldpctl to query port connectivity on the VAST node. You can use grep command to limit to only certain interfaces, for example.
vast3012-var vastdata@v3012cn2 ~:$ sudo lldpctl | grep -A24 "Interface: enp129s0f1, via: LLDP, RID: 4"
Interface: enp129s0f1, via: LLDP, RID: 4, Time: 0 day, 00:10:40
Chassis:
ChassisID: mac c4:70:bd:fb:f4:90
SysName: rack34-1
SysDescr: Cumulus Linux version 5.12.1 running on Mellanox Technologies Ltd. MSN3700
MgmtIP: 10.10.11.1
MgmtIP: fe80::c670:bdff:fefb:f490
Capability: Bridge, on
Capability: Router, on
Port:
PortID: ifname swp6
PortDescr: swp6
TTL: 120
MFS: 9216
PMD autoneg: supported: yes, enabled: yes
MAU oper type: unknown
LLDP-MED:
Device Type: Network Connectivity Device
Capability: Capabilities, yes
Capability: Policy, yes
Capability: Location, yes
Capability: MDI/PSE, yes
Capability: MDI/PD, yes
Capability: Inventory, yes
-------------------------------------------------------------------------------
### or a more condense output:
vast3012-var vastdata@v3012cn2 ~:$ sudo lldpctl | grep -A24 "Interface: enp129s0f1, via: LLDP, RID: 4" | egrep 'SysName|MgmtIP|PortDescr' | awk '{print $NF}' | grep -v : | paste -s -d' '
rack34-1 10.10.11.1 swp6
### Or if you prefer JSON
vast3012-var vastdata@v3012cn2 ~:$ sudo lldpctl -f json | jq -r '.[][][]."enp129s0f1"|select(.rid!="1").chassis' | grep -v ^null
{
"rack34-1": {
"id": {
"type": "mac",
"value": "c4:70:bd:fb:f4:90"
},
"descr": "Cumulus Linux version 5.12.1 running on Mellanox Technologies Ltd. MSN3700",
"mgmt-ip": [
"10.10.11.1",
"fe80::c670:bdff:fefb:f490"
],
"capability": [
{
"type": "Bridge",
"enabled": true
},
{
"type": "Router",
"enabled": true
}
]
}
}On the switch side, we can list the VAST node connections.
cumulus@rack34-1:mgmt:~$ nv show interface lldp
Interface Speed Type Remote Host Remote Port
--------- ----- ---- ------------ -----------------
eth0 1G eth AV-VAR-TOR34 c4:18:fc:70:ab:ce
swp6 200G swp v3012cn2 c4:70:bd:fb:3c:cf
swp7 200G swp v3012cn1 c4:70:bd:cd:8a:3b
swp29 100G swp bb-3 Eth1/13
swp31 100G swp rack34-2 swp31
swp32 100G swp rack34-2 swp32