Similar to the glorious Brocade ICX Series (cheap & powerful 10gbE/40gbE switching) Thread, I'd like to use this thread to compile some knowledge about Mellanox switches that is spread over many places in the forum, which can be hard to find for newbies.
I will expand this thread / post over time, so if you have some information that you'd like to have added, just write it in a comment.
(MAXIMUM) SUPPORTED MLNX-OS / ONYX VERSIONS:
Upgrading beyond these versions or using other versions may brick your switch and require a recovery procedure!
As I don't have a lot of time right now (but want to get this done before I forget it), I'll just start with some basics
Overview of current Mellanox switch series that may be interesting for homelabs:
- Mellanox IS5000 Series: Old, Infiniband only switches. They should generally be avoided:
- Mellanox SX Series: 40G / 56G switches with Switch-X / SwitchX-2 chip.
They come in different flavours (unmanaged / managed, full width, half width, etc... TODO: Full Model Listing).
They are very energy efficient (TODO: Exact numbers). Most of them are PowerPC, but some are x86
Managed SX Series switches can do VPI - That means you can have some ports do Infiniband, some Ethernet at the same time and even use integrated IPoIB gateway functionality.
Highest supported firmware version (for managed switches): 3.6.8012
DO NOT try to update to a version beyond that on x86 switches - It may brick your switch by automatically doing a bios update that prevents the switch ASIC from being detected!
- Mellanox SB77XX/78XX series: 100G Infiniband switches with Switch-IB / Switch-IB 2 chip (no VPI like SX Series). x86 control plane, highest supported version: 3.9.3124
Very power efficient! SB7700 needs only 53W in IDLE (one PSU)
- Mellanox SN2XXX series: 100G Ethernet switches with Spectrum chip (no VPI like SX series). x86 control plane, highest supported version: ?? Apparently, it's 3.10.4100 (LTS)
Very power efficient. SN2700 needs only 51W in IDLE (one PSU), SN2100 about 35W iirc (after the fans have spun down)
They come in different flavours, but generally you have:
Full Width:
- SN2700: 19" 32x100G, Celeron 1047U, mSATA SSD (TODO: Expand)
- SN2410: 19", 48x25G + 8x100G, Celeron 1047U, mSATA SSD (TODO: Expand)
- SN2100: 9.5" (half-width) 16x100G, Atom C2XXX (affected by AVR54 bug, depending on production date), M.2 SATA SSD (M.2 2242), no normal USB Port (needs Mini-USB to USB OTG adapter)
- SN2010: 9.5" (half-widht) 18x25G + 4x100G, Atom C2XXX (affected by AVR54 bug, depending on production date), M.2 SATA SSD (M.2 2242)
..and more?
Tips & Tricks for working with those switches:
- SN2XXX / SB7XXX series: Replace your SSDs and make backups! The original Innodisk 3ME3 / 3IE1 / StorFly VSF302XC016G-MLX SSDs are prone to failure. There are firmware updates, but they do not help.
Apparently, there are fixed versions: StorFly VSF302XC016G-MLX1, Innodisk DHM24-16GD09BC1DC-92
Recommended replacement models:
Full Width (SN2700, SN2410): mSATA -> Transcend TS128GMSA452T-I (Industrial Variant, higher temperature range) or TS128GMSA452T, other variants like TS64GMSA452T, TS64GMSA452T-I, TS256GMSA452T, TS256GMSA452T-I, etc... will work too. But the 128GB is usually the best choice (enough capacity and price per capacity). I recommend the -I Industrial Version due to higher temperature range - it's just about 2 bucks more than the standard version
Half Width (SN2100, SN2010): M.2 2242 SATA -> TS128GMTS552T-I (Industrial Variant, higher temperature range) or TS128GMTS552T
Same as above: Other capacities will work too
- If you get an SN2XXX with ONIE, Cumulus or no OS, you can easily flash it to ONYX / MLNX-OS by using the setups linked later in the thread (TODO: Guide)
- When installing / recovering half-width series (SN2100, SN2010), DO NOT USE UEFI BOOT
Control Plane with Atom C2000 needs legacy boot. Otherwise it will get stuck in an infinite loop trying to update the BIOS, because it cannot read the DMI and the auto bios update script is terribly written.
- When upgrading SN2000 switches, from very old firmware, do not take too large steps.
There is at least one known issue when upgrading from v3.7 to v3.10, where v3.10 OS will not be able to find the ASIC and be stuck in a loop.
The ASIC has its own EEPROM with firmware, which is upgraded when upgrading the OS. However, v3.10 OS seems to be incompatible with the ASIC Firmware from v3.7
- The serial terminal behaves a bit weird sometimes when editing large commands. To fix this, use
- To download firmware from an USB stick, use
TODO: Expand
I will expand this thread / post over time, so if you have some information that you'd like to have added, just write it in a comment.
(MAXIMUM) SUPPORTED MLNX-OS / ONYX VERSIONS:
Upgrading beyond these versions or using other versions may brick your switch and require a recovery procedure!
Name / Types | Version |
SwitchX / SwitchX-2 PowerPC (SX6036, SX6012, SX1016, etc...) | 3.6.8012 (no newer build for PowerPC available) |
SwitchX / SwitchX-2 x86 (SX6710, SX1410, etc...) | 3.6.8012 (upgrading beyond WILL brick your switches' BIOS) |
SwitchIB (SB7700) | 3.9.3124 |
Spectrum x86 (SN2100, SN2700, SN2010, etc) | 3.10.4XXX (3.10.4404 as of 24th January 2024) (DO NOT upgrade to 3.10.5000, 3.10.6004, 3.11.XXXX etc.) |
As I don't have a lot of time right now (but want to get this done before I forget it), I'll just start with some basics
Overview of current Mellanox switch series that may be interesting for homelabs:
- Mellanox IS5000 Series: Old, Infiniband only switches. They should generally be avoided:
- Mellanox SX Series: 40G / 56G switches with Switch-X / SwitchX-2 chip.
They come in different flavours (unmanaged / managed, full width, half width, etc... TODO: Full Model Listing).
They are very energy efficient (TODO: Exact numbers). Most of them are PowerPC, but some are x86
Managed SX Series switches can do VPI - That means you can have some ports do Infiniband, some Ethernet at the same time and even use integrated IPoIB gateway functionality.
Highest supported firmware version (for managed switches): 3.6.8012
DO NOT try to update to a version beyond that on x86 switches - It may brick your switch by automatically doing a bios update that prevents the switch ASIC from being detected!
- Mellanox SB77XX/78XX series: 100G Infiniband switches with Switch-IB / Switch-IB 2 chip (no VPI like SX Series). x86 control plane, highest supported version: 3.9.3124
Very power efficient! SB7700 needs only 53W in IDLE (one PSU)
- Mellanox SN2XXX series: 100G Ethernet switches with Spectrum chip (no VPI like SX series). x86 control plane, highest supported version: ?? Apparently, it's 3.10.4100 (LTS)
Very power efficient. SN2700 needs only 51W in IDLE (one PSU), SN2100 about 35W iirc (after the fans have spun down)
They come in different flavours, but generally you have:
Full Width:
- SN2700: 19" 32x100G, Celeron 1047U, mSATA SSD (TODO: Expand)
- SN2410: 19", 48x25G + 8x100G, Celeron 1047U, mSATA SSD (TODO: Expand)
- SN2100: 9.5" (half-width) 16x100G, Atom C2XXX (affected by AVR54 bug, depending on production date), M.2 SATA SSD (M.2 2242), no normal USB Port (needs Mini-USB to USB OTG adapter)
- SN2010: 9.5" (half-widht) 18x25G + 4x100G, Atom C2XXX (affected by AVR54 bug, depending on production date), M.2 SATA SSD (M.2 2242)
..and more?
Tips & Tricks for working with those switches:
- SN2XXX / SB7XXX series: Replace your SSDs and make backups! The original Innodisk 3ME3 / 3IE1 / StorFly VSF302XC016G-MLX SSDs are prone to failure. There are firmware updates, but they do not help.
Apparently, there are fixed versions: StorFly VSF302XC016G-MLX1, Innodisk DHM24-16GD09BC1DC-92
Recommended replacement models:
Full Width (SN2700, SN2410): mSATA -> Transcend TS128GMSA452T-I (Industrial Variant, higher temperature range) or TS128GMSA452T, other variants like TS64GMSA452T, TS64GMSA452T-I, TS256GMSA452T, TS256GMSA452T-I, etc... will work too. But the 128GB is usually the best choice (enough capacity and price per capacity). I recommend the -I Industrial Version due to higher temperature range - it's just about 2 bucks more than the standard version
Half Width (SN2100, SN2010): M.2 2242 SATA -> TS128GMTS552T-I (Industrial Variant, higher temperature range) or TS128GMTS552T
Same as above: Other capacities will work too
- If you get an SN2XXX with ONIE, Cumulus or no OS, you can easily flash it to ONYX / MLNX-OS by using the setups linked later in the thread (TODO: Guide)
- When installing / recovering half-width series (SN2100, SN2010), DO NOT USE UEFI BOOT
Control Plane with Atom C2000 needs legacy boot. Otherwise it will get stuck in an infinite loop trying to update the BIOS, because it cannot read the DMI and the auto bios update script is terribly written.
- When upgrading SN2000 switches, from very old firmware, do not take too large steps.
There is at least one known issue when upgrading from v3.7 to v3.10, where v3.10 OS will not be able to find the ASIC and be stuck in a loop.
The ASIC has its own EEPROM with firmware, which is upgraded when upgrading the OS. However, v3.10 OS seems to be incompatible with the ASIC Firmware from v3.7
- The serial terminal behaves a bit weird sometimes when editing large commands. To fix this, use
cli session terminal resize
- To download firmware from an USB stick, use
image fetch scp://admin:admin@127.0.0.1/var/mnt/usb1/image-X86_64-3.10.4404.img
TODO: Expand
Last edited: