vSphere IaaS control plane 環境内の ESXi ホストに NVIDIA GRID GPU グラフィック デバイスが 1 つ以上搭載されている場合は、NVIDIA GRID 仮想 GPU (vGPU) テクノロジーを使用するように仮想マシンを構成できます。パススルー モードで仮想マシンを使用できるように ESXi ホスト上の他の PCI デバイスを構成することもできます。

vSphere IaaS control plane での vGPU を使用した仮想マシンのデプロイ

NVIDIA GRID GPU グラフィック デバイスは、複雑なグラフィック操作を最適化し、CPU に過大な負荷をかけずに高パフォーマンスで動作するように設計されています。NVIDIA GRID vGPU は、単一の物理 GPU を個別の vGPU 対応パススルー デバイスとして複数の仮想マシンで共有することにより、比類のないグラフィック パフォーマンス、費用対効果、およびスケーラビリティを提供します。

考慮事項

NVIDIA vGPU を使用するときは次の考慮事項が適用されます。
  • 3 ゾーン スーパーバイザー は、vGPU を使用する仮想マシンをサポートしていません。
  • 仮想マシン サービスで管理される vGPU デバイスを備えた仮想マシンは、ESXi ホストがメンテナンス モードになると自動的にパワーオフされます。このことが、仮想マシンで実行されているワークロードに一時的に影響する可能性があります。ホストがメンテナンス モードを終了すると、仮想マシンは自動的にパワーオンされます。
  • DRS は、vGPU 仮想マシンを幅優先方式でクラスタのホスト全体に分散します。詳細については、『vSphere のリソース管理』ガイドの「DRS Placement of vGPU VMs」を参照してください。

要件

NVIDIA vGPU を構成するには、次の要件に従います。

  • ESXi がサポートされていることを VMware 互換性ガイドで確認した後、ホストが電源および構成の要件を満たしていることをベンダーに問い合わせて確認します。
  • [直接共有] モードの 1 つ以上のデバイスを使用するように ESXi ホストのグラフィック設定を構成します。『vSphere のリソース管理』ドキュメントのホスト グラフィックの構成を参照してください。
  • vGPU デバイスを含む仮想マシンに対して使用するコンテンツ ライブラリには、起動モードが EFI に設定されたイメージ(CentOS など)が含まれている必要があります。
  • NVIDIA vGPU ソフトウェアをインストールします。NVIDIA は、次のコンポーネントを含む vGPU ソフトウェア パッケージを提供します。

    詳細については、該当する NVIDIA 仮想 GPU ソフトウェア ドキュメントを参照してください。

vSphere Client を使用した仮想マシン クラスへの vGPU デバイスの追加

仮想マシン クラスを作成、または既存の仮想マシン クラスを編集して、NVIDIA GRID 仮想 GPU (vGPU) を追加します。

前提条件

必要な権限:
  • 名前空間.クラスタ全体の構成の変更
  • 名前空間.名前空間構成の変更
  • 仮想マシン クラス.仮想マシン クラスの管理

手順

  1. 仮想マシン クラスを作成、または既存の仮想マシン クラスを編集します。
    オプション 操作
    新しい VM クラスの作成
    1. vSphere Client ホーム メニューから、[ワークロード管理] を選択します。
    2. [サービス] タブをクリックし、[VM サービス] ペインで [管理] をクリックします。
    3. [VM サービス] 画面で [VM クラス] をクリックして、[VM クラスの作成] をクリックします。
    4. プロンプトに従います。
    仮想マシン クラスの編集
    1. vSphere Client ホーム メニューから、[ワークロード管理] を選択します。
    2. [サービス] タブをクリックし、[VM サービス] ペインで [管理] をクリックします。
    3. [VM サービス] 画面で [VM クラス] をクリックします。
    4. 既存の仮想マシン クラスのペインで、[管理] をクリックして [編集] をクリックします。
    5. プロンプトに従います。
  2. [構成] 画面で [仮想ハードウェア] タブをクリックし、[新規デバイスを追加] をクリックして、[PCI デバイス] を選択します。
    [新しいデバイスを追加] メニューの [PCI デバイス] オプション
  3. [デバイスの選択] 画面で、使用可能なデバイスのリストから NVIDIA GRID vGPU を選択し、[選択] をクリックします。
    デバイスが [仮想ハードウェア] 画面に表示されます。
  4. [詳細パラメータ] タブをクリックし、以下の属性と値を使用してパラメータを設定します。
    オプション 説明
    パラメータ
    pciPassthru0.cfg.enable_uvm 1
    pciPassthru1.cfg.enable_uvm 1
    詳細パラメータへの属性と値の追加
  5. 構成を確認して [終了] をクリックします。

結果

仮想マシン クラスのペインに [PCI デバイス] タグが表示されている場合は、仮想マシン クラスが vGPU 対応となっています。

仮想マシン クラスのペインの PCI デバイス タグ

データセンター CLI を使用した仮想マシン クラスへの vGPU デバイスの追加

vGPU と詳細構成の追加には、vSphere Client に加え、データセンター CLI (DCLI) コマンドを使用することもできます。

