[Mellanox] 安裝MLNX_OFED
雖然已經安裝過很多遍了,但是這裏還是再次寫一遍安裝過程,方便以後查閱。
Mellanox的這堆東西其實每個安裝起來都不難,難點在於版本要匹配。所以最重要的是我們要知道1.我們需要哪個版本的驅動;2.這些軟件的版本對應關係。
查看當前的各種配置版本
MLNX_OFED的版本對操作系統發行版本和內核版本有一定要求。用下面的命令可以查看你的當前版本。
- 查看內核版本
$ uname -r
5.4.0-26-generic
- 查看操作系統版本
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.6 LTS
Release: 20.04
Codename: focal
- 或者一個命令就可以
$ hostnamectl
Static hostname: worker4
Icon name: computer-server
Chassis: server
Machine ID: 56fc3d3889fa427091ee490613ed7c91
Boot ID: 16989882503d406ca788a4afbe52f8c9
Operating System: Ubuntu 20.04.6 LTS
Kernel: Linux 5.4.0-26-generic
Architecture: x86-64
通常來講,我們可能會安裝Mellanox的三個東西:固件Firmware,驅動MLNX_OFED,以及工具MFT。其中Firmware的版本主要取決於你網卡的版本(如ConnectX-5對應16.35.x),下載地址在NVIDIA Networking Firmware Downloads。MFT在安裝MLNX_OFED的時候也會順帶安裝上,只不過實際使用時不知道爲啥可能會找不着。如果想要單獨安裝MFT而不重裝MLNX_OFED,可以參考[Mellanox] 安裝MFT並配置網卡爲以太網模式 - CQzhangyu - 博客園 (cnblogs.com)。
下面的命令用於檢查你已經安裝好的firmware,MLNX_OFED,MFT版本。
- 查看firmware版本
$ ibstat
CA 'mlx5_1'
CA type: MT4119
Number of ports: 1
Firmware version: 16.35.3006
Hardware version: 0
Node GUID: 0x1070fd03002fd421
System image GUID: 0x1070fd03002fd420
Port 1:
State: Active
Physical state: LinkUp
Rate: 100
Base lid: 0
LMC: 0
SM lid: 0
Capability mask: 0x00010000
Port GUID: 0x1270fdfffe2fd421
Link layer: Ethernet
- 查看MLNX_OFED版本
$ ofed_info -s
MLNX_OFED_LINUX-5.4-3.6.8.1:
- 查看mft版本
$ sudo mst start
$ sudo mst version
mst, mft 4.21.0-102, built on Aug 18 2022, 21:58:43. Git SHA Hash: f1a12d7
查看MLNX_OFED對應的內核版本
-
在MLNX_OFED Download Center裏選擇MLNX_OFED版本,選擇你的OS Distribution和Architecture,在Download/Documentation裏打開Release Notes。
-
以Release Notes - NVIDIA Docs爲例,在左側欄進入General Support。
-
以General Support - NVIDIA Docs爲例,可以看見當前OFED版本支持的操作系統版本,以及NIC firmware版本。
安裝MLNX_OFED
-
在這裏下載你想要的版本:Linux InfiniBand Drivers (nvidia.com),在Documentation->User Manual中可以看到安裝教程。這裏我下載的版本是
MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.iso
。 -
$ sudo mkdir -p /mnt/MLNX_OFED $ sudo mount -o ro,loop MLNX_OFED_LINUX-5.4-3.6.8.1-ubuntu20.04-x86_64.iso /mnt/MLNX_OFED $ cd /mnt/MLNX_OFED $ sudo ./mlnxofedinstall --without-dkms --add-kernel-support --kernel 5.4.0-26-generic --without-fw-update --force
-
重啓驅動
sudo /etc/init.d/openibd restart
現在MLNX_OFED就已經安裝完成了,可以用上面的命令來檢查你當前安裝好的版本。