Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch-based discovery fails on Cumulus/ONIE switches #7465

Closed
kcgthb opened this issue Aug 9, 2024 · 1 comment
Closed

Switch-based discovery fails on Cumulus/ONIE switches #7465

kcgthb opened this issue Aug 9, 2024 · 1 comment

Comments

@kcgthb
Copy link
Member

kcgthb commented Aug 9, 2024

Hi!

Last issue for today, promise! 😄

Switch-based discovery doesn't seem to work on recent Cumulus (5.9) switches if the switch switchtype is set to onie.

xcatprobe switch_macmap $switch properly reports the MAC address table from the switch (with #7464). But for some reason, the MAC addresses can't be matched to the nodes.

For instance, I have a switch defined with:

# lsdef -c esw -i nodetype,switchtype,snmpversion
esw: nodetype=switch
esw: snmpversion=2c
esw: switchtype=onie

I can list MAC addresses on that switch with xcatprobe switch_macmap:

# xcatprobe switch_macmap esw
Switch        Port(MTU)        MAC address(VLAN)           Node
--------------------------------------------------------------------------------------
[...]
esw      swp17(9216)      a8:3c:a5:3c:94:1a(2004)     node04
esw      swp18(9216)      d4:04:e6:72:1f:60(2004)     node05
esw      swp19(9216)      a8:3c:a5:3c:94:fe(2004)     node06
[...]

Yet, switch-based discovery fails to discover the nodes and logs the following:

INFO xcat.discovery.switch: (d4:04:e6:72:1f:60) Warning: Could not find any nodes using switch-based discovery

despite the fact that d4:04:e6:72:1f:60 is listed on port swp18 of that switch.

If I change the switch's switchtype to something other than onie:

# chdef esw switchtype=Cumulus123

then discovery happens instantly:

INFO xcat.discovery.zzzdiscovery: (d4:04:e6:72:1f:60) Successfully discovered the node using switch discovery method.

So, something specific to the onie switch type (maybe the fact that the MAC address table is retrieved via SSH instead of SNMP?) makes switch-based discovery fail. But I'm not sure what. :\

@kcgthb
Copy link
Member Author

kcgthb commented Aug 9, 2024

Mmmh, I guess that I may have been a bit too quick to open this issue, as restart the xCAT daemon on the MN (after having applied #7464) seems to have resolved the issue.

I guess that there's some caching of the Perl function somewhere, and the discovery function was still using the old SSH command to get the MAC addresses, and could find them.

After restarting xcatd, even with switchtype=onie, swith-based detection seems to work normally.

Closing this as a false works-for-me :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants