VMware ServerかESX Serverかの選択 (20061212-1)

2/19/2008   |   原文はこちら (English)
(この記事は、virtualization.info英語版に2007/05/22に掲載された記事です。)

今日サーバの仮想化に取り組んでいる顧客は、複数のベンダーや、同じベンダーでも複数の製品から選ぶことができる。

多くの選定プロジェクトが失敗するのは、企業が自社のニーズに最適なプラットフォームを慎重に評価せず、選択したものがもたらす影響をまだ完全に理解していないことが原因だ。

かなりシンプルなプロジェクトでも、所有経費が高すぎて投資を回収できない場合がある。その一方で、小さい規模でスタートしてもすぐに複雑になって仮想マシンをどんどん増やしていくプロジェクトでは、選定したプラットフォームに拡張性がなければ失敗する可能性がある。

本稿では、仮想化市場をリードするVMwareとその製品について解説し、エンタープライズレベルの導入における製品間の違いを評価する。新しい無償版の「VMware Server」と、人気が高く、高価な「VMware ESX Server」だ。

無償製品でも信頼性は十分か?

まず最初にしておかなければならないのは、VMware Serverに対する仮想化初心者の先入観を排除することだ。無償で、主にそれが本番環境用に推奨されているソリューションは、市販のライバル製品より信頼性もパフォーマンスも低く、機能も少ないと考えてしまいがちだ。

このように考える癖があると、本格的かつ複雑な仮想化プロジェクト用の製品を選定する際にVMware Serverを即座に排除してしまうことになる。

VMware Serverの場合、それは大きな誤解だ。

世界中の会社が仮想化技術を導入するための膨大な投資に着手する前から、VMwareは5年の間「GSX Server」という名前を使い、VMware ServerのこれまでのバージョンをESX Server単体とほぼ同価格で販売していた。

GSX ServerもESX Server同様常にデータセンタへの導入をターゲットにしていて、エンタープライズ管理ツールの「VMware VirtualCenter」が登場すると、これが即座に両製品を同じようにコントロールできるようになった。

同社は2001年にGSX Serverを発売する時、メインフレームクラスのコントロールと、世界300社の有名企業が前年から同社のベータプログラムに参加していたことを正式に発表した。

2005年末に「VMware Player」という無償の仮想化製品を初めてリリースすると、同社は登場が近づいていた「GSX Server 4.0」も無償製品にすることを決め、その名前を「VMware Server 1.0」に変更した。

つまり、ここまで長い間信頼性の高い製品と見なされているGSX Serverなら、無償版が登場しても製品の機能に対する顧客の信頼は低下しないはずだ。

パフォーマンスと柔軟性

価格以外で最初に目に付き、どのコンサルタントや営業担当者も強調するVMware ServerとESX Serverの大きな違いは、パフォーマンスのレベルだ。

現時点では、同じハードウェア上で同じ仮想マシンを動かす2つのプラットフォームを比較したベンチマークは全く公開されていないが、その設計方法を見ればどちらの製品のパフォーマンスが優れているかは推測できる。

VMware Serverには基盤となるOSをインストールしておく必要があるが、兄貴分にあたるESXではその必要がない。業界では、これを「ベアメタルソリューション」と呼ぶことが多い。

つまり、ESX Serverの一部がOSとして機能し、アプライアンスと同じような手段でハードウェアを起動および管理して必要なすべての仮想化作業を行う。

アプローチの違いは、これらの動作の大きな違いを反映している。Serverの機能やパフォーマンスはホスティングしているOSによって制限を受けるが、ESX Serverの方はOSのレイヤを可能な限り絞り込み、利用可能なハードウェアを最大限に活用するようデザインされている。

設計によるパフォーマンスが意味するところは、ESX Serverの方が顧客に優れたパフォーマンスを提供できるだけでなく、集約率(物理ホストの各CPUコアに安全に割り当てて同時に動作可能な仮想マシンの数)でも勝るということだ。

VMwareではこの割合をServerでは2~4にしておくよう推奨しているが、ESXではこれを4~8に上げることができる。

