オープンソースから始まったシトリックスの仮想化ソフトウェア「Xen」。オープンソース版との違いは? など、Xenに関するさまざまな疑問をシトリックスの方に直接教えていただきます。
答える人:シトリックス SVセールス部システムエンジニア エンジニアリング部長 平谷靖志氏
XenServerって何ですか?
Xenをベースにした商用のx86仮想化製品です。
Xenを研究してきたケンブリッジ大学のイアン・プラット教授は、Xenの商用化を目指してゼンソース(Xensource)社を設立しました。その後同社はシトリックス・システムズに買収され、シトリックス・システムズ社がXenをベースとした商用の仮想化製品ラインナップを「XenServer」としてリブランドしました。現在はシトリックス・システムズがx86システムの仮想化製品として、XenServerのブランド名で提供しています。
XenServerとXenは違うものですか?
オープンソースのXenにはテストされた安定したコードの他に、不安定なコードや企業で使用するためのテストが行なわれてないコードを含んでいます。シトリックスは、このオープンソースのXenに企業の本番システムとして必要となる機能を追加するとともに、不安定なコードやテストされてないコードのテストも行なっています。
この時点でコードの修正があった場合は、Xenのコミュニティに対しコード修正のチェックインを行ないます。次に、企業の本番システムで安心して使ってもらえるよう、シトリックスとしての製品リリースサイクルとしてマニュアル・自動回帰テスト、最適化、アルファテスト、ベータテストを得てリリースされます。
オープンソースXenに比べXenServerは、製品の信頼性向上、最適化がなされているとともに、シトリックスが責任を持って製品のサポートする体制が整っています。
HVMとはどんなものですか?
HVMは「Hardware Virtual Machine」の略です。準仮想化では、カーネルをXen用に変更して仮想マシン上で動かします。それに対して、Windowsのようにサードパーティがカーネルを修正できないOSもあります。このような場合、すなわち物理マシン上で動くOSと同一のカーネルを変更していないOSをXenで動かす場合には、CPUに実装されている仮想化支援機能を使用します。
この機能はインテルのCPUではVT-x、AMDのCPUではAMD-Vと呼ばれています。Xen上でWindowsのようなXen用に変更されてないカーネルを持ったOSを動かす場合には、VT-xまたはAMD-Vの機能を使用します。これらハードウェアの仮想化支援機能を使用して、準仮想化カーネルを使用しないゲストOSを動かす仮想マシンのことをHVMと呼びます。ただ、HVMの仮想マシンを動かす場合でも、I/Oについては準仮想化のテクノロジーが使用されています。
この連載の記事
-
第3回
ソフトウェア・仮想化
XenServerで何ができますか? -
第1回
ソフトウェア・仮想化
シトリックスのXenてどういうもの? - この連載の一覧へ