「サーバーの仮想化」か「ターミナル サービス」か?

先日、別のチームが、パートナー様向けに Windows Server 2008 のハンズオントレーニングをした際にこのようなご質問をいただいたとのことでした。

どう答えるべきかという話しを社内でしていたようで、首を突っ込んでしまいました。

***************
よくご存知の方からすると、この2つは比較対象にならない、もしくは利用するシチュエーションがあまりにも違うので選択に迷うことはないと思うことでしょう。

なぜこのような質問が出たかを想像するに、(以前 にも書きましたが) マイクロソフトが「4つの仮想化(Virtualization) 」というシナリオを持っており、ターミナルサービスを 「Presentation Virtualization」 としているからだろうと思います。

Windows Server 2008 という1つの製品において、同じ「仮想化」のシナリオがなぜ2つもあるのか、それはどう使い分けたらよいのかというご質問だったのだろうと。

それだけ、「仮想化」という言葉が漠然として捉えられていたり、「仮想化」=「サーバーの仮想化」だと捉えられてしまっていたりすることが多いのかもしれませんが、「仮想化」には多くのメリットがあるからこそ、これからは細かく見てもらえるような工夫が必要になりそうですね。

「4つの仮想化」の話しをすると多くの製品や技術が関係してきますので、各製品担当が話しをする内容ではなくなることも考えられ、まさに我々エバンジェリストの仕事だとも言えますし。。。

**************
ちなみに、サーバーの仮想化は、うまく利用することにより物理サーバー台数を減らすというシナリオが一番分かりやすいですが、他にもサーバー環境の展開・復旧の容易さや導入した物理サーバーの使用率向上など多くのメリットがあります。

そしてターミナルサービスによる仮想化は、簡単に言うと、サーバー上で動いているアプリケーションの画面がクライアント上に仮想的に表示され利用できるというものですね。

ターミナルサービスは、Windows アプリケーションを各クライアントに展開しなくてもリモートから利用できるという点で使われはじめた技術です(Windows NT Server 4.0 Terminal Server Edition の頃~懐かしい)が、全てのアプリケーションやデータはサーバーにしか存在せず、すべての処理もサーバー側で行われるため、外部に持ち出したクライアントからのデータ漏えいを防御するために利用している企業もあり、シンクライアントとの組み合わせで語られることが多い機能でもありますね。

ただし、よく考えてみると、ターミナルサービスを動作させるサーバーには最初からアプリケーションがインストールされているわけではないので、サーバーにアプリケーションを展開するにはどうしたらいいか?という疑問も出てきますし、そもそも展開する先がターミナルサーバーかクライアントかにかかわらず、社内のアプリケーションを管理し、効率的に(+セキュアに)展開する仕組みがほしいという声もあり、そこにはSoftgrid による 「Applicaton Virtualization」が・・・という風につながっていくわけです。

Windows Server 2008 のターミナルサービス上でアプリケーションを動かすには、各アプリケーションと Windows Server 2008 の互換性検証も対応も必要となりますが、Softgrid を使うことで互換性の敷居を下げられる可能性もありますから、「Application Virtualization」と「Presentation Virtualization」を一緒に利用するメリットもあると思っています。

(他にも、Softgrid のシナリオにはSystems Management Server や System Center Configuration Manager によるアプリケーションの自動配布との連携の話しもよく出てきますね)

だから、「うちの会社にはどの仮想化がいい?」というざっくりとした質問ではなく、「うちの会社は今、こういうことに困っていて、こういうことをやりたいんだけど、そこに適用できそうな仮想化のシナリオはある?」という質問をしていただけるようになると話しはスムーズだったりするため、そういう会話ができるように情報を発信していけるといいなあと思いますね。

もちろん、なんでも仮想化すればよいというわけではないでしょうから、最終的にはいろんな話しをしながら答えを導きだすことになると思います。(念のため)