第5回

導入コストが高いと言われるVDI、コスト削減方法とは?

シンクライアント」というキーワードに対して何を連想するだろうか?

「セキュリティ」や「運用向上」など、さまざまなキーワードが挙がるだろうが、おそらく、大半の方が、シンクライアントと言えば「高い」という印象を持っているのではないだろうか。このようなイメージを持たれる原因は、シンクライアントのコスト比較対象が、物理PCのリプレイスコストとの比較になっている点と、シンクライアント=「VDI」と考える人が多くなってきたからだと思われる。

高スペックなPCを安価に購入できることを考えると、高価なサーバー機器やライセンス代が必要なシンクライアントは、物理PCの購入コストに比べると、導入コストはどうしても高くなってしまう。特に、VDIの場合は、物理PC1台あたり10万円の算段をしていたところに、ベンダーから20〜30万円もの見積もりが提出されることはザラで、そのギャップも大きい。コストを最優先で考えるのであれば、プレゼンテーション型シンクライアントを検討することだ(※ 詳細はシンクラ概論の第2回を参照)。検討の結果、システム要件に対して大きな問題がなければ、プレゼンテーション型シンクライアントを採用するのがお財布には優しい。ただし、要件的にプレゼンテーション型を採用できない場合は、VDIを選択しなければならなくなり、コストとの戦いが始まるのだ。

今回はVDIのコスト構造とコストを抑制する手法について解説する。読者の多くにとっては、待望のトピックスかもしれない。


VDIのコスト構造

このグラフは、エス・アンド・アイが、VMware社のHorizon ViewでVDIを構築した場合の導入費用を、ハードウェア費用、ソフトウェア費用、作業費用の観点から、それぞれが占める割合を提供価格ベースで表したものだ。(※このグラフには、データセンター費用や回線費用は環境によって異なるため含まれていない。)

グラフの内訳を見みると、ハードウェアコストが44%、ソフトウェアコストが47%で、この2つで90%以上を占めている。さらに、それぞれの内訳を見ると、ハードウェアコストは、サーバー機器が35%に対してストレージ機器が半分以上の55%を占めている。これは、VDIは、非常に高負荷なI/Oを裁く必要があるため、比較的高価なストレージが必要になるためだ。

続いて、ソフトウェアの内訳を見ると、仮想デスクトップを稼働させるための仮想化基盤とコネクションブローカーのHorizon Viewのライセンスの割合は45%だが、VDI上でWindows 7のようなMicrosoft社のクライアントOSを稼働するためのVDAライセンスが54%を占めている。これは、VDAライセンスが3年単位のサブスクリプション型ライセンスのため、4年目には再度3年分を購入しなければならないためだ。

このように、VDIのコストが高くなる原因は、高価なストレージとVDAライセンス形態が引き金になっていることは間違いない。

VDIに必要なMicrosoftライセンス

VDI上でWindows 7や8などのMicrosoft社のクライアントOSを利用するには、Microsoft VDAとMicrosoft Client SAの2つのライセンスのどちらかが必要だ。

Microsoft VDA
VDI環境でWindowsのクライアントOSを利用する際に一般的に購入するライセンス
Microsoft Client SA
Microsoft社のボリュームライセンスにある、期間内での最新のソフトウェアの使用権や技術サポート、トレーニングなどの特典が含まれている「ソフトウェアアシュアランス(SA)」を結ぶ方法。この契約を結ぶことで、MicrosoftクライアントOSのSAの特典の1つとして、VDI上でクライアントOSを利用できるようになる。

どちらも3年や2年のサブスクリプション型ライセンスのため、契約期間が切れた後も利用する場合は、再度購入する必要がある。SAには、サポートやトレーニングのほかに、Enterprise Editionの利用や、アプリケーションの仮想化ソフトであるApp-Vなどの製品が含まれているMDOPなどを利用できる特典がついているが、VDAでもほぼ同様の特典があるので大差はない。

ただし、1点だけ大きな違いがある。それは、VDAはVDI上にあるクライアントOSにどんなデバイスからも接続できるが、SAの場合は、クライアントOSのProfessional Edition、もしくはThinPC(※1)以外から接続した場合はライセンス違反となる点だ。つまり、SAの場合は、スマートデバイスのiOSやAndorid OSだけでなく、Wyse社のThinOSや、Microsoftの組み込みOSであるWindows EmbeddedもSAの対象ではないため、市販されている専用端末やゼロクライアントからは接続できない。そのため、金額的には高いVDAが選択されるケースが多くなるといえる。

(※1)ThinPCは、見た目は普通のOSと代わりはないが、不要なモジュールを省きフットプリントを小さくしたシンクライアント向けのOSである。

