"仮想マシンを動作させる複数のホストサーバがネットワークスイッチで接続されたシステムであって、仮想ストレージを断片化したデータを記録する物理ディスクと、前記物理ディスク上の前記データを前記ホストサーバに接続された前記ネットワークスイッチを介してアクセス可能とするためのソフトウェアである物理ストレージ供給インターフェースと、前記ネットワークスイッチを介して複数の前記ホストサーバ上の前記物理ストレージ供給インターフェースの前記データにアクセスし、それらの前記データから前記仮想マシンのための前記仮想ストレージを構成するソフトウェアである仮想ストレージ構成インターフェースと、前記ホストサーバ上で動作し、前記仮想ストレージ構成インターフェースによって構成された前記仮想ストレージにアクセスする前記仮想マシンを有するホストサーバ。前記物理ストレージ供給インターフェースは、ハードウェアによって構成される請求項1記載のホストサーバ。前記仮想ストレージ構成インターフェースは、前記ホストサーバ内で必要な前記仮想ストレージを断片化したデータの位置情報をメタデータとしてメモリ内に保有する請求項1乃至2記載のホストサーバ。前記仮想ストレージ構成インターフェースは、前記メタデータを前記物理ディスク内に保有する請求項3記載のホストサーバ。請求項3乃至4記載のホストサーバと、前記メタデータを保有し、前記メタデータのコピーと変更を制御する仮想ストレージ制御サーバを有するシステム。しかしながら、外部ストレージを用いる方法では、ホストサーバ内に接続された物理ディスクとは別にストレージが必要となるためコストがかかり、また外部ストレージの障害がすべての仮想マシンの障害となるため単一障害点になりやすく、可用性にも問題があった。また、ストレージグリッドではメタデータサーバが単一障害点となりやすく、外部ストレージと同じように可用性に問題があった。そこで本発明では、ホストサーバに接続された物理ディスクを利用することにより、外部ストレージを不要とする構成によってコストを削減し、システムの可用性を改善することを目的とする。本発明は、ホストサーバに接続された物理ディスクは、同ホストサーバ内で動作するソフトウェアあるいはハードウェアである物理ストレージ供給インターフェースによって、ネットワークを介して他のホストサーバからアクセス可能となり、他のホストサーバ上で動作するソフトウェアである仮想ストレージ構成インターフェースによって仮想ストレージとして構成され、仮想マシンに接続される。ホストサーバ内の仮想ストレージ構成インターフェースは、ホストサーバ上で動作するソフトウェアであるので、ホストサーバ自身を起動させるのに必要なストレージとは成り得ないが、仮想マシンを起動させるのに必要なストレージには成り得る。仮想ストレージと物理ストレージを関連付けるメタデータは、そのホストサーバ上の仮想マシンに必要なメタデータが仮想ストレージ制御サーバから仮想ストレージ構成インタフェースにコピーされる。仮想ストレージに記録されたデータは複数の異なったホストサーバの物理ディスクに細かく分散して記録される。その際には同一データを2台以上に記録するRAID1や、パリティデータを記録するRAID5,RAID6などの方法が用いられる。本発明によって、仮想マシンを他のホストサーバ上で稼働するように移動させた際に、移動先のホストサーバの仮想ストレージ構成インターフェースを経由して移動前と同じ物理ディスクにアクセスすることが可能となる。また、仮想ストレージ構成インターフェースがそのインターフェースを使用する仮想マシンごとにホストサーバ内に設置されていることによって、あるホストサーバに障害が発生しても他のホストサーバ上の仮想マシンの仮想ストレージ構成インターフェースには障害が発生しない。同様に、物理ストレージ供給インターフェースが複数のホストサーバに分散されていることによって、あるホストサーバに障害が発生しても他のホストサーバで代用することが可能であり、データはRAIDによって分散して冗長化されているので仮想ストレージには障害が発生しない。よって、あるホストサーバに障害が発生しても、そのホストサーバ上で動作していた仮想マシンは他のホストサーバ上で起動しなおすことが容易である。仮想ストレージ制御サーバは仮想マシン起動時や物理ストレージの再配置などでメタデータの操作を行うことがあるが、必要なメタデータは仮想マシン起動時に仮想ストレージ構成インターフェースにコピーされているので、仮想マシン起動後の動作の継続のためには必要とはされない。よって、ストレージグリッドにおけるメタデータサーバとは異なり、仮想ストレージ制御サーバは単一障害点にはならない。さらに、このようなストレージの可用性の改善が、外部ストレージのようなホストサーバ以外のストレージ機器を必要とせず行うことができる。以下に、本発明の実施の形態を説明する。図1は、物理ディスク102と、仮想マシン103と、仮想ストレージ構成インターフェース104と、物理ストレージ供給インターフェース101を含むホストサーバ100と、仮想ストレージ制御サーバ110と、複数のホストサーバ100と仮想ストレージ制御サーバ110を接続するネットワークスイッチ120から構成される情報処理システムの構成を示すブロック図である。本出願における仮想ストレージとは、物理ディスクに記録されるデータが規則性を持って固定的に配置されるのに対し、データを記録した位置をメタデータとして参照することにより任意の位置にデータを記録できる方法を採用したストレージのことを示す。また、本出願における物理ストレージとは仮想ストレージのデータを実際に物理ディスクに書き込む記録領域のことを示す。メタデータは、仮想ストレージと物理ストレージの対応関係を記録したマッピングテーブルを使用する場合と、あらかじめ定めておいた計算方式によって対応関係を求める場合がある。仮想ストレージ構成インターフェース104は仮想マシン103に対してストレージと認識可能なインターフェースを提供するソフトウェアである。このインターフェースは、例えばiSCSIInternetSmallComputerSystemInterfaceや、専用のデバイスドライバによりローカルな物理ディスクと同様に利用出来るインターフェースなどが想定される。また、仮想ストレージ構成インターフェース104が仮想マシン103と同一のホストサーバ100になく、他のホストサーバ100内にあって、仮想マシン103から一つあるいは複数のインターフェースによって接続する方式にしてもよい。物理ストレージ供給インターフェース101はホストサーバ100の物理ディスク102にデータの読み書きが可能であり、複数の仮想ストレージを多数の細分化したデータとして物理ディスク102内に保有する。また、細分化したデータごとに、まだ有効なデータが記録されていないという状態をメタデータあるいは物理ディスク102に記録することにより、必要とされる物理ディスク102の容量を削減することができる。物理ストレージ供給インターフェース101から物理ディスク102へのアクセスはホストサーバ100のOSOperatingSystemによるファイルシステムを利用せず直接に物理ディスク領域を細分化して利用する構成、あるいはホストサーバ100のファイルシステム上にファイルとして作成された領域を細分化して利用する構成、あるいはホストサーバ100のファイルシステム上に物理ストレージ供給インターフェース101が必要とする細分化されたデータごとにファイルを作成して利用する構成が考えられる。また、物理ストレージ供給インターフェース101は単純なマッピングによるアクセス処理とすることも可能であるので、ソフトウェアあるいはハードウェアのいずれでも構築可能である。仮想ストレージ制御サーバ110は仮想ストレージから物理ストレージへの対応関係を示すすべてのメタデータを保有するサーバである。仮想マシン103が起動するとき、あるいは異なったホストサーバ100へ仮想マシン103が移動するときには、仮想ストレージ制御サーバ110から仮想ストレージ構成インターフェース104のメモリ内、あるいは物理ディスク102内にその仮想マシン103に必要とされるメタデータがコピーされる。また、仮想ストレージ制御サーバ110は物理ストレージ供給インターフェース101の障害や物理ディスク102の障害および容量不足を検知し、任意の正常な物理ストレージ供給インターフェース101に接続された容量に余裕がある物理ディスク102へ仮想ストレージのデータを記録する位置を再配置し、新たなメタデータを仮想ストレージ構成インターフェース104に通知する。ただし、仮想ストレージ構成インターフェース104あるいは物理ストレージ供給インターフェース101が自らメタデータを物理ディスク102内に保存しており、物理ストレージの再配置は仮想ストレージ構成インターフェース104が物理ストレージ供給インターフェース101に問い合わせて、空き領域を確保する方法を採用することにより、仮想ストレージ制御サーバ110を不要とする構成にすることも可能である。また、メタデータをあらかじめ定めておいた計算方式によって対応関係を求める場合にも、仮想ストレージ制御サーバ110は不要となる。仮想マシン103から物理ディスク102へアクセスするための具体的な処理を説明する。仮想マシン103は前述のとおり仮想ストレージ構成インターフェース104をストレージとして認識しており、仮想ストレージ構成インターフェース104に対して仮想ストレージの特定の位置にあるデータの読み込みあるいは書き込みの命令を送信する。仮想マシン103からの命令に記載された仮想ストレージのデータの位置は、仮想ストレージ構成インターフェース104が保有するメタデータにより、そのデータを保有するホストサーバ100あるいは物理ストレージ供給インターフェース101を特定するための情報と、その物理ディスク102の特定の位置を示す情報に変換される。メタデータからホストサーバ100が特定される場合、物理ストレージ供給インターフェース101はホストサーバ100内に一つしかないか、あるいは複数ある場合あらかじめ定められた法則性により一つに特定されるか、あるいはいずれにアクセスしても処理が可能である仕組みにより任意の一つを選択するか、のいずれかにより物理ストレージ供給インターフェース101も特定される。仮想ストレージ構成インターフェース104はメタデータより特定された物理ストレージ供給インターフェース101に対し、物理ディスク102の特定の位置にあるデータの読み込みあるいは書き込みの命令を送信する。なお、高速化や冗長化や高信頼化等の理由から、仮想ストレージに記録されるデータは複数の物理ストレージ供給インターフェース101の物理ディスク102に記録されるように配置してもよい。命令を受信した物理ストレージ供給インターフェース101は物理ディスク102の特定の位置にあるデータの読み込みあるいは書き込みを行い、結果を仮想ストレージ構成インターフェース104に返す。さらに、仮想ストレージ構成インターフェース104は物理ストレージ供給インターフェース101から返された処理結果を仮想マシン103に対して仮想ストレージへの処理の結果として返す。以上の処理により、仮想マシン103は仮想ストレージをストレージとしてアクセス可能となる。"