В дальнейшем используя интернет страницу cloudhosting.lv, вы соглашаетесь с правилами пользования Куки. Узнай больше. Согласен
ESXi 7.0 и Mellanox ConnectX 2 - исправление поддержки
Я успешно обновил vCenter до версии 7, но не смог обновить мои хосты с 6.7 до 7.
Я получил предупреждение о несовместимости устройств PCI, но все равно попробовал. Оказалось, что это не удалось, мой Mellanox ConnectX 2 не отображался как доступный физический сетевой адаптер.
Сначала необходимо было иметь код устройства VID / DID для MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT / s].
Устаревшие устройства, поддерживаемые драйверами VMKlinux
Устройства, которые поддерживались драйвером почтового ящика VMKlinux только в версии 6.7 или более ранней. Эти устройства больше не поддерживаются, поскольку вся поддержка драйверов VMKlinux и их устройств была полностью удалена в версии 7.0.
Как это исправить? Я настроил небольшой скрипт ESXi7-enable-nmlx4_co.v00.sh на ДЕЛАТЬ ЭТО. Примечания:
cp /bootbank/nmlx4_co.v00 /vmfs/volumes/ISO/nmlx4_co.v00.orig cp /bootbank/nmlx4_co.v00 /vmfs/volumes/ISO/n.tar cd /vmfs/volumes/ISO/ vmtar -x n.tar -o output.tar rm -f n.tar mkdir tmp-network mv output.tar tmp-network/output.tar cd tmp-network tar xf output.tar rm output.tar echo '' >> /vmfs/volumes/ISO/tmp-network/etc/vmware/default.map.d/nmlx4_core.map echo 'regtype=native,bus=pci,id=15b36750..............,driver=nmlx4_core' >> /vmfs/volumes/ISO/tmp-network/etc/vmware/default.map.d/nmlx4_core.map cat /vmfs/volumes/ISO/tmp-network/etc/vmware/default.map.d/nmlx4_core.map echo ' 6750 Mellanox ConnectX-2 Dual Port 10GbE ' >> /vmfs/volumes/ISO/tmp-network/usr/share/hwdata/default.pciids.d/nmlx4_core.ids cat /vmfs/volumes/ISO/tmp-network/usr/share/hwdata/default.pciids.d/nmlx4_core.ids tar -cf /vmfs/volumes/ISO/FILE.tar * cd /vmfs/volumes/ISO/ vmtar -c FILE.tar -o output.vtar gzip output.vtar mv output.vtar.gz nmlx4_co.v00 rm FILE.tar cp /vmfs/volumes/ISO/nmlx4_co.v00 /bootbank/nmlx4_co.v00
Скрипты добавляют поддержку HW ID в файл nmlx4_core.map:
********************************************************************* /vmfs/volumes/ISO/tmp-network/etc/vmware/default.map.d/nmlx4_core.map ********************************************************************* regtype=native,bus=pci,id=15b301f6..............,driver=nmlx4_core regtype=native,bus=pci,id=15b301f8..............,driver=nmlx4_core regtype=native,bus=pci,id=15b31003..............,driver=nmlx4_core regtype=native,bus=pci,id=15b31004..............,driver=nmlx4_core regtype=native,bus=pci,id=15b31007..............,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b30003......,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b30006......,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b30007......,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b30008......,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b3000c......,driver=nmlx4_core regtype=native,bus=pci,id=15b3100715b3000d......,driver=nmlx4_core regtype=native,bus=pci,id=15b36750..............,driver=nmlx4_core ------------------------->Last Line is FIX ________________________________________
И добавьте поддержку HW ID в файл nmlx4_core.ids:
************************************************************************************** /vmfs/volumes/FreeNAS/ISO/tmp-network/usr/share/hwdata/default.pciids.d/nmlx4_core.ids ************************************************************************************** # # This file is mechanically generated. Any changes you make # manually will be lost at the next build. # # Please edit_devices.py file for permanent changes. # # Vendors, devices and subsystems. # # Syntax (initial indentation must be done with TAB characters): # # vendor vendor_name # device device_name <-- single TAB # subvendor subdevice subsystem_name <-- two TABs 15b3 Mellanox Technologies 01f6 MT27500 [ConnectX-3 Flash Recovery] 01f8 MT27520 [ConnectX-3 Pro Flash Recovery] 1003 MT27500 Family [ConnectX-3] 1004 MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function] 1007 MT27520 Family [ConnectX-3 Pro] 15b3 0003 ConnectX-3 Pro VPI adapter card; dual-port QSFP; FDR IB (56Gb/s) and 40GigE (MCX354A-FCC) 15b3 0006 ConnectX-3 Pro EN network interface card 40/56GbE dual-port QSFP(MCX314A-BCCT ) 15b3 0007 ConnectX-3 Pro EN NIC; 40GigE; dual-port QSFP (MCX314A-BCC) 15b3 0008 ConnectX-3 Pro VPI adapter card; single-port QSFP; FDR IB (56Gb/s) and 40GigE (MCX353A-FCC) 15b3 000c ConnectX-3 Pro EN NIC; 10GigE; dual-port SFP+ (MCX312B-XCC) 15b3 000d ConnectX-3 Pro EN network interface card; 10GigE; single-port SFP+ (MCX311A-XCC) 6750 Mellanox ConnectX-2 Dual Port 10GbE -------->Last Line is FIX
После перезагрузки я увидел поддержку MT26448 [ConnectX EN 10GigE, PCIe 2.0 5GT / s].
Только ПРЕДУПРЕЖДЕНИЕ: не удалось проверить подписи следующих вибраторов: [nmlx4-core].
2020-XX-XXTXX:XX:44.473Z cpu0:2097509)ALERT: Failed to verify signatures of the following vib(s): [nmlx4-core]. All tardisks validated 2020-XX-XXTXX:XX:47.909Z cpu1:2097754)Loading module nmlx4_core ... 2020-XX-XXTXX:XX:47.912Z cpu1:2097754)Elf: 2052: module nmlx4_core has license BSD 2020-XX-XXTXX:XX:47.921Z cpu1:2097754)nmlx4_core: init_module called 2020-XX-XXTXX:XX:47.921Z cpu1:2097754)Device: 194: Registered driver 'nmlx4_core' from 42 2020-XX-XXTXX:XX:47.921Z cpu1:2097754)Mod: 4845: Initialization of nmlx4_core succeeded with module ID 42. 2020-XX-XXTXX:XX:47.921Z cpu1:2097754)nmlx4_core loaded successfully. 2020-XX-XXTXX:XX:47.951Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_core_Attach - (nmlx4_core_main.c:2476) running 2020-XX-XXTXX:XX:47.951Z cpu1:2097754)DMA: 688: DMA Engine 'nmlx4_core' created using mapper 'DMANull'. 2020-XX-XXTXX:XX:47.951Z cpu1:2097754)DMA: 688: DMA Engine 'nmlx4_core' created using mapper 'DMANull'. 2020-XX-XXTXX:XX:47.951Z cpu1:2097754)DMA: 688: DMA Engine 'nmlx4_core' created using mapper 'DMANull'. 2020-XX-XXTXX:XX:49.724Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_ChooseRoceMode - (nmlx4_core_main.c:382) Requested RoCE mode RoCEv1 2020-XX-XXTXX:XX:49.724Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_ChooseRoceMode - (nmlx4_core_main.c:422) Requested RoCE mode is supported - choosing RoCEv1 2020-XX-XXTXX:XX:49.934Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_CmdInitHca - (nmlx4_core_fw.c:1408) Initializing device with B0 steering support 2020-XX-XXTXX:XX:50.561Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_InterruptsAlloc - (nmlx4_core_main.c:1744) Granted 38 MSIX vectors 2020-XX-XXTXX:XX:50.561Z cpu1:2097754) nmlx4_core: 0000:05:00.0: nmlx4_InterruptsAlloc - (nmlx4_core_main.c:1766) Using MSIX 2020-XX-XXTXX:XX:50.781Z cpu1:2097754)Device: 330: Found driver nmlx4_core for device 0xxxxxxxxxxxxxxxxxxxxxxx
Некоторые тесты настройки 10 Гбит / с выглядят отлично, между 2x ESXi 7.0 и 2x MT2644:
[ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-120.00 sec 131 GBytes 9380 Mbits/sec 0 sender [ 4] 0.00-120.00 sec 131 GBytes 9380 Mbits/sec receiver
RoCEv1 поддерживается только потому, что:
[root@esxi~] esxcli system module parameters list -m nmlx4_core Name Type Value Description ---------------------- ---- ----- ----------- enable_64b_cqe_eqe int Enable 64 byte CQEs/EQEs when the the FW supports this enable_dmfs int Enable Device Managed Flow Steering enable_qos int Enable Quality of Service support in the HCA enable_rocev2 int Enable RoCEv2 mode for all devices enable_vxlan_offloads int Enable VXLAN offloads when supported by NIC log_mtts_per_seg int Log2 number of MTT entries per segment log_num_mgm_entry_size int Log2 MGM entry size, that defines the number of QPs per MCG, for example: value 10 results in 248 QP per MGM entry msi_x int Enable MSI-X mst_recovery int Enable recovery mode(only NMST module is loaded) rocev2_udp_port int Destination port for RoCEv2
Используйте его только в своей HomeLAB.