特集
IT管理者のための仮想化技術入門(前編)

2. 仮想化技術の実現レベルと課題

日本ヒューレット・パッカード株式会社
テクニカルサポート統括本部
山根正士
2004/04/06

仮想化の実現レベル

 仮想化は、図3のような階層構造において、上位層のリソースが下位の仮想化されたリソースを利用することで実現する。それぞれの実現レベルはリソース提供側の仮想化の粒度によっていくつかの技術に分類できる。ここでは、それぞれの仮想化技術の概要を述べるにとどめ、詳細は後編に譲ることにしたい。

図3 仮想化の実現レベル
仮想化は、仮想化するリソースの種類や実現レベルなどにより、図のように階層構造を持つ。

■ストレージ・レベルの仮想化
 物理単位であるディスクを複数束ね、仮想的な論理ディスクとして提供するRAID技術は代表的な仮想ストレージ技術といえるだろう。さらにこれらをSANによって接続することで、コンポーネントの枠を超えた共有ができるようになる。最近ではマルチベンダのストレージ製品を仮想化装置(アプライアンス)や仮想化ソフトウェアによって集約し、1つの論理的なストレージ領域として提供することが可能になっている。論理的には1つのストレージでも、物理ディスクは分散された構成になっているので、性能向上が見込めるといったメリットがある。また別コンポーネント間でデータの2重化(ミラー・コピー)を行うことで、コンポーネント障害に対するデータ可用性の向上を図ることが可能だ。

■サーバ・レベルの仮想化
 ここではサーバ単体の内部を仮想的に分割する技術として定義する。サーバ本体内において、サーバ内リソース(プロセッサ、メモリ、I/Oなど)を分割あるいは共有しながら複数のOS環境を共存させる技術である。集約化によるリソース利用率向上などのコスト・メリットを得ることができる。またリソース分割サイズの変更によって、リソース配分を変更できる柔軟性は大きなメリットである。技術的には以下のように大別される。

物理パーティション技術 サーバ内の物理リソースを分割し、パーティションを形成する。各パーティションが仮想サーバとして動作する。プロセッサ、メモリ、I/Oカードなど物理リソース単位で分割するのでパーティションの独立性が高く、ハード障害や負荷などの影響がパーティション間で影響しないという特徴がある。HPのsuperdomeシリーズやUnisysのES7000シリーズといった基幹業務向けハイエンド・サーバの登場により、IA/Windowsサーバ環境においても1サーバ本体内にWindowsやLinux、商用UNIXなど複数OSの実装が可能となっている。HPのnPartition/vPartitionやIBMのLPARなどがある
論理パーティション技術(仮想マシン) 1サーバ上に仮想化ソフトウェアを実装し、ソフトウェア上で複数のOSインスタンスを実行する方法である。仮想マシンともいわれる。プロセッサ、メモリ、I/Oデバイスは仮想化ソフトウェアにより抽象化され、物理リソースは複数のOSにより共有されている。リソースの利用効率は高いがハードウェア障害が仮想マシンすべてに影響するというデメリットもある。VMwareのVMWare ESX Server/GSX Serverなどがある
リソース・パーティション技術 1つのOSインスタンス上の複数アプリケーションに対して、サーバ内のリソースを分割して提供する技術である。アプリケーションごとにリソースの利用率制限を設けてOS上でのアプリケーション実行環境の共存を図る。アプリケーションにかかる負荷(ワークロード)に応じてリソース利用率の増減をコントロールするワークロード管理技術と併用することで、ダイナミックなリソース再配分ができるメリットがある。MicrosoftのWindowsシステム・リソース・マネージャ(WSRM)やHPのWorkload Manager Toolkit(WLM)、IBM Workload Manager(WLM)などがある

■システム・レベルの仮想化
 複数のコンポーネントを束ね、1つの仮想的なシステムとして扱う技術をシステム・レベルの仮想化という。複数のサーバを1サーバ環境として仮想化する技術もシステム・レベルに位置付けることが多い。実行環境の複数サーバへの拡張は、サーバ・ロードバランシング、クラスタ技術、分散ワークロード管理技術などが代表的なものである。サーバ・ロードバランシングはネットワーク・アクセスの負荷から判断し、複数のサーバに対して処理を分散する技術だ。またクラスタは、データアクセス処理の負荷を複数のサーバに分散する技術である。データベースの「Oracle9i Real Application Clusters(Oracle9i RAC)」「SQL Server 2000 Enterprise Edition」などが、クラスタ技術に対応している。これに対して、分散ワークロード管理は、サーバにかかる負荷から判断し、実行サーバ数の増減のコントロールを行う技術になる。HPのgWLMやIBMのBWLMなどがある。これらの技術により、予測が難しい負荷増減に対して自動的にリソース調整を行うことが可能になる。つまりピーク性能に合わせた過剰なサイジングを行う必要がなく最適なリソースでシステム構築ができるメリットがある。

 サーバだけでなく、ネットワーク、ストレージなども合わせてシステム全体のリソースコントロールを総合的に行う技術も出てきている。HPのUDC(Utility Data Center)やIBMのThinkControlなどがこれに相当する。