【Microsoft VDAとMicrosoft Client SA比較】
ライセンス種別 契約期間単位 接続可能OS 価格(年間/定価)
Microsoft VDA 3年間 制限なし ~¥18,000/ユーザ
Microsoft Client SA 2年間 Windows Vista/7
※Professionalのみ
Windows ThinPC
~¥7,200 / ユーザ

Server VDIという新たな選択肢

では、でさまざまなデバイスからVDI上のWindowsを利用するにはVDAを購入しなければならないのだろうか。

以前はその方法しかなかったが、2013年末あたりからVDAを回避する方法が注目を浴びている。それが、俗にServer VDIと呼ばれる手法である。

従来のVDIで利用される仮想デスクトップのOSは、Windows 7などのクライアントOSだったが、Server VDIではWindows Server 2008 R2などのサーバーOSを仮想デスクトップのOSとして利用する。構成は何も変更する必要はなく、単純にOSをサーバーOSに入れ替えるだけなのだ。

当然、MicrosoftのサーバーOSを利用するにもライセンスは必要となるし、価格もクライアントOSに対して割高であるため、VDAよりもむしろコストが高くなるのではと考える人もいるだろう。では、なぜServer VDIがVDAよりもコストを抑制できるのかを説明しよう。

5年総額で生じる差額は、1台あたり5万円

サーバーOSのライセンスには、サーバーインスタンスの数ではなく、物理サーバーのCPUに対して課金されるDatacenter Editionと呼ばれるものが存在する。物理サーバーのCPUに対する課金となるため、その物理サーバー上に仮想サーバーを何台稼働させようと、金額は変わらない。最近では、サーバー機器のスペックがかなり向上しているため、VDIの場合、1台あたりの物理サーバーに100台は軽く、多いところでは150台以上稼働させているケースもある。つまり物理サーバーあたりの仮想デスクトップの集約率を高めれば高めるほど、ライセンスコストの圧縮が実現できるのだ。

また、買取り型ライセンスであるため、サブスクリプション型のVDAに対して、長期利用すればするほどコストパフォーマンスが良くなるというメリットもある。注意点は、サーバーOSにリモート接続するため、Microsoft社のRemote Desktop Service CALを別途、購入しなければならない点だ。しかし、その点を考慮しても、5年総額で、1ユーザーあたり5万円前後安くなる場合もある。

Server VDIの注意・制限事項

アプリケーション型シンクライアントのように、クライアントOSの代わりにサーバーOSを利用することで生じるデメリットを気にされる方もいるだろう。ここからは、Server VDIの注意・制限事項について解説する。

Server VDIのアプリケーション互換性

サーバーOSを利用する場合、プレゼンテーション型の導入の壁の1つとなっているアプリケーション互換性が問題になる。しかし、Server VDIでは、プレゼンテーション型のように1台のサーバーを複数のユーザーで共有せずに1ユーザーが1OSを独占するため、アプリケーションがマルチユーザー対応しているかどうかについては問題にならない。しかし、サーバーOS上で対象のアプリケーションが正常に稼働するかという点については、考慮する必要がある。

最近のWindowsサーバーOSは64bit版のみだが、クライアント環境ではまだまだ32bit版が多く使われており、アプリケーションも32bit版が多く存在している。また、アプリケーションによっては、インストーラーがOSチェックをしており、クライアントOS以外で実行するとエラーで終了するものや、そもそもシステム要件にサーバーOSが記載されていないケースも多い。では、実際にこれらの問題が与える影響はどの程度のものなのか、解説しよう。

まず32bit版アプリケーションだが、基本的には64bit OSでは32bitアプリとの互換性があるためほとんど問題にならない。また、Windows Server 2008 R2は、Windows 7と高いアプリケーション互換性を持っているため、インストールさえできてしまえば、基本的に動作はする。

次に、インストール時のOSチェックだ。アプリケーションにもよるが、数はさほど多くなく、チェック機能がある場合でも、infファイルなどを修正してOSチェックを無効にすることでインストールできる場合もある。もし、動作しなかったり、インストールできない場合でも、Horizon Viewに付属しているThinAppでアプリケーションをパッケージングして配置することで回避できるため、アプリケーションの動作で問題になることはほとんどないだろう。

もっとも問題となるのは、メーカーサポートだ。こちらはシステム導入前に各メーカーにサポートポリシーを必ず確認しておこう。

デスクトップエクスペリエンスの有効化

たとえば、Windows 7とWindows Server 2008 R2のデスクトップインターフェイスは微妙に異なる。ある程度PC操作に長けているユーザーであれば、すぐにその違いにも慣れてしまうだろうが、そうでないユーザーの場合は、操作がわかりにくいなど、Server VDIを利用する上で問題となる可能性がある。

