グラフィック処理のためのホストの準備

このセクションでは、サポートされているグラフィック仮想化技術を利用するためにXenServerを準備する手順を説明します。これには、NVIDIA GRID vGPU、AMD MxGPU、Intel GVT-d、およびGVT-gが含まれます。

NVIDIA GRID vGPU

NVIDIA GRID vGPUを使用すると、複数の仮想マシン(VM)で単一の物理GPUに同時に直接アクセスできます。このとき、仮想化されていないオペレーティングシステムで動作するものと同じNVIDIAグラフィックドライバーが使用されます。GRID物理GPUでは、複数の仮想GPUデバイス(vGPU)がサポートされます。このサポートを提供するには、物理GPUが、XenServerコントロールドメイン(dom0)で実行されるNVIDIA社のGRID Virtual GPUマネージャーによって制御されている必要があります。vGPUは仮想マシンに直接割り当てることができます。

仮想マシンは、ハイパーバイザーがパススルーした物理GPUと同じように、GRID仮想GPUを使用します。仮想マシンにNVIDIAドライバーをインストールすると、GPUに直接アクセスして、パフォーマンス上重要な処理を高速化できるようになります。また、GRID Virtual GPUマネージャーに準仮想化インターフェイスが提供されます。

NVIDIA GRIDは、Citrix Virtual AppsおよびDesktopsのHDX 3D Pro機能と互換性があります。詳しくは、「HDX 3D Pro」を参照してください。

ライセンスメモ

NVIDIA vGPUは、XenServer Enterprise Editionユーザー、またはCitrix Virtual Apps and Desktops権限によりXenServerにアクセスするユーザーが使用できます。XenServerの各エディションおよびエディション間のアップグレードについては、Citrix Webサイトを参照してください。詳しくは、「ライセンス」を参照してください。

使用するNVIDIAグラフィックカードによっては、NVIDIAのサブスクリプションまたはライセンスが必要な場合があります。

NVIDIAカードのライセンスについては、 NVIDIA社のWebサイト を参照してください。

利用可能なNVIDIA GRID vGPUの種類

NVIDIA GRIDカードには、複数のグラフィック処理装置(GPU)が搭載されています。たとえば、Tesla M10カードにはGM107GL GPUが4つ、Tesla M60カードにはGM204GL GPUが2つ含まれています。各物理GPUは、異なる種類の仮想GPU(vGPU)をホストできます。 vGPUの種類ごとに、特定の量のフレームバッファー、サポートされるディスプレイ数、および最大解像度が設定されており、さまざまなクラスのワークロードを対象としています。

NVIDIAカードのライセンスについては、 NVIDIA社のWebサイト を参照してください。

注:

物理GPU上で同時にホストされるvGPUは、すべて同じ種類でなければなりませんが、同じカード上の物理GPUについては、このような制限は適用されません。この制限は自動的に適用されるため、容量の計画において予期せぬ問題が発生する可能性があります。

たとえば、Tesla M60カードには2つの物理GPUが搭載されており、次の11種類のvGPUをサポートします:

  • GRID M60-1A
  • GRID M60-2A
  • GRID M60-4A
  • GRID M60-8A
  • GRID M60-0B
  • GRID M60-1B
  • GRID M60-0Q
  • GRID M60-1Q
  • GRID M60-2Q
  • GRID M60-4Q
  • GRID M60-8Q

M60-1AのvGPUが割り当てられた仮想マシンと、M60-2AのvGPUが割り当てられた仮想マシンを同時に起動する場合:

  • 一方の物理GPUではM60-1Aのインスタンスのみがサポートされます。
  • もう一方の物理GPUでは、M60-2Aのインスタンスのみがサポートされます。

そのため、この単一のカードでM60-4Aインスタンスは起動できません。

