如何在 VMware ESXi 6.7 和 7.0 上安装 NVIDIA 固件工具 (MFT)

创建于 2019 年 6 月 30 日,更新于 2021 年 9 月 10 日。本文介绍如何在 VMware ESXi 6.7/7.0 上安装和运行 NVIDIA® 固件工具 (MFT) v4.17.0。

文档目录

创建于 2019 年 6 月 30 日

更新于 2021 年 9 月 10 日

简介

本文介绍如何在 VMware ESXi 6.7/7.0 版本上安装和运行 NVIDIA® 固件工具 (MFT) v4.17.0。

参考

概述

NVIDIA ConnectX®-5/6 NATIVE ESXi 是一个软件栈,支持所有 NVIDIA 网卡解决方案,最高可达 100Gb/s 以太网 (ETH) 和 PCI Express 3.0 及 4.0 上行链路到服务器。

硬件和软件要求

  1. 服务器平台需配备基于以下 NVIDIA 技术 HCA 设备的网卡:

  2. 安装权限:安装需要在目标机器上具有管理员权限。

  3. 设备 ID:最新设备 ID 列表请访问 NVIDIA 网站。

NVIDIA 固件工具 (MFT)

NVIDIA 固件工具 (MFT) 包是一套固件管理工具,用于:

  • 生成标准或定制的 NVIDIA 固件镜像
  • 查询固件信息
  • 烧录固件镜像

设置

设置包括安装了 ConnectX-5/6 网卡的 ESXi 6.7/7.0 服务器。

