(57)【要約】【課題】データのコピーに関わるリソースの性能を適切に監視する。【解決手段】コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースについて、それぞれポリシーを用意し、複数のリソースのうちの評価対象リソースについて、その評価対象リソースのポリシーを基に、予め定義されているアクションを実行するか否かを判断する評価を行う。それら複数のリソースのうち、コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定する。【選択図】図１
2008299387.tif 000002
【特許請求の範囲】
【請求項１】
コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースの性能を監視する管理装置であって、
前記複数のリソースに対応した複数のポリシーを表すポリシー情報における、前記コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定するポリシー決定部と、
前記複数のポリシーのうちの前記複数のリソースにおける評価対象リソースに対応したポリシーを基に、予め定義されているアクションを実行するか否かをその評価対象リソースの性能値を用いて判断するリソース評価部と
を備える管理装置。
【請求項２】
前記コピーに関わるリソースは、前記コピー先ボリュームであり、
前記ポリシー決定部は、複数のティアと前記ストレージシステムが有する複数のリソースとの関係を表すティア管理情報を参照し、前記複数の論理ボリュームのうちの前記コピー元ボリュームが属する第一のティアに属するリソースの性能値及び／又はポリシーと、前記複数の論理ボリュームのうちの前記コピー先ボリュームが属する第二のティアに属するリソースの性能値及び／又はポリシーとに基づいて、前記コピーが完了した後の前記コピー先ボリュームに対応したポリシーを決定する、
請求項１記載の管理装置。
【請求項３】
前記ポリシーは、リソースの性能値と比較される閾値であり、
前記ポリシー決定部は、前記コピー先ボリュームに対応した閾値を、前記第一のティアに属するリソースの性能値と前記第二のティアに属するリソースの性能値とに基づいて決定する、
請求項２記載の管理装置。
【請求項４】
前記ポリシーは、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔であり、
前記ポリシー決定部は、前記コピー先ボリュームに対応した評価時点間隔を、前記第一のティアに属するリソースの評価時点間隔と前記第二のティアに属するリソースの評価時点間隔との両方、或いは、前記第二のティアに属するリソースの評価時点間隔に基づいて決定する、
請求項２記載の管理装置。
【請求項５】
前記コピー元ボリュームの識別子とそのコピー元ボリュームに対応したポリシーとの対応関係を表す情報を、その対応関係の履歴を表す履歴情報に追記する履歴管理部を更に備え、
前記ポリシー決定部は、前記コピー先ボリューム又はそのコピー先ボリュームが属する前記第二のティアが、前記履歴情報から特定されるコピー元ボリューム又はそのコピー元ボリュームが属するティアと一致する場合、そのコピー元ボリュームに対応していたポリシー、又は、そのティアに属する他の論理ボリュームに対応するポリシーを、前記コピー先ボリュームのポリシーに決定する、
請求項２記載の管理装置。
【請求項６】
前記ポリシー決定部は、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、前記コピー元ボリュームに所属する経路に直接的及び間接的に所属するリソースと、前記コピー先ボリュームに所属する経路に直接的及び間接的に所属するリソースとを、前記コピーに関わるリソースとして特定し、特定されたリソースについて、前記コピーが完了した直後から一定時間が経つまでである一時期間に対応した一時期間用ポリシーを決定し、
前記リソース評価部は、一時期間である場合に、前記決定された一時期間用ポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
請求項１記載の管理装置。
【請求項７】
前記一時期間用ポリシーは、前記一時期間後のポリシーよりも厳しい、
請求項６記載の管理装置。
【請求項８】
前記ポリシーは、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔、又は、評価時点間隔において取得する性能値の個数であり、
前記一時期間用の評価時点間隔は、前記一時期間後の評価時点間隔と比べて短い、或いは、前記一時期間用の前記個数は、前記一時期期間後の個数と比べて多い、
請求項７記載の管理装置。
【請求項９】
前記決定された一時期期間用ポリシーを前記コピーが完了した後に有効とするアクション実行制御部を更に備え、
前記リソース評価部が、前記一時期間用ポリシーが有効でなければ、その一時期間用ポリシーを基にした判断を実行せず、その一時期間用ポリシーが有効であるならば、その一時期間用ポリシーを基にした判断を実行する、
請求項６記載の管理装置。
【請求項１０】
前記ポリシー決定部は、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、前記コピー元ボリュームから前記コピー先ボリュームへのコピーにおいてデータが通る経路に直接的及び間接的に所属するリソースを、前記コピーに関わるリソースとして特定し、特定されたリソースについて、前記コピーの実行期間中に対応したコピー期間用ポリシーを決定し、
前記リソース評価部は、前記コピーの実行期間中である場合に、前記決定されたコピー期間用ポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
請求項１記載の管理装置。
【請求項１１】
前記ポリシーは、リソースの性能値と比較される閾値、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔、又は、評価時点間隔において取得する性能値の個数であり、
前記ポリシー決定部は、前記特定されたリソースに対応したコピー期間用の閾値、評価時点間隔、又は性能値の個数を、予め定義された値、又は、その値を補正した値に決定する、
請求項１０記載の管理装置。
【請求項１２】
前記リソース評価部は、前記コピーの実行期間中である場合に、前記評価対象リソースについてアクションを実行するとの判断になれば、アクションの実行として、前記コピーを停止或いは減速することを前記ストレージシステムに指示する、
請求項１０記載の管理装置。
【請求項１３】
前記決定されたコピー期間用ポリシーを前記コピー期間中である場合に有効とするアクション実行制御部を更に備え、
前記リソース評価部が、前記コピー期間用ポリシーが有効でなければ、そのコピー期間用ポリシーを基にした判断を実行せず、そのコピー期間用ポリシーが有効であるならば、そのコピー期間用ポリシーを基にした判断を実行する、
請求項１０記載の管理装置。
【請求項１４】
アクションの実行を制御するアクション実行制御部を更に備え、
前記ポリシー決定部は、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、前記コピー元ボリュームに所属する経路に直接的及び間接的に所属するリソースと、前記コピー先ボリュームに所属する経路に直接的及び間接的に所属するリソースとを、前記コピーに関わるリソースとして特定し、その特定されたリソースについて、前記コピーが完了した直後から一定時間が経つまでである一時期間に対応した一時期間用ポリシーとして、前記一時期間後のポリシーよりも厳しいポリシーを決定し、また、前記経路管理情報を参照し、前記コピー元ボリュームから前記コピー先ボリュームへのコピーにおいてデータが通る経路に直接的及び間接的に所属するリソースを、前記コピーに関わるリソースとして特定し、その特定されたリソースについて、前記コピーの実行期間中に対応したコピー期間用ポリシーを決定し、
前記アクション実行制御部が、前記決定されたコピー期間用ポリシーを前記コピー期間中である場合に有効とし、前記決定された一時期期間用ポリシーを前記コピーが完了した後に有効とし、
前記リソース評価部は、有効となっているポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
請求項１記載の管理装置。
【請求項１５】
前記ポリシー決定部は、複数のティアと前記ストレージシステムが有する複数のリソースとの関係を表すティア管理情報を参照し、前記複数の論理ボリュームのうちの前記コピー元ボリュームが属する第一のティアに属するリソースの性能値及び／又はポリシーと、前記複数の論理ボリュームのうちの前記コピー先ボリュームが属する第二のティアに属するリソースの性能値及び／又はポリシーとに基づいて、前記コピーが完了した後の前記コピー先ボリュームに対応した有効のポリシーを決定する、
請求項１４記載の管理装置。
【請求項１６】
アクションの実行を制御するアクション実行制御部を更に備え、
前記ポリシー決定部は、複数のティアと前記ストレージシステムが有する複数のリソースとの関係を表すティア管理情報を参照し、前記複数の論理ボリュームのうちの前記コピー元ボリュームが属する第一のティアに属するリソースの性能値及び／又はポリシーと、前記複数の論理ボリュームのうちの前記コピー先ボリュームが属する第二のティアに属するリソースの性能値及び／又はポリシーとに基づいて、前記コピーが完了した後の前記コピー先ボリュームに対応した有効のポリシーを決定し、また、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、前記コピー元ボリュームに所属する経路に直接的及び間接的に所属するリソースと、前記コピー先ボリュームに所属する経路に直接的及び間接的に所属するリソースとを、前記コピーに関わるリソースとして特定し、その特定されたリソースについて、前記コピーが完了した直後から一定時間が経つまでである一時期間に対応した一時期間用ポリシーとして、前記一時期間後のポリシーよりも厳しいポリシーを決定し、
前記アクション実行制御部が、前記決定された一時期期間用ポリシーを前記コピーが完了した後に有効とし、
前記リソース評価部は、有効となっているポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
請求項１記載の管理装置。
【請求項１７】
アクションの実行を制御するアクション実行制御部を更に備え、
前記ポリシー決定部は、複数のティアと前記ストレージシステムが有する複数のリソースとの関係を表すティア管理情報を参照し、前記複数の論理ボリュームのうちの前記コピー元ボリュームが属する第一のティアに属するリソースの性能値及び／又はポリシーと、前記複数の論理ボリュームのうちの前記コピー先ボリュームが属する第二のティアに属するリソースの性能値及び／又はポリシーとに基づいて、前記コピーが完了した後の前記コピー先ボリュームに対応した有効のポリシーを決定し、また、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、前記コピー元ボリュームから前記コピー先ボリュームへのコピーにおいてデータが通る経路に直接的及び間接的に所属するリソースを、前記コピーに関わるリソースとして特定し、その特定されたリソースについて、前記コピーの実行期間中に対応したコピー期間用ポリシーを決定し、
前記アクション実行制御部が、前記決定されたコピー期間用ポリシーを前記コピー期間中である場合に有効とし、
前記リソース評価部は、有効となっているポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
請求項１記載の管理装置。
【請求項１８】
複数の論理ボリュームのうちのコピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムと、
前記複数の論理ボリュームのいずれかを指定したＩ／Ｏコマンドを発行するホストコンピュータと、
前記ホストコンピュータから送信されたアクセスコマンドを中継する中継装置と、
前記ストレージシステム、前記ホストコンピュータ及び前記中継装置に関わる複数のリソースに対応した複数のポリシーを表すポリシー情報における、前記コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定するポリシー決定部と、
前記複数のポリシーのうちの前記複数のリソースにおける評価対象リソースに対応したポリシーを基に、予め定義されているアクションを実行するか否かをその評価対象リソースの性能値を用いて判断するリソース評価部と
を備えるコンピュータシステム。
【請求項１９】
コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースに対応した複数のポリシーを表すポリシー情報における、前記コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定し、
前記複数のポリシーのうちの前記複数のリソースにおける評価対象リソースに対応したポリシーを基に、予め定義されているアクションを実行するか否かをその評価対象リソースの性能値を用いて判断する、
リソース監視方法。
【請求項２０】
コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースに対応した複数のポリシーを表すポリシー情報における、前記コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定し、
前記複数のポリシーのうちの前記複数のリソースにおける評価対象リソースに対応したポリシーを基に、予め定義されているアクションを実行するか否かをその評価対象リソースの性能値を用いて判断する
ことをコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムに存在するリソースの性能監視に関わる。
【背景技術】
【０００２】
性能監視対象の一つとして、ストレージデバイスがある。閾値を利用したストレージデバイス性能監視に関する技術が知られている（例えば特許文献１及び２）。
【０００３】
【特許文献１】米国特許第６０３２２２４号明細書
【特許文献２】米国特許第７１２０８３２号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、ストレージシステムに存在する複数の論理ボリュームのうちの一つをコピー元とし、それら複数の論理ボリュームのうちの他の一つをコピー先とし、コピー元ボリュームに記憶されているデータをコピー先ボリュームにコピーする技術がある。コピーが行われるということは、ホストコンピュータから送信されたＩ／Ｏコマンドに従う論理ボリュームに対する入出力とは別の入出力が行われるということである。このため、データのコピーに関わるリソースとそのコピーに関わらないリソースとでは、それらのリソースの能力は実質的に同じであるとしても、実際に発揮できる性能に差が生じると考えられる。  従って、本発明の目的は、データのコピーに関わるリソースの性能を適切に監視することにある。
【０００５】
本発明の更なる目的は、後の記載から明らかになるであろう。
【課題を解決するための手段】
【０００６】
コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースについて、それぞれポリシーを用意し、複数のリソースのうちの評価対象リソースについて、その評価対象リソースのポリシーを基に、予め定義されているアクションを実行するか否かを判断する評価を行う。それら複数のリソースのうち、コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定する。
【発明を実施するための最良の形態】
【０００７】
一つの実施形態では、コピー元ボリュームからコピー先ボリュームにデータをコピーするストレージシステムを含んだコンピュータシステムに存在する複数のリソースの性能を監視する管理装置に、ポリシー決定部と、リソース評価部とが備えられる。ポリシー決定部は、複数のリソースに対応した複数のポリシーを表すポリシー情報における、コピーに関わるリソースに対応したポリシーを、そのコピーに関わる時期に基づいて決定する。リソース評価部は、複数のポリシーのうちの複数のリソースにおける評価対象リソースに対応したポリシーを基に、予め定義されているアクションを実行するか否かをその評価対象リソースの性能値を用いて判断する。
【０００８】
ポリシー決定部は、例えば、後述するアラート生成部３２０とし、リソース評価部は、例えば、後述するアラート実行部３１０に対応する。
【０００９】
「コピー」には、例えば、リプリケーションとマイグレーションの両方が含まれる。言い換えれば、コピー元ボリュームにコピー対象のデータが残されても残されなくても良い。
【００１０】
「リソース」とは、例えば、コンピュータシステム（後述の実施形態の例ではＳＡＮ（Storage
Area Network）の物理的及び論理的な構成要素を指す。具体的には、例えば、リソースとは、コンピュータシステムを構成するハードウェア（例えば、ストレージサブシステム、ＳＡＮスイッチ、業務サーバ等）とその物理的ならびに論理的な構成要素（例えば、ポート、ＣＰＵ、キャッシュメモリ、アレイグループ、論理ボリューム等）や、そのハードウェア上で実行されるプログラム（例えば、オペレーティングシステム、データベース管理システム、メールサーバ等）とその論理的な構成要素（ファイル、テーブル等）のことである。
【００１１】
一つの実施形態では、コピーに関わるリソースは、コピー先ボリュームである。ポリシー決定部は、複数のティアとストレージシステムが有する複数のリソースとの関係を表すティア管理情報を参照し、複数の論理ボリュームのうちのコピー元ボリュームが属する第一のティアに属するリソースの性能値及び／又はポリシーと、複数の論理ボリュームのうちのコピー先ボリュームが属する第二のティアに属するリソースの性能値及び／又はポリシーとに基づいて、コピーが完了した後のコピー先ボリュームに対応したポリシーを決定することができる。
【００１２】
「ティア」とは、例えば、ストレージシステムに論理的に構築された階層構造における各階層のことである。ティアへの所属は、所定の単位、例えば、論理ボリューム単位、アレイグループ単位或いはストレージサブシステム単位で行うことができる。ティアに論理ボリューム以外の要素が所属している場合、その要素における全ての論理ボリュームがそのティアに所属していることになる。具体的には、例えば、ティアにアレイグループが所属している場合、そのアレイグループにおける全ての論理ボリュームがそのティアに所属していることになり、ティアにストレージサブシステムが所属している場合、そのストレージサブシステムにおける全ての論理ボリュームがそのティアに所属していることになる。なお、「ストレージサブシステム」とは、ストレージシステムを構成し、論理ボリュームやその論理ボリュームへのアクセスを制御する制御装置を有した装置である。ストレージサブシステムの数が１である場合には、そのストレージサブシステムがストレージシステムとなる。
【００１３】
一つの実施形態では、ポリシーは、リソースの性能値と比較される閾値である。ポリシー決定部は、コピー先ボリュームに対応した閾値を、第一のティアに属するリソースの性能値と第二のティアに属するリソースの性能値とに基づいて決定する。
【００１４】
一つの実施形態では、ポリシーは、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔である。ポリシー決定部は、コピー先ボリュームに対応した評価時点間隔を、第一のティアに属するリソースの評価時点間隔と第二のティアに属するリソースの評価時点間隔との両方、或いは、第二のティアに属するリソースの評価時点間隔に基づいて決定する。
【００１５】
一つの実施形態では、管理装置が、履歴管理部を更に備える。履歴管理部は、コピー元ボリュームの識別子とそのコピー元ボリュームに対応したポリシーとの対応関係を表す情報を、その対応関係の履歴を表す履歴情報に追記する。ポリシー決定部は、コピー先ボリューム又はそのコピー先ボリュームが属する第二のティアが、履歴情報から特定されるコピー元ボリューム又はそのコピー元ボリュームが属するティアと一致する場合、そのコピー元ボリュームに対応していたポリシー、又は、そのティアに属する他の論理ボリュームに対応するポリシーを、コピー先ボリュームのポリシーに決定することができる。
【００１６】
一つの実施形態では、ポリシー決定部は、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、コピー元ボリュームに所属する経路に直接的及び間接的に所属するリソースと、コピー先ボリュームに所属する経路に直接的及び間接的に所属するリソースとを、コピーに関わるリソースとして特定する。ポリシー決定部は、特定されたリソースについて、コピーが完了した直後から一定時間が経つまでである一時期間に対応した一時期間用ポリシーを決定する。リソース評価部は、一時期間である場合に、上記決定された一時期間用ポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する。
【００１７】
一つの実施形態では、一時期間用ポリシーは、一時期間後のポリシーよりも厳しいポリシーとされる。具体的には、例えば、ポリシーが、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔、又は、評価時点間隔において取得する性能値の個数である場合、一時期間用の評価時点間隔が、一時期間後の評価時点間隔と比べて短い、或いは、一時期間用の上記個数は、一時期期間後の個数と比べて多い。
【００１８】
一つの実施形態では、管理装置に、決定された一時期期間用ポリシーをコピーが完了した後に有効とするアクション実行制御部が更に備えられる。リソース評価部が、一時期間用ポリシーが有効でなければ、その一時期間用ポリシーを基にした判断を実行せず、その一時期間用ポリシーが有効であるならば、その一時期間用ポリシーを基にした判断を実行する。
【００１９】
一つの実施形態では、ポリシー決定部は、どのリソースがどの経路に所属するかを表す経路管理情報を参照し、コピー元ボリュームからコピー先ボリュームへのコピーにおいてデータが通る経路に直接的及び間接的に所属するリソースを、コピーに関わるリソースとして特定し、特定されたリソースについて、コピーの実行期間中に対応したコピー期間用ポリシーを決定する。リソース評価部は、コピーの実行期間中である場合に、決定されたコピー期間用ポリシーを基に、アクションを実行するか否かをその評価対象リソースの性能値を用いて判断する。
【００２０】
一つの実施形態では、ポリシーは、リソースの性能値と比較される閾値、アクションを実行するか否かの判断をリソースの性能値を用いて判断することである評価を実行する時点の間隔、又は、評価時点間隔において取得する性能値の個数である。ポリシー決定部は、特定されたリソースに対応したコピー期間用の閾値、評価時点間隔、又は性能値の個数を、予め定義された値、又は、その値を補正した値に決定する。
【００２１】
一つの実施形態では、リソース評価部は、コピーの実行期間中である場合に、評価対象リソースについてアクションを実行するとの判断になれば、アクションの実行として、コピーを停止或いは減速することをストレージシステムに指示する。
【００２２】
一つの実施形態では、管理装置に、決定されたコピー期間用ポリシーをコピー期間中である場合に有効とするアクション実行制御部が更に備えられる。リソース評価部が、コピー期間用ポリシーが有効でなければ、そのコピー期間用ポリシーを基にした判断を実行せず、そのコピー期間用ポリシーが有効であるならば、そのコピー期間用ポリシーを基にした判断を実行する。
【００２３】
上述した複数の実施形態のうちの二以上を組み合わせることができる。また、上述した各部（例えば、ポリシー決定部、リソース評価部、アクション実行制御部、履歴管理部）は、管理装置に代えて又は加えて、ホストコンピュータ或いはストレージシステムなどの装置に存在しても良い。また、上述した各部は、ハードウェア、コンピュータプログラム又はそれらの組み合わせ（例えば一部をコンピュータプログラムにより実現し残りをハードウェアで実現すること）により構築することができる。コンピュータプログラムは、所定のプロセッサに読み込まれて実行される。また、コンピュータプログラムがプロセッサに読み込まれて行われる情報処理の際、適宜に、メモリ等のハードウェア資源上に存在する記憶域が使用されてもよい。また、コンピュータプログラムは、ＣＤ−ＲＯＭ等の記録媒体から計算機にインストールされてもよいし、通信ネットワークを介して計算機にダウンロードされてもよい。
【００２４】
以下、コピーとしてマイグレーションが採用された、本発明の一実施形態を詳細に説明する。
【００２５】
まず、以下の説明で使用する用語「メトリック値」、「アラート定義」、「アクション方法」、「マイグレーション」、「試行期間」、「マイグレーション期間」及び「通常時」について説明する。
【００２６】
「メトリック値」とは、メトリック（リソースに関する性能項目）に対応した、性能監視対象リソースの性能値のことである。メトリック値としては、例えば、ストレージシステムについて言えば、ＣＰＵの使用率、キャッシュメモリの使用量、論理ボリュームのＩＯＰＳ（１秒間当たりに受けたＩ／Ｏコマンドの数）及びＩ／Ｏ処理時間（一つのＩ／Ｏコマンドの処理に要した時間長）がある。また、例えば、ＳＡＮスイッチについて言えば、各ポートの送信レート及び受信レートがある。
【００２７】
「アラート定義」とは、アラートに関する情報であり、具体的には、アラート条件とアクション方法とを表す情報である。「アラート」とは、リソースのメトリック値が或る状態である場合にその事象をユーザ（例えば、ストレージシステムの管理者或いは利用者）に対し自動的に通知する機能のことである。アラート条件は、例えば、メトリック値の閾値とメトリック値の評価間隔とにより定義される。アラート定義は、各リソースの各種メトリックについて設定することが可能である。
【００２８】
「アクション方法」とは、どのようにしてアクションを実行するか、具体的には、例えば、メトリック値が閾値以上である（或いは以下である）ことの事象の発生を通知する方法である。具体的な通知方法としては、電子メールの送信や、コマンドの実行、性能レポートの作成等がある。
【００２９】
「マイグレーション」とは、論理ボリューム間でのデータのマイグレーションのことであるが、本実施形態では、特に、ティア間でのデータのマイグレーション、具体的には、第一のティアに属するマイグレーション元ボリュームから、第一のティアとは異なる第二のティアに属するマイグレーション先ボリュームへのデータのマイグレーションのことを指す。
【００３０】
「試行期間」とは、マイグレーション元ボリュームからマイグレーション先ボリュームへのデータのマイグレーションが完了した時点から一定時間が経つまでの間の期間を意味する。
【００３１】
「マイグレーション期間」とは、マイグレーションの開始時点から完了時点までの間の期間を意味する。
【００３２】
「通常時」とは、試行期間及びマイグレーション期間以外の期間における時点を意味する。
【００３３】
本実施形態では、以下の（考察１）〜（考察３）に基づく工夫が施されている。
【００３４】
（考察１）第一のティアに所属する第一の論理ボリューム内のデータが第二のティアに所属する第二の論理ボリュームにマイグレーションされる場合に、第一の論理ボリュームについてアラート条件があるとする。第一の論理ボリュームについてのアラート条件を第二の論理ボリュームに引き継ぐことで、マイグレーション後に、第二の論理ボリュームについてそのアラート条件を使用する方法が考えられるが、その方法は適切ではないと考えられる。なぜなら、マイグレーション前後のティアの特性（例えば性能面での特性）には差異があるためである。このため、ティア間の特性の差異を考慮してユーザが第二の論理ボリュームのアラート条件を新たに定義する必要があるが、人手の作業に頼ると設定誤りや設定漏れが生じる可能性がある。
【００３５】
（考察２）第一の論理ボリュームから第二の論理ボリュームへのマイグレーションが完了した後、ストレージシステムのホストコンピュータ（本実施形態では業務サーバ）からのアクセス先が第一の論理ボリュームから第二の論理ボリュームに切り替わるため、第二の論理ボリュームに対するＩ／Ｏによる負荷（以下、Ｉ／Ｏ負荷）が発生することになる。しかし、Ｉ／Ｏ負荷の増加は、第二の論理ボリュームだけでなく、第二の論理ボリュームを指定したＩ／Ｏコマンドの発行元である第一のアプリケーションプログラムから第二の論理ボリュームに到るＩ／Ｏ経路（Ｉ／Ｏコマンドが流れる経路）に所属する全てのリソースで負荷が増加する可能性がある。また、これにより、そのＩ／Ｏ経路に所属するリソースを共有する他のＩ／Ｏ経路に所属するリソースも、性能上の影響を受ける可能性がある。さらに、ホストコンピュータからのアクセス先が第二の論理ボリュームに切り替わることにより、第一の論理ボリュームにＩ／Ｏ負荷が生じなくなるが、それによって、第一のアプリケーションから第一の論理ボリュームに到るＩ／Ｏ経路に所属するリソースにかかるＩ／Ｏ負荷も減少するが、Ｉ／Ｏ経路に所属するリソースを共有する他のＩ／Ｏ経路に所属するリソースにかかるＩ／Ｏ負荷は、増える可能性がある。なぜなら、例えば、二以上のＩ／Ｏ経路を共有していた或るリソースでメトリック値が上限に達しているような状況では、それら二以上のＩ／Ｏ経路のうちの或る一つのＩ／Ｏ経路のＩ／Ｏ負荷が減ることで他のＩ／Ｏ経路のＩ／Ｏ負荷を増やせるからである。このように、マイグレーション後は、コンピュータシステムにおけるＩ／Ｏ負荷分布が変化する。
【００３６】
（考察３）マイグレーションでは、第一の論理ボリュームからデータを読み出して第二の論理ボリュームにそのデータを書き込むことによって実現される。そのため、マイグレーション期間中は、一時的に、第一の論理ボリュームにかかるＩ／Ｏ負荷、第二の論理ボリュームにかかるＩ／Ｏ負荷、及び、第一の論理ボリュームから第二の論理ボリュームに到るマイグレーションＩ／Ｏ経路（マイグレーションによってデータが流れる経路）に所属するリソースにかかるＩ／Ｏ負荷が、それぞれ増大する。これにより、マイグレーションＩ／Ｏ経路に所属するリソースを共有する他のＩ／Ｏ経路に所属するリソースが、性能上の影響を受けることになる。
【００３７】
以下、図面を参照して、本実施形態を詳細に説明する。なお、以下の説明では、コンピュータプログラムが主語になる場合は、実際にはそのコンピュータプログラムを実行するＣＰＵによって処理が行われるものとする。
【００３８】
図１は、本発明の一実施形態に係るシステムの全体構成の一例を示す。
【００３９】
ＬＡＮ（Local Area Network）１０５に、階層管理クライアント１０１、階層管理サーバ１０７、複数（又は一つ）の業務クライアント１０２、複数（又は一つ）の業務サーバ１０６、複数（又は一つ）のＳＡＮスイッチ１２２、マルチティアドストレージシステム３０３、スイッチ監視エージェントサーバ１１６、ストレージ監視エージェントサーバ１１８、性能監視クライアント３０６及び性能監視サーバ１２１が接続されている。複数のＳＡＮスイッチ１２２には、複数の業務サーバ１０６及びマルチティアドストレージシステム３０３が接続されている。業務サーバ１０６、ＳＡＮスイッチ１２２及びマルチティアドストレージシステム３０３により、コンピュータシステムとしてのＳＡＮが構成されている。このＳＡＮに存在するリソースのメトリック値が、性能監視サーバ１２１により、後述する各種エージェントプログラムを通じて取得される。
【００４０】
業務クライアント１０２は、業務システムのユーザインタフェース機能を提供する装置であり、ＬＡＮ１０５を経由して、業務サーバ１０６内のアプリケーション１０９等と通信する。例えば、パーソナルコンピュータ、ワークステーション、シンクライアント端末等である。業務クライアント１０２、階層管理クライアント１０１及び性能監視クライアント３０６は、例えば、パーソナルコンピュータ、ワークステーション、メインフレーム装置、或いはシンクライアント端末である。
【００４１】
業務サーバ１０６は、業務を実行するサーバマシンである。業務サーバ１０６は、例えば、ＮＩＣ（Network Interface Card）１０６４や、ＣＰＵ（Central Processing Unit）１０６３や、記憶部１０６１や、ＨＢＡ（Host
Bus Adapter）１０６５を備える。ＨＢＡ１０６５は、ＳＡＮスイッチ１２２に接続されるポート１１３を有している。記憶部１０６１は、例えば、メモリ及び／又は他種の記憶装置で構成されている（これは、後述する他の記憶部１０７１、１２１３等についても同様である）。記憶部１０６１には、ＣＰＵ１０６３に実行させるコンピュータプログラムとして、業務を実行するためのアプリケーションプログラムであるアプリケーション１０９（図では「ＡＰ」と略記）や、オペレーティングシステム（ＯＳ）１１１や、アプリケーション１０９の性能監視のエージェントプログラムであるアプリケーション性能監視エージェント１１０や、業務ホスト１０６の性能監視のエージェントプログラムであるホスト性能監視エージェント１１２が記憶されている。アプリケーション１０９は、業務クライアント１０２からの処理要求に応答し、必要に応じて、マルチティアドストレージシステム３０３に対するデータの入出力を行なう（具体的には、論理ボリューム１３６を指定したＩ／Ｏコマンドを送信する）。アプリケーション１０９からマルチティアドストレージシステム３０３へのアクセスは、ＯＳ１１１、ＨＢＡのポート１１３、ＳＡＮスイッチ１２２のホスト側ポート１２７、ＳＡＮスイッチ１２２、ＳＡＮスイッチ１２２のストレージ側ポート１２９、マルチティアドストレージシステム３０３のポート１３２を経由して行なわれる。
【００４２】
マルチティアドストレージシステム３０３内の複数の論理ボリューム１３６を階層管理するためのハードウェアとして、階層管理クライアント１０１及び階層管理サーバ１０７があり、そのためのソフトウェア（コンピュータプログラム）として、階層管理ソフト３０７がある。階層管理サーバ１０７は、例えば、ＮＩＣ１０７３、ＣＰＵ１０７４及び記憶部１０７１を備えており、その記憶部１０７１に、ＣＰＵ１０７４に実行される階層管理ソフト３０７が記憶されている。階層管理クライアント１０１は、階層管理ソフト３０７のユーザインタフェース機能を提供する装置であり、ＬＡＮ１０５を経由して階層管理ソフト３０７と通信する。階層管理ソフト３０７は、論理ボリューム１３６とそれが所属するティアとの対応関係を示す情報を管理したり、ティア間でのデータのマイグレーションに関するタスク管理の機能を提供したりする。
【００４３】
リソースの性能監視のためのシステムを構成するハードウェアとして、性能監視クライアント３０６、性能管理サーバ１２１、スイッチ監視エージェントサーバ１１６及びストレージ監視エージェントサーバ１１８があり、そのシステムを構成するソフトウェアとして、ＳＡＮ性能監視ソフト３０５、アプリケーション性能監視エージェント１１０、ホスト性能監視エージェント１１２、ストレージ性能監視エージェント３０４及びＳＡＮスイッチ性能監視エージェント１１７がある。性能監視サーバ１２１は、例えば、ＣＰＵ１２１１、ＮＩＣ１２１２及び記憶部１２１３を備えており、記憶部１２１３が、例えば、ＣＰＵ１２１１に実行されるＳＡＮ性能監視ソフト３０５を記憶している。スイッチ監視エージェントサーバ１１６は、例えば、ＣＰＵ１１６１、ＮＩＣ１１６２及び記憶部１１６３を備えており、記憶部１１６３が、例えば、ＣＰＵ１１６１に実行されるＳＡＮスイッチ性能監視エージェント１１７を記憶している。ストレージ監視エージェントサーバ１１８が、例えば、ＣＰＵ１１８４、ＮＩＣ１１８２、ＨＢＡ１１８３及び記憶部１１８１を備えており、記憶部１１８１が、例えば、ＣＰＵ１１８４に実行されるストレージ性能監視エージェント３０４を記憶している。
【００４４】
性能監視クライアント３０６は、ＳＡＮ性能監視ソフト３０５のユーザインタフェース機能を提供する装置であり、ＬＡＮ１０５を経由して性能監視サーバ１２１のＳＡＮ性能監視ソフト３０５と通信する。ＳＡＮ性能監視ソフト３０５は、ＳＡＮを構成するリソースのメトリック値の取得や評価を行う機能を有したソフトウェアである。ＳＡＮ性能監視ソフト３０５は、ＳＡＮを構成するさまざまなリソース（ハードウェアやソフトウェア）からメトリック値を取得するため、それぞれ専用の性能監視エージェントプログラムを利用する。エージェントプログラムの構成や配置にはいろいろな方法が考えられ、図１では、そのうちの一つを例に採り示している。すなわち、アプリケーション性能監視エージェント１１０は、アプリケーション１０９に関するメトリック値を取得するためのコンピュータプログラムである。ホスト性能監視エージェント１１２は、業務サーバ１０６、ＯＳ１１１、及びＨＢＡ１０６５のポート１１３に関するメトリック値を取得する。ストレージ性能監視エージェント３０４は、ＨＢＡ１１８３のポート１１８５やＳＡＮスイッチ１２２のポート１２８を経由して、マルチティアドストレージシステム３０３が有する各種リソース（例えば論理ボリューム１３６やポート１３２）に関するメトリック値を取得する。ＳＡＮスイッチ性能監視エージェント１１７は、ＳＡＮスイッチ１２２における各種リソース（例えば、ポート１２７、１２８及び１２９）に関するメトリック値を取得する。ＳＡＮ性能監視ソフト３０５、ストレージ性能監視エージェント３０４、ＳＡＮスイッチ性能監視エージェント１１７、アプリケーション性能監視エージェント１１０、ホスト性能監視エージェント１１２及び階層管理ソフト３０７のうちの少なくとも二つが、異なるサーバで実行されても良いし、一つのサーバで実行されても良い。言い換えれば、階層管理サーバ１０７、エージェントサーバ１１６、１１８及び性能監視サーバ１２１のうちの少なくとも二つが、一つのサーバとされても良い。
【００４５】
マルチティアドストレージシステム３０３は、制御部３０３１と、複数の記憶装置１３５とを有する。
【００４６】
制御部３０３１は、業務サーバ１０６からＩ／Ｏコマンドを受信し、そのＩ／Ｏコマンドから特定される論理ボリュームに対するＩ／Ｏを実行する装置である。制御部３０３１は、例えば、ポート１３２、ＣＰＵ、キャッシュメモリなどを備えた回路基板とすることができる。そのＣＰＵで、例えば、コンピュータプログラムとしてのマイグレーション実行部３０８が実行される。マイグレーション実行部３０８は、複数の論理ボリューム１３６のうちのマイグレーション元ボリューム１３６から、複数の論理ボリューム１３６のうちのマイグレーション先ボリューム１３６へのデータのマイグレーションを実行する。
【００４７】
複数の記憶装置１３５には、例えば、異なる属性の記憶装置１３５が混在している。属性としては、例えば、ハードディスクドライブ、ＤＶＤ（Digital Versatile Disk）ドライブ、フラッシュメモリドライブといった大属性であっても良いし、信頼性、性能及び／又は価格といった小属性であっても良い。すなわち、複数の記憶装置１３５には、例えば、大属性及び／又は小属性が異なる記憶装置が混在している。二以上の記憶装置１３５でアレイグループ（ＲＡＩＤ（Redundant Array of Independent (or Inexpensive) Disks）グループと呼ばれることもある）を構成することができ、アレイグループの記憶空間を基に、論理ボリューム１３６を形成することができる。アレイグループを構成する二以上の記憶装置１３５の属性を同じ（例えば実質的に同じ）とすることで、そのアレイグループを基に形成された二以上の論理ボリューム１３６の属性も同じとすることができる。その属性を基に、複数のティアのうちのどのティアにどの論理ボリュームを所属させるかを決めることができる。例えば、高信頼性の記憶装置１３５で構成されたアレイグループ上にある論理ボリュームは、高レベルのティアに所属させ、低信頼性の記憶装置１３５で構成されたアレイグループ上にある論理ボリュームは、低レベルのティアに所属させることができる。
【００４８】
マルチティアドストレージシステム３０３に代えて、他の形態の階層管理されるストレージシステムが採用されても良い。例えば、マルチティアドストレージシステム３０３に代えて、図２に例示するストレージシステムが採用されても良い。このストレージシステムは、仮想化装置２０１と、属性の異なる複数のストレージサブシステム２０８とで構成されている。一つのストレージサブシステム２０８には、複数の記憶装置が備えられており、それら複数の記憶装置の属性は同じである。仮想化装置２０１の仮想化機能によって、複数のストレージサブシステム２０８に存在する論理ボリューム２１１が、仮想化装置２０１の仮想論理ボリューム２０５として業務サーバ１０６に提供される。業務サーバ１０６から仮想論理ボリューム２０５にアクセスされることで、その仮想論理ボリューム２０５に対応した論理ボリューム２１１にアクセスが行われる。異なるストレージサブシステム２０８に異なる論理ボリューム２１１が、それぞれティアに所属する。例えば、第一のストレージサブシステム内のすべての論理ボリューム２１１が、第一のティアに所属し、第二のストレージサブシステム内の全ての論理ボリューム２１１が、第二のティアに所属する。
【００４９】
図３は、ＳＡＮ性能監視ソフト３０５の構成例を示す。
【００５０】
ＳＡＮ性能監視ソフト３０５は、プログラムモジュールとして、例えば、エージェント情報収集部３１２、Ｉ／Ｏ経路抽出部３１８、階層管理情報収集部３２４、コマンド実行制御部３０９、アラート実行制御部３２２、アラート実行部３１０、アラート生成部３２０、ＳＮＭＰトラップ発行部３１１、メール送信部３１４及びユーザ定義部３１７を有する。また、ＳＡＮ性能監視ソフト３０５が、参照及び／又は更新（追加、変更或いは削除）する情報要素を含んだ情報として、例えば、メトリック値情報３１３、リソース間関連情報３１５、Ｉ／Ｏ経路情報３１９、マイグレーション情報３２５、ティア情報３２６、アラート履歴情報３２７、マイグレーションＩ／Ｏ経路情報３２３、アラート生成制御情報３２１及びアラート情報３１６がある。
【００５１】
図３に示している「その他ＳＡＮ構成リソース３０１」とは、ＳＡＮにおけるマルチティアドストレージ３０３に関するリソース以外のリソース（ハードウェアやソフトウェア）である。具体的には、その他ＳＡＮ構成リソース３０１は、例えば、業務サーバ１０６に関わるリソース（例えば、ＨＢＡ１０６５のポート１１３、アプリケーション１０９、ＯＳ１１１）、ＳＡＮスイッチ１２２に関わるリソース（例えばポート１２７、１２８及び１２９）である。
【００５２】
また、図３に示している「その他性能監視エージェント３０２」とは、その他ＳＡＮ構成リソース３０１から構成情報及びメトリック値を取得するソフトウェアである。具体的には、その他性能監視エージェント３０２は、例えば、アプリケーション性能監視エージェント１１０、ホスト性能監視エージェント１１２及びＳＡＮスイッチ性能監視エージェント１１７である。
【００５３】
ＳＡＮにおけるリソースのメトリック値の監視は以下のように行なわれる。
【００５４】
その他性能監視エージェント３０２及びストレージ性能監視エージェント３０４が、所定の方法により起動され（例えば、スケジューリング設定に従い定期的にタイマーによって起動されるか、或いは、ＳＡＮ性能監視ソフト３０５の要求で起動され）、自分が担当する監視対象リソースからメトリック値を取得する。ＳＡＮ性能監視ソフト３０５のエージェント情報収集部３１２も同様に、所定の方法で起動され（例えば、スケジューリング設定に従い定期的に起動され）、各性能監視エージェント３０２及び３０４から、メトリック値を取得してメトリック値情報３１３に登録する。
【００５５】
ＳＡＮ性能監視ソフト３０５のアラート実行部３１０は、メトリック値情報３１３を監視し、メトリック値情報３１３におけるメトリック値が特定の条件に合致しているならば、特定のアクションを実行する。特定のアクションとしては、例えば、メトリック値が特定の条件に合致しているという事象の発生を所定の方法でユーザに通知するアクションがある。通知方法としては、例えば、電子メール、SNMPトラップ、コマンド実行等があり、それぞれメール送信部３１４、SNMPトラップ発行部３１１、コマンド実行制御部３０９によって処理される。アラート条件とアクション方法との定義を表す情報であるアラート定義が、アラート情報３１６に記録される。アラート情報３１６に記録されるアラート定義としては、例えば、ユーザが操作する性能監視クライアント３０６からユーザ定義部３１７を通じて入力されるものと、アラート生成部３２０が自動的に生成するものとがある。
【００５６】
階層管理ソフト３０７が、マイグレーション情報３２５に記録される情報要素とティア情報３２６に記録される情報要素を管理している。階層管理情報収集部３２４が、マイグレーション情報３２５に記録される情報要素とティア情報３２６に記録される情報要素を、階層管理ソフト３０７から収集し、収集した情報要素を、マイグレーション情報３２５やティア情報３２６に記録する。
【００５７】
アラート実行制御部３２２は、アラート情報３１６に記録されている各アラート定義を有効とするか無効とするかを制御する。
【００５８】
アラート生成部３２０は、マイグレーション先ボリュームに対応したアラート定義を、自動生成する。また、アラート生成部３２０は、試行期間用のアラート定義として、通常時用のアラート条件よりも厳しいアラート条件（言い換えれば、監視を強化するアラート条件）を含んだアラート定義を自動生成する。さらに、アラート生成部３２０は、マイグレーション期間用のアラート定義も自動生成する。これらのアラート定義自動生成については、後に詳細に説明する。
【００５９】
その他性能監視エージェント３０２及びストレージ性能監視エージェント３０４が、業務サーバ１０６、ＳＡＮスイッチ１２２及びマルチティアドストレージシステム３０３が保持している、リソース間関連情報３１５に記録されるリソース間関連情報要素（例えば、どのポートとどのポートが対応付けられているかを表す情報要素や、どのポートとどの論理ボリュームが対応付けられているかを表す情報要素などを）を収集する。エージェント情報収集部３１２が、その他性能監視エージェント３０２及びストレージ性能監視エージェント３０４が収集したリソース間関連情報要素を取得し、取得したリソース間関連情報要素をリソース間関連情報３１５に記録する。Ｉ／Ｏ経路抽出部３１８は、リソース間関連情報３１５を基に、Ｉ／Ｏ経路情報３１９を作成して、性能監視サーバ１２１内の記憶部１２１３に記憶させる。
【００６０】
図４は、コンピュータシステムにおけるＩ／Ｏ経路の構成例を示す。なお、図４では、同種のリソースを区別して説明するために、リソースの名称に、Ａ、Ｂ、Ｃ、…のようにアルファベットを通し番号のごとく付加している。
【００６１】
各業務サーバ１０６において、アプリケーション１０９がアクセスするファイル４０８が、論理デバイス４１３に割当てられている。論理デバイス４１３は、マルチティアドストレージシステム３０３内にある論理ボリューム１３６に対応している。ファイル４０８は、ＯＳ１１１がデータの入出力サービスを提供する単位である。論理デバイス４１３は、ファイル４０８を外部記憶装置（本実施形態では、マルチティアドストレージシステム３０３内の論理ボリューム１３６）に格納する領域としてＯＳで管理されるものである。
【００６２】
例えば、業務サーバＡにおいて、アプリケーションＡはファイルＡ及びファイルＢにアクセスする。ファイルＡは、論理デバイスＡに割当てられており、論理デバイスＡは、論理ボリュームＡに対応している。ファイルＢは、論理デバイスＢに割当てられており、論理デバイスＢは、論理ボリュームＢに対応している。アプリケーションＡ及びＢは、アプリケーション性能監視エージェント１１０による情報取得対象となるリソースである。ファイルＡ乃至Ｃと、論理デバイスＡ及びＢと、ポートＡ及びＢは、ホスト性能監視エージェント１１２による情報取得対象となるリソースである。
【００６３】
図４において、リソース間を結ぶ実線は、それらのリソース間に、一方のリソースのＩ／Ｏ負荷が増えると他方のリソースのＩ／Ｏ負荷も増えるという性能上の依存関係があることを意味する。具体的には、例えば、アプリケーションＡとファイルＡ及びＢを結ぶ実線は、アプリケーションＡがファイルＡならびにファイルＢにＩ／Ｏコマンドを発行するという関係を表す。また、例えば、ファイルＡと論理デバイスＡを結ぶ実線は、ファイルＡに対するＩ／Ｏ負荷は論理デバイスＡのＩ／Ｏ（ライトやリード）になるという関係を表す。
【００６４】
また、図４において、リソースを一端或いは中継点とした５本の点線４７１、４７２、４７３、４７４及び４７５は、それぞれ、Ｉ／Ｏ経路を示している。
【００６５】
マルチティアドストレージシステム３０３におけるリソースのメトリック値を取得するためストレージ性能監視エージェント３０４が稼動しているものとする。このエージェント３０４が情報取得対象とするリソースには、例えば、ポートＵ乃至Ｘと、論理ボリュームＡ乃至Ｄと、アレイグループＡ乃至Ｃと、記憶装置Ａ乃至Ｆとがある。図示の例では、ティアＡに、論理ボリュームＡ及びＢが所属し、それらの論理ボリュームＡ及びＢが、記憶装置Ａ及びＢで構成されたアレイグループＡを基に形成されている。また、ティアＢに、論理ボリュームＣ乃至Ｆが所属し、論理ボリュームＥ及びＣが、記憶装置Ｃ及びＤで構成されたアレイグループＢを基に形成されており、論理ボリュームＦ及びＤが、記憶装置Ｅ及びＦで構成されたアレイグループＣを基に形成されている。業務サーバ１０６内の論理デバイス４１３は、論理ボリューム１３６に割り当てられ、論理ボリューム１３６はアレイグループ４６２に、アレイグループ４６２は記憶装置１３５に割り当てられているため、これらリソース間には性能の依存関係がある。また、論理デバイス４１３と論理ボリューム１３６の対が決まると、これらの間でやり取りされるデータのＩ／Ｏ経路として、ＨＢＡ１０６５のポート１１３から、ＳＡＮスイッチのポート１２７、１２９を経て、マルチティアドストレージシステム３０３のポート１３２までが決まる。業務サーバ１０６内の論理デバイス４１３にかかるＩ／Ｏ負荷は、Ｉ／Ｏ経路に所属する各ポートに対する通信のＩ／Ｏ負荷となるため、論理デバイス４１３及び論理ボリューム１３６の対と、Ｉ／Ｏ経路に所属する各ポートとの間には、性能の依存関係がある。図４の例では、ファイルＡは論理デバイスＡに割当てられており、論理デバイスＡは論理ボリュームＡに割り当てられ、論理ボリュームＡはアレイグループＡに割当てられ、アレイグループＡは記憶装置Ａ及びＢに割り当てられ、論理デバイスＡと論理ボリュームＡの対に、ポートＡ、ポートＥ、ポートＩ、ポートＭ、ポートＱ、ポートＵが対応する。このため、Ｉ／Ｏ経路４７１のノードが、アプリケーションＡ、ファイルＡ、論理デバイスＡ、ポートＡ、ポートＥ、ポートＩ、ポートＭ、ポートＱ、ポートＵ、論理ボリュームＡ及びアレイグループＡとなっており、それらのノード間（つまりリソース間）がリンクしている。Ｉ／Ｏ経路４７１によれば、アプリケーションＡのファイルＡに対するＩ／Ｏ負荷は、ファイルＡから、論理デバイスＡ、ポートＡ、ポートＥ、ポートＩ、ポートＭ、ポートＱ、ポートＵ、論理ボリュームＡ及びアレイグループＡで構成されたＩ／Ｏ経路４７１を経て、記憶装置Ａ及びＢに影響する。
【００６６】
図５は、図４に示されているコンピュータシステムにおいて論理ボリュームＢから論理ボリュームＥへのデータのマイグレーションが完了した後の状態を示す。
【００６７】
論理ボリュームＢから論理ボリュームＥへのマイグレーションが行われた場合、マルチティアドストレージシステム３０３内での内部経路（例えば、ポート１３２の接続先論理ボリューム１３６）が切替えられる。具体的には、例えば、図４では、ポートＶと繋がる論理ボリュームは論理ボリュームＢであったが、マイグレーションにより、論理ボリュームＢ内のデータが論理ボリュームＥに存在することになるため、ポートＶの接続先は、論理ボリュームＢから論理ボリュームＥに切替えられる。この結果、図４では、ポートＶ及び論理ボリュームＢを経由するＩ／Ｏ経路４７２及び４７３が、図５に示すように、ポートＶ及び論理ボリュームＥを経由するＩ／Ｏ経路５０１及び５０２にそれぞれ切り替わる（なお、Ｉ／Ｏ経路切替えは、上記のように内部経路の切替えに代えて又は加えて、マルチティアドストレージシステム３０３内又は外の所属するリソースの変更（例えばＳＡＮスイッチにおけるポート１２７、１２９の変更）が行われても良い。
【００６８】
このようなＩ／Ｏ経路切替えによって性能的に影響を受けるリソース（以下、経路切替え影響リソース）は、論理ボリュームＢを経由するＩ／Ｏ経路４７２及び４７３に直接的及び間接的に所属していたリソースと、論理ボリュームＥを経由するＩ／Ｏ経路５０１及び５０２に直接的及び間接的に所属しているリソースである。Ｉ／Ｏ経路（以下、便宜上「対象Ｉ／Ｏ経路」と言う）に直接的に所属するリソースとは、その対象Ｉ／Ｏ経路それ自体に所属するリソースのことである。対象Ｉ／Ｏ経路に間接的に所属するリソースとは、その対象Ｉ／Ｏ経路それ自体には所属しないが、その対象Ｉ／Ｏ経路に所属するリソースに関わる他のＩ／Ｏ経路に所属するリソースのことである。例えば、第一のＩ／Ｏ経路に第一のリソースが所属し、その第一のリソースが第二のＩ／Ｏ経路にも所属し、第二のＩ／Ｏ経路に第三のリソースが所属し、第三のリソースが第三のＩ／Ｏ経路にも所属している場合、第一のＩ／Ｏ経路を対象Ｉ／Ｏ経路とすれば、第一のリソースが、第一のＩ／Ｏ経路に直接的に所属するリソースであり、第二及び第三のリソースが、第一のＩ／Ｏ経路に間接的に所属するリソースである。第一のＩ／Ｏ経路から見れば、第二のＩ／Ｏ経路の方が第三のＩ／Ｏ経路よりも、第一のＩ／Ｏ経路との間の論理的な距離が近いといえる。第一のＩ／Ｏ経路は、第二のＩ／Ｏ経路には第一のリソースのみを通じて関わっているが（言い換えれば、介在するＩ／Ｏ経路の数はゼロであるが）、第三のＩ／Ｏ経路は、第一のリソースに加えて第二のＩ／Ｏ経路の第二のリソースを通じて関わっているためである（言い換えれば、介在するＩ／Ｏ経路の数は１であるためである）。このため、前述した「論理的な距離」とは、対象Ｉ／Ｏ経路との間に介在するＩ／Ｏ経路の数で表すことができる。
【００６９】
本実施形態では、後述するように、経路切替え影響リソースが特定されるが、その特定の際には、対象Ｉ／Ｏ経路との間の論理的な距離に関わらず、対象Ｉ／Ｏ経路に直接的及び間接的に所属するリソースが特定される。図４及び図５について言えば、一例を挙げれば、マイグレーションによってＩ／Ｏ負荷が減ることになる論理ボリュームＢ及びアレイグループＡや、マイグレーションによってＩ／Ｏ負荷が増えることになる論理ボリュームＥ及びアレイグループＢや、その他アプリケーションＡ、ファイルＡ、論理デバイスＡ、ポートＡ、ポートＥ、ポートＩ、ポートＭ、ポートＱ、ポートＵ、論理ボリュームＡ、ファイルＢ、論理デバイスＢ、ポートＢ、ポートＦ、ポートＪ、ポートＮ、ポートＲ、ポートＶ、アプリケーションＢ、ファイルＣ、論理ボリュームＥ、アレイグループＢ、アプリケーションＣ、ファイルＤ、論理デバイスＣ、ポートＣ、ポートＧ、ポートＫ、ポートＯ、ポートＳ、ポートＷ及び論理ボリュームＣ（つまり、Ｉ／Ｏ経路４７１、４７２、４７３、５０１、５０２及び４７４に所属するリソース）が、経路切替え影響リソースとなる。また、図には示していないが、例えば、Ｉ／Ｏ経路５０１が、ポートＲではなくポートＹを経由するようになれば、ポートＹも、経路切替え影響リソースとなる。
【００７０】
図６は、図４に示されているコンピュータシステムにおいて論理ボリュームＢから論理ボリュームＥへのデータのマイグレーションが行われている最中の状態を示す。
【００７１】
この図６によれば、マイグレーションＩ／Ｏ経路に所属しているリソースは、アレイグループＡ、論理ボリュームＢ、論理ボリュームＥ及びアレイグループＢである。これらのリソースが所属するＩ／Ｏ経路は、Ｉ／Ｏ経路４７１、４７２、４７３及び４７４である。これらのＩ／Ｏ経路４７１、４７２、４７３及び４７４に所属するリソースが、マイグレーション期間中（つまりマイグレーションの実行中）に性能的に影響を受けるリソース（以下、マイグレーション期間影響リソース）である。本実施形態では、そのマイグレーション期間影響リソースも特定される。
【００７２】
さて、以下、ＳＡＮ性能監視ソフト３０５が参照及び／又は更新する情報要素を含む各種情報について説明する。
【００７３】
図７は、メトリック値情報３１３の構成例を示す。
【００７４】
メトリック値情報３１３は、例えばテーブルであり、各リソースの各種メトリックについてのメトリック値を含む。具体的には、メトリック値情報３１３には、例えば、一つのメトリック値につき、そのメトリック値を収集した日時を表す情報要素である日時７０２と、そのメトリック値の収集対象リソースの識別子であるリソース識別子７０３と、そのメトリック値に対応したメトリックの識別子であるメトリック識別子７０４と、収集されたメトリック値であるメトリック値７０５とが記録される。
【００７５】
図８乃至図１２は、リソース間関連情報３１５に含まれる情報を示す。具体的には、リソース間関連情報３１５には、アプリケーション・ファイル間関連情報８０１（図８参照）、ファイル・論理デバイス間関連情報９０１（図９参照）、論理ボリューム・アレイグループ間関連情報１００１（図１０参照）、論理ボリューム情報１１０１（図１１参照）、及び論理デバイス・論理ボリューム・ポート対応情報１２０１（図１２参照）が含まれる。これらの情報８０１、９０１、１００１、１１０１及び１２０１に記録される情報要素が、エージェント情報収集部３１２により収集されて、情報８０１、９０１、１００１、１１０１及び１２０１に記録される。
【００７６】
図８に示すように、アプリケーション・ファイル間関連情報８０１は、例えばテーブルであり、アプリケーション１０９とファイル４０８との間の依存関係を表す情報である。アプリケーション・ファイル間関連情報８０１には、具体的には、例えば、アプリケーション１０９とファイル４０８との組合せ一つにつき、アプリケーション識別子８０２とファイル識別子８０３との組が記録される。
【００７７】
図９に示すように、ファイル・論理デバイス間関連情報９０１は、例えばテーブルであり、ファイル４０８と論理デバイス４１３との間の依存関係を表す情報である。ファイル・ボリューム間関連情報９０１には、具体的には、例えば、ファイル４０８と論理デバイス４１３との組合せ一つにつき、ファイル識別子９０２と論理デバイス識別子９０３との組が記録される。
【００７８】
図１０に示すように、論理ボリューム・アレイグループ間関連情報１００１は、例えばテーブルであり、論理ボリューム１３６とアレイグループ４６２との間の依存関係を表す情報である。論理ボリューム・アレイグループ間関連情報１００１には、具体的には、例えば、論理ボリューム１３６とアレイグループ４６２との組合せ一つにつき、論理ボリューム識別子１００２とアレイグループ識別子１００３との組が記録される。
【００７９】
図１１に示すように、論理ボリューム情報１１０１は、例えばテーブルであり、論理ボリューム１３６の識別子と番号との組合せを表す情報である。論理ボリューム情報１１０１には、例えば、一つの論理ボリューム１３６につき、論理ボリューム識別子１１０２と論理ボリューム番号１１０３とが記録される。論理ボリューム１３６について、論理ボリューム識別子１１０２は、不変であるが、論理ボリューム番号１１０３は、マイグレーションが実行されることによって変更される。例えば、前述した例のように、論理ボリュームＢから論理ボリュームＥにデータがマイグレーションされ、論理ボリュームＢの論理ボリューム番号１１０３が“０２”であり、論理ボリュームＥの論理ボリューム番号１１０３が“０５”である場合、論理ボリュームＥの論理ボリューム番号１１０３が、“０５”から“０２”に変更される。このため、論理ボリューム番号１１０３は、論理ボリューム１３６内のデータを識別するための番号とみなすこともできる。
【００８０】
図１２に示すように、論理デバイス・論理ボリューム・ポート対応情報１２０１は、例えばテーブルであり、論理デバイス４１３、論理ボリューム１３６及びポートの対応を表す情報である。論理デバイス・論理ボリューム・ポート対応情報１２０１には、具体的には、例えば、一つの対応につき、論理デバイス識別子１２０２と、論理ボリューム識別子１２０３と、ＨＢＡ１０６５のポート１１３の識別子であるポート識別子１２０４と、マルチティアドストレージシステム３０３にあるポート１３２の識別子であるポート識別子１２０５と、ＳＡＮスイッチ１２２におけるポート１２７、１２９の識別子とＩ／Ｏ経路に沿ったそれらの並びであるポート識別子・順序１２０６とが記録される。
【００８１】
図１３は、Ｉ／Ｏ経路情報３１９の構成例を示す。
【００８２】
Ｉ／Ｏ経路情報３１９は、例えばテーブルであり、Ｉ／Ｏ経路とそれに所属するリソースとの対応関係を表す情報である。Ｉ／Ｏ経路情報３１９には、具体的には、例えば、一つのリソースにつき、リソース識別子１３０３と、そのリソースが所属するＩ／Ｏ経路の識別子である経路識別子１３０２とが記録される。Ｉ／Ｏ経路抽出部３１８によって、リソース間関連情報３１５を基にＩ／Ｏ経路とそれに所属するリソースとの対応関係が特定され、特定された対応関係を表すこのＩ／Ｏ経路情報３１９が記憶部１２１３に記憶される。
【００８３】
図１４は、ティア情報３２６の構成例を示す。
【００８４】
ティア情報３２６は、例えばテーブルであり、ティアとそれに所属する論理ボリュームとの対応関係を表す情報である。ティア情報３２６には、具体的には、例えば、一つの論理ボリュームにつき、論理ボリューム識別子１４０３と、その論理ボリュームが所属するティアの識別子であるティア識別子１４０２とが記録される。このティア情報３２６は、階層管理情報収集部３２４によって、階層管理ソフト３０７から取得した情報（例えばどのティアにどの論理ボリュームが所属するかを表す情報）を基に生成され記憶部１２１３に記憶される。
【００８５】
図１５は、マイグレーション情報３２５の構成例を示す。
【００８６】
マイグレーション情報３２５は、例えばテーブルであり、マイグレーションに関する情報を表す。マイグレーション情報３２５には、具体的には、例えば、一つのマイグレーションにつき、マイグレーション識別子１５０２と、マイグレーション元ボリューム番号１５０３と、マイグレーション先ボリューム番号１５０４と、マイグレーションに関する状態を表す情報であるマイグレーション状態１５０５と、マイグレーションが完了した日時を表す情報であるマイグレーション完了日時１５０６とが記録される。マイグレーション状態１５０５の値としては、例えば、マイグレーションの実行前であることを表す「待機中」、マイグレーションの実行中であることを意味する「実行中」、マイグレーションの実行が開始されたが一時停止されたことを意味する「一時停止」、マイグレーションが完了したことを意味する「完了」、及び、マイグレーションが開始されたが途中でそのマイグレーションを終了したことを意味する「中断」の５種類がある。
【００８７】
階層管理ソフト３０７が、例えば、マイグレーション元ボリューム番号やマイグレーション先ボリューム番号を含んだ情報を階層管理情報収集部３２４に送信する。階層管理情報収集部３２４は、収集された情報をマイグレーション情報３２５に追加する。アラート生成部３２０が、その追加された情報に対応したマイグレーションについて、マイグレーション先ボリューム用、試行期間用及びマイグレーション期間用のアラート定義をそれぞれ生成する。階層管理ソフト３０７が、そのマイグレーションについてそれらアラート定義が生成された後に、そのマイグレーションをマイグレーション実行部３０８に開始させることができる。
【００８８】
また、階層管理ソフト３０７は、マイグレーション状態（例えば、待機中、実行中或いは完了など）を階層管理情報収集部３２４に通知する。階層管理情報収集部３２４は、マイグレーション情報３２５におけるマイグレーション状態１５０５を、通知されたマイグレーション状態に更新する。
【００８９】
図１６は、マイグレーションＩ／Ｏ経路情報３２３の構成例を示す。
【００９０】
マイグレーションＩ／Ｏ経路情報３２３は、例えばテーブルであり、マイグレーションＩ／Ｏ経路に所属するリソースを表す情報である。マイグレーションＩ／Ｏ経路情報３２３には、具体的には、例えば、マイグレーションＩ／Ｏ経路の識別子であるマイグレーション経路識別子１６０２と、そのマイグレーションＩ／Ｏ経路をデータが経由するマイグレーションの識別子１６０３と、そのマイグレーションＩ／Ｏ経路に所属するリソースの識別子１６０４とが記録される。例えば、アラート生成部３２０が、マイグレーション情報３２５とＩ／Ｏ経路情報３１９とに基づいて、このマイグレーションＩ／Ｏ経路情報３２３を作成し、記憶部１２１３に記憶させることができる。
【００９１】
このマイグレーションＩ／Ｏ経路制御情報３２３では、例えば、同一のマイグレーション識別子１６０３の範囲における、同種のリソース識別子１６０４については、上位に存在する方（例えば「論理ボリュームＢ」）がマイグレーション元のリソースであり、下位に存在する方（例えば「論理ボリュームＥ」）がマイグレーション先のリソースである。マイグレーションＩ／Ｏ経路制御情報３２３に、マイグレーション元とマイグレーション先を表す情報要素が付加されても良い。或いは、これに代えて、マイグレーション情報３２５から、マイグレーション元のリソースとマイグレーション先のリソースとが判別されても良い。
【００９２】
図１７は、アラート情報３１６の構成例を示す。
【００９３】
アラート情報３１６は、例えばテーブルであり、どのリソースにどのようなアラート定義が対応付けられているかを表す情報である。アラート情報３１６には、例えば、一つのリソースにつき、アラート種別を表す情報であるアラート種別１７０２と、そのリソースが関わるマイグレーションの識別子１７０３と、リソース識別子１７０４と、そのリソースについてのメトリックの識別子１７０５と、閾値１７０６と、評価間隔１７０７と、アクション種別を表す情報であるアクション種別１７０８と、アクションパラメータ１７０９と、アラート状態を表す情報であるアラート状態１７１０と、最後に評価した日時を表す情報である最終評価日時１７１１とが記録される。
【００９４】
アラート種別１７０２の値としては、図示の「通常時用」の他に、「試行期間用」及び「マイグレーション期間用」がある。マイグレーション識別子１７０３の値が入るのは、アラート種別１７０２の値が「試行期間用」或いは「マイグレーション期間用」の場合である。
【００９５】
アラート定義のうちのアラート条件は、例えば、閾値１７０６及び評価間隔１７０７で表される。閾値１７０６は、収集されたメトリック値と比較される閾値である。評価間隔１７０７は、収集されたメトリック値が閾値１７０６以上（或いは以下）であるかの評価時点の間隔である。最終評価日時１７１１から現在日時までの間が評価間隔１７０７以上になっていない場合には、評価は行われない。
【００９６】
アラート定義のうちのアクション方法は、アクション種別１７０８及びアクションパラメータ１７０９で表される。アクションパラメータ１７０９の値は、アクション種別１７０８の値に応じた値とされる（例えば、アクション種別１７０８の値が「メール」であれば、アクションパラメータ１７０９の値は電子メールアドレスとされる）。
【００９７】
図１８は、アラート履歴情報３２７の構成例を示す。
【００９８】
アラート履歴情報３２７は、例えばテーブルであり、過去のマイグレーションにおけるマイグレーション元ボリュームに関する情報の履歴を表す情報である。アラート履歴情報３２７には、具体的には、例えば、一つのマイグレーションにつき、マイグレーション元ボリュームの論理ボリューム番号１８０２と、マイグレーション元ボリュームの論理ボリューム識別子１８０３と、マイグレーション元ボリュームに対応付けられていたメトリック識別子１８０４、閾値１８０５、評価間隔１８０６、アクション種別１８０７及びアクションパラメータ１８０８が記録される。
【００９９】
例えば、アラート生成部３２０が、マイグレーション期間中或いはマイグレーション完了後に、そのマイグレーションにおけるマイグレーション元ボリュームに対応した論理ボリューム番号１１０３を論理ボリューム情報１１０１から特定し、そのマイグレーション元ボリュームに対応したメトリック識別子１７０５、閾値１７０６、評価間隔１７０７、アクション種別１７０８及びアクションパラメータ１７０９をアラート情報３１６から特定し、マイグレーション元ボリュームの論理ボリューム識別子や、特定した論理ボリューム番号、メトリック識別子、閾値、評価間隔、アクション種別及びアクションパラメータをアラート履歴情報３２７に記録する。
【０１００】
図１９は、アラート生成制御情報３２１の構成例を示す。
【０１０１】
アラート生成制御情報３２１は、アラート定義の生成を制御するための情報であり、例えば、予め用意される情報である。アラート生成制御情報３２１には、具体的には、例えば、マイグレーション完了時からの試行期間の長さを表す情報である試行期間１９０２と、試行期間用の評価間隔１９０３と、マイグレーション期間用の評価間隔１９０４と、マイグレーション期間用の閾値許容率１９０５とが記録される。閾値許容率１９０５は、アラート情報３１６に記録されている閾値１７０６を基に新たな閾値を算出するための計算に使用される。
【０１０２】
以下、本実施形態で行われる処理の流れを説明する。なお、以下の説明では、テーブル形式の情報における各行に記録される情報要素群を「レコード」と呼ぶ。
【０１０３】
図２０は、アラート実行部３１０が行う評価／実行処理のフローチャートである。この評価／実行処理は、例えば、スケジューリング設定に従いタイマー等を使って定期的に起動される。
【０１０４】
ステップ２００１で、アラート実行部３１０が、評価／実行処理を実行したときの直前回の日時を表す情報（以下、「前回評価日時情報」と呼ぶ）を取得する。前回評価日時情報は、例えば、記憶部１２１３（例えばメモリ）に記憶されている。
【０１０５】
ステップ２００２で、アラート実行部３１０が、メトリック値情報３１３中に、今回の評価／実行処理において未処理のメトリック値が無いかどうかを判定する。無ければ、ステップ２０１３に進み、有れば、ステップ２００３に進む。
【０１０６】
ステップ２００３で、アラート実行部３１０が、今回の評価／実行処理において未処理のメトリック値７０５をメトリック値情報３１３から一つ取得する。
【０１０７】
ステップ２００４で、アラート実行部３１０が、取得したメトリック値７０５に対応した日時７０２の値が、前回評価日時情報が表す前回評価日時より古いか否かを判断する。古ければ、そのメトリック値７０５は、直前回の評価／実行処理よりも前に評価／実行処理において評価済みであるため、ステップ２００２に戻る。古くなければ、そのメトリック値７０５は未だ評価されていないため、ステップ２００５に進む。
【０１０８】
ステップ２００５で、アラート実行部３１０が、アラート情報３１６に今回の評価／実行処理において未処理のレコードが有るか否かを判断する。有れば、ステップ２００６に進み、無ければ、ステップ２００２に戻る。
【０１０９】
ステップ２００６で、アラート実行部３１０が、今回の評価／実行処理において未処理のレコード（以下、アラート情報レコード）をアラート情報３１６から一つ取得する。
【０１１０】
ステップ２００７で、アラート実行部３１０が、ステップ２００６で取得したアラート情報レコードにおけるアラート状態１７１０の値が「有効」か「無効」かを判断する。アラート状態１７１０の値が「無効」であれば、ステップ２００５に戻り、アラート状態１７１０の値が「有効」であれば、ステップ２００８に進む。
【０１１１】
ステップ２００８で、アラート実行部３１０が、ステップ２００６で取得したアラート情報レコードにおけるリソース識別子１７０４及びメトリック識別子１７０５を、ステップ２００３で取得したメトリック値７０５に対応するリソース識別子７０３及びメトリック識別子７０４と比較する。それらが一致すれば、ステップ２００９に進み、不一致であれば、ステップ２００５に戻る。
【０１１２】
ステップ２００９で、アラート実行部３１０は、ステップ２００６で取得されたアラート情報レコードにおける最終評価日時１７１１が表す日時と現在日時との差が、そのアラート情報レコードにおける評価間隔１７０７が表す値より大きいか否かを判断する。大きくなければ、その最終評価日時１７１１が表す日時から評価間隔１７０７が表す時間が経過していないため、ステップ２００５に戻り、大きければ、ステップ２０１０に進む。
【０１１３】
ステップ２０１０で、アラート実行部３１０は、ステップ２００６で取得されたアラート情報レコードにおける最終評価日時１７１１を、現在日時を表す情報に更新する。
【０１１４】
ステップ２０１１で、アラート実行部３１０は、ステップ２００３で取得されたメトリック値７０５が、ステップ２００６で取得されたアラート情報レコードにおける閾値１７０６を超えているか否かを判断する。超えていれば、アラート条件が成立したので、ステップ２０１２に進む。そうでなければ、アラート条件に未達なので、ステップ２００５に戻る。
【０１１５】
ステップ２０１２で、アラート実行部３１０は、ステップ２００６で取得したアラート情報レコードにおけるアクション種別１７０８及びアクションパラメータ１７０９に従う処理部（３０９、３１１、３１４）を呼び出すことで、そのアクション種別１７０８及びアクションパラメータ１７０９に従うアクションを実行する。
【０１１６】
ステップ２０１３で、アラート実行部３１０は、前回評価日時情報を、現在日時を表す情報に更新する。
【０１１７】
図２１は、アラート実行制御部３２２が行うアラート実行制御処理のフローチャートである。このアラート実行制御処理は、例えば、スケジューリング設定に従いタイマー等を使って定期的に起動される。なお、アラート実行制御処理が起動する時間間隔は、前述した評価／実行処理が起動する時間間隔よりも短い。
【０１１８】
ステップ２１０１で、アラート実行制御部３２２は、今回のアラート実行制御処理において未処理のレコード（以下、アラート情報レコード）がアラート情報３１６にあるか否かを判断する。有れば、ステップ２１０２に進み、無ければ、終了となる。
【０１１９】
ステップ２１０２で、アラート実行制御部３２２は、未処理のアラート情報レコードを取得する。
【０１２０】
ステップ２１０３で、アラート実行制御部３２２は、ステップ２１０２で取得したアラート情報レコードにおけるアラート種別１７０２を参照する。アラート種別１７０２の値が「通常時用」であれば、ステップ２１０１に戻り、アラート種別１７０２の値が「試行期間用」であれば、ステップ２１０４に進み、アラート種別１７０２の値が「マイグレーション期間用」であれば、ステップ２１０５に進む。
【０１２１】
ステップ２１０４で、アラート実行制御部３２２は、ステップ２１０２で取得したアラート情報レコードにおけるマイグレーション識別子１７０３から識別されるマイグレーションに対応した、マイグレーション情報３２５におけるマイグレーション状態１５０５を参照する。マイグレーション状態１５０５の値が「待機中」、「実行中」、「一時停止」或いは「中断」であれば、ステップ２１０７に進み、マイグレーション状態１５０５の値が「完了」であれば、ステップ２１０６に進む。
【０１２２】
ステップ２１０５で、アラート実行制御部３２２は、ステップ２１０２で取得したアラート情報レコードにおけるマイグレーション識別子１７０３から識別されるマイグレーションに対応した、マイグレーション情報３２５におけるマイグレーション状態１５０５を参照する。マイグレーション状態１５０５の値が「待機中」、「実行中」、或いは「一時停止」であれば、ステップ２１０８に進み、マイグレーション状態１５０５の値が「完了」或いは「中断」であれば、ステップ２１０９に進む。
【０１２３】
ステップ２１０６で、アラート実行制御部３２２は、ステップ２１０４で特定されたマイグレーションに対応する、マイグレーション情報３２５におけるマイグレーション完了日時１５０６と、アラート生成制御情報３２１における試行期間１９０２とを参照する。マイグレーション完了日時１５０６が表す日時と現在日時との差が、試行期間１９０２が表す期間以下であれば、現在日時は試行期間内の日時であるため、ステップ２１０８に進む。一方、上記差が、試行期間１９０２が表す期間を超えていれば、現在日時は試行期間を超えており通常時に属する日時であるため、ステップ２１０７に進む。
【０１２４】
ステップ２１０７或いはステップ２１０９で、アラート実行制御部３２２は、ステップ２１０２で取得したアラート情報レコードにおけるアラート状態１７１０の値を「無効」にする。
【０１２５】
ステップ２１０８で、アラート実行制御部３２２は、ステップ２１０２で取得したアラート情報レコードにおけるアラート状態１７１０の値を「有効」にする。
【０１２６】
図２２は、アラート生成部３２０が行うアラート生成処理のフローチャートである。アラート生成処理は、例えば、階層管理情報収集部３２４が階層管理ソフト３０７から取得した新たなマイグレーションに関する情報要素（以下、マイグレーション情報要素）をマイグレーション情報３２５に登録するタイミングで起動される。
【０１２７】
ステップ２２０１で、アラート生成部３２０は、マイグレーション先ボリュームのアラート定義を生成する。
【０１２８】
ステップ２２０２で、アラート生成部３２０は、試行期間用のアラート定義を生成する。
【０１２９】
ステップ２２０３で、アラート生成部３２０は、マイグレーション期間用のアラート定義を生成する。
【０１３０】
なお、アラート生成部３２０は、或るマイグレーションについてステップ２２０３まで終了したならば、その或るマイグレーションの識別子を階層管理ソフト３０７に通知しても良い。階層管理ソフト３０７は、その或るマイグレーションの状態を「待機中」にしておき、アラート生成部３２０からその或るマイグレーションの識別子を受けた場合に、その識別子に対応するマイグレーションをマイグレーション実行部３０８に実行させても良い。
【０１３１】
図２３は、図２２のステップ２２０１における処理（マイグレーション先ボリューム用のアラート定義生成処理）のフローチャートである。
【０１３２】
ステップ２３０１で、アラート生成部３２０が、論理ボリュームが持つ全てのメトリックのうち今回のマイグレーション先ボリューム用のアラート定義生成処理において未処理のメトリックが無いかどうかを判定する。論理ボリュームが持つメトリックの識別子は、メトリック値情報３１３から取得することができる。未処理のメトリックが無ければ、終了となり、有れば、ステップ２３０２に進む。
【０１３３】
ステップ２３０２で、アラート生成部３２０は、論理ボリュームが持つ全てのメトリックのうち今回のマイグレーション先ボリューム用のアラート定義生成処理において未処理のメトリックの識別子を一つ取得する。
【０１３４】
ステップ２３０３で、アラート生成部３２０は、今回のマイグレーション先ボリューム用のアラート定義生成処理が起動されたタイミングで階層管理情報収集部３２４が取得したマイグレーション情報要素に含まれるマイグレーション先論理ボリュームの番号を、そのマイグレーション情報要素に対応したレコード（マイグレーション情報３２５におけるレコード）内のマイグレーション先ボリュームの番号１５０４から特定する。アラート生成部３２０は、その特定した論理ボリューム番号を用いて論理ボリューム情報１１０１を参照し、その論理ボリューム番号に対応する論理ボリューム識別子を取得する。さらに、アラート生成部３２０は、その論理ボリューム識別子と、ステップ２３０２で取得したメトリック識別子を用い、且つ、アラート種別１７０２が「通常時用」であるという条件で、アラート情報３１６を参照し、該当するアラート情報レコードがあるか否かを判断する。該当するアラート情報レコードがあれば、マイグレーション先ボリュームの該当メトリック（ステップ２３０２で取得したメトリック識別子から識別されるメトリック）にはアラートが定義済みであるため、ステップ２３０１に戻り、無ければ、ステップ２３０４に進む。
【０１３５】
ステップ２３０４で、アラート生成部３２０は、マイグレーション元の論理ボリューム番号（今回のマイグレーション先ボリューム用のアラート定義生成処理が起動されたタイミングで階層管理情報収集部３２４が取得したマイグレーション情報要素に対応するレコード（マイグレーション情報３２５のレコード）におけるマイグレーション元ボリュームの番号１５０３から特定した番号）と、ステップ２３０３で特定したマイグレーション先ボリュームの論理ボリューム識別子と、ステップ２３０２で取得したメトリック識別子との組合せを表すレコードを、アラート履歴情報３２７から検索する。そのようなレコードが有れば、マイグレーション先ボリュームは、過去にマイグレーション元ボリュームであったことがあることを意味する（具体的には、例えば、そのマイグレーション先ボリュームは、過去はマイグレーション元ボリュームであり、マイグレーションされたデータが、やがて、自分をマイグレーション先として戻って来ることを意味する）。このため、そのようなレコードが見つかれば（ステップ２３０５で「有」）、ステップ２３０６に進む。一方、見つからなければ（ステップ２３０５で「無」）、ステップ２３０７に進む。
【０１３６】
ステップ２３０６で、アラート生成部３２０は、見つかったレコードにおける閾値１８０５、評価間隔１８０６、アクション種別１８０７及びアクションパラメータ１８０８を、アラート定義としてアラート情報３１６に記録する。これにより、マイグレーション元ボリュームであったときに対応付けられていたアラート定義が、マイグレーション先ボリュームに対応付けられることになる。
【０１３７】
ステップ２３０７で、アラート生成部３２０は、マイグレーション元ボリュームの識別子（マイグレーション元ボリュームの番号１５０３から特定された上記番号（マイグレーション元ボリューム番号）を用いて論理ボリューム情報１１０１から特定された、その番号に対応する論理ボリューム識別子）と、ステップ２３０２で取得したメトリック識別子とを用い、かつ、アラート種別１７０２が「通常時用」であるという条件で、アラート情報３１６を参照し、該当するアラート情報レコードがあるか否かを判断する。該当するアラート情報レコードがあれば、マイグレーション元ボリュームの該当メトリック（ステップ２３０２で取得したメトリック識別子から識別されるメトリック）にはアラートが定義済みであるため、ステップ２３０８に進み、無ければ、ステップ２３０１に戻る。
【０１３８】
ステップ２３０８で、アラート生成部３２０は、マイグレーション元ボリュームが属するティア（マイグレーション元ティア）に属する全ての論理ボリュームをティア情報３２６から特定し、それら全ての論理ボリュームについてのメトリック値７０５、閾値１７０６及び評価間隔１７０７を、それぞれメトリック情報３１３ならびにアラート情報３１６から取得する。
【０１３９】
ステップ２３０９で、アラート生成部３２０は、マイグレーション先ボリュームが属するティア（マイグレーション先ティア）に属する全ての論理ボリュームをティア情報３２６から特定し、それら全ての論理ボリュームについてのメトリック値７０５、閾値１７０６及び評価間隔１７０７を、それぞれメトリック情報３１３ならびにアラート情報３１６から取得する。
【０１４０】
ステップ２３１０で、アラート生成部３２０は、マイグレーション先ボリュームのアラート定義を生成する。
【０１４１】
具体的には、例えば、マイグレーション先ボリュームのアクション種別１７０８及びアクションパラメータ１７０９は、マイグレーション元ボリュームのアラート定義（ステップ２３０７で特定したアラート情報レコードから取得したアラート定義）におけるアクション種別１７０８及びアクションパラメータ１７０９と同じにされる。
【０１４２】
また、例えば、マイグレーション先ボリュームの閾値１７０６は、マイグレーション元ボリュームの閾値１７０６の値と、マイグレーション先ティアに属する各論理ボリュームのメトリック値（ステップ２３０９で取得されたメトリック値７０５）と、マイグレーション元ティアに属する各論理ボリュームのメトリック値（ステップ２３０８で取得されたメトリック値７０５）とに基づいて算出される。具体的には、例えば、以下の（１）式で算出された値とされる。
・マイグレーション先ボリュームの閾値１７０６の値  ＝  マイグレーション元ボリュームの閾値１７０６の値  ×  （マイグレーション先ティアに属する論理ボリュームのメトリック値の平均  ÷  マイグレーション元ティアに属する論理ボリュームのメトリック値の平均）・・・・・・（１）。
【０１４３】
また、例えば、マイグレーション先ボリュームの評価間隔１７０７は、マイグレーション元ボリュームの評価間隔１７０７の値と、マイグレーション先ティアに属する各論理ボリュームの評価間隔１７０７の値と、マイグレーション元ティアに属する各論理ボリュームの評価間隔１７０７の値（或いは、単にマイグレーション先ティアに属する各論理ボリュームの評価間隔１７０７の値）とに基づいて算出される。具体的には、例えば、以下の（２）式又は（３）式で算出された値とされる。
・マイグレーション先ボリュームの評価間隔１７０７の値  ＝  マイグレーション元ボリュームの評価間隔１７０７の値  ×（マイグレーション先ティアに属する一以上の論理ボリュームの評価間隔１７０７の平均値  ÷  マイグレーション元ティアに属する一以上の論理ボリュームの評価間隔１７０７の平均値）・・・・・・・（２）。
・マイグレーション先ボリュームの評価間隔１７０７の値＝マイグレーション先ティアに属する一以上の論理ボリュームの評価間隔１７０７の平均値・・・・・・・（３）。
【０１４４】
このアラート定義生成処理によれば、マイグレーション先ボリュームのアラート条件は、マイグレーション先ティアに所属する論理ボリュームのメトリック値及び／又はアラート条件（或いは、それに加えて、マイグレーション元ティアに所属する論理ボリュームのメトリック値及び／又はアラート条件）に基づいて自動生成される。また、そのアラート条件を含んだアラート定義は、図２１で説明した処理によって自動的に有効とされる。これにより、マイグレーション先ボリュームの性能を適切な条件で監視することができ、且つ、マイグレーション先ボリュームについてアラート定義の設定忘れを防ぐことができる。
【０１４５】
図２４は、図２２のステップ２２０２における処理（試行期間用のアラート定義生成処理）のフローチャートである。
【０１４６】
ステップ２４０１で、アラート生成部３２０は、マイグレーション元ボリュームが所属する全てのＩ／Ｏ経路をＩ／Ｏ経路情報３１９から特定する。
【０１４７】
ステップ２４０２で、アラート生成部３２０は、ステップ２４０１で特定された全てのＩ／Ｏ経路に直接的及び間接的に所属する全てのリソースをＩ／Ｏ経路情報３１９から特定する。
【０１４８】
ステップ２４０３で、アラート生成部３２０は、マイグレーション先ボリュームが所属する全てのＩ／Ｏ経路をＩ／Ｏ経路情報３１９から特定する。
【０１４９】
ステップ２４０４で、アラート生成部３２０は、ステップ２４０３で特定された全てのＩ／Ｏ経路に直接的及び間接的に所属する全てのリソースをＩ／Ｏ経路情報３１９から特定する。
【０１５０】
ステップ２４０２及びステップ２４０４で特定された全てのリソース（以下、この図２４の説明において「対象リソース」と呼ぶ）について、ステップ２４０５以降が行われる。
【０１５１】
ステップ２４０５で、アラート生成部３２０は、このアラート定義生成処理において未処理の対象リソースがあるか否かを判断する。有れば、ステップ２４０６に進み、無ければ、終了となる。
【０１５２】
ステップ２４０６で、アラート生成部３２０は、上記未処理の対象リソースを一つ選択する。
【０１５３】
ステップ２４０７で、アラート生成部３２０は、ステップ２４０６で選択した対象リソースについて、その対象リソースが持つ全てのメトリックのうち未処理のメトリックがないかどうかを判断する。リソースが持つメトリックの識別子は、メトリック識別情報３１３から取得することができる。有れば、ステップ２４０８に進み、無ければ、ステップ２４０５に戻る。
【０１５４】
ステップ２４０８で、アラート生成部３２０は、上記未処理のメトリックを一つ選択する。
【０１５５】
ステップ２４０９で、アラート生成部３２０は、アラート情報３１６を参照し、ステップ２４０８で選択したメトリックについて通常時用のアラート定義が設定済みか否かを判断する。未設定であれば、ステップ２４０７に戻り、設定済みであれば、ステップ２４１０に進む。
【０１５６】
ステップ２４１０で、アラート生成部３２０は、ステップ２４０６で選択した対象リソースのステップ２４０８で選択したメトリックについて、その対象リソース及びメトリックに対応した通常時用のアラート定義（ステップ２４０９で特定されたアラート定義）におけるアラート条件よりも厳しいアラート条件を含んだアラート定義を、試行期間用のアラート定義として生成する。具体的には、例えば、アラート生成部３２０は、上記選択した対象リソース及びメトリックに対応した通常時用のアラート定義中の評価間隔１７０７を、アラート生成制御情報３２１における試行期間用の評価間隔１９０３に変更したものを、その対象リソース及びメトリックについての試行期間用のアラート定義として生成する。
【０１５７】
なお、アラート生成制御情報３２１における試行期間用の評価間隔１９０３の値としては、通常時用のアラート定義における評価間隔１７０７の値よりも小さい値が採用される。しかし、もし、ステップ２４１０において、アラート生成制御情報３２１における試行期間用の評価間隔１９０３の値が、上記対象リソース及びメトリックに対応した通常時用のアラート定義中の評価間隔１７０７の値以上であることが検出された場合には、試行期間用のアラート定義における評価間隔の値として、その通常時用のアラート定義中の評価間隔１７０７の値よりも小さい値が設定される。
【０１５８】
アラート条件を厳しくする方法として、上記のように、通常時用のアラート定義中の評価間隔１７０７の値よりも小さい値を設定する方法を説明したが、それに代えて、評価間隔１７０７の値を変えずに、単位時間当たりに取得するメトリック値の数を、通常時におけるその数よりも多くするという方法を採用することもできる。例えば、論理ボリュームについて、通常時用には「毎秒ＩＯ回数」と「転送速度」しか取得しないが、試行期間用には、これに加えて、「毎秒リードＩＯ回数」、「毎秒ライトＩＯ回数」、「リード転送速度」及び「ライト転送速度」も取得するという方法を採用することができる。
【０１５９】
以上のアラート定義生成処理によれば、マイグレーションによるＩ／Ｏ経路切り替えの影響を受ける全てのリソースについて、試行期間用のアラート定義が自動で用意される。各アラート定義は、図２１で説明した処理により自動で有効とされる。試行期間用のアラート定義におけるアラート条件は、通常時用のアラート定義におけるアラート条件よりも自動的に厳しくされる。具体的には、評価間隔が短くされる。このため、マイグレーション完了時点から一定期間内に生じるＩ／Ｏ負荷分布の変化によって性能上の問題が生じた場合には、それを早期に検出し、その問題に応じたアクションを実行することができる。
【０１６０】
図２５は、図２２のステップ２２０３における処理（マイグレーション期間用のアラート定義生成処理）のフローチャートである。
【０１６１】
ステップ２５０１で、アラート生成部３２０は、今回のマイグレーション先ボリューム用のアラート定義生成処理が起動されたタイミングで階層管理情報収集部３２４が取得したマイグレーション情報要素に対応するマイグレーションＩ／Ｏ経路を、マイグレーションＩ／Ｏ経路情報３２３を参照することにより特定する。
【０１６２】
ステップ２５０２で、アラート生成部３２０は、ステップ２５０１で特定されたマイグレーションＩ／Ｏ経路に直接的及び間接的に所属する全てのリソースを、マイグレーションＩ／Ｏ経路情報３２３とＩ／Ｏ経路情報３１９から特定する。
【０１６３】
ステップ２５０２で特定された全てのリソース（以下、この図２５の説明において「対象リソース」と呼ぶ）について、ステップ２５０３以降が行われる。
【０１６４】
ステップ２５０３で、アラート生成部３２０は、このアラート定義生成処理において未処理の対象リソースがあるか否かを判断する。有れば、ステップ２５０４に進み、無ければ、終了となる。
【０１６５】
ステップ２５０４で、アラート生成部３２０は、上記未処理の対象リソースを一つ選択する。
【０１６６】
ステップ２５０５で、アラート生成部３２０は、ステップ２５０４で選択した対象リソースについて、その対象リソースが持つすべてのメトリックのうち未処理のメトリックがあるか否かを判断する。リソースが持つメトリックの識別子は、メトリック値情報３１３から取得することができる。有れば、ステップ２５０６に進み、無ければ、ステップ２５０３に戻る。
【０１６７】
ステップ２５０６で、アラート生成部３２０は、上記未処理のメトリックを一つ選択する。
【０１６８】
ステップ２５０７で、アラート生成部３２０は、アラート情報３１６を参照し、ステップ２５０６で選択したメトリックについて通常時用のアラート定義が設定済みか否かを判断する。未設定であれば、ステップ２５０５に戻り、設定済みであれば、ステップ２５０８に進む。
【０１６９】
ステップ２５０８で、アラート生成部３２０は、ステップ２５０４で選択した対象リソースのステップ２５０６で選択したメトリックについて、その対象リソース及びメトリックに対応したマイグレーション期間用のアラート定義を生成する。具体的には、例えば、アラート生成部３２０は、上記リソース及びメトリックに対応した通常時用のアラート定義中の評価間隔１７０７を、アラート生成制御情報３２１におけるマイグレーション期間用の評価間隔１９０４に変更したものを、その対象リソース及びメトリックについてのマイグレーション期間用のアラート定義として生成する。そのマイグレーション期間用のアラート定義における閾値は、通常時用のアラート定義（ステップ２５０７で特定されたアラート定義）における閾値１７０６が、アラート生成制御情報３２１における閾値許容率１９０５を基に補正された値となっても良い。また、そのマイグレーション期間用のアラート定義におけるアクション方法として、マイグレーションを一時停止或いは減速させるためのコマンド（以下、一時停止／減速コマンド）を送信することであっても良い。
【０１７０】
以上のアラート定義生成処理によれば、マイグレーション実行の影響を受ける全てのリソースについて、マイグレーション期間用のアラート定義が自動で用意される。各アラート定義は、図２１で説明した処理により自動で有効とされる。このため、マイグレーション期間中には、その影響を受けるリソースの性能を、そのマイグレーションの実行による影響に応じて適切に監視することができる。もし、その監視において、性能上の問題が検出された場合には、所定の宛先への通知に代えて又は加えて、一時停止／減速コマンドを階層管理ソフト３０７を介して（或いは介さないで）マイグレーション実行部３０８に送信することができる。マイグレーション実行部３０８は、一時停止／減速コマンドを受けた場合には、実行中のマイグレーションを一時停止する或いは減速する（データの読出し速度及び／又は書込み速度を減速する）ことができる。
【０１７１】
以上、本発明の幾つかの実施形態を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【図面の簡単な説明】
【０１７２】
【図１】図１は、本発明の一実施形態に係るシステムの全体構成の一例を示す。
【図２】図２は、図１に示したシステムにおけるストレージシステムの変形例を示す。
【図３】図３は、ＳＡＮ性能監視ソフトの構成例を示す。
【図４】図４は、コンピュータシステムにおけるＩ／Ｏ経路の構成例を示す。
【図５】図５は、図４に示されているコンピュータシステムにおいて論理ボリュームＢから論理ボリュームＥへのデータのマイグレーションが完了した後の状態を示す。
【図６】図６は図４に示されているコンピュータシステムにおいて論理ボリュームＢから論理ボリュームＥへのデータのマイグレーションが行われている最中の状態を示す。
【図７】図７は、メトリック値情報の構成例を示す。
【図８】図８は、アプリケーション・ファイル間関連情報の構成例を示す。
【図９】図９は、ファイル・論理デバイス間関連情報の構成例を示す。
【図１０】図１０は、論理ボリューム・アレイグループ間関連情報の構成例を示す。
【図１１】図１１は、論理ボリューム情報の構成例を示す。
【図１２】図１２は、論理デバイス・論理ボリューム・ポート対応情報の構成例を示す。
【図１３】図１３は、Ｉ／Ｏ経路情報の構成例を示す。
【図１４】図１４は、ティア情報の構成例を示す。
【図１５】図１５は、マイグレーション情報の構成例を示す。
【図１６】図１６は、マイグレーションＩ／Ｏ経路情報の構成例を示す。
【図１７】図１７は、アラート情報の構成例を示す。
【図１８】図１８は、アラート履歴情報の構成例を示す。
【図１９】図１９は、アラート生成制御情報の構成例を示す。
【図２０】図２０は、アラート実行部が行う評価／実行処理のフローチャートである。
【図２１】図２１は、アラート実行制御部が行うアラート実行制御処理のフローチャートである。
【図２２】図２２は、アラート生成部が行うアラート生成処理のフローチャートである。
【図２３】図２３は、図２２のステップ２２０１における処理のフローチャートである。
【図２４】図２４は、図２２のステップ２２０２における処理のフローチャートである。
【図２５】図２５は、図２２のステップ２２０３における処理のフローチャートである。
【符号の説明】
【０１７３】
１０６…ホストコンピュータ  １２１…性能監視サーバ  ３０３…マルチティアドストレージシステム  ３０５…ＳＡＮ性能監視ソフト
【図１】
2008299387.tif 000003
【図２】
2008299387.tif 000004
【図３】
2008299387.tif 000005
【図４】
2008299387.tif 000006
【図５】
2008299387.tif 000007
【図６】
2008299387.tif 000008
【図７】
2008299387.tif 000009
【図８】
2008299387.tif 000010
【図９】
2008299387.tif 000011
【図１０】
2008299387.tif 000012
【図１１】
2008299387.tif 000013
【図１２】
2008299387.tif 000014
【図１３】
2008299387.tif 000015
【図１４】
2008299387.tif 000016
【図１５】
2008299387.tif 000017
【図１６】
2008299387.tif 000018
【図１７】
2008299387.tif 000019
【図１８】
2008299387.tif 000020
【図１９】
2008299387.tif 000021
【図２０】
2008299387.tif 000022
【図２１】
2008299387.tif 000023
【図２２】
2008299387.tif 000024
【図２３】
2008299387.tif 000025
【図２４】
2008299387.tif 000026
【図２５】
2008299387.tif 000027