NVIDIA GRIDのシステム要件

  • NVIDIA GRIDカード:

  • 使用するNVIDIAグラフィックカードによっては、NVIDIAのサブスクリプションまたはライセンスが必要な場合があります。詳しくは、NVIDIA製品情報を参照してください。

  • XenServer Enterprise Edition(またはCitrix Virtual Apps and Desktops権限によりXenServerにアクセスできる)。

  • XenServerのホストが可能でNVIDIA GRIDカードが装着されたサーバー。

  • XenServer用GRID Virtual GPUマネージャーおよびNVIDIAドライバーで構成された、XenServer用NVIDIA GRID vGPUソフトウェアパッケージ。

  • また、NVIDIA vGPUが動作している仮想マシンでCitrix Virtual Desktopsを実行するには、Citrix Virtual Desktops 7.6以降をフルインストールする必要があります。

    注:

    NVIDIA社Webサイトから入手可能な『NVIDIA GRID Virtual GPU User Guide(Ref:DU-06920-001)』を参照してください。これらのコンポーネントにアクセスするには、NVIDIAに登録する必要があります。

vGPU XenMotion

XenServerにより、XenMotionやStorage XenMotionを使用したり、NVIDIA GRID vGPUが有効な仮想マシンを一時停止または再開したりすることができます。

vGPU XenMotion、Storage XenMotion、または一時停止機能を使用するには、次の要件を満たしている必要があります:

  • NVIDIA GRIDカード(Maxwellファミリ以降)。

  • XenMotionに対応したXenServer用NVIDIA GRID Virtual GPUマネージャー。詳しくは、NVIDIAのドキュメントを参照してください。

  • XenMotionに対応したNVIDIA vGPUドライバーがインストールされているWindows仮想マシン。

vGPU XenMotionを使用すると、1つのプール内でXenMotionを使用したり、異なるプール間でXenMotionを使用したり、Storage XenMotionを使用したり、vGPUが有効な仮想マシンを一時停止または再開したりすることができます。

準備の概要

  1. XenServerのインストール

  2. XenServer用NVIDIA GRID Virtual GPUマネージャーをインストールします。

  3. XenServerホストを再起動します。

XenServerのインストール

XenServerは、XenServerのダウンロードページからダウンロードできます。

以下をインストールします:

  • XenServer 基本インストールISO

  • XenCenter Windows管理コンソール

詳しくは、「インストール」を参照してください。

ライセンスメモ

vGPUは、XenServer Enterprise Editionユーザー、またはCitrix Virtual Apps and Desktops権限によりXenServerにアクセスするユーザーが使用できます。XenServerの各エディションおよびエディション間のアップグレードについては、Citrix Webサイトを参照してください。詳しくは、「ライセンス」を参照してください。

使用するNVIDIAグラフィックカードによっては、NVIDIAのサブスクリプションまたはライセンスが必要な場合があります。詳しくは、NVIDIA製品情報を参照してください。

NVIDIAカードのライセンスについては、NVIDIA社Webサイトを参照してください。

XenServer用NVIDIA GRID Virtual GPUマネージャーのインストール

NVIDIAから入手可能なNVIDIA GRID vGPUソフトウェアをインストールします。NVIDIA GRIDソフトウェアは、以下によって構成されています:

  • GRID vGPUマネージャー

    (NVIDIA-vGPU-XenServer-7.2-367.64.x86_64.rpmなど)

  • Windowsディスプレイドライバー (Windowsディスプレイドライバーは、Windowsのバージョンによって異なります)

    (369.71_grid_win10_server2016_64bit_international.exeなど)

GRID vGPUマネージャーはXenServerのコントロールドメイン(dom0)で動作し、サプリメンタルパックまたはRPMファイルとして提供されます。インストールについて詳しくは、NVIDIA GRID vGPUソフトウェアに含まれているユーザーガイドを参照してください。

注:

アップデート、RPM名、およびバージョンは例であり、お客様の環境によって異なります。

アップデートは、次のいずれかの方法でインストールできます:

  • XenCenterを使用します([ツール]> [アップデートのインストール]> [ディスクからアップデートまたはサプリメンタルパックを選択])。
  • xe CLIコマンドxe-install-updateを使用します。

アップデートの名前は次のようになります:NVIDIA-vGPU-PRODUCT_BRAND-7.2-367.64.x86_64.iso

注:

RPMファイルを使用してGRID vGPUマネージャーをインストールする場合は、このRPMファイルをdom0にコピーしてからインストールするようにしてください。

  1. rpmコマンドを使用してパッケージをインストールします:

    [root@xenserver ~]# rpm -iv NVIDIA-vGPU-PRODUCT_BRAND-7.2-367.64.x86_64.rpm
    Preparing packages for installation…
    NVIDIA-vGPU-PRODUCT_BRAND-7.2-367.64
    [root@xenserver ~]
    
  2. XenServerホストを再起動します:

    [root@xenserver ~]# shutdown -r now
    Broadcast message from root (pts/1) Mon May 09 13:05:31 2016):
    [root@xenserver ~]
    
  3. XenServerホストを再起動したら、NVIDIAカーネルドライバーをチェックして、GRIDパッケージが正常にインストールされているかどうか確認します:

    [root@xenserver ~]#lsmod |grep nvidia
    nvidia            8152994 0
    i2c_core            20294 2 nvidia,i2c_i801
    [root@xenserver ~]#
    
  4. NVIDIAカーネルドライバーがホスト内のGRID物理GPUと正常に通信できるかどうか確認します。プラットフォームのGPU一覧を作成するには、次のようなnvidia-smiコマンドを実行します:

    [root@xenserver ~]# nvidia-smi
    
    Thu Jan 26 13:48:50 2017
    +----------------------------------------------------------+|
    NVIDIA-SMI 367.64  Driver Version: 367.64                  |
    -------------------------------+----------------------+
     GPU Name    Persistence-M| Bus-Id   Disp.A | Volatile Uncorr. ECC|
    Fan Temp  Perf  Pwr:Usage/Cap| Memory-Usage | GPU-Util  Compute M.|
    ===============================+======================+======================|
    |  0 Tesla M60       On | 0000:05:00.0    Off|   Off |
    | N/A  33C  P8    24W / 150W |   7249MiB /  8191MiB |      0%      Default  |
    +-------------------------------+----------------------+----------------------+
    |  1 Tesla M60       On | 0000:09:00.0    Off |  Off |
    | N/A  36C  P8    24W / 150W |   7249MiB /  8191MiB |      0%      Default  |
    +-------------------------------+----------------------+----------------------+
    |  2 Tesla M60       On | 0000:85:00.0    Off |  Off |
    | N/A  36C  P8    23W / 150W |   19MiB /  8191MiB |        0%      Default  |
    +-------------------------------+----------------------+----------------------+
    |  3 Tesla M60       On | 0000:89:00.0    Off |  Off |
    | N/A  37C    P8    23W / 150W |     14MiB /  8191MiB |    0%      Default  |
    +-------------------------------+----------------------+----------------------+
    +-----------------------------------------------------------------------------+
    | Processes:                 GPU Memory |
    | GPU    PID  Type  Process name    Usage   |
    |=============================================================================|
    | No running compute processes found |
    +-----------------------------------------------------------------------------+
    [root@xenserver ~]#
    

    注:

    768GBを超えるRAMを搭載したXenServerホストでNVIDIA vGPUを使用する場合は、iommu=dom0-passthroughパラメータをXenコマンドラインに追加します:

    1. コントロールドメイン(Dom0)で次のコマンドを実行します:

      /opt/xensource/libexec/xen-cmdline –-set-xen iommu=dom0-passthrough
      
    2. ホストを再起動します。

AMD MxGPU

AMD MxGPUにより、シングルルートI/O仮想化を使用して、複数の仮想マシン(VM)で単一の物理GPUの機能に直接アクセスし、仮想化されていないオペレーティングシステムで動作するものと同じAMDグラフィックドライバーをゲスト内で使用できるようになります。

仮想マシンは、ハイパーバイザーがパススルーした物理GPUと同じように、MxGPUのGPUを使用します。仮想マシンにAMDグラフィックドライバーをインストールすると、GPUに直接アクセスして、パフォーマンス上重要な処理を高速化できるようになります。

XenServerでAMD MxGPUを使用する方法について詳しくは、AMDのドキュメントを参照してください。

ライセンスメモ

MxGPUは、XenServer Enterprise Editionユーザー、またはCitrix Virtual Apps and Desktops権限によりXenServerにアクセスするユーザーが使用できます。XenServerの各エディションおよびエディション間のアップグレードについては、Citrix Webサイトを参照してください。ライセンスについて詳しくは、Citrix製品ドキュメントWebサイトのXenServer Licensing FAQを参照してください。