これらの数値は、動作中の仮想マシンと、そのなかのホステドアプリケーションで想定されるワークロードに大きく依存する。かなり負荷の高いESX Serverでは、コアあたりの仮想マシンを3つ以上にできない場合もあるが、非常に負荷の低い場合コアあたり10個のWebサーバを楽に動かせる場合もある。

しかし、全般的に見ればこれは優れた基準として考えることができる。

ハードウェアコンポーネントを直接コントロールするESX Serverの機能は、パフォーマンスのほかの側面も改善できる。たとえば、VMwareは「VMFS」と呼ばれる仮想マシンの保存専用のファイルシステムを開発した。これは、近代的なOSが提供する従来の汎用ファイルシステムより高速で信頼性も高い。

残念ながら、VMFS上に格納された仮想マシンを別のVMware製品に移行する場合は、フォーマットの変換が必要になる。

VMware ServerはVMFSを利用することができず、そのパフォーマンスはWindowsとLinuxのファイルシステムに依存するが、その仮想マシンはDVDやUSBメモリに入れてどのコンピュータにも瞬時に移動できる。これは大量のファイルが入った単なる標準フォルダのように見える。

しかし、ベアメタルアプローチにはメリット以外にも深刻な制限がある。製品自体がOSとして機能するため、本体にドライバを組み込んでいるハードウェアしか機能しない。

したがって、VMwareは本稿執筆時点ではローカルSATAディスクなどのドライバをESX Serverに組み込んでおらず、これを選定する顧客はローカルSCSIディスクか、NASやSANといったリモートのストレージ機器を選ぶ必要がある。

顧客は単に一個の装置が利用できなくなるのではなく、仮想マシン全体が利用できなくなることに注意してほしい。VMwareは市販のごく一部のシステムしか正式にサポートしないことを明言しているため、データセンタにあるどのハードウェアでも構わずESX Serverを動かしてサポートを受けるということはできない。

一方、VMware Serverのホステドアプローチでは、ハードウェアサポートとドライバの可用性を基盤のOSに依存することが可能だ。

リモートのiSCSIディスクとの接続やローカルのテープバックアップ装置の駆動など、OSにできることは、何でもすぐServer仮想マシンからも可能だ。

ソフトウェアの供給やサポートもアプローチの違いに影響を受ける。

ESX Serverの場合、インストールされているサービスユーティリティには限りがあり、アプリケーションを新たにインストールしても必須のライブラリが抜けているため動かない。しかも、それを追加することはシステム全体の信頼性維持のため全く推奨されていない。

これによりリスクは低下するが、自分たちに必要なコンポーネントをVMwareがインプリメントしなかった場合は、それが管理上の問題につながる。

VMware Serverの環境では、どのプログラムでもホストOSにインストールすることができ、顧客は自分の好きなツールでディスクのフラグメント解消やバックアップ、パフォーマンスモニタあるいはリモート管理などの作業ができるようになり、投資を二重に回収できる可能性もある。

セキュリティと学習曲線

セキュリティは両製品の大きな違いの1つだ。

ESX Serverは、ITセキュリティの分野で通常アプライアンスと呼ばれる典型的なハードウェアソリューションの特性をすべて備えている。アプライアンスは、専用のOSを搭載し、パフォーマンスを最大限に引き出し、攻撃される部分を最小限に抑え、あらかじめコンフィギュレーションされたアプリケーション(ファイアウォールやスパム対策など)を搭載してカスタマイズされたブラックボックスだ。

そのなかには、運用に欠かせない(しかし場合によっては不十分)なツールが搭載されており、システムに脆弱性をもたらすため、ベンダーはソフトウェアの追加インストールを一切サポートしていない。

アプライアンスのアプローチは両刃の剣だ。一方では、OSの強度を上げながら環境のセキュリティを確保するという複雑な作業を排除する。

また、管理者がシステムへのパッチの適用を心配しなくてもよくなる。搭載するコンポーネントから新たな脆弱性が見つかっても、VMwareによる適切なパッチの投入やプラットフォームの交換を待つだけだ。

