(57)【要約】【課題】差分スナップショットとボリュームスナップショットを併用して、差分ボリュームの消費を抑制することを目的とする。【解決手段】複数のプログラムから構成されたアプリケーションを提供するアプリケーションサーバと、プログラムが利用するデータを格納する第１のボリュームと、当該第１のボリュームの複製を格納するペア状態に設定された第２のボリュームを複数備え、複数のプログラムのうちのいずれかひとつを特定するとともに、前記特定したプログラムが利用する第１のボリュームを特定し（Ｓ１１）、前記第１のボリュームとペア状態に設定された全ての第２のボリュームを抽出して（Ｓ１４〜Ｓ１７）、前記抽出した第１のボリュームと第２のボリュームを前記プログラム毎に集計する（Ｓ１８）。【選択図】図１１
2006134164.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションを提供するアプリケーションサーバと、前記アプリケーションのデータを格納する第１のボリュームと、当該第１のボリュームの複製を格納するペア状態に設定された第２のボリュームを複数備えたストレージシステムの管理方法であって、
前記第１のボリュームを起点としてペア状態に設定された前記第２のボリュームを追跡する手順と、
前記第２のボリュームのペア状態を、前記追跡結果に基づいて集計する手順と、
を含むことを特徴とするストレージシステムの管理方法。
【請求項２】
前記アプリケーションサーバを複数備えるとともに、前記アプリケーションは複数のプログラムから構成されて前記複数のアプリケーションサーバでそれぞれ実行され、
前記第２のボリュームを追跡する手順は、
前記アプリケーションを特定する手順と、
前記特定したアプリケーションのプログラム毎にデータを格納する第１のボリュームを特定する手順と、
前記特定した第１のボリュームとペア状態に設定された全ての第２のボリュームを抽出する手順と、
を含み、
前記集計する手順は、
前記特定したアプリケーションのプログラム毎に、前記ペア状態に設定された前記第１のボリュームと第２のボリュームとを集計する手順を含むことを特徴とする請求項１に記載のストレージシステムの管理方法。
【請求項３】
前記第１のボリューム及び第２のボリュームの動作情報を収集する手順と、
前記動作情報に基づいて、前記ペア状態の障害または障害に至る状態を接続状態として検出する手順と、を有し、
前記集計する手順は、
前記特定したアプリケーションのプログラム毎に、前記ペア状態に設定された前記第１のボリュームと第２のボリュームと前記接続状態を集計する手順を含むことを特徴とする請求項２に記載のストレージシステムの管理方法。
【請求項４】
前記第１のボリュームと第２のボリュームと前記接続状態を集計する手順は、
前記第１及び第２のボリュームの接続状態のうち、最も状態の悪いものを前記プログラム毎に集約した接続状態として集計することを特徴とする請求項３に記載のストレージシステムの管理方法。
【請求項５】
前記ペア状態の障害または障害に至る状態を接続状態として検出する手順は、
前記第１のボリュームと前記プログラムを実行するアプリケーションサーバの経路情報を取得する手順と、
前記経路情報が一致する第１のボリュームを特定する手順と、を含み、
前記特定した第１のボリュームを障害または障害に至る状態の影響範囲として集計する手順を有することを特徴とする請求項３に記載のストレージシステムの管理方法。
【請求項６】
前記ペア状態の障害または障害に至る状態を接続状態として検出する手順は、
前記第１のボリュームとペア状態の第２のボリュームの経路情報を取得する手順と、
前記経路情報が一致する第１のボリュームを特定する手順と、を含み、
前記特定した第１のボリュームを障害または障害に至る状態の影響範囲として集計する手順を有することを特徴とする請求項３に記載のストレージシステムの管理方法。
【請求項７】
前記影響範囲として集計する手順は、前記接続状態に基づいて第１のボリュームと第２のボリュームのデータの整合性を設定する手順を含むことを特徴とする請求項５または請求項６に記載のストレージシステムの管理方法。
【請求項８】
複数のプログラムから構成されたアプリケーションを提供するアプリケーションサーバと、前記プログラムが利用するデータを格納する第１のボリュームと、当該第１のボリュームの複製を格納するペア状態に設定された第２のボリュームを複数備えたストレージシステムを管理するプログラムであって、
前記複数のプログラムのうちのいずれかひとつを特定する処理と、
前記特定したプログラムが利用する第１のボリュームを特定する処理と、
前記第１のボリュームとペア状態に設定された全ての第２のボリュームを抽出する処理と、
前記抽出した第１のボリュームと第２のボリュームを前記プログラム毎に集計する処理と、
をコンピュータに機能させることを特徴とするプログラム。
【請求項９】
前記第１のボリューム及び第２のボリュームの動作情報を収集する処理と、
前記動作情報に基づいて、前記ペア状態の障害または障害に至る状態を接続状態として検出する処理と、を有し、
前記集計する処理は、
前記特定したアプリケーションのプログラム毎に、前記ペア状態に設定された前記第１のボリュームと第２のボリュームと前記接続状態を集計する処理と、
を含むことを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記第１のボリュームと第２のボリュームと前記接続状態を集計する処理は、
前記第１及び第２のボリュームの接続状態のうち、最も状態の悪いものを前記プログラム毎に集約した接続状態として集計することを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記ペア状態の障害または障害に至る状態を接続状態として検出する処理は、
前記第１のボリュームと前記プログラムを実行するアプリケーションサーバの経路情報を取得する処理と、
前記経路情報が一致する第１のボリュームを特定する処理と、を含み、
前記特定した第１のボリュームを前記接続状態の影響範囲として集計する処理を有することを特徴とする請求項９に記載のプログラム。
【請求項１２】
前記ペア状態の障害または障害に至る状態を接続状態として検出する処理は、
前記第１のボリュームとペア状態の第２のボリュームの経路情報を取得する処理と、
前記経路情報が一致する第１のボリュームを特定する処理と、を含み、
前記特定した第１のボリュームを前記接続状態の影響範囲として集計する処理を有することを特徴とする請求項９に記載のプログラム。
【請求項１３】
前記影響範囲として集計する処理は、前記接続状態に基づいて第１のボリュームと第２のボリュームのデータの整合性を設定する処理を含むことを特徴とする請求項１１または請求項１２に記載のプログラム。
【請求項１４】
複数のプログラムから構成されたアプリケーションを提供するアプリケーションサーバと、
前記プログラムが利用するデータを格納する第１のボリュームと、当該第１のボリュームとペア状態に設定された第２のボリュームと、前記第１のボリュームの複製を第２のボリュームに作成するレプリケーション部と、前記第１のボリュームと第２のボリュームを管理する管理サーバとを備えたストレージシステムにおいて、
前記第２のボリュームは複数設定されて、
前記複数のプログラムのうちのいずれかひとつを選択して、前記特定したプログラムが利用する第１のボリュームを特定する第１ボリューム特定部と、を備え、
前記管理サーバは、
前記特定した第１のボリュームとペア状態に設定された全ての第２のボリュームを抽出するペアボリューム抽出部と、
前記抽出した第１のボリュームと第２のボリュームを前記プログラム毎に集計する集計部と、
を備えたことを特徴とするストレージシステム。
【請求項１５】
前記管理サーバは、
前記第１のボリューム及び第２のボリュームの動作情報を収集する処理と、
前記動作情報に基づいて、前記ペア状態の障害または障害に至る状態を接続状態として検出する接続状態検出部と、を有し、
前記集計部は、
前記特定したアプリケーションのプログラム毎に、前記ペア状態に設定された前記第１のボリュームと第２のボリュームと前記接続状態を集計することを特徴とする請求項１４に記載のストレージシステム。
【請求項１６】
前記接続状態検出部は、
前記第１及び第２のボリュームの接続状態のうち、最も状態の悪いものを前記プログラム毎に集約した接続状態として集計することを特徴とする請求項１５に記載のストレージシステム。
【請求項１７】
前記接続状態検出部は、
前記第１のボリュームと前記プログラムを実行するアプリケーションサーバの経路情報を取得するホスト側経路情報検出部と、
前記経路情報が一致する第１のボリュームを特定する影響範囲設定部と、を含み、
前記特定した第１のボリュームを前記接続状態の影響範囲として集計する第２の集計部を備えたことを特徴とする請求項１５に記載のストレージシステム。
【請求項１８】
前記接続状態検出部は、
前記第１のボリュームとペア状態の第２のボリュームの経路情報を取得するリモート側経路情報検出部と、
前記経路情報が一致する第１のボリュームを特定する影響範囲設定部と、を含み、
前記特定した第１のボリュームを前記接続状態の影響範囲として集計する第２の集計部を備えたことを特徴とする請求項１５に記載のストレージシステム。
【請求項１９】
前記影響範囲設定部は、前記接続状態に基づいて第１のボリュームと第２のボリュームのデータの整合性を設定することを特徴とする請求項１７または請求項１８に記載のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のボリューム間で、アプリケーションのデータを複製するストレージシステムに関する。
【背景技術】
【０００２】
ネットワークを経由して複数のサーバから統合化されたストレージ装置にアクセスするＳＡＮ（Storage Area Network）や、ＮＡＳ（Network  Attached  Storage）では、大規模化や高機能化が進みつつある。
【０００３】
高機能化の一例として、ストレージ装置に備えたリモートコピー機能を利用して、サーバ上で動作するアプリケーションのデータを、業務を継続しながら遠隔地などに複製（レプリケーション）を行い、冗長性を高める手法が知られている。
【０００４】
そして、複数のサーバが複数のストレージ装置を利用するため、ストレージ装置とネットワークからなるストレージシステムは大規模化、複雑化する傾向にあり、ストレージ装置を効率よく運用するため、ストレージ装置及びストレージ装置とサーバを接続するためのネットワークに発生する障害を迅速に検知するものが知られている（例えば、特許文献１）。
【０００５】
この従来例では、ストレージシステムを構成する機器からのイベント・メッセージを取得し、このイベント・メッセージの重要度に応じて、管理コンソールに障害を通知する。
【特許文献１】特開２００４−１３３８９７号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上記従来例では、障害の発生した位置、すなわち、機器を特定することはできるが、この障害が発生した結果、リモートコピー機能を行ったレプリケーションについては、どのような影響が発生したかを知ることができない、という問題がある。
【０００７】
すなわち、ストレージシステムを管理する管理者（以下、ストレージ管理者）は、障害の発生した機器を特定し、その機器について修復を行えばよい。一方、サーバ上の業務（アプリケーション）を管理する管理者（以下、アプリケーション管理者）は、ストレージシステムに発生した障害により、各アプリケーション毎のレプリケーションにどのような影響があったのかを把握し、データの整合性を確保する必要がある。
【０００８】
しかしながら、大規模化したストレージシステムにおいて、レプリケーションに関連する障害が発生した場合、アプリケーション管理者が障害の位置を知ったとしても、特定のアプリケーションが利用しているストレージ装置のボリュームと、このボリュームのレプリケーション先のボリュームまでのレプリケーション関係にどのような影響があるかを調査するのは極めて難しい。また、複数のアプリケーションについてレプリケーションを行っている環境では、同一のボリュームを複数のアプリケーションで利用する場合もあり、このような環境では、レプリケーション関係に対して、ストレージシステムに発生した障害による影響範囲を把握することは極めて難しいという問題があった。
【０００９】
そこで本発明は、上記問題点に鑑みてなされたもので、アプリケーション管理者がアプリケーション毎のレプリケーションに関する障害を容易かつ迅速に把握することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、複数のプログラムから構成されたアプリケーションを提供するアプリケーションサーバと、前記プログラムが利用するデータを格納する第１のボリュームと、当該第１のボリュームの複製を格納するペア状態に設定された第２のボリュームを複数備え、前記複数のプログラムのうちのいずれかひとつを特定し、前記特定したプログラムが利用する第１のボリュームを特定し、前記第１のボリュームとペア状態に設定された全ての第２のボリュームを抽出して、前記抽出した第１のボリュームと第２のボリュームを前記プログラム毎に集計する。
【００１１】
また、前記第１のボリューム及び第２のボリュームの動作情報を収集し、前記動作情報に基づいて、前記ペア状態の障害または障害に至る状態を接続状態として検出して、前記特定したアプリケーションのプログラム毎に、前記ペア状態に設定された前記第１のボリュームと第２のボリュームと前記接続状態を集約して集計する。
【発明の効果】
【００１２】
したがって、本発明は、特定のプログラムが使用しているボリュームと、このボリュームからペア状態に設定される全てのボリュームに対するペア状態（レプリケーション関係）を監視し、データのレプリケーションに問題が発生していないかを監視することができる。
【００１３】
また、アプリケーション管理者は自分の管理しているアプリケーションのデータ、およびその複製先においてペア状態に異常が発生しているかどうかを集約された情報により一目で確認することができ、アプリケーション毎のレプリケーションに関する障害を容易かつ迅速に把握することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１５】
図１は、本発明を適用するシステム構成図である。ＬＡＮ（Local Area Network）６には、アプリケーションプログラムを実行するアプリケーションサーバ２〜４と、ストレージ装置及びＳＡＮ（Storage Area Network）７を管理する管理サーバ１と、アプリケーションサーバ２〜４のアプリケーションプログラムを管理するアプリケーション管理端末５と、ストレージ装置（ストレージサブシステム）１００００から１０００３が接続されている。なお、ＬＡＮ６は、例えば、ＴＣＰ／ＩＰネットワークなどで構成される。また、ＳＡＮ７は、例えば、ＦＣ（Fiber Channel）で構成され、ＳＡＮ７を構成するＦＣスイッチ（図示省略）などもＬＡＮ６に接続される。
【００１６】
各アプリケーションサーバ２〜４は、ＳＡＮ７を介してストレージ装置１００００〜１０００３に接続され、データなどの読み書きを行う。管理サーバ１は、ＬＡＮ６を介してストレージ装置１００００〜１０００３やＦＣスイッチの設定や、動作情報（性能情報）の収集を行う。アプリケーション管理端末５は、後述するように、アプリケーションサーバ２〜４を管理するアプリケーション管理者などが指定したアプリケーションについて、レプリケーション関係をアプリケーションサーバ２〜４と管理サーバ１に問い合わせ、管理サーバ１からレプリケーション関係の整合性などを含む情報得て、アプリケーション管理者に通知する。
【００１７】
図１のシステム構成において、管理サーバ１は、ＣＰＵ１１、メモリ１２、ＬＡＮインターフェース１４及びディスク装置１３が設けられている。そして、ＬＡＮインターフェース１４を介して管理サーバ１がＬＡＮ６に接続される。メモリ１２には後述するような制御プログラムがロードされており、ＣＰＵ１１が制御プログラムを呼び出して実行することによって後述する各種処理が行われる。
【００１８】
アプリケーションサーバ２は、ＣＰＵ２１、メモリ２２、ＳＡＮ７に接続されるＳＡＮインターフェース２３、ＬＡＮインターフェース２４が設けられている。アプリケーションサーバ２はＳＡＮインターフェース２３を介してＳＡＮ７上のストレージ装置１００００〜１０００３にアクセスし、データの読み書きを行う。アプリケーションサーバ２のメモリ２２には後述するようなアプリケーションプログラムがロードされており、ＣＰＵ２１がアプリケーションプログラムを呼び出して実行することによって、ＬＡＮ６上の図示しないクライアントに業務を提供する。
【００１９】
なお、アプリケーションサーバ３、４も上記アプリケーションサーバ２と同様に構成され、所定のアプリケーションプログラムを実行し、ＳＡＮ７を介してストレージ装置１００００〜１０００３にデータのアクセスを行い、ＬＡＮ６上の図示しないクライアントに業務を提供する。
【００２０】
次に、ストレージ装置（ストレージサブシステム）１００００は、ディスク装置１０４と、ディスク装置１０４を制御するディスクコントローラ１００を含んで構成されている。
【００２１】
図１において、ストレージ装置１００００のディスクコントローラ１００には、ＣＰＵ、メモリ、キャッシュ、ＳＡＮインターフェース１０１に接続されるポート１０２、ＬＡＮインターフェース１０３及びディスクインターフェース１０５が設けられている。ディスクコントローラ１００はディスクインターフェースを介して、ディスク装置１０４に接続され、ディスク装置１０４に設定されたボリュームにアクセスする。なお、ディスク装置１０４は、複数のディスクを備えている。
【００２２】
ポート１０２はＳＡＮ７に接続されて、アプリケーションサーバ２〜４との間でデータの送受を行う。また、ＬＡＮインターフェース１０３を介してＬＡＮ６に接続され、管理サーバ１の指令に応じて、ディスク装置１０４のボリューム（記憶領域）の設定や動作情報の収集等を行う。なお、ポート１０２の詳細については、後述するように、アプリケーションサーバ２〜４と通信を行うためのホスト側ポートと、レプリケーション先のストレージ装置と通信するためのリモート側ポートが設けられる。
【００２３】
ディスクコントローラ１００のメモリには制御プログラムがロードされており、ＣＰＵ１０１が制御プログラムを呼び出して実行することによって、管理サーバ１の指令に基づくボリュームの設定処理や、ボリューム間またはストレージ装置間のリモートコピー（シャドウイメージ、ユニバーサルレプリケーション、トゥルーコピー）や、各ボリュームまたは各ポートの動作情報の取得処理等が行われる。なお、ユニバーサルレプリケーションは、ジャーナル・ファイル（アプリケーションサーバ２〜４からの書き込みデータの履歴情報）の転送によるリモート・コピーを指す。
【００２４】
また、ストレージ装置１０００１〜１０００３も上記ストレージ装置１００００と同様に構成され、所定の制御プログラムを実行し、ＳＡＮ７を介してアプリケーションサーバ２〜４からの要求に応じて、ディスク装置２０４、３０４、４０４上に設けられたボリュームにアクセスする。
【００２５】
そして、各ストレージ装置１００００〜１０００３間では、後述するように、各ディスク装置のボリューム間でレプリケーションの関係が設定されている。
【００２６】
＜ソフトウェア構成＞
次に、図２を参照しながら、本実施形態のソフトウェア構成について説明する。
【００２７】
アプリケーションサーバ２〜４上のアプリケーションプログラムは、所定のストレージ装置のボリュームにデータを格納し、後述するように、このボリュームには、他のボリュームへレプリケーションを作成するペアボリュームが設定される。すなわち、アプリケーションサーバ２〜４が読み書きを行うボリュームをプライマリボリュームとすると、このプライマリボリュームの内容を他のボリューム（セカンダリボリュームとする）に書き込んでレプリケーションを作成する関係を、本実施形態では、ペア状態（またはペアボリューム）という。さらに、このセカンダリボリュームの内容を他のボリュームに書き込んで、プライマリボリュームのレプリケーションを作成する場合も、ペア状態に含まれるものとする。また、ペア状態は、同一のストレージ装置内のボリューム間や、異なるストレージ装置のボリューム間に適用でき、異なるストレージ装置間でレプリケーションの連鎖を行う場合（ペア状態のカスケード）も、ペア状態に含むものとする。
【００２８】
本実施形態では、アプリケーションサーバ２〜４上のアプリケーションプログラムから見たボリューム間のペア状態を監視し、ペア状態の異常を検出し、アプリケーション管理者に通知するものである。
【００２９】
まず、管理サーバ１では、ＳＡＮ７に接続されたストレージ装置１００００〜１０００３を管理するストレージ管理プログラム１５が稼動しており、このストレージ管理プログラム１５は、アプリケーション単位でボリューム間のペア状態と動作状態を監視して異常を検出し、アプリケーション管理端末５に、監視結果を通知する。
【００３０】
このため、ストレージ管理プログラム１５は、所定の周期などで各ストレージ装置１００００〜１０００３の構成情報（例えば、ボリュームの構成や、パスの構成）を各ディスクコントローラ１００〜４００より収集し、同様に所定の周期などで各ストレージ装置１００００〜１０００３の動作情報（例えば、ボリューム毎のＩ／Ｏ頻度、スループットやサイドファイル使用率）をディスクコントローラ１００〜４００より収集して構成情報・動作情報テーブル１６を更新する。なお、ストレージ管理プログラム１５は、上記の他に、ストレージ装置１００００〜１０００３毎のボリューム構成等を設定・変更する機能を有していても良い。なお、上記動作情報のＩ／Ｏ頻度は、Ｉ／Ｏバイト数／sec等で示され、スループットは、各ボリュームのデータ転送速度（ｋＢ／sec）等で表される値である。また、サイドファイル使用率は、各ペア状態のコピーに使用しているディスクコントローラのデータキャッシュの比率を示し、サイドファイル使用率が低ければ、コピーの際にデータの書き込みが円滑に行われ、逆に高ければデータの書き込みに用いるポートのスループットが低下した場合などを示すことができる。
【００３１】
管理サーバ１に監視されるストレージ装置１００００〜１０００３のディスクコントローラ１００〜４００には、各ストレージ装置のボリューム構成等を管理する構成情報管理部１１０〜４１０と、各ボリュームの動作情報を管理する動作情報管理部１２０〜４２０を備えている。そして、管理サーバ１は、各ストレージ装置１００００〜１０００３のディスクコントローラ１００〜４００に対して、所定の周期などで構成情報と動作情報を問い合わせて収集する。なお、ストレージ装置１００００〜１０００３のディスクコントローラ１００〜４００が、所定の周期で構成情報と動作情報を管理サーバ１へ通知するようにしても良い。
【００３２】
次に、アプリケーションサーバ２〜４では、それぞれアプリケーションプログラムが稼動している。例えば、アプリケーションサーバ２では、アプリケーションＡＰＰ１が実行され、アプリケーションサーバ２では、アプリケーションＡＰＰ２が実行され、アプリケーションサーバ３では、アプリケーションＡＰＰ３が実行されている。アプリケーションは、一般に複数のプログラムから構成される場合があるので、例えば、アプリケーションサーバ２のアプリケーションＡＰＰ１は、アプリケーションプログラムＡＰＰ１−１.exeとアプリケーションプログラムＡＰＰ１−２.exeから構成される場合を示し、アプリケーションサーバ３、４のアプリケーションＡＰＰ２、３はそれぞれ単一のアプリケーションプログラムＡＰＰ２−１.exeとアプリケーションプログラムＡＰＰ３−１.exeから構成される場合を示している。
【００３３】
さらに、アプリケーションサーバ２〜４では、各アプリケーションＡＰＰ１〜３を管理するアプリケーション管理プログラム２５、３５、４５が各アプリケーションサーバの監視エージェントとして稼動している。
【００３４】
各アプリケーション管理プログラム２５〜４５は、各アプリケーション名を遂行するプログラム一覧、各プログラムが使用するストレージ装置１００００〜１０００３のボリューム一覧、それらのボリュームが当該アプリケーションの他のプログラム及または他アプリケーションのプログラムに共有されているかを示す情報を構成情報テーブル２６、３６、４６として各アプリケーションサーバ毎に管理している。
【００３５】
このアプリケーションプログラム２５〜４５は、アプリケーション管理端末５からの指令に応じて、構成情報テーブル２６、３６、４６の情報を管理サーバ１へ通知する。
【００３６】
アプリケーション管理端末５では、アプリケーションサーバ２〜４の各アプリケーション毎のペア状態を監視するための監視プログラム５５が稼動している。この監視プログラム５５は、各アプリケーションサーバ２〜４で遂行されるアプリケーション名に対応するアプリケーションプログラムの一覧（アプリケーション構成情報テーブル５５０）を有しており、アプリケーション管理者がプログラム名を指定した場合には、このアプリケーションテーブルからアプリケーション名に対応するアプリケーションプログラムを抽出する。そして、各アプリケーションプログラムを実行するアプリケーションサーバ２〜４のアプリケーション管理プログラムに対して、アプリケーションプログラムの構成情報を管理サーバ１へ通知するよう指令する。
【００３７】
そして、管理サーバ１のストレージ管理プログラム１５がアプリケーション名毎に、ペア状態について参照した結果を、アプリケーション管理端末５の監視プログラム５５に返信する。監視プログラム５５はストレージ管理プログラム１５から受信した監視結果を、アプリケーション管理端末５の図示しない表示装置などに表示する。
【００３８】
＜ボリューム構成＞
次に、各ストレージ装置１００００〜１０００３に設定されたボリュームの構成及びペア状態の一例について、図３を参照しながら説明する。
【００３９】
図３において、ストレージ装置１００００のディスク装置１０４には、ボリューム００１、０１０、０２０が設定される。同様に、ストレージ装置１０００１のディスク装置２０４には、ボリューム００２、０１１、０２１が設定され、ストレージ装置１０００２のディスク装置３０４にはボリューム００３、００４、０１２が設定され、ストレージ装置１０００３のディスク装置４０４には、ボリューム００５が設定される。
【００４０】
そして、ストレージ装置１００００では、ホスト側ポートとしてポートＣＬ１−Ａが設けられ、ボリューム００１、０１０、０２０が接続されて、アプリケーションサーバ２〜４と通信を行う。さらに、ボリューム００１と０２０は、リモート側ポートとしてのポートＣＬ１−Ｄを介してストレージ装置１０００１に接続される。
【００４１】
ストレージ装置１０００１では、ホスト側ポートとしてポートＣＬ１−ＢとＣＬ２−Ｂが設けられ、ボリューム００２がポートＣＬ１−Ｂに接続され、ボリューム０１１がポートＣＬ２−Ｂに接続されて、アプリケーションサーバ２〜４と通信を行う。さらに、ボリューム００２と０１１は、リモート側ポートとしてのポートＣＬ１−Ｅを介してストレージ装置１０００２に接続される。
【００４２】
ここで、ストレージ装置１００００のボリューム００１はペア状態のプライマリ（コピーもと）となり、ストレージ装置１０００１のボリューム００２はペア状態のセカンダリ（コピー先）に設定され、ボリューム００１のレプリケーションをボリューム００２に作成するペア状態が設定される。なお、このペア状態は、管理サーバ１により予め設定されるものである（以下同様）。
【００４３】
同様に、ストレージ装置１００００のボリューム０１０とストレージ装置１０００１のボリューム０１１もペア状態（コピー関係）に設定され、ストレージ装置１００００のボリューム０２０は、ストレージ装置１０００１のボリューム０２１とペア状態に設定される。ただし、ボリューム０２１はホスト側ポートがないので、ボリューム０２０と０２１のペア状態は、Simplex（図中ＳＭＰＬ）となる。
【００４４】
次に、ストレージ装置１０００２では、ホスト側ポートとしてポートＣＬ２−ＢとＣＬ１−Ａが設けられ、ボリューム００３がポートＣＬ２−Ｂに接続され、ボリューム００４がポートＣＬ１−Ａに接続されて、アプリケーションサーバ２〜４と通信を行う。さらに、ボリューム０１２は、リモート接続用ポートを介してストレージ装置１０００１に接続される。
【００４５】
ここで、ストレージ装置１０００２のボリューム００３と００４は、ボリューム００３がプライマリとなるペア状態（ローカルコピー）に設定される。
【００４６】
また、ストレージ装置１０００１のボリューム００２はペア状態のプライマリ（コピーもと）となり、ストレージ装置１０００２のボリューム００３はペア状態のセカンダリ（コピー先）に設定され、ボリューム００２のレプリケーションをボリューム００３に作成し、さらに、ボリューム００３のレプリケーションをボリューム００４に作成するペア状態のカスケードが設定される。
【００４７】
また、ストレージ装置１０００１のボリューム０１１とストレージ装置１０００２のボリューム０１２もペア状態に設定される。
【００４８】
最後に、ストレージ装置１０００３のボリューム００５はリモート接続用ポートを介してストレージ装置１０００２に接続され、ボリューム００４とボリューム００５がペア状態に設定される。
【００４９】
すなわち、ボリューム００１のデータは、ボリューム００２、００３、００４、００５のペア状態のカスケードによりレプリケーションが行われる。また、ボリューム０２１のデータはボリューム０２１にレプリケーションが作成される単純なペア状態に設定される。また、ボリューム０１０のデータは、ボリューム０１１、０１２に順次レプリケーションが行われるペア状態のカスケードが設定される。
【００５０】
次に、アプリケーションサーバ２〜４とストレージ装置１００００〜１０００３のボリュームの関係は、図４のアプリケーション構成情報テーブル５５０の例のように設定される。なお、このアプリケーション構成情報テーブル５５０は、アプリケーション管理者などがアプリケーション管理端末５から予め設定するものである。
【００５１】
この例では、アプリケーションＡＰＰ１のプログラムＡＰＰ１−１.exeとアプリケーションＡＰＰ３のプログラムＡＰＰ３−１.exeがストレージ装置１００００のボリューム００１を使用し、アプリケーションＡＰＰ１のプログラムＡＰＰ１−２.exeがストレージ装置１００００のボリューム０２０を使用し、アプリケーションＡＰＰ２のプログラムＡＰＰ２−１.exeがストレージ装置１００００のボリューム０１０を使用する。
【００５２】
＜概要＞
次に、アプリケーション管理端末５の監視プログラム５５とアプリケーションサーバ２〜４のアプリケーション管理プログラム２５〜４５及び管理サーバ１で行われるアプリケーションから見たボリュームのペア状態監視について、まず、全体的な動作を説明する。
【００５３】
まず、管理サーバ１は、事前又は定期的に、ストレージ装置１００００〜１０００３の各ディスクコントローラから構成情報、動作情報を収集し、管理サーバ１の構成情報・動作情報テーブル１６に格納する。構成情報・動作情報テーブル１６の中には、ボリュームのペア関係の連鎖（カスケードの構成）、割り当てられているポートの関係等を含み、その動作情報には、ペア状態、コピーの方向、Ｉ／Ｏ頻度、サイドファイル使用率、ポート間のスループット情報等を含む（図２のＳ１）。
【００５４】
この構成情報・動作情報テーブル１６の一例を図５に示す。図５において、プライマリ欄１６１１には、コピー元となるボリュームの識別子とストレージ装置（ストレージサブシステム）の識別子が格納され、セカンダリ欄１６１２にはコピー先となるボリュームの識別子とストレージ装置の識別子が格納される。ホスト側ポートＩＤ１６１３には、プライマリ欄１６１１に指示されたボリュームのホスト側ポートの識別子が格納され、リモート側ポートＩＤ１６１４には、プライマリ欄１６１１に指示されたボリュームのリモート側ポートの識別子が格納される。
【００５５】
そして、接続状態１６１５には、プライマリ欄１６１１のボリューム（以下、プライマリボリューム）とセカンダリ欄１６１２のボリューム（以下、セカンダリボリューム）の接続状態が格納される。この接続状態は、例えば、「ＣＯＰＹ」がレプリケーション（シャドウイメージ）が正常な状態を示し、「ＥＲＲＯＲ」はレプリケーションに問題（障害）が生じた場合を示し、「ＳＭＰＬ」は上記Simplexが正常な状態を示し、「ＷＡＲＮ」はレプリケーションに問題（障害）の生じる恐れがある場合を示し、「ＰＡＩＲ」はレプリケーション（ユニバーサルレプリケーション）が正常な状態を示す。
【００５６】
Ｉ／Ｏ頻度１６１６は、プライマリボリュームのホスト側ポートの単位時間当たりのＩ／Ｏ転送量を示し、スループット１６１７はプライマリボリュームとセカンダリボリューム間の単位時間当たりのデータ転送速度を示し、サイドファイル使用率１６１８はペア状態のレプリケーションに用いるキャッシュの使用率を示す。なお、Ｉ／Ｏ頻度１６１６とスループット１６１７は、ホスト側ポートとリモート側ポートのそれぞれについて動作情報取得しても良い。
【００５７】
次に、アプリケーション管理者は、アプリケーション端末５から監視対象のアプリケーション名（業務名、アプリケーションプログラム名でも良い）を入力する（図２のＳ２）。
【００５８】
アプリケーション管理端末５には、予めアプリケーション構成情報テーブル５５０が設定されている。このアプリケーション構成情報テーブル５５０は、アプリケーション名５５１に対応するプログラムの識別子を格納するプログラム名５５２と、プログラム識別子で指し示すプログラムが使用するストレージ装置のボリューム識別子を格納するボリュームＩＤ５５３と、当該ボリュームＩＤを使用する他のアプリケーション名を格納する共有アプリケーション名５５４と、ボリュームＩＤで指示されたボリュームとペア状態にあるボリュームの状態が、電子メールにより通知（警告）を行うレベルを格納する通知レベル５５５と、通知を行う電子メールアドレスを格納する送付先５５６と、アプリケーション名５５１を実行するアプリケーションサーバの識別子を示すサーバ名５５７とから構成される。
【００５９】
上記入力がアプリケーションプログラム名ならば、監視プログラム５５は図４に示すアプリケーション構成情報テーブル５５０を参照し、プログラム名５５２に該当するアプリケーションサーバ２のアプリケーション管理プログラム２５〜４５へ、当該プログラムの監視を通知する（図２のＳ３）。また、上記入力がアプリケーション名であれば、アプリケーション構成情報テーブル５５０を参照し、アプリケーション名５５１に該当するプログラム名５５２を抽出し、当該プログラムを実行するアプリケーションサーバのアプリケーション管理プログラム２５〜４５へそれぞれ当該プログラムの監視を通知する。
【００６０】
各アプリケーションサーバ２〜４では、アプリケーション管理端末５からのアプリケーション名またはプログラム名の特定に応じて、アプリケーション管理プログラム２５〜４５が構成情報テーブル２６〜４６を参照し、該当するプログラム名についてボリューム等の情報を取得する（図２のＳ４）。
【００６１】
ここで、構成情報テーブル２６〜４６は、上記図４に示したアプリケーション管理端末５のうち、アプリケーション名５５１、プログラム名５５２、ボリュームＩＤ５５３、共有アプリケーション名５５４から構成され、各アプリケーションサーバで実行しているアプリケーション名についての情報を有するテーブルである。
【００６２】
そして、アプリケーション管理プログラム２５〜４５は、該当するアプリケーション名について、各プログラムが使用するボリューム一覧と、それらのボリュームが当該アプリケーションの他のプログラム又は他アプリケーションのプログラムに共有されているかを示す情報を、管理サーバ１に送る（図２のＳ５）。
【００６３】
管理サーバ１のストレージ管理プログラム１５は、各アプリケーションサーバ２〜４から受け取ったボリューム一覧について、構成情報・動作情報テーブル１６を参照し、ボリューム一覧の各ボリュームに関してペア状態（ペアボリューム）の構成情報、及びそれらの動作状態を上記テーブル１６から読み出す（図２のＳ６）。
【００６４】
管理サーバ１は、読み出したペア状態の構成情報と動作情報から、指定されたアプリケーション名に対応するプログラム一覧、各プログラムが使用するボリューム一覧、それらのボリュームが当該アプリケーションの他のプログラムまたは他アプリケーションのプログラムに共有されているかを示す情報と、ボリューム一覧の各ボリュームに関するペア情報、およびカスケードに含まれるボリュームの構成情報及び、それらの動作状態から、図６で示すように、プログラム名毎にボリュームのペア状態を集計し、各ペア状態の集約した接続状態を示すペア状態表示テーブル１７を生成し、アプリケーション管理端末５へ送信する（図２のＳ７）。なお、図６はアプリケーション管理端末５で、アプリケーション名としてＡＰＰ１を入力したときの結果を示す。
【００６５】
この図６に示すペア状態表示テーブル１７は、アプリケーション名５６１を構成するプログラムの識別子を格納するプログラム名５６２と、このプログラムが使用するペア状態のボリュームの識別子を一対で格納するペア名５６３と、各ペア毎の接続状態を格納する接続状態５６４と、各プログラム名毎にペアの接続状態を集約した接続状態（集約）５６５から構成される。
【００６６】
このペア状態表示テーブル１７の接続状態（集約）５６５は、アプリケーション名５６１を構成する全てのペアのうち最も悪い状態を抽出したもので、例えば、「ＥＲＲＯＲ」が最悪の状態を示し、「ＷＡＲＮ」が次に悪い状態を示し、その他が正常の状態の場合、図６のアプリケーションＡＰＰ１では、ペア名５６３のうち接続状態５６４が「ＥＲＲＯＲ」となっているペア名５６３の００２−００３の状態が、アプリケーションＡＰＰ１を代表するペアの状態として、監視プログラム５５は「ＥＲＲＯＲ」を接続状態（集約）５６５に格納する。
【００６７】
そして、管理サーバ１のストレージ管理プログラム１５は、上記のように編集されたペア状態表示テーブル１７の情報を、アプリケーション管理端末５に送信する（図２のＳ７）。この情報を受信したアプリケーション管理端末５の監視プログラム５５は、図示しない表示装置に上記ペア状態表示テーブル１７を表示して、アプリケーション毎に集約されたペア状態をアプリケーション管理者などに通知する（図２のＳ８）。
このペア状態表示テーブル１７を受信したアプリケーション管理端末５の監視プログラム５５は、ペア状態表示テーブル１７から各ペア名の接続状態５６４と、アプリケーション構成情報テーブル５５０の通知レベル５５５を比較し、該当するペアの接続状態５６４が、通知レベル５５５で設定された状態または設定された状態よりも悪いときには、所定の電子メール通知先５５６に対して、該当するアプリケーション名とペア状態と接続状態を含む電子メールを送信し、アプリケーション管理者に警告あるいは異常を通知する。
【００６８】
さらに、管理サーバ１は、ペア状態表示テーブル１７の接続状態５６４にＷＡＲＮまたはＥＲＲＯＲがあれば、アプリケーションのレプリケーションに影響する範囲の特定を以下のように行う。
【００６９】
レプリケーション関係の影響範囲特定とは、監視対象となるアプリケーションに関連するペアボリュームの状態に対して異常が発生した、もしくは異常が発生しそうな場合に、アプリケーション管理者が対処を行なう必要のある範囲と、問題が影響を及ぼすと思われる範囲を選択的に表示する機能である。このとき、ストレージ管理プログラム１５は発生した現象に関連する動作情報を取得し、その結果に応じて影響範囲の絞込みを行なうため、表面上、発生した現象が同じであった場合にも、その時の状況によって絞込みの行なわれる範囲は異なる。
【００７０】
以下に、ストレージ管理プログラム１５が影響範囲を特定する例を二つ示す。なお、影響範囲の絞込みを行う処理の詳細については後述する。
【００７１】
１．Ｉ／Ｏ過多の場合
まず、アプリケーションのディスクＩ／Ｏ過多によるペア状態の異常発生の場合について説明する。
【００７２】
アプリケーション管理プログラム２５〜４５において「アプリケーションＡＰＰ２」が監視対象となっている場合に、ストレージ管理プログラム１５が、上記図５において、ペア「０１０−０１１」のペア状態が「ＷＡＲＮ」になっていることを検知した時点で、ストレージ管理プログラム１５は表示情報の絞込みを行なうための追加情報取得を開始する。
【００７３】
ペア状態が「ＷＡＲＮ」になる理由としては、大別して「ペアを連結するための接続に何らかの問題が発生した」か、「ペアのコピー元となるボリュームへの書き込みが多すぎるために、コピー処理（レプリケーション）に遅延が発生している」可能性が考えられる。そこで、ストレージ管理プログラム１５は上記図５から「Ｉ／Ｏ頻度１６１６」、および「スループット１６１７」の統計情報を取得し、これらの値に対して急激な変化が発生していないかを調べる。本例の場合、Ｉ／Ｏ頻度１６１６がここ最近で大きく増えていることが統計情報から分かったとすると、ストレージ管理プログラム１５は、ボリューム「０１０」がホスト接続に使用しているポート「ＣＬ１−Ａ」に属しているボリューム「００１」、「００４」を上記図５の構成情報・動作情報テーブル１６から抽出し、「対処を行なう必要のある範囲」として適切であると判断する。すなわち、図９で示すような状態である。
【００７４】
そして、図７に示した警告表示用テーブル１８に必要な情報を格納した上で、アプリケーション管理端末５に、この警告表示テーブル１８の情報を送る。そして、アプリケーション管理端末５の監視プログラム５５は、受信した警告表示テーブル１８を表示装置に出力する。
【００７５】
なお、図７の影響範囲表示テーブル１８は、コピー元となるボリュームの識別子とストレージ装置（ストレージサブシステム）の識別子を格納するプライマリ欄１８０１と、コピー先となるボリュームの識別子とストレージ装置の識別子が格納されるセカンダリ欄１８０２と、プライマリ欄１８０１に指示されたボリュームにアクセスを行うアプリケーション名を格納する関連アプリケーション名１８０３と、プライマリ欄１８０１に指示されたボリュームのホスト側ポートの識別子を格納するホスト側ポートＩＤ１８０４と、ホスト側ポートＩＤ１８０４のＩ／Ｏ頻度１８０５と、同じくホスト側ポートのスループット１８０６と、ペア状態のレプリケーションに用いるキャッシュの使用率を格納するサイドファイル使用率１８０９と、プライマリ側のデータの整合性を格納するデータ整合性（プライマリ）１８０８と、セカンダリ側のデータの整合性を格納するデータ整合性（セカンダリ）１８０９とからなる。なお、ここではプライマリのボリュームとホスト（アプリケーションサーバ）側の経路情報としてポートＩＤを用いたが、パス情報などとしてもよい。
【００７６】
アプリケーション管理者は、アプリケーション管理端末５の表示装置に表示された影響範囲表示テーブル１８により、アプリケーション「ＡＰＰ２」が使用しているボリューム「０１０」に対する負荷分散を行なうと共に、アプリケーション「ＡＰＰ１」、および「ＡＰＰ３」に関連するボリュームのホスト接続用の割り当てポートを変えることで、アプリケーションの性能劣化を未然に防ぐことができる。またこのとき、ペア「０１０−０１１」でのレプリケーション自体には異常が発生していないため、このペアボリュームとカスケード構成になっているペア「０１１−０１２」に関連するアプリケーション情報は影響範囲表示テーブル１８に含まれない。
【００７７】
２．断線の場合
次に、ＳＡＮ７を構成するファイバチャネルケーブル断線によりペア状態に異常が発生した場合を示す。
【００７８】
アプリケーション管理プログラム２５〜４５において「ＡＰＰ１」が監視対象となっている場合に、ストレージストレージ管理プログラム１５が上記図５において、「００２−００３」のペア状態が「ＥＲＲＯＲ」になっていることを検知した時点で、ストレージ管理プログラム１５は表示情報の絞込みを行なうための追加情報取得を開始する。
【００７９】
ペア状態が「ＥＲＲＯＲ」になる理由としては、大別して「ペアを連結するための接続に何らかの問題が発生した」か、「ペアのコピー元となるボリュームへの書き込みが多すぎるために、コピー処理に遅延が発生している」可能性が考えられる。
【００８０】
そこで、ストレージ管理プログラム１５は上記図５の構成情報・動作情報テーブル１６から「Ｉ／Ｏ頻度１６１６」、および「スループット１６１７」の統計情報を取得し、これらの値に対して急激な変化が発生していないかを調べる。本例の場合、スループット１６１７がある時点を境にして「０」になっていることが統計情報から分かったため、ストレージ管理プログラム１５は、ボリューム「００２」がリモートコピー用に使用しているリモート側のポート「ＣＬ１−Ｅ」に属しているペア「０１１−０１２」が「対処を行なう必要のある範囲」として適切であると判断する。すなわち、図１０で示すような状態である。
【００８１】
そして、図８の影響範囲表示テーブル１９に必要な情報を格納した上で、アプリケーション管理端末５にこの影響範囲表示テーブル１９の情報を送る。影響範囲表示テーブル１９を受信したアプリケーション管理端末５の監視プログラム５５は、表示装置上に影響範囲表示テーブル１９を出力する。
【００８２】
なお、図８の影響範囲表示テーブル１９は、コピー元となるボリュームの識別子とストレージ装置（ストレージサブシステム）の識別子を格納するプライマリ欄１９０１と、コピー先となるボリュームの識別子とストレージ装置の識別子が格納されるセカンダリ欄１９０２と、プライマリ欄１９０１に指示されたボリュームにアクセスを行うアプリケーション名を格納する関連アプリケーション名１９０３と、プライマリ欄１９０１に指示されたボリュームのリモート側ポートの識別子を格納するリモート側ポートＩＤ１９０４と、リモート側ポートＩＤ１９０４のＩ／Ｏ頻度１９０５と、同じくリモート側ポートのスループット１９０６と、ペア状態のレプリケーションに用いるキャッシュの使用率を格納するサイドファイル使用率１９０９と、プライマリ側のデータの整合性を格納するデータ整合性（プライマリ）１９０８と、セカンダリ側のデータの整合性を格納するデータ整合性（セカンダリ）１９０９とからなる。
【００８３】
アプリケーション管理者はアプリケーション管理端末５上に表示された影響範囲表示テーブル１９の情報により、アプリケーション「ＡＰＰ１」、および「ＡＰＰ３」が使用しているペア「００２−００３」に対するリンク障害の修復を行なうと共に、アプリケーション「ＡＰＰ２」に関連するペア「０１１−０１２」のリモートコピー接続用の割り当てポートを変えることで、レプリケーションに問題が生じるのを未然に防ぐことができる。またこのとき、ペア「００２−００３」においてレプリケーションが失敗しているため、これとカスケード構成になっているペア「００３−００４」については、プライマリボリュームの状態に問題があるものとして、影響範囲表示テーブル１９に情報が格納されるが、ペア「００４−００５」については、ペア状態が「ＳＭＰＬ」になっているために影響はないと判断され、影響範囲表示テーブル１９への情報の格納は行なわれない。
【００８４】
＜処理の詳細＞
次に、アプリケーション管理端末５、アプリケーションサーバ２〜４及び管理サーバ１で行われる各処理の詳細について、以下に説明する。
【００８５】
まず、図１１はアプリケーションサーバ２〜４のアプリケーション管理プログラム２５〜４５、管理サーバ１のストレージ管理プログラム１５で行われる処理の一例を示すフローチャートである。
【００８６】
Ｓ１１がアプリケーション管理プログラム２５〜４５で行われる処理で、Ｓ１２〜Ｓ１９が管理サーバ１のストレージ管理プログラム１５で行われる処理である。
【００８７】
まず、アプリケーション管理端末５の監視プログラム５５は、上記図２のＳ１、Ｓ２で示したように、アプリケーション管理者など入力したアプリケーション名から、図４に示したアプリケーション構成情報テーブル５５０から対応するプログラム名とサーバ名を取得し、該当するプログラムを実行するアプリケーションサーバ２〜４に、監視するプログラム名を送信する。
【００８８】
次に、Ｓ１１では、アプリケーション管理端末５の監視プログラム５５からプログラム名を受信したアプリケーションサーバ２〜４のアプリケーション管理プログラム２５〜４５は、構成情報テーブル２６、３６、４６を参照して、受信したプログラム名が使用するボリュームＩＤを取得して、管理サーバ１にアプリケーション名、プログラム名、ボリュームＩＤを送信する。
【００８９】
Ｓ１２では、ストレージ管理プログラム１５が、アプリケーションサーバ２〜４から受信したアプリケーション名とプログラム名を図６で示したペア状態表示テーブル１７のアプリケーション名５６１とプログラム名５６２にそれぞれ格納する。
【００９０】
Ｓ１３では、指定されたアプリケーション名が利用する全てのボリュームについてＳ１４からＳ１７の処理を行う。Ｓ１３では、全てのボリュームについて処理が完了していなければＳ１４へ進み、全て完了した場合にはＳ１８へ進む。
【００９１】
Ｓ１４では、ストレージ管理プログラム１５は受信したボリュームＩＤから、上記図５に示した構成情報・動作情報テーブル１６を検索して、セカンダリボリュームを取得し、プライマリ欄１６１１とセカンダリ欄１６１２のボリュームＩＤの組からペア名を決定し、該当するプライマリボリュームとセカンダリボリュームの接続状態１６１５を取得し、ペア名と接続状態をペア状態表示テーブル１７のペア名５６３と、接続状態５６４に格納する。
【００９２】
次に、Ｓ１５では該当するペアボリュームに対応するカスケード構成の有無を、上記図５の構成情報・動作情報テーブル１６のリモート側ポート１６１４の情報の有無から判定する。リモート側ポート１６１４にポートＩＤが格納されて入れる場合には、カスケード構成が有りと判定してＳ１６に進み、無しの場合にはＳ１３に戻る。
【００９３】
Ｓ１６では、セカンダリ欄１６１２のボリュームＩＤをプライマリとするプライマリ欄１６１１を検索してペア情報を選択する。
【００９４】
Ｓ１７では、選択したプライマリ欄１６１１について上記Ｓ１４と同様にして、ペア名を決定し、ペア状態を取得して、ペア状態表示テーブル１７に格納する。その後、Ｓ１５に戻って、カスケード構成の終点に達するまでＳ１５〜Ｓ１７の処理を繰り返した後、Ｓ１３に戻る。
【００９５】
アプリケーションサーバ２〜４から指定されたプログラム名に対応するボリュームＩＤについて構成情報・動作情報テーブル１６の検索が全て終了すると、Ｓ１８に進んで、ペア状態表示テーブル１７の接続状態（集約）５６５の設定を行ってペア状態表示テーブル１７を生成する。
【００９６】
その後、ストレージ管理プログラム１５は、ペア状態表示テーブル１７の情報をアプリケーション管理端末５に送信して処理を終了する。そして、上述のように、アプリケーション管理端末５の監視プログラム５５は、受信したペア状態表示テーブル１７をアプリケーション管理端末５の表示装置に出力する。
【００９７】
アプリケーション管理者は、アプリケーション管理端末５にてペア状態表示テーブル１７の接続状態（集約）５６５を見るだけで、指定したアプリケーション名について対処が必要なペア状態を即座に知ることができる。つまり、アプリケーション管理者は、ペア状態表示テーブル１７の接続状態（集約）を見てＥＲＲＯＲまたはＷＡＲＮのアプリケーション名を探し、集約された接続状態５６５がＥＲＲＯＲまたはＷＡＲＮのアプリケーション名のうち、接続状態５６４がＥＲＲＯＲまたはＷＡＲＮとなっているペア名５６３を検索すれば、対処を行うべきペア状態を即座に把握することができる。
【００９８】
したがって、一つのアプリケーション名のデータについて多数のレプリケーションを行う場合や、レプリケーションをカスケード構成で実行する場合には、異常や警告となる状況がいずれのペア状態で生じたのかを即座に把握でき、迅速な対処を行うことができ、レプリケーションの欠損を回避し、あるいは欠損の回復を迅速に行うことが可能となる。
【００９９】
次に、上記図１１のＳ１８で行われるペア状態の集約処理について、図１２のサブルーチンを参照しながら説明する。
【０１００】
Ｓ２０では、ストレージ管理プログラム１５は、ペア状態表示テーブル１７のプログラム名に対応するペア名の接続状態（ペア状態）の一覧を取得する。
【０１０１】
Ｓ２１では、取得した接続状態の一覧の中に「ＥＲＲＯＲ」が存在するかを判定し、存在する場合にはＳ２４に進んで、ペア状態（集約）５６５に「ＥＲＲＯＲ」を設定してサブルーチンを終了する。
【０１０２】
「ＥＲＲＯＲ」がない場合には、Ｓ２２へ進んで接続状態の一覧の中に「ＷＡＲＮ」があるか否かを判定する。存在する場合には、Ｓ２５に進んで、ペア状態（集約）５６５に「ＷＡＲＮ」を設定してサブルーチンを終了する。
【０１０３】
「ＷＡＲＮ」がない場合には、Ｓ２３へ進んで接続状態が正常であることを示す値（例えば、ＣＯＰＹ、ＰＡＩＲ、ＳＭＰＬあるいはＮＯＲＭＡＬなど）をペア状態（集約）５６５に設定してサブルーチンを終了する。
【０１０４】
上記処理により、ペア状態表示テーブル１７の集約された接続状態５６５が完成し、アプリケーション管理端末５に送信されて、アプリケーション管理者にペア状態の異常または警告の有無を通知する。
【０１０５】
次に、図１３を参照しながら、アプリケーション管理端末５の監視プログラム５５で実行されるペア状態に異常があった場合の通知処理について説明する。
【０１０６】
Ｓ３０は、上記図１１、図１２に示した管理サーバ１のストレージ管理プログラム１５の処理が完了し、ペア状態表示テーブル１７をアプリケーション管理端末５へ送信する処理を示す。
【０１０７】
Ｓ３１以降は、管理サーバ１からペア状態表示テーブル１７を受信したアプリケーション管理端末５の監視プログラム５５の処理を示し、Ｓ３１では監視プログラム５５が、ペア状態表示テーブル１７の情報を取得する。
【０１０８】
Ｓ３２では、処理の終了条件を判定するもので、ペア状態表示テーブル１７の全プログラム名について処理が完了したか否かを判定し、完了していなければＳ３３へ進む一方、完了していれば処理を終了する。
【０１０９】
Ｓ３３では、監視プログラム５５が、ペア状態表示テーブル１７の先頭のプログラム名から順に、プログラム名に対応する接続状態（集約）５６５を取得する。次に、Ｓ３４では、図４に示したアプリケーション構成情報テーブル５５０から、該当するプログラム名の電子メールを送付すべき通知レベル５５５を取得する。
【０１１０】
次にＳ３５では、Ｓ３３で取得した接続状態（集約）と、通知レベル５５５とを比較し、接続状態（集約）と通知レベル５５５が一致あるいは、接続状態（集約）が通知レベル５５５より悪い場合には、Ｓ３６へ進んでプログラム名に該当する電子メール送付先５５６を取得し、このアドレスにＥＲＲＯＲまたはＷＡＲＮとなったプログラム名を記載して送信する。
【０１１１】
なお、接続状態（集約）が通知レベル５５５よりも良い場合には、Ｓ３２へ戻って次のプログラム名についてＳ３３からＳ３６の処理を繰り返して行う。
【０１１２】
上記図１３の処理を、受信したペア状態表示テーブル１７の全てのプログラム名について繰り返して行うことで、アプリケーション管理端末５で指定したアプリケーション名が利用するボリュームのレプリケーションに異常または警告となる状態があれば、自動的に予め設定したアプリケーション管理者などへ異常または警告の通知を行うことができるのである。
【０１１３】
例えば、図６のようにアプリケーション名「ＡＰＰ１」についてペア状態を調べた結果、プログラム名「ＡＰＰ１−１.exe」のペアボリューム「００２−００３」がＥＲＲＯＲの場合、監視プログラム５５はアプリケーション構成情報テーブル５５０のプログラム名「ＡＰＰ１−１.exe」に対応する通知レベル５５５がＥＲＲＯＲであることから、接続状態（集約）と通知レベルが一致することから、あらかじめせっていした電子メール送付先であるaaa@x.co.jpへ上記メールを送信し、異常または異常が発生しうる状態をアプリケーション管理者などへ自動的に通知する。
【０１１４】
次に、図１４は、管理サーバ１のストレージ管理プログラム１５で行われる、レプリケーション関係の影響範囲特定処理の一例を示すフローチャートである。
【０１１５】
Ｓ４０は、上記図１１、図１２に示した管理サーバ１のストレージ管理プログラム１５の処理が完了し、ペア状態表示テーブル１７をアプリケーション管理端末５へ送信するまでの処理を示す。この後、Ｓ４１以降でレプリケーション関係の影響範囲特定処理が実行される。
【０１１６】
Ｓ４１では、処理の終了条件を判定するもので、ペア状態表示テーブル１７の全プログラム名について処理が完了したか否かを判定し、完了していなければＳ４２へ進む一方、完了していれば処理を終了する。
【０１１７】
Ｓ４２では、ペア状態表示テーブル１７の先頭から順次プログラム名に対応する接続状態（集約）５６５を取得する。
【０１１８】
Ｓ４３では、接続状態（集約）が「ＷＡＲＮ」であるかを判定し、「ＷＡＲＮ」の場合にはＳ４４に進む一方、そうでなければＳ４５に進む。ＷＡＲＮの場合のＳ４４では、ペア状態表示テーブル１７のプログラム名に対応するボリュームＩＤから、図５の構成情報・動作情報テーブル１６を参照し、プライマリ欄１６１１とセカンダリ欄１６１２からボリュームＩＤ及びサブシステムＩＤを取得し、図７に示した影響範囲表示テーブル１８のプライマリ欄１８０１にプライマリのボリュームＩＤを、セカンダリ欄１８０２にセカンダリのボリュームＩＤを格納し、プライマリとセカンダリのデータ整合性１８０８、１８０９にデータの欠損のないことを示す「問題なし」を設定する。また、関連アプリケーション名１８０３に該当するアプリケーション名を設定する。
【０１１９】
次に、Ｓ４５では、接続状態（集約）が「ＥＲＲＯＲ」であるかを判定し、「ＥＲＲＯＲ」の場合にはＳ４６に進む一方、そうでなければＳ４７に進む。ＥＲＲＯＲの場合のＳ４６では、ペア状態表示テーブル１７のプログラム名に対応するボリュームＩＤから、図５の構成情報・動作情報テーブル１６を参照し、プライマリ欄１６１１とセカンダリ欄１６１２からボリュームＩＤ及びサブシステムＩＤを取得し、図８に示した影響範囲表示テーブル１９のプライマリ欄１９０１にプライマリのボリュームＩＤを、セカンダリ欄１９０２にセカンダリのボリュームＩＤを格納し、プライマリとセカンダリのデータ整合性１９０８、１９０９に断線状態に応じたレプリケーション元またはレプリケーション先のデータ欠損の有無から「問題あり」または「問題なし」の何れかを後述するように設定する。また、関連アプリケーション名１９０３に該当するアプリケーション名を設定する。
【０１２０】
次に、Ｓ４７ではＥＲＲＯＲまたはＷＡＲＮとなったプライマリのボリュームに対応するＩ／Ｏ頻度とスループットの統計情報を取得する。この統計情報は、Ｉ／Ｏ頻度とスループットの変化が判別できるものであればよい。
【０１２１】
Ｓ４８では、該当するプライマリのボリュームのＩ／Ｏ頻度が急激に増加したか否かを判定する。急激に増加した場合にはＳ４９へ進み、そうでない場合にはＳ５１に進む。
【０１２２】
Ｓ４９では、現在のプログラム名に対応するボリュームのホスト側ポートに接続されるボリュームＩＤを、図５の構成情報・動作情報テーブル１６から取得して影響範囲表示テーブル１８に設定する。Ｓ５０では、現在のプログラム名に対応する各ペア状態に必要な情報を影響範囲表示テーブル１８に設定する。
【０１２３】
Ｓ５１では、該当するプライマリのボリュームのスループットが急激に減少したか否かを判定する。急激に減少した場合にはＳ５２へ進み、そうでない場合にはＳ４１に戻る。
【０１２４】
Ｓ５２では、現在のプログラム名に対応するボリュームのリモート側ポートに接続されたボリュームＩＤを、図５の構成情報・動作情報テーブル１６から取得して影響範囲表示テーブル１９に設定する。Ｓ５３では、現在のプログラム名に対応する各ペア状態に必要な情報を影響範囲表示テーブル１９に設定する。そしてＳ４１の処理に戻り、全てのプログラム名について、上記Ｓ４１〜Ｓ５３を繰り返すことで、影響範囲表示テーブル１８、１９を作成し、Ｉ／Ｏ過多や断線による影響が、レプリケーション関係においてどのペアボリュームまで及んでいるのかを容易且つ迅速に把握できる。
【０１２５】
次に、図１５は上記図１４のＳ４６で行われるデータの整合性を影響範囲表示テーブル１９に登録する処理の一例を示すサブルーチンである。
【０１２６】
Ｓ６０は、図６のペア状態表示テーブル１７の接続状態５６４がＥＲＲＯＲとなっているペア名５６３のボリュームＩＤについて、そのプライマリとセカンダリについてデータ整合性１９０８、１９０９に「問題あり」を設定する。
【０１２７】
次にＳ６１では、図５の構成情報・動作情報テーブル１６を参照して、現在のプログラム名に対応するボリュームのカスケード構成がなし、またはペア状態がＳＭＰＬの場合には、そのままサブルーチンを終了する。一方、カスケード構成がある場合には、Ｓ６２へ進んで、ペア名５６３のセカンダリ側のボリュームＩＤをプライマリとするペア状態を図５の構成情報・動作情報テーブル１６から取得する。
【０１２８】
そして、Ｓ６３では上記Ｓ６２で得たペア状態のプライマリとセカンダリのボリュームＩＤとデータの整合性として「問題あり」を影響範囲表示テーブル１９に登録していく。さらに、上記Ｓ６１へ戻って、カスケード構成の終端までＳ６１からＳ６３の処理を繰り返す。
【０１２９】
上記処理により、接続状態がＥＲＲＯＲとなったペアボリューム以降のカスケード構成については、データの欠損がある可能性が大であるのでデータ整合性に「問題あり」を設定する。
【０１３０】
次に、図１６は上記図１４のＳ４９で行われるホスト側ポートに接続されたボリュームＩＤを影響範囲表示テーブル１８に登録する処理の一例を示すサブルーチンである。
【０１３１】
Ｓ７０では、ＥＲＲＯＲ（またはＷＡＲＮ）が発生したペア名について、図５の構成情報・動作情報テーブル１６を参照してホスト側ポートのポートＩＤを取得する。
【０１３２】
Ｓ７１はサブルーチン終了条件を判定するもので、構成情報・動作情報テーブル１６のプライマリ側の全ボリュームＩＤについて処理が完了したか否かを判定し、完了した場合にはサブルーチンを終了する一方、完了していなければＳ７２へ進む。
【０１３３】
Ｓ７２では、構成情報・動作情報テーブル１６の先頭から調べ、現在のプライマリのボリュームＩＤがペア状態表示テーブル１７のペア名５６３に含まれているかを判定する。含まれている場合にはＳ７１へ戻って次のボリュームＩＤについて調べる一方、含まれていない場合には、Ｓ７３に進む。
【０１３４】
Ｓ７３では、構成情報・動作情報テーブル１６からホスト側ポートのポートＩＤを取得し、Ｓ７４では、このポートＩＤがＥＲＲＯＲが発生したボリュームＩＤのポートＩＤに一致するかを判定する。一致する場合にはＳ７５に進んで、プライマリとセカンダリのボリュームＩＤと、データ整合性として「問題なし」を影響範囲表示テーブル１８に登録する。
【０１３５】
この後、Ｓ７１に戻って全てのプライマリのボリュームＩＤについてポートＩＤの比較が行われる。
【０１３６】
上記処理により、ＥＲＲＯＲまたはＷＡＲＮが発生したボリュームが接続されたホスト側ポートのポートＩＤについて、ペアボリュームが影響範囲表示テーブル１８に順次登録される。
【０１３７】
次に、図１７は上記図１４のＳ５２で行われるリモート側ポートに接続されたボリュームＩＤを影響範囲表示テーブル１９に登録する処理の一例を示すサブルーチンである。
【０１３８】
Ｓ８０では、ＥＲＲＯＲ（またはＷＡＲＮ）が発生したペア名について、図５の構成情報・動作情報テーブル１６を参照してリモート側ポートのポートＩＤを取得する。
【０１３９】
Ｓ８１はサブルーチン終了条件を判定するもので、構成情報・動作情報テーブル１６のプライマリ側の全ボリュームＩＤについて処理が完了したか否かを判定し、完了した場合にはサブルーチンを終了する一方、完了していなければＳ８２へ進む。
【０１４０】
Ｓ８２では、構成情報・動作情報テーブル１６の先頭から調べ、現在のプライマリのボリュームＩＤがペア状態表示テーブル１７のペア名５６３に含まれているかを判定する。含まれている場合にはＳ８１へ戻って次のボリュームＩＤについて調べる一方、含まれていない場合には、Ｓ８３に進む。
【０１４１】
Ｓ８３では、構成情報・動作情報テーブル１６からリモート側ポートのポートＩＤを取得し、Ｓ８４では、このポートＩＤがＥＲＲＯＲが発生したボリュームＩＤのポートＩＤに一致するかを判定する。一致する場合にはＳ８５に進んで、プライマリとセカンダリのボリュームＩＤと、データ整合性として「問題なし」を影響範囲表示テーブル１９に登録する。
【０１４２】
この後、Ｓ８１に戻って全てのプライマリのボリュームＩＤについてポートＩＤの比較が行われる。
【０１４３】
上記処理により、ＥＲＲＯＲまたはＷＡＲＮが発生したボリュームが接続されたリモート側ポートのポートＩＤについて、ペアボリュームが影響範囲表示テーブル１９に順次登録される。
【０１４４】
次に、図１８は上記図１４のＳ５０で行われるホスト側ポートに関する影響範囲表示テーブル１８に登録済みのペア状態に必要な情報を登録する処理の一例を示すサブルーチンである。
【０１４５】
Ｓ９０はサブルーチン終了条件を判定するもので、影響範囲表示テーブル１８のプライマリ側の全ボリュームＩＤについて処理が完了したか否かを判定し、完了した場合にはサブルーチンを終了する一方、完了していなければＳ９１へ進む。
【０１４６】
Ｓ９１では、影響範囲表示テーブル１８の先頭のボリュームＩＤから順次調べ、ペア状態表示テーブル１７に当該ボリュームＩＤが含まれているかを判定する。含まれている場合にはＳ９３へ進み、含まれていない場合にはＳ９２へ進む。
【０１４７】
Ｓ９２では、ペア状態表示テーブル１７に含まれていないので、アプリケーション管理プログラム２５、３５、４５にボリュームＩＤを問い合わせ、このボリュームＩＤに対応するアプリケーション名を取得する。一方Ｓ９３では、ペア状態表示テーブル１７からボリュームＩＤに対応するアプリケーション名を取得する。
【０１４８】
次に、Ｓ９４では、ボリュームＩＤに対応する位置で、取得したアプリケーション名を影響範囲表示テーブル１８の関連アプリケーション名１８０３に登録する。
【０１４９】
Ｓ９５では、構成情報・動作情報テーブル１６から、このボリュームＩＤに対応するホスト側ポートのポートＩＤを取得して、影響範囲表示テーブル１８のホスト側ポートＩＤ１８０４に登録する。
【０１５０】
Ｓ９６では、同じく構成情報・動作情報テーブル１６から、このボリュームＩＤに対応するＩ／Ｏ頻度を取得して影響範囲表示テーブル１８のＩ／Ｏ頻度１８０５に登録し、Ｓ９７では同様に構成情報・動作情報テーブル１６からスループットを取得して影響範囲表示テーブル１８のスループット１８０６に登録し、Ｓ９８では同様に構成情報・動作情報テーブル１６からサイドファイル使用率を取得して影響範囲表示テーブル１８のサイドファイル使用率１８０７に登録する。
【０１５１】
そして、上記Ｓ９０〜Ｓ９８の処理を影響範囲表示テーブル１８の全てのプライマリのボリュームＩＤについて行うことで、影響範囲表示テーブル１８が生成される。
【０１５２】
次に、図１９は上記図１４のＳ５３で行われるリモート側ポートに関する影響範囲表示テーブル１９に登録済みのペア状態に必要な情報を登録する処理の一例を示すサブルーチンである。
【０１５３】
Ｓ１００〜Ｓ１０４は上記図１８のＳ９０〜Ｓ９４と同様に、影響範囲表示テーブル１９の全てのプライマリのボリュームＩＤについて行うものであり、上記図１８のＳ９５以降ではホスト側ポートＩＤを取得したのに対し、Ｓ１０５以降ではリモート側ポートＩＤを取得し、Ｉ／Ｏ頻度、スループット、サイドファイル使用率を影響範囲表示テーブル１９に登録する点が異なり、その他は同様に行われる。
【０１５４】
このＳ１００〜Ｓ１０８の処理を影響範囲表示テーブル１９の全てのプライマリのボリュームＩＤについて行うことで、影響範囲表示テーブル１９が生成される。
【０１５５】
以上のように、レプリケーション関係の影響範囲特定は、監視対象となるアプリケーションに関連するペアボリュームの状態に対して異常が発生した、もしくは異常が発生しそうな場合（警告）に、対処を行なう必要のある範囲と、問題が影響を及ぼすと思われる範囲を選択的に表示するものである。このとき、ストレージ管理プログラム１５は発生した現象に関連する動作情報を取得し、その結果に応じて影響範囲の絞込みを行なうため、表面上、発生した現象が同じであった場合にも、その時の状況によって絞込みの行なわれる範囲は異なる。このため、アプリケーション管理者に対して、適切な影響範囲を示すことが可能となる。
【０１５６】
以上のように、本発明によれば、特定のアプリケーションが使用しているボリューム、およびそこからカスケード構成あるいはペアになっているボリュームに対するペア状態（レプリケーション関係）を監視し、データのレプリケーションに問題が発生していないかを監視することができる。
【０１５７】
アプリケーション管理端末５で図４に示したアプリケーション構成情報テーブル５５０から特定のアプリケーション名に対応するプログラム名、およびボリュームＩＤの情報を取得した後、これを管理サーバ１に送信する。管理サーバ１では図５に示した構成情報・動作情報テーブルからボリュームＩＤに対応するペア状態を取得し、ペア状態表示テーブルに情報を格納する。またこのとき、構成情報・動作情報テーブルからカスケード構成になっているボリュームのペア状態もあわせて取得し、同テーブルに追加する。最後に、これらのペア状態を集約した情報を同テーブルに追加したうえで、この情報をアプリケーション管理者が利用するアプリケーション管理端末５に対して提供することにより、アプリケーション管理者は自分の管理しているデータ、およびその複製先においてペア状態に異常が発生しているかどうかを集約された情報により一目で確認することができる。
【０１５８】
なお、上記実施形態では、アプリケーションが使用するペアボリューム（レプリケーション関係）の追跡と障害の検知を管理サーバ１のストレージ管理プログラム１５と、アプリケーション管理端末５の監視プログラム５５で行ったが、ストレージ管理プログラム１５と監視プログラム５５を同一の計算機で実行しても良い。
【０１５９】
また、上記実施形態では、アプリケーション構成情報テーブル５５０を、アプリケーション管理端末５に設けたが、各アプリケーションサーバ２〜４にアプリケーション構成情報テーブル５５０をそれぞれ設け、アプリケーション管理端末５から問い合わせるようにしても良い。
【図面の簡単な説明】
【０１６０】
【図１】システムの全体的な構成を示すブロック図。
【図２】ソフトウェア構成を示すブロック図。
【図３】ストレージシステムのボリューム構成とポート構成を示すブロック図。
【図４】アプリケーション構成情報テーブルの一例を示す説明図。
【図５】管理サーバの構成情報・動作情報テーブルの一例を示す説明図。
【図６】集約された接続状態を含むペア状態表示テーブルの一例を示す説明図。
【図７】Ｉ／Ｏ過多の場合の影響範囲表示テーブルの一例を示す説明図。
【図８】断線の場合の影響範囲表示テーブルの一例を示す説明図。
【図９】Ｉ／Ｏ過多の一例を示し、ストレージシステムのボリューム構成とポート構成を示すブロック図。
【図１０】断線の一例を示し、ストレージシステムのボリューム構成とポート構成を示すブロック図。
【図１１】ペア状態監視処理の一例を示すフローチャート。
【図１２】図１１のＳ１８で行われるペア状態の集約処理のサブルーチンを示すフローチャート。
【図１３】アプリケーション管理端末の監視プログラムで実行される通知処理の一例を示すフローチャート。
【図１４】管理サーバのストレージ管理プログラムで行われる、レプリケーション関係の影響範囲特定処理の一例を示すフローチャート。
【図１５】図１４のＳ４６で行われるデータ整合性を影響範囲表示テーブルに登録する処理の一例を示すサブルーチン。
【図１６】図１４のＳ４９で行われるホスト側ポートに接続されたボリュームＩＤを影響範囲表示テーブルに登録する処理の一例を示すサブルーチン。
【図１７】図１４のＳ５２で行われるリモート側ポートに接続されたボリュームＩＤを影響範囲表示テーブルに登録する処理の一例を示すサブルーチン。
【図１８】図１４のＳ５０で行われるホスト側ポートに関する影響範囲表示テーブル１８に登録済みのペア状態に必要な情報を登録する処理の一例を示すサブルーチン。
【図１９】図１４のＳ５３で行われるリモート側ポートに関する影響範囲表示テーブル１９に登録済みのペア状態に必要な情報を登録する処理の一例を示すサブルーチン。
【符号の説明】
【０１６１】
１  管理サーバ
２〜４  アプリケーションサーバ
５  アプリケーション管理端末
６  ＬＡＮ
７ＳＡＮ
１５  ストレージ管理プログラム
１６  構成情報・動作情報テーブル
２５、３５、４５  アプリケーション管理プログラム
５５  監視プログラム
１００００〜１０００３  ストレージ装置
【図１】
2006134164.tif 000003
【図２】
2006134164.tif 000004
【図３】
2006134164.tif 000005
【図４】
2006134164.tif 000006
【図５】
2006134164.tif 000007
【図６】
2006134164.tif 000008
【図７】
2006134164.tif 000009
【図８】
2006134164.tif 000010
【図９】
2006134164.tif 000011
【図１０】
2006134164.tif 000012
【図１１】
2006134164.tif 000013
【図１２】
2006134164.tif 000014
【図１３】
2006134164.tif 000015
【図１４】
2006134164.tif 000016
【図１５】
2006134164.tif 000017
【図１６】
2006134164.tif 000018
【図１７】
2006134164.tif 000019
【図１８】
2006134164.tif 000020
【図１９】
2006134164.tif 000021