古くて新しい「サーバ仮想化技術」の行方
〜 あらゆる機器にハイパーバイザー 〜
高橋睦美
2007/8/10
サーバ仮想化を実現するための技術がソフトウェア、ハードウェアの両面で出そろってきた。実導入に向けて高速化や管理機能の充実、Linuxカーネルでのサポート強化が進んでいる(編集部) |
サーバ仮想化とは、物理的には1台のサーバに複数のサーバシステムが動いているかのように見せたり、逆に複数のシステムを1つのサーバシステムであるかのように見せたりする技術だ。1970年代から存在する古い技術だが、近年とみにIT業界の注目を浴びている。
理由の1つは、仮想化がメインフレームに代表される高価なインフラだけでなく、x86ベースのハードウェアでも利用できる技術となってきたからだ。つまり、コモディティ化してきたサーバリソースをより効率的に利用する手段という位置付けである。足並みをそろえるようにCPUをはじめとするハードウェア側のサポートや仮想化ソフトウェアも充実している。導入に向けた準備は整いつつあるといえるだろう。
サーバ統合だけに終わらないメリット
サーバ仮想化技術の導入目的として挙げられる大きな理由が「サーバの統合」である。背景には、せっかくのIT投資が十分に活用されていないという反省がある。
サーバ仮想化製品「VMware ESX Server」を提供しているヴイエムウェアが同社の実顧客を対象に、Capacity Plannerを用いて実施した調査によると、サーバリソースの平均利用率はわずか7%にとどまっていたという。「つまり、100万円出して購入したサーバのうち7万円分しか利用されていないという状態だ」(同社のテクニカルアライアンスマネージャ、名倉丈雄氏)。
仮想化によってサーバを統合することにより、既存のハードウェアリソースを効率的に使い倒し、かつ電力代などの運用コストを削減することが可能だ。
サーバ仮想化はほかにも副次的なメリットをもたらす。「Novell Virtualization Tour 2007」のために来日した米ノベルのロジャー・レビー氏(オープンプラットフォーム・ソリューションズ担当、シニアバイスプレジデント兼ゼネラルマネージャ)は、講演の中で次のように述べた。
「サーバ統合以外にも、コスト効率よくバックアップマシンを準備したり、迅速なプロビジョニングを行えるようになる。開発・テスト用に新しい環境が必要になった場合、これまでは数日単位の作業を要していた。仮想環境のイメージを送り出すことにより、こうした時間を数時間単位に短縮できる」(レビー氏)。
オペレーションの側面からは、物理的なサーバの違いを吸収し標準化することで、管理作業の簡素化が可能だ。サービスを停止することなくサーバを増設、拡張したり、バックアップ/災害対策に活用したりするといった運用が可能になるという。
ヴイエムウェアの名倉氏は、日立 uValueコンベンション2007のセッションの中で、「物理サーバの場合はCPUなどの違いによって、結局サーバごとに個別の管理作業が発生してしまう。これに対し仮想化によってハードウェアの違いを吸収すれば、運用の標準化と自動化が可能だ。また、サーバの入れ替えやリース切れに伴うシステムやアプリケーションの変更が不要になる」と述べている。
さらに、同社の「VMotion」のようなテクノロジを組み合わせれば、データの保護にとどまらず、コンピュータそのものの保護が可能になるとした。あらかじめ規定の構成をコピーしておき、さらにVMotionを用いてある仮想サーバの処理をほかの仮想サーバに引き継ぐことによって、サービスを途切れさせることなく災害復旧用データセンターへの切り替えが行えるという。
名倉氏は「最近はSOA(Service-Oriented Architecture)という言葉をよく聞く。アプリケーションを部品化して簡単に組み合わせることができるならば、インフラについても同じことができるはず。今後はSOI(Service-Oriented Infrastructure)の時代が来るだろう」と述べ、こうしたインフラの構築を短期間に実現するのが仮想化技術であるとした。
Xenの特徴とは
サーバ仮想化を実現する手法には「仮想マシン」「仮想OS」などいくつかのアプローチがあり、それを実装したソフトウェアも多数提供されている。
【関連記事】 仮想化技術のアプローチと実装 〜 VMwareから要注目技術Xenまで 〜 仮想化技術の大本命「Xen」を使ってみよう 〜 インストール & Debian環境構築編 〜 |
中でも前述のVMwareと並んで有力な仮想化ソフトウェアが、オープンソースの「Xen」だ。ケンブリッジ大学や米ゼンソースに加え、多くのベンダが協力し、「Xenプロジェクト」を通して開発を推進している。
7月にVA Linux Systems Japanが主催した「Xen Conference Japan 2007」に合わせ、Xenプロジェクトの創始者で、米ゼンソースのチーフ・サイエンス・オフィサーのイアン・プラット氏が来日した。同氏は、ベアメタルと比べ仮想マシンの遅延はゼロに近づき、将来的にはあらゆるOSや端末に仮想化技術が搭載されるようになるというビジョンを描いている。
Xenプロジェクトの創始者にしてリーダーを務めるイアン・プラット氏 |
プラット氏によると、ほかのサーバ仮想化技術と比べたXenの特徴は「薄型のハイパーバイザーに特化していることだ」という。
例えばバージョン2.6.20よりLinuxカーネルに統合された「KVM」は、完全仮想化をサポートしている。しかし、カーネルと一体化したアーキテクチャを採用しているため、コードが大きくなりメンテナンス性を損なうほか、仮想マシンの一部に起こった不具合が全体に波及する恐れがある。
これに対しXenは「とても薄い実装になっており、ハイパーバイザーは最小限の権限で動作する。各種機能はできるだけその外側に出しており、大半の作業はハイパーバイザー以外の部分で行うことになる。このことは、セキュリティと信頼性、可用性を高めるというデザインコンセプト上、非常に重要だ」(プラット氏)。
また、CPUやチップセット、I/Oシステムなど、ハードウェアが提供するさまざまな機能を取り入れている点も特徴という。例えばCPUでは「Intel VT」や「AMD-V」をはじめとする仮想化技術が提供されているが、Xenはこれらをフル活用するよう設計されていると同氏は述べた。
図1 「薄さが特徴」というXenのアーキテクチャ |
講演の中では「柔軟なdomain0の分離」についても言及があった。domain0ですべての機能を賄う代わりに、コントロールプレーンOSとドライバドメイン、サービスドメインに分割するという考え方で、「インターフェイスごとに異なるドメインを使い分けて拡張性や効率を高めることができる。また、コントロールプレーンのセキュリティを高める一方で、複数のドライバドメインをサポートして幅広いハードウェアに対応するといった具合に『いいとこどり』が可能になる」という。
1/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」コマンドです。
|
|