このような理由から、アプライアンス、そしてESX Serverは、総所有経費(TCO)の低いソリューションだと見なされている。

しかし、別の観点から見た場合、脆弱なプラットフォームコンポーネントで緊急の作業が必要になっても、顧客にはほとんどもしくは全く対応することができない。

システムが攻撃にさらされ、脆弱であることが判明し、VMwareのパッチ提供が遅れても、管理者は繰り返し発生するネットワークのリスクを可能な範囲で軽減し、危険にさらされた機能の使用を回避する必要がある。

大事なことを言い忘れていたが、セキュリティの非常に高い環境では、プラットフォームを完全にコントロールできないことから、社内ポリシーによってブラックボックスが全く許可されていない場合もある。

VMware Serverのようなホステドソリューションでは、これと反対の問題への対応を余儀なくされる。アプリケーションの背後にあるOSを完全にコントロールするには、その強化のための高い知識や、新しいパッチを見つけ出し、テストし、インプリメントする膨大な時間を必要とする。

実際、問題は、新しいセキュリティパッチの監視、パッチのダウンロード、そのインストールに時間を割くだけではなく、それより重要なこととして、これをテストし、その信頼性が高いことを本番環境に適用する前に判断することである。

パッチはセキュリティの脆弱性を修正するかもしれないが、システム全体の信頼性にも影響を与える。 このようなことが絶対に起こらないようにするため、会社では、本番システムを再現し、有用なネットワークトラフィックを生成し、QAフェーズ全体を扱うチームのそろった実験環境を用意すべきだ。

このアプローチには膨大な費用がかかり、それを負担できる企業が少ないのは明らかなので、大部分の顧客にとって実際的な選択肢はたいてい2つしかない。ホステドソリューションを使いながらアプリケーションベンダー(この場合はVMware)が正式にパッチを承認するまでOSにパッチを当てないで待つか、ブラックボックスソリューションを採用するかだ。

技術力の高くない顧客はパッチ管理に時間やスタッフを割り当てるが、テストをせずにOSにパッチを適用してしまう。重要性の低い一部のサーバならそれも構わないが、まず第一に信頼性を確保しなくてはならない仮想化環境では全く推奨できない。

もう1つ、VMware ServerとESX Serverの間にある注目に値する違いが学習曲線だ。

ESX Serverの方が機能が多いため、習得に時間がかかるのは言うまでもないが、これを選定する影響は、機能の数以外にもトレーニングに現れる。

たとえば、わずかながらLinuxの環境とコマンドに関する知識が必要であるため、Microsoftの技術しか導入していない会社の方がESX Serverを学習する際に多くの問題に遭遇する。

管理者が製品との対話方法を学ぶためにプラットフォームの理解に手間取ると、トラブルシューティングやパフォーマンスチューニングが遅れるため、重大な結果を招く。

そして、もし会社が正規トレーニングの費用を出さないことになればもっと深刻な遅れが生じることになる。

ESX Serverでは選択の余地がないが、VMware Serverの方はホステドソリューションであるため、WindowsにもLinuxにもインストールすることができ、既存の知識を即座に活用できる。

VirtualCenterで製品を強化

ServerとESX Serverの間にある本質的な違いはほんのわずかと考えて良い。しかし、これを「VirtualCenter」と併用する場合は大きな差が生まれる。

両製品とも、マルチホスト一元監視コンソールや仮想マシンの棚卸し、新しい仮想マシンの迅速なプロビジョニングを行うためのテンプレートベースのレポジトリ、仮想マシンに対するユーザーアクセスをコントロールする詳細なパーミッションシステム、そして柔軟なアラートサービスなど、一般的な複数のエンタープライズ管理機能のメリットを享受できる。

しかし、ESX Serverの方がVirtualCenterとの統合がServerより大幅に進んでおり、有名な「VMotion」(サービスを止めることなく物理ホスト間で仮想マシンを移動する機能)など、より複雑な操作が可能となっている。