安装

  1. 访问 MFT 网页:http://www.NVIDIA.com/page/management_tools

    Install NVIDIA Firmware Tools 01.PNG

  2. 启用 SSH 访问 ESXi 服务器。

  3. 使用 root 权限登录 ESXi vSphere 命令行界面

  4. 将 MFT for VMware vib 包下载到 /tmp 目录。

  5. 确认文件已放置在 /tmp 目录。

    ESXi cli

    cd /tmp
    ls
    

    ESXi cli 输出

    mft-4.17.0.106-10EM-700.0.0.15843807.x86_64.vib   nmst-4.17.0.106-1OEM.700.1.0.15843807.x86_64.vib
    
  6. 获取网卡列表。

    ESXi cli

    esxcli network nic list
    

    ESXi cli 输出

    Name     PCI Device    Driver      Admin Status  Link Status   Speed  Duplex  MAC Address         MTU  Description
    -------  ------------  ----------  ------------  -----------  ------  ------  -----------------  ----  -----------
    vmnic0   0000:39:00.0  nmlx5_core  Up            Up           100000  Full    0c:42:a1:24:04:ea  1600  Mellanox Technologies ConnectX-6 Dx EN NIC; 100GbE; dual-port QSFP56; PCIe4.0 x16; (MCX623106AC-CDA)
    vmnic1   0000:39:00.1  nmlx5_core  Up            Down              0  Half    0c:42:a1:24:04:eb  1500  Mellanox Technologies ConnectX-6 Dx EN NIC; 100GbE; dual-port QSFP56; PCIe4.0 x16; (MCX623106AC-CDA)
    vmnic10  0000:cc:00.0  nmlx5_core  Up            Up           100000  Full    ec:0d:9a:8a:27:62  9000  Mellanox Technologies ConnectX-5 Ex VPI adapter card EDR IB (100Gb/s) and 100GbE dual-port QSFP28 (MCX556A-EDAT)
    vmnic11  0000:cc:00.1  nmlx5_core  Up            Up           100000  Full    ec:0d:9a:8a:27:63  1600  Mellanox Technologies ConnectX-5 Ex VPI adapter card EDR IB (100Gb/s) and 100GbE dual-port QSFP28 (MCX556A-EDAT)
    vmnic12  0000:61:00.0  nmlx5_core  Up            Up            25000  Full    0c:42:a1:94:50:10  1500  Mellanox Technologies ConnectX-6 Lx EN NIC; 25GbE; dual-port SFP28; PCIe4.0 x8; (MCX631102AE-ADA)
    vmnic13  0000:61:00.1  nmlx5_core  Up            Up            25000  Full    0c:42:a1:94:50:11  1500  Mellanox Technologies ConnectX-6 Lx EN NIC; 25GbE; dual-port SFP28; PCIe4.0 x8; (MCX631102AE-ADA)
    vmnic4   0000:72:00.0  ixgben      Up            Up             1000  Full    18:c0:4d:00:c9:21  1500  Intel(R) Ethernet Controller 10G X550
    vmnic5   0000:72:00.1  ixgben      Up            Down              0  Half    18:c0:4d:00:c9:22  1500  Intel(R) Ethernet Controller 10G X550
    vmnic8   0000:cb:00.0  nmlx5_core  Up            Up           100000  Full    0c:42:a1:24:05:66  1500  Mellanox Technologies ConnectX-6 Dx EN NIC; 100GbE; dual-port QSFP56; PCIe4.0 x16; (MCX623106AC-CDA)
    vmnic9   0000:cb:00.1  nmlx5_core  Up            Down              0  Half    0c:42:a1:24:05:67  1500  Mellanox Technologies ConnectX-6 Dx EN NIC; 100GbE; dual-port QSFP56; PCIe4.0 x16; (MCX623106AC-CDA)
    

    ESXi cli

    esxcli network nic get -n vmnic0
    

    ESXi cli 输出

     Advertised Auto Negotiation: true
       Advertised Link Modes: Auto, 1000BaseX/Full, 10000BaseX/Full, 40000XLPPI/Full, 25000BaseCR1/Full, 50000BaseKR2/Full, 100000BaseCR4/Full
       Auto Negotiation: true
       Cable Type:
       Current Message Level: -1
       Driver Info:
             Bus Info: 0000:39:00:0
             Driver: nmlx5_core
             Firmware Version: 22.29.1016
             Version: 4.19.71.1
       Link Detected: true
       Link Status: Up
       Name: vmnic0
       PHYAddress: 0
       Pause Autonegotiate: false
       Pause RX: false
       Pause TX: false
       Supported Ports: DA
       Supports Auto Negotiation: true
       Supports Pause: false
       Supports Wakeon: false
       Transceiver: internal
       Virtual Address: 00:50:56:5e:05:8a
       Wakeon: None
    
  7. 安装 vib 包。

    ESXi cli

    esxcli software vib install -v /tmp/nmst-4.17.0.106-1OEM.700.1.0.15843807.x86_64.vib -f
    

    ESXi cli 输出

    Installation Result
       Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
       Reboot Required: true
       VIBs Installed: MEL_bootbank_nmst_4.17.0.106-1OEM.700.1.0.15843807
       VIBs Removed: MEL_bootbank_nmst_4.16.3.12-1OEM.700.1.0.15843807
       VIBs Skipped:
    

    ESXi cli

    esxcli software vib install -v /tmp/mft-4.17.0.106-10EM-700.0.0.15843807.x86_64.vib -f
    

    ESXi cli 输出

    Installation Result
       Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
       Reboot Required: true
       VIBs Installed: MEL_bootbank_mft_4.17.0.106-10EM.700.0.0.15843807
       VIBs Removed: MEL_bootbank_mft_4.16.3.12-10EM.700.0.0.15843807
       VIBs Skipped:
    