利用可能なAMD MxGPU vGPUの種類

AMD MxGPUカードには、複数のGPUを含めることができます。たとえば、S7150カードには物理GPUが1つ、S7150x2カードには2つのGPUが含まれます。各物理GPUは、異なる種類の仮想GPU(vGPU)をホストできます。 vGPUの種類ごとに、1つの物理GPUがあらかじめ定義された数のvGPUに分割されます。これらのvGPUには、それぞれ、フレームバッファーとグラフィック処理能力が均等に配分されます。異なる種類のvGPUは、さまざまなクラスのワークロードを対象とします。物理GPUの分割数が少ないvGPUの種類は、負荷が高いワークロードに適しています。

注:

物理GPU上で同時にホストされるvGPUは、すべて同じ種類でなければなりませんが、同じカード上の物理GPUについては、このような制限は適用されません。この制限は自動的に適用されるため、容量の計画において予期せぬ問題が発生する可能性があります。

AMD MxGPUのシステム要件

  • AMD FirePro S7100シリーズGPU。

  • XenServer Enterprise Edition(またはCitrix Virtual AppsまたはCitrix Desktopsの権限によりXenServerにアクセスできる)。

  • XenServerのホストが可能でAMD MxGPUカードが装着されたサーバー。AMDによる検証済みのサーバー一覧については、AMD社Webサイトを参照してください。

  • XenServer用のAMD MxGPUホストドライバー。これらのドライバーは、AMDダウンロードサイトで入手できます。

  • XenServer上のMxGPUに適したAMD FireProゲスト内ドライバー。これらのドライバーは、AMDダウンロードサイトで入手できます。

  • また、AMD MxGPUが動作している仮想マシンでCitrix Virtual Desktopsを実行するには、Citrix Virtual Desktops 7.13以降をフルインストールする必要があります。

  • SR-IOVをサポートするように構成されたシステムBIOSと、セカンダリアダプターとして構成されたMxGPU。

準備の概要

  1. XenServerのインストール

  2. XenServer用のAMD MxGPUホストドライバーをインストールします。

  3. XenServerホストを再起動します。

XenServerのインストール

XenServerは、XenServerのダウンロードページからダウンロードできます。

以下をインストールします:

  • XenServer 7.6基本インストールISO

  • XenCenter 7.6 Windows管理コンソール

インストールについて詳しくは、『XenServerインストールガイド』を参照してください。

XenServer用のAMD MxGPUホストドライバーのインストール

ホストドライバーをインストールするには、次の手順を実行します。

  1. XenCenterまたはxe CLIを使用して、ドライバーを含むアップデートをインストールします。

    • XenCenterを使用してインストールする場合は、[ツール]>[アップデートのインストール]>[ディスクからアップデートまたはサプリメンタルパックを選択] の順に移動します。

    • xe CLIを使用してインストールする場合は、アップデートをホストにコピーし、アップデートが存在するディレクトリで次のコマンドを実行します:

       xe-install-supplemental-pack mxgpu-1.0.5.amd.iso
      
  2. XenServerホストを再起動します。

  3. XenServerホストを再起動したら、MxGPUパッケージが正常にインストールされているかどうか確認します。XenServerホストコンソールで次のコマンドを実行して、gimカーネルドライバーがインストールされているかどうかを確認します:

    modinfo gim
    modprobe gim
    
  4. gimカーネルドライバーによって、ゲストに提供するMxGPU仮想機能が正常に作成されたかどうかを確認します。次のコマンドを実行します。

    lspci | grep "FirePro S7150"
    

    「S7150V」の識別子を持つ仮想機能が出力に表示されます。

  5. XenCenterの[GPU]タブを使用して、MxGPUの仮想GPUの種類がシステムで利用可能な種類として表示されていることを確認します。

AMD MxGPUドライバーをインストールすると、GPUでパススルーオプションを使用できなくなります。代わりに、MxGPU.1 オプションを使用してください。

MxGPUが有効な仮想マシンの作成

