ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

Mellanox 网卡 更新固件的步骤

Mellanox 网卡 更新固件的步骤 ConnectX-6 DxMT2892/MT4125的固件自动化更新主要有5 条技术路径从全自动零干预到手动精确控制各有适用场景。以下按自动化程度从高到低排列并给出可直接执行的命令和脚本。五种自动化更新方式对比方式自动化程度是否需要指定固件文件支持在线下载支持 OEM 卡适用场景① mlxfwmanager --online⭐⭐⭐⭐⭐ 全自动❌ 自动匹配✅ 自动从 NVIDIA 服务器拉取⚠️ 仅标准卡PSID 以 MT_ 开头单节点/批量节点无人值守② mlxup --online⭐⭐⭐⭐⭐ 全自动❌ 自动匹配✅ 自动从 NVIDIA 服务器拉取⚠️ 仅标准卡最简操作无需 MFT 安装③ mlnx-fw-updater (开机触发)⭐⭐⭐⭐☆ 半自动❌ 自动匹配✅ 依赖已下载的 MFA 包⚠️ 仅标准卡集群统一部署开机自检更新④ mlnxofedinstall --fw-update⭐⭐⭐☆☆ 安装时联动❌ 自动匹配✅ 使用 ISO 内嵌固件⚠️ 仅标准卡驱动固件一起升级⑤ mstflint burn mlxfwreset⭐⭐☆☆☆ 手动✅ 必须指定 .bin❌ 离线✅ 标准卡OEM卡需 --allow_psid_change精确控制版本、OEM 卡、救砖方式 ①mlxfwmanager --online推荐MFT 环境这是 MFT 套件提供的官方全自动路径适合已安装 MFT 的服务器。# 1. 启动 MST 服务sudomst start# 2. 查询当前固件状态确认设备名sudomlxfwmanager--query# 3. 在线自动更新全自动匹配、下载、烧录sudomlxfwmanager--online-u-y# 4. 激活新固件CX-6 Dx 支持热重置无需重启sudomlxfwreset-d/dev/mst/mt4125_pciconf0 reset-y# 5. 验证sudomlxfwmanager--query输出示例Device #1: Device Type: ConnectX6DX PSID: MT_0000000353 Versions: Current Available FW 22.30.0001 22.36.1010 Status: Update required ... Device #1: Updating FW ... Done方式 ②mlxup --online最轻量无需安装 MFTmlxup是独立二进制不需要完整 MFT 套件适合临时使用或容器环境。# 1. 下载 mlxup单文件可执行wgethttps://www.mellanox.com/downloads/firmware/mlxup/4.26.0/mlxupchmodx mlxup# 2. 查询sudo./mlxup--query# 3. 在线全自动更新所有 Mellanox 卡sudo./mlxup--online-u-y# 4. 或只更新指定设备避免误伤其他卡sudo./mlxup--online-u-y-da1:00.0# 5. 激活若 mlxup 未自动处理sudomst startsudomlxfwreset-d/dev/mst/mt4125_pciconf0 reset-y特点单文件无依赖自动从www.mellanox.com拉取匹配固件支持-D dir指定本地固件目录离线更新方式 ③mlnx-fw-updater 开机自动更新集群场景MLNX_OFED/DOCA 安装后系统自带/opt/mellanox/mlnx-fw-updater可配置为每次开机自动检查并更新。# 1. 启用开机自动更新sudosed-is/RUN_FW_UPDATER_ONBOOTno/RUN_FW_UPDATER_ONBOOTyes//etc/infiniband/openib.conf# 2. 手动触发一次模拟开机行为sudo/opt/mellanox/mlnx-fw-updater/mlnx-fw-updater.sh# 3. 查看日志sudotail-f/var/log/messages|grepfw_updater配置文件排除特定设备# 编辑排除列表逗号分隔 PCI 地址echoEXCLUDE_DEVICES0000:a1:00.0|sudotee-a/opt/mellanox/mlnx-fw-updater/mlnx-fw-updater.conf方式 ④mlnxofedinstall 联动更新驱动固件一起升如果你正在升级 MLNX_OFED/DOCA 驱动栈安装脚本可自动识别并更新固件。# 标准安装自动更新固件sudo./mlnxofedinstall --add-kernel-support# 跳过固件更新保留旧版本sudo./mlnxofedinstall --without-fw-update# 指定自定义固件目录用于内网环境sudo./mlnxofedinstall --fw-image-dir /path/to/fw-binaries/注意安装完成后若提示固件已更新必须重启或执行mlxfwreset才能生效。方式 ⑤mstflint burn精确控制OEM 卡兼容当mlxup/mlxfwmanager提示No matching image found常见于 OEM 卡PSID 非 MT_ 开头必须使用底层烧录工具。# 1. 备份当前固件关键sudomst startsudomstflint-d/dev/mst/mt4125_pciconf0 ri /backup/cx6dx_orig.bin# 2. 查询 PSID确认卡的身份sudomstflint-d/dev/mst/mt4125_pciconf0 query|grepPSID# OEM 卡会显示类似 DEL... / HP_... / IBM...# 3. 烧录指定固件标准卡sudomstflint-d/dev/mst/mt4125_pciconf0-ifw-ConnectX6Dx-rel-22_36_1010-MCX623106A-ADA_Ax.bin burn# 4. 跨 PSID 烧录OEM 卡刷标准固件风险自负sudomstflint-d/dev/mst/mt4125_pciconf0\-ifw-ConnectX6Dx-rel-22_36_1010-MCX623106A-ADA_Ax.bin\--allow_psid_changeburn# 5. 激活sudomlxfwreset-d/dev/mst/mt4125_pciconf0 reset-y一键自动化脚本生产环境可用以下脚本整合了查询 → 备份 → 在线更新 → 激活 → 验证全流程适配 ConnectX-6 Dx#!/bin/bashset-eMST_DEV/dev/mst/mt4125_pciconf0BACKUP_DIR/opt/mellanox/fw-backup/$(date%Y%m%d_%H%M%S)LOG_FILE/var/log/cx6dx_fw_update.logmkdir-p$BACKUP_DIRexec(tee-a$LOG_FILE)21echo ConnectX-6 Dx 固件自动更新$(date)# 1. 启动 MSTsudomst start# 2. 查询当前状态echo[1/5] 查询当前固件...sudomlxfwmanager-d$MST_DEV--query|tee$BACKUP_DIR/fw_status_before.txt# 3. 备份当前固件echo[2/5] 备份当前固件...sudomstflint-d$MST_DEVri$BACKUP_DIR/orig_fw.binsudomstflint-d$MST_DEVdc$BACKUP_DIR/orig_fw.iniecho 备份保存至:$BACKUP_DIR# 4. 在线自动更新echo[3/5] 在线更新固件...sudomlxfwmanager--online-u-y-d$MST_DEV# 5. 激活热重置无需重启echo[4/5] 激活新固件...sudomlxfwreset-d$MST_DEVreset-y# 6. 验证echo[5/5] 验证更新结果...sudomlxfwmanager-d$MST_DEV--query|tee$BACKUP_DIR/fw_status_after.txtecho 更新完成$(date)关键注意事项CX-6 Dx 特有风险风险点说明规避方法Flash Semaphore 争用驱动或另一个进程正在访问 Flash导致Can not obtain Flash semaphore停止所有网卡流量必要时mlxup --clear-semaphoreOEM PSID 不匹配Dell/HP/Cisco 定制卡的 PSID 非 MT_ 开头mlxup无法自动匹配改用mstflint --allow_psid_change或从 OEM 官网下载固件固件签名验证CX-6 Dx 使用签名固件非法修改会导致卡变砖只刷官方 .bin不要尝试自制固件激活方式CX-6 Dx 支持mlxfwreset热重置CX-4/5 通常需要冷重启更新后执行mlxfwreset避免不必要的重启双端口卡一个 MST 设备控制两个端口烧录一次即可不需要分别烧录pciconf0和pciconf0.1总结如何选择你的场景推荐方式命令单台服务器已装 MFT标准卡mlxfwmanager --onlinesudo mlxfwmanager --online -u -y临时使用不想装 MFTmlxup --onlinesudo ./mlxup --online -u -y集群批量部署开机自检mlnx-fw-updater修改openib.conf启用RUN_FW_UPDATER_ONBOOT升级 OFED/DOCA 顺便升固件mlnxofedinstallsudo ./mlnxofedinstall默认带固件更新OEM 卡 / 需要指定版本 / 救砖mstflintsudo mstflint -d ... -i ... burn如果你告诉我你的卡是标准 NVIDIA 卡还是OEM 定制卡PSID 是否以MT_开头以及当前 MFT/OFED 是否已安装我可以给出最精简的一条命令。
返回列表