■アプリケーション・レベルの仮想化
 アプリケーションの分散処理を行う技術として、グリッド・コンピューティングが注目されている。何台ものコンピュータの計算能力を1つにまとめて有効活用しようというものだ。グリッド技術は、ネットワーク上に分散並列処理を行う仮想コンピュータを動的に形成する技術である。計算資源がどこにあるかはアプリケーションが意識することはない。ワークロード管理のようにリソースを集中管理するのではなく、グリッド技術により、集中管理されていない分散したリソースをコーディネートし、アプリケーションにリソース提供を行うのが特徴である。

 マルチベンダで構成されるコンピューティング環境において仮想化リソースを利用するためには、ベンダ非依存な標準インターフェイスが不可欠である。そのためGlobal Grid Forumで標準化が進められ、「OGSA(Open Grid Services Architecture)」としてフレームワークが提供されている。また、1995年に米国アルゴンヌ国立研究所、南カリフォルニア大学情報科学研究所、シカゴ大学が設立したグリッド・ソフトウェアの開発グループ「Globus Project」(グローバス・プロジェクト:現在はGlobus Allianceに名称変更)が、グリッド・インターフェイスとして「Globus Tool Kit」を提供しており、デファクト・スタンダードとなっている。

 仮想化の粒度に関して、システム・レベルまでは物理コンポーネントを論理コンポーネントに変換し、リソースを効率的に分割して配分するものであった。グリッド技術で提供する仮想リソースの粒度はコンポーネントではなく、アプリケーションの実行環境そのものである。計算能力に余力のあるコンポーネントであれば、同一コンポーネント上での並列実行も可能になるからだ。リソースの共有度、利用率において、非常に効率的であるといえる。現在、技術計算分野での利用は進んでいるが、エンタープライズ・レベルでの適用はこれから成熟していくことが期待されている。

■ITサービス・レベルの仮想化
 代表的な技術としてWebサービスがある。WebサービスはSOAP/XML形式のメッセージ交換によってインターネット上の自律したアプリケーションを連携させる技術である。業務完結型のサービスとしてアプリケーションを利用するため、サービス自体の内部アーキテクチャはブラック・ボックスとして仮想化、抽象化されている。このように業務完結型の論理作業単位をソフトウェア・モジュールとして設計し、ITサービスをモジュールの組み合わせにより構築する方法は、SOA(Service Oriented Architecture)と呼ばれ、業務アプリケーションの柔軟な設計手法として注目されている。ソフトウェア・モジュールは、業務内容と密接に関連し、業務上の1つの機能単位として設計される必要がある。これらモジュールを業務フローに応じて連結することで業務サービスを構築していく。こうすることによって、アプリケーションの機能の重なりをなくし、効率的なアプリケーション統合が可能になる。また業務フローの変更に対して、アプリケーションのスクラッチ&ビルドではなく、ソフトウェア・モジュールの組み替えや追加で対応できる変更容易性を得られるメリットがある。

仮想化の課題

 仮想化技術は複雑なアーキテクチャをシンプルにし、柔軟なリソース配置を可能にする。しかし、これらは機能的な側面である。仮想化技術が定着していくには、運用の視点から以下の課題に取り組んでいく必要がある。

■管理の2重化
 運用管理の側面からは、リソースは仮想化されたITリソースと物理的なITリソースという二面性を持つことになる。これにより、いわゆる管理の2重化が生じることになる。これに対して、各ベンダは自己修復、自己チューニング、自己最適化などのインテリジェンスな機能を実装し、自動運用、自律運用に取り組んでいる。これにより管理者は、コンポーネント・レベルの運用負担を軽減することができる。

■保守サービス
 仮想化によりベンダ間の差が吸収され、ITインフラのマルチベンダ環境の一元的な利用が可能になる。しかし保守サービスでベンダごとの契約のままだと、障害発生時の対処が複雑になる。各ベンダのマルチベンダ・サポート能力の向上が必要である。

■サービス・レベル管理
 利用者に配分されたITリソースに対して、運用管理者はサービス・レベルを管理してなければならない。以下の品質および機能を向上させていく必要があるだろう。

QoS(Quality of Service) ITリソースに対する性能保証。共有環境において、ほかのサービスの影響を排除し、性能的な分離レベルを強化する
セグメンテーション 複数のITサービスが利用する環境の中で、配分されたITリソースに対する排他性の強化。共有環境においては、ユーザーのIT環境の独立性向上が必要になる
スケジューリング 空きリソースを管理し、リソース配置(プロビジョニング)をスケジューリングする機能を強化していく必要がある。これによって運用の効率性を向上し、さらには運用の自動化や動的なリソース再配置などの運用性向上が期待できる

 ここでは、情報システム全体における仮想化技術の位置付けを明確にするため、仮想化の解釈を拡大してその概要を説明してきた。後編では各仮想化レベルでの実装技術を中心に、現状と技術動向について説明したいと思う。記事の終わり

  関連リンク 
Global Grid Forumのホームページ
 
 

 INDEX
  [特集]IT管理者のための仮想化技術入門(前編)
    1.仮想化技術のメリットと必要となる機能
  2.仮想化技術の実現レベルと課題
 
 「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 記事ランキング

本日 月間