その解消方法として、Windows Server 2008 R2には標準機能でデスクトップエクスペリエンスという機能があり、この機能を有効にすることで、Windows 7と同じテーマを利用することができるようになる。これにより、Server VDIにユーザーがログインした時にWindows 7と同様のユーザーインターフェイスを提供することが可能になる。

機能制限

VMware社のHorizon Viewをはじめ、多くのVDI製品にはUSBのアクセス制御や印刷補助機能など、VDI環境で利用できると便利な機能が多数備わっている。Server VDIを利用した場合、これらの機能の一部が利用できないケースがある。

Horizon Viewでは、Windows Sever 2008 R2をOSとして利用する場合は、Virtual PrintingやLocation Based Printingのような印刷系の機能と、動画再生のMMRの機能が利用できない。これはサポートされないだけでなく、実際にHorizon ViewのAgentであるView AgentをサーバーOSに導入しようとした際に、項目として表示されないので、動かすことも不可能だ。ただし、Virtual PrintingやMMRは、VDI環境化での印刷や動画再生を効率良くするための機能であり、印刷や動画再生自体が使えなくなるわけではない。これらの機能が自社の要件に対して必要か必要でないかは、事前に検討しておく必要がある。

Horizon View OS別サポート機能比較表
Windows Vista Windows 7 Widnows 8.x Windows Server 2008R2
USB Access
RTAV
RDP Display
PCoIP Display
Persona Management
Wyse MMR × × ×
Windows 7 MMR × × ×
Location-Based Printing ×
Virtual Printing ×
Smart Cards
RSA Secure ID or RADIUS
Single sing-on
Multiple Monitor

VDIでのストレージ課題

VDIの導入コストのコストの底上げをしている要因のもう1つは、ストレージコストだ。

第4回のHorizon Viewの構築でも解説したが、VDIでは、ランダムアクセス・Write過多と、もっともストレージに厳しいI/O要求をバースト的に発生させる。それに対応するため、ストレージではディスクのスピンドル数を増やすため、結果的に必要容量の何倍ものストレージ容量を確保しなければならなくなり、ストレージコストを跳ね上げてしまう。ここでは複数のアプローチからストレージコストを圧縮する手法について紹介する。

ハイブリッドストレージやオールフラッシュストレージの活用

最近のストレージ製品の傾向として、SSDを活用するケースが増えてきている。ストレージのSSDの実装方式は大きく2種類に分かれており、HDDの代わりにすべてのディスクをSSDで構成する「オールフラッシュストレージ」と、SSDと大容量のSATAディスクを組み合わせることで安価にパフォーマンスを確保する「ハイブリッドストレージ」に分類できる。

ハイブリッドストレージでは、SSDをキャッシュにしたり、階層データのTier1領域にしたりと、頻繁にアクセスされるデータをSSDでやり取りすることで、従来のストレージでは実現できなかった、スピンドルに比例しないIOPSを比較的安価に実現している。

それに対して、オールフラッシュストレージではすべてをSSDで構成するため、HDDに対して大幅なパフォーマンス向上が可能となるが、値段もその分高くなる。しかし、Pure Storage社のFlashArrayのようにインライン重複排除と圧縮を利用してSSDに保存するデータを極限まで抑制することで実行容量を増やし、従来のHDDに価格を近づける製品もある。当然SSDなので、パフォーマンスは比較にならないほど向上する。また、SSDはパフォーマンス確保のためにHDDのようにスピンドル数をムダに増やす必要がないため、消費電力やラックコストのようなランニングコストも抑制できるため、採用するメリットは大きい。

ソフトウェア「Atlantis ILIO」でストレージアクセスの仕組みを変える

VDIのストレージへのI/O要求が厳しいのは、MicrosoftのクライアントOSの仕様とVDIの構成に依るところが大きい。Windowsタスクのルーチンが発生させる膨大なI/Oトラフィックや、4KのブロックサイズでのランダムWriteアクセスが全デスクトップから共有ストレージに一斉にアクセスするような環境では、当然、ストレージ側は処理しきれなくなり、処理待ちによる遅延が積み重なることでパフォーマンスは著しく低下する。

このパフォーマンス低下につながるI/Oの性質を変えることで、ストレージへのI/O要求の敷居を下げるアプローチをするのが、Atlantis Computing社のAtlantis ILIOという製品である。Atlantis ILIOは、仮想アプライアンスで提供されているAtlantis ILIOの仮想マシンをハイパーバイザーとストレージ間の仲介役として配置し、インライン重複排除機能に加え、仮想マシン内のメモリをRead/Write双方向のキャッシュとして利用することで、ディスクへのアクセス量そのものを減らす。さらに、4Kで仮想マシンから送られてくるI/Oをいったん吸収して、64Kのブロックにまとめ、ランダムWriteアクセスに比べてストレージが処理しやすいシーケンシャルアクセスで書き込みを行うため、VDIに必要なストレージの性能要件を大幅に低下させ、ディスクのスピンドル数の大幅な縮小や、一段階下のモデルのコントローラの採用を可能にする。結果として、ストレージコストの低下を実現できるのだ。

