OpenVZは,米SWsoft社が開発した仮想化ソフト「Virtuozzo」のオープンソース版である。SWsoft社はVirtuozzoの最初のバージョンを2001年に出荷した注1。同社はVirtuozzoの普及を狙い,その中核をなす仮想化エンジン「OpenVZ」をオープンソースとして,2005年12月末に公開した(http://openvz.org/)。

有償のVirtuozzoとOSSのOpenVZ

 有償版のVirtuozzoは,OpenVZの仮想化機能に加えて,(1)GUI管理ツールの装備(写真1),(2)Linux版だけでなくWindows版も提供,という特徴を持つ注2。価格は,1CPU当たり15万円である。

写真1●Virtuozzoに備わるGUIベースの管理ツール「VZMC」
写真1●Virtuozzoに備わるGUIベースの管理ツール「VZMC」

 一方,オープンソース版のOpenVZは,Linux版しか用意されておらず,GUI管理ツールも含まれない。ただし,コマンドラインから管理できる上,仮想化機能そのものはVirtuozzoと同じである。

 以下では,OpenVZを対象に説明するが,その内容はインストール手順等も含めてVirtuozzoのLinux版にも当てはまる。

CPU負荷は少なく処理性能が高い

 OpenVZの特徴は大きく3つある。(1)CPUの負荷が少なく処理性能が高い,(2)CPUやメモリーなどのリソースを細かく管理できる,(3)仮想マシンを動かしたまま物理マシン上で移動させる「ライブ・マイグレーション」に対応する,である。こうしたことから,サーバー・マシンを多数のユーザーに貸し出すホスティング・サービスでの利用に向くとされる。

 OpenVZでは,ゲストOSの処理能力において,最大でも3%しか物理マシンのCPUの性能が低下しないという。CPUへの負荷が低いとされているXenと比べても,OpenVZの負荷の少なさは際立っている。

 これは,Xenとは異なり,OpenVZでは物理マシン内にLinuxカーネルが1つしか動いていないことによる。ゲストOSをいくら動かしても,それらのゲストOSとホストOSを合わせて1つのLinuxカーネルだけしか物理マシン上で動作していない。このLinuxカーネルを複数のゲストOS(OpenVZでは仮想プライベート・サーバー,VPSと呼ぶ)で共用するため,ゲストOSの切り替えといったオーバーヘッドが極力発生しないという。ちなみに,SWsoft社はOpenVZの仮想化手法をオペレーティング・システム・レベルの仮想化技術と呼んでいる。

 処理性能が高いという利点があるものの,制限もある。あらかじめ決められたLinuxディストリビューションだけしか,ゲストOSとして動かせないことだ。具体的には,Fedora Core 5やRed Hat Enterprise Linux 4(およびCentOS 4),SUSE Linux 10.1など「OSテンプレート」(後述)が用意されたものしか,ゲストOSとして動かせない。