仮想化(かそうか)情報システム用語事典

virtualization / バーチャリゼーション / バーチャライゼーション

» 2010年01月01日 00時00分 公開
[@IT情報マネジメント編集部,@IT]

 コンピュータを複数のユーザー(あるいはユーザープログラム)が同時に効率的かつ安定的に利用できるようにシステムリソースを抽象化、多重化/統合化すること。または、そのための技術の総称。

 プロセッサやメモリ、ディスク、ネットワークといったコンピュータシステムを構成するリソース(計算機資源)を仮想化することによって柔軟に分割あるいは統合できるようになるため、ユーザー(ユーザープログラム)の追加やワークロード需要に変動があっても、物理的構成に依存することなく効率的なリソースの割り当てを行うことができる。

 初期のコンピュータは、メモリ上に1つのプログラムしか呼び出すことができず、そのプログラムが計算機資源をすべて占有していたため、利用効率が非常に悪かった。そこで1960年代から1台のコンピュータを複数のユーザーで同時利用するための研究・開発が始まり、タイムシェアリング・システムや仮想記憶などの技術が登場した。これらは限られた物理ハードウェア資源を論理的に分割して、ユーザーごとに割り当て可能とする(多重化)とともに、ユーザープログラムから物理ハードウェアを隠蔽して、より使いやすい論理的利用環境を提供する(抽象化)もので、このようなシステムソフトウェアによる処理を“virtualization”(仮想化)と呼ぶ。これらの技術は、やがて集約されてオペレーティングシステム(OS)へと発展する。

 コンピュータ発展の歴史はこうした仮想化の積み重ねであり、その後も各種の仮想化技術が登場している。有名なものとしては、特定のモデルとなるハードウェアを持たない仮想マシンであるJava Virtual Machineがある。

 1990年代後半になってPCサーバやミッドレンジサーバのハードウェア性能が上がり、エンタープライズレベルの業務ソフトウェアのプラットフォームとして利用されるようになると、システム実行環境の安定性、効率性、運用管理性を向上させる技術として、仮想化技術に注目が集まるようになってきた。

 これらはサーバ仮想化と呼ばれ、ホストOSの上にゲストOSを稼働させる方法、ハイパーバイザと呼ばれるファームウェアの上に複数OSを稼働させる方法、ハードウェア自体にシステムを分割/統合する機能を装備する方法などがある。また、グリッドコンピューティング関連技術も、サーバを統合化して取り扱う仮想化技術として注目されている。サーバ仮想化技術は、独立したソフトウェアとして提供されることが多かったが、OSやCPU製品でサポートするものも登場しつつある。

 多数の物理サーバマシンを保持・運用している組織では、各サーバはそれぞれの処理のピークに合わせてサイジングされているため、実際には働いていない時間が多いなどの無駄が多い。サーバ仮想化技術によって、サーバ資源を共有できるようになれば、異なるアプリケーション間でリソースを融通し合ったり、予備のリソースをプール(集約管理)したりできるため、組織全体のコンピュータリソースを動的・効率的に配分して最適化することができる。障害発生時や負荷増化時にも、状況に応じてリソースの割り当てを即座に変更できるため、システムの安定稼働やディザスタ・リカバリのソリューションとしても有効である。

 サーバ仮想化以外にも、複数のストレージ装置を論理的に集約するストレージ仮想化、クライアントPCを仮想化するデスクトップ仮想化などの技術も登場している。

tt_line

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