古くて新しい「サーバ仮想化技術」の行方
〜 あらゆる機器にハイパーバイザー 〜
高橋睦美
2007/8/10
あらゆるマシンに仮想化を
サーバ仮想化にはパフォーマンスの問題がつきものだ。Xenの場合は、準仮想化モードで動作させればオーバーヘッドをかなり抑えることが可能だが、それでも改善の余地はあるという。
特にボトルネックとなるのはネットワークI/Oだという。「ディスクのI/Oは、実はそれほど大変な問題ではない。パラメータを正しく設定し、最適化する必要があるが、それさえ行えば、ファイバチャネルやHBAを用いた大規模ディスクアレイでも高速に動作する。厄介なのはネットワークの場合だ」(プラット氏)。これを解決するために、現在いくつかの機能の開発を進めているという。
【関連記事】 NICに仮想化支援を入れスループットを大幅改善、Xen(@ITNews) |
1つは、CPUやチップセットと同様に、NIC側に仮想化支援機能を持たせ、それを活用するというアプローチだ。インテルやブロードコム、ソーラーフレアといったベンダが仮想NICを構成する機能の開発を進めており、2008年ごろにはそうした製品が市場に登場してくる見込みという。
また、適切な仮想マシンにパケットを転送する新たな機能「Net Channel 2」の開発も進めている。現在は、パケットをいったんdomain0のメモリにコピーしてからゲストOS(domainU)に送り込む仕組みだ。これに対しNet Channel 2では、NIC側で複数の受信キューを用意し、パケットのヘッダを参照して適切なゲストOSにダイレクトに転送する。この結果、10Gbpsクラスのネットワークにも対応可能な性能を実現できるという。
図2 ネットワークI/Oを高速化する仮想NICとNet Channel 2の仕組み |
こういった改善を通じて、サーバ仮想化によるパフォーマンスの低下は限りなくゼロに近づくだろうとプラット氏。この結果、仮想化はシステムの一部となり、ユーザーがまったくそれと意識することなく利用するようになるだろうと予測する。
「ハードウェアの仮想化を活用すれば、オーバーヘッドはゼロか、ほぼゼロになるだろう。それだけ高速になれば、ハイパーバイザーを使わない理由はなくなる」(同氏)。
仮想化が適用される領域も広がるだろうという見通しだ。1つの方向は、スパムフィルタやファイルサーバ、検索サーバといった既存のアプライアンスマシンの機能を仮想マシンを用いて提供する「バーチャルアプライアンス」だ。一方で、クライアント側にも仮想化技術は適用されるという。
「将来的には、従業員が利用するラップトップマシンすべてにハイパーバイザーが搭載されるだろう。企業ネットワークにVPNでアクセスするための仮想マシンと、WebブラウザやDVD作成、ゲームなどをするための仮想マシンを完全に分離すれば、安全に利用できるようになる」(同氏)。
同じことは携帯電話をはじめとするモバイル機器にも適用でき、公式なアプリケーションが稼働する仮想マシンと、ユーザーがダウンロードしてくるゲームなどのアプリケーションが稼働するマシンとを分離させることで、ウイルス被害などを未然に防ぐことが可能になるという。
またパフォーマンスの高速化に加え、ゲストOS/ホストOSの相互接続性や管理機能の強化なども焦点になってくる。現にノベルのレビー氏も「仮想マシンの作成、移行から消去に至るまで、仮想マシンおよび物理マシンのライフサイクル管理が可能な管理ツールが重要だ」と述べている。
プラット氏はこの点にゼンソースとして取り組んでおり、8月にリリース予定の「Xen Enterprise 4.0」では、マシンプールや共有ストレージの一元管理機能やVMotionに似た「XenMotion」といった機能を追加する計画だ。
進むカーネル側でのサポート
信頼性やセキュリティを高め、かつサーバ統合を支援するという意味で、Linuxコミュニティも積極的に仮想化技術の取り込みを進めてきている。
【関連記事】 Linux Kernel Watch 12月版 ついに仮想化がカーネル標準機能に!? Linux Kernel Watch 4月版 乱立する仮想化技術を統合しよう |
これらに先立つ7月10日に開催された「第5回The Linux Foundation Japan Symposium」においても、Linuxを取り巻く仮想化技術が簡単に紹介された。
【関連記事】 Linuxカーネル開発最新事情(@ITNews) |
すでにカーネルにマージ済みのKVMについては、ほぼ実用に耐え得るレベルに近づいてきたという言及があった。また、よりシンプルな仮想化方式として「Lguest」が紹介された。Lguestは特別なハードウェアを必要としない点が特徴で、Xenとともにカーネル2.6.23でメインラインに統合される見通しが示された。
さらに、サーバ仮想化を補完するテクノロジとして「コンテナ」という仕組みも紹介されている。
コンテナとは、1つのOS上に複数のパーティションを作成し、複数のCPUやメモリなどのコンピューティングリソースをそれぞれに分離した形で提供する仕組みだ。各種リソースをグルーピングしたうえでコントロールするもので、軽量版のサーバ仮想化技術ととらえることも可能だし、仮想化技術をさらに補完するテクノロジともいえる。
コンテナに関する提案は複数あるが、Linuxカーネルへの統合をにらみ、それらの整理を進めるとともに、仮想サーバのサポートやネットワークコントロールシステムの追加といった開発が進められる方針という。
2/2 |
|
|
||||
|
Linux Square全記事インデックス |
Linux Squareフォーラム 仮想化技術関連記事 |
連載:実践! Xenで実現するサーバ統合 有力な仮想化技術として注目を集めるようになった「Xen」。このXenを活用してサーバ統合を実践していく手順を具体的に紹介します |
|
特集:サーバの仮想化技術とビジネス展開の可能性 jailからUML/VMwareまで 1台のマシンで複数のサーバを動かす「仮想化技術」。VMwareやUMLの登場により、WebサイトだけでなくOS自体を仮想化できるようになった |
|
特集:仮想化技術のアプローチと実装 VMwareから要注目技術Xenまで 1台のサーバで複数の仮想マシンを実行する仮想化技術は、空間コストを引き下げる可能性を持つ。最新の仮想化技術を概観してみよう |
|
特集:仮想OS「User Mode Linux」活用法 技術解説からカーネルカスタマイズまで Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説 |
|
特集:仮想化技術の大本命「Xen」を使ってみよう インストール & Debian環境構築編 高いパフォーマンスで本命の1つとなった仮想マシンモニタ「Xen」。日本語による情報が少ないXenを、実際に動かしてみよう |
|
特集:仮想化技術の大本命「Xen」を使ってみよう Xen対応カスタムカーネル構築編 Xen環境およびその上で動作する仮想マシン用カーネルを自分で構築しよう。これにより、自由にカスタマイズしたカーネルを利用できる |
|
特集:IPv6、UML、セキュリティ機能の統合 全貌を現したLinuxカーネル2.6[第4章] 今回は、これまでに紹介し切れなかった機能を一気に紹介する。これを読めば、カーネル2.6の正式リリースが楽しみになるだろう |
|
Linux Squareプロダクトレビュー VMware Workstation 4 PC/AT互換機エミュレータとして不動の地位を築いたVMware。その新バージョンがリリースされた。新機能を早速試してみよう |
|
古くて新しい「サーバ仮想化技術」の行方 サーバ仮想化を実現するための技術がソフトウェア、ハードウェアの両面で出そろってきた。ハイパーバイザーのさらなる高速化に向けた動きを紹介する |
|
Linux Squareフォーラム全記事インデックス |
- 【 pidof 】コマンド――コマンド名からプロセスIDを探す (2017/7/27)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、コマンド名からプロセスIDを探す「pidof」コマンドです。 - Linuxの「ジョブコントロール」をマスターしよう (2017/7/21)
今回は、コマンドライン環境でのジョブコントロールを試してみましょう。X環境を持たないサーバ管理やリモート接続時に役立つ操作です - 【 pidstat 】コマンド――プロセスのリソース使用量を表示する (2017/7/21)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、プロセスごとのCPUの使用率やI/Oデバイスの使用状況を表示する「pidstat」コマンドです。 - 【 iostat 】コマンド――I/Oデバイスの使用状況を表示する (2017/7/20)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、I/Oデバイスの使用状況を表示する「iostat」コマンドです。
|
|