今日はHP Infiniband 649281-B21(Mellanox ConnectX-3 VPI MCX354A-QCBT の OEMHP Mellanox Reference Guide)を ESXi 7.0 のマシンに取り付けて、ついでにファームウェアも最新版にアップデートしてみました。
ちなみに ESXi 7.0.3 で ConnectX-3 VPI は そのままでもちゃんと NIC として認識はされます。
† ユーティリティのインストール
Mellanox の NIC の設定を変更したり、ファームウェアの更新を行うためには Mellanox Firmware Tools (MFT) という専用のユーティリティをインストールする必要があります。
サイトから zip をダウンロードして ESXi の /tmp
に配置し、以下の要領でインストールします。
esxcli software vib install -d /tmp/Mellanox-NATIVE-NMST_4.17.0.106-1OEM.700.1.0.15843807_18549811.zip
esxcli software vib install -d /tmp/Mellanox-MFT-Tools_4.17.0.106-1OEM.700.1.0.15843807_18672675.zip
インストール後に再起動が必要なので、ESXi ホストを再起動します。
† ファームウェアのアップデート
以下のコマンドでデバイスや NIC の情報が帰ってくることを確認します。
このとき PSID の内容を確認し、OEM 製品と純正製品の対応に間違いがないかを再度確認しておきます。
/opt/mellanox/bin/mst status
/opt/mellanox/bin/mlxfwmanager --query
今回は MCX354A-QCBT のファームウェアを以下から取得して、ESXi ホストの /tmp
に配置しておきます。
以下の手順でファームウェアをアップグレードし、ESXi ホストを再起動します。
# 649281-B21 -> MCX354A-FCBT
/opt/mellanox/bin/flint -d mt4099_pci_cr0 -i /tmp/fw-ConnectX3-rel-2_42_5000-MCX354A-FCB_A2-A5-FlexBoot-3.4.752.bin -allow_psid_change burn
† 設定の変更
再起動が完了したら以下のコマンドでポートを Ethernet に、SR-IOV を有効に設定しておきます。
/opt/mellanox/bin/mlxconfig -d mt4099_pciconf0 s SRIOV_EN=1 LINK_TYPE_P1=2 LINK_TYPE_P2=2
最後に設定をもう一度して完了です。
[root@esxi:~] /opt/mellanox/bin/mst status
MST devices:
------------
mt4099_pciconf0
mt4099_pci_cr0
[root@esxi:~] /opt/mellanox/bin/mlxfwmanager --query
Querying Mellanox devices firmware ...
Device #1:
----------
Device Type: ConnectX3
Part Number: MCX354A-FCB_A2-A5
Description: ConnectX-3 VPI adapter card; dual-port QSFP; FDR IB (56Gb/s) and 40GigE; PCIe3.0 x8 8GT/s; RoHS R6
PSID: MT_1090120019
PCI Device Name: mt4099_pci_cr0
Port1 MAC: ************
Port2 MAC: ************
Versions: Current Available
FW 2.42.5000 N/A
PXE 3.4.0752 N/A
Status: No matching image found
[root@esxi:~] /opt/mellanox/bin/mlxconfig -d mt4099_pciconf0 q
Device #1:
----------
Device type: ConnectX3
Device: mt4099_pciconf0
Configurations: Next Boot
SRIOV_EN True(1)
NUM_OF_VFS 8
LINK_TYPE_P1 ETH(2)
LINK_TYPE_P2 ETH(2)
LOG_BAR_SIZE 3
BOOT_PKEY_P1 0
BOOT_PKEY_P2 0
BOOT_OPTION_ROM_EN_P1 True(1)
BOOT_VLAN_EN_P1 False(0)
BOOT_RETRY_CNT_P1 0
LEGACY_BOOT_PROTOCOL_P1 PXE(1)
BOOT_VLAN_P1 1
BOOT_OPTION_ROM_EN_P2 True(1)
BOOT_VLAN_EN_P2 False(0)
BOOT_RETRY_CNT_P2 0
LEGACY_BOOT_PROTOCOL_P2 PXE(1)
BOOT_VLAN_P2 1
IP_VER_P1 IPv4(0)
IP_VER_P2 IPv4(0)
CQ_TIMESTAMP True(1)