仮想化道場

NVIDIA GRIDが作る仮想ワークステーションのエコシステム

 前回は、サーバー上で動作する仮想ワークステーションが企業のITシステムにどのように寄与するのかを説明した。今回は、仮想ワークステーションを構築するNVIDIA GRIDに関してもう少し詳しく解説しよう。

 また、CADソフトウェアでの利用を考えると、単に仮想ワークステーション環境を構築するのではなく、きちんと運用するためのエコシステムが重要になってくる。そこで、先日IBMとデルで開催された「グラフィック仮想化セミナー」の資料を基に紹介していく。

仮想ワークステーションを構築するには

 前回の記事で説明した通り、サーバー上で仮想ワークステーションを構築するには、ハイパーバイザーが必要になる。現在、メジャーなハイパーバイザーとしては、MicrosoftのHyper-V、VMwareのESXi、CitrixのXenServer(Xen)、Red HatのKVMなどがある。

 ただ、仮想ワークステーションで利用するには、VMwareのESXiか、CitrixのXenServerしか、現状では選択肢がない。仮想マシンにGPUを占有させるGPUパススルーは、ESXiとXenServerがサポートしているが、GPUのハードウェアによる仮想化は、CitrixのXenServerの次期バージョンしかサポートされていない。これは、NVIDIAのGRIDに対応するための改良がハイパーバイザー側で必要になるためだ。

 GPUパススルーでは、仮想マシンのOS上にGPUのドライバがインストールされる。このため、特定の仮想マシンがGPUを占有することになる。ただ、1つの仮想マシンが物理GPUカードを占有するため、デスクサイドで利用しているグラフィックワークステーションを利用しているのと、ほとんど同じ使い勝手で利用できる。

 GPUのハードウェアによる仮想化(仮想GPU)は、ハイパーバイザーにNVIDIAが提供している仮想GPUマネージャー(vGPU Manager)が内蔵されており、仮想マシンからは、仮想的に割り当てられたGPUとして見える。このため仮想マシンでは、それぞれの仮想GPUに対応したドライバをインストールするだけで動作する。

 NVIDIA GRIDでは、いくつかのGPUプロファイルが用意されている。ハイパーバイザーでは、仮想マシンに割り当てるGPUプロファイルを選択する。このGPUプロファイルは、仮想的なGPUの性能といえる。GPUプロファイルでは、最大2560×1600ドット、最大4台のモニターをサポートしている。これなら、仮想ワークステーション上で、複数のモニタを使ってCADツールを使うことも可能だ。

GPUは、すべてのPCユーザーに必要な機能となっている。仮想デスクトップにおいてもGPU機能は必須になっている
NVIDIAが提供しているGRID K1/K2は、仮想デスクトップや仮想ワークステーションなどのGPUセントリックなシステムにマッチしたGPUカードだ
GRID K1/K2では、複数の仮想GPUプロファイルがサポートされている。この仮想GPUプロファイルで、仮想マシンがサポートする仮想GPUの性能を指定する
GPUパススルーは、1つの仮想マシンがGPUを占有する。ハイパーバイザーでは、GPUパススルー機能をサポートしていればOK
仮想GPUは、GRID K1/K2に対応したハイパーバイザーが必要となる。現在、次期XenServerがサポートする予定だ

 なお、仮想ワークステーション環境を構築する上では、留意しないといけない点がたくさんある。

 まずは、シンクライアントなどが利用する画面転送プロトコルだ。VMwareでは、PC over IPという画面転送プロトコルを利用している。PC over IPは、オフィスワーカーが使用するデスクトップとしては高い性能を示しているが、3D CADなどを利用する場合はワイヤーフレーム表示などに難がある。

 一方、CitrixのXenServerでは、NVIDIA GRIDのGPUチップに内蔵しているH.264画像圧縮機能を利用して、画面転送を行う。さらにCitrixでは、3Dグラフィックなどの表示にチューニングされた、HDX3D Proという画面転送プロトコルを用意している。

 仮想GPUでは、NVIDIAのGPUの特徴といえる、GPU側でプログラムを動かすGPGPU機能のCUDAはサポートされていない。このため、グラフィック表示だけでなく、GPGPU機能を利用してシミュレーションなどを行うためには、GPUパススルーを利用する必要がある。

Citrixの画面伝送プロトコルのHDX 3D Proは、3D CADにチューニングしたプロトコルを採用している
NVIDIA GRID K1/K2を利用した仮想GPUでも、HDX 3D Proは高いパフォーマンスを示す

 また、GPUパススルー、仮想GPUともに、ハイパーバイザー上で動作している仮想マシンを、動作を継続したままで別のサーバーに移動するライブマイグレーション機能は利用できない。

 さらに、CADなどを動かす仮想ワークステーションを満足のいく性能を出すには、CPUも高いパフォーマンスが必要になる。現状では、Xeon E5などのCPUコアを多数内蔵するプロセッサが必要になる。もちろん、大容量のメモリも必要になる。CADソフトは多くのメモリを消費するため、仮想ワークステーションに割り当てる仮想メモリも通常のVDIよりも多くなる。

 ストレージにも高い性能が要求される。仮想ワークステーションでは、サーバーにディスクを内蔵するのではなく、ネットワークを利用したSANやNASを利用することになるだろう。また、画面を表示するシンクライアントとの間もネットワークで接続されるため、シンクライアントとの通信向けにも高速なネットワークが必要になる。10Gigabit Ethernetは必須といえるだろう。ストレージは、InfiniBandやFCなどを利用した方がいいかもしれない。

 ディスクについても、SSDなどを主体としたフラッシュストレージが必要になるだろう。HDDは、大容量のデータを保存しておくコールドストレージとして利用し、頻繁にアクセスするデータは、SSDなどのフラッシュストレージに保存しておくことになる。

 こういったハードウェア構成を考えれば、仮想ワークステーションでは、ハードウェアコストがそれほど安くなるわけではない。実際、高性能なサーバー、高速なSANストレージ、高速ネットワークが必要になるため、サーバー側のコストもかかる。また、クライアント側にPCもしくはシンクライアント端末が必要になる。

 さらに、仮想ワークステーションのゲストOSにWindowsを利用する場合、シンクライアントやパソコンからアクセスするためのライセンスが別途かかるので、仮想ワークステーション環境は、低コストでは構築できない。

 しかし、セキュリティや管理コスト、デスクサイドのワークステーションにデータが分散し、災害などでデータ消失をするビジネス上のリスクを考えれば、コストはかかるが、仮想ワークステーションには大きなメリットがあるのだ。

 また、ワークスタイルを刷新できる可能性も秘めている。例えば、CADエンジニアでも自宅作業が可能になるかもしれないし、社内での利用方法もより便利になるだろう。CADのデザインを上司に見せようようとした場合、これまでは上司に自席まで来てもらう必要があった。しかし、仮想ワークステーションが実現すれば、見せに行ったり、会議室などで簡単にレビューしたりできるようになるからだ。

 コスト面よりは、むしろそちらを重視する企業のためのソリューションといえる。

仮想化により、世界中どこからもデータにアクセスすることができる。さらに、データセンターに集約するため、高いセキュリティ性を保つことが可能

(山本 雅史)