解説

仮想マシン技術がサーバ導入/管理を大きく変える

デジタルアドバンテージ 小林 章彦
2005/02/08
解説タイトル

 2005年後半からデュアルコアを採用したプロセッサが投入される。デュアルコアによって、プロセッサの性能が大幅に向上すると見られている。こうしたプロセッサの向上を生かしたキラー・アプリケーションとして、仮想マシン技術に注目が集まっている。仮想マシン技術を利用することで、分散させていたサーバの統合や、開発テスト環境の構築などにメリットがある。ここでは、サーバにおける仮想マシン技術のメリットについて解説する。

仮想マシン技術の仕組み

 Intelは、次期Itanium 2から順次、プロセッサに仮想化技術「Vanderpool Technology(開発コード名:バンダープール)」を導入することを明らかにしている(AMDも、同様の仕組みを投入するといわれている)。Vanderpool Technologyは仮想化技術と呼ばれるが、実際には仮想化を支援するための機能が付加されたものであり、プロセッサだけで仮想化が実現するわけではない。とはいえ、Vanderpool Technologyの提供によって、仮想化技術の普及が加速するのも間違いないだろう。

 すでにサーバ向けの仮想マシン技術としては、VMwareのVMware GSX Server/VMware ESX ServerやMicrosoftのVirtual Serverなどが提供されている。このような仮想マシン・ソフトウェアを利用することで、現在でも仮想マシン技術は利用可能である。ただ現時点では仮想マシン技術を利用すると、ゲストOS(仮想マシン上で動作するOS。仮想マシンを実現するベースOSは「ホストOS」と呼ぶ)の性能が大幅に低下しまうため、ハイエンド・サーバ上で古いOSを稼働させたり、開発時のテスト環境を構築したりするなどの限定的な利用に留まっているのが現状だ。プロセッサのデュアルコア化によってサーバの性能が向上し、仮想化による性能ダウンの影響が小さくなれば、仮想マシン技術がもたらす可能性は一段と高まる。この時期は、プロセッサのデュアルコア化が本格化する2005年後半にやってくると思われる。

 では、仮想マシン技術を利用すると、どのようなメリットが生まれるのだろうか。仮想マシン技術では、ホストOS(仮想マシン・モニタ)上でコンピュータの仮想化が行われ、その上にゲストOSが動作する。つまり、異なるハードウェア環境にあっても、仮想マシン・モニタによってハードウェアが仮想化されるため、ゲストOSはまったく同じものが動作可能となる。また仮想マシン・モニタによってサーバが搭載/接続しているデバイスも仮想化されるため、ゲストOSは標準的なデバイス・ドライバで未サポートのデバイスが利用できるようになる。例えば、Windows NT Server 4.0向けのデバイス・ドライバが提供されていないRAIDカードであっても、ホストOSのWindows Server 2003がサポートされていれば、仮想マシン・モニタによって単なるディスク・インターフェイスとしてRAIDカードを利用できるようになる。

 このような仮想マシン技術の仕組みを踏まえて、利用シナリオを見てみよう。

■シナリオ1古いOSを最新のサーバ上で動かす
 Windows NT Server 4.0などのすでにサポートが終了しているOS上で、OSに依存したミドルウェア/アプリケーションを稼働させている場合、ハードウェアの寿命が大きな問題となっている。現在販売されているサーバのほとんどは、Windows NT Server 4.0をサポート対象外としており、Windows NT Server 4.0向けのデバイス・ドライバは提供されていない。つまりサーバが故障した場合、新たなサーバを購入してもWindows NT Server 4.0を動かすことができない。

 前述のように仮想マシン技術を使えば、仮想マシン・モニタによってデバイスは仮想化され、必ずしもサーバがWindows NT Server 4.0をサポートしている必要はなくなる。実際、マイクロソフトも既存のWindows NT Server 4.0ユーザーに対して、Windows Server 2003への移行期間に同社の仮想マシン・ソフトウェアであるVirtual Serverを利用し、Windows NT Server 4.0をゲストOSとして利用することを提案している。これにより、ハードウェアの故障によって、Windows NT Server 4.0が利用できなくなる心配は解消される。

 もちろんWindows NT Server 4.0に対しては、セキュリティ修正プログラムなどの提供が行われなくなるため、Windows NT Server 4.0を使い続けることは、セキュリティ上のリスクが高めることになる。それでも、Windows NT Server 4.0上で動作しているアプリケーションを、すぐにほかのOSへ移行できないのであれば、一時的に仮想マシン技術を利用してWindows NT Server 4.0を使い続けるのも1つの手段といえるだろう。

