XenServerを極める(1)

第1回 Xenハイパーバイザを使う意義


シトリックス・システムズ・ジャパン株式会社
2008/8/7


 信頼性の向上

 仮想化ソフトウェアは複数の仮想マシンを同時に実行するインフラ製品である。つまり、仮想化ソフトウェアの障害は、その上で動いているすべての仮想マシンのダウンにつながり、今まで以上にビジネスインパクトが大きくなってしまう。すなわち、仮想化ソフトウェアを信頼性あるものにしなければ本番業務で仮想インフラを使用できないのである。

 Xenの考え方は仮想化レイヤをなるべくシンプルにすることと、実績あるものを使用することである。Xenの構成要素は基本的な仮想化を提供するXenハイパーバイザとDomain0であるが、仮想化として必要なCPUとメモリの仮想化のみをXenハイパーバイザに取り込み、I/Oの仮想化の部分はDomain0側で提供することとした。その結果、Xenハイパーバイザのコードはわずか5万ステップに抑えられ、信頼性ある仮想化機能が提供できている。

図3 XenServerのアーキテクチャ

 一方、I/Oおよび仮想化の管理のためのインターフェイスを担うDomain0には、既存のLinuxを使用することが可能である。XenServerはCentOSをDomain0として使用しており、実際のI/Oは標準Linuxデバイスドライバを使用する。各ベンダが作成した実績あるデバイスドライバを仮想マシンからのI/Oに使用しており、また、このドライバはI/Oデバイスにチューニングされているため、高速で信頼性のあるI/Oが仮想マシンから行える。

 オープンソースであるということ

 Xenハイパーバイザはオープンソース・プロダクトである。いまさらオープンソースのメリットを説明するつもりはないが、誰もがプロジェクトに参加できるということ、誰でもソースコードを見ることができるということは特に製品の発展とセキュリティの面で大きな意味がある。今後、さまざまな機能強化が仮想化で検討されている。それは、ソフトウェアだけでなくハードウェア面からの強化も含めてである。

 例えば、CPUベンダのようなハードベンダがハードウェアに仮想化の機能を組み込む場合を考えてみてほしい。ハードベンダが、ハードウェアに仮想化のための機能を組み込み、ハードベンダ自身がその機能を使用するためのソフトウェア(Xen)を機能強化することが可能なのである。オープンソースであるからこそ、このようなことが出来ていたし、今後も可能なのである。

 Xenプロジェクトは当初、Linuxゲストが仮想化オーバヘッドをなるべく少なく実行できることを念頭に開発されてきたが、CPUのハードウェアアシスト機能により状況は一変した。CPUのハードウェアアシスト機能はカーネルの変更なしでWindows ゲストが利用可能になり、Xenは仮想化の本命と言われるほどになった。次回は、XenをベースとしてCitrix XenServerがどのような付加価値をつけてユーザーに届けているか、XenServerが目指していることを紹介する。

2/2
 

Index
第1回 Xenハイパーバイザを使う意義
  Page1
「Xen」はどこから来たか
仮想化オーバーヘッドの回避
Page2
信頼性の向上
オープンソースであるということ


Server & Storage フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Server & Storage 記事ランキング

本日 月間