一、MST命令
1、Linux命令
1、mst start
启动mst服务,在目录 /dev/mst 中创建代表 NVIDIA 设备的特殊文件。加载适当的内核模块并在目录 /var/mst_pci 中保存 PCI 配置标头。成功完成此命令后,MST 驱动程序即可开始工作。您可以通过编辑配置文件 /etc/mft/mst.conf 来配置启动命令,例如,您可以重命名设备
2、mst stop
停止mst服务,删除所有特殊文件/目录并卸载内核模块。
-
--force:尝试强制停止mst服务,即使在运行中
3、mst restart
重启mst服务,同mst stop接mst start
4、mst status
打印NVIDIA设备的当前状态
-
-v 以高详细程度运行(打印每个IB网卡详细信息)
5、mst version
打印版本信息
2、在没有内核的环境中运行MST
即使机器上没有安装内核模块或内核已关闭,mst 也可以工作。在这种情况下,设备的名称将是设备的 PCI 地址。
> mst status MST modules: ------------ MST PCI module is not loaded MST PCI configuration module is not loaded PCI Devices: ------------ 05:00.0 08:00.0 82:00.0 > mst status -v MST modules: ------------ MST PCI module is not loaded MST PCI configuration module is not loaded PCI devices: ------------ DEVICE_TYPE MST PCI RDMA NET NUMA ConnectX3Pro(rev:0) NA 05:00.0 mlx4_0 net-ib0,net-ib1 ConnectX4(rev:0) NA 08:00.0 mlx5_0 net-ib2 ConnectX4(rev:0) NA 08:00.1 mlx5_1 net-ib3 ConnectIB(rev:0) NA 82:00.0 mlx5_2 net-ib4,net-ib5 // 在设备上可运行以下命令 > flint -d 08:00.0 q Image type: FS3 FW Version: 12.16.0048 FW Release Date: 14.3.2016 Description: UID GuidsNumber Base GUID: 7cfe90030029205e 4 Base MAC: 00007cfe9029205e 4 Image VSD: Device VSD: PSID: MT_2190110032
MST 接口在 mst status -v[v] 输出中将为 NA。
二、MFT配置
MFT 配置文件位于/etc/mft/mft.conf中。它包含定义及其值的列表,语法如下:<DEF> = <value>。
-
mkey_enable=yes(默认值:否)
-
sm_config_dir=(如果为空,SM 配置目录将为:/var/cache/opensm/)
-
sm_conf_file_path=<opensm 配置文件完整路径>(默认/etc/opensm/opensm.conf)
三、mlxfwmanager
mlxfwmanager 是一个固件更新和查询实用程序,它可以扫描系统中可用的 NVIDIA 设备(仅限 mst PCI 设备)并执行必要的固件更新。
选项 | 说明 |
---|---|
-d|--dev设备名称 | 对指定的mst设备执行操作,可以用分号分隔多个设备,包含分号的设备列表必须用引号引起来 |
-h|--help | 显示帮助信息并退出 |
-v|--version | 显示可执行版本并退出 |
-- query | 查询设备信息,可以查询到网卡的详细固件信息 |
--query-format Format | 查询指定格式,例:--query-format xml,查询xml格式 |
-u|--update | 更新设备上的固件映像 |
-i|--image-file(File name) | 要使用的指定固件映像 |
-D|--image-dir | 选定指定的文件夹而不是默认目录查找固件映像 |
-f|--force | 强制更新固件映像 |
-y|--yes | 在需要确定的地方选取肯定答案 |
-no | 否定选项 |
--clear-semaphore | 强制清除设备上的闪存信号量,使用此标志时不允许执行任何命令。注意:如果设备或其他应用程序当前正在使用闪存,可能会导致系统不稳定或闪存损坏。谨慎行事。 |
--exe-rel-path | 使用相对路径 |
-l|--list-content | 列出文件/目录内容,与 --image-dir 和 --image-file 标志一起使用 |
--archive-names | 在列表中显示存档名称 |
--nofs | 以安全模式刻录映像 |
--log | 创建一个日志文件 |
-L|--log-file LogFileName | 使用指定的日志文件 |
--no_fw_ctrl | 不使用固件Ctrl更新 |
-o|--outfile OutputFileName | 写入指定的输出文件 |
--online | 从 NVIDIA 服务器在线获取所需的固件映像 |
--online-query-psid PSIDs | 查询固件信息,PSID 以逗号分隔 |
--key key | 自定义下载/更新密钥 |
--download DirectoryName | 从服务器下载文件到指定目录 |
1、查询设备
1、查询指定设备
mlxfwmanager -d <dev> --query
2、查询所有设备
mlxfwmanager --query
2、更新网卡固件
1、离线升级固件
1.在NVIDIA官网下载网卡固件
下载地址:
NVIDIA Networking Firmware Downloads
根据当前服务器的系统版本下载对应固件
2.下载完成解压上传到服务器上
下载完成后解压在window-cmd命令行输入scp命令上传到指定SSH设备
scp <文件地址> <服务器用户名>@<服务器SSH地址>:
C:\Users\>scp D:/fw-ConnectX5-rel-16_32_1010-MCX512A-ACA_Ax_Bx-UEFI-14.25.17-FlexBoot-3.6.502.bin root@192.168.1.68: root@192.168.1.68's password: fw-ConnectX5-rel-16_32_1010-MCX512A-ACA_Ax_Bx-UEFI-14.25.17-FlexBoot-3.6.502.bin 100% 16MB 11.1MB/s 00:01
3.查看是否导入成功
输入ls
命令查看
4.打开MFT工具
mst start
5.使用如下命令升级固件
mlxfwmanager -u -d <dev> -i <fw.bin文件>
root@naddod-test:~# mlxfwmanager -d /dev/mst/mt4119_pciconf0 -i fw-ConnectX5-rel-16_32_1010-MCX512A-ACA_Ax_Bx-UEFI-14.25.17-FlexBoot-3.6.502.bin -u Querying Mellanox devices firmware ... Device #1: ---------- Device Type: ConnectX5 Part Number: MCX512A-ACA_Ax_Bx Description: ConnectX-5 EN network interface card; 10/25GbE dual-port SFP28; PCIe3.0 x8; tall bracket; ROHS R6 PSID: MT_0000000080 PCI Device Name: /dev/mst/mt4119_pciconf0 Base GUID: 043f720300c73694 Base MAC: 043f72c73694 Versions: Current Available FW 16.34.1002 16.32.1010 PXE 3.6.0700 3.6.0502 UEFI 14.27.0014 14.25.0017 Status: Up to date
6.重启网卡
可关机断电重启,可以手动重启单张网卡:
mlxfwreset -d <dev> reset
重启后检查固件是否升级完成
mlxfwmanager
2、在线升级固件
1.开启MFT工具
mst strat
2.使用在线升级命令升级
mlxfwmanager -d <dev> -u --online
root@naddod-test:~# mlxfwmanager -d /dev/mst/mt4119_pciconf0 -u --online Querying Mellanox devices firmware ... Device #1: ---------- Device Type: ConnectX5 Part Number: MCX512A-ACA_Ax_Bx Description: ConnectX-5 EN network interface card; 10/25GbE dual-port SFP28; PCIe3.0 x8; tall bracket; ROHS R6 PSID: MT_0000000080 PCI Device Name: /dev/mst/mt4119_pciconf0 Base GUID: 043f720300c73694 Base MAC: 043f72c73694 Versions: Current Available FW 16.33.1048 16.34.1002 PXE 3.6.0502 3.6.0700 UEFI 14.26.0017 14.27.0014 Status: Update required Release notes for the available Firmware: -----------------------------------------
3.重启网卡
可关机断电重启,可以手动重启单张网卡:
mlxfwreset -d <dev> reset
重启后检查固件是否升级完成
mlxfwmanager
四、mlxconfig
mlxconfig 工具允许用户更改某些设备配置,而无需重新烧录固件。重置后配置也会保留。
-
默认情况下,mlxconfig 显示下次启动时将加载的配置。
-
对于第五代设备,还可以查询默认配置和当前运行固件使用的配置。
1、工具要求:
-
安装并启用 OFED/WinOF 驱动程序(适用于 ConnectX-3 和 ConnectX-3 Pro)
-
通过 PCI 接口访问设备(pciconf/pci_cr)
-
对于以下适配卡,需要以下固件版本:
-
ConnectX ® -3/ConnectX-3 Pro: v2.31.5000 或更高版本
-
Connect-IB ® : v10.10.6000 或更高版本
-
-
支持的设备:
-
适配卡: ConnectX-3/ConnectX-3 Pro/Connect-IB/ConnectX-4/ConnectX-4 Lx/ConnectX-5/ConnectX-5 Ex/ConnectX-6/ConnectX-6 Dx/ConnectX-6 Lx/NVIDIA BlueField ® /NVIDIA BlueField-2
-
交换机: Switch-IB/Switch-IB 2/Spectrum™/Spectrum-2/Spectrum-3/Quantum
-
-
已启用更改设备配置。
要使配置生效,需重新启动系统
2、命令参数
选项 | 说明 |
---|---|
-d|--dev <device> | 对指定的 mst 设备执行操作 |
-b|--db <filename> | 使用特定的数据库文件 |
-f|--file <conf.file> | 原始配置文件 |
-h|--help | 显示帮助信息。 |
-v|--version | 显示版本信息 |
-e|-enable_verbosity | 显示默认配置和当前配置。注意:对于第 5 代(第 II 组)设备,--enable_verbosity 选项适用于 ConnectX-4 固件 v12.14.0016 及以上版本,用于查询默认配置;适用于 ConnectX-4 固件 v12.17.1010 及以上版本,用于查询当前配置 |
-y|--yes | 立刻回答“是” |
-a|--all_attrs | 显示 XML 模板中的所有属性 |
-p|--private_key | 私钥的 pem 文件 |
-u|--key_uuid | 密钥对 uuid |
-eng|--openssl_engine | OpenSSL 引擎名称 |
-k|--open_ssl_key_id | OpenSSL 密钥标识符 |
--aws_hsm | 登录3S环境 |
-l|--private_key_label | 用于 3S HSM 签名的私钥标签 |
-t|--device_type <switch/hca/linkx> | 指定设备类型 |
-s|--session_id | 指定用于令牌保持活动会话的会话 ID |
-st|--session_time | 指定令牌保持会话的会话时间 |
-tkn|--token_type | 指定令牌类型 |
--sign_algorithm | 从以下选项中指定一个签名算法:RSA4k、RSA3k 或 ECDSA256 |
--nested_token | 包括 ArcusE 的挑战响应 |
clear_semaphore | 清除工具的信号量 |
i[show_confs] | 显示所有配置的信息 |
q[uery] | 查询支持的配置。注意:如果指定了设备,查询命令将查询单个设备。否则,它将查询机器上 |