そして、「VMware Infrastructure 3」と呼ばれる新しい「ESX Server 3.0」と「VirtualCenter 2.0」の組み合わせになると、この統合がさらに密接なものになり、曲芸的な操作が可能になる。

たとえば、新プラットフォームでは、物理ホスト上での障害検知が可能で、消えた仮想マシンをデータセンタにある別の物理ホストで再起動できる。

もう1つの感動的な機能は、物理ホスト上で動作中の仮想マシンに過負荷がかかったときにこれを負荷の低いサーバにダイナミックに移動させることができる。これらはすべて、サービスを中断させることなく自動で行われる。

これらは保守費用を劇的に下げるため、どの会社も希望する機能だが、ハードウェア機器に関しては巨額の投資が必要になってくる。かなり高速なネットワーク回線や高価なSANインフラがないと、これらをインプリメントするのは無理だ。

執筆時点では、VMware Serverはこれと同じ先進機能が活用できない。バージョン1.x台は機能の制限されたVirtualCenter 1.4からしかリモート管理ができないためだ。

今後リリースされるVMware Serverは 「VirtualCenter 2.0」で管理できるようになる見通しだが、列挙されている高度な機能が無償プラットフォームでも使えるようになるかどうかは定かではない。

それまでは、Serverを選定して「VMware Infrastructure 3」の機能を使いたい場合は、vizioncoreなどのサードパーティーソリューションに依存しなくてはならない。

最後になるが、VirtualCenter 1.4は機能的に制限があるにもかかわらず無償ではないので、無償のServerを導入したが一元管理機能が欲しいという顧客は、選択する前に全体の費用を考慮する必要がある。

重要なサポート

本稿の最初で既に言及したが、フリーソフトウェアは、機能が不完全であるとか、信頼性やパフォーマンスが低いと見なされ、このような理由から回避されることが多い。一部の会社の現場では、経済モデルがなく、開発会社が突然サポートをやめてしまうかもしれない製品に依存するという考え方にITマネージャーが恐怖心を抱き、会社のポリシーで導入が禁止されている場合もある。

このもっともな考え方に対応するため、VMwareは無償製品としてServerを提供すると同時に、エンタープライズレベルの商用サポートも提供している。

この問題を別の観点から考えると、小規模企業を中心に、一部ではVMware ServerとESX Serverの違いを検討する際にそのサポートが必須だとは考えず、仮想インフラのライフサイクルで問題が発生したら、オンラインマニュアル、サポート掲示板、ブログ、そして書籍に頼ろうと考える。

ただし残念ながら、一部ハードウェアコンフィギュレーションとの互換性がない、ホステドアプリケーションによっては仮想マシンが想定外の動作をする、ホストレベルで突然パフォーマンスのボトルネックが発生するなど、事態をこれよりはるかに複雑にする要因はいくらでもある。

仮想化プラットフォームはすべてミッションクリティカルな層として考えるべきであり、多くの仮想マシンと関連サービスが依存していることも加味し、顧客はよほどの理由がない限り商用サポートを購入すべきだ。

この観点から見るとServerとESX Serverは全く同じであり、いずれにも「Gold」と「Platinum」の両サポートプランが用意されている。

結論

VMware ServerとESX Serverは異なるアプローチによって同じ問題を解決し、さまざまな会社のニーズに対応している。

最大のパフォーマンスとデータセンタの一部自動化を求める顧客は、ハードウェア機器、インプリメンテーション作業、そしてトレーニングに膨大な経費がかかることを頭に入れながらESX Serverを検討すべきだ。

一方、早期の立ち上げと柔軟なソリューションを求める顧客は、安心してVMware Serverを選定すればよい。どの仮想化プロジェクト向けにでも検討できる信頼性はある。

本稿は当初SearchServerVirtualizationに掲載されたものです。

*ご注意:本稿は、昨年英語版サイトで最も閲覧されたニュースのうちの一つとして掲載しております。そのため一部情報が古い可能性もございます。 なお、原文はこちらをご参照ください。