ESXでUSB NICを接続する場合の注意点

投稿者: | 4月 23, 2020

ESXに一部のUSB NICが使える。今更USB 2.0のものを選択する人はいないだろうがUSB 3.0でもUSB 3.1のUSB-Cのでも利用可能。

 

VMware LabからドライバがESX 6.5/6.7/7.0向けにリリースされている。

https://flings.vmware.com/usb-network-native-driver-for-esxi

ファイルをデータストアにアップロードして、以下のコマンドをSSHで実行して、リブートすれば、物理NICとして表示される。

esxcli software vib install -d “/vmfs/volumes/<<<データストア名>>>/ESXi670-VMKUSB-NIC-FLING-33242987-offline_bundle-15615590.zip”

UntitledImage

ただし、これだけではだめで、永久的にバインドをするにはもう少し工夫がいる。

https://flings.vmware.com/usb-network-native-driver-for-esxi#instructions

vi /etc/rc.local.d/local.sh

以下の例は、vSwitch0にあるManagement Networkにバインドする例

図だとvmnic0がバインドされているが、usb0をバインドする例

UntitledImage

 

vusb0_status=$(esxcli network nic get -n vusb0 | grep ‘Link Status’ | awk ‘{print $NF}’)
count=0
while [[ $count -lt 20 && “${vusb0_status}” != “Up” ]]
do
    sleep 10
    count=$(( $count + 1 ))
    vusb0_status=$(esxcli network nic get -n vusb0 | grep ‘Link Status’ | awk ‘{print $NF}’)
done

if [ “${vusb0_status}” = “Up” ]; then
    esxcfg-vswitch -L vusb0 vSwitch0
    esxcfg-vswitch -M vusb0 -p “Management Network” vSwitch0
    esxcfg-vswitch -M vusb0 -p “VM Network” vSwitch0
fi

のような設定を追記する必要がある。なぜ必要かというと、このUSBドライバーのロードが起動のだいぶあとの方で行われるため、local.shで改めてバインドをしておく必要がある。

これをしないと、再起度するとバインドから外れてしまう。

 

実際パフォーマンスはどうだという話があるが、以下にUSB NICのパフォーマンスが出ている。10Mbpsから20Mbps程度となる。

https://gtrusted.com/what-usb-to-ethernet-adapters-to-buy-and-how-fast-they-perform-based-on-specs-and-chipsets-used

1GbEでもそれほどパフォーマンスが期待できない。iSCSIとかで使うのは厳しい。Management Networkくらいがいいのかと。ただし、VADPでNetwork Modeで使うと洒落にならないくらいに遅くなるので注意が必要かと。

 

 

コメントを残す