Atlantis ILIOの仮想アプライアンスは、ハイパーバイザーとNFSやiSCSIのプロトコルで接続するため、必ずしも各ESXi上に1台配置する必要はないが、パフォーマンスを考慮した場合、対象の仮想デスクトップが格納されている仮想アプライアンスが同一ハイパーバイザー上で稼働している方が無駄なトラフィックが流れなくて良い。

VMware社のDRSのような機能を利用している場合には、アフィニティルールを利用して、仮想デスクトップと仮想アプライアンスが同一ESXi上で稼働するように紐づけする必要がある。物理サーバが障害でダウンした場合には、HAの機能により、仮想デスクトップも仮想アプライアンスも別サーバで再起動される。この時、Atlantis ILIOの仮想アプライアンスはファイルシステムの整合性チェックを実施する。チェックにかかる時間の目安は100GBあたり2分程度だが、その間はデータストアにアクセスできなくなり、処理が終わるまで仮想デスクトップも起動できない。1データストアのサイズを復旧時間の要件に合わせて調整するなどの工夫が必要だ。

また、Atlantis ILIOは、非永続プールと仮想デスクトップのユーザーを紐づける永続プールに対応しているが、障害時の挙動を考えると、非永続プールで縮退時でもある程度余裕を持たせた仮想デスクトップを用意して利用する方がよりユーザー影響を少なくできるだろう。

※永続プールで利用できるパーシステント・ユーザライセンスはノンパーシステントライセンスに比べて1.5倍程度の価格である。

コスト削減の新たな可能性、VSANの利用

VMware社のvSphereでは、5.5Update1から、これまでは共有ストレージを用意しなければ利用できなかったvSphere HAやVMotionの機能を、分散ストレージの技術を利用してサーバーの内蔵ディスクのみで実現するVSANと呼ばれる機能が正式にサポートされている。

Horizon Viewでも、バージョン6からAdvanced以上のエディションでは、Horizon ViewのライセンスでVSANの機能が利用できるようになった。VSANも、ハイブリッドストレージと同様にSSDとHDDを組み合わせて高パフォーマンスを確保する仕組みだが、最大の利点は、共有ストレージを利用しないため、スモールスタートで始め規模に応じてスケールアウトしていけることである。共有ストレージは、スケールアウト型でない場合、ストレージコントローラの性能が限界値となっているため、簡単には変更できない。そのため、導入当初から高価なストレージを導入しておかなければならず、導入時の課題の1つとなっていた。

VSANの場合には、最低3台のサーバーからスタートできる。サーバーを増やすことによって、I/Oパフォーマンスもサーバー台数に比例して向上していく。また、SSDを利用するハイブリッドストレージであることから、ワークロードが均一化されるため、仮想マシンごとに負荷が大きく変動しない性質のVDIの環境には非常に適している。また、vSphereではCPU単位で課金されていたVSANのライセンスも、Horizon Viewではユーザー数単位での課金となるため、VDI環境での利用を後押しする体系となっている。

以前のVSANでは、たいていの共有ストレージには備わっているVAAIのサポートや、ネイティブなSnapshot機能、運用管理ツールもさほど充実していない問題などがあった。しかし、VSAN6.0ではこれらの機能も充実してきており、オールフラッシュにも対応したため、今後は採用されるケースが増えていくのではないだろうか。

今回は、仮想PC型シンクライアント(VDI)のコスト構造について解説してきた。コスト構造は理解できても、社内を説得するにはどうすればよいだろうか?次回は、「導入コストが高い」という印象のVDIを実際に導入されたセントラル短資FX様に、どうやって社内を説得したのか、その手法について詳しく伺ってみよう。

まとめ

  1. VDIの導入コストが高い原因は、VDAライセンスの形態と高価なストレージの2つ
  2. Windows Server 2008 R2などのサーバーOSを仮想デスクトップのOSとして利用する「Server VDI」でライセンスコストの圧縮が可能になるので、選択肢の1つとして検討しよう
  3. ストレージコストの削減方法は3つ。
    • SSDと大容量のSATAディスクを組み合わせる「ハイブリッドストレージ」の活用
    • Atlantis ILIOを使って、ストレージへのI/O要求の仕組みを変えることでストレージの性能要件を下げる
    • VSANを使って、規模に応じてスケールアウトすることで初期コストを下げる