仮想マシン技術によるWindows NT Server 4.0の利用方法
Windows NT Server 4.0のハードウェア・サポートはなくなりつつある。それでも、仮想マシン技術を使うことで、最新のOS上で動作させることが可能だ。こうした延命措置を行った上で、Windows Server 2003などへのアプリケーションの移行を行うのも1つの方策といえる。

■シナリオ2:複数のサーバを統合する
 サーバの性能が向上してきたことから、複数のサーバに分散して構築していたシステムを、性能の高い1つのサーバに統合する「サーバ・コンソリデーション(サーバ統合)」の動きがある。サーバを統合することで、ハードウェアのメンテナンスの手間やコストが大幅に削減できる。しかし企業の情報システムでは、システム導入の目的や時期によって、最適なプラットフォームを選択する傾向があり、この結果として異なる複数のプラットフォームが混在するのが一般的である。これらを1つの高性能サーバに統合することは理論上不可能ではないが、移行にかかるコストやリスクはあまりに大きく、現実的ではない。

 このような場合でも仮想マシン技術を利用し、各サーバ上の環境をゲストOSとして構築すれば、ソフトウェアとしては複数のプラットフォームを混在させたまま、物理的なサーバは1つに統合できる(各ゲストOSからは、複数のサーバで構築されているように見える)。ミドルウェアやアプリケーションの手直しをせずに、サーバ統合が実現可能だ。もちろん仮想マシン技術によるオーバーヘッドがあるため、仮想マシン技術を利用せずに、ホストOS上にネイティブな環境を構築した方が高い性能が得られるのは間違いない。しかし環境移行のコストは膨大なので、その予算でより高い性能のサーバを導入して、仮想マシン技術を利用するというのは現実的な選択だ。この方法なら、管理すべきサーバの数が減るので、移行時だけでなく、移行後の運用管理にかかるコストも圧縮できる。

■シナリオ3:OSイメージのバックアップをとる
 仮想マシン上のゲストOSは、ホストOS上ではイメージ・ファイルとなっている。そのため、イメージ・ファイルを別のサーバなどにコピーするだけで、ゲストOS上にインストールされたアプリケーションやデータを含めて、まるごとバックアップすることが可能だ。リストアは、そのイメージを仮想マシン上に戻せばよい。その際、別のサーバ上に構築された仮想マシンであっても、設定などの変更は不要だ。

 通常、バックアップしたOSイメージは、特定のハードウェアでの動作を前提としているため、基本的には異なるサーバにリストアすることはできない。これに対し仮想マシン技術を利用していれば、デバイス・ドライバの変更なども不要で、仮想マシンさえ提供すれば、そのまま動作させることができる。仮想マシン技術をうまく使えば、障害発生時のダウンタイムを低減させることが可能である。