仮想マシンをインストールしてから、この仮想マシンでMxGPUを使用するように構成します。この仮想マシンのオペレーティングシステムがAMD MxGPUでサポートされていることを確認します。詳しくは、「ゲストのサポートと制限事項」を参照してください。

仮想マシンをインストールしたら、「仮想GPUが有効な仮想マシンの作成」の手順に従って構成を完了します。

Intel GVT-dおよびGVT-g

XenServerでは、追加のハードウェアを必要としないグラフィックアクセラレーションソリューションであるIntelの仮想GPU(GVT-g)がサポートされます。一部のプロセッサに埋め込まれたIntel Iris Pro機能、および仮想マシン内にインストールされている標準のIntel GPUドライバーが使用されます。

Intel GVT-dおよびGVT-gは、Citrix Virtual Apps and DesktopsのHDX 3D Pro機能と互換性があります。詳しくは、「HDX 3D Pro」を参照してください。

注:

Intel Iris Pro Graphicsの機能はプロセッサに埋め込まれているため、CPU負荷の高いアプリケーションではGPUに十分なパワーが配分されず、GPU集約型ワークロードで提供されるような優れたグラフィックアクセラレーションが提供されない場合があります。

Intel GVT-gのシステム要件と構成

Intel GVT-gを使用するには、XenServerホストに次のハードウェアが必要です:

  • Iris Pro Graphicsを搭載したCPU。このCPUは、GraphicsでサポートされるCPUとしてハードウェア互換性リストに記載されている必要があります。
  • Graphics対応のチップセットが備わったマザーボード(Xeon E3 v4 CPUの場合はC226、Xeon E3 v5 CPUの場合はC236など)。

注:

Intel GPUパススルー(GVT-d)とIntel仮想GPU(GVT-g)とを切り替えた場合、ホストを再起動する必要があります。

Intel GVT-gを構成する場合、特定のXenServerホストでサポートされるIntel仮想GPUの数は、そのGPUのバーサイズによって異なります。GPUのバーサイズは、 BIOSで「アパーチャサイズ」と呼ばれます。Citrixでは、ホストあたり最大7つの仮想GPUをサポートするために、アパーチャサイズを1,024MBに設定することをお勧めします。

アパーチャサイズを256MBに設定すると、ホストで起動できる仮想マシンは1つだけになり、512MBに設定しても、XenServerホストで3つの仮想マシンしか起動できません。1,024MBを超えるアパーチャサイズはサポートされていません。また、サイズが1,024MBを超えても、ホストで起動できる仮想マシン数が増えることはありません

Intel GPUパススルーの有効化

XenServer Intel統合GPUデバイスを使ったWindows 7およびWindows 8.1(32ビットおよび64ビット)の仮想マシンに対するGPUパススルー機能をサポートします。サポートされるハードウェアについて詳しくは、ハードウェア互換性リストを参照してください。

Intelサーバー上のIntel GPUを使用する場合、XenServerホストのコントロールドメイン(dom0)が統合されたGPUデバイスにアクセスします。このような場合、GPUではパススルーが有効になります。IntelサーバーでIntel GPUパススルー機能を使用するには、GPUを仮想マシンにパススルーする前にdom0およびGPU間の接続を無効にする必要があります。

この接続を無効にするには、次の手順を実行します:

  1. リソースペインでXenServerホストを選択します。

  2. [全般] タブで [プロパティ] をクリックして、左ペインで [CPU] タブをクリックします。

  3. [統合されたGPUパススルー] で、[このサーバーは統合されたGPUを使用しません] をクリックします。

    [統合されたGPUパススルー]インターフェイス

    これにより、dom0とIntel integrated GPUデバイス間の接続を無効にします。

  4. [OK] をクリックします。

  5. XenServerホストを再起動して、変更を適用します。

    新しい仮想マシンを作成する間、GPUの種類の一覧にIntel GPUが表示されるようになりました。また、仮想マシンの [プロパティ] タブにも表示されます。

    注:

    dom0とGPUとの接続を無効にした後はXenServerホストの外部コンソール出力(たとえば、VGA、HDMI、DP)は利用できません。

グラフィック処理のためのホストの準備