Hyper-V Server 2016 NVMeストレージデバイスの導入について、全く情報がないのですが、MSのこちらの情報が検索したのでメモ。
ディスクリートデバイス割り当てを使用したNVMeストレージデバイスの導入
分かりにくいので日本語に機械翻訳しています。
適用対象:Microsoft Hyper-V Server 2016、Windows Server 2016
Windows Server 2016から、ディスクリートデバイス割り当て(DDA)を使用して、PCIeデバイス全体をVMに渡すことができます。これにより、VM内のNVMeストレージやグラフィックスカードなどのデバイスへの高性能アクセスが可能になり、デバイスのネイティブドライバを活用することができます。
ディスクリートデバイス割り当てを使用して展開するデバイスのための計画 DDAでデバイスを使用するには3つのステップがあります。
DDA用にVMを構成する
ホストパーティションからデバイスをディスマウントする
ゲストVMへのデバイスの割り当て
すべてのコマンドは、Windows PowerShellコンソールのホスト上で管理者として実行できます。
DDA用にVMを構成する
ディスクリートデバイス割り当ては、VMにいくつかの制限を課し、次のステップを実行する必要があります。
TurnOffするVMの「自動停止アクション」を構成
# Set-VM -Name VMName -AutomaticStopAction TurnOff
デバイスのロケーションパスの検索
ホストからデバイスをディスマウントしてマウントするには、PCI Locationパスが必要です。場所パスの例は、次のようになります"PCIROOT(20)#PCI(0300)#PCI(0000)#PCI(0800)#PCI(0000)"
デバイスを取り外す
# Dismount-VMHostAssignableDevice -LocationPath $locationPath
ゲストVMへのデバイスの割り当て
最後のステップは、VMがデバイスにアクセスする必要があることをHyper-Vに伝えることです。上記の場所パスに加えて、VMの名前を知る必要があります。
# Add-VMAssignableDevice -LocationPath $locationPath -VMName VMName
これをしないと利用できないのか、そもそもDDAとは何かというところなんですが、以下の海外サイトが分かりやすいです。元がイタリア語なので機械翻訳しています。
https://vinfrastructure.it/2015/11/device-passthrough-microsoft-hyper-v/
最新のMicrosoft Windows Server 2016テクニカルプレビュー4は、Hyper-Vの興味深い新機能、Discrete Device Assignmentを追加しました。この機能は、Hyper-V上で実行されている仮想マシンの「デバイスパススルー」を実装しています。ユーザーはシステム内の一部のPCI Expressデバイスを取り出し、ゲストVMに直接渡すことができます。
VMwareユーザーは、VMware vSphere 4.0(および仮想ハードウェア7)またはKVMで導入されたVMDirectpath I / Oを認識することがあります。Hyper-Vでも同様の機能が利用できるようになりました。
面白いですが、以前のバージョンのHyper-Vには、ディスクパススルー(vSphereのRDMの概念など)だけでなく、ネットワーキングのためのSR-IOVもありました。ディスクリートデバイスの割り当ては、同じSR-IOVパーティション化の概念に基づいています。
やはり、NVMeを使用したHyper-V環境では、ディスクリートデバイス割り当てが肝になりそうですね。