■シナリオ4:修正プログラムの適用テストを行う
 セキュリティ修正プログラムの適用作業が、サーバ管理者の負担になっていると聞く。基幹業務などに利用しているサーバでは、修正プログラムの適用によって不具合が発生してしまうと全社的な影響を与えてしまう。一方で修正プログラムを適用しなければ、セキュリティ上のリスクが増大する。両方のリスクを低減する1つの方法は、運用している環境とまったく同じ環境を用意して修正プログラムを適用し、不具合が発生しないことを検証することだ。しかし、日々の運用によって変化する環境と同じ環境を用意するのは容易ではないし、基幹業務向けサーバを修正プログラムの適用テストのためだけに用意するのはコスト的に見合わない。

 仮想マシンを利用すれば、シナリオ3で示したようにOSイメージのコピーを別サーバ上の仮想マシンに展開し、ほぼ同じ環境を構築できる。そこで修正プログラムの適用を試してみれば、実務で利用しているサーバでも問題が発生しないことが検証できる。修正プログラムの適用によって不具合が発生するかどうかを確認するだけならば、テスト用のサーバにはそれほど高い性能は要求されない。

 このように修正プログラム適用の際のテスト以外にも、仮想マシン技術を使えば、新しいアプリケーションの導入前のテスト環境など、安価なサーバによって、実務サーバと同様の環境を構築することができる。逆に開発マシンとして仮想マシン技術を利用すれば、そのまま実務サーバへの移行が容易にできるので、実務サーバ上での新しいアプリケーションのテストなどを大幅に省略することができる。

仮想マシン技術の利用によるサーバ環境の移行
仮想マシン技術を利用することで、異なるハードウェア間であっても容易に環境の移行が可能になる。開発環境から実務環境への移行、修正プログラムの適用や新しいアプリケーションのインストールのためのテスト環境の構築などに利用できる。

仮想化技術の将来

 以上のように、仮想マシン技術の利用にはさまざまなメリットがある。しかしこれらのメリットを享受するには、少なからぬ仮想マシンの性能上のオーバーヘッドが実用性に影響を及ぼさないようにしなければならない。従来これには、大幅なサーバ性能の向上が不可欠であり、コスト的に実務環境を仮想マシン上に構築するのはあまり現実的とはいえなかった。しかしデュアルコアやマルチコアが標準になり、仮想マシンの実現に向けたコスト・パフォーマンスが大幅に改善されれば、より幅広い分野で仮想マシン技術が活用されることは間違いない。

 2005年後半からは、プロセッサにVanderpool Technologyなどの仮想マシン技術を支援するような機能が標準実装される。こうした技術によって、仮想マシン技術は加速度的に普及する可能性がある。さらに将来的には、複数のサーバをまとめて、リソース・プールを作成し、そこから必要なリソースをアプリケーションが得るような仮想化技術が普及することになるだろう。現在の情報システムでは、ピーク時のトランザクションに合わせてキャパシティ設計を実施する必要があるが、リソース・プール環境が実現すれば、ピークのタイミングが異なる複数の情報システムを統合し、全体としての情報システム投資を圧縮できるようになる(例えば、昼間のトランザクションが多いシステムと、夜間のトランザクションが多いシステムでリソースを共有するなど)。

 アプリケーションの性能要求に対して、動的にリソースを分配するような時代がすぐそこまで来ている。仮想マシン技術はその第一歩なのである。記事の終わり

目次ページへ  「System Insiderの解説」


System Insider フォーラム 新着記事
  • Intelと互換プロセッサとの戦いの歴史を振り返る (2017/6/28)
     Intelのx86が誕生して約40年たつという。x86プロセッサは、互換プロセッサとの戦いでもあった。その歴史を簡単に振り返ってみよう
  • 第204回 人工知能がFPGAに恋する理由 (2017/5/25)
     最近、人工知能(AI)のアクセラレータとしてFPGAを活用する動きがある。なぜCPUやGPUに加えて、FPGAが人工知能に活用されるのだろうか。その理由は?
  • IoT実用化への号砲は鳴った (2017/4/27)
     スタートの号砲が鳴ったようだ。多くのベンダーからIoTを使った実証実験の発表が相次いでいる。あと半年もすれば、実用化へのゴールも見えてくるのだろうか?
  • スパコンの新しい潮流は人工知能にあり? (2017/3/29)
     スパコン関連の発表が続いている。多くが「人工知能」をターゲットにしているようだ。人工知能向けのスパコンとはどのようなものなのか、最近の発表から見ていこう
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

System Insider 記事ランキング

本日 月間