(57)【要約】【課題】仮想マシンが動作する複数のホストサーバにおいて、仮想マシンのストレージの可用性を向上させるとともに、仮想マシンが他のホストサーバに移動した際に継続して同じストレージにアクセスすることを可能とする。【解決手段】物理ディスクが接続された複数のホストサーバは、それぞれ同ホストサーバ内の物理ストレージ供給インターフェースを介し、ネットワークアクセス可能な物理ストレージを供給し、他のホストサーバ上で動作する仮想ストレージ構成インターフェースによって、物理ストレージは仮想ストレージとしてまとめられ、仮想マシンに提供される。【選択図】図１
2012212192.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンを動作させる複数のホストサーバがネットワークスイッチで接続されたシステムであって、
仮想ストレージを断片化したデータを記録する物理ディスクと、
前記物理ディスク上の前記データを前記ホストサーバに接続された前記ネットワークスイッチを介してアクセス可能とするためのソフトウェアである物理ストレージ供給インターフェースと、
前記ネットワークスイッチを介して複数の前記ホストサーバ上の前記物理ストレージ供給インターフェースの前記データにアクセスし、それらの前記データから前記仮想マシンのための前記仮想ストレージを構成するソフトウェアである仮想ストレージ構成インターフェースと、
前記ホストサーバ上で動作し、前記仮想ストレージ構成インターフェースによって構成された前記仮想ストレージにアクセスする前記仮想マシンを有するホストサーバ。
【請求項２】
前記物理ストレージ供給インターフェースは、ハードウェアによって構成される請求項１記載のホストサーバ。
【請求項３】
前記仮想ストレージ構成インターフェースは、前記ホストサーバ内で必要な前記仮想ストレージを断片化したデータの位置情報をメタデータとしてメモリ内に保有する請求項１乃至２記載のホストサーバ。
【請求項４】
前記仮想ストレージ構成インターフェースは、前記メタデータを前記物理ディスク内に保有する請求項３記載のホストサーバ。
【請求項５】
請求項３乃至４記載のホストサーバと、前記メタデータを保有し、前記メタデータのコピーと変更を制御する仮想ストレージ制御サーバを有するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンに接続されるストレージに関する。
【背景技術】
【０００２】
近年、1台のホストサーバ上で複数の独立した仮想マシンを同時に動作させる仮想化技術が普及してきている。
【０００３】
また、このホストサーバを複数で構成し、ホストサーバの故障時や、メモリ・CPUなどのリソースの必要性に応じて仮想マシンを停止後あるいは稼動させたまま、他のホストサーバに移動させる技術も実現されている。
【０００４】
そのように仮想マシンを他のホストサーバに移動させるためには、ホストサーバに接続された物理ディスクとは別に、複数のホストサーバで共有できる外部ストレージが必要であるとされている。（特許文献１参照）
【０００５】
また、多数のサーバでストレージを構成するストレージグリッドと呼ばれる方式がある。これは、1台のサーバでは処理できないような大量のデータを扱うことを目的として、複数のストレージやサーバにデータを分散して扱う方式である。
【０００６】
このストレージグリッドでは、データの位置であるアドレスマップをメタデータとして記録したメタデータサーバを必要とし、このメタデータサーバ内のインタフェースを経由してデータを取得するか、あるいは必要なデータがあるたびにメタデータサーバからそのデータのメタデータを取得してデータを有するサーバを特定し、特定されたサーバにアクセスしてデータを取得する。（特許文献２参照）
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開2010-033404号公報
【特許文献２】特開2010-097563号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、外部ストレージを用いる方法では、ホストサーバ内に接続された物理ディスクとは別にストレージが必要となるためコストがかかり、また外部ストレージの障害がすべての仮想マシンの障害となるため単一障害点になりやすく、可用性にも問題があった。
【０００９】
また、ストレージグリッドではメタデータサーバが単一障害点となりやすく、外部ストレージと同じように可用性に問題があった。
【００１０】
そこで本発明では、ホストサーバに接続された物理ディスクを利用することにより、外部ストレージを不要とする構成によってコストを削減し、システムの可用性を改善することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、ホストサーバに接続された物理ディスクは、同ホストサーバ内で動作するソフトウェアあるいはハードウェアである物理ストレージ供給インターフェースによって、ネットワークを介して他のホストサーバからアクセス可能となり、他のホストサーバ上で動作するソフトウェアである仮想ストレージ構成インターフェースによって仮想ストレージとして構成され、仮想マシンに接続される。
【００１２】
ホストサーバ内の仮想ストレージ構成インターフェースは、ホストサーバ上で動作するソフトウェアであるので、ホストサーバ自身を起動させるのに必要なストレージとは成り得ないが、仮想マシンを起動させるのに必要なストレージには成り得る。
【００１３】
仮想ストレージと物理ストレージを関連付けるメタデータは、そのホストサーバ上の仮想マシンに必要なメタデータが仮想ストレージ制御サーバから仮想ストレージ構成インタフェースにコピーされる。
【００１４】
仮想ストレージに記録されたデータは複数の異なったホストサーバの物理ディスクに細かく分散して記録される。その際には同一データを2台以上に記録するRAID 1や、パリティデータを記録するRAID 5，RAID 6などの方法が用いられる。
【発明の効果】
【００１５】
本発明によって、仮想マシンを他のホストサーバ上で稼働するように移動させた際に、移動先のホストサーバの仮想ストレージ構成インターフェースを経由して移動前と同じ物理ディスクにアクセスすることが可能となる。
【００１６】
また、仮想ストレージ構成インターフェースがそのインターフェースを使用する仮想マシンごとにホストサーバ内に設置されていることによって、あるホストサーバに障害が発生しても他のホストサーバ上の仮想マシンの仮想ストレージ構成インターフェースには障害が発生しない。
【００１７】
同様に、物理ストレージ供給インターフェースが複数のホストサーバに分散されていることによって、あるホストサーバに障害が発生しても他のホストサーバで代用することが可能であり、データはRAIDによって分散して冗長化されているので仮想ストレージには障害が発生しない。
【００１８】
よって、あるホストサーバに障害が発生しても、そのホストサーバ上で動作していた仮想マシンは他のホストサーバ上で起動しなおすことが容易である。
【００１９】
仮想ストレージ制御サーバは仮想マシン起動時や物理ストレージの再配置などでメタデータの操作を行うことがあるが、必要なメタデータは仮想マシン起動時に仮想ストレージ構成インターフェースにコピーされているので、仮想マシン起動後の動作の継続のためには必要とはされない。
【００２０】
よって、ストレージグリッドにおけるメタデータサーバとは異なり、仮想ストレージ制御サーバは単一障害点にはならない。
【００２１】
さらに、このようなストレージの可用性の改善が、外部ストレージのようなホストサーバ以外のストレージ機器を必要とせず行うことができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態のハードウェア構成を示すブロック図である。
【発明を実施するための形態】
【００２３】
以下に、本発明の実施の形態を説明する。
【００２４】
図１は、物理ディスク１０２と、仮想マシン１０３と、仮想ストレージ構成インターフェース１０４と、物理ストレージ供給インターフェース１０１を含むホストサーバ１００と、仮想ストレージ制御サーバ１１０と、複数のホストサーバ１００と仮想ストレージ制御サーバ１１０を接続するネットワークスイッチ１２０から構成される情報処理システムの構成を示すブロック図である。
【００２５】
本出願における仮想ストレージとは、物理ディスクに記録されるデータが規則性を持って固定的に配置されるのに対し、データを記録した位置をメタデータとして参照することにより任意の位置にデータを記録できる方法を採用したストレージのことを示す。
【００２６】
また、本出願における物理ストレージとは仮想ストレージのデータを実際に物理ディスクに書き込む記録領域のことを示す。
【００２７】
メタデータは、仮想ストレージと物理ストレージの対応関係を記録したマッピングテーブルを使用する場合と、あらかじめ定めておいた計算方式によって対応関係を求める場合がある。
【００２８】
仮想ストレージ構成インターフェース１０４は仮想マシン１０３に対してストレージと認識可能なインターフェースを提供するソフトウェアである。このインターフェースは、例えばｉＳＣＳＩ（Internet Small Computer System Interface）や、専用のデバイスドライバによりローカルな物理ディスクと同様に利用出来るインターフェースなどが想定される。
【００２９】
また、仮想ストレージ構成インターフェース１０４が仮想マシン１０３と同一のホストサーバ１００になく、他のホストサーバ１００内にあって、仮想マシン１０３から一つあるいは複数のインターフェースによって接続する方式にしてもよい。
【００３０】
物理ストレージ供給インターフェース１０１はホストサーバ１００の物理ディスク１０２にデータの読み書きが可能であり、複数の仮想ストレージを多数の細分化したデータとして物理ディスク１０２内に保有する。
【００３１】
また、細分化したデータごとに、まだ有効なデータが記録されていないという状態をメタデータあるいは物理ディスク１０２に記録することにより、必要とされる物理ディスク１０２の容量を削減することができる。
【００３２】
物理ストレージ供給インターフェース１０１から物理ディスク１０２へのアクセスはホストサーバ１００のＯＳ（Operating System）によるファイルシステムを利用せず直接に物理ディスク領域を細分化して利用する構成、あるいはホストサーバ１００のファイルシステム上にファイルとして作成された領域を細分化して利用する構成、あるいはホストサーバ１００のファイルシステム上に物理ストレージ供給インターフェース１０１が必要とする細分化されたデータごとにファイルを作成して利用する構成が考えられる。
【００３３】
また、物理ストレージ供給インターフェース１０１は単純なマッピングによるアクセス処理とすることも可能であるので、ソフトウェアあるいはハードウェアのいずれでも構築可能である。
【００３４】
仮想ストレージ制御サーバ１１０は仮想ストレージから物理ストレージへの対応関係を示すすべてのメタデータを保有するサーバである。
【００３５】
仮想マシン１０３が起動するとき、あるいは異なったホストサーバ１００へ仮想マシン１０３が移動するときには、仮想ストレージ制御サーバ１１０から仮想ストレージ構成インターフェース１０４のメモリ内、あるいは物理ディスク１０２内にその仮想マシン１０３に必要とされるメタデータがコピーされる。
【００３６】
また、仮想ストレージ制御サーバ１１０は物理ストレージ供給インターフェース１０１の障害や物理ディスク１０２の障害および容量不足を検知し、任意の正常な物理ストレージ供給インターフェース１０１に接続された容量に余裕がある物理ディスク１０２へ仮想ストレージのデータを記録する位置を再配置し、新たなメタデータを仮想ストレージ構成インターフェース１０４に通知する。
【００３７】
ただし、仮想ストレージ構成インターフェース１０４あるいは物理ストレージ供給インターフェース１０１が自らメタデータを物理ディスク１０２内に保存しており、物理ストレージの再配置は仮想ストレージ構成インターフェース１０４が物理ストレージ供給インターフェース１０１に問い合わせて、空き領域を確保する方法を採用することにより、仮想ストレージ制御サーバ１１０を不要とする構成にすることも可能である。
【００３８】
また、メタデータをあらかじめ定めておいた計算方式によって対応関係を求める場合にも、仮想ストレージ制御サーバ１１０は不要となる。
【００３９】
仮想マシン１０３から物理ディスク１０２へアクセスするための具体的な処理を説明する。
【００４０】
仮想マシン１０３は前述のとおり仮想ストレージ構成インターフェース１０４をストレージとして認識しており、仮想ストレージ構成インターフェース１０４に対して仮想ストレージの特定の位置にあるデータの読み込みあるいは書き込みの命令を送信する。
【００４１】
仮想マシン１０３からの命令に記載された仮想ストレージのデータの位置は、仮想ストレージ構成インターフェース１０４が保有するメタデータにより、そのデータを保有するホストサーバ１００あるいは物理ストレージ供給インターフェース１０１を特定するための情報と、その物理ディスク１０２の特定の位置を示す情報に変換される。
【００４２】
メタデータからホストサーバ１００が特定される場合、物理ストレージ供給インターフェース１０１はホストサーバ１００内に一つしかないか、あるいは複数ある場合あらかじめ定められた法則性により一つに特定されるか、あるいはいずれにアクセスしても処理が可能である仕組みにより任意の一つを選択するか、のいずれかにより物理ストレージ供給インターフェース１０１も特定される。
【００４３】
仮想ストレージ構成インターフェース１０４はメタデータより特定された物理ストレージ供給インターフェース１０１に対し、物理ディスク１０２の特定の位置にあるデータの読み込みあるいは書き込みの命令を送信する。
【００４４】
なお、高速化や冗長化や高信頼化等の理由から、仮想ストレージに記録されるデータは複数の物理ストレージ供給インターフェース１０１の物理ディスク１０２に記録されるように配置してもよい。
【００４５】
命令を受信した物理ストレージ供給インターフェース１０１は物理ディスク１０２の特定の位置にあるデータの読み込みあるいは書き込みを行い、結果を仮想ストレージ構成インターフェース１０４に返す。
【００４６】
さらに、仮想ストレージ構成インターフェース１０４は物理ストレージ供給インターフェース１０１から返された処理結果を仮想マシン１０３に対して仮想ストレージへの処理の結果として返す。
【００４７】
以上の処理により、仮想マシン１０３は仮想ストレージをストレージとしてアクセス可能となる。
【符号の説明】
【００４８】
１００：ホストサーバ
１０１：物理ストレージ供給インターフェース
１０２：物理ディスク
１０３：仮想マシン
１０４：仮想ストレージ構成インターフェース
１１０：仮想ストレージ制御サーバ
１２０：ネットワークスイッチ
【図１】
2012212192.tif 000003
【手続補正書】
【提出日】平成24年5月10日(2012.5.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想マシンを動作させる複数のホストサーバがネットワークスイッチで接続されたシステムであって、
複数の仮想ストレージを多数の細分化したデータとして保有する物理ディスクと、
前記物理ディスク上の前記データを前記ホストサーバに接続された前記ネットワークスイッチを介してアクセス可能とするためのソフトウェアである物理ストレージ供給インターフェースと、
前記ホストサーバ内の前記仮想マシンに必要とされる仮想ストレージについて、多数の細分化したデータとして物理ディスクに保有される複数の仮想ストレージの位置情報をメタデータとして参照し、前記ネットワークスイッチを介して複数の前記ホストサーバ上の前記物理ストレージ供給インターフェースの前記データにアクセスし、それらの前記データから前記仮想マシンのための前記仮想ストレージを構成するソフトウェアであり、前記メタデータをメモリ内に保有する仮想ストレージ構成インターフェースと、
前記ホストサーバ上で動作し、前記仮想ストレージ構成インターフェースによって構成された前記仮想ストレージにアクセスする前記仮想マシンを有するホストサーバと、
複数の前記仮想ストレージ構成インターフェースに必要なすべての前記メタデータを保有し、前記メタデータのコピーと変更を制御する仮想ストレージ制御サーバを有するシステム。
【請求項２】
前記物理ストレージ供給インターフェースは、ハードウェアによって構成される請求項１記載のシステム。