(57)【要約】【課題】複数のホスト計算機がストレージシステムの同一のホストＩ／Ｆを共有可能な計算機システムにおいて、ＶＯＬの状態の違いに適したアクセスを実現する。【解決手段】複数のホスト計算機がストレージシステムの同一のホストインタフェースを共有可能な計算機システムの制御装置に、各ＶＶＯＬにマッピングされている各ＶＯＬのＶＯＬ状態を監視しＶＯＬ状態の変化の有無を判別するＶＯＬ状態監視部と、ＶＯＬ状態の変化があったＶＶＯＬに接続するパスの数を変更するパス数制御部とを備える。【選択図】図３２
2008083922.tif 000002
【特許請求の範囲】
【請求項１】
複数のホスト計算機がストレージシステムの同一のホストインタフェースを共有可能な計算機システムの制御装置であって、
前記ストレージシステムが、
前記複数のホスト計算機が共有可能な複数のホストインタフェースと、
前記複数のホスト計算機にそれぞれ提供される複数の仮想的な論理ボリューム（ＶＶＯＬ）と、
前記複数のＶＶＯＬのうちのいずれかにマッピングされる実体のある論理ボリューム（ＶＯＬ）を複数個と
を備え、
前記複数のホスト計算機と前記複数のＶＶＯＬとの間には、前記複数のホストインタフェースのうちのいずれかを経由する論理的なパスが複数本張られ、前記各ホスト計算機が、自分に張られたパスを介して該パスに接続されたＶＶＯＬにアクセスし、それにより、該ＶＶＯＬにマッピングされているＶＯＬへのアクセスが行われ、
前記制御装置が、
各ＶＶＯＬにマッピングされている各ＶＯＬのＶＯＬ状態を監視しＶＯＬ状態の変化の有無を判別するＶＯＬ状態監視部と、
ＶＯＬ状態の変化があったＶＶＯＬである対象ＶＶＯＬに接続するパスの数を変更するパス数制御部と
を備える、
制御装置。
【請求項２】
前記パス数制御部は、変更後のＶＯＬ状態と変更前のＶＯＬ状態との相対的な関係に基づいて、前記対象ＶＶＯＬに接続する変更後のパスの数を制御する、
請求項１記載の制御装置。
【請求項３】
前記ＶＯＬ状態は、ＶＯＬが属する階層レベルであり、
前記階層レベルは、複数種類のＶＯＬ属性にそれぞれ対応する複数のＶＯＬ属性値で定義され、
前記対象ＶＶＯＬは、該対象ＶＶＯＬにマッピングされているＶＯＬの階層レベルが変化したＶＶＯＬであり、
前記パス数制御部は、変更後の階層レベルに基づいて、前記対象ＶＶＯＬに接続する変更後のパスの数を制御する、
請求項１記載の制御装置。
【請求項４】
前記パス数制御部は、ＶＯＬが属する階層レベルが第一のレベルからそれよりも高い第二のレベルに変化したことが検出された場合に、該ＶＯＬがマッピングされた前記対象ＶＶＯＬに接続されるパスの数を、変化前の数よりも増やす、
請求項３記載の制御装置。
【請求項５】
前記パス数制御部は、ＶＯＬが属する階層レベルが第二のレベルからそれよりも低い第一のレベルに変化したことが検出された場合に、該ＶＯＬがマッピングされた前記対象ＶＶＯＬに接続されるパスの数を、変化前の数よりも減らす、
請求項３記載の制御装置。
【請求項６】
ＶＯＬの前記階層レベルは、該ＶＯＬのＲＡＩＤレベル、該ＶＯＬを有するストレージサブシステムの種類、該ＶＯＬを有するストレージ装置の種類、のうちの少なくとも二つにより定義される、
請求項３記載の制御装置。
【請求項７】
前記ＶＯＬ状態監視部は、前記各ＶＯＬについて、該ＶＯＬのＶＯＬ属性を基にＶＯＬ評価値を算出し、
前記ＶＯＬ状態は、前記ＶＯＬ評価値であり、
前記対象ＶＶＯＬは、マッピングされているＶＯＬの該算出されたＶＯＬ評価値が前回算出されたＶＯＬ評価値と異なるＶＶＯＬである、
請求項１記載の制御装置。
【請求項８】
前記制御装置は、属性管理情報を記憶した記憶域を有し、
前記属性管理情報は、複数種類のＶＯＬ属性に対応した複数のＶＯＬ属性値の各々について設定された属性評価値を表す情報であり、
前記ＶＯＬ状態監視部は、前記各ＶＯＬについて、該ＶＯＬの各種ＶＯＬ属性のＶＯＬ属性値に対応する属性評価値を前記属性管理情報から特定し、特定された複数の属性評価値を基に、該ＶＯＬのＶＯＬ評価値を算出する、
請求項７記載の制御装置。
【請求項９】
前記パス数制御部は、前記対象ＶＶＯＬの変更後のパス数を、所定の計算式により決定し、
前記計算式は、該対象ＶＶＯＬの現在のパス数と、前記算出されたＶＯＬ評価値の前記前回算出されたＶＯＬ評価値に対する比率とに基づく式である、
請求項７記載の制御装置。
【請求項１０】
前記制御装置は、前記現在のパス数である第一の値と、該パス数の基になった第二の値との対応を記憶する記憶域を有し、
前記パス数制御部は、前記所定の計算式により算出された値が整数ではない場合、該算出値を所定の方法で整数にし、該算出値を前記第二の値とし該算出値が前記所定の方法によりされた前記整数を前記第一の値として前記記憶域に登録し、前記所定の計算式では、前記第二の値を、前記現在のパス数に代入する、
請求項９記載の制御装置。
【請求項１１】
前記パス数制御部は、前記対象ＶＶＯＬに接続されるパスが経由し複数のホスト計算機に共有されている二以上のホストインタフェースから、ホストインタフェースを選択し、該選択したホストインタフェースを経由するパスを増やす或いは減らすことにより、前記対象ＶＶＯＬに接続するパスの数を変更する、
請求項１記載の制御装置。
【請求項１２】
前記ＶＯＬ状態監視部は、前記各ＶＯＬについて、該ＶＯＬのＶＯＬ属性を基にＶＯＬ評価値を算出し、
前記ＶＯＬ状態は、前記ＶＯＬ評価値であり、
前記対象ＶＶＯＬは、マッピングされているＶＯＬの該算出されたＶＯＬ評価値が前回算出されたＶＯＬ評価値と異なるＶＶＯＬであり、
前記パス数制御部は、前記二以上のホストインタフェースの各々について、各ホストインタフェースを経由して繋がる一以上のＶＶＯＬについての一以上のＶＯＬ評価値を基にホストインタフェース評価値を算出し、前記二以上のホストインタフェースに対応した二以上のホストインタフェース評価値を基に、ホストインタフェースを選択する、
請求項１１記載の制御装置。
【請求項１３】
前記パス数制御部は、前記二以上のホストインタフェース評価値をなるべく平均化にすることができるホストインタフェースを選択する、
請求項１２記載の制御装置。
【請求項１４】
前記パス制御部は、パスの数を増やす場合、前記二以上のホストインタフェース評価値のうち最もホストインタフェース評価値の小さいホストインタフェースを選択する、
請求項１３記載の制御装置。
【請求項１５】
前記パス制御部は、パスの数を減らす場合、前記二以上のホストインタフェース評価値のうち最もホストインタフェース評価値の大きいホストインタフェースを選択する、
請求項１３記載の制御装置。
【請求項１６】
前記制御装置が、パスに関わる物理的な要素の有無を監視し負荷の変化の有無を判別する負荷監視部を更に備え、
前記パス数制御部は、負荷の変化が検出されたタイミングで、前記対象ＶＶＯＬに接続するパスの数を変更する、
請求項１記載の制御装置。
【請求項１７】
パスの数の変更は、予め定義された複数のパスのうちパス状態を有効とするパスの数を変更することで行われるようになっており、
前記パス数制御部は、ＶＯＬ状態の変化が検出されたタイミングで、パス状態を変更するパスの候補である一以上の変更対象パス候補を決定しておき、負荷の変化が検出されたタイミングで、前記決定されている一以上の変更対象パス候補の中から、パス状態を変更するパス候補を選択してパス状態を変更する、
請求項１６記載の制御装置。
【請求項１８】
前記ＶＯＬ状態は、ＶＯＬが属する階層レベルであり、
前記階層レベルは、複数種類のＶＯＬ属性にそれぞれ対応する複数のＶＯＬ属性値で定義され、ＶＯＬの前記階層レベルは、該ＶＯＬのＲＡＩＤレベル、該ＶＯＬを有するストレージサブシステムの種類、該ＶＯＬを有するストレージ装置の種類、のうちの少なくとも二つにより定義され、
前記対象ＶＶＯＬは、該対象ＶＶＯＬにマッピングされているＶＯＬの階層レベルが変化したＶＶＯＬであり、
前記パス数制御部は、ＶＯＬが属する階層レベルが第一のレベルからそれよりも高い第二のレベルに変化したことが検出された場合に、該ＶＯＬがマッピングされた前記対象ＶＶＯＬに接続されるパスの数を、変化前の数よりも増やし、ＶＯＬが属する階層レベルが第二のレベルからそれよりも低い第一のレベルに変化したことが検出された場合に、該ＶＯＬがマッピングされた前記対象ＶＶＯＬに接続されるパスの数を、変化前の数よりも減らす、
請求項１記載の制御装置。
【請求項１９】
パスの数の変更は、予め定義された複数のパスのうちパス状態を有効とするパスの数を変更することで行われるようになっており、
前記制御装置が、パスに関わる物理的な要素の有無を監視し負荷の変化の有無を判別する負荷監視部を更に備え、
前記パス数制御部は、ＶＯＬ状態の変化が検出されたタイミングで、パス状態を変更するパスの候補である一以上の変更対象パス候補を決定しておき、負荷の変化が検出されたタイミングで、前記決定されている一以上の変更対象パス候補の中から、パス状態を変更するパス候補を選択してパス状態を変更する、
請求項１８記載の制御装置。
【請求項２０】
複数のホスト計算機がストレージシステムの同一のホストインタフェースを共有可能な計算機システムにおいて論理的なパスの数を制御する方法であって、
前記ストレージシステムが、
前記複数のホスト計算機が共有可能な複数のホストインタフェースと、
前記複数のホスト計算機にそれぞれ提供される複数の仮想的な論理ボリューム（ＶＶＯＬ）と、
前記複数のＶＶＯＬのうちのいずれかにマッピングされる実体のある論理ボリューム（ＶＯＬ）を複数個と
を備え、
前記複数のホスト計算機と前記複数のＶＶＯＬとの間には、前記複数のホストインタフェースのうちのいずれかを経由する論理的なパスが複数本張られ、
各ＶＶＯＬにマッピングされている各ＶＯＬのＶＯＬ状態を監視しＶＯＬ状態の変化の有無を判別し、
ＶＯＬ状態の変化があったＶＶＯＬである対象ＶＶＯＬに接続するパスの数を変更する、
方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト計算機とストレージシステムとの間の論理的なパスの数を制御する技術に関する。
【背景技術】
【０００２】
ホスト計算機とストレージシステムとを含んだ計算機システムに関する技術として、例えば、文献１（米国公開特許公報2006/0026346号）、文献２（米国公開特許公報2005/0120259号）及び文献３（米国公開特許公報2006/0047930号）に開示の技術がある。
【０００３】
文献１には、ホストバスアダプタ（HBA）、チャネルアダプタ（CHA）、論理ユニットの負荷を考慮して、パスを決定することが開示されている。
【０００４】
文献２には、ホストとストレージシステムが複数のパス（マルチパス）で接続された構成が開示されている。
【０００５】
文献３には、論理ボリュームを階層で管理し、指定した階層に属する論理ボリュームにデータを移動（マイグレーション）することが開示されている。
【特許文献１】米国公開特許公報2006/0026346号
【特許文献２】米国公開特許公報2005/0120259号
【特許文献３】米国公開特許公報2006/0047930号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えば、上述した種類の計算機システムの一つとして、複数のホスト計算機（以下、「ホスト」と略すことがある）が同一のストレージシステムに接続された計算機システムがある。図３１に、この計算機システムの一例を示している。
【０００７】
ストレージシステムが、例えば、高階層のストレージ装置群と、低階層のストレージ装置群とを備える。
【０００８】
ストレージ装置群は、一以上のストレージ装置で構成される。高階層のストレージ装置群は、例えば、高信頼或いは高性能のストレージ装置で構成され、低階層のストレージ装置群は、例えば、高階層に比して低信頼或いは低性能のストレージ装置で構成される。ストレージ装置群の記憶空間を利用して、実体のある論理ボリューム（以下、「ＶＯＬ」と略すことがある）を備えることができる。
【０００９】
ストレージシステムは、ホストに対するインタフェース（以下、「ホストＩ／Ｆ」と略すことがある）を複数個有し、各ホストに仮想的な論理ボリューム（以下、「ＶＶＯＬ」と略すことがある）を提供する。ホストＩ／Ｆは、例えば、ポートでも良いし、ポートを備えたＣＨＡでもよい。ＶＶＯＬとホスト計算機との間には、ホストＩ／Ｆを経由する論理的なパスが張られ、ＶＶＯＬに対してＶＯＬがマッピングされる。例えば、ホスト１とＶＶＯＬ１との間に、３つのホストＩ／Ｆ Ａ，Ｂ，Ｃをそれぞれ介した３本のパスが張られ、ＶＶＯＬ１に、ＶＯＬ１がマッピングされる。また、ホスト２とＶＶＯＬ２との間に、３つのホストＩ／Ｆ Ｂ，Ｃ，Ｄをそれぞれ介した３本のパスが張られ、ＶＶＯＬ２に、ＶＯＬ２がマッピングされる。ホスト１は、自分に対して張られた３本のパスのうちのいずれかのパスを介してＶＶＯＬ１にアクセスすることができる。ストレージシステムは、ＶＶＯＬ１へのアクセスを受けた場合、それにマッピングされているＶＯＬ１に対してアクセスする。つまり、ＶＶＯＬ１へのアクセスは、ＶＯＬ１へのアクセスとなる。この構成によれば、ホスト１，２には、ＶＯＬ１、２は意識されていないので、例えば、ホスト２に意識させることなく、図示のように、ＶＯＬ２を、高階層ストレージ装置群から低階層ストレージ装置群に移動することが可能である。
【００１０】
また、この計算機システムでは、複数のホストＩ／Ｆ Ａ乃至Ｄの各々が、複数のホスト１，２で共有可能である。図３１の例では、ホストＩ／Ｆ Ｂ及びＣが、ホスト１，２に共有されている。
【００１１】
以上の計算機システムによれば、図示のように、ＶＯＬ１に比して重要度が低いと考えられるＶＯＬ２へのアクセスが、ＶＯＬ１へのアクセスに悪影響を与えることが発生し得る。
【００１２】
すなわち、複数のホスト１，２に共有されているホストＩ／Ｆ Ｂ及びＣには、アクセスが競合することがある。このため、ＶＯＬ１に対するアクセスとＶＯＬ２に対するアクセスが互いに影響し合う。また、高階層ストレージ装置群から低階層ストレージ装置群に移動されたＶＯＬ２の重要度は、高階層ストレージ装置群にあるＶＯＬ１の重要度よりも低いことが考えられる。この場合に、ＶＶＯＬ１に対するアクセスもＶＶＯＬ２に対するアクセスもホストＩ／Ｆ Ｂ又はＣを介して行われると、ＶＯＬ１へのアクセスがそれよりも重要度の低いＶＯＬ２へのアクセスによって悪影響を受けることになる。
【００１３】
アクセス競合を回避することをＣＨＡなどの負荷に基づいて行う技術はあるが、その技術では、ＶＯＬの重要度が考慮されていないので、必ずしも、上記のような問題を回避することはできない。
【００１４】
上述した課題は、ＶＯＬの重要度が異なる場合に違いに限らず、ＶＯＬの他種の状態が異なる場合でも、生じ得る。
【００１５】
従って、本発明の目的は、複数のホスト計算機がストレージシステムの同一のホストＩ／Ｆを共有可能な計算機システムにおいて、ＶＯＬの状態の違いに適したアクセスを実現することにある。
【００１６】
本発明の更なる目的は、後の記載から明らかになるであろう。
【課題を解決するための手段】
【００１７】
複数のホスト計算機がストレージシステムの同一のホストインタフェースを共有可能な計算機システムの制御装置に、各ＶＶＯＬにマッピングされている各ＶＯＬのＶＯＬ状態を監視しＶＯＬ状態の変化の有無を判別するＶＯＬ状態監視部と、ＶＯＬ状態の変化があったＶＶＯＬに接続するパスの数を変更するパス数制御部とを備える。
【００１８】
ＶＶＯＬにマッピングされるＶＯＬの数は一つでも複数でもよい。
【００１９】
ストレージシステムは、一又は複数台のストレージサブシステムを含んでも良いし、ネットワークを構成するスイッチを含んでも良い。この場合、ホストインタフェースを備える装置は、ストレージサブシステムであっても良いし、スイッチであっても良い。ＶＶＯＬは、ストレージサブシステムに存在しても良いし、スイッチに存在しても良い。ＶＶＯＬがストレージサブシステムに存在する場合、ＶＯＬは、そのストレージサブシステムに存在しても良いし、それとは別のストレージサブシステムに存在しても良い。
【００２０】
制御装置は、ストレージシステムの中に組み込まれたコントローラであっても良いし、ストレージシステムと通信可能な計算機であっても良いし、制御装置が備える複数の構成要素の一部が、ストレージシステムのコントローラが備え、他の一部が、計算機にあっても良い。計算機は、ストレージシステムに書込み要求或いは読出し要求を発行するホスト計算機であっても良いし、計算機システムを管理する管理計算機であっても良い。
【００２１】
上述した各部は、ハードウェア、コンピュータプログラム又はそれらの組み合わせ（例えば一部をコンピュータプログラムにより実現し残りをハードウェアで実現すること）により構築することができる。コンピュータプログラムは、所定のプロセッサに読み込まれて実行される。また、コンピュータプログラムがプロセッサに読み込まれて行われる情報処理の際、適宜に、メモリ等のハードウェア資源上に存在する記憶域が使用されてもよい。また、コンピュータプログラムは、ＣＤ−ＲＯＭ等の記録媒体から計算機にインストールされてもよいし、通信ネットワークを介して計算機にダウンロードされてもよい。
【発明の効果】
【００２２】
本発明によれば、複数のホスト計算機がストレージシステムの同一のホストＩ／Ｆを共有可能な計算機システムにおいて、ＶＯＬの状態の違いに適したアクセスを実現することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施形態の概要を説明する。
【００２４】
図３２は、本発明の一実施形態の概要の説明図である。
【００２５】
本実施形態では、制御装置が、各ＶＶＯＬにマッピングされている各ＶＯＬのＶＯＬ状態を監視しＶＯＬ状態の変化の有無を判別する。そして、制御装置は、ＶＯＬ状態の変化があったＶＶＯＬへのパス（複数のホスト１及び２に共有されているホストＩ／Ｆを経由するパス）の数を変更する。
【００２６】
具体的には、例えば、ＶＯＬ２が、高階層ストレージ装置群から低階層ストレージ装置群に移動されたとする。この場合、ＶＯＬ２内のデータの重要度は、移動前に比して低いと考えられる。そのため、図示のように、移動の後、ＶＯＬ２にマッピングされているＶＶＯＬ２へのパスの数が、減らされる。これにより、ＶＯＬ１へのアクセスがそれよりも重要度の低いＶＯＬ２へのアクセスによって悪影響を受けることが解消される。
【００２７】
なお、その際、もし、図示のように、複数のホストＩ／Ｆ Ａ乃至Ｄに、ホスト１及び２に共有されているホストＩ／Ｆと共有されていないホストＩ／Ｆとが混在している場合には、共有されているホストＩ／Ｆがどれであるかを調べ、共有されているホストＩ／Ｆを経由するパスを減らすようにする。
【００２８】
また、パスの減少に際しては、最低限確保すべきパス数（以下、最低パス本数）以下には減らさないようにすることができる。最低パス本数は、事前にユーザが設定しておくことができる。最低パス本数は、所定の基準毎（例えば、ＶＯＬ属性、階層など）に用意されても良いし、基準に関係なく一つであってもよい。
【００２９】
また、パスの増減のやり方としては、種々の方法、例えば、予め定義されたパスの状態（具体的には、有効（Online）と無効（Offline）を変更する方法と、パスそれ自体を増減させる（具体的には、パスを新たに構成・削減する）方法とが考えられる。以下の説明では、説明を分かり易くするため、パスの状態を変更する方法が採用される。なお、この場合、或るＶＶＯＬに対して有効パス（有効状態とするパス）の数ｘを、以下の範囲
（該ＶＶＯＬに対して予め定義されたパス本数）≧ｘ≧（最低パス本数）、
で、自由に増減可能としてよい。
【００３０】
さて、本実施形態では、上記概要において、幾つかの特徴、例えば３つの特徴がある。以下、各特徴の概要を説明する。
【００３１】
（Ａ）第一の特徴：変更後のパス数の決定方法。
【００３２】
本実施形態では、ＶＯＬの属性に着目したＶＯＬ評価値が各ＶＯＬについて算出される。移動などによってＶＯＬ属性が変化した場合、変更後のＶＯＬ属性を基に算出されるＶＯＬ評価値に基づいて、ＶＯＬ属性が変化したＶＯＬにマッピングされているＶＶＯＬについての変更後のパス数（言い換えれば、増減するパスの数）が決定される。
【００３３】
ＶＯＬの属性として、ＶＯＬを有する物理的な記憶装置に関する物理的な属性を採用することができる。具体的には、例えば、ＶＯＬ属性の種類として、該ＶＯＬが存在するストレージサブシステムの種類、該ＶＯＬが存在するストレージ装置群におけるストレージ装置の種類、該ストレージ装置群のＲＡＩＤレベルなど、種々の属性が考えられる。各種ＶＯＬ属性には、複数のＶＯＬ属性値がある。そして、各ＶＯＬ属性値には、属性評価値が予め設定されており、ＶＯＬの評価値は、そのＶＯＬに該当する、各種ＶＯＬ属性における属性評価値を基に算出される。ＶＯＬ属性種類、ＶＯＬ属性値及び属性評価値の関係を、図８Ａ乃至図８Ｃに例示する。具体的には、図８Ａは、ＶＯＬ属性種類がＲＡＩＤレベルである属性テーブル３０１１Ａの構成例を示す。図８Ｂは、ＶＯＬ属性種類がストレージサブシステム種類である属性テーブル３０１１Ｂの構成例を示す。図８Ｃは、ＶＯＬ属性種類がストレージ装置種類である属性テーブル３０１１Ｃの構成例を示す。各属性テーブルでは、ＶＯＬ属性種類に対応するＶＯＬ属性値と、該ＶＯＬ属性値に対応する属性評価値とが記録される。ＶＯＬ属性種類、ＶＯＬ属性値及び属性評価値は、ユーザ（例えば後述する管理者）が任意に設定することができる。
【００３４】
ＶＯＬの評価値は、例えば、該ＶＯＬに対応する複数の属性評価値の和である。具体的には、例えば、ＶＯＬ評価値は、以下の（１）式、
【００３５】
ＶＯＬの評価値＝（ストレージサブシステム種別における、該ＶＯＬのＶＯＬ属性値に対応した属性評価値）＋（RAIDレベルにおける、該ＶＯＬのＶＯＬ属性値に対応した属性評価値）＋（ストレージ装置種別における、該ＶＯＬのＶＯＬ属性値に対応した属性評価値）・・・・・（１）
により算出することができる。
【００３６】
そして、変更後のパス本数は、例えば、以下の（２）式、
【００３７】
変更後のパス本数＝（現在のパス本数）×（変化後のＶＯＬ評価値÷変化前のＶＯＬ評価値）・・・・・（２）
により算出することができる。
【００３８】
例えば、図３２の例において、ＶＯＬ２がマッピングされているＶＶＯＬ２の現在のパス本数を３本とする。そして、ＶＯＬ２のＶＯＬ評価値が、８から５に変化したとする。この場合、上記（２）式によれば、変更後のパス数＝3×(5÷8)=1.875となる。算出された値が整数にならない場合、所定の方法で整数にすることができる。本例では、小数点第一位を四捨五入することで2にする。制御装置は、ＶＶＯＬ２についてのパス数を、３から、算出された値２に減らす。なお、この一連の処理において、制御装置は、四捨五入後のパス数２に、四捨五入前の値1.875を対応付けて記憶する。次回の計算では、四捨五入後の値２ではなく、四捨五入前の値1.875を使用する。
【００３９】
すなわち、例えば、ＶＶＯＬ２に対するパス数を３本から２本に減らした後に、ＶＯＬ２のＶＯＬ評価値が、上記５から８に変化したとする。この場合、上記（２）式によれば、変更後のパス数＝変更前のパス数×（８÷５）となるが、変更前のパス数には、四捨五入後の値２ではなく、四捨五入前の値1.875を代入して計算する。これにより、適切に変更後のパス数を算出することができる。
【００４０】
以上のように、この実施形態では、変化前のＶＯＬ評価値に対する変化後のＶＯＬ評価値の比率と、現在のパス数とに基づいて、変更後のパス数が算出される。すなわち、ＶＯＬの属性値に対して属性評価値という値を設定し、該属性評価値を用いることで、ＶＯＬ評価値という値を算出し、該ＶＯＬ評価値を基に、ＶＯＬに適したパスの本数を適切な値に制御することができる。
【００４１】
（Ｂ）第二の特徴：増減するパスの決定方法。
【００４２】
パスの増減の対象の選択には、上述したＶＯＬ評価値を、ホストＩ／Ｆごとに集計した、ホストＩ／ＦごとのＶＯＬ評価値を用いる。以下、ホストＩ／ＦについてのＶＯＬ評価値の集計を、「ホストＩ／Ｆ評価値」と言う。パスの増減対象（どのホストＩ／Ｆを経由するパスの状態を変更するか）は、例えば、複数のホストＩ／Ｆ評価値を平均化することで、決定することができる。言い換えれば、ＶＯＬ評価値を、ＶＯＬが要求するデータアクセスの帯域ととらえ、これを平均化することで、複数のホストＩ／Ｆでの負荷を分散することができる。この処理では、例えば、パス減少の場合、最も高いホストＩ／Ｆ評価値となったホストＩ／Ｆを経由するパスが減少（無効化）され、パス増加の場合、最も低いホストＩ／Ｆ評価値となったホストＩ／Ｆを経由するパスが増加（有効化）される。
【００４３】
図３３に、増減するパスの決定方法の一例を示す。この例では、ホストＩ／Ｆが、後述するＣＨＡ（チャネルアダプタ）となっている。
【００４４】
この図によれば、ＣＨＡ２が、複数のホスト１及び２に共有され、ＣＨＡ４が、複数のホスト２及び３に共有されている。ＶＯＬ２が、高階層ストレージ装置群から低階層ストレージ装置群に移動したことにより、ＶＶＯＬ２のＶＯＬ評価値（正確には、ＶＶＯＬ２にマッピングされているＶＯＬ２のＶＯＬ評価値）が、３になったとする。
【００４５】
この場合、共有されているＣＨＡ２のホストＩ／Ｆ評価値（以下、ＣＨＡ評価値）は、１３となる。なぜなら、ＣＨＡ２を経由した２本のパスには、ＶＶＯＬ１及び２が接続されており、ＶＶＯＬ１のＶＯＬ評価値は１０であり、ＶＶＯＬ２のＶＯＬ評価値は前述した通り３となり、それらを合計すると１３になるからである。
【００４６】
一方、別の共有されているＣＨＡ４のＣＨＡ評価値は、６となる。なぜなら、ＣＨＡ４を経由した２本のパスには、ＶＶＯＬ２及び３が接続されており、ＶＶＯＬ２のＶＯＬ評価値は前述した通り３となり、ＶＶＯＬ３のＶＯＬ評価値は３であり、それらを合計すると６になるからである。
【００４７】
ＶＯＬ２の上記移動によりＶＯＬ２のＶＯＬ評価値は下がったため、ＶＶＯＬ２についてのパス数は減らすことになる。そこで、ＶＶＯＬ２に接続される複数のパスのうち、どのＣＨＡを経由するパスを削除するかであるが、本例では、図示のように、ＣＨＡ２を経由するパスが削除される。ＣＨＡ２が、複数のホストに共有されているＣＨＡ２及び４のうち最もＣＨＡ評価値が高いＣＨＡだからである。
【００４８】
以上の処理により、どのＣＨＡを経由するパスを増やす或いは減らすかの選択を適切にすることができる。
【００４９】
（Ｃ）第三の特徴：パス変更のタイミング。
【００５０】
パスの増減のタイミングとして、移動が実行された際と、ホストＩ／Ｆ（例えばCHA）の負荷が変化（上昇或いは下降）した際のいずれかを採用することができる。後者の場合では、例えば、移動時に、増減対象パス候補をリストアップしておき（つまり、この時点では、パスの増減を行わない）、ホストＩ／Ｆの負荷変化を検出したタイミングで、負荷変化が検出されたホストＩ／Ｆをキーとして、リストアップされている増減対象パス候補を検索し、見つかったパスを増減（有効化或いは無効化）することができる。
【００５１】
以下、本発明の一実施形態について詳細に説明する。また、以下の説明では、コンピュータプログラムが主語になる場合は、実際にはそのコンピュータプログラムを実行するプロセッサ（ＣＰＵ）によって処理が行われるものとする。また、以下の説明では、説明を分かり易くするために、ＶＶＯＬとＶＯＬが１対１で対応付けられるものとする。このため、或るＶＯＬについて算出されたＶＯＬ評価値は、該ＶＯＬがマッピングされているＶＶＯＬの評価値となる。しかし、１つのＶＶＯＬに対して複数のＶＯＬがマッピングされている場合、それら複数のＶＯＬのそれぞれに対応した複数のＶＯＬ評価値を基に、該一つのＶＶＯＬの評価値（重要度）を算出することができる。例えば、それら複数のＶＯＬ評価値の合計を、該一つのＶＶＯＬの評価値とすることができる。変更後のパス数では、上記（２）式において、ＶＯＬ評価値には、ＶＶＯＬの評価値を代入することができる。
【００５２】
図１は、本発明の一実施形態に係る計算機システムの構成例を示すブロック図である。
【００５３】
第一の通信ネットワーク（具体的には、例えば、第一の通信ネットワークの構成要素である一又は複数のスイッチ７５）に、複数のホスト計算機１０と、ストレージサブシステム６００とが接続される。第一の通信ネットワークとしては、ＳＡＮ（Storage Area Network）など、種々のネットワークを採用可能である。また、ホスト計算機の数は、図１の例によれば、１０Ａと１０Ｂの２台であるが、これに限定する必要は無い。以下、１０Ａを「ホスト１」と言い、１０Ｂを「ホスト２」と言うことがある。
【００５４】
第二の通信ネットワーク１０４に、ホスト１及び２と、管理サーバ６１と、ストレージサブシステム６００と、ストレージサブシステム４０Ａ及び４０Ｂとが接続される。第二の通信ネットワーク１０４としては、ＬＡＮ（Local Area Network）など、種々のネットワークを採用することができる。
【００５５】
ホスト１及び２の構成はほぼ同様なので、ホスト１を代表的に例に採り説明する。ホスト１は、ストレージサブシステム６００のＶＶＯＬに対して、アクセス要求（書込み要求／読出し要求）を発行する計算機である。ホスト１は、例えば、プロセッサ（ＣＰＵ）５１や、記憶資源や、一又は複数のＨＢＡ（ホストバスアダプタ）１２を備える。記憶資源としては、メモリやハードディスクなど種々の記憶資源を採用可能であるが、本実施形態では、メモリとする。これは、管理サーバ６１についても同様である。ＨＢＡ１２は、SANに接続するために、ホストが持つハードウェアであり、例えば、FC（Fibre Channel）プロトコル、SCSIプロトコルをサポートするインタフェース装置である。メモリ５３には、プロセッサ５１に読み込まれて実行されるコンピュータプログラムや、プロセッサ５１に使用されるデータが記憶される。コンピュータプログラムとしては、例えば、業務アプリケーションプログラム（以下、業務ＡＰ）１１や、デバイスリンクマネージャ５５がある。データとしては、例えば、パス管理テーブル５７がある。各種コンピュータプログラム１１，５５や、パス管理テーブル５７については後述する。
【００５６】
管理サーバ６１は、複数のホスト１，２やストレージサブシステム６００、４０Ａ及び４０Ｂを含んだ計算機システムを管理するサーバマシンである。管理サーバ６１は、例えば、プロセッサ（ＣＰＵ）６３や、メモリ６５を備える。メモリ６５には、プロセッサ６３に読み込まれて実行されるコンピュータプログラムや、プロセッサ６３に使用されるデータが記憶される。コンピュータプログラムとしては、例えば、統合交替パス管理プログラム６７や、データ階層管理プログラム６９や、性能監視プログラム７１がある。データとしては、例えば、複数のテーブルを含んだ管理テーブル群７３がある。各種コンピュータプログラム６７，６９，７１や、管理テーブル群７３については後述する。
【００５７】
ストレージサブシステム６００は、例えば、アレイ状に配列された多数のディスク４００を備えるＲＡＩＤ（Redundant Array of Independent (or Inexpensive) Disks）システムとすることができる。但し、これに限らず、ストレージサブシステム６００を、通信ネットワークを構成するスイッチ、例えば、高機能化されたインテリジェント型のファイバチャネルスイッチとして構成することもできる。ストレージサブシステム６００は、後述のように、ストレージサブシステム４０Ａ、４０Ｂの有する記憶資源を自己の論理ボリューム（Logical Unit）としてホスト計算機１０に提供するものであるから、自己が直接支配するローカルな記憶デバイスを有していなくても良い。以下、便宜上、ストレージサブシステム６００を「ストレージサブシステム１」と言い、ストレージサブシステム４０Ａを「ストレージサブシステム２」と言い、ストレージサブシステム４０Ｂを「ストレージサブシステム３」と言うことがある。
【００５８】
ストレージサブシステム６００は、コントローラ部２０と、ディスクユニット３０とに大別することができる。コントローラ部２０は、例えば、チャネルアダプタ（以下、ＣＨＡ）２１と、ディスクアダプタ（以下、ＤＫＡ）２２と、ＳＶＰ（Service Processor）２３と、キャッシュメモリ２４と、共有メモリ２５と、接続部２６とを備えている。
【００５９】
ＣＨＡ２１は、外部の装置（例えばホスト計算機或いは他のストレージサブシステム）と通信可能に接続される一又は複数の通信ポートを有し、外部の装置との間のデータ通信を行うものである。本実施形態では、一つのＣＨＡ２１に備えられる通信ポート（外部の装置と通信するためのポート）の数は一つとするが、通信ポートは複数個存在してもよい。ＣＨＡ２１は、例えば、ＣＰＵやメモリ等を備えたマイクロコンピュータシステムとして構成されている。ＣＨＡ２１には、そのＣＨＡ２１を識別するためのネットワークアドレス（例えばＷＷＮ（World Wide Name））が割り当てられている。ＣＨＡ２１には、ホスト計算機１０に接続されたＣＨＡ２１Ａと、ストレージサブシステム２，３に接続されたＣＨＡ２１Ｂとがある。ＣＨＡ２１Ａと２１Ｂは、一体になっていてもよい。
【００６０】
ＤＫＡ２２は、ディスクユニット３０に備えられたディスク（以下、内部ディスク）４００に接続するための通信ポートを有し、その通信ポートを介して、内部ディスク４００と通信することができる。本実施形態では、一つのＤＫＡ２２に備えられる通信ポート（内部ディスクと通信するためのポート）の数は一つとするが、通信ポートは複数個存在しても良い。ＤＫＡ２２は、ＣＰＵやメモリ等を備えたマイクロコンピュータシステムとして構成されている。ＤＫＡ２２は、ＣＨＡ２１Ａからキャッシュメモリ２４に書かれたデータを内部ディスク４００に書込んだり、内部ディスク４００から読み出したデータをキャッシュメモリ２４に書込んだりすることができる。また、ＤＫＡ２２は、内部ディスク４００との間でデータ入出力を行う場合、論理的なアドレスを物理的なアドレスに変換することができる。
【００６１】
キャッシュメモリ２４は、例えば揮発性又は不揮発性のメモリであり、ホスト計算機１０から受信したデータや、内部ディスク４００から読出されたデータを一時的に記憶することができる。共有メモリ２５は、例えば揮発性又は不揮発性のメモリであり、ストレージサブシステム１での制御に関する情報（以下、制御情報）が格納される。
【００６２】
接続部２６は、ＣＨＡ２１、ＤＫＡ２２、キャッシュメモリ２４及び共有メモリ２５を相互に接続させる。接続部２６は、例えば、高速スイッチング動作によってデータ伝送を行う超高速クロスバスイッチ等のような高速バスとして構成することができる。
【００６３】
ディスユニット３０には、アレイ状に配列された複数の内部ディスク４００が含まれている。本実施形態では、ディスクとは、ハードディスクを意味するが、それに代えて、例えば、フレキシブルディスク、光ディスクなどのディスク型記憶装置とすることができる。勿論、ディスクに代えて、他種の記憶装置、例えば、磁気テープ、半導体メモリ（例えばフラッシュメモリ）が用いられてもよい。一以上の内部ディスク４００の記憶領域上には、実体のある論理ボリュームが設けられる。
【００６４】
ＳＶＰ２３は、ストレージサブシステム１の保守又は管理を行うための情報処理端末（例えばノート型のパーソナルコンピュータ）である。ＳＶＰ２３は、例えば、ＣＨＡ２１内のプロセッサ（例えばＣＰＵ）や、ＤＫＡ２２内のプロセッサに、図示しないネットワークを介して接続されている。ＳＶＰ２３は、ストレージサブシステム１内の障害発生を監視してディスプレイ画面に表示したり、内部ディスク４００の閉塞処理等を指示したりするようになっている。また、ＳＶＰ２３は、遠隔の情報処理端末から操作することもできる。
【００６５】
ストレージサブシステム２，３は、例えば、コントローラ部２００１と、ディスクユニット２３００とを備える。コントローラ部２００１の構成は、ストレージサブシステム１と同じであっても良いし、それとは違う構成（例えば、プロセッサやメモリを備えた回路基盤）であっても良い。ディスクユニット２３００には、１又は複数のディスク（以下、外部ディスク）２４００があり、一以上の外部ディスク２４００の記憶領域上には、実体のある論理ボリュームが備えられる。
【００６６】
以上が、本実施形態に係る計算機システムの構成例である。なお、上記の説明は一例であって、他の構成が採用されてもよい。例えば、共有メモリ２５とキャッシュメモリ２４は、別々のメモリでなく、一つのメモリに共有メモリ領域とキャッシュメモリ領域とが設けられても良い。また、例えば、コントローラ部２０は、ＣＰＵ、メモリ及び通信ポートを備えた回路基盤であっても良い。この場合、ＣＰＵが、複数のＣＨＡやＤＫＡによって行われる処理を実行することができる。
【００６７】
図２は、ホストとストレージサブシステムとの間の論理的な構成の一例を示す。
【００６８】
ホストには、ＨＬＵ（Host Logical Unit）がある。ＨＬＵは、ホストに提供される論理的な記憶領域である。業務ＡＰ１１は、ＨＬＵに対してアクセス要求を発行することができる。ＨＬＵ１に対して発行されたアクセス要求が、ＨＬＵ１に対応したＬＵ１に対するアクセス要求として、ホストからストレージサブシステム１に送信される。
【００６９】
ＬＵ（Logical Unit）は、ＣＨＡのプロセッサによってホストに提供される仮想的な論理ボリュームであり、前述したＶＶＯＬに相当するものである。ＬＵは、例えば、ＬＵの識別子、具体的には、例えば、ＬＵＮ（Logical Unit Number）とすることができる。
【００７０】
ＬＤ（Logical Device）は、前述したＶＯＬに相当するものである。ＬＤは、例えば、ＲＡＩＤグループ（ＲＡＩＤが組まれた二以上のストレージ装置）の記憶空間を基に生成される論理ボリュームである。
【００７１】
ＨＬＵとＬＵとの間の結線は、各ＬＵまでの論理的なパスであり、且つ、有効状態のパスを示したものである。言い換えれば、例えば、ＨＢＡ３とＣＨＡ２との間にパスが定義されていても、該パスが無効状態であれば、該パスは示されていない。
【００７２】
ＬＵとＬＤとの間の結線は、ＬＵにＬＤがマッピングされていることを示す。
【００７３】
図示の例によれば、ＬＵ１に対するアクセス要求があった場合は、ＬＵ１を有するストレージサブシステム１内のＬＤ１１に対してアクセスが発生する。一方、ＬＵ２に対するアクセス要求があった場合は、ＬＵ２を有するストレージサブシステム１の外部のストレージサブシステム２のＬＤ２１に対してアクセスが発生する。
【００７４】
ちなみに、ＬＤ２１が外部のストレージサブシステム２に存在することは、ホスト１にはわからない。言い換えれば、外部のストレージサブシステム２の記憶資源が、ストレージサブシステム１の記憶資源として利用される。この外部接続技術は、例えば、特開２００５−１０７６４５号公報（ＵＳ出願番号１０／７６９８０５号、ＵＳ出願番号１１／４７１５５６号）に開示の技術を援用することができる。
【００７５】
図３乃至図１７には、各種テーブルの構成例を示す。図３乃至図１５のテーブルは、管理サーバ６１の管理テーブル群７３に含まれるテーブルである。図１６のテーブルは、ホスト１にあるパス管理テーブル５７である。図１７のテーブルは、ストレージサブシステム１にあるテーブルである。
【００７６】
以下、各種テーブルについて詳細に説明する。
【００７７】
図３は、論理デバイス管理テーブルの構成例を示す。
【００７８】
論理デバイス管理テーブル３００１には、各ＬＤ毎にＬＤに関する情報が登録される。具体的には、例えば、このテーブル３００１には、各ＬＤ毎に、ＬＤのＩＤ（論理デバイスＩＤ）と、該ＬＤを有するストレージサブシステムの識別子（ストレージサブシステムＩＤ）と、該ＬＤが設定された物理的な記憶領域（例えばディスク）の識別子（物理ＩＤ）とが記録される。また、各ＬＤ毎に、該ＬＤがＬＵに割り当てられているかどうかを示す割当状況と、該ＬＤの記憶容量（容量）と、該ＬＤが属するＲＡＩＤグループのＲＡＩＤレベルと、該ＬＤを有するストレージサブシステムの種別と、該ＬＤを有するディスクの種別（ストレージ装置種別）とも記録される。
【００７９】
ＬＤの属性、換言すれば、ＬＤがマッピングされるＬＵの属性としては、容量、RAIDレベル、ストレージサブシステム種別、ストレージ装置種別がある。これらのうちの少なくとも一つに代えて又は加えて、ＬＤが属するディスクの応答速度、該ＬＤが属するディスクの回転数等も属性として登録されてもよい。
【００８０】
また、本実施形態で言うディスクとはハードディスクであり、故に、ストレージ装置種別としては、ハードディスクドライブの種類（例えば、ＦＣ、ＳＡＴＡ）となる。しかし、例えば、複数種類のストレージ装置（例えば、ハードディスクドライブとフラッシュメモリデバイス）が混在する場合には、ストレージ装置種類としては、ストレージ装置それ自体の種類が設定されても良い。
【００８１】
図４は、論理ユニット管理テーブルの構成例を示す。
【００８２】
論理ユニット管理テーブル３００３は、ＬＵとＬＤとの対応関係を示したテーブルである。図４では、一つのＬＵに一つのＬＤが割当てられる例を示しているが、一つのＬＵに複数のＬＤが対応付けられても良い。本テーブル３００３には、例えば、ホストの識別子（ホストＩＤ）と、該ホストに提供されるＬＵの識別子（論理ユニットＩＤ）と、該ＬＵにマッピングされるＬＤの識別子（論理デバイスＩＤ）とが記録される。
【００８３】
図５は、階層定義テーブルの構成例を示す。
【００８４】
階層定義テーブル３００５は、データ階層管理プログラム６９により、定義された階層が記録されるテーブルである。階層としては、例えば、高、中、低の三段階とすることができるが、それよりも小段或いは多段でもよい。また、本実施形態の説明では、便宜上、"階層"という表現を使用しているが、これは、ＬＤが存在する物理的な階層の高さを意味するのではなく、ＶＯＬの重要性を意味するものである。具体的には、例えば、物理的な階層の高さで言えば、ストレージサブシステム１に存在するＬＤの方が、ストレージサブシステム２或いは３に存在するＬＤよりも高いということになるが、本実施形態で言う"階層"が、必ずしもそうなっているわけではない。階層の高さは、どんな階層がどのように定義されているかによって決定される。
【００８５】
具体的には、階層には、例えば、階層名称、複数種類のＶＯＬ属性、パス制限及び移動時期で定義することができる。階層名称は、例えば、管理サーバ６１のユーザ（管理者）によって設定された名称である。また、各種ＶＯＬ属性（例えば"ＲＡＩＤレベル"という項目）、各種ＶＯＬ属性に対応した値（例えば"ＲＡＩＤ０＋１"）、パス制限の値、移動時期の値も、例えば、管理者によって設定されたものである。パス制限とは、最低必要となるパスの本数である。移動時期とは、移動するタイミングであり、具体的には、例えば、移動元ＬＵが選択された後直ちに実行するというタイミングと、移動元ＬＵが選択されても直ぐには移動を行わず、該移動元ＬＵへのパスが経由するＣＨＡの負荷が下がった時に移動を実行するというタイミングとがある。
【００８６】
階層定義テーブル３００５は、ストレージサブシステム１、２、３が持つＬＤの中から、管理者が必要なＬＤを検索するための条件を設定したものである。階層名称が選択されると、ＶＯＬ属性に設定された値を満たすＬＤが、図３の論理デバイス管理テーブル３００１から特定される。
【００８７】
図６は、ボリュームグループ管理テーブルの構成例を示す。
【００８８】
ボリュームグループ管理テーブル３００７は、ボリュームグループを管理するためのテーブルである。ボリュームグループとは、複数のＬＤ或いは複数のＬＵを一つにまとめたものである。データを使用するアプリケーションごとや同種のデータごとにまとめて、ボリュームグループを構成することができる。
【００８９】
本テーブル３００７には、例えば、各ボリュームグループ毎に、グループ名称及びボリュームが記述される。グループ名称は、例えば、管理者によって設定された名称である。ボリュームＩＤは、例えば、管理者によって設定されたＬＵ ＩＤ或いはＬＤ ＩＤである。
【００９０】
ＬＤを移動する場合、ボリュームグループ単位で、移動元を指定することができる。これにより、移動元を一つ一つ指定するといった面倒を無くすことができる。なお、ボリュームグループが複数のＬＵで構成されている場合、各ＬＵにマッピングされている各ＬＤが移動元となる。また、ボリュームグループが複数のＬＤで構成されている場合、それら複数のＬＤがそれぞれ移動元となる。
【００９１】
図７は、ボリューム−パステーブルの構成例を示す。
【００９２】
ボリューム−パステーブル３００９は、ホストのＨＢＡからＬＵまでの論理的なアクセス経路（つまりパス）が登録されたものである。つまり、本テーブル３００９には、各パス毎に、パスの構成の定義を表す情報が登録される。パスは、どのホストのどのＨＢＡからどのＣＨＡを経由してどのＬＵに繋がるかで定義される。言い換えれば、パスは、ホストＩＤ、ＨＢＡ ＩＤ、ＣＨＡ ＩＤ、ＬＵ ＩＤの組み合わせで定義することができる。パス状態は、そのパスが有効（Online）か無効（Offline）かを表す。
【００９３】
各ホスト１，２では、パス管理テーブル５７（図１６参照）が記憶されるが、本テーブル３００９は、複数のホスト１，２にそれぞれ存在する複数のパス管理テーブル５７を統合したものである。本テーブル３００９に、ホストＩＤ、HBA ＩＤ、CHA ＩＤ、ＬＵ ＩＤが設定された場合、管理サーバ１６が、該ホストＩＤに対応したホストに、設定されたHBA ＩＤ、CHA ＩＤ、ＬＵ ＩＤを送信する。これにより、それらの情報を受信したホストが、受信した情報を、そのホストが保持するパス管理テーブル５７に設定することができる。
【００９４】
図８Ａ乃至図８Ｃは、属性テーブルの構成例を示す。これらの属性テーブルについては既に説明してあるので、ここでは説明を省略する。
【００９５】
図９は、ボリュームテーブルの構成例を示す。
【００９６】
ボリュームテーブル３０１３は、ＬＵと階層の関係を管理するためのテーブルである。本テーブル３０１３には、例えば、ホストＩＤ、ＬＵ ＩＤ、パス本数、Onlineパス本数、計算パス本数、階層種別が記録される。パス本数は、該パス本数に対応するホストＩＤを有するホストと、該パス本数に対応するＬＵ ＩＤを有するＬＵとの間に何本のパスが存在するかを表す値である。Onlineパス本数は、それらのパスのうちの何本が現在Online状態であるかを表す値であり、具体的には、変更後のパス本数の計算式（上記（２）式）で算出された値を四捨五入した後の値である。計算パス本数は、該計算式で算出された値それ自体（つまり四捨五入前の値）である。階層種別は、該階層種別に対応するＬＵ識別子を有するＬＵにマッピングされたＬＤが属する階層を表す値である。
【００９７】
図１０は、ボリューム評価値テーブルの構成例を示す。
【００９８】
ボリューム評価値テーブル３０１５は、ＬＵ毎のＶＯＬ評価値が格納されるテーブルである。本テーブル３０１５には、例えば、各ＬＵ毎に、ＬＵを使用するホストのＩＤと、該ＬＵのＩＤと、該ＬＵのＶＯＬ評価値と、該ＬＵの評価値最大値とが登録される。ＶＯＬ評価値は、図８Ａ乃至図８Ｃに例示した属性テーブル３０１１Ａ〜３０１１Ｃと、図９に例示したボリュームテーブル３０１３とを基に計算される。評価値最大値とは、ＶＯＬ評価値の変化履歴のうちの最大値である。
【００９９】
図１１は、変更パス本数テーブルの構成例を示す。
【０１００】
変更パス本数テーブル３０１７は、どのホストからどのＣＨＡを経由してどのＬＵに繋がるパスを何本増減すべきかを表すテーブルである。例えば、本テーブル３０１７には、ホストＩＤ、ＬＵ ＩＤ、変更パス本数及びＣＨＡ ＩＤが登録される。変更パス本数において、＋となっていれば、パスを増やすことを意味し、−となっていれば、パスを減らすことを意味する。
【０１０１】
図１２は、パス状態変更候補テーブルの構成例を示す。
【０１０２】
パス状態変更候補テーブル３０１９は、移動の実行タイミングでパス状態を変更せず（パスを増減せず）、CHAの負荷変更時にパスを変更する場合に使用されるテーブルである。本テーブル３０１９には、パス状態の変更の候補とされたパスに関する情報、例えば、ホストＩＤ、ＨＢＡ ＩＤ、ＬＵ ＩＤ、ＣＨＡ ＩＤ、パスＩＤ及び操作種別が登録される。操作種別は、変更後のパス状態を表す。
【０１０３】
移動の実行の際に、本テーブル３０１９に、パス状態変更の候補となるパスに関する情報が登録され、ＣＨＡの負荷変更検出時に、このテーブル３０１９に登録されているパスの情報の中から、パス状態が変更されるパスが決定される。
【０１０４】
図１３は、パス自動変更ＯＦＦテーブルの構成例を示す。
【０１０５】
パス自動変更ＯＦＦテーブル３０２１には、どのホストとどのＬＵとを結ぶパス数を自動的に変更してはならないかが登録される。本テーブル３０２１には、例えば、ホストＩＤ及びＬＵ ＩＤが登録される。そのホストＩＤから識別されるホストと、該ホストＩＤに対応したＬＵ ＩＤから識別されるＬＵとを結ぶパスの本数は、自動的に増減されることはない。
【０１０６】
図１４は、ＣＨＡ評価値テーブルの構成例を示す。
【０１０７】
ＣＨＡ評価値テーブル３０２３は、各ＣＨＡ毎のＣＨＡ評価値が登録される。本テーブル３０２３には、例えば、各ＣＨＡ毎に、ＣＨＡ ＩＤとＣＨＡ評価値とが登録される。
【０１０８】
図１５は、パス本数制限テーブルの構成例を示す。
【０１０９】
パス本数制限テーブル３０２５には、最低パス本数が登録される。本テーブル３０２５は、パス本数を減少させる際に参照される。
【０１１０】
図１６は、パス管理テーブルの構成例を示す。具体的には、この図１６は、ホスト１のパス管理テーブルの構成例を示す。
【０１１１】
本テーブル５７には、管理サーバ１６から送信されて来た、パスに関する情報（HBA ＩＤ、CHA ＩＤ、ＬＵ ＩＤ）が登録され、且つ、パスＩＤ、ＨＬＵ ＩＤ、及びパス状態が登録される。
【０１１２】
デバイスリンクマネージャ５５は、業務ＡＰ１１のアクセス要求を受け付け、該アクセス要求を受けた場合、該アクセス要求に含まれるHLU ＩＤから、ストレージサブシステム１にアクセス要求を送信するのに使用するパスを、本パス管理テーブル５７から特定される複数のパスの中から選択する。
【０１１３】
具体的には、例えば、ＬＵ１がホスト１にマウントされたことにより、ＨＬＵ１がある場合に、ＨＬＵ１に対するアクセス要求を受け付けたとする。この場合、デバイスリンクマネージャ５５は、パスＩＤ０００１〜０００１４にそれぞれ対応した１４本のパスの中の一つを選択して、ＬＵ１に対するアクセス要求を送信することができる。なお、複数のアクセス要求があった場合、デバイスリンクマネージャ５５は、ストレージサブシステム１に送信するのに使用するパスを、ｎ回（ｎは１以上の整数）使用する都度に別のパスに切り替えていくことで、負荷分散を行うことができる。
【０１１４】
図１７は、ボリューム対応テーブルの構成例を示す。
【０１１５】
ボリューム対応テーブル３０２９は、例えば、ストレージサブシステム１の共有メモリ２５に記憶されるテーブルである。本テーブル３０２９は、ＬＵとＬＤとの対応関係が定義されたテーブルである。具体的には、例えば、本テーブル３０２９には、ＬＵのＩＤ、該ＬＵにマッピングされているＬＤのＩＤ、及び該ＬＤを有するストレージサブシステムのＩＤが記録される。
【０１１６】
ストレージサブシステム１におけるCHAのプロセッサは、或るＬＵに対するアクセス要求があった場合、該ＬＵにマッピングされているＬＤが、ストレージサブシステム１内にあるか否かをボリューム対応テーブル３０２９から判別し、ストレージサブシステム２又は３にあると判別した場合には、該ＬＤへのアクセス要求を、ストレージサブシステム２又は３に送信することができる。
【０１１７】
図１８は、階層定義画面の構成例を示す。
【０１１８】
階層定義画面３０３１は、管理者から階層の定義を受け付けるＧＵＩ（Graphical User Interface）であり、例えば、データ階層管理プログラム６９によって表示される画面である。この画面３０３１を介して、管理者は、階層を定義することができる。具体的には、例えば、階層名称、移動元グループ、各種ＶＯＬ属性などを入力することで、階層を定義することができる。本画面３０３１を介して入力された情報が、階層定義テーブル３００５に登録される。
【０１１９】
図１９は、パス状態表示画面の構成例を示す。
【０１２０】
パス状態表示画面３０３３は、各ＬＵについてのパスの状態が表示される画面である。本画面３０３３は、例えば、統合交替パス管理プログラム６７によって表示される。
【０１２１】
この画面３０３３では、タブでホストが指定できるようになっている。管理者が、マウス等の入力装置を利用して、所望のホストのタブを指定すると、該ホストがアクセス可能なLUについて、階層名称、HBA ＩＤ、CHA ＩＤ、現在のパス状態、前のパス状態が表示される。これらの情報は、例えば、ボリューム−パステーブル３００９（図７参照）から取得される。
【０１２２】
なお、階層名称は、LUが或る階層に属する場合に表示され、どの階層にも属していない場合には、空欄となる。LUが階層に属しているかどうかは、例えば、図９に例示したボリュームテーブル３０１３で判断することができる。
【０１２３】
また、前のパス状態は、階層が指定されて移動した場合には、移動前のパス状態が設定される。LUが移動していない場合は、空欄となってよい。
【０１２４】
以下、本実施形態で行われる処理の流れの一例を説明する。なお、以下の説明では、ステップを「Ｓ」と略記する。
【０１２５】
図２９は、階層定義処理の流れの一例を示す。
【０１２６】
Ｓ２１１では、データ階層管理プログラム６９が、管理者からの指示に応答して、階層定義画面３０３１（図１８参照）を表示する。階層定義画面３０３１を介して、完了が指示された場合（具体的には、完了ボタンが押下された場合）、階層定義画面３０３１に登録された種々の情報が入力され、Ｓ２１２でＹＥＳとなり、ステップ２１３にすすむ。
【０１２７】
Ｓ２１３では、データ階層管理プログラム６９が、入力された情報に、階層名称があるかどうかを判断する。階層名称があれば、Ｓ２１４にすすみ、なければ、Ｓ２１５にすすむ。
【０１２８】
Ｓ２１４では、データ階層管理プログラム６９が、入力された階層名称と、指定されたＶＯＬ属性値及びパス制限等を、階層定義テーブル３００５に登録する。
【０１２９】
Ｓ２１５では、データ階層管理プログラム６９が、入力された情報に、移動元の情報があるかどうか（つまり、移動元の指定があるかどうか）を判別する。移動元の情報があれば、Ｓ２１６にすすみ、なければ、終了となる。
【０１３０】
Ｓ２１６では、データ階層管理プログラム６９が、移動元の情報から、移動元ＬＤを特定する。移動元の情報が、ボリュームグループであれば、ボリュームグループ管理テーブル３００７を参照することにより、該ボリュームグループに属するボリュームを特定する。特定されたボリューム、或いは、上記移動元の情報が、ＬＵであれば、論理ユニット管理テーブル３００３を参照することにより、該ＬＵに対応するＬＤを特定する。
【０１３１】
Ｓ２１７では、データ階層管理プログラム６９が、論理デバイス管理テーブル３００１を参照し、移動元ＬＤに対応する一又は複数のＶＯＬ属性値（例えば容量）を取得する。
【０１３２】
Ｓ２１８では、データ階層管理プログラム６９が、論理デバイス管理テーブル３００１を参照し、Ｓ２１７で取得したＶＯＬ属性値に一致するＬＤであって、未割当てのＬＤがあるかどうかを判別する。なければ、Ｓ２１９にすすみ、あれば、Ｓ２２０にすすむ。
【０１３３】
Ｓ２１９では、データ階層管理プログラム６９は、移動先が無いことを表した画面を表示する。
【０１３４】
Ｓ２２０では、データ階層管理プログラム６９は、Ｓ２１７で取得したＶＯＬ属性値に一致するＬＤであって未割当てのＬＤを選択し、選択したＬＤについて、割当状況（論理デバイス管理テーブル３００１における割当状況）を、割当て済みを意味する"済"に設定する。
【０１３５】
Ｓ２２１では、データ階層管理プログラム６９が、階層定義画面３０３１を介して入力された移動時期を表す情報が"直ぐに実行"かどうかを判別する。そうであれば、Ｓ２２２にすすみ、そうでなければ、終了となる。
【０１３６】
Ｓ２２２では、データ階層管理プログラム６９が、データ移動コマンドをストレージサブシステム１に送信する。該データ移動コマンドには、移動元ＬＤのＬＤ ＩＤと、移動先ＬＤのＬＤ ＩＤとが含まれる。そのデータ移動コマンドの応答として、移動完了を、ストレージサブシステム１から受信した場合に（Ｓ２２３でＹＥＳ）、Ｓ２２４に進む。
【０１３７】
Ｓ２２４では、データ階層管理プログラム６９が、所定種類のテーブルを更新する。具体的には、例えば、論理ユニット管理テーブル３００３において、移動元ＬＤにマッピングされていたＬＵのＬＵ ＩＤに対応するＬＤ ＩＤを、移動元ＬＤのＬＤ ＩＤから、移動先ＬＤのＬＤ ＩＤに変更する。また、移動先ＬＤが属する階層が、移動元ＬＤが属する階層と違っていれば、ボリュームテーブル３０１３において、該移動先ＬＤがマッピングされているＬＵに対応した階層種別を、移動先ＬＤが属する階層の階層名称に変更する。
【０１３８】
Ｓ２２５では、データ階層管理プログラム６９が、図２０のパス切替処理を実行するための第一の呼び出しと、図２４のＶＯＬ評価値更新処理を実行するための第二の呼び出しとを行う。第二の呼び出しでは、例えば、移動先ＬＤにマッピングされているＬＵ（以下、便宜上、「対象ＬＵ」と言う）のＬＵ ＩＤが入力される。
【０１３９】
図３０は、移動処理の流れの一例を示す。
【０１４０】
Ｓ２３１では、ストレージサブシステム１は、管理サーバ１６（データ階層管理プログラム６９）からのデータ移動コマンドに応答して、該コマンドで指定された移動元ＬＤ内の全データを、該コマンドで指定された移動先ＬＤにコピーする。それが完了したならば（Ｓ２３２でＹＥＳ）、Ｓ２３３にすすむ。
【０１４１】
Ｓ２３３では、ストレージサブシステム１は、ＬＵにマッピングするＬＤを、移動先のＬＤに変更する。具体的には、例えば、図２において、ＬＤ１１内のデータがＬＤ３１にコピーされた場合、ボリューム対応テーブル３０２９において、ＬＵ ＩＤ"ＬＵ１"に対応したＬＤ ＩＤ"ＬＤ１１"を"ＬＤ３１"に変更し、ストレージシステムＩＤを"０１"から"０３"に変更する。
【０１４２】
Ｓ２３４では、ストレージサブシステム１は、移動元ＬＤ内のデータを消去する。
【０１４３】
Ｓ２３５では、ストレージサブシステム１は、管理サーバ１６に、移動完了を通知する。
【０１４４】
図２０は、パス切替処理の流れの一例を示す。
【０１４５】
上記第一の呼び出しで、統合交替パス管理プログラム６７が起動する。統合交替パス管理プログラム６７は、図３０での移動先ＬＤにマッピングされているＬＵ（対象ＬＵ）について、Ｓ１０２乃至Ｓ１０８を実行する。
【０１４６】
Ｓ１０２では、統合交替パス管理プログラム６７は、パス数自動変更ＯＦＦテーブル３０２１を参照し、対象ＬＵのＩＤを検索する。見つかった場合には（Ｓ１０３でＹＥＳ）、このパス切替処理を終了し、見つからなかった場合には（Ｓ１０３でＮＯ）、Ｓ１０４にすすむ。
【０１４７】
Ｓ１０４では、統合交替パス管理プログラム６７は、図２１のパス変更本数計算処理を実行するための第三の呼び出しを行う。
【０１４８】
Ｓ１０５では、統合交替パス管理プログラム６７は、パスの変更モードを判定する。変更モードとは、パス変更のタイミングを表し、具体的には、移動時と、ＣＨＡ負荷変更時とがある。変更モードは、例えば、統合交替パス管理プログラム６７に管理者によって設定されるが、ＶＶＯＬ毎に設定されても良い。移動時であれば、Ｓ１０６にすすみ、ＣＨＡ負荷変更時であれば、Ｓ１０８にすすむ。
【０１４９】
Ｓ１０６では、統合交替パス管理プログラム６７は、図２２のパス本数変更処理を実行するための第四の呼び出しを行う。
【０１５０】
Ｓ１０７では、パス本数変更処理の結果を基に、統合交替パス管理プログラム６７が、ボリュームテーブル３０１３（図９参照）、ボリューム−パステーブル（図７参照）及びボリューム評価値テーブル３０１５（図１０）を更新する。
【０１５１】
Ｓ１０８では、統合交替パス管理プログラム６７は、図２６のパス状態変更候補登録処理を実行するための第五の呼び出しを行う。この第五の呼び出しでは、対象ＬＵのＬＵ ＩＤが入力される。
【０１５２】
図２１は、パス変更本数計算処理の流れの一例を示す。
【０１５３】
Ｓ１１１では、統合交替パス管理プログラム６７は、対象ＬＵのＩＤに対応したＶＯＬ評価値（ＣＵＲ＿ＶＡＬ）を、ボリューム評価値テーブル３０１５から取得する。
【０１５４】
Ｓ１１２では、統合交替パス管理プログラム６７は、図２４のＶＯＬ評価値更新処理を実行するための第六の呼び出しを行う。この第六の呼び出しにより実行されたＶＯＬ評価値更新処理の結果として得られたＶＯＬ評価値を、新規値（ＮＥＷ＿ＶＡＬ）とする。
【０１５５】
Ｓ１１３では、統合交替パス管理プログラム６７は、対象ＬＵのＩＤに対応した計算パス本数（ＣＵＲ＿ＮＵＭ）を、ボリュームテーブル３０１３から取得する。Onlineパス本数がＣＵＲ＿ＮＵＭとして取得されても良い。
【０１５６】
Ｓ１１４では、統合交替パス管理プログラム６７は、上記（２）式、すなわち、変更後のパス本数（ＮＥＷ＿ＮＵＭ）＝（現在のパス本数）（ＣＵＲ＿ＮＵＭ）×（変化後のＶＯＬ評価値（ＮＥＷ＿ＶＡＬ）÷変化前のＶＯＬ評価値（ＣＵＲ＿ＶＡＬ））を計算する。算出された変更後のパス本数（ＮＥＷ＿ＮＵＭ）が、図２０のＳ１０７で、Onlineパス本数として、ボリュームテーブル３０１３に記録される。また、ＮＥＷ＿ＮＵＭの四捨五入前の値が、図２０のＳ１０７で、計算パス本数として、ボリュームテーブル３０１３に記録される。
【０１５７】
Ｓ１１５では、統合交替パス管理プログラム６７は、対象ＬＵのＬＵ ＩＤを、変更パス本数テーブル３０１７（図１１参照）に追加し、且つ、該ＬＵ ＩＤに対応した変更パス本数として、ＮＥＷ＿ＮＵＭからＣＵＲ＿ＮＵＭ（この「ＣＵＲ＿ＮＵＭ」はOnlineパス本数）を減算した値を、変更パス本数テーブル３０１７に登録する。
【０１５８】
図２２は、パス本数変更処理の流れの一例を示す。
【０１５９】
これは、上記第四の呼び出しにより、実行される。第四の呼び出しでは、対象ＬＵのＬＵ ＩＤ（つまり、パス変更対象のＬＵのＩＤ）が入力される。統合交替パス管理プログラム６７は、変更パス本数テーブル３０１７を参照し、入力されたＬＵ ＩＤについて変更パス本数があれば、Ｓ１２１以降を実行する。
【０１６０】
Ｓ１２１では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数を参照する。その変更パス本数の値が、正の値であれば（Ｓ１２２でＹＥＳ）、パスを増加するということを意味するので、Ｓ１２３〜Ｓ１２６の処理を行う。一方、その変更パス本数の値が、負の値であれば（Ｓ１２２でＮＯ）、パスを減少するということを意味するので、Ｓ１３３〜Ｓ１３６の処理を行う。
【０１６１】
Ｓ１２３では、統合交替パス管理プログラム６７は、図２３のＣＨＡ選択処理を実行するための第七の呼び出しを行う。この第七の呼び出しでは、対象ＬＵのＬＵ ＩＤと、モード値：最小（ＣＨＡ評価値が最も小さいＣＨＡを選択することを意味する値）とが入力される。このＣＨＡ選択処理では、対象ＬＵへのパスが経由する複数のＣＨＡのＣＨＡ ＩＤのうちＣＨＡ評価値が最も小さいＣＨＡ ＩＤが選択され、該選択されたＣＨＡ ＩＤが、対象ＣＨＡのＩＤとして、変更パス本数テーブル３０１７に登録される。
【０１６２】
Ｓ１２４では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する一以上のOfflineパスをボリューム−パステーブル３００９から特定し、特定された一以上のOfflineパスから一つのOfflineパスを選択し、選択したOfflineパスをOnlineパスに変更する。
【０１６３】
Ｓ１２５では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数の値を１減算する。
【０１６４】
Ｓ１２６では、統合交替パス管理プログラム６７は、図２８のＣＨＡ評価値テーブル更新処理を実行するための第八の呼び出しを行う。
【０１６５】
対象ＬＵに繋がるOfflineパスが未だ存在し、且つ、Ｓ１２５での更新後の変更パス本数の値が０ではない場合に、Ｓ１２３に戻り、そうではない場合に、Ｓ１３７にすすむ。
【０１６６】
Ｓ１３３では、統合交替パス管理プログラム６７は、図２３のＣＨＡ選択処理を実行するための第七の呼び出しを行う。この第七の呼び出しでは、対象ＬＵのＬＵ ＩＤと、モード値：最大（ＣＨＡ評価値が最も大きいＣＨＡを選択することを意味する値）とが入力される。このＣＨＡ選択処理では、対象ＬＵへのパスが経由する複数のＣＨＡのＣＨＡ ＩＤのうちＣＨＡ評価値が最も大きいＣＨＡ ＩＤが選択され、該選択されたＣＨＡ ＩＤが、対象ＣＨＡのＩＤとして、変更パス本数テーブル３０１７に登録される。
【０１６７】
Ｓ１３４では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する一以上のOnlineパスをボリューム−パステーブル３００９から特定し、特定された一以上のOnlineパスから一つのOnlineパスを選択し、選択したOnlineパスをOfflineパスに変更する。
【０１６８】
Ｓ１３５では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数の値を１加算する。
【０１６９】
Ｓ１３６では、統合交替パス管理プログラム６７は、図２８のＣＨＡ評価値テーブル更新処理を実行するための第八の呼び出しを行う。
【０１７０】
対象ＬＵに繋がるOnlineパスが未だ最低パス本数（パス本数制限テーブル３０２５に記録されている最低パス本数）を超えており、且つ、Ｓ１３５での更新後の変更パス本数の値が０ではない場合に、Ｓ１３３に戻り、そうではない場合に、Ｓ１３７にすすむ。
【０１７１】
Ｓ１３７では、統合交替パス管理プログラム６７は、対象ＬＵに対応する変更パス本数を変更パス本数テーブル３０１７から削除する。
【０１７２】
別の対象ＬＵに対応する変更パス本数がある場合には、別の対象ＬＵについて、Ｓ１２１以降が行われ、そうではない場合には、終了となる。
【０１７３】
図２３は、ＣＨＡ選択処理の流れの一例を示す。
【０１７４】
これは、上記第七の呼び出しを契機に行われる。
【０１７５】
Ｓ１４１では、統合交替パス管理プログラム６７は、ボリューム−パステーブル３００９を参照し、対象ＬＵに対応した複数のＣＨＡ ＩＤを取得する。
【０１７６】
Ｓ１４２では、統合交替パス管理プログラム６７は、Ｓ１４１で取得された複数のＣＨＡ ＩＤにそれぞれ対応する複数のＣＨＡ評価値をＣＨＡ評価値テーブル３０２３から取得する。これにより、どのＣＨＡがどのＣＨＡ評価値なのかがわかる。
【０１７７】
Ｓ１４３では、統合交替パス管理プログラム６７は、上記第七の呼び出しにより入力されたモード値が最小であるか否かを判別する。最小の場合、Ｓ１４４にすすみ、最大の場合、Ｓ１４５にすすむ。
【０１７８】
Ｓ１４４では、統合交替パス管理プログラム６７は、Ｓ１４１で取得された複数のＣＨＡ ＩＤのうち、ＣＨＡ評価値が最も小さいＣＨＡ ＩＤを選択する。
【０１７９】
Ｓ１４５では、統合交替パス管理プログラム６７は、Ｓ１４１で取得された複数のＣＨＡ ＩＤのうち、ＣＨＡ評価値が最も大きいＣＨＡ ＩＤを選択する。
【０１８０】
Ｓ１４６では、統合交替パス管理プログラム６７は、Ｓ１４４或いはＳ１４５で選択されたＣＨＡ ＩＤを、上記第七の呼び出しの呼び出し元に返す。
【０１８１】
図２４は、ＶＯＬ評価値更新処理の流れの一例を示す。
【０１８２】
これは、上記第二の呼び出しを契機に実行される。この第二の呼び出しでは、対象ＬＵのＬＵ ＩＤが入力される。ＶＯＬ評価値（ＴＯＴＡＬ）は、初期値として０が設定され、該ＬＵ ＩＤに対応した階層名称が、ボリュームテーブル３０１３から取得される（Ｓ１５１）。
【０１８３】
統合交替パス管理プログラム６７は、各種属性テーブル（図８Ａ乃至図８Ｃ参照）について、Ｓ１５２及びＳ１５３を実行する。
【０１８４】
Ｓ１５２では、統合交替パス管理プログラム６７は、Ｓ１５１で取得した階層名称に対応するＶＯＬ属性値であって、参照する属性テーブルのＶＯＬ属性種類（例えば、図８Ａの属性テーブル３０１１Ａであれば、ＲＡＩＤレベル）に対応したＶＯＬ属性値（例えば"ＲＡＩＤ０＋１"）を、階層定義テーブル３００５から取得する。
【０１８５】
Ｓ１５３では、統合交替パス管理プログラム６７は、取得したＶＯＬ属性値に対応した属性評価値を、属性テーブルから取得し、取得した属性評価値をＴＯＴＡＬに加算する。
【０１８６】
Ｓ１５４では、統合交替パス管理プログラム６７は、ＴＯＴＡＬをＶＯＬ評価値として、上記第二の呼び出しの呼び出し元に返す。
【０１８７】
図２７は、ＣＨＡ性能監視処理の流れの一例を示す。
【０１８８】
この処理は、性能監視プログラム７１によって定期的に（又は不定期的に）実行される。
【０１８９】
Ｓ１９１では、性能監視プログラム７１は、ボリュームテーブル３０１３に記録されている全ての種類のＣＨＡ ＩＤを取得し、ＣＨＡ ＩＤの一覧を作成する。ＣＨＡ ＩＤ一覧における各ＣＨＡ ＩＤについて、Ｓ１９２〜Ｓ１９４が行われる。
【０１９０】
Ｓ１９２では、性能監視プログラム７１は、ＣＨＡ ＩＤを指定した負荷送信要求をストレージサブシステム１に送信し、それにより、ストレージサブシステム１から、該ＣＨＡ ＩＤから識別されるＣＨＡの負荷の値を取得する。ストレージサブシステム１は、各ＣＨＡ毎に、負荷を定期的に取得し、取得された負荷を表す値を、共有メモリ２５に記録しておく。ストレージサブシステム１は、負荷送信要求を受信した場合には、該負荷送信要求で指定されるＣＨＡ ＩＤに対応した負荷値を、性能監視プログラム７１に送信する。
【０１９１】
Ｓ１９３では、性能監視プログラム７１は、取得された負荷の値が、所定の閾値以上か否かを判別する。該閾値は、例えば性能監視プログラム７１に予め設定されている。取得された負荷の値が、所定の閾値以上であれば、Ｓ１９４にすすみ、そうでなければ、Ｓ１９２に戻るか或いは終了となる。
【０１９２】
Ｓ１９４では、性能監視プログラム７１は、速度低下時パス切替処理を実行するための第九の呼び出しを行う。この第九の呼び出しでは、取得された負荷値が所定の閾値以上となったＣＨＡのＣＨＡ ＩＤが入力される。
【０１９３】
以上が、ＣＨＡ性能監視処理の流れの一例である。なお、ＣＨＡの負荷値としては、例えば、ＣＨＡに搭載されているプロセッサの使用率、ＣＨＡが受信する単位時間当たりのアクセス要求の数など、種々の値を用いることができる。また、ＣＨＡの負荷値に代えて又は加えて、ホストからＬＵまでのパスが経由する物理的な要素（例えば、ホスト、スイッチ７５など）の負荷値が監視され、性能監視プログラム７１は、その要素の負荷値を取得し、該負荷値と閾値との比較を行っても良い。
【０１９４】
図２５は、速度低下時パス切替処理の流れの一例を示す。
【０１９５】
この処理は、上記第九の呼び出しを契機に実行される。その第九の呼び出しでは、統合交替パス管理プログラム６７が起動し、ＣＨＡ ＩＤが入力される。パス状態変更候補テーブル３０１９に記録されている全てのＣＨＡ ＩＤについて、Ｓ１６１〜Ｓ１６５が行われる。
【０１９６】
Ｓ１６１では、統合交替パス管理プログラム６７が、パス状態変更候補テーブル３０１９からＣＨＡ ＩＤを取得する。
【０１９７】
Ｓ１６２では、統合交替パス管理プログラム６７が、取得したＣＨＡ ＩＤと、上記第九の呼び出しで入力されたＣＨＡ ＩＤとを比較する。それらが互いに一致すれば、Ｓ１６３にすすみ、不一致であれば、Ｓ１６１に戻るか或いは終了となる。
【０１９８】
Ｓ１６３では、統合交替パス管理プログラム６７が、該ＣＨＡ ＩＤを経由するパス状態変更候補パス（パス状態変更候補テーブル３０１９にあるパスＩＤに対応したパス）のパス状態を変更してもOnlineパス数は最低パス本数（図１５参照）以上であるか否かを判別する。この判別は、該ＣＨＡ ＩＤとボリューム−パステーブル３００９とを基に行うことができる。Onlineパス数が最低パス本数以上であると判別された場合には、Ｓ１６４にすすみ、そうではない場合には、Ｓ１６１に戻るか或いは終了となる。
【０１９９】
Ｓ１６４では、統合交替パス管理プログラム６７が、該ＣＨＡ ＩＤを経由するパス状態変更候補パスのパス状態を、パス状態変更候補パスに対応する操作種別が表すパス状態に変更する。
【０２００】
Ｓ１６５では、統合交替パス管理プログラム６７が、ボリュームテーブル３０１３及びボリューム−パステーブル３００９を更新する。具体的には、ボリュームテーブル３０１３において、パス状態変更候補パスに対応するＬＵ ＩＤに対応したOnlineパス本数の値を更新する。また、ボリューム−パステーブル３００９において、パス状態変更候補パスに対応するパスＩＤに対応したパス状態を更新する。
【０２０１】
図２６は、パス状態変更候補登録処理の流れの一例を示す。
【０２０２】
この処理は、ＬＤの移動後に即座にパス本数を変更するのでなく、後で変更するために、パス状態変更候補テーブル３０１９に登録しておく処理である。この処理は、上記第五の呼び出しを契機に実行される。その第五の呼び出しでは、対象ＬＵのＬＵ ＩＤが入力される。統合交替パス管理プログラム６７は、変更パス本数テーブル３０１７を参照し、入力されたＬＵ ＩＤについて変更パス本数があれば、Ｓ１７１以降を実行する。
【０２０３】
Ｓ１７１では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数を参照する。その変更パス本数の値が、正の値であれば（Ｓ１７２でＹＥＳ）、パスを増加するということを意味するので、Ｓ１７３〜Ｓ１７７の処理を行う。一方、その変更パス本数の値が、負の値であれば（Ｓ１７２でＮＯ）、パスを減少するということを意味するので、Ｓ１８３〜Ｓ１８７の処理を行う。
【０２０４】
Ｓ１７３では、統合交替パス管理プログラム６７は、図２３のＣＨＡ選択処理を実行するための第七の呼び出しを行う。この第七の呼び出しでは、対象ＬＵのＬＵ ＩＤと、モード値：最小（ＣＨＡ評価値が最も小さいＣＨＡを選択することを意味する値）とが入力される。このＣＨＡ選択処理では、対象ＬＵへのパスが経由する複数のＣＨＡのＣＨＡ ＩＤのうちＣＨＡ評価値が最も小さいＣＨＡ ＩＤが選択され、該選択されたＣＨＡ ＩＤが、対象ＣＨＡのＩＤとして、変更パス本数テーブル３０１７に登録される。
【０２０５】
Ｓ１７４では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する全てのパスがパス状態変更候補テーブルに登録済みか以下か否かを判別する。ここでは、例えば、対象ＣＨＡのＣＨＡ ＩＤに対応した一以上のパスを、ボリューム−パステーブル３００９から特定し、特定された一以上のパスの全てがOnline状態か否かを判別する。登録済みでなければ、Ｓ１７５にすすみ、登録済みであれば、Ｓ１８８にすすむ。
【０２０６】
Ｓ１７５では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する一以上のOfflineパスをボリューム−パステーブル３００９から特定し、特定された一以上のOfflineパスから一つのOfflineパスを選択し、選択したOfflineパスに関する情報を、パス状態変更候補テーブル３０１９に登録する。その際、操作種別を、Onlineとする。
【０２０７】
Ｓ１７６では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数の値を１減算する。
【０２０８】
Ｓ１７７では、統合交替パス管理プログラム６７は、図２８のＣＨＡ評価値テーブル更新処理を実行するための第八の呼び出しを行う。
【０２０９】
対象ＬＵに繋がるOfflineパスが未だ存在し、且つ、Ｓ１７６での更新後の変更パス本数の値が０ではない場合に、Ｓ１７３に戻り、そうではない場合に、Ｓ１８８にすすむ。
【０２１０】
Ｓ１８３では、統合交替パス管理プログラム６７は、図２３のＣＨＡ選択処理を実行するための第七の呼び出しを行う。この第七の呼び出しでは、対象ＬＵのＬＵ ＩＤと、モード値：最大（ＣＨＡ評価値が最も大きいＣＨＡを選択することを意味する値）とが入力される。このＣＨＡ選択処理では、対象ＬＵへのパスが経由する複数のＣＨＡのＣＨＡ ＩＤのうちＣＨＡ評価値が最も大きいＣＨＡ ＩＤが選択され、該選択されたＣＨＡ ＩＤが、対象ＣＨＡのＩＤとして、変更パス本数テーブル３０１７に登録される。
【０２１１】
Ｓ１８４では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する全てのパスがパス状態変更候補テーブルに登録済みか以下か否かを判別する。ここでは、例えば、対象ＣＨＡのＣＨＡ ＩＤに対応した一以上のパスを、ボリューム−パステーブル３００９から特定し、特定された一以上のパスの全てがOffline状態か否かを判別する。登録済みでなければ、Ｓ１８５にすすみ、登録済みであれば、Ｓ１８８にすすむ。
【０２１２】
Ｓ１８５では、統合交替パス管理プログラム６７は、対象ＣＨＡを経由する一以上のOnlineパスをボリューム−パステーブル３００９から特定し、特定された一以上のOnlineパスから一つのOnlineパスを選択し、選択したOnlineパスに関する情報を、パス状態変更候補テーブル３０１９に登録する。その際、操作種別を、Offlineとする。
【０２１３】
Ｓ１８６では、統合交替パス管理プログラム６７は、対象ＬＵに対応した変更パス本数の値を１減算する。
【０２１４】
Ｓ１８７では、統合交替パス管理プログラム６７は、図２８のＣＨＡ評価値テーブル更新処理を実行するための第八の呼び出しを行う。
【０２１５】
対象ＬＵに繋がるOnlineパスが未だ最低パス本数（パス本数制限テーブル３０２５に記録されている最低パス本数）を超えており、且つ、Ｓ１８６での更新後の変更パス本数の値が０ではない場合に、Ｓ１８３に戻り、そうではない場合に、Ｓ１８８にすすむ。
【０２１６】
Ｓ１８８では、統合交替パス管理プログラム６７は、対象ＬＵに対応する変更パス本数を変更パス本数テーブル３０１７から削除する。
【０２１７】
別の対象ＬＵに対応する変更パス本数がある場合には、別の対象ＬＵについて、Ｓ１７１以降が行われ、そうではない場合には、終了となる。
【０２１８】
図２８は、ＣＨＡ評価値テーブル更新処理の流れの一例を示す。
【０２１９】
この処理は、上記第八の呼び出しを契機に実行される。
【０２２０】
Ｓ２０１では、統合交替パス管理プログラム６７は、ＣＨＡ評価値テーブル３０２３に記録されている全てのＣＨＡ評価値を０にクリアする。そして、ボリューム−パステーブル３００９に記録されている各パスについて、Ｓ２０２及びＳ２０３が行われる。
【０２２１】
Ｓ２０２では、統合交替パス管理プログラム６７は、パスに対応したＬＵ ＩＤをキーに、ボリューム評価値テーブル３０１５から、ＶＯＬ評価値を取得する。
【０２２２】
Ｓ２０３では、統合交替パス管理プログラム６７は、そのパスに対応したＣＨＡ ＩＤに対応するＣＨＡ評価値に、上記取得したＶＯＬ評価値を加算する。
【０２２３】
以上が、本実施形態についての説明である。以下、上記の実施形態の説明を要約或いは補充すると、例えば以下の通りとなる。以下、（ａ）マルチパス構成の説明、（ｂ）階層定義の説明といった流れで説明する。
【０２２４】
（ａ）マルチパス構成の説明。
【０２２５】
管理サーバ１６は、次の情報（ｉ）乃至（iii）を有する。
（ｉ）各ホストのHBAの情報。例えば、ホスト１には、HBA１、HBA２を有しているとの情報。
（ii）ストレージサブシステム１のCHAの情報。例えば、ストレージサブシステム１がCHA１〜CHA６を有しているとの情報。
（iii）図３に示す論理デバイス管理テーブル３００１。
【０２２６】
これらの情報を利用して、管理サーバ１６は、次のようにマルチパス（複数のパス）を構成することができる。以下、その手順の一例の概要を説明する。
【０２２７】
（Ｔ１）論理ユニットの定義。管理者は、各ホストの業務ＡＰ１１が必要な容量のＬＵを作成する。管理者により、図４に示すように、ホストＩＤ及びＬＵ ＩＤを定義し、次に、図３に示す論理デバイス管理テーブル３００１を参照して、マッピングするＬＤのＩＤを、図４の論理ユニット管理テーブル３００３に登録する。この場合、一つのＬＵに対して、一つのＬＤが登録されても良いし、ＬＤの容量がＬＵの必要容量未満であれば、該ＬＵに対して、複数のＬＤが登録されても良い。
【０２２８】
（Ｔ２）図７のボリューム−パステーブルの生成。ホスト毎に、HBA ＩＤ、CHA ＩＤ、LU ＩＤが登録される。例えば、ホスト１に対してLU１を生成した場合、ホスト１が有する全てのHBA（HBA１、HBA２）と、ストレージサブシステム１が有する全てのCHA（CHA１〜CHA７）と、LU１との組合せ（論理的なパス）が登録される。単なる組合せなので、自動的に設定することができる。以下、その例を示す。
HBA１−CHA１−LU１
HBA１−CHA２−LU１
…
HBA１−CHA７−LU１
HBA２−CHA１−LU１
HBA２−CHA２−LU１
…
HBA２−CHA７−LU１
【０２２９】
なお、セキュリティのためゾーニングがされている場合、例えば、ホスト１はCHA１〜CHA３のみアクセス可能、ホスト２はCHA４〜CHA７のみアクセス可能となっている場合には、この範囲で組合せが登録される。
【０２３０】
（Ｔ３）管理者は、この組合せから、必要なパス（論理的なパス）についてパス状態をOnlineとする。
【０２３１】
（Ｔ４）管理サーバ１６から各ホスト１，２へ、パスの情報（HBA、CHA、LUの組合せ、パス状態）を送る。
【０２３２】
（Ｔ５）各ホスト１，２では、送られてきたパスの情報に基づいて、図１６に示すパス管理テーブル５７を生成する。
【０２３３】
（Ｔ６）各ホスト１、２のデバイスリンクマネージャ５５は、LU毎にHLUを生成する。
【０２３４】
（Ｔ７）業務ＡＰ１１から、HLUに対してアクセス要求を受けるとデバイスリンクマネージャ５５は、該ＨＬＵに対応するＬＵにつながる複数のOnlineのパスの中から一つのパスを選択し、このパスを利用してストレージサブシステム１にアクセス要求を送る。複数のアクセス要求を受けた場合、１つのアクセス要求毎にパスを選択したり、予め決められたアクセス要求の単位毎にパスを選択して、ストレージサブシステム１にアクセス要求を送ってよい。
【０２３５】
以上のようにして、各ホストにパスが設定され、このパスによって、ストレージサブシステム１に対してアクセス要求が行われる。
【０２３６】
なお、上記の例では、ＨＢＡ、ＣＨＡ、ＬＵの組合せでパスが定義されているが、ストレージサブシステム側は、ポートの識別子でも良い。すなわち、ＨＢＡ−ＣＨＡ−ＬＵの組合せに代えて、ＨＢＡ−ストレージサブシステム１のポート−ＬＵの組合せでパスが定義されてもよい。
【０２３７】
また、上記の例では、ホストが利用するLUについて全てのパスが設定される場合を示したが、管理者が必要なパス（例えば、ホスト１がLU１を利用する場合、HBA１、HBA２、CHA１、CHA２の組合せによるパス）を設定するようにしても良い。この場合、図２２のＳ１２３及びＳ１２４を次のようにしてよい。つまり、対象CHAを通るパスが存在するかどうかを判断し、パスが存在する場合には、Onlineに変更し、パスが存在しない場合には、対象CHAを通るパスを、図７のボリューム−パステーブルに新たに登録し、パス状態をOnlineにしてよい。
【０２３８】
（ｂ）階層定義の説明
【０２３９】
例えば、データの価値（重要性）は、時間とともに変化することがある。例えば、医療機関におけるデータ等は、患者が通院している間、参照される可能性が高く、一旦、通院が終了すると、参照頻度が下がる。しかしながら、このデータは、再び患者が通院する場合もあるので、保存しておく必要があり、再び通院が始まると、参照する頻度が上がる可能性がある。
【０２４０】
一方、ストレージサブシステムには、色々な種類があり、例えば、応答速度が速いストレージサブシステムは、高価であり、あまり台数を揃えられない。一方、応答速度が遅いストレージサブシステムは、価格が低く、台数をそろえることができるので、容量増加が見込める。
【０２４１】
このように、複数種類のストレージサブシステムを組合せることで、データの価値に応じた管理をすることが可能になる。
【０２４２】
しかしながら、一つのストレージサブシステムで数千のＬＤを管理することは、管理者の負担が大きい。そこで、高性能なＬＤのグループ、中性能なＬＤのグループといったように、ＬＤをグループで管理することで、管理者の負担を減らすことが可能となる。
【０２４３】
階層制御は、これを実現するもので、所定の条件を満たすＬＤをグループとして管理するものである。
【０２４４】
以下、階層定義及び階層定義に基づいたデータの移動（マイグレーション）について説明する。
【０２４５】
図１８は、管理者が階層を定義したり、データの移動を指定するための画面である。
【０２４６】
「移動元ＬＵ」は、移動元のＬＵを指定するためのインタフェースである。移動元ＬＵを指定すると、図７のボリューム−パステーブルに登録されているＬＵの識別子の一覧がプルダウンで表示される。パスが定義されているＬＵは、業務ＡＰ１１で利用されているために、このように移動元のＬＵを指定できるようにしている。管理者は、表示されたＬＵ ＩＤを選択することで、移動元ＬＵを指定することができる。
【０２４７】
「移動元ＬＤ」は、移動元のＬＤを指定するためのインタフェースである。図７のボリューム−パステーブル３００９に登録されているＬＵから、図４の論理ユニット管理テーブル３００３によって、特定されたＬＤの識別子の一覧がプルダウンで表示される。管理者は、表示されたＬＤ ＩＤを選択することで、移動元ＬＤを指定することができる。
【０２４８】
「移動元グループ」は、移動元のボリュームグループを指定するためのインタフェースである。移動元グループを指定すると、管理者によって設定されたグループ名称の一覧がプルダウンで表示され、管理者は、このグループ名称を指定することで、移動元のＬＵ又はＬＤを指定することができる。例えば、業務ＡＰ１１で、複数のＬＵ、ＬＤを利用している場合、管理者が一つ一つＬＵ、ＬＤを選択することが大変である。そのため、ユーザが任意に名称を設定し、この名称に対応付けてＬＵ、ＬＤを登録することにより、名称の指定で対象となるＬＵ、ＬＤの指定が可能になる。図６は、ボリュームグループ管理テーブル３００７の一例を示したものである。
【０２４９】
「移動時期」は、移動元として選択されたＬＵ又はＬＤのデータを移動するタイミングを設定するためのインタフェースである。このタイミングとしては、複数種類あり、例えば、「直ぐに実行」（画面入力終了後に実行）、「低負荷時実行」（コントローラの負荷が低い時に実行）、「指定実行」（移動する日付を管理者が入力）のいずれかが選択できるようになっている。
【０２５０】
「階層名称」は、階層名称を入力するためのインタフェースである。新たな階層を定義する場合には、空欄に名称を入力する。既に設定された階層を利用する場合には、階層名称を指定することで、既に設定された階層の名称がプルダウンで表示される。図５は、既に設定された階層を示しており、プルダウンで高階層、中階層、低階層といった名称が表示される。
【０２５１】
「属性」は、属性を入力するためのインタフェースである、新たな階層定義の場合、RAIDレベル、ストレージサブシステム種別、ストレージ装置種別を指定すると、プルダウンで、表示される。プルダウンで表示される内容は、図３の論理デバイス管理テーブル３００１に登録されている内容である。例えば、RAIDレベルは、RAID０＋１、RAID５、RAID１となる。
【０２５２】
なお、階層名称が、既に設定された階層名称から選択された場合、図５に設定された属性が表示される。もし、属性を変更したい場合には、変更したい属性を指定することで、プルダウン表示をさせ、選択する。
【０２５３】
「パス制限」は、パス制限を入力するためのインタフェースである。新たな階層定義の場合、最低必要となるアクセスパスの本数を指定する。階層名称において、既に定義された階層が選択された場合、定義された属性を表示する。なお、パス制限は、階層に必要なパスの最低本数であり、そういった意味で、階層に依存しない前述した「最低パス本数」（図１５のパス本数制限テーブルに記録される値）とは異なる。ちなみに、パスを減らす際、最低パス本数との比較が行われるが、この場合、例えば、図２２や図２６の処理において、対象ＬＵにマッピングされているＬＤが属する階層のパス制限が、最低パス本数より大きければ、最低パス本数に代えてパス制限が比較されてよく、逆に、該パス制限が最低パス本数より小さい場合に、最低パス本数が比較されて良い。
【０２５４】
このように、図１８に示した画面で、階層の定義、階層の定義の変更、所定の階層へのデータ移動を指定できるようになっている。
【０２５５】
図５は、階層定義テーブルを示したものである。これは、図１８に示した入力画面により設定されたものである。図５の説明でも記載したように、これは、ＬＤを選択するための、条件を示したものである。
【０２５６】
図２９は、データ階層管理プログラム６９が実行する処理を示したものである。以下、理解しやすいように各ケースに分けて説明する。
【０２５７】
（ケース１）管理者が階層定義のみをするケース。
【０２５８】
データ階層管理プログラム６９を起動すると、図１８に示した画面が表示される。階層定義のみの場合、管理者は、階層名称を入力し、条件として指定したい属性を指定する。この属性は、図３に示した論理デバイス管理テーブル３００１から選択される。具体的には、管理者が「RAIDレベル」を条件とするために指定すると、図３の論理デバイス管理テーブル３００１を検索する。この結果、論理デバイス管理テーブル３００１には、RAID０＋１、RAID５、RAID１があるので、これがプルダウンで表示される。その他の属性も同じである。次に、管理者は、パス制限を入力する。管理者は、階層名称、属性、パス制限を選択又は入力した後に完了を指示する。これにより、データ階層管理プログラム６９は、階層名称の入力がされたと判断し、入力された階層名称及び指定された属性、パス制限を階層定義テーブルに登録する。なお、ここでは階層定義のみなので、移動元ＬＵ、ＬＤ、グループは指定されていないことを前提としている。従って、移動元の指定なしとして、処理を終了する。
【０２５９】
（ケース２）管理者が階層定義と、移動元を指定したケース。
【０２６０】
管理者が、階層名称、属性、パス制限を入力又は選択し、更に移動元ＬＵ、ＬＤ、グループのいずれかを指定する。
【０２６１】
管理者が、完了を指示すると、データ階層管理プログラム６９は、階層名称の入力がされたと判断し、入力された階層名称及び指定された属性、パス制限を階層定義テーブルに登録する。
【０２６２】
次に、移動元が指定されているので、移動元のＬＤを特定する。移動元ＬＤの特定は次の通りである。
【０２６３】
すなわち、移動元としてＬＵが指定された場合、管理サーバ１６では、図４の論理ユニット管理テーブル３００３からＬＤを特定する。
【０２６４】
移動元としてＬＤが指定された場合、特に処理はない。
【０２６５】
移動元としてグループが指定された場合、図６のボリュームグループ管理テーブル３００７、図４の論理ユニット管理テーブル３００３から、ＬＤを特定する。
【０２６６】
次に、論理デバイス管理テーブル３００１から属性に一致するＬＤを検索する。これは、定義された属性と一致（RAIDレベル、ストレージサブシステム種類は一致するものであり、例えば応答速度などは条件を満たしていれば良い）し、かつ移動元ＬＤ以上の容量のＬＤ（割当状況が「未」のＬＤ）を論理デバイス管理テーブル３００１から検索し、一つのＬＤを特定する。
【０２６７】
なお、一つのＬＤで容量が満足できない場合には、複数のＬＤの組合せを試みるようにしても良い。この場合は、定義された属性と一致し、移動元ＬＤと容量が近いＬＤを一つ特定し、特定されたＬＤで満足できない容量（未割当容量）を求める。次に、定義された属性と一致し、未割当容量に近いＬＤを一つ特定する。特定されたＬＤで更に未割当容量を求める。ここで、未割当容量が０以下になれば、一致する移動先ＬＤ有りと判断する。未割当容量が０より大きければ、再度、定義された属性と一致し、未割当容量に近いＬＤを一つ特定する。なお、未割当容量がある状態で、定義された属性と一致するＬＤがなければ、移動先ＬＤ無しと判断する。
【０２６８】
このようにして、一致するＬＤがあれば、移動先ＬＤ有りと判断し、論理デバイス管理テーブル３００１の当該ＬＤの割当状況に済を登録する。
【０２６９】
次に、管理サーバ１６内の図示しない時計により、移動時間になったかを判断し、移動時間になったら、移動元ＬＤ及び移動先ＬＤを指定したデータ移動コマンドをストレージサブシステム１に送信する。
【０２７０】
データ移動の完了通知を受けると、図４の論理ユニット管理テーブル３００３のＬＤ ＩＤを移動先ＬＤのＬＤ ＩＤに変更し、図９のボリュームテーブル３０１３に、ホストＩＤ、ＬＵ ＩＤ、パス本数、Onlineパス本数、階層種別を設定し、図２のパス切替処理を実行する。
【０２７１】
以上のケース２では、移動元ＬＤと同一の属性を有するＬＤが移動先ＬＤとして自動的に選択される。
【０２７２】
（ケース３）管理者が既に定義された階層を選択して、データを移動するケース。
【０２７３】
このケース３では、ケース２と異なり、移動元ＬＤと異なる属性を有するＬＤが移動先ＬＤとして選択され得る。管理者は、階層を選択する。その選択された階層に属するＶＯＬ属性値を有するＬＤが、移動先ＬＤとして選択される。以下、詳細に述べる。
【０２７４】
管理者は、移動元を指定し、次に階層名称を選択する。階層名称を選択することで、図５に示した階層定義テーブル３００５に登録された、階層名称の一覧がプルダウンで表示される。管理者が、この階層名称の中から所望の階層名称を選択することで、対応する属性が画面上に表示される。
【０２７５】
管理者が完了を指示すると、この場合は、階層名称を選択しているので、Ｓ２１３「階層名称入力有り？」でＮＯとなる。この場合、Ｓ２１７では、選択された階層名称の階層に属するＶＯＬ属性値を有するＬＤが検索され、見つかった場合に、Ｓ２１８でＹＥＳとなる。
【０２７６】
図３０は、管理サーバ１６からデータ移動コマンドを受領したストレージサブシステム１の処理を示したものである。ストレージサブシステム１は、移動元ＬＤと移動先ＬＤとを特定し、この間でデータのコピーを行う。データコピーが完了すると、コピー先のＬＤとＬＵとを対応付ける。これが完了すると移動元ＬＤのデータを消去し、管理サーバに対して、ＬＵと移動先ＬＤの情報とともにデータ移動が完了した旨を通知する。なお、ＬＵとコピー先ＬＤとの対応付けは、移動元ＬＤ（コピー元ＬＤ）と対応付けされていたＬＵを、移動先ＬＤ（コピー先ＬＤ）とを対応付けるものである。
【０２７７】
以上が、階層定義の説明である。
【０２７８】
この移動契機或いは負荷変更契機でパス本数が変更されるが、その処理については、詳細に説明済みなので、ここでは行わない。
【０２７９】
以上、上述した実施形態によれば、LUの属性が変更された場合（すなわち、ＬＵにマッピングされるＬＤの属性が変更された場合）、この属性に応じて、パスの数が変更される。これにより、例えば、ＬＵに格納されているデータの重要性が高いものから低いものになった場合は、パスの数を減少させ、逆に、該データの重要性が低いものから高いものになった場合には、パスの数を増加させることが可能となる。
【０２８０】
以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【０２８１】
例えば、ＶＯＬ評価値の算出は、ＬＤの移動時に限らず、定期的に行われても良い。
【０２８２】
また、例えば、ＶＯＬ評価値を基にパス数を決定する方法に変えて、例えば、ＬＤがどのレベルの階層に属するかに基づいてパス数が決定されても良い。例えば、ＬＵにマッピングされているＬＤが或る階層からそれよりも低い階層に変わった場合、パスの本数が減らされ、或る階層からそれよりも高い階層に変わった場合、パスの本数が増やされても良い。また、増減する本数は、どれだけのレベルの階層分変わったたかに応じて決められても良い。
【図面の簡単な説明】
【０２８３】
【図１】本発明の一実施形態に係る計算機システムの構成例を示すブロック図である。
【図２】ホストとストレージサブシステムとの間の論理的な構成の一例を示す。
【図３】論理デバイス管理テーブルの構成例を示す。
【図４】論理ユニット管理テーブルの構成例を示す。
【図５】階層定義テーブルの構成例を示す。
【図６】ボリュームグループ管理テーブルの構成例を示す。
【図７】ボリューム−パステーブルの構成例を示す。
【図８】図８Ａは、ＶＯＬ属性種類がＲＡＩＤレベルである属性テーブルの構成例を示す。図８Ｂは、ＶＯＬ属性種類がストレージサブシステム種類である属性テーブルの構成例を示す。図８Ｃは、ＶＯＬ属性種類がストレージ装置種類である属性テーブルの構成例を示す。
【図９】ボリュームテーブルの構成例を示す。
【図１０】ボリューム評価値テーブルの構成例を示す。
【図１１】変更パス本数テーブルの構成例を示す。
【図１２】パス状態変更候補テーブルの構成例を示す。
【図１３】パス自動変更ＯＦＦテーブルの構成例を示す。
【図１４】ＣＨＡ評価値テーブルの構成例を示す。
【図１５】パス本数制限テーブルの構成例を示す。
【図１６】パス管理テーブルの構成例を示す。
【図１７】ボリューム対応テーブルの構成例を示す。
【図１８】階層定義画面の構成例を示す。
【図１９】パス状態表示画面の構成例を示す。
【図２０】パス切替処理の流れの一例を示す。
【図２１】パス変更本数計算処理の流れの一例を示す。
【図２２】パス本数変更処理の流れの一例を示す。
【図２３】ＣＨＡ選択処理の流れの一例を示す。
【図２４】ＶＯＬ評価値更新処理の流れの一例を示す。
【図２５】速度低下時パス切替処理の流れの一例を示す。
【図２６】パス状態変更候補登録処理の流れの一例を示す。
【図２７】ＣＨＡ性能監視処理の流れの一例を示す。
【図２８】ＣＨＡ評価値テーブル更新処理の流れの一例を示す。
【図２９】階層定義処理の流れの一例を示す。
【図３０】移動処理の流れの一例を示す。
【図３１】本発明の課題の説明図。
【図３２】本発明の一実施形態の概要の説明図である。
【図３３】増減するパスの決定方法の一例を示す。
【符号の説明】
【０２８４】
７５…スイッチ  １０…ホスト計算機  ６１…管理サーバ  ２１…チャネルアダプタ（ＣＨＡ）  ２２…ディスクアダプタ（ＤＫＡ）  ２３…ＳＶＰ（Service Processor）  ２４…キャッシュメモリ  ２５…共有メモリ  ２０、２００１…コントローラ部  ３０…ディスクユニット  ３１、１３２…内部ＶＯＬ  ４０、６００…ストレージサブシステム
【図１】
2008083922.tif 000003
【図２】
2008083922.tif 000004
【図３】
2008083922.tif 000005
【図４】
2008083922.tif 000006
【図５】
2008083922.tif 000007
【図６】
2008083922.tif 000008
【図７】
2008083922.tif 000009
【図８】
2008083922.tif 000010
【図９】
2008083922.tif 000011
【図１０】
2008083922.tif 000012
【図１１】
2008083922.tif 000013
【図１２】
2008083922.tif 000014
【図１３】
2008083922.tif 000015
【図１４】
2008083922.tif 000016
【図１５】
2008083922.tif 000017
【図１６】
2008083922.tif 000018
【図１７】
2008083922.tif 000019
【図１８】
2008083922.tif 000020
【図１９】
2008083922.tif 000021
【図２０】
2008083922.tif 000022
【図２１】
2008083922.tif 000023
【図２２】
2008083922.tif 000024
【図２３】
2008083922.tif 000025
【図２４】
2008083922.tif 000026
【図２５】
2008083922.tif 000027
【図２６】
2008083922.tif 000028
【図２７】
2008083922.tif 000029
【図２８】
2008083922.tif 000030
【図２９】
2008083922.tif 000031
【図３０】
2008083922.tif 000032
【図３１】
2008083922.tif 000033
【図３２】
2008083922.tif 000034
【図３３】
2008083922.tif 000035