DCLI コマンドの詳細については、「Data Center CLI を使用した仮想マシン クラスの作成と管理」を参照してください。

手順

  1. root ユーザー アカウントを使用して vCenter Server にログインし、dcli +i と入力して DCLI を対話モードで使用します。
  2. 次のコマンドを実行して、仮想マシン クラスを作成します。
    次の例で示されている my-class 仮想マシン クラスには、2 個の CPU、2,048 MB のメモリ、2 つのサンプル vGPU プロファイル mockup-vmiop-8c および mockup-vmiop を備えた VirtualMachineConfigSpec が含まれています。extraConfig のフィールド pciPassthru0.cfg.enable_uvm および pciPassthru1.cfg.enable_uvm は、1 に設定されます。
    dcli +i +show-unreleased com vmware vcenter namespacemanagement virtualmachineclasses create --id my-class --cpu-count 2 --memory-mb 2048 --config-spec '{"_typeName":"VirtualMachineConfigSpec","deviceChange":[{"_typeName":"VirtualDeviceConfigSpec","operation":"add","device":{"_typeName":"VirtualPCIPassthrough","key":20,"backing":{"_typeName":"VirtualPCIPassthroughVmiopBackingInfo","vgpu":"mockup-vmiop-8c"}}},{"_typeName":"VirtualDeviceConfigSpec","operation":"add","device":{"_typeName":"VirtualPCIPassthrough","key":20,"backing":{"_typeName":"VirtualPCIPassthroughVmiopBackingInfo","vgpu":"mockup-vmiop"}}}],"extraConfig":[{"_typeName":"OptionValue","key":"pciPassthru0.cfg.enable_uvm","value":{"_typeName":"string","_value":"1"}},{"_typeName":"OptionValue","key":"pciPassthru1.cfg.enable_uvm","value":{"_typeName":"string","_value":"1"}}]}'
    

vSphere IaaS control plane の仮想マシンへの NVIDIA ゲスト ドライバのインストール

仮想マシンに vGPU 用に構成された PCI デバイスが含まれている場合は、vSphere IaaS control plane 環境で仮想マシンを作成して起動した後、NVIDIA vGPU グラフィック ドライバをインストールして GPU 操作を完全に有効にします。

前提条件

  • vGPU を備えた仮想マシンをデプロイします。仮想マシンの YAML ファイルが、vGPU 定義を持つ仮想マシン クラスを参照していることを確認します。vSphere IaaS control plane への仮想マシンのデプロイを参照してください。
  • NVIDIA ダウンロード サイトから vGPU ソフトウェア パッケージをダウンロードし、パッケージを解凍し、ゲスト ドライブ コンポーネントの準備ができていることを確認します。詳細については、該当する NVIDIA 仮想 GPU ソフトウェアのドキュメントを参照してください。
    注: ドライバ コンポーネントのバージョンは、vSphere 管理者が ESXi ホストにインストールした vGPU Manager のバージョンに対応している必要があります。

手順

  1. NVIDIA vGPU ソフトウェアの Linux ドライバ パッケージ(NVIDIA-Linux-x86_64-version-grid.run など)をゲスト仮想マシンにコピーします。
  2. ドライバ インストーラを実行する前に、すべてのアプリケーションを終了します。
  3. NVIDIA vGPU ドライバ インストーラを起動します。
    sudo ./NVIDIA-Linux-x86_64-version-grid.run
  4. NVIDIA ソフトウェア使用許諾契約書に同意し、[はい] を選択して設定を自動的に更新します。
  5. ドライバがインストールされていることを確認します。
    次に例を示します。
    ~$ nvidia-smi
    Wed May 19 22:15:04 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.63       Driver Version: 460.63       CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  GRID V100-4Q        On   | 00000000:02:00.0 Off |                  N/A|
    | N/AN/AP0    N/A/  N/A|    304MiB /  4096MiB |      0%      Default |
    |                               |                      |                  N/A|
    +-------------------------------+----------------------+----------------------+
    
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |  No running processes found                                                 |
    +-----------------------------------------------------------------------------+

vSphere IaaS control plane での PCI デバイスを使用した仮想マシンのデプロイ

パススルー モードで仮想マシンを使用できるように、vGPU に加えて ESXi ホスト上の他の PCI デバイスを構成することもできます。

vSphere IaaS control plane では、動的 DirectPath I/O デバイスがサポートされます。動的 DirectPath I/O を使用すると、仮想マシンはホストに接続されている物理 PCI および PCIe デバイスに直接アクセスできます。動的 DirectPath I/O を使用して、複数の PCI パススルー デバイスを仮想マシンに割り当てることができます。各パススルー デバイスは、PCI ベンダーおよびデバイス識別子で指定できます。
注: PCI パススルー デバイスに動的 DirectPath I/O を構成する場合は、PCI デバイスをホストに接続し、そのデバイスをパススルーで使用可能とマークします。『 vSphere のネットワーク』ドキュメントの ホストでのネットワーク デバイスのパススルーを有効にするを参照してください。