(57)【要約】【課題】  ストレージ装置を複数の仮想ストレージ装置として使用する場合、常時使用しない仮想ストレージ装置が混在すると、電力や物理資源の無駄が発生する。ホスト機器のリプレース等によりＷＷＮが変更された場合、システム再開時に手動でストレージ装置側のＷＷＮの設定を更新する必要があるため、業務再開に時間がかかる。【解決手段】  仮想ストレージ装置のサスペンドにより、仮想ストレージ装置の単位で物理資源の電源を停止する。また、仮想ストレージ装置の制御情報とボリュームデータを外部ボリューム等に保存し、仮想ストレージ装置が使用していた資源を解放する。リジューム時には、未使用の資源を使って、保存した制御情報を元に仮想ストレージ装置を復元する。ホスト側のWWNが変更された場合、ストレージ装置は管理サーバからWWN変更通知を受信し、WWNテーブルの再設定を行い、ホストからアクセス可能にする。【選択図】  図１
2010066842.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの計算機と、外部ストレージ装置と、に接続されるストレージ装置であって、
データが格納される複数の記憶装置と、複数のキャッシュメモリと、前記少なくとも１つの計算機からの入出力要求を複数のタスクの少なくとも１つによって処理する複数のプロセッサと、を備え、
前記複数のプロセッサの１つは前記複数の記憶装置の少なくとも１つと、前記複数のキャッシュメモリの少なくとも１つと、前記複数のタスクの少なくとも１つを、仮想ストレージ装置に割り当て、
前記仮想ストレージ装置は、前記少なくとも１つの計算機からの入出力要求を処理し、
前記プロセッサは、計算機から、前記仮想ストレージ装置のサスペンド指示を受け、前記記憶装置と、前記キャッシュメモリと、前記タスクと、前記仮想ストレージ装置の対応関係を管理する制御情報と、前記データと、を前記外部ストレージ装置に格納し、前記記憶装置と、前記キャッシュメモリと、前記タスクと、の割り当てを解放することを特徴とするストレージ装置。
【請求項２】
前記複数のプロセッサの１つは、前記データと、前記制御情報と、を前記外部ストレージ装置へ格納した後、前記外部ストレージ装置の電源を切断し、
前記記憶装置と、前記キャッシュメモリと、前記タスクと、の割り当てを解放した後、
電源を切断する対象の前記仮想ストレージ装置に割り当てられている、前記記憶装置と、前記キャッシュメモリと、前記プロセッサと、が電源を切断する対象の前記仮想ストレージ装置以外の仮想ストレージ装置に割り当てられていない場合、前記記憶装置と前記キャッシュメモリと前記プロセッサの電源を切断する、請求項１記載のストレージ装置。
【請求項３】
前記複数のプロセッサの１つは、計算機からの前記仮想ストレージ装置のリジューム指示を受け、前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、
前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、
未使用の記憶装置またはキャッシュメモリの電源が切断されている場合、電源を入れ、
前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる、請求項２記載のストレージ装置。
【請求項４】
前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、
前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、
前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、割り当て解放前のストレージ装置と異なるストレージ装置の記憶装置と、キャッシュメモリと、タスクと、を前記仮想ストレージ装置に割り当てる、請求項２記載のストレージ装置。
【請求項５】
前記プロセッサは前記計算機の識別情報と、前記計算機の前記識別情報の変更情報と鍵情報とを有し、前記計算機から受信した鍵情報と一致した場合に前期変更情報を更新する、請求項１記載のストレージ装置。
【請求項６】
前記プロセッサが前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる際、前記変更情報によって前記識別情報が変更されたかを判断し、変更された場合、前記識別情報を更新する、請求項５記載のストレージ装置。
【請求項７】
前記プロセッサは前記計算機から送られた仮想ストレージ装置の性能の要求に対して、未使用の記憶装置と、キャッシュメモリと、タスクと、の中で前記要求を充足するものを探し、前記要求に応じてパリティグループを変更する、請求項１記載のストレージ装置。
【請求項８】
パッケージは、前記複数の記憶装置の少なくとも１つまたは前記複数のキャッシュメモリの少なくとも１つまたは前記複数のプロセッサの少なくとも１つを含み、
前記複数の仮想ストレージ装置への前記パッケージ内の前記記憶装置または前記キャッシュメモリまたは前記複数のプロセッサの割り当てが解放された後、
電源を切断する対象の前記仮想ストレージ装置に割り当てられている前記パッケージが電源を切断する対象の前記仮想ストレージ装置以外の仮想ストレージ装置に割り当てられていない場合、前記パッケージの電源を切断する、請求項１記載のストレージ装置。
【請求項９】
前記ストレージ装置は複数のモジュールを有し、前記モジュールは前記複数の記憶装置の少なくとも１つまたは前記複数のキャッシュメモリの少なくとも１つまたは前記複数のプロセッサの少なくとも１つを含むパッケージを有し、前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、未使用の前記記憶装置または前記キャッシュメモリまたは前記プロセッサのうち、同一のモジュール内に属する前記記憶装置と、前記キャッシュメモリと、前記タスクと、を優先的に前記仮想ストレージ装置に割り当てる、請求項２記載のストレージ装置。
【請求項１０】
未使用の前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる際に、前記計算機からの指示により予約されていない前記記憶装置または前記キャッシュメモリまたは前記タスクを割り当てる、請求項５記載のストレージ装置。
【請求項１１】
前記データを前記外部ストレージ装置に格納するか否かを、前記計算機からの指示により切り替える、請求項１記載のストレージ装置。
【請求項１２】
前記プロセッサは、前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、前記制御情報から使用されているストレージ機能のライセンスが有効かどうかを判定し、有効でない場合に前記計算機に警告メッセージを表示させるよう指示する、請求項４記載のストレージ装置。
【請求項１３】
少なくとも１つの計算機と外部ストレージ装置とに接続されるストレージ装置の制御方法であって、
データが格納される複数の記憶装置と、複数のキャッシュメモリと、前記少なくとも１つの計算機からの入出力要求を複数のタスクの少なくとも１つによって処理する複数のプロセッサと、を備え、
前記複数のプロセッサの１つは前記複数の記憶装置の少なくとも１つと、前記複数のキャッシュメモリの少なくとも１つと、前記複数のタスクの少なくとも１つを、仮想ストレージ装置に割り当て、
前記仮想ストレージ装置は、前記少なくとも１つの計算機からの入出力要求を処理し、
前記プロセッサは、計算機から、前記仮想ストレージ装置のサスペンド指示を受け、前記記憶装置と、前記キャッシュメモリと、前記タスクと、前記仮想ストレージ装置の対応関係を管理する制御情報と、前記データと、を前記外部ストレージ装置に格納し、前記記憶装置と、前記キャッシュメモリと、前記タスクと、の割り当てを解放することを特徴とするストレージ制御方法。
【請求項１４】
前記複数のプロセッサの１つは、前記データと、前記制御情報と、を前記外部ストレージ装置へ格納した後、前記外部ストレージ装置の電源を切断し、
前記記憶装置と、前記キャッシュメモリと、前記タスクと、の割り当てを解放した後、
電源を切断する対象の前記仮想ストレージ装置に割り当てられている、前記記憶装置と、前記キャッシュメモリと、前記プロセッサと、が電源を切断する対象の前記仮想ストレージ装置以外の仮想ストレージ装置に割り当てられていない場合、前記記憶装置と前記キャッシュメモリと前記プロセッサの電源を切断する、請求項１３記載のストレージ制御方法。
【請求項１５】
前記複数のプロセッサの１つは、計算機からの前記仮想ストレージ装置のリジューム指示を受け、前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、
前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、
未使用の記憶装置またはキャッシュメモリの電源が切断されている場合、電源を入れ、
前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる、請求項１４記載のストレージ制御方法。
【請求項１６】
前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、
前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、
前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、割り当て解放前のストレージ装置と異なるストレージ装置の記憶装置と、キャッシュメモリと、タスクと、を前記仮想ストレージ装置に割り当てる、請求項１４記載のストレージ制御方法。
【請求項１７】
前記プロセッサは前記計算機の識別情報と、前記計算機の前記識別情報の変更情報と鍵情報とを有し、前記計算機から受信した鍵情報と一致した場合に前期変更情報を更新する、請求項１３記載のストレージ制御方法。
【請求項１８】
前記プロセッサが前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる際、前記変更情報によって前記識別情報が変更されたかを判断し、変更された場合、前記識別情報を更新する、請求項１７記載のストレージ制御方法。
【請求項１９】
前記プロセッサは前記計算機から送られた仮想ストレージ装置の性能の要求に対して、未使用の記憶装置と、キャッシュメモリと、タスクと、の中で前記要求を充足するものを探し、前記要求に応じてパリティグループを変更する、請求項１３記載のストレージ制御方法。
【請求項２０】
パッケージは、前記複数の記憶装置の少なくとも１つまたは前記複数のキャッシュメモリの少なくとも１つまたは前記複数のプロセッサの少なくとも１つを含み、
前記複数の仮想ストレージ装置への前記パッケージ内の前記記憶装置または前記キャッシュメモリまたは前記複数のプロセッサの割り当てが解放された後、
電源を切断する対象の前記仮想ストレージ装置に割り当てられている前記パッケージが電源を切断する対象の前記仮想ストレージ装置以外の仮想ストレージ装置に割り当てられていない場合、前記パッケージの電源を切断する、請求項１３記載のストレージ装置。
【請求項２１】
前記ストレージ装置は複数のモジュールを有し、前記モジュールは前記複数の記憶装置の少なくとも１つまたは前記複数のキャッシュメモリの少なくとも１つまたは前記複数のプロセッサの少なくとも１つを含むパッケージを有し、前記外部ストレージ装置の電源が切断されている場合、前記外部ストレージ装置の電源を入れ、前記プロセッサの電源が切断されている場合、前記プロセッサの電源を入れ、前記プロセッサは前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、未使用の前記記憶装置または前記キャッシュメモリまたは前記プロセッサのうち、同一のモジュール内に属する前記記憶装置と、前記キャッシュメモリと、前記タスクと、を優先的に前記仮想ストレージ装置に割り当てる、請求項１４記載のストレージ制御方法。
【請求項２２】
未使用の前記記憶装置と、前記キャッシュメモリと、前記タスクと、を前記仮想ストレージ装置に割り当てる際に、前記計算機からの指示により予約されていない前記記憶装置または前記キャッシュメモリまたは前記タスクを割り当てる、請求項１７記載のストレージ制御方法。
【請求項２３】
前記データを前記外部ストレージ装置に格納するか否かを、前記計算機からの指示により切り替える、請求項１３記載のストレージ制御方法。
【請求項２４】
前記プロセッサは、前記外部ストレージ装置に保存した前記データと前記制御情報を読み出し、前記制御情報から使用されているストレージ機能のライセンスが有効かどうかを判定し、有効でない場合に前記計算機に警告メッセージを表示させるよう指示する、請求項１６記載のストレージ制御方法。
【請求項２５】
少なくとも１つの計算機と外部ストレージ装置とに接続されるストレージ装置であって、
データが格納される複数の記憶装置と、複数のキャッシュメモリと、前記少なくとも１つの計算機からの入出力要求を複数のタスクの少なくとも１つによって処理する複数のプロセッサとを備え、
前記プロセッサは前記記憶装置と前記キャッシュメモリと複数の前記タスクの少なくとも１つを仮想ストレージ装置に割り当て、
前記仮想ストレージ装置は少なくとも１つの前記計算機からの入出力要求を処理し、
前記プロセッサはサスペンド処理手段とリジューム処理手段を有し、
前記計算機からの指示によってサスペンド処理手段が実行されると、前記プロセッサは、前記計算機からのストレージ装置への入出力要求を受け付けず、キャッシュメモリ上にあるデータを前記記憶装置に移行し、前記制御情報と前記データを前記外部ストレージ装置へ格納し、前記記憶装置と前記キャッシュメモリと前記タスクを解放し、前記前記記憶装置と前記キャッシュメモリと前記プロセッサの電源を切断し、
計算機からの指示によってリジューム処理手段が実行されると、
前記プロセッサは、前記外部ストレージ装置から前記制御情報を読み込み、前記制御情報から必要な未使用の前記記憶装置または前記キャッシュメモリまたは前記プロセッサを探索し、未使用の前記記憶装置または前記キャッシュメモリまたは前記プロセッサの電源が切断されている場合、電源を入れ、未使用の前記記憶装置または前記キャッシュメモリまたは前記プロセッサを前記仮想ストレージ装置に割り当て、前記外部ストレージ装置から前記データを未使用の前記記憶装置に移行すること
特徴とするストレージ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムの資源利用に関する。
【背景技術】
【０００２】
例えば、データセンタ等のような大規模なデータを取り扱うデータベースシステムでは、ホストコンピュータとは別に構成された記憶システムを用いて、データが管理されている。この記憶システムは、例えば、ストレージ装置等から構成されている。ストレージ装置は、ホストコンピュータからの入出力要求に応答して、複数の記憶デバイスの記憶領域上に形成された論理ボリューム（論理ユニット）をホスト（ホストコンピュータ）に提供することができる。
【０００３】
特許文献１には、ストレージ装置を分割し、論理的な複数のストレージとして管理可能にする方法が記載されている。
【０００４】
【特許文献１】米国特許第 7,069,408号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ストレージ装置を複数の仮想ストレージ装置として分割して使用する際に、仮想ストレージ装置が増加していくと、一時的なプロジェクト用や、テスト用の仮想ストレージ装置等、常時使用しない仮想ストレージ装置が混在していく。そのような状況において、特許文献１に記載の技術では、
常時使用しない仮想ストレージ装置の制御情報やボリュームデータがストレージ装置の容量を消費し、無駄となってしまうという課題がある。
【課題を解決するための手段】
【０００６】
仮想ストレージ装置のサスペンド時には、制御情報及びボリュームデータを外部のストレージ装置等に退避して、使用していたストレージ装置の資源を空き資源として解放する。そして、仮想ストレージ装置のリジューム時には、ストレージ装置の空き資源を確保し、外部のストレージ装置等に保存した制御情報及びボリュームデータを回復する。
【発明の効果】
【０００７】
本発明によれば、以下の効果が期待できる。
【０００８】
今後しばらく使用しない仮想ストレージ装置の制御情報とデータを安価な外部のテープストレージ等に保管することで、ボリュームを解放できる。そのため、ストレージ装置の容量を他の仮想ストレージ装置に転用でき、資源利用の効率化が可能である。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の一実施形態を説明する。
（第１の実施形態）
図１は、本発明の一実施形態に係る仮想ストレージシステムの物理的な構成を示す。
【００１０】
グループ１０１は、管理サーバ１０２及び、１台または複数のホスト１０３を含む。グループ１０１は、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）におけるホストグループに相当する。
【００１１】
ホスト１０３はポート１０４を含む。ポート１０４は、例えばＦＣ（Ｆｉｂｅｒ  Ｃｈａｎｎｅｌ）やＳＡＴＡ（Ｓｅｒｉａｌ  Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）等のインターフェイスで実装される。ホスト１０３は、ポート１０４から、ネットワーク１１９を介して、仮想ストレージ装置１０６のポート１０８と通信する。ホスト１０３が発行するｒｅａｄ／ｗｒｉｔｅ命令（Ｉ／Ｏリクエスト）は、ポート１０４、ネットワーク１１９、ポート１０８を介して物理ストレージ装置１２０に伝えられる。物理ストレージ装置１２０は結果のデータ等をポート１２２、ネットワーク１１９、ポート１０４を介してホスト１０３に送信する。
【００１２】
ホスト１０３は情報を記憶する部品であるメモリ１００３やＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１００４を持ち、メモリ１００３やＨＤＤ１００４に格納したプログラムを、メモリ１００３やＨＤＤ１００４に格納したデータに基づいて実行するプロセッサ１００２を持ち、他の計算機やストレージ装置と通信するためのＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やｉＳＣＳＩ（Ｉｎｔｅｒｎｅｔ  Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）等のＩ／Ｆ１００５を持つ。
【００１３】
管理サーバ１０２も、上記で説明したホスト１０３と同等のハードウェア構成を持つ装置である。
【００１４】
管理サーバ１０２はＩ／Ｆ１００５からネットワーク１０５を介して、物理ストレージ装置１２０の管理Ｉ／Ｆ１２１と通信する。管理Ｉ／Ｆ１２１及びネットワーク１０５はＬＡＮ等によって実装する。管理サーバ１０２は、ネットワーク１０５を介して、物理ストレージ装置１２０にプログラムの操作の指示等を送信する。プログラムとは、ストレージ装置の機能（リモートコピーやローカルコピー機能等）を表す。管理サーバ１０２はグループ１０１毎に存在してもよい。
【００１５】
物理ストレージ装置１２０は管理Ｉ／Ｆ１２１を持つ。管理Ｉ／Ｆ１２１は、例えばＬＡＮ等のＩ／Ｆとして実装する。
【００１６】
物理ストレージ装置１２０はポート１２２を１個以上持つ。ポート１２２は、例えばＦＣ等のインターフェイスで実装される。
【００１７】
物理ストレージ装置１２０は制御部１２３を持つ。制御部１２３は、制御プロセッサ１２４と制御メモリ１２５を持つ。制御プロセッサ１２４は、制御メモリ１２５に格納した各種プログラムやデータを参照してさまざまな処理を実行する。例えば、制御プロセッサ１２４は、ホスト１０３から受けたｒｅａｄ／ｗｒｉｔｅ命令や、後述する仮想ストレージ装置１０６と物理ストレージ装置１２０の対応関係を求める処理等を実行する。
【００１８】
物理ストレージ装置１２０は物理ドライブ１２７を持つ。物理ドライブ１２７は例えば、HDDや、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の、一般に電源をＯＦＦにしてもデータが消えない、不揮発性の記憶装置で実装される。  物理ストレージ装置１２０はキャッシュメモリ１２６を持つ。キャッシュメモリ１２６は、一般に物理ドライブ１２７よりも高速アクセスが可能なＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で実装する。また、キャッシュメモリ１２６は、複数のメモリスロット１３０を持っている。制御プロセッサ１２４で実行されるプログラム等が物理ドライブ１２７に格納するデータを一時的にキャッシュメモリ１２６に格納することにより、ホスト１０３へのデータの送信を高速化する効果がある。
【００１９】
物理ストレージ装置１２０は外部接続ポート１２８を持つ。物理ストレージ装置１２０は、外部接続ポート１２８により、外部ストレージ装置と通信する。外部接続ポート１２８は、例えばＦＣ等のインターフェイスで実装する。ただし、ポート１２２はＳＣＳＩにおけるターゲットの機能を有しているのに対して、外部接続ポート１２８はＳＣＳＩにおけるイニシエータの機能を有している。イニシエータの機能によって、物理ストレージ装置１２０は外部ストレージ装置１２９と互いに通信し、外部ストレージ装置１２９の記憶領域すなわち外部ボリュームを、物理ストレージ装置１２０が備える記憶領域すなわち物理ドライブ１２７の代わりに用いることができる。
【００２０】
また、上述の構成において、管理サーバ１０２は、ネットワーク１１９を介して物理ストレージ装置１２０と通信し、操作の指示等を送信してもよい。具体的には、物理ストレージ装置１２０が管理のための専用のボリューム、（コマンドデバイスと呼ぶ）を用意し、管理サーバ１０２からアクセスすることにより通信する。
【００２１】
本明細書の仮想ストレージシステムでは、３つの階層で仮想ストレージ装置１０６を構成する機能部品を定義している。３つの階層とは、物理レイヤと、資源プールと、仮想レイヤである。
【００２２】
物理レイヤとは物理ドライブ等の物理的なデバイスを指す階層である。本明細書では、“物理資源”と説明する場合はこの物理レイヤに属するデバイス一般を指す。
【００２３】
資源プールは、資源ボリュームの集合である。資源ボリュームは、仮想ストレージ装置１０６に割り当てて使用する。本明細書では、“資源”と説明する場合はこの資源プールに属する論理的なデバイス一般を指す。資源は、物理ストレージ装置１２０の範囲で番号を振り、この番号を資源番号と呼ぶ。
【００２４】
仮想レイヤとは、仮想ストレージ装置１０６に割り当てた資源を指す階層である。本明細書では、“仮想資源”と説明する場合はこの仮想レイヤに属するデバイス一般を指す。仮想レイヤでは、仮想ストレージ装置１０６の範囲で番号を振り、この番号を仮想資源番号と呼ぶ。
【００２５】
詳細については、図３にボリューム、キャッシュメモリ、制御部における物理レイヤと資源プールの階層の関係と資源プールと仮想レイヤの階層の関係を示す。
【００２６】
図２は、本発明の第１の実施形態に係る仮想ストレージシステムの物理的な構成と仮想ストレージ装置１０６の対応関係を示す。
【００２７】
本発明の仮想ストレージシステムでは、１台の物理的なストレージ装置を複数台の仮想ストレージ装置１０６として使用することができる。よって、グループ１０１毎に仮想的ストレージ装置１０６を使用できる。また、管理サーバ１０２によって、グループ１０１毎に管理することができる。１台の物理的なストレージ装置を複数台の仮想ストレージ装置１０６として提供する方法については、後ほど図３で詳細を述べる。また、一般的に、仮想ストレージシステムでは、複数のグループ１０１が存在している。
【００２８】
仮想ストレージ装置１０６は管理Ｉ／Ｆ１０７を持つ。管理サーバ１０２はネットワーク１０５を介して、仮想ストレージ装置１０６の管理Ｉ／Ｆ１０７と通信する。管理Ｉ／Ｆ１０７の実体は、物理ストレージ装置１２０の管理Ｉ／Ｆ１２１である。管理Ｉ／Ｆ１０７Ａ及び１０７Ｂは物理的に一つの管理Ｉ／Ｆ１２１に対応する。図２では管理サーバ１０２Ａ、１０２Ｂがそれぞれ、管理Ｉ／Ｆ１０７Ａ及び１０７Ｂにアクセスしている。この場合、管理Ｉ／Ｆ１２１は、イーサネット（登録商標）の同一ＩＰアドレスのポート番号で管理サーバ１０２Ａと１０２Ｂを区別する。または、管理Ｉ／Ｆ１２１に１個の管理Ｉ／ＦでＩＰアドレスを複数持つ方法等を実装することで管理サーバ１０２Ａと１０２Ｂを区別しても良い。
【００２９】
管理サーバ１０２はグループ１０１毎に存在しているため、グループ１０１毎の管理者がそれぞれで仮想ストレージ装置１０６を管理することができる。
【００３０】
仮想ストレージ装置１０６はポート１０８を持つ。物理ストレージ装置１２０のポート１２２は仮想ストレージ装置１０６におけるポート１０８に対応している。ポート１２２はポート１０８と１対１に対応させて実装される。
【００３１】
仮想ストレージ装置１０６は仮想制御部１０９を持つ。仮想制御部１０９はポート１０８がホストから受けたｒｅａｄ／ｗｒｉｔｅreadre命令等を実行する。物理ストレージ装置１２０の制御部１２３が、仮想ストレージ装置１０６における仮想制御部１０９に対応する。物理ストレージ装置１２０は、制御部１２３の制御プロセッサ１２４が持つ計算資源を仮想制御部１０９に割り当てる。割り当て方法等の詳細については、後ほど図３で説明する。
【００３２】
仮想ストレージ装置１０６は仮想ボリューム１１１を持つ。仮想ボリューム１１１はホスト１０３から受信したデータを保存する記憶領域である。仮想ボリューム１１１と物理ストレージ装置１２０のボリュームとの対応関係の詳細については後ほど図３で述べる。
【００３３】
仮想ストレージ装置１０６は仮想キャッシュメモリ１１０を持つ。仮想キャッシュメモリ１１０は仮想ボリューム１１１に格納するデータを一時的に保存する。一般に仮想キャッシュメモリ１１０は仮想ボリューム１１１よりも高速アクセス可能な記憶領域である。物理ストレージ装置１２０のキャッシュメモリ１２６は、仮想キャッシュメモリ１１０に対応する。仮想ストレージシステムでは、仮想ストレージ１０１ごとに、キャッシュメモリ１２６の記憶領域の一部が、仮想キャッシュメモリ１１０として割り当てられる。割り当て方法等の詳細については、後ほど図３で述べる。
【００３４】
図３は、ボリューム、キャッシュメモリ、制御部における物理レイヤと資源プールの階層の関係と、各資源と仮想ストレージ装置１０６の関係を示している。
【００３５】
まず、物理資源と資源の関係について説明する。
【００３６】
物理ドライブ１２７を複数台使用し、１つの仮想的なボリュームにするＲＡＩＤ技術が一般的に知られている。ＲＡＩＤ技術を使い、物理ドライブ１２７を複数使用し、資源ボリューム１２０２が作成される。例えば、物理ストレージ装置１２０の制御部は、物理ドライブ１２７Ａ〜Ｄを４つ使用して、パリティグループ１２０３Ａを作成し、パリティグループの一部を資源ボリューム１２０２Ａとして割り当てる。
【００３７】
物理ストレージ装置１２０に存在する資源ボリューム１２０２の集合が、資源ボリュームプール２７０１である。
【００３８】
資源ボリューム１２０２とパリティグループの対応関係を示したテーブルが、後に図１０で説明する資源ボリューム制御情報３２０１である。
【００３９】
物理ストレージ装置１２０は、複数のメモリスロット１３０を持つ。複数のメモリスロット１３０が一様な記憶領域のアドレス空間に資源キャッシュメモリ１３０２として割り当てられる。
【００４０】
資源キャッシュメモリ１３０２は、資源キャッシュメモリアドレスによって仮想ストレージ装置への割り当て時に識別される。例えば、資源キャッシュメモリアドレスは“（メモリスロット番号×メモリスロットの記憶容量）＋メモリスロット上のアドレス”という計算式によって、定義される。メモリスロット番号とは、物理ストレージ装置１２０が搭載している各メモリスロット１３０と対応させた、０から始まる番号である。例えば、メモリスロットの記憶容量が２５６ＭＢで、メモリスロット３番の、メモリスロット上のアドレスが“0x1000000“である場合は、資源キャッシュメモリアドレスは”0x31000000“となる。
【００４１】
物理ストレージ装置１２０に存在する資源キャッシュメモリ１３０２の集合が、資源キャッシュメモリプール３０２である。
【００４２】
また、資源キャッシュメモリアドレスとメモリスロットの対応関係を示したテーブルが、後に図１３で説明する資源キャッシュメモリ制御情報９０２である。
【００４３】
制御プロセッサ上には、Ｉ／Ｏ処理等のプログラムを実行する主体であるタスク３０４が存在する。タスク３０４は、一般的なＯＳにおける、スレッドやプロセス等と同等である。制御プロセッサ１２４は、あらかじめ一定数のタスクを起動しておく。各タスクは資源タスクに対応する。
【００４４】
物理ストレージ装置１２０に存在する資源タスク３０５の集合が、資源タスクプール３０３である。
【００４５】
また、資源タスク番号とタスク番号の対応関係を示したテーブルが、後に図１４で説明する資源タスク制御情報９０３である。
【００４６】
次に、資源と仮想ストレージ装置１０６の関係について説明する。
【００４７】
仮想ボリューム１１１は、資源ボリューム１２０２が仮想ストレージ装置１２０１に、割り当てられた仮想資源である。仮想ボリューム番号は、仮想ストレージ装置毎にユニークに割り振られる。例えば、仮想ストレージ１２０１Ａの仮想ボリューム１２０２Ａの仮想ボリューム番号が１である場合で且つ、仮想ストレージ１２０１Ｂの仮想ボリューム１２０２Ｂの仮想ボリューム番号が１であってもよい。
【００４８】
資源ボリュームと仮想ボリュームの対応関係を示したテーブルが、仮想ストレージ資源管理情報８２１である。ホストからのＩ／Ｏリクエストの処理（Ｉ／Ｏ処理）は、これらのテーブルを使う。Ｉ／Ｏ処理の詳細は後に図２６で説明する。
【００４９】
仮想キャッシュメモリは、資源キャッシュメモリ１３０２が仮想ストレージ装置１２０１に割り当てられた仮想資源である。仮想キャッシュメモリアドレスは、仮想ストレージ装置毎にユニークに割り振られる。例えば、仮想キャッシュメモリアドレスは、０から始まる連続した記憶領域の空間で表される。この仮想キャッシュメモリアドレスと資源キャッシュメモリアドレスの対応関係を示したテーブルが仮想ストレージ資源管理情報４１１である。
【００５０】
ホストからのＩ／Ｏ処理は、仮想ストレージ資源管理情報４１１と物理ストレージ制御情報４１０を参照して、仮想キャッシュメモリアドレスから、資源キャッシュメモリアドレスを求める。
【００５１】
仮想制御部は、資源タスクプール３０３から資源タスク３０５が仮想ストレージ装置１２０１に割り当てられた仮想資源である。仮想制御部には求められるＩ／Ｏ処理の性能等に基づいて複数の仮想制御部に複数のタスクを割り当ててもよい。
【００５２】
本実施例では、一定数のタスクを起動しておき、資源タスクプールから必要な性能に応じて複数のタスクが仮想ストレージ装置１０６に割り当てられている。しかし、一般的なＯＳではタスクに優先度を指定することができる。このため、資源タスクプールの提供方法として、１つの仮想ストレージ装置１０６に１タスクを割り当て、必要な性能に応じてタスクの優先度を設定する方法もある。
【００５３】
図４は、物理ストレージ装置１２０の制御部１２３における、制御プロセッサ１２４によって実行される、制御メモリ１２５内にあるプログラム及びデータ構造を表している。
【００５４】
制御メモリ１２５内には、仮想ストレージ制御情報４０１が０個以上格納される。仮想ストレージ制御情報４０１は、物理ストレージ上で実装する個々の仮想ストレージ装置１０６を制御するための情報を含んでいる。仮想ストレージ制御情報４０１は、プログラム制御情報４０２、ＬＵＮセキュリティ情報４０３、ＬＵＮマッピング情報４０４、仮想ストレージ構成情報４０５を含む。それぞれの情報の詳細については、図５〜８で説明する。また、仮想ストレージ制御情報４０１は、物理ストレージ装置上にある仮想ストレージ装置１０６の数だけ存在する。
【００５５】
制御メモリ１２５内には、物理ストレージ制御情報４１０が格納されている。物理ストレージ制御情報４１０は、資源と物理資源の対応関係等を表すテーブルの集合である。詳細については、図１０〜１４で説明する。
【００５６】
制御メモリ１２５内には、仮想ストレージ資源管理情報４１１が格納されている。仮想ストレージ資源管理情報４１１は、資源と仮想ストレージ装置１０６の対応関係を表すテーブルである。詳細については、図１５で説明する。
【００５７】
制御メモリ１２５内には、ＷＷＮ変更通知情報４１２が格納されている。ＷＷＮ変更通知情報４１２は、ホスト側のポートの構成変更時のポートのＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）に関する情報を格納している。ＷＷＮは、通常ポートの製造時に一意に割り当てられるポートの識別子である。ホスト側の変更通知の詳細については、図２５で説明する。
【００５８】
制御メモリ１２５内には、サスペンド処理４２１というプログラムが格納されている。サスペンド処理４２１は、対象の仮想ストレージ装置１０６をサスペンドして資源を解放する処理であり、管理サーバ１０２等の指示によって起動する処理である。仮想ストレージ装置１０６のサスペンドとは、対象の仮想ストレージ装置１０６に関連する部品の電源を切る等の処理とそのための準備を行うことである。詳細については、フローチャートを用いて後ほど図２７で説明する。
【００５９】
制御メモリ１２５内には、リジューム処理４２２というプログラムが格納されている。リジューム処理４２２は、対象の仮想ストレージ装置１０６がサスペンドしているときに、関連する資源の電源を入れる等の処理とその準備のための処理を実行する処理である。また、リジューム処理４２２は、資源を仮想ストレージ装置１０６に割り当てる処理である。詳細については、フローチャートを用いて後ほど図２９で説明する。
【００６０】
制御メモリ１２５内には、ホストコマンド処理４２３というプログラムが格納されている。ホストコマンド処理４２３は、制御プロセッサ１２４が実行ずる。ホストコマンド処理４２３は、ホストからのｒｅａｄ／ｗｒｉｔｅコマンドをポート１２２が受領したとき、対応するデータを物理ディスク１２７やキャッシュメモリ１２６からポートに対して転送する処理等である。具体的には、物理ストレージ装置１２０は、制御部１２３に含む、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）回路等によって転送を実行する。詳細については、フローチャートを用いて後ほど図２８で説明する。
【００６１】
制御メモリ１２５内には、ＷＷＮ変更通知受信処理４２４というプログラムが格納されている。ＷＷＮ変更通知受信処理４２４は、ホスト側のポートの構成変更時にポートのＷＷＮ情報等をホストから受信する処理を実行するプログラムである。詳細については、フローチャートを用いて後ほど図２４で説明する。
【００６２】
次に、仮想ストレージ制御情報４０１に含まれる、各情報ついて説明する。（図５〜８）
図５は、ＬＵＮセキュリティ情報４０３のデータ構造を表している。
【００６３】
ＬＵＮセキュリティ情報４０３は、ＬＵＮ５１１と、アクセス可能ＷＷＮ５１２の組の集合である。ＬＵＮセキュリティは、ＳＡＮ環境等において他のホストグループのポートから自分のホストグループのＬＵＮにアクセスされることを防ぐための手段である。
【００６４】
例えば図５だと、ＬＵＮ５１１が“３”のボリュームに対してホストがアクセスするには、ホストのポートのＷＷＮは“WWN１”か、“WWN２” か、“WWN３”でなければならない。
【００６５】
図６は、ＬＵＮマッピング情報４０４のデータ構造を表している。
【００６６】
ＬＵＮマッピング情報４０４は、ホストからアクセスするボリュームのＬＵＮ６１１と仮想ボリュームとの対応関係を示す情報である。ＬＵＮマッピング情報４０４は、ＬＵＮ６１１と、仮想ストレージボリューム番号６１２と、ＬＵＳＥ（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｓｉｚｅ  Ｅｘｐａｎｓｉｏｎ）情報６１３の組の集合である。
【００６７】
例えば図６だと、ＬＵＮ６１１が“３”のボリュームに対して、ホストがアクセスする場合、ホストは仮想ボリューム番号６１２が“１”，“２”，“３”，“４”の仮想ボリュームにアクセスすることになる。ここでホストがアクセスする仮想ボリュームが複数あるのは、ＬＵＳＥ情報６１３が“有り”であるためである。ＬＵＳＥとは複数のボリュームを１つの大きなボリュームとしてホストに見せる機能である。ホストが、ＬＵＮ６１１が“３”のボリュームにアクセスすると、ホストにはボリューム容量が“１”，“２”，“３”，“４”のボリュームの合計のサイズに見えることになる。
【００６８】
図７は、プログラム制御情報４０２のデータ構造を表している。
【００６９】
プログラム制御情報４０２は、物理ストレージ装置１２０において使用されるプログラムの制御のための情報の一例を示す。図７では、プログラム制御情報４０２は、一般的なボリュームコピー機能におけるペア状態のテーブルを表している。
【００７０】
プログラム制御情報４０２は、Ｐ−ＶＯＬ番号７１１と、Ｓ−ＶＯＬ番号７１２と、ペア状態７１３と、プログラム種別７１４を要素に含む。Ｐ−ＶＯＬ番号６１１はコピー元のボリュームを表す番号である。このＰ−ＶＯＬ番号７１１は、ＬＵＮである。Ｓ−ＶＯＬ番号７１２はコピー先のボリュームを表す番号である。このＳ−ＶＯＬ７１２番号は、ＬＵＮである。ペア状態７１３は、ペアのボリュームの状態を表している。ペア状態７１３が“コピー中”とは、コピー元のボリュームからコピー先のボリュームにデータのコピーを実行中であることを表している。プログラム種別７１４は、“リモートコピー”や“ローカルコピー”等、プログラムの種別を表している。その他、ローカルコピー機能やリモートコピー機能等のプログラムに関する、他の制御情報をプログラム制御情報２０２として、制御メモリ１２５に格納してもよい。
【００７１】
図８は、仮想ストレージ構成情報４０５のデータ構造を表している。
【００７２】
仮想ストレージ構成情報８０１及び８０２は、仮想ストレージ装置１０６の保有している資源のサイズ等の仕様を保持している。例えば仮想ストレージ構成情報８０１は、仮想ストレージ装置１０６にある仮想ボリューム番号８１１とそのサイズ８１２の対応関係を示している。また、仮想ストレージ構成情報８０２は、仮想ストレージ装置１０６が保有する、ポート数８３１、キャッシュサイズ８３２、タスク数８３３を示している。
【００７３】
仮想ストレージ構成情報８０１及び８０２は、仮想ストレージ装置１０６がリジュームされる際に参照し、リジューム時に必要な資源を決める際等に使用する。
【００７４】
次に、物理ストレージ制御情報４１０について説明する。（図９〜１４）
図９は、物理ストレージ制御情報４１０の内部構造を表している。
【００７５】
物理ストレージ制御情報４１０は、資源と物理ストレージ装置１２０の対応関係、及び電源の状態等を保持している。
【００７６】
物理ストレージ制御情報４１０は、資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３、パリティグループ制御情報９０４、物理ディスク制御情報９０５を含む。それぞれの情報の内容は以下の図１０〜１４で説明する。
【００７７】
図１０は、資源ボリューム制御情報９０１のデータ構造を表している。
【００７８】
資源ボリューム制御情報９０１は、資源ボリューム番号１０２１の資源ボリューム毎に、使用状態１０２４、サイズ１０２５、パリティグループ番号１０２６、開始位置１０２７、外部接続情報１０２８を含む。
【００７９】
資源ボリューム番号１０２１は、物理ストレージ装置内でユニークな番号である。
【００８０】
使用状態１０２４は、資源ボリューム１２０２が仮想ストレージ装置１０６に割り当てられているかどうかを示す情報である。使用状態１０２４は、資源ボリューム１２０２が仮想ストレージ装置１０６に割り当て済みであれば、“使用中”であり、未割り当てであれば、“未使用”である。
【００８１】
サイズ１０２５は、資源ボリュームのサイズを表す。例えば、図１０では、資源ボリューム番号が１の資源ボリュームのサイズは“３００ＧＢ”である。
【００８２】
パリティグループ番号１０２６は、資源ボリュームの属するパリティグループの番号を表す。
【００８３】
開始位置１０２７は、資源ボリュームがパリティグループ番号１０２６のどの位置から割り当てているかを表す。開始位置１０２７は、パリティグループの先頭アドレスからのオフセットで表される。
【００８４】
外部接続情報１０２８は、物理ストレージ装置１２０が資源ボリューム１２０２に外部ストレージ装置１２１０の外部ボリュームを割り当てる場合に使用される。また、外部接続情報１０２８は、物理ストレージ装置１２０がポート１２８経由で外部ストレージ装置１２９と通信するときに、資源ボリューム１２０２に割り当てられ外部ボリュームを一意に特定するための識別子を格納する。なお、物理ストレージ装置１２０が資源ボリューム１２０２にパリティグループ１２０３上を割り当てる場合には、資源ボリューム１２０２は外部ボリュームと対応づかない。このとき、物理ストレージ装置１２０は外部接続情報１０２８には無効な値としてＮＵＬＬが格納される。
【００８５】
図１１は、パリティグループ制御情報９０４のデータ構造を表している。
【００８６】
パリティグループ制御情報９０４は、物理ストレージ装置で保持しているパリティグループ毎に、パリティグループ番号１１１１、物理ディスク番号リスト１１１２、ＲＡＩＤレベル１１１３を含む。
【００８７】
パリティグループ番号１１１１は、物理ストレージ装置が保持しているパリティグループを表す識別子である。
【００８８】
物理ディスク番号リスト１１１２は、パリティグループが使用している物理ディスクを表す物理ディスク番号のリストである。
【００８９】
ＲＡＩＤレベル１１１３は、パリティグループのＲＡＩＤレベルを表す。例えば、図１１では、パリティグループ番号が“１”のパリティグループは、物理ディスク番号が“１”，“２”，“３”，“４”の４つの物理ディスクを使用し、ＲＡＩＤレベルは“ＲＡＩＤ５”である。
【００９０】
図１２は、物理ディスク制御情報９０５のデータ構造を表している。
【００９１】
物理ディスク制御情報９０５は、物理ストレージ装置が保持している物理ディスク毎に、物理ディスク番号１２１１、電源状態１２１２、電源カウンタ１２１３を含む。
【００９２】
物理ディスク番号１２１１は、物理ストレージ装置が保持している物理ディスクを表す識別子である。
【００９３】
電源状態１２１２は、物理ディスクの電源の状態を表している。物理ディスクの電源がＯＮの状態であれば、“ＯＮ”を、電源がＯＦＦの状態であれば、“ＯＦＦ”を制御プロセッサ１２４が電源状態１２１２に入力する。
【００９４】
電源カウンタ１２１３は、物理ディスクが仮想ストレージ装置１０６に割り当てられている場合に、その割り当てられている仮想ストレージ装置１０６の数を表す。
【００９５】
ただし、物理ストレージ装置１２０がパリティグループ単位で電源を管理する場合は、物理ディスク制御情報９０５に含まれる電源状態１２１２と電源カウンタ１２１３が、パリティグループ制御情報９０４に含まれてもよい。
【００９６】
図１３は、資源キャッシュメモリ制御情報９０２のデータ構造を表している。
【００９７】
資源キャッシュメモリ制御情報９０２は、物理ストレージ装置で保持している資源キャッシュメモリ１３０２毎に、資源キャッシュメモリアドレス１３４１、電源状態１３４２、使用状態１３４４、メモリスロット番号１３４５を保持している。
【００９８】
資源キャッシュメモリアドレス１３４１は、資源キャッシュメモリ１３０２毎の資源キャッシュメモリアドレスの範囲を表している。資源キャッシュメモリアドレス１３４１は、物理ストレージ装置内でユニークなアドレスである。
【００９９】
電源状態１３４２は、資源キャッシュメモリ１３０２の電源状態を表している。資源キャッシュメモリ１３０２の電源がＯＮの状態であれば、“ＯＮ”を、電源がＯＦＦの状態であれば、“ＯＦＦ”を制御プロセッサ１２４が電源状態１３４２に入力する。
【０１００】
使用状態１３４４は、資源キャッシュメモリ１３０２が仮想ストレージ装置１０６に割り当てられているかどうかを示す情報である。資源キャッシュメモリ１３０２が仮想ストレージ装置１０６に割り当て済みであれば、“使用中”を、未割り当てであれば、“未使用”を制御プロセッサ１２４が使用状態１３４４に入力する。
【０１０１】
メモリスロット番号１３４５は、資源キャッシュメモリ１３０２に対応するメモリスロットを表すスロット番号である。
【０１０２】
図１４は、資源タスク制御情報９０３のデータ構造を表した図である。
【０１０３】
資源タスク制御情報９０３は、物理ストレージ装置で保持している資源タスク３０５毎に、資源タスク番号１４６１、電源状態１４６２、使用状態１４６４、制御プロセッサ番号１４６５、タスク番号１４６６を保持している。
【０１０４】
資源タスク番号１４６１は、物理ストレージ装置が保持している資源タスク２７０５を表す識別子である。資源タスク番号１４６１は、物理ストレージ装置内でユニークな番号である。
【０１０５】
電源状態１４６２は、資源タスク３０５の電源状態を表している。資源タスク３０５の電源がＯＮの状態であれば、“ＯＮ”を、電源がＯＦＦの状態であれば、“ＯＦＦ”を制御プロセッサ１２４が電源状態１４６２に入力する。電源状態は、制御プロセッサ１２４毎に存在する。
【０１０６】
使用状態１４６４は、資源タスク３０５が仮想ストレージ装置１０６に割り当てられているかどうかを示す情報である。資源タスク３０５が仮想ストレージ装置１０６に割り当て済みであれば、“使用中”を、未割り当てであれば、“未使用”を制御プロセッサ１２４が使用状態１４６４に入力する。
【０１０７】
制御プロセッサ番号１４６５は、資源タスク３０５が動作する制御プロセッサの識別子である制御プロセッサ番号を表す。
【０１０８】
タスク番号１４６６は、資源タスクと対応するタスクの番号である。タスク番号１４６６は、制御プロセッサ１２４毎にユニークな番号である。ただし、物理ストレージ装置１２０内の各制御プロセッサ１２４で動作するＯＳが、複数の制御プロセッサ１２４間で並列に動作する一般的なＳＭＰ型ＯＳの場合は、タスク番号１４６６が複数プロセッサ間でユニークになる場合もある。
【０１０９】
図１５は、仮想ストレージ資源管理情報４１１のデータ構造を表している。
【０１１０】
仮想ストレージ資源管理情報１５０１、１５２１、１５４１、１５６１は、資源と仮想ストレージ装置１０６の対応関係を保持している。例えば仮想ストレージ資源管理情報１５０１は、仮想ストレージ装置番号１５１１とキャッシュエリア１５１２の対応関係を保持している。また、仮想ストレージ資源管理情報１５２１は、仮想ストレージ装置番号１５３１と仮想ボリューム番号１５３２と、資源ボリューム番号１５３３の対応関係を保持している。また、仮想ストレージ資源管理情報１５４１は、ポート番号１５５２が、どの仮想ストレージ装置番号１５５１に属しているか、対応関係を保持している。また、仮想ストレージ資源管理情報１５６１は、仮想ストレージ装置番号１５７１の仮想ストレージ装置１０６がどのタスク番号のタスクを保持しているかを示している。
【０１１１】
図１６は、仮想ストレージ装置１０６の全状態をデータとして保存する際のデータ構造である、ストレージイメージデータ１６０１を表している。
【０１１２】
ストレージイメージデータ１６０１は、仮想ストレージ装置１０６のサスペンド時に外部ストレージ装置１２９等に保存される。また、ストレージイメージデータ１６０１は、仮想ストレージ装置１０６毎に作成される。
【０１１３】
ストレージイメージデータ１６０１は、仮想ストレージ制御情報４０１と、ボリュームデータ１６０３を含む。仮想ストレージ制御情報４０１はサスペンドした仮想ストレージ装置１０６に対応する制御情報である。ボリュームデータ１６０３は、サスペンドした仮想ストレージ装置１０６に存在する仮想ボリューム１１１毎に保存されるデータである。
【０１１４】
図１７は、ホスト１０３及び管理サーバ１０２の、プロセッサ１００２が実行する、メモリ１００３内にあるプログラム及びデータ構造を表している。
【０１１５】
ホスト１０３及び管理サーバ１０２のメモリ１００３は、ＯＳ（オペレーションシステム）１７０３と、ストレージ管理プログラム１７０４、ＷＷＮ変更通知プログラム１７０５、鍵情報１７０１、ＷＷＮ情報１７０２を含む。
【０１１６】
ストレージ管理プログラム１７０４は、仮想ストレージ装置１０６を管理するためのプログラムである。ストレージ管理プログラム１７０４は、仮想ストレージ装置１０６の管理者が、ボリュームコピー機能のペア操作等を実行するためのプログラムである。
【０１１７】
ＯＳ１７０３は、ポート１０４を制御して、後述する仮想ストレージ装置１０６の仮想ボリューム１１１を認識して、ボリューム１１０９とする。そして、ＯＳ１７０３はボリューム１１０９をアプリケーション１７０６が使用する記憶領域として提供する。
【０１１８】
アプリケーション１７０６は、ボリューム１１０９に対してアクセスをするプログラムである。アプリケーション１７０６は、例えばデータベースソフトウェア等でもよい。
【０１１９】
鍵情報１７０１及びＷＷＮ情報１７０２は、管理サーバ１０２が物理ストレージ装置１２０のＷＷＮを変更する際に使用される。
【０１２０】
図１８は、ＷＷＮ情報１７０２のデータ構造を示した図である。
【０１２１】
管理サーバ１０２は、ＷＷＮ情報１７０２をメモリ１００３上に保持し、仮想ストレージ装置１０６のリジューム時にＷＷＮ情報１７０２を参照し、ＷＷＮ変更通知プログラム１７０５を起動して、物理ストレージ装置１２０にＷＷＮの変更を伝える。
【０１２２】
ＷＷＮ情報１７０２は、ホストグループ番号１８１１、ホスト番号１８１２、ホストポート番号１８１３、ホストＷＷＮ１８１４、変更有無１８１５を項目に含む。
【０１２３】
ホストグループ番号１８１１は、仮想ストレージシステムがホストグループ１０１を識別するための番号である。ホスト番号１８１２は、ホストグループ１０１内のホスト１０３を識別するための番号である。ホストポート番号１８１３は、ホスト１０３が内蔵するポート１０４を識別するための番号である。ホストＷＷＮ１８１４は、ホスト１０３のポート１０４のＷＷＮを表す。管理サーバ１０２は、変更有無１８１５に、ホスト１０３のポート１０４のＷＷＮが変更された場合に、“有”と入力し、変更されていない場合に“無”と入力する。
【０１２４】
図１９は、ホスト側の構成変更の動作を示した図である。
【０１２５】
旧ホスト１９０２Ａと管理サーバ１０２を含むグループにおいて、仮想ストレージシステムをしばらく使用しない状態になり、システム全体を一時的に停止させる場合を想定する。その場合、管理者はホストの動作を停止するため、ＯＳによってサスペンドや、電源ＯＦＦを実行する。また、仮想ストレージ装置１０６もサスペンドするため、管理者は管理サーバ１０２のストレージ管理プログラム１７０４からサスペンド指示を出して、仮想ストレージ装置１０６のサスペンドを実施する。仮想ストレージ装置１０６のサスペンドの方法の詳細については図２７で説明する。
【０１２６】
次に、仮想ストレージシステムを再び使用する際に、仮想ストレージ装置１０６をリジュームする場合を想定する。そのときに、従来動作していた旧ホスト１９０２Ａは既に廃棄されており、新ホスト１９０２Ｂが使用されるとする。旧ホストのポート１９０６ＡのＷＷＮが、新ホストのポート１９０６ＢのＷＷＮへ変更されたとする。
【０１２７】
管理サーバ１０２はＷＷＮ通知プログラム１７０５により、このようなＷＷＮの変更を、新ホストを起動する前に、物理ストレージ装置１２０に送信する。ＷＷＮ通知プログラム１７０５は、変更前のＷＷＮと変更後のＷＷＮを、仮想ストレージ装置１０６に通知する。ＷＷＮの変更は、Ｉ／Ｆ１９０４からネットワーク１０５を経由して管理Ｉ／Ｆ１９１９に通知される。また、ＷＷＮの変更は、ポート１９０６からネットワーク１１９を通じて、ポート１９１０に通知してもよい。具体的には、仮想ストレージ装置が管理のための専用の仮想ボリューム（コマンドデバイスと呼ぶ）を用意し、管理サーバ１０２からアクセスする。ＷＷＮ通知プログラム１７０５の動作の詳細は、後ほど図２２で説明する。
【０１２８】
図２０は、仮想ストレージシステム全体における業務再開の動作を示したラダーチャートである。
【０１２９】
まず、仮想ストレージ装置１０６の管理者は、管理サーバ１０２のＧＵＩ画面３１０２からストレージ装置のリジュームを指示する（２００２）。ＧＵＩ画面３１０２の詳細は後説する。
【０１３０】
次に、管理サーバ１０２は、ＷＷＮ情報１７０２を参照する。ホストのＷＷＮが変更されている場合は、管理サーバ１０２は、ストレージ管理プログラムからＷＷＮ通知プログラムを呼び出す（２００３）。
【０１３１】
管理サーバ１０２は、ＷＷＮ通知プログラムにより、ＷＷＮの変更通知を物理ストレージ装置１２０に送信する（２００４）。送信内容については後に図２３に示す。
【０１３２】
物理ストレージ装置１２０は、ＷＷＮの変更通知を受信する。ＷＷＮ変更通知受信処理が完了したら（２００５、２００６）、管理サーバ１０２は、ストレージ管理プログラムで、物理ストレージ装置１２０に仮想ストレージ装置１０６のリジューム指示を送信する（２００７）。
【０１３３】
リジューム指示（２００７）を受信したら、仮想ストレージ装置１０６はリジューム処理を実行し、結果（正常又は異常、異常の場合はその理由）をストレージ管理プログラムに返す。ストレージ管理プログラム１７０２によって、管理サーバ１０２は、リジューム処理の結果と異常ならその理由を管理サーバ１０２のＧＵＩ画面３１０２にメッセージとして表示する。リジューム処理が正常終了した場合（２００８）、ホストの管理者は、ホストを起動する（２０１０）。
【０１３４】
図２１は、ホスト側の起動時の動作を示したフローチャートである。
【０１３５】
仮想ストレージ装置１０６の管理者等が、ホスト１０３の電源をＯＮ又はリジュームすると、ホスト１０３は、まずＯＳ１１０３を起動する（ステップ２１０１）。一般的にホスト１０３は、ＯＳ１７０３をホスト１９０２の内部のＨＤＤ１００４等に格納している。ホストは起動時に、ＯＳ１７０３を内部のＨＤＤ１００４からメモリ１００３上にコピーし、プロセッサ１００２がメモリ１００３上のＯＳ１７０３を実行する。一般に、ホスト１０３は、ＯＳ１７０３の起動により、ハードウェアの初期設定等を実行する。
【０１３６】
次に、ホストは物理ストレージ装置１２０のポート１２２に対して、デバイスリストを要求する（ステップ２１０２）。デバイスリストはホストがアクセス可能なＬＵを示す一覧表である。デバイスリストの要求の際に、ホスト１０３は、ポート１０４のＷＷＮを物理ストレージ装置１２０に通知する。ＷＷＮは物理ストレージ装置１２０がポート１０４を一意に特定するために使用する識別子である。
【０１３７】
次に、ホスト１０３はデバイスリストを物理ストレージ装置１２０から受信する（ステップ２１０３）。
【０１３８】
次に、ホスト１０３は、受信したデバイスリストのＬＵをボリュームとして認識する（ステップ２１０４）。認識とは、例えば、一般的なＯＳにおけるボリュームのマウント機能に相当する。認識後は、ＬＵは、ホスト１０３で動作するアプリケーションからボリュームへの読み書きが可能な状態になる。
【０１３９】
次に、ホスト１０３でアプリケーションを実行する（ステップ２１０５）。
【０１４０】
図２２は、ＷＷＮ変更通知プログラムの動作を示したフローチャートである。
【０１４１】
管理サーバ１０２は、ストレージ管理プログラム１７０４により、ＧＵＩ画面３１０２でレジュームを指示する際にＷＷＮ変更通知プログラム１７０５を呼び出す。その際に、管理サーバ１０２は、レジューム対象の仮想ストレージ装置番号と、ＧＵＩ画面３１０２より入力した、変更後のＷＷＮ、変更前のＷＷＮを指定する。
【０１４２】
ストレージ管理プログラム１１０２がＷＷＮ変更通知プログラム１７０５を実行すると、管理サーバ１０２は、ＷＷＮ変更通知パケット２３０１を作成する（ステップ２２０１）。ＷＷＮ変更通知パケット２３０１の詳細は後ほど説明する。
【０１４３】
管理サーバ１０２は、作成したＷＷＮ変更通知パケット２３０１とともにＷＷＮ変更通知を送信する（ステップ２２０２）。
【０１４４】
図２３は、ＷＷＮ変更通知パケット２３０１のデータ構造を表した図である。
【０１４５】
ＷＷＮ変更通知パケット２３０１は、仮想ストレージ装置番号２３１１、変更後のＷＷＮ２３１２、変更前のＷＷＮ２３１３、鍵情報２３１４を含む。
【０１４６】
管理サーバ１０２はＷＷＮ変更通知プログラム１１０７により、ＷＷＮ変更通知パケット２３０１を作成する。
【０１４７】
管理サーバ１０２は、ＷＷＮ変更通知プログラムが、ストレージ管理プログラムから受け取った、レジューム対象の仮想ストレージ装置番号２３１１、変更後のＷＷＮ２３１２、変更前のＷＷＮ２３１３をＷＷＮ変更通知パケット２３０１に入力する。また、管理サーバ１０２は、前記仮想ストレージ装置番号２３１１に対応するメモリ１００３上に保持している鍵情報１７０１をＷＷＮ変更通知パケット２３０１に入力して、ＷＷＮ変更通知パケット２３０１を作成する。
【０１４８】
図２４は、物理ストレージ装置１２０が実行する、ＷＷＮ変更通知受信処理４２４を示したフローチャートである。
【０１４９】
物理ストレージ装置１２４は、ホスト１０３側で実行するＷＷＮ変更通知プログラム１７０５の通知を受信するため、ＷＷＮ変更通知受信処理を実行する。
【０１５０】
物理ストレージ装置１２４は、ＷＷＮ変更通知プログラム１７０５によって、ＷＷＮ変更通知を受信すると（ステップ２４０１）、認証処理を実行する（ステップ２４０２）。物理ストレージ装置１２０は、認証処理を実行することによって、ＷＷＮの変更をセキュアに行う。つまり、物理ストレージ装置１２０が、認証処理を実行する目的は、認証処理で正しいと認識できる、限られたホストだけがＷＷＮの設定を変更できるようにすることである。物理ストレージ装置１２０は、ＷＷＮ変更通知プログラム１７０５がホスト側で保持している鍵情報をステップ２４０１で受信し、ストレージ側で保持している鍵情報と照合し、鍵情報が正しいかを認証する。鍵情報の認証は、ハッシュ関数等を使用する方式等、一般的に知られている認証方式で実装してもよい。また、管理サーバ１０２のＧＵＩ画面３１０１へのログイン時に、仮想ストレージ装置の管理者を認証し、管理Ｉ／Ｆ１１１１へのアクセスを管理サーバに限定する方式を採用してもよい。その場合は、既に管理サーバのＧＵＩ画面で認証が済んでいるため、ＷＷＮ通知プログラム１７０５の実行時に、前記の鍵情報で認証しなくてもよい。
【０１５１】
ステップ２４０２の認証処理の結果、認証に成功したら（ステップ２４０３のＹ）、ＷＷＮ変更通知情報２１２を書き換える。具体的には、制御プロセッサ１２４が、ＷＷＮ変更通知受信処理がステップ２４０１で受信した、ＬＵＮと変更後のＷＷＮの内容を、対象の仮想ストレージ装置番号と受信したポートのポート番号とともに、ＷＷＮ変更通知情報２５２に追加する。管理サーバ１０２が、ＷＷＮ変更通知受信処理が認証に失敗したら（ステップ２４０３のＮ）、終了する。
【０１５２】
このようにして、ステップ２４０２の認証処理により、鍵を持っている管理サーバ１０２のみがＷＷＮの変更ができるようになり、ＷＷＮの変更をセキュアに実行できる。
【０１５３】
図２５は、ＷＷＮ変更通知情報２１２を示した図である。
【０１５４】
物理ストレージ装置１２０は、ＷＷＮ変更通知情報２５２に、ホスト側が通知したＷＷＮ変更通知を、つまりＷＷＮ変更通知受信処理４２４が受信した結果を保存する。ＷＷＮ変更通知情報２５２は、仮想ストレージ装置番号２５１１、ポート番号２５１２、ＬＵＮ２５１３、変更通知有無情報２５１４、変更後のＷＷＮ情報２５１５、変更前のＷＷＮ情報２５１６を含む。仮想ストレージ装置番号２５１１は、ＷＷＮの変更対象となるボリュームが属している仮想ストレージ装置番号を示している。ポート番号２５１２はＷＷＮの変更対象となるボリュームが属しているポートを示している。ＬＵＮ番号２５１３は、ＷＷＮの変更対象となるボリュームを示している。変更通知有無情報２５１４は、ホストから変更通知を受信している場合に“Ｙ”、受信していない場合に“Ｎ”を入れられる。変更後のＷＷＮ情報２５１５は、ホストから変更通知を受信した場合に、変更後のＷＷＮが入力される。物理ストレージ装置１２０は、ホストから変更通知を受信した場合に、変更前のＷＷＮ情報２５１６に、変更前のＷＷＮを入力する。
【０１５５】
図２６は、ホストコマンド処理２２３の動作を示したフローチャートである。
【０１５６】
物理ストレージ装置１２０は、ホストからホストコマンド命令を受信したときに、ホストコマンド処理４２３が実行される（ステップ２６０１）。具体的には、制御プロセッサ１２４やポート１２２に内蔵したプロトコル制御回路等が、ポート１２２の状態をチェックすることにより、ホストコマンド命令の受信を認識し、ホストコマンド処理４２３の実行を開始する。物理ストレージ装置１２０は、仮想ストレージ資源管理情報１５４１を参照し、ポートに対応する仮想ストレージ装置番号を算出する（ステップ２６０２）。次に、物理ストレージ装置１２０は、仮想ストレージ資源管理情報１５６１を参照し、仮想ストレージ装置１０６に対応する仮想制御部からタスクを算出する（ステップ２６０３）。
【０１５７】
以降のステップは、各仮想ストレージ装置１０６に割り当てた計算資源であるタスクが実行する。各仮想ストレージ装置１０６がホストコマンド処理を行う計算資源を仮想ストレージ装置ごとに独立に保有することで、他の仮想ストレージ装置への性能影響を極力排除するためである。一方、ステップ２６０３でタスクを算出するまでは、特定の制御プロセッサ１２４上で動作するタスクが、計算する。
【０１５８】
次に、物理ストレージ装置１２０は、ホストから受信したホストコマンド命令を解析する（ステップ２６０４）。具体的には、ホストコマンド命令は、ホストコマンドの種別や、どのＬＵＮに対するコマンドであるか等である。
【０１５９】
ホストコマンドの種別がデバイスリストの要求であった場合（ステップ２６０９のＹ）、物理ストレージ装置は、デバイスリスト通知処理を実行する（ステップ２６１０）。デバイスリスト通知処理を以下説明する。ホスト１０３がログイン要求を送信する。そして、物理ストレージ装置１２０はホスト１０３が送信したポートのＷＷＮを受信する。そして、物理ストレージ装置１２０は、受信したポート１２２に対応する仮想ストレージ装置１０６のＬＵＮセキュリティ情報４０３を参照し、ポート番号及びホストから受信したＷＷＮからアクセス可能なＬＵの識別子、すなわちＬＵＮのリストであるデバイスリストをホストに送信する。以上がデバイスリスト通知処理の処理内容である。
【０１６０】
ステップ２６０４の解析の結果、ホストコマンドの種別がデバイスリストの要求ではなく（ステップ２６０９のＮ）、ホストコマンドの種別がＩ／Ｏ要求であった場合（ステップ２６０５のＹ）、Ｉ／Ｏ処理を実行する。Ｉ／Ｏ処理を以下説明する。制御部１２３では、Ｉ／Ｏ処理の性能向上を目的とし、頻繁にアクセスされるデータがキャッシュメモリに配置される。また、制御部１２３は、どの記憶領域のデータがキャッシュメモリ上に配置されているかを管理している。データがキャッシュメモリ上にない（キャッシュミス）場合は、制御部１２３は、ステップ２６０４で解析したＬＵＮから、ＬＵＮマッピング情報４０４を参照し、対象の仮想ボリューム番号６１２を調べ、仮想ストレージ資源管理情報１５２１を参照して資源ボリューム番号１５３３を調べる。また、物理ストレージ制御情報４１０を参照し、資源ボリューム番号１５３３から調べ、資源ボリュームの属する物理位置を、パリティグループ情報１０２６から調べる。また、データがキャッシュメモリ上にある（キャッシュヒット）の場合、仮想ストレージ資源管理情報１５０１を参照し、対応するキャッシュエリア１５１２を求め、資源キャッシュメモリ制御情報９０２を参照し、キャッシュエリアに対応する物理位置のメモリスロット番号１３４５とオフセットを求める（ステップ２６０６）。次に、ｗｒｉｔｅコマンドの場合、制御部１２３は、ホスト側からステップ２６０６で特定した物理位置にデータ転送を実行する。また、ｒｅａｄコマンドの場合、制御部１２３は、ステップ２６０６で特定した物理位置から、ホスト側にデータ転送を実行する（ステップ２６０７）。転送が完了したら、物理ストレージ装置１２０は、ホストに完了メッセージを通知する（ステップ２６０８）。以上がＩ／Ｏ処理の説明である。
【０１６１】
以上説明したホストコマンド処理のうち、ステップ２６０１から２６０３の部分は、制御部１２３の制御プロセッサ１２４で処理してもよいし、ポート１２２に内蔵したプロトコル制御回路で実行してもよい。
【０１６２】
図２７は、仮想ストレージ装置１０６のサスペンド処理４２１の動作を示したフローチャートである。
【０１６３】
仮想ストレージ装置１０６の管理者が、管理サーバ１０２のＧＵＩからサスペンドを指示しする。そして、管理サーバ１０２がネットワーク１０５及び管理Ｉ／Ｆ１０７を経由して、仮想ストレージ装置１０６にサスペンドの指示を送信する。そして、仮想ストレージ装置１０６のサスペンド処理４２１が実行される。
【０１６４】
物理ストレージ装置１２０は、サスペンド処理２２１が実行されると、コマンド処理を動作不可に、つまり、ホスト１０３からのコマンド命令を無視するようにする（ステップ２７０１）。
【０１６５】
次に、物理ストレージ装置１２０は、キャッシュメモリ上にあるｗｒｉｔｅデータをボリュームに退避する（ステップ２７０２）。これは、キャッシュメモリがＲＡＭ等の揮発メモリで実装されているためである。キャッシュメモリ上のｗｒｉｔｅデータがディスクに反映されていない場合、キャッシュメモリの電源がＯＦＦになると、キャッシュメモリ上のｗｒｉｔｅデータが揮発し、復元できなくなる。
【０１６６】
次に、物理ストレージ装置１２０は、仮想ストレージ制御情報２０１を、ストレージイメージデータ１６０１の保存先である物理ストレージ装置１２９に保存する（ステップ２７０３）。
【０１６７】
次に、物理ストレージ装置１２０は、ボリュームデータをストレージイメージデータ１６０１の保存先である物理ストレージ装置１２９に保存する（ステップ２７０４）。
【０１６８】
ステップ２７０４は、サスペンド対象の仮想ストレージ装置１０６に含まれる仮想ボリュームすべてに対して実行される（ステップ２７０５）。
【０１６９】
サスペンド対象の仮想ストレージ装置１０６に含まれる仮想ボリュームすべてに対して実行が終わったら、資源の解放処理を実行する（ステップ２７０６）。
【０１７０】
仮想ストレージ装置１０６のサスペンド後、物理ストレージ装置１２９の電源をＯＦＦにしてもよい。
【０１７１】
図２８は、仮想ストレージ装置１０６のサスペンド処理における資源解放処理の動作を示したフローチャートである。
【０１７２】
物理ストレージ装置１２０は、資源解放処理が実行されると、まず解放する資源を決定する（ステップ２８０１）。具体的には、制御プロセッサ１２４が、仮想ストレージ資源管理情報４１１を参照する。そして、制御プロセッサ１２４は、サスペンド対象となる仮想ストレージ装置番号に割り当てた資源を、解放解放する資源として決定する。
【０１７３】
次に、制御プロセッサ１２４は、解放する資源に対応する仮想ストレージ資源管理情報４１１と物理ストレージ制御情報を更新する（ステップ２８０２）。具体的には、以下の３点を実施する。
（１）制御プロセッサ１２４は、解放解放の対象の資源の制御情報（資源ボリューム制御情報３２０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３）の使用状態を“未使用”にする。
（２）制御プロセッサ１２４は、仮想ストレージ資源管理情報４１１のうち、サスペンド対象の仮想ストレージ装置番号の項目で、解放する資源に対応する項目を削除する。
（３）解放の対象の資源が資源ボリュームの場合、制御プロセッサ１２４は、まず資源ボリューム制御情報９０１を参照し、資源に対応するパリティグループ番号１０２６を求める。その後、制御プロセッサ１２４は、パリティグループ制御情報９０４を参照し、パリティグループに対応する物理ディスク番号リスト１１１２を求める。その後、制御プロセッサ１２４は、物理ディスク番号リスト１１１２に含む物理ディスク番号について、物理ディスク制御情報９０５を参照し、電源カウンタ１２１３を１引いた値に変更する。
【０１７４】
次に、物理ストレージ装置１２０は、解放する各資源について、電源がＯＦＦにできるかどうかをチェックする（ステップ２８０３）。
【０１７５】
具体的には、制御プロセッサ１２４が、まず解放する資源に対応する物理資源を求める。
【０１７６】
解放される資源が資源キャッシュメモリの場合、制御プロセッサ１２４は、資源キャッシュメモリ制御情報９０２を参照し、資源に対応する物理資源のメモリスロット番号１３４５を求める。その後、制御プロセッサ１２４は、メモリスロット番号に対応する使用状態１３４４がすべて未使用であるかどうかをチェックする。使用状態１３４４がすべて未使用であった場合のみ、その物理資源は電源のＯＦＦの対象となる。
【０１７７】
解放される資源が資源タスクの場合、制御プロセッサ１２４は、資源タスク制御情報９０３を参照し、資源に対応する物理資源のタスク番号１４６６を求める。その後、制御プロセッサ１２４は、タスク番号に対応する制御プロセッサ番号１４６５を求め、制御プロセッサ番号１４６５に対応する使用状態１４６４がすべて未使用であるかどうかをチェックする。使用状態１４６４がすべて未使用であった場合のみ、その物理資源は電源のＯＦＦの対象となる。
【０１７８】
解放される資源が資源ボリュームの場合、まず制御プロセッサ１２４は、資源ボリューム制御情報９０１を参照し、資源に対応するパリティグループ番号１０２６を求める。その後、制御プロセッサ１２４は、パリティグループ制御情報９０４を参照し、パリティグループに対応する物理ディスク番号リスト１１１２を求める。その後、制御プロセッサ１２４は、物理ディスク番号リスト１１１２に含む物理ディスク番号について、物理ディスク制御情報９０５をチェックする。制御プロセッサ１２４は、電源カウンタ１２１３の値が０になっている物理ドライブのみを電源のＯＦＦの対象とする。
【０１７９】
補足すると、対象の物理資源を起動するとき、制御プロセッサ１２４は、電源カウンタ１２１３の値に１を足す。この電源カウンタが０のときは、その物理資源はどの仮想ストレージ装置１０６にも割り当てられていない状態であることを表す。詳細は、図２６の資源準備処理のフローチャートにて説明する。また、後説する資源解放処理のステップ２８０５及び資源準備処理のステップ３００７で、物理ストレージ装置１２０は、電源カウンタ又は使用状態を、その資源を使っている仮想ストレージ装置１０６の有無を表すように更新する。
【０１８０】
次に、物理資源が電源ＯＦＦの対象であった場合（ステップ２８０３のＹ）、電源をＯＦＦにする（ステップ２８０４）。具体的には、ハードディスクの場合、電源ＯＦＦの処理は、スピンダウン処理や、完全に電源を停止する処理でもよい。
【０１８１】
また、物理資源が電源ＯＦＦの対象でなかった場合（ステップ２８０３のＮ）、制御プロセッサ１２４は、ステップ２８０６へ処理を進める。
【０１８２】
次に、制御プロセッサ１２４は、電源をＯＦＦにする物理資源に対応する物理ストレージ制御情報を更新する（ステップ２８０５）。
【０１８３】
具体的には、電源をＯＦＦにする物理資源がメモリスロットの場合、制御プロセッサ１２４が、資源キャッシュメモリ制御情報９０２の、対象のメモリスロット番号１３４５に対応する電源状態１３４２をＯＦＦにする。
【０１８４】
電源をＯＦＦにする物理資源が物理ドライブの場合、制御プロセッサ１２４が、物理ディスク制御情報９０５の、対象の物理ディスク番号に対応する電源状態１２１２をＯＦＦにする。
【０１８５】
電源をＯＦＦにする物理資源が制御プロセッサ１２４の場合、制御プロセッサ１２４が、資源タスク制御情報９０３の、対象の制御プロセッサ番号１４６５に対応する電源状態１４６２をＯＦＦにする。
【０１８６】
すべての資源を処理していない場合（ステップ２８０６のＮ）、次の資源について、ステップ２８０２から処理を進める。すべての資源を処理したら（ステップ２８０６のＹ）、終了する。
【０１８７】
制御部１２３は、制御プロセッサ１２４の電源をＯＮすることができる制御回路が搭載される。ストレージ装置のリジューム時、管理サーバは制御回路と通信し、まず制御プロセッサ１２４の電源をＯＮにする。次に、制御プロセッサ１２４は、関連する物理ドライブ等の資源について、電源をＯＮにする。ストレージ装置のサスペンド時は、制御プロセッサ１２４が関連する物理ドライブ等の資源の電源をＯＦＦにした後、制御プロセッサ１２４自身が制御プロセッサ１２４の電源をＯＦＦにする。
【０１８８】
また、あらかじめ予約された制御プロセッサを一個以上用意し、予約された制御プロセッサは、電源OFFの対象からはずすようにすることにより、リジュームを実行可能にしてもよい。
【０１８９】
図２９は、仮想ストレージ装置１０６のリジューム処理４２２の動作を示したフローチャートである。
【０１９０】
仮想ストレージ装置１０６の管理者が、管理サーバ１０２のＧＵＩからリジュームを指示する。そして、管理サーバ１０２が、ネットワーク１０５及び管理Ｉ／Ｆ１０７を経由して、仮想ストレージ装置１０６にリジュームの指示を送信する。そして、仮想ストレージ装置１０６のリジューム処理４２２が実行される。
【０１９１】
物理ストレージ装置１２０は、リジューム処理が実行されると、まず物理ストレージ装置１２９等に保存したストレージイメージデータ１６０１から仮想ストレージ制御情報を制御メモリ１２５上に読み込む（ステップ２９０１）。サスペンドの際に、物理ストレージ装置１２９の電源をＯＦＦにした場合、仮想ストレージ制御情報４０１を制御メモリ１２５上に読み込むために、物理ストレージ装置１２０は物理ストレージ装置１２９の電源をＯＮにする。
【０１９２】
次に、物理ストレージ装置１２０は、資源を準備する（ステップ２９０２）。資源の準備処理については、後ほど別のフローチャートを用いて説明する。資源の準備処理が終了すると、仮想ストレージ装置１０６の資源の電源がＯＮになる等により、仮想ボリューム等が使用可能になる。
【０１９３】
次に、物理ストレージ装置１２０は、ストレージイメージデータ１６０１から、ボリュームデータを仮想ボリュームに回復する（ステップ２９０３）。
【０１９４】
次に、物理ストレージ装置１２０は、ストレージイメージデータ３０１から、仮想ストレージ制御情報を制御メモリ１２５に回復する（ステップ２９０４）。
【０１９５】
次に、物理ストレージ装置１２０は、ＷＷＮ変更通知情報４１２をチェックする（ステップ２９０５）。ＷＷＮ変更通知情報４１２はホスト１０３のポート１０４のＷＷＮの変更を検出した際に、物理ストレージ装置１２０に通知される情報である。
【０１９６】
次に、ＬＵＮセキュリティ情報４０３の変更が必要な場合に（ステップ２９０６のＹ）、ＬＵＮセキュリティ情報４０３のＷＷＮが変更される（ステップ２９０７）。具体的には、物理ストレージ装置１２０はＷＷＮ変更通知情報４１２の、対象の仮想ストレージ装置番号の項目で、変更通知有無２５１４を参照する。変更通知有無２５１４がＹの項目について、変更後のＷＷＮ２５１５が、ＬＵＮセキュリティ情報４０３のＷＷＮに変更される。
【０１９７】
次に、物理ストレージ装置１２０は、ホストコマンド処理を動作可能にする（ステップ２９０８）。具体的には、物理ストレージ装置１２０は、制御プロセッサ１２４やポート１２２に内蔵したプロトコル制御回路等がポートの状態のチェックを開始することにより、ホストコマンド命令の受信を認識できるようにする。ホストからのコマンド要求、また、ＬＵＮセキュリティ情報４０３の変更が不要な場合は（ステップ２９０６のＮ）、ステップ２９０８に進む。
【０１９８】
以上のように、第１の実施形態においては、ＷＷＮ変更通知プログラム１７０５によって、ホスト１９０２が、物理ストレージ装置１２０に新しいＷＷＮを通知する。そして、ステップ２９０７において物理ストレージ装置１２０はＬＵＮセキュリティ情報４０３における古いポートのＷＷＮを新しいポートのＷＷＮに更新する。この結果、物理ストレージ装置１２０はデバイスリスト通知処理（ステップ２６１０）において、新しいＷＷＮに対しても、仮想ストレージ装置１０６のサスペンドの前にホスト１９０２に送信していたデバイスリストと同じ内容のデバイスリストをホスト１９０２に送信することができる。このため、ホスト１９０２は仮想ストレージ装置１０６のサスペンドの後にＷＷＮを変更した場合においても、サスペンドの前にアクセスしていたボリュームにアクセスできる。
【０１９９】
図３０は、仮想ストレージ装置１０６のリジューム処理における資源準備処理を示したフローチャートである。
【０２００】
まず、物理ストレージ装置１２０は、資源準備処理を実行すると、仮想ストレージ構成情報２０５から必要な資源要件を求める（ステップ３００１）。仮想ストレージ構成情報４０５は、仮想ストレージ装置１０６のスペックを表している。例えば、キャッシュサイズが“２５６ＭＢ”であった場合、当該仮想ストレージ装置１０６をレジュームさせるには、制御プロセッサ１２４は、２５６ＭＢのキャッシュメモリを確保する必要がある。
【０２０１】
次に、物理ストレージ装置１２０は、空き資源の探索を行う（ステップ３００２）。具体的には、制御プロセッサ１２４は、確保の対象の資源の制御情報（資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３）の使用状態１０２４、１３４４、１４６４を参照し、“未使用”の資源を探索する。
【０２０２】
ステップ３００２の探索の結果、空き資源がなかった場合（ステップ３００３のＮ）、管理サーバ１０２の管理画面で警告メッセージを表示し、仮想ストレージ装置１０６の管理者に空き資源がないためにリジュームできないことを知らせる（ステップ３００８）。管理サーバ１０２の管理画面についての詳細は図３１で説明する。
【０２０３】
ステップ３００２の探索の結果、空き資源があった場合（ステップ３００３のＮ）、確保する資源に対応する仮想ストレージ資源管理情報４１１と物理ストレージ制御情報が更新される（ステップ３００４）。
【０２０４】
具体的には、以下の３点を実施する。
（１）制御プロセッサ１２４は、確保の対象の資源の制御情報（資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３）の使用状態を“使用中”にする。
（２）制御プロセッサ１２４は、仮想ストレージ資源管理情報４１１に、リジューム対象の仮想ストレージ装置番号の項目を追加する。
（３）確保の対象の資源が資源ボリュームの場合、制御プロセッサ１２４は、まず資源ボリューム制御情報９０１を参照し、資源に対応するパリティグループ番号１０２６を求める。その後、制御プロセッサ１２４は、パリティグループ制御情報９０４を参照し、パリティグループに対応する物理ディスク番号リスト１１１２を求める。その後、制御プロセッサ１２４は、物理ディスク番号リスト１１１２に含まれる物理ディスク番号について、物理ディスク制御情報９０５を参照し、電源カウンタ１２１３を１足した値に変更する。
【０２０５】
その後、物理ストレージ装置１２０は、既に電源がＯＮになっているかチェックを行う（ステップ３００５）。
【０２０６】
具体的には、制御プロセッサ１２４は、まず確保する資源に対応する物理資源を求める。確保する資源が資源キャッシュメモリの場合、制御プロセッサ１２４は、資源キャッシュメモリ制御情報９０２を参照し、資源に対応する物理資源のメモリスロット番号１３４５を求める。その後、制御プロセッサ１２４は、メモリスロット番号に対応する電源状態がＯＮであるかどうかをチェックする。電源状態がＯＦＦであった場合のみ、その物理資源は電源のＯＮの対象となる。
【０２０７】
確保する資源が資源タスクの場合、制御プロセッサ１２４は、資源タスク制御情報９０３を参照し、資源に対応する物理資源のタスク番号１４６６を求める。その後、制御プロセッサ１２４は、タスク番号に対応する制御プロセッサ番号１４６５を求め、制御プロセッサ番号１４６５に対応する電源状態がＯＮであるかどうかをチェックする。電源状態がＯＦＦであった場合のみ、その物理資源は電源のＯＮの対象となる。
【０２０８】
確保する資源が資源ボリュームの場合、制御プロセッサ１２４は、まず資源ボリューム制御情報９０１を参照し、資源に対応するパリティグループ番号１０２６を求める。その後、制御プロセッサ１２４は、パリティグループ制御情報９０４を参照し、パリティグループに対応する物理ディスク番号リスト１１１２を求める。その後、制御プロセッサ１２４は、物理ディスク番号リスト１１１２に含む物理ディスク番号について物理ディスク制御情報９０５をチェックし、電源状態がＯＮであるかどうかをチェックする。電源状態がＯＦＦであった場合のみ、その物理資源は電源のＯＮの対象となる。
【０２０９】
各物理資源について電源状態が“ＯＮ”の場合（ステップ３００５のＹ）は、ステップ３００９に進み、“ＯＦＦ”の場合（ステップ３００５のＮ）は資源の電源をＯＮにする（ステップ３００６）。
【０２１０】
具体的には、ハードディスクの場合、電源ＯＮの処理は、スピンアップ処理や、完全に電源を停止した状態から電源をＯＮにする処理でもよい。
【０２１１】
次に、物理ストレージ装置１２０は、電源をＯＮにする物理資源に対応する物理ストレージ制御情報を更新する（ステップ３００７）。
【０２１２】
具体的には、電源をＯＮにする物理資源がメモリスロットの場合、制御プロセッサ１２４は、資源キャッシュメモリ制御情報９０２の、対象のメモリスロット番号１３４５に対応する電源状態１３４２をＯＮにする。
【０２１３】
電源をＯＮにする物理資源が制御プロセッサ１２４の場合、制御プロセッサ１２４は、資源タスク制御情報９０３の、対象の制御プロセッサ番号１４６５に対応する電源状態１４６２をＯＮにする。
【０２１４】
電源をＯＮにする資源が物理ドライブの場合、制御プロセッサ１２４は、物理ディスク制御情報９０５の、対象の物理ディスク番号１２１１に対応する電源状態１２１２をＯＮにする。
【０２１５】
ステップ３００７の後、ステップ３００１で求めたすべての必要な資源について一連の処理（ステップ３００３からステップ３００７まで）を実施していない場合は（ステップ３００９のＮ）、次の必要な資源について空き資源の探索（ステップ３００２）を行う。一連の処理を実施した場合（ステップ３００９のＹ）は、終了する。
【０２１６】
このようにして、物理ストレージ装置１２０が、仮想ストレージ資源管理情報４１１や、物理ストレージ制御情報４１０をステップ２８０２、ステップ３００４で更新することで、その時点で仮想ストレージ装置１０６が確保している資源の情報を制御メモリに保持する。これにより、物理ストレージ装置１２０は、ステップ２８０１で仮想ストレージ装置１０６の単位でサスペンドする際に解放する資源や、ステップ３００１でリジュームする際の確保する資源を決定することが可能になる。
【０２１７】
また、仮想ストレージ装置１０６のサスペンド時に、物理ストレージ装置１２０は、ステップ２８０３で、電源カウンタまたは使用状態を参照する。このため、その物理資源を使用している仮想ストレージ装置１０６がまだ残っているときに、仮想ストレージ装置１０６の管理者が、誤って電源を止めてしまうことを防ぐことができる。
【０２１８】
さらに、図２７のステップ２７０３において、物理ストレージ装置１２０が、ストレージイメージデータ１６０１を外部ボリュームに退避させる。そして、物理ストレージ装置は仮想ストレージ装置１０６の仮想ボリュームを含めた各資源を解放する。そして、他の仮想ストレージ装置１０６をリジュームするときに、図３０のステップ３００２から３００６において、物理ストレージ装置が空き資源の探索処理を行う。そして、この仮想ストレージ装置１０６が解放した資源を使用することができる。これによって、仮想ストレージシステム全体として、物理ストレージ装置１２０の資源が有効に活用される。例えば仮想ストレージ装置１０６が高性能のビットコストの高いオンライン系のストレージで、物理ストレージ装置１２９が低性能でビットコストの低いテープストレージであるとする。仮想ストレージ装置１０６の管理者は、今後しばらく使用しない仮想ストレージ装置１０６のボリュームデータと制御情報をテープストレージに保管する。このようにして、管理者は、他の使用したい仮想ストレージ装置１０６を高性能な物理ストレージ装置１２０上で使用できるようになる。
【０２１９】
図３１は、仮想ストレージ装置１０６の管理サーバ１０２の画面３１０１を示した図である。
【０２２０】
管理サーバ１０２は、画面３１０１を持つ。画面３１０１上にストレージ管理プログラム１１０２のＧＵＩ画面３１０２が表示される。
【０２２１】
ＧＵＩ画面３１０２は、メニュー部３１０３と設定部３１０４を持つ。メニュー部３１０３には、各設定項目がツリー型に表示されている。メニュー部には、仮想ストレージ装置１０６を識別する情報３１２１が表示される。例えば図３１だと、“仮想ストレージ装置Ａ”という仮想ストレージ装置１０６の名称が表示されている。
【０２２２】
メニュー部には、仮想ストレージ装置１０６を識別する情報３１２１の下位に、仮想資源一覧３１２２及び電源管理３１２１の設定項目が表示されている。
【０２２３】
仮想資源一覧３１２２は、管理の対象の仮想ストレージ装置１０６が保持している仮想資源の状態を表示し、仮想資源を設定するための設定項目である。
【０２２４】
電源管理３１２３は、管理の対象の仮想ストレージ装置１０６をサスペンド、レジュームするための設定や状態を設定部に表示するための設定項目である。
【０２２５】
仮想ストレージ装置１０６の管理者が電源管理３１２１を選択すると、設定部３１０４にサスペンド、レジュームに関する設定項目を表示する。
【０２２６】
サスペンド設定画面３１１１では、仮想ストレージ装置１０６をサスペンドするための設定事項が表示される。サスペンド先指定３１１２では、仮想ストレージ装置１０６の管理者がサスペンド時にボリュームデータと制御情報を移行するための仮想ボリューム番号を指定する。例えば、仮想ストレージ装置１０６の管理者は外接ボリュームの仮想ボリューム番号を指定する。
【０２２７】
リジューム設定画面３１１３では、仮想ストレージ装置１０６をリジュームするための設定事項が表示される。リジューム元指定３１１４では、仮想ストレージ装置１０６の管理者がリジューム元の仮想ボリューム番号を指定する。例えば、仮想ストレージ装置１０６の管理者は外接ボリュームの仮想ボリューム番号を指定する。
【０２２８】
実行ボタン３１１６を押すと、設定部３１０４で設定した内容で、管理サーバ１０２は、ストレージ管理プログラム１７０４によって物理ストレージ装置１２０にサスペンド又はリジューム指示を送信する。また、リジューム時には、管理サーバ１０２は、ストレージ管理プログラム１７０４によってＷＷＮ変更通知プログラム１７０５を実行する。
【０２２９】
管理サーバ１０２が仮想ストレージ装置１０６のリジューム指示を送信し、物理ストレージ装置１２０の資源が不足している場合は、ＧＵＩ画面３１０２に「資源不足のためリジュームできません」というメッセージ３１０５が表示される。これによって、仮想ストレージ装置１０６の管理者にリジューム不可であることが伝えられる。
（第２の実施形態）
本実施例では、パッケージ（ＰＫ）と呼ぶ単位でストレージ装置の物理資源の電源管理を実施する例を示す。
【０２３０】
以下、第２の実施形態について、第１の実施形態との差異を説明する。
【０２３１】
図３２は、本発明の第２の実施形態に係る仮想ストレージシステムにおけるストレージ装置の物理的な構成を示す。
【０２３２】
バックエンドパッケージ３２１１は、物理ディスクを含むディスクパッケージ３２１６と、物理ディスクや外部ストレージ装置１２９と通信するポートを含むバックエンドポートパッケージ３２１７を含む。
【０２３３】
フロントエンドパッケージ３２１２は、ポートを含むパッケージである。
【０２３４】
データバス３２１３は、パッケージ間のデータ転送等の通信処理を実行する装置である。  プロセッサパッケージ３２１５は、制御プロセッサ１２４や制御メモリ１２５等、制御部を含んだパッケージである。  プロセッサパッケージ３２１５内には複数の制御部があってもよく、かつプロセッサパッケージ３２１５が複数あってもよいため、物理的に制御プロセッサ１２４が複数存在してもよい。各制御プロセッサ１２４は、データバス３２１３を通じてキャッシュメモリパッケージ３２１４内のキャッシュメモリにアクセスし、制御メモリ上の各種制御情報を、キャッシュメモリ上に配置することができる。そして、各制御プロセッサ１２４は、キャッシュメモリ上の各種制御情報を、別の制御部の制御プロセッサ１２４と共有することができる。なお、本実施例以降では、特に補足説明がない場合、各種制御情報を制御メモリ１２５上に配置すると説明した場合、各種制御情報をキャッシュメモリ上に配置し、物理ストレージ装置１２０内で共有する前提で説明する。
【０２３５】
キャッシュメモリパッケージ３２１４は、キャッシュメモリを含むパッケージである。
【０２３６】
なお、制御メモリ１２５として使用するキャッシュメモリを含むキャッシュメモリパッケージ３２１４は、共有している各種制御情報にアクセスする制御プロセッサ１２４が存在する限り電源をＯＦＦにすることができない。
【０２３７】
そこで、物理ストレージ装置１２０の各制御プロセッサ１２４は、固定のキャッシュメモリパッケージ３２１４のキャッシュメモリを制御メモリの代替として使用する場合、キャッシュメモリパッケージ３２１４の電源カウンタ３３１４の値にあらかじめ１加算しておき、電源を落とさないように制御する。電源カウンタ３３１４の詳細については、後説する。
【０２３８】
図３３はパッケージ資源対応情報３３０１のデータ構造を表す。
【０２３９】
パッケージ資源対応情報３３０１は、パッケージ番号３３１１、パッケージ種別３３１２、資源リスト３３１３、電源カウンタ３３１４、電源状態３３１５を含む。パッケージ情報は、物理ストレージ装置１２０の制御メモリ１２５に格納される。
【０２４０】
パッケージ番号３３１１は、パッケージを識別する番号である。
【０２４１】
パッケージ種別３３１２は、パッケージの種別を表す。パッケージの種別には、制御部を１つ以上含む“プロセッサパッケージ”、キャッシュメモリを１つ以上含む“キャッシュメモリパッケージ”、物理ディスクを１つ以上含む“ディスクパッケージ”、ホストと通信するポートを一つ以上含む“フロントエンドパッケージ”、物理ディスクや外部ストレージ装置１２９と通信するポートを一つ以上含む“バックエンドポートパッケージ”の種類が存在する。
【０２４２】
資源リスト３３１３は、各パッケージが含む資源のリストである。電源カウンタ３３１４の値は、パッケージを使用している仮想ストレージ装置１０６の個数を表している。電源カウンタ３３１４の値の更新方法については、図３４及び図３５で説明する。電源状態３３１５は、各パッケージの電源がＯＮであるか、ＯＦＦであるかを表している。
【０２４３】
図３４は、本実施例における資源解放処理を表すフローチャートである。
【０２４４】
図３４は、図２８と、ステップ３４０１〜３４０４が異なっている。
【０２４５】
物理ストレージ装置１２０は、資源開放処理で、解放する資源に対応する仮想ストレージ資源管理情報４１１とパッケージ資源対応情報３３０１を更新する（ステップ３４０１）。具体的には、以下の３点を実施する。
（１）制御プロセッサ１２４は、解放する対象の資源の制御情報（資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３）の使用状態を“未使用”にする。
（２）制御プロセッサ１２４は、仮想ストレージ資源管理情報４１１のうち、サスペンド対象の仮想ストレージ装置番号の項目で、解放する資源に対応する項目を削除する。
（３）制御プロセッサ１２４は、パッケージ資源対応情報３３０１の、解放の対象の資源に対応する電源カウンタ３３１４の値に１減算する。ただし、本フローチャートの開始から終了の間に、同一のパッケージ番号３３１１の電源カウンタ３３１４の値に、別の資源を処理した際に、既に１減算されていた場合、値は減算されない。
【０２４６】
次に、物理ストレージ装置１２０は、解放する各資源について、電源がＯＦＦにできるかどうかをチェックする（ステップ３４０２）。
【０２４７】
具体的には、パッケージ資源対応情報３３０１の電源カウンタ３３１４の値が０になっているパッケージのみが電源のＯＦＦの対象となる。
【０２４８】
次に、物理資源が電源ＯＦＦの対象であった場合（ステップ３４０２のＹ）、物理ストレージ装置１２０は、パッケージの電源をＯＦＦにする（ステップ３４０３）。物理資源が電源ＯＦＦの対象でなかった場合（ステップ３４０２のＮ）、処理はステップ２８０６へ進む。
【０２４９】
次に、電源をＯＦＦにするパッケージに対応するパッケージ資源対応情報３３０１を更新する（ステップ３４０３）。
【０２５０】
具体的には、制御プロセッサ１２４は、パッケージ資源対応情報３３０１の電源状態３３１５をＯＦＦにする。
【０２５１】
その他の資源解放処理の動作については、図２８で説明した動作と同等であるため、説明を割愛する。
【０２５２】
図３５は、本実施例における資源準備処理を表すフローチャートである。
【０２５３】
図３５は、図３０と、ステップ３５０１〜３５０４が異なっている。
【０２５４】
物理ストレージ装置１２０は、ステップ３００２で見つけた空き資源に対応する仮想ストレージ資源管理情報４１１とパッケージ資源対応情報を更新する（ステップ３５０１）。具体的には、以下の３点を実施する。
（１）制御プロセッサ１２４は、確保の対象の資源の制御情報（資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３）の使用状態を“使用中”にする。
（２）制御プロセッサ１２４は、仮想ストレージ資源管理情報４１１に、リジューム対象の仮想ストレージ装置番号の項目を追加する。
（３）パッケージ資源対応情報３３０１の、確保の対象の資源に対応する電源カウンタ３３１４の値を１加算する。ただし、本フローチャートの開始から終了の間に、同一のパッケージ番号３３１１の電源カウンタ３３１４の値に対して、別の資源を処理した際に、既に１加算されていた場合、値は加算されない。
【０２５５】
次に、制御プロセッサ１２４は、既に資源の電源がＯＮになっているかチェックを行う（ステップ３５０２）。
【０２５６】
具体的には、パッケージ資源対応情報３３０１の電源状態３３１５の値が“ＯＦＦ”になっているパッケージのみが電源のＯＮの対象となる。
【０２５７】
次に、既に物理資源の電源がＯＮであった場合（ステップ３５０２のＹ）、処理はステップ３００９に進み、物理資源が電源ＯＮの対象であった場合（ステップ３５０２のＮ）、物理ストレージ装置１２０は、パッケージの電源をＯＮにする（ステップ３５０３）。
【０２５８】
次に、物理ストレージ装置１２０は、電源をＯＮにするパッケージに対応するパッケージ資源対応情報３３０１を更新する（ステップ３５０４）。
【０２５９】
具体的には、制御プロセッサ１２４は、パッケージ資源対応情報３３０１の電源状態３３１５を“ＯＮ”に変更する。
【０２６０】
その他の資源準備処理の動作については、図３０で説明した動作と同等であるため、説明を割愛する。
【０２６１】
以上のようにして、仮想ストレージ装置１０６のサスペンド及びリジューム時に、パッケージ資源対応情報３３０１の電源カウンタ３３１４が更新される。ステップ３４０１及びステップ３５０１において、電源カウンタ３３１４は、使用している仮想ストレージ装置１０６の数を表すように更新される。
【０２６２】
仮想ストレージ装置１０６のサスペンド時に、ステップ３４０２において、パッケージ資源対応情報３３０１の電源カウンタ３３１４が参照される。そして、使用中の仮想ストレージ装置１０６の有無が判断される。このため、仮想ストレージ装置間で同一パッケージ内の資源をシェアしている場合でも、仮想ストレージ装置１０６の管理者は、他の仮想ストレージ装置１０６に影響を与えることなく、電源をＯＦＦにすることができる。
（第３の実施形態）
本実施例では、複数のモジュールを結合して１台のストレージ装置として提供するストレージであるモジュール型ストレージにおける仮想ストレージ装置のサスペンド、リジューム方法について述べる。
【０２６３】
以下、第３の実施形態について、第１、２の実施形態との差異を説明する。
【０２６４】
図３６は、本発明の第３の実施形態に係る仮想ストレージシステムの物理的な構成を示す。
【０２６５】
モジュール３６０２はプロセッサパッケージ３２１５とキャッシュメモリパッケージ３２１４とフロントエンドパッケージとバックエンドパッケージとデータバスを含む。
【０２６６】
プロセッサパッケージは制御部を有し、キャッシュメモリパッケージは複数のキャッシュメモリを有し、フロントエンドパッケージは複数のポートを有し、バックエンドパッケージは複数のディスクを含むディスクパッケージと複数のポートを含むポートパッケージを有する。
【０２６７】
モジュール型ストレージ３６０１は、複数のモジュール３６０２を結合して１台のストレージ装置として提供するストレージである。モジュール３６０２の内部は、実施形態２で説明したハードウェアと同等であるため、説明は割愛する。
【０２６８】
モジュール型ストレージ３６０１で仮想ストレージ装置１０６のリジューム処理を実行する場合、複数の異なるモジュール３６０２から資源を確保する場合がある。この時、性能影響が発生する。
【０２６９】
例えば、仮想ストレージ装置３６０４Ａをサスペンドし、リジュームした結果が、仮想ストレージ装置３６０４Ｂであるとする。リジューム後の仮想ストレージ装置３６０４Ｂは、物理ディスクとポートが存在するモジュールが異なっている。このため、制御部が物理ディスクから読み出したデータを、ポートに転送する際に、モジュール間の経路３６０３でデータ通信を行う必要が発生する。モジュール型ストレージでは、モジュール内のデータバスを使ったデータ通信は高速に処理できるが、モジュール間のデータ通信は、モジュール内のデータバスを使ったデータ通信と比較して低速である。したがって、複数の異なるモジュールに存在する資源で、仮想ストレージ装置１０６がリジュームされると、性能影響が発生する。
【０２７０】
そこで、本実施形態では、物理ストレージ装置１２０は、仮想ストレージ装置１０６のリジューム時に性能影響ができるだけ発生しないよう、リジューム時にできるだけ同一モジュール内の資源を選ぶようにする。以下にその方法を具体的に説明する。
【０２７１】
図３７は、モジュール情報３７０１のデータ構造を表す図である。
【０２７２】
モジュール情報３７０１は、モジュール番号３７１１と、そのモジュールに属する資源の集合を表す資源リスト３７１２との対応を示した表である。
【０２７３】
モジュール番号３７１１は、ストレージ装置に存在するモジュールを表す番号である。
【０２７４】
資源リスト３７１２は、モジュールに存在している、資源の集合を表す。制御プロセッサ１２４は、資源リスト３７１２に、資源タスク、資源キャッシュメモリ、資源ボリューム等の番号を入力する。
【０２７５】
図３８は、リジューム処理における資源準備処理を示したフローチャートである。
【０２７６】
図３８は、図３０と、ステップ３８０１〜３８１１が異なっている。
【０２７７】
ステップ３００１で求めた必要な資源要件について、制御プロセッサ１２４は、モジュール内要件チェック処理を実行する（ステップ３８０１）。制御プロセッサ１２４は、モジュール内要件チェック処理を実行し、指定したモジュール内の資源のみで、前記資源要件を満たすかどうかをチェックする。前記資源要件を満たす場合、制御プロセッサ１２４は、満たす資源の組を、資源準備リストに入力する。また、前記資源要件を満たさない場合、制御プロセッサ１２４は、資源準備リストを空にする。モジュール内要件チェック処理の詳細は図３９で説明する。
【０２７８】
資源準備リストが空の場合（ステップ３８０２のＹ）、制御プロセッサ１２４は、物理ストレージ装置１２０に存在する他のモジュールについて処理を実行する（ステップ３８０３のＮ）。制御プロセッサ１２４は、物理ストレージ装置１２０に存在するすべてのモジュールについて探索した場合（ステップ３８０３のＹ）、物理ストレージ装置内要件チェック処理を実行する（ステップ３８０４）。制御プロセッサ１２４は、物理ストレージ装置内要件チェック処理を実行し、物理ストレージ装置１２０内の資源について、前記資源要件を満たすかどうかをチェックする。前記資源要件を満たす場合、制御プロセッサ１２４は、満たす資源の組を、資源準備リストに入力する。前記資源要件を満たさない場合、制御プロセッサ１２４は、資源準備リストを空にする。物理ストレージ装置内要件チェック処理の詳細は図３８で説明する。
【０２７９】
物理ストレージ装置内要件チェック処理の実行の結果、資源準備リストが空の場合（ステップ３８０５のＹ）、物理ストレージ装置１２０に空き資源が無いため、管理サーバ１０２は警告メッセージを表示する（ステップ３００８）。
【０２８０】
資源準備リストが空ではない場合（ステップ３８０５のＮ）、管理サーバ１０２は性能影響メッセージを表示する（ステップ３８０６）。性能影響メッセージは、複数の異なるモジュールに存在する資源を使って仮想ストレージ装置１０６をリジュームする際に、性能影響が出ることを、仮想ストレージ装置１０６の管理者に伝える。
【０２８１】
性能影響メッセージを表示する方法を具体的に説明する。物理ストレージ装置１２０の制御プロセッサ１２４が管理サーバ１０２に性能影響メッセージを表示する命令を送信し、管理サーバ１０２がその命令を受信し、性能影響メッセージが表示される。今後の説明で、メッセージを管理サーバ１０２に表示する場合、特に説明がないときは、同様の方法で表示させる。
【０２８２】
性能影響メッセージには、“自動設定”と“マニュアル設定”と“キャンセル”が表示される。仮想ストレージ装置１０６の管理者は、その何れかを選択することができる。
【０２８３】
仮想ストレージ装置１０６の管理者が、“自動設定”を選択すると（ステップ３８０７のＮ、ステップ３８１０のＮ）、制御プロセッサ１２４は、資源確保処理を実行する（ステップ３８１１）。資源確保処理は、ステップ３８０４で実行された物理ストレージ装置内要件チェック処理の結果である資源準備リストに入力された資源について行われる。資源確保処理が実行されたの後、資源準備処理が終了する。資源確保処理については、図４１で説明する。
【０２８４】
また、仮想ストレージ装置１０６の管理者が、 “マニュアル設定”を選択すると（ステップ３８０７のＹ）、管理サーバ１０２はマニュアル設定画面（ステップ３８０８）を表示する。
【０２８５】
仮想ストレージ装置１０６の管理者が、マニュアル設定画面で入力した結果を、物理ストレージ装置１２０が受信したら、マニュアル設定画面の内容から資源準備リストを作成する（ステップ３８０９）。その後、制御プロセッサ１２４が、前記資源準備リストに入力した資源について、資源確保処理を実行し（ステップ３８１１）、資源準備処理を終了する。
【０２８６】
仮想ストレージ装置１０６の管理者が、 “キャンセル”を選択すると（ステップ３８０７のＮ、ステップ３８１０のＹ）、資源準備処理が終了して、リジューム処理が中断される。
【０２８７】
資源準備リストが空ではない場合（ステップ３８０２のＮ）、同一モジュール内の資源で仮想ストレージ装置１０６のリジュームが可能である。その場合、ステップ３８０１でモジュール内要件チェック処理の結果として資源準備リストに入力した資源について、資源確保処理３８１０を実行し、資源準備処理を終了する。
【０２８８】
図３９は、モジュール内要件チェック処理を示したフローチャートである。
【０２８９】
制御プロセッサ１２４は、モジュール内要件チェック処理として、指定したモジュール内の資源のみで、前記資源要件を満たすかどうかをチェックする。制御プロセッサ１２４は、前記資源要件を満たす場合、満たす資源の組を、資源準備リストに入力し、満たさない場合、資源準備リストを空にする。以下、モジュール内要件チェック処理をステップごとに説明する。
【０２９０】
制御プロセッサ１２４が、モジュール内要件チェック処理を開始すると、対象のモジュール内で必要な資源に対応する空き資源を探索する（ステップ３９０１）。制御プロセッサ１２４は、資源がどのモジュールに存在しているかを、モジュール情報３９０１を参照することで把握できる。
【０２９１】
ステップ３９０１の探索の結果、空き資源がない場合（ステップ３９０２のＮ）、制御プロセッサ１２４は、準備資源リストをクリアして（ステップ３９０５）、モジュール内要件チェック処理を終了する。
【０２９２】
ステップ３９０１の探索の結果、空き資源がある場合、（ステップ３９０２のＹ）、制御プロセッサ１２４は、見つかった空き資源を準備資源リストに追加する（ステップ３９０３）。探索がすべての必要な資源について実施されていない場合（ステップ３９０４のＮ）、制御プロセッサ１２４は、次の必要な資源について、ステップ３９０１に戻って繰り返し探索する。探索がすべての必要な資源について実施されたら（ステップ３９０４のＹ）、制御プロセッサ１２４は、モジュール内要件チェック処理を終了する。
【０２９３】
図４０は、物理ストレージ装置内要件チェック処理を示したフローチャートである。
【０２９４】
物理ストレージ装置１２０は、物理ストレージ装置内要件チェック処理により、物理ストレージ装置１２０の各資源が、前記資源要件を満たすかどうかをチェックする。物理ストレージ装置１２０は、前記資源要件を満たす場合、満たす資源の組を、資源準備リストに入力し、満たさない場合、資源準備リストを空にする処理である。
【０２９５】
制御プロセッサ１２４が、物理ストレージ装置内要件チェック処理を開始すると、物理ストレージ装置１２０内で必要な資源に対応する空き資源が探索される。以降は、図３９で説明したモジュール内要件チェック処理と同様に処理を進める。
【０２９６】
図４１は、資源準備処理における資源確保処理を示したフローチャートである。
【０２９７】
図４１は、図３５と、ステップ４１０１、４１０２が異なっている。
【０２９８】
制御プロセッサ１２４は、準備資源リスト４４０１の各要素について電源をＯＮにし、関連する仮想ストレージ資源管理情報４１１やパッケージ資源対応情報を更新する。以下に資源確保処理の各ステップを説明する。
【０２９９】
制御プロセッサ１２４は、準備資源リスト４４０１の各要素について、電源ＯＮ処理を開始する（ステップ４１０１）。以降は実施例３の図３５の資源解放処理で説明したステップ３５０１からステップ３５０３までと同様に処理を進める。次に、制御プロセッサ１２４は、準備資源リスト４４０１のすべての資源について処理を実施していない場合（４１０２のＮ）、準備資源リスト４４０１中の次の資源を処理する。制御プロセッサ１２４が、準備資源リスト４４０１のすべての資源について処理を実施した場合（４１０２のＹ）、処理を終了する。
【０３００】
図４２は、管理サーバ１０２のＧＵＩ画面３１０１を示した図である。
【０３０１】
図４２は、図３１と、４２０１〜４２０４が異なっている。
【０３０２】
管理サーバ１０２は、物理ストレージ装置１２０からステップ３８０６で性能影響メッセージを表示する指示を受ける。そして、管理サーバ１０２は、管理サーバ１０２で動作するストレージ管理プログラム１７０４のＧＵＩ画面３１０２上に性能影響メッセージ４２０１を表示する。
【０３０３】
性能影響メッセージ４２０１は、“複数モジュールにまたがった資源を使用するため、性能影響が発生する可能性があります。”というメッセージと、自動設定ボタン４２０２と、マニュアル設定ボタン４２０３と、キャンセルボタン４２０４を含む。
【０３０４】
仮想ストレージ装置１０６の管理者が、自動設定ボタン４２０２を押すと、物理ストレージ装置１２０に、仮想ストレージ装置１０６の管理者が自動設定を選択したことが伝えられる。物理ストレージ装置１２０は、それを受けた結果ステップ３８１１を実行する。
【０３０５】
仮想ストレージ装置１０６の管理者が、マニュアル設定ボタン４２０３を押すと、物理ストレージ装置１２０に、仮想ストレージ装置１０６の管理者がマニュアル設定を選択したことが伝えられる。物理ストレージ装置１２０は、それを受けた結果ステップ３８０９を実行する。
【０３０６】
仮想ストレージ装置１０６の管理者が、キャンセルボタン４２０４を押すと、物理ストレージ装置１２０に、仮想ストレージ装置１０６の管理者が自動設定を選択したことが伝えられる。物理ストレージ装置１２０は、それを受けて資源準備処理を終了して、レジューム処理を中断する。
【０３０７】
図４３は、管理サーバ１０２のＧＵＩ画面２２０２のマニュアル設定画面を示した図である。
【０３０８】
マニュアル設定画面４３０１は、メニュー４３１１、空き資源リスト４３１２、確保資源リスト４３１３、追加ボタン４３１４、削除ボタン４３１５を含んでいる。
【０３０９】
仮想ストレージ装置１０６の管理者が、メニュー４３１１で各モジュールについて“制御部”、“キャッシュ”等の資源の分類を選択すると、管理サーバ１０２は、前記モジュールに存在する空き資源の一覧を空き資源リスト４３１２に表示する。仮想ストレージ装置１０６の管理者が、空き資源リスト４３１２から資源を選択して、追加ボタン４３１４を押すと、管理サーバ１０２は、確保資源リスト４３１３に選択した前記資源を追加して表示する。仮想ストレージ装置１０６の管理者が、確保資源リスト４３１３から資源を選択して、削除ボタン４３１５を押すと、管理サーバ１０２は、確保資源リストから前記選択した資源を削除して表示する。仮想ストレージ装置１０６の管理者が実行ボタン４３１６を押すと、管理サーバ１０２は物理ストレージ装置１２０に確保資源リストの内容を送信する。
【０３１０】
図４４は、資源準備リストのデータ構造を示した図である。
【０３１１】
資源準備リスト４４０１は、資源種別４４１１と資源番号４４１２の組を要素として含む。また、資源準備リスト４４０１は、１つ以上のモジュールの資源（モジュール１の資源４４０２Ａとモジュール２の資源４４０２Ｂ）を含んでもよい。
【０３１２】
このようにして、物理ストレージ装置１２０は、仮想ストレージ装置１０６のリジューム時に、最初にステップ３８０１でモジュール情報３７０１を参照する。物理ストレージ装置１２０は、各モジュールについて、同一モジュールの資源でリジューム可能かを調べ、同一モジュール内の資源を仮想ストレージ装置１０６に割り当てることを優先する。これより、オーバヘッドの原因となるモジュールをまたがった資源割り当てが防止され、性能への影響が抑えられる。
【０３１３】
さらに、性能影響メッセージ４２０１及びマニュアル設定画面４３０１によって、単一モジュールのみで仮想ストレージ装置への資源の割り当てができない場合でも管理者が適切な割り当て指示を行い、モジュールをまたがった資源割り当てを抑えることができる。
（第４の実施形態）
本実施例では、物理ストレージ装置で動作していた仮想ストレージ装置をサスペンドし、別の物理ストレージ装置で前記仮想ストレージ装置をリジュームする方法について述べる。
【０３１４】
以下、第４の実施形態について、第１の実施形態との差異を説明する。
【０３１５】
図４５は、本発明の第４の実施形態に係る仮想ストレージシステムの物理的な構成を示す。
【０３１６】
外部ストレージ装置１２９がＳＡＮ等のネットワーク１１９Ｂによって共有されている。物理ストレージ装置１２０Ａは、仮想ストレージ装置４５０２Ａのサスペンド時にストレージイメージデータ１６０１を外部ストレージ装置１２９に書き出す。物理ストレージ装置１２０Ｂは、仮想ストレージ装置４５０２Ｂのリジューム時に、外部ストレージ装置１２９に書き出したストレージイメージデータ１６０１を読み込む。
【０３１７】
図４６は、第４の実施形態におけるリジューム時のラダーチャートである。
【０３１８】
図４６は、図２０と、４６０１、４６０２が異なっている。
【０３１９】
業務再開時、仮想ストレージ装置１０６の管理者、又はホスト１０３の管理者は、リジューム先の物理ストレージ装置１２０Ｂのポート１２８Ｂに外部ストレージ装置１２９を接続する（４６０１）。前記接続は、ネットワーク１１９Ｂを介してもよいし、ポート１２８Ａから接続をはずしてポート１２８Ｂに直接接続してもよい。また、物理ストレージ装置１２９が、既にネットワーク１１９Ｂを介して物理ストレージ１２０Ｂに接続されている場合は、４６０１は省略できる。
【０３２０】
次に、仮想ストレージ装置１０６の管理者は、管理サーバ１０２のＧＵＩ画面２２０２から、リジューム先の物理ストレージ装置１２０を指定する。（４６０２）。具体的には、仮想ストレージ装置１０６の管理者は、物理ストレージ装置１２０毎に割り当てた番号やＩＤを指定する。
【０３２１】
以降の処理は実施例１と同様であるため、説明を割愛する。
【０３２２】
図４７は、管理サーバ１０２のＧＵＩ画面３１０２を示す図である。
【０３２３】
図４６は、図３１と、４７０１が異なっている。
【０３２４】
リジューム設定画面３１１３は、リジューム先の物理ストレージ装置指定項目４７０１を含む。仮想ストレージ装置１０６の管理者は、物理ストレージ装置指定項目４７０１で、物理ストレージ装置１２０毎に割り当てた番号やＩＤを指定する。仮想ストレージ装置１０６の管理者が実行ボタン３１１６を押すと、管理サーバ１０２はストレージ管理プログラム及びＷＷＮ変更プログラムにより物理ストレージ装置指定項目４７０１で指定した物理ストレージ装置と通信し、実施例１で説明した各種処理を実行する。
【０３２５】
その他の管理サーバ１０２のＧＵＩ画面３１０２の設定項目は実施例１と同様であるため、説明を割愛する。
【０３２６】
以上のようにして、ストレージイメージデータ１６０１を保存している外部ストレージ装置１２９が複数台の物理ストレージ装置（１２０Ａ、１２０Ｂ）間でネットワーク１１９Ｂを介して共有される。そして、リジューム先の別の物理ストレージ装置がストレージイメージデータ１６０１を参照してリジューム処理を実行する。これより、仮想ストレージ装置１０６をサスペンドした物理ストレージ装置１２０Ａと異なる物理ストレージ装置１２０Ｂで仮想ストレージ装置１０６をリジュームすることができる。
（第５の実施形態）
本実施例では、仮想ストレージ装置１０６の管理者が指定する性能要件に応じてパリティグループを再構成する方法について述べる。
【０３２７】
以下、第５の実施形態について、第１、２、３の実施形態との差異を説明する。
【０３２８】
図４８は、仮想ストレージ構成情報２０５の一部のデータ構造を示す図である。
【０３２９】
図４８は、図８の仮想ストレージ構成情報８０１と、４８１３、４８１４が異なっている。
【０３３０】
実施例１で説明した仮想ストレージ構成情報７０１に、物理ディスク性能要件４８１３とＲＡＩＤレベル性能要件４８１４の項目が追加される。
【０３３１】
仮想ストレージ装置１０６の管理者が管理サーバ１０２のＧＵＩ画面３１０２から性能要件を入力する。そして、管理サーバ１０２は、前記性能要件を物理ストレージ装置１２０に送信する。そして、物理ストレージ装置１２０の制御プロセッサ１２４が仮想ストレージ構成情報７０１に物理ディスク性能要件４８１３とＲＡＩＤレベル性能要件４８１４を入力する。
【０３３２】
制御プロセッサ１２４は、物理ディスク性能要件４８１３に、例えば“1.5krpm“等、ハードディスクの回転数を入力する。また、制御プロセッサ１２４は、物理ディスク性能要件４８１３に、“60MB/s“や“30 IOPS“等のハードディスクのアクセススピードを入力してもよい。
【０３３３】
制御プロセッサ１２４は、ＲＡＩＤレベル性能要件４８１４に、“RAID1”、“RAID5”、“RAID6”等のＲＡＩＤレベルを入力する。
【０３３４】
図４９は、物理ディスク制御情報９０５のデータ構造を示す図である。
【０３３５】
図４９は、図１２と、４９１３が異なっている。
【０３３６】
制御プロセッサ１２４は、物理ディスク性能４９１３に、例えば“1krpm”等、ハードディスクの回転数を入力する。また、制御プロセッサ１２４は、物理ディスク性能４９１３に“60MB/s“や“30 IOPS“等のハードディスクのアクセススピードを入力してもよい。
【０３３７】
制御プロセッサ１２４が物理ディスクの型番から物理ディスク性能４９１３を入力してもよいし、管理者が管理サーバ１０２から各物理ディスクの物理ディスク性能４９１３を入力してもよい。
【０３３８】
図５０（図５０(a)と図５０(b)）は、資源準備処理を示すフローチャートである。
【０３３９】
図５０は、図３８と、５００１〜５００６、５００８〜５０１３が異なっている。
【０３４０】
資源準備処理に関わる他の処理で、実施例１、実施例２及び実施例３の説明と同等の部分については説明を割愛する。
【０３４１】
ステップ１１０１で求めた資源要件のうちの、１つの必要な資源について、空き資源を探索し、空き資源一覧を作成する（ステップ５００１）。具体的には、制御プロセッサ１２４が、資源ボリューム制御情報９０１、資源キャッシュメモリ制御情報９０２、資源タスク制御情報９０３のなかで、必要な資源に対応する情報の使用状態を参照する。そして、制御プロセッサ１２４は、“未使用”の資源について、空き資源一覧を作成する。例えば、必要な資源がボリュームであった場合、制御プロセッサ１２４は、資源ボリューム制御情報９０１の使用状態１０２４を参照し、“未使用”の資源のリストを作成する。
【０３４２】
次に制御プロセッサ１２４は、ステップ５００１で作成した空き資源一覧から、空き資源がないかを調べる。空き資源がない場合（ステップ５００２のＮ）、警告メッセージが表示される（ステップ１１０８）。空き資源がある場合（ステップ５００２のＹ）、制御プロセッサ１２４は、空き資源一覧から性能要件が充足する資源を探す（ステップ５００３）。
【０３４３】
以下、具体的に、ステップ５００３の処理を説明する。仮想ストレージ構成情報４８０１の物理ディスク性能要件４８１３の値と、空き資源一覧の各要素の資源に対応する物理ディスクの物理ディスク制御情報４９０１における物理ディスク性能４９１３の値と比較する。仮想ストレージ構成情報４８０１の物理ディスク性能要件４８１３の値が前記物理ディスク性能４９１３の値と同じか、上回っている場合、その資源の物理ディスク性能要件４８１３は満たされている。
【０３４４】
また、仮想ストレージ構成情報４８０１のＲＡＩＤレベル性能要件４８１４の内容と、空き資源一覧の各要素の資源に対応するパリティグループのパリティグループ制御情報９０４におけるＲＡＩＤレベル１１１３の内容と比較する。ＲＡＩＤレベル性能要件４８１４と空き資源一覧に対応するＲＡＩＤレベル１１１３の内容が同一である場合、その資源のＲＡＩＤレベル性能要件４８１４は満たされている。また、同一の内容の資源が空き資源一覧になかった場合は、以下のようにしてＲＡＩＤレベル性能要件４８１４が満たされる。他の仮想ストレージ装置１０６が使用していないパリティグループに属している資源が空き資源一覧にある場合のみ、前記資源の属するパリティグループのＲＡＩＤレベルを変更する。  このように、ステップ５００３では、制御プロセッサ１２４は、ステップ５００１で作成した空き資源の一覧から、物理ディスク性能要件４８１３、ＲＡＩＤレベル性能要件４８１４の２つの要件について満たす資源が存在するかどうかをチェックする。
【０３４５】
以上がステップ５００３の処理の説明である。
【０３４６】
次に、制御プロセッサ１２４は、要件を充足する資源があるかどうかをチェックする（ステップ５００４）。制御プロセッサ１２４が、ステップ５００３で物理ディスク性能要件４８１３、ＲＡＩＤレベル性能要件４８１４の２つの要件が両方とも満たされないと判断した場合（ステップ５００４のＮ）、性能警告メッセージが管理サーバ１０２のＧＵＩ画面３１０２に表示される（ステップ５００８）。性能警告メッセージの詳細については図５１で説明する。
【０３４７】
制御プロセッサ１２４が、ステップ５００３で物理ディスク性能要件４８１３を満たす資源が存在すると判断した場合（ステップ５００４のＹ）、制御プロセッサ１２４は構成変更が必要かどうかをチェックする（ステップ５００５）。制御プロセッサ１２４が、ステップ５００３で、パリティグループ制御情報９０４のＲＡＩＤレベル１１１３の内容と比較する。同一の内容の資源が存在しなかった場合、制御プロセッサ１２４はステップ５００５で構成変更が必要と判断し（ステップ５００５のＹ）、パリティグループが変更可能かどうかをチェックする（ステップ５０１１）。
【０３４８】
ステップ５００３で、他の仮想ストレージ装置１０６が使用していないパリティグループに属している資源が空き資源一覧になかった場合、制御プロセッサ１２４はパリティグループが変更不可（ステップ５０１１のＮ）と判断する。この場合、管理サーバ１０２のＧＵＩ画面３１０２に構成変更不可メッセージが表示される（ステップ５０１２）。
【０３４９】
ステップ５０１２で構成変更不可メッセージが表示された後、仮想ストレージ装置１０６の管理者が管理サーバ１０２のＧＵＩ画面３１０２から“リジューム要”または“キャンセル”を指定する（ステップ５０１３）。仮想ストレージ装置１０６の管理者が、“リジューム要”を指定した場合（ステップ５０１３のＹ）、ステップ５００４で制御プロセッサ１２４が、性能を満たす資源があると判断した場合はその資源を、性能を満たす資源がないと判断した場合は、空き資源一覧の任意の資源を準備資源リストに追加する（ステップ５０１０）。仮想ストレージ装置１０６の管理者が “キャンセル”を指定した場合（ステップ５０１３のＮ）、制御プロセッサ１２４は、資源準備処理を終了し、リジューム処理を中断する。
【０３５０】
ステップ５００３で、他の仮想ストレージ装置１０６によって使用していないパリティグループに属している資源が空き資源一覧にあった場合、パリティグループが変更可（ステップ５０１１のＮ）と判断し、前記資源について、パリティグループ変更処理５００６を実行する。
【０３５１】
パリティグループ変更処理５００６は、資源の属するパリティグループをＲＡＩＤレベル性能要件４８１４のＲＡＩＤレベルに構成を変更する処理である。ステップ５００３で、そのパリティグループを使っている仮想ストレージ装置１０６がないことが確認されているので、構成を変更しても他の仮想ストレージ装置１０６に影響を与えない。制御プロセッサ１２４は、パリティグループ変更処理５００６で、前記パリティグループのＲＡＩＤレベルを変更した後、パリティグループを使用した新しい資源ボリュームを生成する。その際に、制御プロセッサ１２４は、パリティグループ制御情報９０４のＲＡＩＤレベル１１１３を更新する。また、制御プロセッサ１２４は、ＲＡＩＤレベルを変更した後、パリティグループのサイズが変わる場合は、資源ボリューム制御情報９０１を変更する。
【０３５２】
また、パリティグループ変更処理５００６が終了したら、前記資源ボリュームを、資源準備リストに追加する（ステップ５０１０）。
【０３５３】
また、制御プロセッサ１２４が、ステップ５００３で、物理ディスク性能要件を満たす空き資源があると判断した場合、ステップ５００５から処理を実行する。
【０３５４】
ステップ５００８で性能警告メッセージを表示した後、仮想ストレージ装置１０６の管理者が管理サーバ１０２のＧＵＩ画面３１０２から“リジューム要”と指定した場合（ステップ５００９のＹ）、ステップ５００５から処理が進められる。仮想ストレージ装置の管理者が管理サーバ１０２のＧＵＩ画面３１０２から“キャンセル”と指定した場合（ステップ５００９のＮ）、制御プロセッサ１２４は、資源準備処理を終了し、リジューム処理を中断する。
【０３５５】
ステップ５０１０で準備資源リストに資源が追加されたら、ステップ１１０１で求めたすべての必要な資源について一連の処理（ステップ５００１から５０１０まで）を実施していない場合は（ステップ１１０９のＮ）、次の必要な資源について空き資源の探索（ステップ５００１）が行われる。また、すべての必要な資源について一連の処理が実施された場合（ステップ１１０９のＹ）、制御プロセッサ１２４は資源確保処理を実行し（ステップ３８１１）、終了する。
【０３５６】
図５１は、管理サーバ１０２のＧＵＩ画面３１０２を表す図である。
【０３５７】
図５１は、図３１と、５１０１〜５１０３、５１１１〜５１１６が異なっている。
【０３５８】
管理サーバ１０２のＧＵＩ画面３１０２は、要求性能指定画面５１０１を含む。仮想ストレージ装置１０６の管理者は、要求性能指定画面５１０１で、物理ディスク性能５１０２、及びＲＡＩＤレベル５１０３を指定する。
【０３５９】
仮想ストレージ装置１０６の管理者は、物理ディスク性能５１０２に、例えば“1.5krpm“等、ハードディスクの回転数を指定する。また、物理ディスク性能５１０２に、“60MB/s“や“30 IOPS“等のハードディスクのアクセススピードを入力してもよい。
【０３６０】
仮想ストレージ装置１０６の管理者は、ＲＡＩＤレベル５１０３に、“RAID1”、“RAID5”、“RAID6”等のRAIDレベルを指定する。
【０３６１】
仮想ストレージ装置１０６の管理者が、要求性能指定画面５１０１に入力し、実行ボタン３１１６を押すと、管理サーバ１０２は物理ストレージ装置１２０に要求性能指定画面５１０１で設定した物理ディスク性能５１０２、及びＲＡＩＤレベル５１０３の設定内容を送信する。
【０３６２】
物理ストレージ装置１２０は、ステップ５００８で、仮想ストレージ装置１０６の管理者が指定した物理ディスク性能５１０２の設定内容を満たすことができない場合に、性能警告メッセージ５１１１を管理サーバ１０２に表示するよう指示を送信する。
【０３６３】
継続ボタン５１１３を押すと、管理サーバ１０２は物理ストレージ装置１２０にリジュームを継続することを伝えるメッセージを送信する。そして、物理ストレージ装置１２０は、ステップ５００９でリジュームが必要と判断する（ステップ５００９のＹ）。キャンセルボタン５１１４を押すと、管理サーバ１０２は物理ストレージ装置１２０にリジュームをキャンセルすることを伝えるメッセージを送信する。そして、物理ストレージ装置１２０は、ステップ５００９でリジュームが不要と判断する（ステップ５００９のＮ）。
【０３６４】
物理ストレージ装置１２０は、ステップ５０１２で、仮想ストレージ装置１０６の管理者が指定したＲＡＩＤレベル５１０３の設定内容を満たすことができない場合に、構成変更不可メッセージ５１１２を管理サーバ１０２に表示するよう指示を送信する。
【０３６５】
継続ボタン５１１５を押すと、管理サーバ１０２は物理ストレージ装置１２０にリジュームを継続することを伝えるメッセージを送信する。そして、物理ストレージ装置１２０は、ステップ５０１３でリジュームが必要と判断する（ステップ５０１３のＹ）。キャンセルボタン５１１６を押すと、管理サーバ１０２は物理ストレージ装置１２０にリジュームをキャンセルすることを伝えるメッセージを送信する。そして、物理ストレージ装置１２０は、ステップ５０１３でリジュームが不要と判断する（ステップ５０１３のＮ）。
【０３６６】
以上のようにして、物理ストレージ１２０が仮想ストレージ装置１０６Ａへサスペンド前に割り当てていた物理資源を、他の仮想ストレージ装置１０６Ｂで使用中である等の理由で仮想ストレージ装置１０６Ａのリジューム時に割り当てられない場合においても、リジューム時にステップ５００３で、前記性能要件を満たす空き資源を探すこと、及びステップ５００６のパリティグループ変更処理により、要求性能を満たす資源を生成して当該資源を使用してリジュームすることにより、性能低下を回避することができる。また性能要件を満たす資源をステップ５００６において生成できない場合でも、管理サーバが、性能警告メッセージ５１１１や構成変更不可メッセージ５１１２を表示することで、仮想ストレージ装置１０６の管理者に伝えることができ、高性能な物理ディスクを追加する等の対策を促すことができる。
（第６の実施形態）
本実施例では、仮想ストレージ装置１０６のサスペンド時に資源を予約しておくことで、リジューム時に資源が足りずにリジュームできないことを防ぐ方法について述べる。本実施例は、第１〜第４の実施例に適用できる。
【０３６７】
以下、第６の実施形態について、第１の実施形態との差異を説明する。
【０３６８】
図５６は、管理サーバ１０２のＧＵＩ画面２２０２を示した図である。
【０３６９】
図５２は、図３１と、５２０１〜５２０４が異なっている。
【０３７０】
仮想ストレージ装置１０６の管理者は、資源を予約する場合、サスペンド設定画面３１１１にある、資源予約５２０１を“有”に設定する。仮想ストレージ装置１０６の管理者は、資源を予約しない場合、資源予約５２０１を“無”に設定する。
【０３７１】
管理サーバ１０２のＧＵＩ画面３１０２は、仮想ストレージ装置１０６のリジューム時に、資源不足でリジュームできない場合、警告メッセージ５２０２を表示する。警告メッセージ５２０２の、予約解除ボタン５２０３を押すと、予約指定した資源を解放する。予約指定した資源を解放する目的は、仮想ストレージ装置１０６が、空き資源がないためにリジュームできない場合、資源の予約を解除することで、緊急的に前記仮想ストレージ装置１０６をリジュームすることを可能にすることである。物理ストレージ装置側の詳細の動作については、後ほど図５５で説明する。
【０３７２】
図５３は、資源予約情報のデータ構造を示した図である。
【０３７３】
資源予約情報５３０１は、資源種別５３１１、資源番号５３１２、予約の有無５３１３、仮想ストレージ装置番号５３１４、仮想資源番号５３１５を項目として含む。資源予約情報５３０１は、制御メモリ１２５に格納される。
【０３７４】
制御プロセッサ１２４は、資源種別５３１１に、“資源タスク”、“資源ボリューム”等の資源の種類を入力する。
【０３７５】
制御プロセッサ１２４は資源番号５３１２に、資源番号を入力する。制御プロセッサ１２４は、予約の有無５３１３に、資源番号５３１２の資源について予約している場合は“有”、予約していない場合は“無”を入力する。
【０３７６】
制御プロセッサ１２４は、予約の有無５３１３が“有”の場合、仮想ストレージ装置番号５３１４に、その予約している仮想ストレージ装置１０６の番号を入力する。
【０３７７】
制御プロセッサ１２４は、予約の有無５３１３が“有”の場合、仮想資源番号５３１５に、その予約している仮想ストレージ装置１０６の、資源番号５３１２の資源と、サスペンド前に対応していた仮想資源番号を入力する。
【０３７８】
図５４は、資源予約指定時のサスペンド処理を示したフローチャートである。
【０３７９】
仮想ストレージ装置１０６の管理者が、管理サーバ１０２のＧＵＩ画面３１０２で、資源予約５２０１を“有”に設定して、サスペンドを指示した場合、物理ストレージ装置１２０は、まず資源予約情報を更新する（ステップ５４０１）。具体的には、サスペンド対象の仮想ストレージ装置１０６が使用している各資源について、制御プロセッサ１２４は、仮想ストレージ資源管理情報２１１を参照し、資源予約情報５３０１に、資源種別５３１１、資源番号５３１２、仮想ストレージ装置番号５３１４、仮想資源番号５３１５にそれぞれ対応する番号を入力し、予約の有無５３１３に“有”を入力する。
【０３８０】
その後、サスペンド処理３１１を実行する（ステップ５４０２）。
【０３８１】
図５５は、リジューム時の資源準備処理を示したフローチャートである。
【０３８２】
図５５は、図３０と、５５０１〜５５０４が異なっている。ステップ３００１で求めた必要な資源要件について、制御プロセッサ１２４は、リジューム対象の仮想ストレージ装置で、予約済みの資源が存在しているかどうかを調べる（ステップ５５０１）。具体的には、制御プロセッサ１２４は、資源予約情報５３０１を参照し、レジューム対象の仮想ストレージ装置１０６の番号で、かつ予約の有無５３１３が“有”の資源があるかどうかを調べる。
【０３８３】
予約済みの資源が存在している場合（ステップ５５０１のＹ）、制御プロセッサ１２４は、その資源について、資源予約情報５３０１の予約の有無５３１３に“無”を入力する。そして、制御プロセッサ１２４は、前記資源を確保対象として、確保する資源に対応する仮想ストレージ資源管理情報２１１と物理ストレージ制御情報２１０を更新する（ステップ３００４）。以降の処理で実施例１と同等の部分は、説明を割愛する。
【０３８４】
また、ステップ５５０１で予約済みの資源が存在しない場合（ステップ５５０１のＮ）、空き資源を探索し（ステップ３００２）、ステップ３００３に進む。
【０３８５】
ステップ３００３で、空き資源がないと判定した場合（３００３のＮ）、警告メッセージを表示する（ステップ３００８）。ステップ３００８は具体的には、物理ストレージ装置１２０が、管理サーバ１０２に対して警告メッセージを表示するように命令を送信する。そして、管理サーバ１０２はストレージ管理プログラムによりこれを受信して、警告メッセージ５２０２を表示する。
【０３８６】
仮想ストレージ装置１０６の管理者が警告メッセージ５２０２の、予約解除ボタン５２０３を押すと、管理サーバ１０２から物理ストレージ装置１２０に予約解除の命令が送信される。そして、物理ストレージ装置１２０は、予約解除を実行すると判断し（ステップ５５０３のＹ）、予約解除を実行する（ステップ５５０４）。具体的には、制御プロセッサ１２４は、ステップ５５０４で、資源予約情報５３０１の予約の有無５３１３をすべて“無”にする。その後、ステップ３００２に戻り、再度、初めから空き資源を探索する。
【０３８７】
仮想ストレージ装置１０６の管理者が警告メッセージ５２０２の、ＯＫボタン５２０４を押すと、管理サーバ１０２から物理ストレージ装置１２０に予約解除を実行しないという命令が送信される。そして、物理ストレージ装置１２０は予約解除を実行しないと判断し（ステップ５５０５のＮ）、資源準備処理を終了し、リジューム処理を中断する。
【０３８８】
ステップ３００３で、空き資源があると判定された場合（３００３のＮ）、空き資源について、物理ストレージ装置１２０は、資源が予約済みかどうかをチェックする（ステップ５５０２）。具体的には、制御プロセッサ１２４は、空き資源の番号に対応する資源予約情報５３０１を参照し、予約の有無５３１３が“有”の場合は、資源が予約済みと判断する（ステップ５５０２のＹ）。そして、制御プロセッサ１２４は、他の空き資源を探索するため、ステップ３００２に進む。また、前記の予約の有無５３１３が“無”の場合は、制御プロセッサ１２４は、資源が予約されていないと判断し（ステップ５５０２のＮ）、ステップ３００４に進む。以降の処理で実施例１と同等の部分は、説明を割愛する。
【０３８９】
以上の処理をまとめる。仮想ストレージ装置１２０１Ａの管理者が、管理サーバ１０２のＧＵＩ画面３１０２から資源予約の指定をする。そして、物理ストレージ装置１２０が、仮想ストレージ装置１２０１Ａのサスペンド時に、ステップ５４０１で資源予約情報５３０１を更新する。そして、物理ストレージ装置１２０は、他の仮想ストレージ装置１２０１Ｃ（開示していない）のリジューム時に資源準備処理のステップ５５０２で予約の有無をチェックする。そして、物理ストレージ装置１２０が、予約されていない資源のみを確保する。このようにして、仮想ストレージ装置１２０１Ａが、資源が足りずにリジューム不可になることを防げる。
（第７の実施形態）
本実施例では、仮想ストレージ装置１０６の管理者が、仮想ストレージ装置１０６のサスペンド時にボリュームデータの退避の有無を選択できるようにして、サスペンド及びリジューム処理の実行時間を短縮する方法について述べる。
【０３９０】
本実施例は、第１〜第４の実施例に適用できる。
【０３９１】
以下、第７の実施形態について、第１、６の実施形態との差異を説明する。
【０３９２】
図５６は、管理サーバ１０２の画面３１０１を示す図である。
【０３９３】
図５６は、図３１と、５６０１が異なっている。
【０３９４】
仮想ストレージ装置１０６の管理者は、ボリュームデータ退避５６０１に、ボリュームデータを退避する場合は“有”を、退避しない場合は、“無”を入力する。
【０３９５】
物理ストレージ装置１２０は、ボリュームデータを退避する場合、ボリュームデータを現在とは異なるボリューム（外部ストレージ装置１２９等）にコピーする。このため、ボリュームデータを退避する場合は、処理に長時間かかる。ボリュームデータを退避しない場合は、実行時間を短縮することができる。ただし、退避しない場合には、資源ボリュームにデータが残り、解放できない。このため、他の仮想ストレージ装置がその資源ボリュームを使うことができない。よって、システムの再開時間の制約等から管理者がどちらを選択するかを決める。
【０３９６】
図５７は、ボリューム退避指定処理を示すフローチャートである。
【０３９７】
物理ストレージ装置１２０の制御プロセッサ１２４が、ボリューム退避指定処理を実行する。
【０３９８】
仮想ストレージ装置１０６の管理者が管理サーバ１０２のＧＵＩ画面３１０２でボリュームデータ退避５６０１に“有”を設定した場合のみ、ボリューム退避指定処理が実行される。この際、管理サーバ１０２は、ストレージ管理プログラム１７０４によって、物理ストレージ装置１２０と通信し、ストレージ装置１２０にボリューム退避指定処理を実行するように指示する。
【０３９９】
制御プロセッサ１２４は、ボリューム退避指定処理を開始すると、ボリューム退避情報５８０２を変更し、仮想ボリュームを退避無しに指定する（ステップ５７０１）。具体的には、制御プロセッサ１２４はボリューム退避情報５８０２のサスペンド対象の仮想ストレージ装置１０６が使用している仮想ボリューム番号に対応する退避の有無６２１２に“無”を入力する。
【０４００】
次に、制御プロセッサ１２４は、資源予約情報５３０１（実施例６に関連）を変更し、仮想ボリュームを予約する（ステップ５７０２）。具体的には、制御プロセッサ１２４は、仮想ストレージ資源管理情報１５２１を参照し、資源予約情報５３０１に、資源種別５３１１、資源番号５３１２、仮想ストレージ装置番号５３１４、仮想資源番号５３１５を入力し、予約の有無５３１３に“有”を入力する。
【０４０１】
この予約について、実施例６の説明では、ステップ５５０５で予約解除を実行することができると説明した。しかし、本実施例の場合、ボリュームデータは別のボリュームに退避していない。このため、別の仮想ストレージ装置１０６のリジューム時に予約解除を実行し、資源ボリュームを使用すると、データが破壊される可能性がある。データが破壊された場合は復元ができなくなる。そこで、ステップ５７０２実行中に、制御プロセッサ１２４は、予約解除可否情報６００１にサスペンド対象の仮想ストレージ装置１０６の仮想ボリュームについて“否”と設定する。それによって、制御プロセッサ１２４は、後に説明する資源準備処理のステップ６３０１で予約解除可否情報６００１をチェックし、前記仮想ボリュームの予約解除の実行を防ぐ。
【０４０２】
次に、サスペンド対象の仮想ストレージ装置１０６が使用しているすべての仮想ボリュームについて、処理が実行済みかどうかを判断する。（ステップ５７０３）処理が実行済みでなければ（ステップ５７０３のＮ）、次の仮想ボリュームについてステップ５７０１から処理を進め、実行済みであれば（ステップ５７０３のＹ）、終了する。
【０４０３】
図５８は、仮想ストレージ制御情報の保持する情報を表す図である。
【０４０４】
図５８は、図４の仮想ストレージ制御情報２０１の部分と、５８０２、６００１が異なっている。
【０４０５】
実施例１で説明した仮想ストレージ制御情報４０１に、仮想ストレージ構成情報５８０１とボリューム退避情報５８０２と予約解除可否情報６００１を追加する。ボリューム退避情報５８０２と予約解除可否情報６００１については、後説する。
【０４０６】
図５９は、ボリューム退避情報のデータ構造を示した図である。
【０４０７】
ボリューム退避情報５８０２は、仮想ボリューム番号５９１１と退避の有無５９１２を項目に含む。
【０４０８】
仮想ボリューム番号５９１１に対応する仮想ボリュームが、前記仮想ボリュームの属する仮想ストレージ装置１０６のサスペンド時に退避を実行するかどうかを、退避の有無５９１２が示している。制御プロセッサ１２４は、ボリューム退避情報５８０２の退避の有無５９１２に、退避を実行する場合は、“有”を、実行しない場合は、“無”を入力する。
【０４０９】
図６０は、予約解除可否情報のデータ構造を示した図である。
【０４１０】
ボリューム退避情報６００１は、仮想ボリューム番号６０１１と予約解除可否６０１２を項目に含む。
【０４１１】
仮想ボリューム番号６０１１に対応する仮想ボリュームが、仮想ストレージ装置１０６のリジューム時に予約解除が実行されるかどうかを、予約解除可否６０１２が示している。制御プロセッサ１２４は、ボリューム退避情報６００１の予約解除可否６０１２に、予約解除を実行する場合は、“可”を、実行しない場合は、“否”を入力する。
【０４１２】
図６１は、サスペンド処理の動作を示すフローチャートである。
【０４１３】
図６１は、図２７と、６１０１、６１０２が異なっている。
【０４１４】
ステップ２７０３の後、ボリュームの退避有りかを判断する（ステップ６１０１）。具体的には、制御プロセッサ１２４は、対象の資源が資源ボリュームの場合は、仮想ストレージ資源管理情報１５２１及びボリューム退避情報５８０２を参照する。そして、制御プロセッサ１２４は、対象の資源ボリュームに対応する仮想ボリューム番号と、仮想ボリューム番号に対応するボリューム退避情報５８０２の退避の有無５９１２が“有”かどうかを判定する。“有”の場合は（ステップ６１０１のＹ）、物理ストレージ装置１２０は、ボリュームデータをストレージイメージデータ保存先ボリュームに退避する（ステップ６１０２）。ステップ６１０２の終了後、ステップ２７０５に進む。
【０４１５】
また、前記退避の有無６２１２が“無”の場合は（ステップ６１０１のＮ）、ステップ２７０５に進む。
【０４１６】
図６２は、仮想ストレージ装置１０６のレジューム処理の動作を示すフローチャートである。
【０４１７】
図６２は、図２９と、６２０１〜６２０３が異なっている。
【０４１８】
ステップ２９０２の後、制御プロセッサ１２４は、ボリュームの退避有りかを判断する（ステップ６２０１）。具体的には、制御プロセッサ１２４は、対象の資源が資源ボリュームの場合は、仮想ストレージ資源管理情報１５２１及びボリューム退避情報５８０２を参照する。そして、制御プロセッサ１２４は、対象の資源ボリュームに対応する仮想ボリューム番号と、仮想ボリューム番号に対応するボリューム退避情報５８０２の退避の有無５９１２が“有”かどうかを判定する。退避の有無５９１２が“有”の場合は（ステップ６２０１のＹ）、ストレージイメージデータ１６０１からボリュームデータを回復する（ステップ６２０２）。そして、ステップ６２０２の終了後、ステップ６２０３に進む。
【０４１９】
また、前記退避の有無５９１２が“無”の場合は（ステップ６２０１のＮ）、ステップ６２０３に進む。
【０４２０】
制御プロセッサ１２４は、すべての資源ボリュームについて実行済みかどうかを判断し（ステップ６２０３）、実行済みの場合（ステップ６２０３のＹ）、ステップ２９０４に進む。実行済みではない場合（ステップ６２０３のＮ）、制御プロセッサ１２４は、次の資源ボリュームについてステップ６２０１から処理を進める。
【０４２１】
図６３は、資源準備処理の動作を示すフローチャートである。
【０４２２】
図６３は、図５５と、ステップ６３０１を追加している点で異なる。
【０４２３】
ステップ５５０４で、物理ストレージ装置１２０の制御プロセッサ１２４は、警告メッセージを表示させた後、対象の仮想ボリュームは予約解除が可能かどうかを判断する（ステップ６３０１）。具体的には、制御プロセッサ１２４は対象の仮想ボリュームに対応する予約解除可否情報６００１が“否”かどうかチェックし、“否”の場合は予約解除を実行せずに終了する（ステップ６３０１のＮ）。予約解除可否情報６００１が“可”の場合（ステップ６３０１のＹ）、ステップ５５０５に進む。
【０４２４】
実施例７の処理をまとめる。仮想ストレージ装置１０６のサスペンド時に、ステップ５７０１でボリューム退避情報５８０２を変更する。仮想ストレージ装置１０６が使用している資源ボリュームについて、データの退避の対象外であることを指定する。ステップ６１０１及びステップ６２０１で、ボリュームデータをストレージイメージデータ１６０１として、別ボリュームに退避させる処理を実行するかどうかを判定する。このようにして、データの退避の対象外である場合にはデータの退避を実行しないことにより、高速にサスペンド処理及びレジューム処理を実行することができる。
【０４２５】
また、予約解除可否情報６００１を変更して、ステップ５７０２で仮想ボリュームの予約解除を無効化することができる。この場合、他の仮想ストレージ装置１０６のリジューム時にステップ６３０１により、資源ボリュームを上書きしデータを破壊することを防ぐことができる。
（第８の実施形態）
本実施例では、仮想ストレージ装置１０６がサスペンドした物理ストレージ装置と、リジュームする物理ストレージ装置１２０が異なっていた場合に、プログラムのライセンスをチェックする処理について述べる。
【０４２６】
本実施例は、第４の実施例に適用される。
【０４２７】
以下、第８の実施形態について、第１、４の実施形態との差異を説明する。
【０４２８】
図６４は、リジューム時にプログラムのライセンスがインストールされていないことを示す警告メッセージである。この警告メッセージは、仮想ストレージ装置１０６をサスペンドした物理ストレージ装置１２０でインストールされていたプログラムのライセンスが、リジューム先の別の物理ストレージ装置１２０でインストールされていない場合に、仮想ストレージ装置１０６の管理者に対して表示される。
【０４２９】
前記メッセージは、例えば、“リジューム先のストレージで以下のプログラムのライセンスがありません。プログラムをインストールしてください。”というメッセージと、インストールしていないプログラムの種別（例えば“リモートコピー”等）を表示する。
【０４３０】
図６５は、物理ストレージ制御情報の保持する情報を表す図である。
【０４３１】
図６５は、図９と、６６０１を追加している点で異なる。
【０４３２】
本実施例では、実施例１で説明した物理ストレージ制御情報に、プログラムライセンス情報６６０１を追加する。
【０４３３】
図６６は、プログラムライセンス情報６６０１のデータ構造を示した図である。
【０４３４】
制御プロセッサ１２４は、プログラムライセンス情報６６０１に、プログラム種別６６１１に “ローカルコピー”や“リモートコピー”等のプログラム種別を入力し、ライセンス情報６６１２に、プログラム種別に対応するライセンスが有効か無効かを入力する。
【０４３５】
管理サーバ１０２のＧＵＩ画面３１０２から、ライセンスのインストールを実行されると、管理サーバ１０２が物理ストレージと通信する。そして、制御プロセッサ１２４がプログラムライセンス情報の対応するプログラム種別６６１１のライセンス情報６６１２を“有効”にする。また、管理サーバ１０２のＧＵＩ画面３１０２から、ライセンスのアンインストールが実行されると、管理サーバ１０２が物理ストレージと通信する。そして、制御プロセッサ１２４がプログラムライセンス情報の対応するプログラム種別６６１１のライセンス情報６６１２を“無効”にする。
【０４３６】
図６７は、レジューム処理の動作を示したフローチャートである。
【０４３７】
図６７は、図２９と、６７０１、６７０２を追加している点で異なる。
【０４３８】
ステップ２９０１の後、制御プロセッサ１２４は、プログラムライセンスが有効かをチェックする（ステップ６７０１）。具体的には、ステップ２９０１の後、制御プロセッサ１２４が、ストレージイメージデータ１６０１の保存先のボリュームから制御メモリに読み込んだプログラム制御情報４０２について、プログラム種別７１４を確認する。そして、制御プロセッサ１２４は、プログラム種別７１４に存在する各プログラム種別について、プログラムライセンス情報６６０１の、プログラム種別６６１１に対応するライセンス情報６６１２が“有効”かどうかをチェックする。もし１つでも無効のプログラム種別があった場合（ステップ６７０１のＮ）、物理ストレージ装置１２０は無効のプログラム種別を管理サーバ１０２に送信する。そして、管理サーバ１０２のＧＵＩ画面３１０２で前記無効のプログラム種別とともに警告メッセージが表示表示され（ステップ６７０２）、処理が終了する。ステップ６７０１で無効のプログラム種別がなかった場合（ステップ６７０１のＹ）、ステップ２９０２に進む。
【０４３９】
以上をまとめる。制御プロセッサ１２４がステップ６７０１でプログラムのライセンスが有効かどうかをチェックすることで、プログラムをインストールしているかどうかを判断する。プログラムがインストールされていない場合、管理サーバ１０２のＧＵＩ画面３１０２によって仮想ストレージ装置１０６の管理者にインストールされていないプログラムが通知される。このようにして、管理者はリジューム不可の原因を迅速に知ることができる。
（第９の実施形態）
本実施例では、一定時間ホストからのホストコマンド命令が無い場合に、自動的に仮想ストレージ装置１０６のサスペンドを行う方法について述べる。
【０４４０】
本実施例は第１〜４の実施例に適用される。
【０４４１】
以下、第９の実施例について、第１の実施形態との差異を説明する。
【０４４２】
図６８は、自動サスペンド情報６８０１のデータ構造を表わしている。
【０４４３】
自動サスペンド情報６８０１は、仮想ボリューム番号６８１１、最終コマンド受信時刻６８１２、閾値６８１３を含む。
【０４４４】
仮想ボリューム番号６８１１は、仮想ストレージ装置１０６毎にユニークに割り振られる番号である。
【０４４５】
最終コマンド受信時刻６８１２は、最後に仮想ボリュームがホストコマンドを受信した時刻である。制御プロセッサ１２４が入力する。
【０４４６】
閾値６８１３は、最後にホストコマンドを受信してから、自動的にサスペンドが行われるまでの時間である。仮想ストレージ装置１０６の管理者が管理サーバ１０２のＧＵＩ画面３１０１で入力する。
【０４４７】
図６９は、ホストコマンド処理４２３の動作を示したフローチャートである。
【０４４８】
図６９は、図２６とステップ６９０１〜６９０３が異なる。
【０４４９】
ステップ２６０２において、物理ストレージ装置１２０が、ポートに対応する仮想ストレージ装置番号を算出する。
【０４５０】
次に、物理ストレージ装置は、仮想ストレージ装置１０６がサスペンド状態かを判定する（ステップ６９０１）。仮想ストレージ装置１０６がサスペンド状態の場合（ステップ６９０１のＹ）、物理ストレージ装置１２０は仮想ストレージ装置１０６のリジューム処理を行う（ステップ６９０２）。そして、処理はステップ２６０３へ進む。また、仮想ストレージ装置１０６がサスペンド状態で無い場合（ステップ６９０１のＮ）、処理はステップ２６０３へ進む。
【０４５１】
次に、物理ストレージ装置１２０は、仮想ストレージ装置１０６に対応する仮想制御部からタスクを算出する（ステップ２６０３）。
【０４５２】
次に、物理ストレージ装置は最終コマンド受信時刻を更新する。具体的には、制御プロセッサ１２４が、自動サスペンド情報６８０１を参照する。そして、制御プロセッサ１２４は、ホストコマンドを受信した仮想ボリュームの仮想ボリューム番号６８１１に対応する、最終コマンド受信時刻６８１２にホストコマンドを受信した時刻を入力する。
【０４５３】
以下の処理は図２６における処理と同様のため、説明は割愛する。
【０４５４】
図７０は、一定時間ホストからのホストコマンド命令が無い場合に、自動的に仮想ストレージ装置１０６のサスペンドを行う場合の、フローチャートである。
【０４５５】
ステップ７００２〜７００５は周期的に実行される（ステップ７００１）。一定時間経過するとステップ７００２の処理が開始される。
【０４５６】
次に、物理ストレージ装置１２０は、最終コマンド受信時刻６８１２をチェックする（ステップ７００２）。具体的には、制御プロセッサ１２４が、自動サスペンド情報６８０１を参照し、最終コマンド受信時刻６８１２をチェックする。
【０４５７】
次に、制御プロセッサ１２４は、自動サスペンド情報６８０１を参照し、閾値６８１３以上時間が経過しているかを判断する（ステップ７００３）。
【０４５８】
閾値６８１３以上時間が経過している場合（ステップ７００３のＹ）、仮想ストレージ装置１０６のサスペンド処理が実行される。また、閾値６８１３以上時間が経過していない場合（ステップ７００３のＮ）、処理はステップ７００５へ進む。
【０４５９】
すべての仮想ストレージ装置１０６について処理が実行された場合（ステップ７００５のＹ）、再びステップ７００１の処理が実行される。すべての仮想ストレージ装置１０６について処理が実行されていない場合（ステップ７００５のＮ）、他の仮想ストレージ装置１０６について、ステップ７００２の処理が実行される。
【０４６０】
図７１は、管理サーバ１０２のＧＵＩ画面３１０１である。
【０４６１】
図７１は、図３１と自動サスペンドの有無入力画面７１０１とサスペンド閾値入力画面７１０２が異なっている。
【０４６２】
仮想ストレージ装置１０６の管理者は、自動的にサスペンド処理を行う場合は“有”を、行わない場合は“無”を入力する。
【０４６３】
また、仮想ストレージ装置１０６の管理者は、サスペンド閾値を入力する。
【図面の簡単な説明】
【０４６４】
【図１】本発明の第１の実施形態に係る装置構成を示す図である。
【図２】本発明の第１の実施形態に係る仮想ストレージ装置を示す図である。
【図３】本発明の第１の実施形態に係る物理資源から資源、資源から仮想ストレージへのマッピングを示す図である。
【図４】本発明の第１の実施形態に係る制御部を示す図である。
【図５】本発明の第１の実施形態に係るＬＵＮセキュリティ情報を示す図である。
【図６】本発明の第１の実施形態に係るＬＵＮマッピング情報を示す図である。
【図７】本発明の第１の実施形態に係るプログラム制御情報を示す図である。
【図８】本発明の第１の実施形態に係る仮想ストレージ構成情報を示す図である。
【図９】本発明の第１の実施形態に係る物理ストレージ制御情報を示す図である。
【図１０】本発明の第１の実施形態に係る資源ボリューム制御情報を示す図である。
【図１１】本発明の第１の実施形態に係るパリティグループ制御情報を示す図である。
【図１２】本発明の第１の実施形態に係る物理ディスク制御情報を示す図である。
【図１３】本発明の第１の実施形態に係る資源キャッシュメモリ制御情報を示す図である。
【図１４】本発明の第１の実施形態に係る資源タスク制御情報を示す図である。
【図１５】本発明の第１の実施形態に係る仮想ストレージ資源管理情報を示す図である。
【図１６】本発明の第１の実施形態に係るストレージイメージデータを示す図である。
【図１７】本発明の第１の実施形態に係るメモリを示す図である。
【図１８】本発明の第１の実施形態に係るＷＷＮ情報を示す図である。
【図１９】本発明の第１の実施形態に係るホスト側の構成を示す図である。
【図２０】本発明の第１の実施形態に係る業務再開の全体を示す図である。
【図２１】本発明の第１の実施形態に係るホスト側の動作フローを示す図である。
【図２２】本発明の第１の実施形態に係るＷＷＮ変更通知プログラムを示す図である。
【図２３】本発明の第１の実施形態に係るＷＷＮ変更通知パケットを示す図である。
【図２４】本発明の第１の実施形態に係るＷＷＮ変更通知受信処理を示す図である。
【図２５】本発明の第１の実施形態に係るＷＷＮ変更通知情報を示す図である。
【図２６】本発明の第１の実施形態に係るホストコマンド処理を示す図である。
【図２７】本発明の第１の実施形態に係る仮想ストレージのサスペンドを示す図である。
【図２８】本発明の第１の実施形態に係る資源解放処理を示す図である。
【図２９】本発明の第１の実施形態に係る仮想ストレージのリジュームを示す図である。
【図３０】本発明の第１の実施形態に係る資源準備処理を示す図である。
【図３１】本発明の第１の実施形態に係る管理サーバのＧＵＩを示す図である。
【図３２】本発明の第２の実施形態に係るストレージ装置の電源境界を示す図である。
【図３３】本発明の第２の実施形態に係るパッケージ資源対応情報を示す図である。
【図３４】本発明の第２の実施形態に係る資源解放処理を示す図である。
【図３５】本発明の第２の実施形態に係る資源準備処理を示す図である。
【図３６】本発明の第３の実施形態に係るモジュール型ストレージ装置を示す図である。
【図３７】本発明の第３の実施形態に係るモジュール情報を示す図である。
【図３８】本発明の第３の実施形態に係る資源準備処理を示す図である。
【図３９】本発明の第３の実施形態に係るモジュール内要件チェック処理を示す図である。
【図４０】本発明の第３の実施形態に係る物理ストレージ装置内要件チェック処理を示す図である。
【図４１】本発明の第３の実施形態に係る資源確保処理を示す図である。
【図４２】本発明の第３の実施形態に係る管理サーバのＧＵＩを示す図である。
【図４３】本発明の第３の実施形態に係るマニュアル設定画面を示す図である。
【図４４】本発明の第３の実施形態に係る準備資源リストを示す図である。
【図４５】本発明の第４の実施形態に係るストレージ装置間リジュームを示す図である。
【図４６】本発明の第４の実施形態に係る業務再開の全体を示す図である。
【図４７】本発明の第４の実施形態に係る管理サーバのＧＵＩを示す図である。
【図４８】本発明の第５の実施形態に係る仮想ストレージ構成情報を示す図である。
【図４９】本発明の第５の実施形態に係る物理ディスク制御情報を示す図である。
【図５０（ａ）】本発明の第５の実施形態に係る資源準備処理を示す図である。
【図５０（ｂ）】本発明の第５の実施形態に係る資源準備処理を示す図である。
【図５１】本発明の第５の実施形態に係る要件入力画面（ＧＵＩ）を示す図である。
【図５２】本発明の第６の実施形態に係る管理サーバのＧＵＩを示す図である。
【図５３】本発明の第６の実施形態に係る資源予約情報を示す図である。
【図５４】本発明の第６の実施形態に係る資源予約指定時のサスペンド処理を示す図である。
【図５５】本発明の第６の実施形態に係る資源準備処理を示す図である。
【図５６】本発明の第７の実施形態に係る管理サーバのＧＵＩを示す図である。
【図５７】本発明の第７の実施形態に係るボリューム退避指定処理を示す図である。
【図５８】本発明の第７の実施形態に係る仮想ストレージ制御情報を示す図である。
【図５９】本発明の第７の実施形態に係るボリューム退避情報を示す図である。
【図６０】本発明の第７の実施形態に係る予約解除可否情報を示す図である。
【図６１】本発明の第７の実施形態に係る仮想ストレージのサスペンドを示す図である。
【図６２】本発明の第７の実施形態に係る仮想ストレージのリジュームを示す図である。
【図６３】本発明の第７の実施形態に係る資源準備処理を示す図である。
【図６４】本発明の第８の実施形態に係るライセンス警告画面（ＧＵＩ）を示す図である。
【図６５】本発明の第８の実施形態に係る物理ストレージ制御情報を示す図である。
【図６６】本発明の第８の実施形態に係るプログラムライセンス情報を示す図である。
【図６７】本発明の第８の実施形態に係るリジューム時にプログラムライセンスをチェックする処理を示す図である。
【図６８】本発明の第９の実施形態に係るホストコマンド処理を示す図である。
【図６９】本発明の第９の実施形態に係る周期的サスペンドチェック処理を示す図である。
【図７０】本発明の第９の実施形態に係る自動サスペンド情報を示す図である。
【図７１】本発明の第９の実施形態に係る管理サーバのＧＵＩを示す図である。
【符号の説明】
【０４６５】
１０１…ホストグループ、１０２…管理サーバ、１０３…ホスト、１０４…ポート、１０５…ネットワーク、１１９…ネットワーク、１２０…物理ストレージ装置、１２１…管理Ｉ／Ｆ、１２２…ポート、１２３…制御部、１２４…制御プロセッサ、１２５…制御メモリ、１２６…キャッシュメモリ、１２７…物理ドライブ、１２８…ポート、１２９…物理ストレージ装置（外部接続）、１３０…スロット
【図１】
2010066842.tif 000003
【図２】
2010066842.tif 000004
【図３】
2010066842.tif 000005
【図４】
2010066842.tif 000006
【図５】
2010066842.tif 000007
【図６】
2010066842.tif 000008
【図７】
2010066842.tif 000009
【図８】
2010066842.tif 000010
【図９】
2010066842.tif 000011
【図１０】
2010066842.tif 000012
【図１１】
2010066842.tif 000013
【図１２】
2010066842.tif 000014
【図１３】
2010066842.tif 000015
【図１４】
2010066842.tif 000016
【図１５】
2010066842.tif 000017
【図１６】
2010066842.tif 000018
【図１７】
2010066842.tif 000019
【図１８】
2010066842.tif 000020
【図１９】
2010066842.tif 000021
【図２０】
2010066842.tif 000022
【図２１】
2010066842.tif 000023
【図２２】
2010066842.tif 000024
【図２３】
2010066842.tif 000025
【図２４】
2010066842.tif 000026
【図２５】
2010066842.tif 000027
【図２６】
2010066842.tif 000028
【図２７】
2010066842.tif 000029
【図２８】
2010066842.tif 000030
【図２９】
2010066842.tif 000031
【図３０】
2010066842.tif 000032
【図３１】
2010066842.tif 000033
【図３２】
2010066842.tif 000034
【図３３】
2010066842.tif 000035
【図３４】
2010066842.tif 000036
【図３５】
2010066842.tif 000037
【図３６】
2010066842.tif 000038
【図３７】
2010066842.tif 000039
【図３８】
2010066842.tif 000040
【図３９】
2010066842.tif 000041
【図４０】
2010066842.tif 000042
【図４１】
2010066842.tif 000043
【図４２】
2010066842.tif 000044
【図４３】
2010066842.tif 000045
【図４４】
2010066842.tif 000046
【図４５】
2010066842.tif 000047
【図４６】
2010066842.tif 000048
【図４７】
2010066842.tif 000049
【図４８】
2010066842.tif 000050
【図４９】
2010066842.tif 000051
【図５０（ａ）】
2010066842.tif 000052
【図５０（ｂ）】
2010066842.tif 000053
【図５１】
2010066842.tif 000054
【図５２】
2010066842.tif 000055
【図５３】
2010066842.tif 000056
【図５４】
2010066842.tif 000057
【図５５】
2010066842.tif 000058
【図５６】
2010066842.tif 000059
【図５７】
2010066842.tif 000060
【図５８】
2010066842.tif 000061
【図５９】
2010066842.tif 000062
【図６０】
2010066842.tif 000063
【図６１】
2010066842.tif 000064
【図６２】
2010066842.tif 000065
【図６３】
2010066842.tif 000066
【図６４】
2010066842.tif 000067
【図６５】
2010066842.tif 000068
【図６６】
2010066842.tif 000069
【図６７】
2010066842.tif 000070
【図６８】
2010066842.tif 000071
【図６９】
2010066842.tif 000072
【図７０】
2010066842.tif 000073
【図７１】
2010066842.tif 000074