有效。 需要重启:是 已安装 VIB:MEL_bootbank_mft_4.17.0.106-0 已移除 VIB:MEL_bootbank_mft_4.16.3.12-0 已跳过 VIB:

  1. MFT 工具不在默认路径中。要运行任何 MFT 工具,请执行以下任一操作:

    • 输入完整路径。例如:/opt/mellanox/bin/flint
    • 将 MFT 路径添加到系统默认路径:运行 export PATH=$PATH:/opt/mellanox/bin

    请注意,该路径是临时的,仅在重启前有效。

  2. 将 ESXi 主机进入维护模式

  3. 重启服务器。

    reboot
    
  4. 将 ESXi 主机退出维护模式

  5. 启动 mst 驱动程序。运行:

    cd /opt/mellanox/bin
    ./mst start
    

    输出:

    Module mst is already loaded
    
  6. 打印 NVIDIA 设备的当前状态:

    /opt/mellanox/bin/mst status
    

    输出:

    MST devices:
    ------------
    mt4125_pciconf6
    mt4123_pciconf1
    mt4127_pciconf2
    mt4123_pciconf3
    mt4125_pciconf4
    mt4121_pciconf5
    
  7. 显示设备的详细状态信息:

    /opt/mellanox/bin/mst status -vv
    

    输出:

    PCI devices:
    ------------
    DEVICE_TYPE             MST                           PCI       RDMA            NET                       NUMA
    ConnectX6DX(rev:0)      mt4125_pciconf6               39:00.0
    ConnectX6DX(rev:0)      mt4125_pciconf0.1             39:00.1
    ConnectX6(rev:0)        mt4123_pciconf1               3f:00.0
    ConnectX6(rev:0)        mt4123_pciconf1.1             3f:00.1
    ConnectX6LX(rev:0)      mt4127_pciconf2               61:00.0
    ConnectX6LX(rev:0)      mt4127_pciconf2.1             61:00.1
    ConnectX6(rev:0)        mt4123_pciconf3               c5:00.0
    ConnectX6(rev:0)        mt4123_pciconf3.1             c5:00.1
    ConnectX6DX(rev:0)      mt4125_pciconf4               cb:00.0
    ConnectX6DX(rev:0)      mt4125_pciconf4.1             cb:00.1
    ConnectX5(rev:0)        mt4121_pciconf5               cc:00.0
    ConnectX5(rev:0)        mt4121_pciconf5.1             cc:00.1
    
  8. 查询设备:

    ./mlxfwmanager --query
    

    输出:

    Querying Mellanox devices firmware ...
    
    Device #1:
    ----------
    
      Device Type:      ConnectX6DX
      Part Number:      MCX623106AC-CDA_Ax
      Description:      ConnectX-6 Dx EN adapter card; 100GbE; Dual-port QSFP56; PCIe 4.0 x16; Crypto and Secure Boot
      PSID:             MT_0000000436
      PCI Device Name:  mt4125_pciconf6
      Base GUID:        0c42a103002404ea
      Base MAC:         0c42a12404ea
      Versions:         Current        Available
         FW             22.30.1004     N/A
         PXE            3.6.0301       N/A
         UEFI           14.23.0017     N/A
    
      Status:           No matching image found
    
    ...
    

附录 A

mst 简介

mst [switches]

命令和开关说明:

mst start       						# 创建代表 /dev 目录中 Mellanox 设备的特殊文件。加载适当的模块。成功完成此命令后,mst 驱动程序即可使用。
mst stop       							# 停止 Mellanox mst 驱动程序服务并卸载内核模块。
mst restart    							# "mst stop" 后跟 "mst start"
mst server start [-p|--port port]       # 启动 mst 服务器以允许传入连接。默认端口为 23108。
mst server stop 						# 停止 mst 服务器。
mst status 								# 打印 Mellanox 设备的当前状态。选项:-v 以高详细级别运行(打印每个设备的更多信息)
mst version 							# 打印版本信息

完成!

作者

BK.jpg Boris KovalevBoris Kovalev 过去几年一直担任解决方案架构师,专注于 NVIDIA Networking/Mellanox 技术,负责复杂的机器学习、大数据和基于 VMware 的高级云研究与设计。Boris 此前在多家公司担任高级顾问和解决方案架构师超过 20 年,最近在 VMware 工作。他在 NVIDIA 文档网站上撰写了多篇关于 VMware、机器学习、Kubernetes 和容器解决方案的参考设计。