ページの本文へ

Hitachi

統合サービスプラットフォーム BladeSymphony

サーバ仮想化って一体どんな技術なの?というあなたに、サーバ仮想化の「いろは」をかんたん解説。

サーバ仮想化の概要

単一のサーバーをあたかも複数のサーバーであるかのように見せる技術です。

サーバ仮想化は、1台の物理サーバーのリソースを分割/統合して、仮想的に(論理的に)何台ものサーバーが動作しているように見せたり、複数の物理サーバーを1台のサーバーのように見せる技術です。この仮想化されたサーバーごとに、OS、アプリケーションを割り当てられます。もともとメインフレームではおなじみの技術ですが、オープン系のハイエンド・サーバーへの適用が進み、IAサーバー向けの仮想化ソフトも充実してきており、機運が高まっています。

サーバ仮想化の概要図

サーバ仮想化の基礎用語集

よく使われる仮想化に関する用語を解説します。

インテル バーチャライゼーション・テクノロジー Intel Virtualization Technology

仮想化のオーバーヘッドを低減し、複数OS の並行動作をより効率的に行うために、インテル社がハードウェアとして、プロセッサに組み込んだ仮想化支援機構。Intel VTは、「Intel VT-x」、「Intel VT-i」、「Intel VT-d」などの仮想化支援機能の総称。

VT-x
VT-xは、Core 2 Duoプロセッサ, Xeonプロセッサなど向けに実装された仮想化支援技術。ハイパーバイザとの連携により、複数OSが個別に実行する制御命令を矛盾無く並列実行させる機能を備えている。
VT-i
VT-iは、Itaniumプロセッサ向けに実装された仮想化支援技術で、VT-xと同様な機能を有する。
VT-d
VT-dは、ディスクアクセスやネットワーク通信といったI/O処理のための仮想化支援技術。

サーバ仮想化

仮想化技術のうち、サーバーを対象とするもの。他に、ストレージ仮想化、ネットワーク仮想化といった仮想化技術もある。

ハイパーバイザ Hypervisor

仮想マシンを実現するための制御プログラム(一種の専用カーネル)で、ゲストOSのリソース管理や、エミュレーション処理を行う。
オペレーティングシステム(OS)はスーパーバイザ(監督者)と呼ばれることがあるが、これとの対比で、ハイパーバイザは、仮想化環境で複数OS(スーパーバイザ)を稼働・制御するプログラムであり、「上位の監督者」という意味で付けられた名称。

ハイパーバイザ型

ハイパーバイザ上でゲストOSを実行させる仮想化方式。動作の安定性や高速性に優れる。(⇔ホストOS型)
ハイパーバイザ型には、完全仮想化および準仮想化がある。

完全仮想化 Full Virtualization

ゲストOSを修正することなく、ハイパーバイザ上で、ゲストOSをそのまま実行できる(ハードウェアをエミュレートする)タイプの仮想化技術。

準仮想化 Para virtualization

完全仮想化のハードウェアの完全エミュレーションでは十分な性能が出ない場合に、ゲストOSを修正し、ハイパーバイザとゲストOSの連携で性能改善を図るタイプの仮想化技術。擬似仮想化ともいう。修正済みのOSだけがゲストOSとして実行できる。

ホストOS型

仮想化の実現方式のうち、ホストOSを必要とする仮想化方式。 (⇔ハイパーバイザ型)
移植面で汎用性が高いものの、制御のオーバーヘッドが大きく、高速性や信頼性で劣る。
制御層は下から順に、ハードウェア→ホストOS→仮想化ソフトウェア→ゲストOSである。

ホストOS Host OS

(広義には)仮想化方式において、ゲストOSとの対比で用いられる。業務アプリケーションなどのソフトウェアを動かすことを目的とするゲストOSに対して、仮想化されたサーバー全体の管理や制御を目的とする管理用OSを指す。ホストOS自身が仮想サーバー上で動作するシステムもある。(⇔ゲストOS)
(狭義には)ホストOS型の仮想化方式において、仮想化層のプログラムを動かすために、ハードウェア上で動かす必要のあるOSのこと。ゲストOSはホストOS上のプロセスとして実現される。

ゲストOS Guest OS

1つの物理サーバー上に構築された1つ以上の仮想化環境(仮想サーバー)で、並行して複数実行されるOSのこと。アプリケーションを実行できるOS。

OS仮想化(OSレベルの仮想化)

ホストOS(カーネル)層にてサーバ仮想化機構を実現し、仮想環境を単一の物理サーバーと単一のOSインスタンス上に作成することにより、効率化を図る方法。ホストOSと異なるゲストOSは実行できない欠点はあるが、1回パッチを当てればすべての仮想環境にパッチを適用したことになる利点もある。代表的なものに、「Virtuozzo」、「OpenVZ」、「Solaris Containers」などがある。

エミュレーション emulation

あるハードウェアの上で動作することが前提のソフトウェアを異なるハードウェアの上で動作させるために、前提とするハードウェアに合わせた模倣処理を行うことを指す。
エミュレーション、あるいはエミュレートする、などという。またその模倣処理を行うプログラムをエミュレーターということもある。

オーバーヘッド overhead

何らかの処理を行うためにかかるシステムやプロトコルの動作に対する負荷。「仮想化オーバーヘッド」という場合には、物理サーバー上での動作では発生しないが仮想サーバー上では発生する余分な制御や余分な時間のことを指す。

論理パーティション/論理パーティショニング LPAR(Logical PARtition)/Logical PARtitioning

仮想化の実現方式の1つで、各区画(論理パーティション)に区切り、ハードウェアが持つリソースを論理的に分割・割当てる方式、または、その割当てられた区画。 (⇔仮想マシン)

仮想マシン Virtual Machine

仮想化の実現方式の1つで、実際には存在しないハードウェアリソース(CPU, メモリ, I/Oなど)を抽象化したリソースに変換し、複数の仮想化環境(仮想マシン)に、あたかも存在するもののように割当てる仮想化手法。ハイパーバイザが行う仮想→物理、物理→仮想の変換オーバーヘッドが大きい。(⇔論理パーティション)
広義には、仮想化環境を指す場合もある。

仮想サーバー Virtual Server

サーバ仮想化技術により実現される、複数の仮想的なサーバー環境をさす。

物理サーバー Physical Server

実際の物理的なコンピュータやサーバーのこと。仮想化されていないという意味で使用される場合や仮想化環境との対比として、実際のリソースを持つコンピュータやサーバー自体をさす場合がある。(⇔仮想サーバー)

ベーシック・モード Basic Mode

1つの物理サーバー上で、1つのOSを動かすモード。(⇔仮想化モード)

仮想化モード Virtual Mode

1つの物理サーバー上で、複数のOSを動かすモード。(⇔ベーシック・モード)

ライブマイグレーション Live Migration

仮想サーバーで動作するOSやソフトウェアを停止することなく、物理サーバーごと、他の物理サーバーへ移動させる技術・サービス。