ネットワークもディスクも高速に

完全仮想化でもネイティブ並みのI/O速度を実現、SUSE Linux

2007/06/15

 仮想化環境の課題は速度。中でも完全仮想化と呼ばれる方法では、ネットワークやディスクといったI/O関連のパフォーマンスが大幅に低下してしまう。ゲストOSの中からハードウェアにアクセスするときに発生する特権命令は、仮想化レイヤでフックし、それを変換するという処理が入るため、オーバーヘッドが大きくなるからだ。オープンソースの仮想化ソフトウェア「Xen」では、完全仮想化のほかに、ゲストOSに変更を加えてオーバーヘッドを減らす準仮想化もサポートする。準仮想化環境ではゲストOS自体が仮想化に最適化されているため、オーバーヘッドが少なく、ネイティブ実行と遜色のないパフォーマンスを維持できる。

 これまで問題となっていたのは、準仮想化環境に対応するよう手を入れられたゲストOSが、必ずしも存在しないことだ。特にWindows系のOSをゲストOSとして動かす時には、これが最大の問題だった。この問題を解決する方法として、Xenでは最近準仮想化に加えて完全仮想化機能を追加し、WindowsをゲストOSとして動かせるようになったが、完全仮想化におけるI/Oパフォーマンスは大きく低下してしまっていた。

 まもなくSUSE Linux Enterprise Server 10 SP1(SLES10 SP1)をリリース予定のノベルは、こうしたジレンマを解消する一歩を踏み出す。準仮想化環境向けのドライバと同じ仕組みのドライバを、完全仮想化環境で稼働するゲストOSに入れることで、Xen上でゲストOSとしてWindowsを動作させ、しかも完全仮想化では遅くなりがちな動作速度を「劇的に改善する」(ノベル 営業本部 テクノロジースペシャリストグループ Linux担当マネージャ 岡本剛和氏)。

suse01.jpg SUSE Linux Enterprise Server 10 SP1が取る新しいアプローチ
suse02.jpg ノベル 営業本部 テクノロジースペシャリストグループ Linux担当マネージャ 岡本剛和氏

 SLES10で初めてのサービスパックとなるSP1では、まずSLES10 SP1用の準仮想化ドライバを提供。その後、Windows Server 2003 R2、Windows 2000 Server、Windows XPに対しても準仮想化ドライバをSP1リリースからは遅れるものの、「数カ月以内にリリースする」(岡本氏)。Windows Server 2003とWindows XPに関しては64ビット版もサポートする。また、SUSE Linux Enterprise Server 9 SP3、Red Hat Enterprise Linux 4/5に関しても順次サポートしていく。

 ノベルは6月15日、東京の本社で記者会見を開き、まもなくリリース予定のSUSE Linux Enterprise 10 SP1のプレビューデモンストレーションを行った。まだ最終的なチューニングを行っていないという限定付きだが、通常の完全仮想化によるWindows XPと、準仮想化のネットワークドライバを組み込んだWindows XPでTCP/IP通信のベンチマークを行った。ベンチマークは1台のThinkPad X60上で、ホストOSとゲストOS間でメモリ上でだけ通信するというものだが、結果は、完全仮想化で43.87Mbpsのスループットであったところ、準仮想化ドライバを組み込んだ環境では1017.54Mbpsと文字通り劇的に速度が改善した。岡本氏によれば、第三者による検証でも同様の結果が出ているといい、「ネイティブ稼働しているOSに、かなり近いレベルの速度」が出るという。

suse03.jpg TCP/IPのスループットを計測するベンチマーク結果の1例。43.87Mbpsから1017.54Mbpsへと劇的に向上している
suse04.jpg 上の2本がパケット受信のスループット。いちばん上がネイティブ環境、その下が完全仮想化環境のゲストOSに準仮想化ドライバを入れたもの。斜めに立ち上がっているのは送信スループットで、やはり近接する2本はネイティブ環境と準仮想化ドライバによるもの。下のほうに固まっているのが完全仮想化環境のスループットを示すグラフ
suse05.jpg ディスクI/Oのパフォーマンス測定結果。左がネイティブ環境、真ん中が完全仮想化、左が完全仮想化+準仮想化ドライバ

 今回初めてのメンテナンスリリースとなるSP1では、SLES10 SP1、SLES9 SP3、Windows Server 2003 R2、Windows 2000/XP、Red Hat Enterprise Linux 4/5の完全仮想化を初めて正式にサポートするなど、仮想化の強化が大きな変更点の1つだが、準仮想化ドライバの提供のほかにも、昨年11月に提携したマイクロソフトと技術協力することで、ノベルのSLESはWindowsとLinuxの混在環境における強みを増している。OpenOffice 2.1.14 Novell Editionでは、VBマクロの互換性を向上させたほか、Office 2007の文書形式も、プラグインのコンバータを用意することで読み込めるようにした。

 このほかSLES10 SP1の強化点は、これまでデュアルコアまでの対応だったプロセッササポートを、XeonやOpteronのクアッドコアにまで広げたこと、IBMのPower6に対応したこと、高可用ストレージのコンポーネントをアップデートしたことなど。なお、SLES10 SP1と同時に、ノベルはデスクトップ版のSUSE Linux Enterprise Desktop 10 SP1もリリースする。メインメニューのUI変更やActive Directory対応の強化、ホームディレクトリの暗号化サポートなどが主な変更点。

関連リンク

(@IT 西村賢)

情報をお寄せください:



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