(57)【要約】【課題】  外部の記憶資源を内部の記憶資源として仮想化することにより、記憶資源を有効利用し、この記憶資源の連携関係を破壊等する誤操作を未然に防止する。【解決手段】  メインストレージ１には、外部ストレージ２が接続されており、仮想ボリューム１Ｂ１，１Ｂ２には、それぞれ実ボリューム２Ａ１，２Ａ２がマッピングされている（Ｓ１）。管理サーバ３は、各ストレージ１，２の構成情報１Ｄ，２Ｄをそれぞれ取得し、記憶部３Ｄに記憶して管理する（Ｓ２）。ユーザが管理端末４から操作内容４Ａを入力すると（Ｓ３）、管理サーバ３は、その操作内容４Ａと記憶部３Ｄの情報とに基づいて、操作内容４Ａがストレージ１，２間の連携に影響を与えるか否かを判定し（Ｓ４）、影響を与えない操作のみを実施する（Ｓ５）。【選択図】        図１
2006134021.tif 000002
【特許請求の範囲】
【請求項１】
仮想ボリュームを設定可能な第１記憶制御装置と、
この第１記憶制御装置と通信可能に接続され、実ボリュームを設定可能な第２記憶制御装置と、
前記第１記憶制御装置及び前記第２記憶制御装置の構成変更をそれぞれ管理する管理装置と、を備え、
前記管理装置は、前記仮想ボリュームと前記実ボリュームとの連携関係を維持するように、前記第１記憶制御装置または前記第２記憶制御装置について要求された構成変更操作の実施可否を制御するものであるストレージシステム。
【請求項２】
前記管理装置は、
（１）前記第１記憶制御装置に設定される前記仮想ボリュームに前記第２記憶制御装置に設定される前記実ボリュームを対応付け、前記仮想ボリュームのデータ格納先として前記実ボリュームを接続させるためのボリュームマッピング処理と、
（２）前記ボリュームマッピング処理により生成された前記仮想ボリュームと前記実ボリュームとのボリューム間接続構成に影響を与える構成変更操作を抑止するための抑止処理と、
をそれぞれ実行する請求項１に記載のストレージシステム。
【請求項３】
前記ボリュームマッピング処理では、前記第１記憶制御装置内の論理的な記憶層と物理的な記憶層との間に設けられる中間記憶層に、前記第２記憶制御装置の実ボリュームを対応付けることにより、前記仮想ボリュームと前記実ボリュームとを対応付けるものである請求項２に記載のストレージシステム。
【請求項４】
前記ボリューム間接続構成に影響を与える構成変更操作とは、前記ボリューム間接続構成を破壊する操作である請求項２に記載のストレージシステム。
【請求項５】
前記ボリューム間接続構成を破壊する操作には、前記ボリューム間接続構成の解除操作、前記仮想ボリュームに対応付けられる前記実ボリュームを前記第２記憶制御装置内の他の実ボリュームと統合させる統合操作のうち、少なくともいずれか一つが含まれる請求項４に記載のストレージシステム。
【請求項６】
前記ボリューム間接続構成に影響を与える構成変更操作とは、前記実ボリュームの記憶内容に不整合を生じさせ得る操作である請求項２に記載のストレージシステム。
【請求項７】
前記実ボリュームの記憶内容に不整合を生じさせ得る操作には、前記ボリューム間接続構成に使用されている通信ポート以外の他の通信ポートに対する前記実ボリュームの割当操作、前記実ボリュームへのコピーペアの設定操作のうち、少なくともいずれか一つが含まれる請求項６に記載のストレージシステム。
【請求項８】
前記抑止処理は、前記ボリューム間接続構成が維持されている場合にのみ、前記ボリューム間接続構成に影響を与える構成変更操作を抑止し、前記ボリューム間接続構成が解除された場合は、前記抑止を停止させる請求項２に記載のストレージシステム。
【請求項９】
前記管理装置は、前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得して構成情報記憶部に記憶させて管理する構成管理部と、要求された構成変更操作と前記構成管理部により管理される情報とに基づいて、前記要求された構成変更操作が前記ボリューム間接続構成に影響を与える操作であるか否かを判定する判定部と、この判定部による判定結果が肯定的な場合に前記要求された構成変更操作を実施する構成設定部と、を備えている請求項２に記載のストレージシステム。
【請求項１０】
前記構成管理部は、前記構成設定部によって前記構成変更操作が実施された場合に、この実施された構成変更操作の内容を前記構成情報記憶部に記憶されている情報に反映させるようになっている請求項９に記載のストレージシステム。
【請求項１１】
前記構成管理部は、ディスカバリ処理の実行が指示された場合に、前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得するものである請求項９に記載のストレージシステム。
【請求項１２】
前記構成管理部は、ディスカバリ処理の実行が指示され、かつ、明示の要求があった場合に、前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得するものである請求項９に記載のストレージシステム。
【請求項１３】
前記管理装置は、前記第１記憶制御装置及び前記第２記憶制御装置とは別体に構成され、前記第１記憶制御装置及び前記第２記憶制御装置にそれぞれ通信可能に接続されている請求項２に記載のストレージシステム。
【請求項１４】
前記管理装置は、前記第１記憶制御装置内に設けられている請求項２に記載のストレージシステム。
【請求項１５】
前記管理装置は、前記第１記憶制御装置の構成を変更する第１管理装置と、この第１管理装置と通信可能に接続され、前記第２記憶制御装置の構成を変更する第２管理装置とを含んで構成されており、
前記第１管理装置は、前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得して管理し、
前記第２管理装置は、前記第２記憶制御装置の構成変更操作を要求されると、前記第１管理装置により管理されている前記情報を問合せ、前記要求された構成変更操作が前記ボリューム間接続構成に影響を与える操作ではない場合に、前記要求された構成変更を実施するようになっている請求項２に記載のストレージシステム。
【請求項１６】
第１記憶制御装置と第２記憶制御装置とを通信可能に接続したストレージシステムの構成を管理するための方法であって、
前記第１記憶制御装置内に設けられた仮想ボリュームと前記第２記憶制御装置内に設けられた実ボリュームとを対応付けることにより、前記仮想ボリュームのデータ格納先として前記実ボリュームを接続させる接続ステップと、
前記第１記憶制御装置または第２記憶制御装置に対する構成変更操作を受け付ける受付ステップと、
前記受け付けられた構成変更操作が、前記接続ステップにより生成されたボリューム間接続構成に影響を与える操作であるか否かを判定する判定ステップと、
前記構成変更操作が前記ボリューム間接続構成に影響を与えない操作であると判定された場合は、前記構成変更操作を実施する実施ステップと、
前記構成変更操作が前記ボリューム間接続構成に影響を与える操作であると判定された場合は、前記構成変更操作を禁止するステップと、
を含むストレージシステムの構成管理方法。
【請求項１７】
前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得して構成情報記憶部に記憶させる構成情報管理ステップをさらに含み、
前記判定ステップが、前記構成情報記憶部に記憶された情報に基づいて、前記構成変更操作が前記ボリューム間接続構成に影響を与える操作であるか否かを判定するようになっている請求項１６に記載のストレージシステムの構成管理方法。
【請求項１８】
前記第１記憶制御装置に対するディスカバリを実施するディスカバリステップをさらに含み、
前記構成情報管理ステップは、前記ディスカバリステップによって前記ディスカバリが実施される際に、前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得して前記構成情報記憶部に記憶させるようになっている請求項１７に記載のストレージシステムの構成管理方法。
【請求項１９】
前記構成情報管理ステップは、前記実施ステップによって前記構成変更操作が実施された場合に、この実施された構成変更操作の内容に基づいて、前記構成情報記憶部に記憶されている情報を更新させるものである請求項１７に記載のストレージシステムの構成管理方法。
【請求項２０】
第１記憶制御装置と第２記憶制御装置とを通信可能に接続し、前記第１記憶制御装置及び前記第２記憶制御装置とそれぞれ通信可能な管理装置とを備えたストレージシステムであって、
前記第１記憶制御装置は、
前記第２記憶制御装置の有する記憶デバイスの記憶領域上に設けられる仮想中間記憶デバイスと、
この仮想中間記憶デバイスの記憶領域上に設けられる仮想ボリュームと、
前記第２記憶制御装置及び前記管理装置との間でそれぞれデータ通信を行う通信制御部と、
前記通信制御部により使用されるメモリ部と、
前記メモリ部に格納され、前記仮想中間記憶デバイスに前記記憶デバイスをマッピングさせるためのマッピングテーブルと、
を備え、
前記管理装置は、
前記第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得し、これらの取得した情報を構成情報記憶部に記憶させて管理する構成管理部と、
要求された構成変更操作と前記構成管理部により管理される情報とに基づいて、前記要求された構成変更操作が前記マッピングされた構成に影響を与える操作であるか否かを判定する判定部と、
この判定部による判定結果が肯定的な場合に前記要求された構成変更操作を実施する構成設定部と、
を備えているストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム及びストレージシステムの構成管理方法に関する。
【背景技術】
【０００２】
例えば、政府、官公庁、地方自治体、企業、教育機関等では、多種多量のデータを取り扱うために、比較的大規模な記憶システムを用いてデータを管理する。この記憶システムは、例えば、ディスクアレイ装置等から構成される。ディスクアレイ装置は、多数の記憶デバイスをアレイ状に配設して構成されるもので、例えば、RAID（Redundant Array of Independent Disks）に基づく記憶領域を提供する。記憶デバイス群が提供する物理的な記憶領域上には少なくとも１つ以上の論理ボリューム（論理ユニット）が形成され、この論理ボリュームがホストコンピュータ（より詳しくは、ホストコンピュータ上で稼働するデータベースプログラム）に提供される。ホストコンピュータ（以下、「ホスト」と略記）は、所定のコマンドを送信することにより、論理ボリュームに対してデータの書込み、読み出しを行うことができる。
【０００３】
情報化社会の進展等につれて、管理すべきデータは、日々増大する。このため、より高性能、より大容量の記憶制御装置が求められており、この市場要求に応えるべく、複数の記憶制御装置を用いてストレージシステムを構成する場合がある。このような複数の記憶制御装置を用いたストレージシステムにおいて、統合管理機構を設け、各ホストがいずれの記憶制御装置にアクセス可能かを一元的に設定し管理するようにしたものも知られている（特許文献１）。
【特許文献１】特開２００２−６３０６３号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記特許文献に記載のものでは、単にアクセスパスの設定等を一元的に管理してセキュリティ方式を統合させるだけのものに過ぎず、各記憶制御装置間の有機的な連携については考慮されていない。
【０００５】
即ち、この特許文献には、複数の記憶制御装置を連携させ、一方の記憶制御装置が他方の記憶制御装置の記憶資源を主体的に利用することにより、ストレージシステム全体の記憶資源を有効に利用する等の観点は何ら含まれていない。
【０００６】
本発明の目的の一つは、複数の記憶制御装置を連携させて記憶資源を有効に利用することができ、これら各記憶制御装置間の相互依存関係を維持しながら、ストレージシステムの構成変更を行うことができるようにしたストレージシステム及びストレージシステムの構成管理方法を提供することにある。本発明の一つの目的は、複数の記憶制御装置を連携させ、これら各記憶制御装置間の相互依存関係を効率よく把握し、相互依存関係を維持しながら安全に構成変更を行うことができるようにしたストレージシステム及びストレージシステムの構成変更方法を提供することにある。本発明の更なる目的は、後述する実施の形態の記載から明らかになるであろう。
【課題を解決するための手段】
【０００７】
上記課題を解決すべく、本発明に従うストレージシステムは、仮想ボリュームを設定可能な第１記憶制御装置と、この第１記憶制御装置と通信可能に接続され、実ボリュームを設定可能な第２記憶制御装置と、第１記憶制御装置及び第２記憶制御装置の構成変更をそれぞれ管理する管理装置と、を備え、管理装置は、仮想ボリュームと実ボリュームとの連携関係を維持するように、第１記憶制御装置または第２記憶制御装置について要求された構成変更操作の実施可否を制御する。
【０００８】
ここで、第１記憶制御装置は、例えば、ディスクアレイサブシステム等のように構成することができるが、これに限らず、例えば、インテリジェント化されたファイバチャネルスイッチ等のように構成することもできる。第１記憶制御装置は、実際にデータを格納する物理的なボリュームを有している必要はなく、仮想的なボリュームである仮想ボリュームを構成可能であればよい。
【０００９】
管理装置は、（１）第１記憶制御装置に設定される仮想ボリュームに第２記憶制御装置に設定される実ボリュームを対応付け、仮想ボリュームのデータ格納先として実ボリュームを接続させるためのボリュームマッピング処理と、（２）ボリュームマッピング処理により生成された仮想ボリュームと実ボリュームとのボリューム間接続構成に影響を与える構成変更操作を抑止するための抑止処理とをそれぞれ実行可能である。
【００１０】
ボリュームマッピング処理では、第１記憶制御装置内の論理的な記憶層と物理的な記憶層との間に設けられる中間記憶層に、第２記憶制御装置の実ボリュームを対応付けることにより、仮想ボリュームと実ボリュームとを対応付けることができる。
【００１１】
ここで、ボリューム間接続構成に影響を与える構成変更操作としては、ボリューム間接続構成を破壊する操作を挙げることができる。ボリューム間接続構成を破壊する操作としては、例えば、ボリューム間接続構成の解除操作、仮想ボリュームに対応付けられる実ボリュームを第２記憶制御装置内の他の実ボリュームと統合させる統合操作等を挙げることができる。この抑止されるボリューム間接続構成の解除操作は、第２記憶制御装置側で実施される解除操作を意味し、これにより、ユーザによる誤った解除操作や不注意に基づく解除操作等を未然に防止する。第１記憶制御装置側で、ボリューム間接続を解除する操作が行われる場合は、許容することができる。
【００１２】
ボリューム間接続構成に影響を与える構成変更操作としては、実ボリュームの記憶内容に不整合を生じさせ得る操作を挙げることもできる。実ボリュームの記憶内容に不整合を生じさせ得る操作としては、例えば、ボリューム間接続構成に使用されている通信ポート以外の他の通信ポートに対する実ボリュームの割当操作、実ボリュームへのコピーペアの設定操作等を挙げることができる。
【００１３】
抑止処理は、ボリューム間接続構成が維持されている場合にのみ、ボリューム間接続構成に影響を与える構成変更操作を抑止し、ボリューム間接続構成が解除された場合は、抑止を停止させることもできる。即ち、第１記憶制御装置側でボリューム間接続構成が解除されるまで、ボリューム間接続構成に影響を与える構成変更操作を未然に防止し、第１記憶制御装置側で解除操作がされた場合は、それ以後、第２記憶制御装置に対する構成変更操作の抑止を停止させる。
【００１４】
管理装置は、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得して構成情報記憶部に記憶させて管理する構成管理部と、要求された構成変更操作と構成管理部により管理される情報とに基づいて、要求された構成変更操作がボリューム間接続構成に影響を与える操作であるか否かを判定する判定部と、この判定部による判定結果が肯定的な場合に要求された構成変更操作を実施する構成設定部と、を備えて構成することができる。
【００１５】
ここで、構成管理部は、構成設定部によって構成変更操作が実施された場合に、この実施された構成変更操作の内容を構成情報記憶部に記憶されている情報に反映させることもできる。これにより、各記憶制御装置からそれぞれの構成に関する情報を改めて取得することなく、最新の構成情報を把握することができる。つまり、最初に取得した構成情報を基準とし、後から実施された構成変更操作の内容を、取得済の構成情報に反映させることにより、各記憶制御装置の構成状態を比較的容易に把握することができる。
【００１６】
構成管理部は、ディスカバリ処理の実行が指示された場合に、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得することもできる。ここで、ディスカバリ処理とは、ストレージシステムを構成する要素を発見して認識するための一連の手順である。ディスカバリ処理が実施される場合に、一緒に各記憶制御装置からそれぞれの構成に関する情報を取得することにより、比較的効率的に各記憶制御装置間の相互依存関係（ボリューム間接続構成）を把握することができる。
【００１７】
構成管理部は、ディスカバリ処理の実行が指示され、かつ、明示の要求があった場合に、第１記憶制御装置及び前記第２記憶制御装置からそれぞれの構成に関する情報を取得することもできる。即ち、常にディスカバリ処理の実行と連動して各記憶制御装置からそれぞれの構成に関する情報を取得する場合、ディスカバリ処理の完了に時間がかかり、使い勝手が低下することもあり得る。そこで、ユーザによる明示の要求があった場合にのみ、ディスカバリ処理と一緒に各記憶制御装置の構成に関する情報を取得する。
【００１８】
管理装置は、第１記憶制御装置及び第２記憶制御装置とは別体に構成され、第１記憶制御装置及び第２記憶制御装置にそれぞれ通信可能に接続することができる。即ち、各記憶制御装置とは別の独立したコンピュータ装置として管理装置を構成可能である。
【００１９】
管理装置は、第１記憶制御装置内に設けることもできる。即ち、第１記憶制御装置の有するハードウェア資源（CPUやメモリ等）及びソフトウェア資源（デバイスドライバやOS（Operating System）等）を利用することにより、管理装置の機能を第１記憶制御装置内に設けることもできる。この場合、管理装置は、管理ソフトウェア等のようにコンピュータプログラムとして構成可能である。
【００２０】
管理装置は、第１記憶制御装置の構成を変更する第１管理装置と、この第１管理装置と通信可能に接続され、第２記憶制御装置の構成を変更する第２管理装置とを含んで構成することもできる。そして、第１管理装置は、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得して管理し、第２管理装置は、第２記憶制御装置の構成変更操作を要求されると、第１管理装置により管理されている情報を問合せ、要求された構成変更操作がボリューム間接続構成に影響を与える操作ではない場合に、要求された構成変更を実施することができる。
【００２１】
即ち、各記憶制御装置にそれぞれ専用の管理装置を設け、第１記憶制御装置の構成変更は第１管理装置から指示させ、第２記憶制御装置の構成変更は第２管理装置から指示させることができる。そして、第２記憶制御装置の構成変更を行う場合、第２管理装置は、第１管理装置に対して各記憶制御装置の構成に関する情報を問合せる。第１管理装置は、各記憶制御装置の構成に関する情報をそれぞれ取得して管理しており、第２管理装置からの問合せに応答する。第２管理装置は、第１管理装置からの照会結果に基づいて、要求された構成変更操作がボリューム間接続構成に影響を与えない場合、その構成変更操作を実施する。
【００２２】
本発明の別の観点に従うストレージシステムの構成管理方法は、第１記憶制御装置と第２記憶制御装置とを通信可能に接続したストレージシステムの構成を管理するための方法であって、第１記憶制御装置内に設けられた仮想ボリュームと第２記憶制御装置内に設けられた実ボリュームとを対応付けることにより、仮想ボリュームのデータ格納先として実ボリュームを接続させる接続ステップと、第１記憶制御装置または第２記憶制御装置に対する構成変更操作を受け付ける受付ステップと、受け付けられた構成変更操作が、接続ステップにより生成されたボリューム間接続構成に影響を与える操作であるか否かを判定する判定ステップと、構成変更操作がボリューム間接続構成に影響を与えない操作であると判定された場合は、構成変更操作を実施する実施ステップと、構成変更操作がボリューム間接続構成に影響を与える操作であると判定された場合は、構成変更操作を禁止するステップと、を含む。
【００２３】
そして、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得して構成情報記憶部に記憶させる構成情報管理ステップをさらに含むこともでき、判定ステップが、構成情報記憶部に記憶された情報に基づいて、構成変更操作がボリューム間接続構成に影響を与える操作であるか否かを判定することもできる。
【００２４】
また、第１記憶制御装置に対するディスカバリを実施するディスカバリステップをさらに含むこともでき、構成情報管理ステップは、ディスカバリステップによってディスカバリが実施される際に、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得して構成情報記憶部に記憶させることもできる。
【００２５】
さらに、構成情報管理ステップは、実施ステップによって構成変更操作が実施された場合に、この実施された構成変更操作の内容に基づいて、構成情報記憶部に記憶されている情報を更新させることもできる。
【００２６】
本発明のさらに別の観点に従うストレージシステムは、第１記憶制御装置と第２記憶制御装置とを通信可能に接続し、前記第１記憶制御装置及び前記第２記憶制御装置とそれぞれ通信可能な管理装置とを備えたストレージシステムであって、第１記憶制御装置は、第２記憶制御装置の有する記憶デバイスの記憶領域上に設けられる仮想中間記憶デバイスと、この仮想中間記憶デバイスの記憶領域上に設けられる仮想ボリュームと、第２記憶制御装置及び管理装置との間でそれぞれデータ通信を行う通信制御部と、通信制御部により使用されるメモリ部と、メモリ部に格納され、仮想中間記憶デバイスに記憶デバイスをマッピングさせるためのマッピングテーブルと、を備える。そして、管理装置は、第１記憶制御装置及び第２記憶制御装置からそれぞれの構成に関する情報を取得し、これらの取得した情報を構成情報記憶部に記憶させて管理する構成管理部と、要求された構成変更操作と構成管理部により管理される情報とに基づいて、要求された構成変更操作がマッピングされた構成に影響を与える操作であるか否かを判定する判定部と、この判定部による判定結果が肯定的な場合に、要求された構成変更操作を実施する構成設定部と、を備えることができる。
【００２７】
本発明の手段、機能、ステップの全部または一部は、コンピュータシステムにより実行されるコンピュータプログラムとして構成可能な場合がある。本発明の構成の全部または一部がコンピュータプログラムから構成された場合、このコンピュータプログラムは、例えば、各種記憶媒体に固定して配布等することができ、あるいは、通信ネットワークを介して送信することもできる。
【発明を実施するための最良の形態】
【００２８】
図１は、本発明の実施形態の全体概要を示す構成説明図である。本実施形態では、後述のように、外部に存在する記憶デバイスを自己の中間記憶デバイス（VDEV）にマッピングすることにより、外部の記憶デバイスをあたかも自己の内部ボリュームとして取り込み、ホストに提供する。そして、本実施形態では、各記憶制御装置の構成変更を一元的に管理可能とし、不用意な操作によって、外部の記憶デバイスと内部ボリュームとの連携が崩れるのを未然に防止する。
【００２９】
本実施形態のストレージシステムは、例えば、第１記憶制御装置の一例である第１ストレージ装置１と、第２記憶制御装置の一例である第２ストレージ装置２と、管理装置としての管理サーバ３と、管理端末４と、ホスト５とを備えることができる。
【００３０】
第１ストレージ装置１は、例えば、ディスクアレイ装置として構成される。第１ストレージ装置１は、複数の通信ポート１Ｅ，１Ｆを備えている。第１ストレージ装置１は、通信ポート１Ｅから通信ネットワーク６Ａを介して、第２ストレージ装置２のポート２Ｅに接続されている。また、第１ストレージ装置１は、通信ポート１Ｆから通信ネットワーク６Ｃを介して、ホスト５に接続されている。さらに、第１ストレージ装置１は、通信ネットワーク６Ｂを介して、管理サーバ３と接続されている。
【００３１】
ここで、通信ネットワーク６Ａ，６Ｃは、例えば、SAN（Storage Area Network）等のように、ファイバチャネルプロトコルに基づいてデータ通信を行うネットワークとして構成することができる。また、各ストレージ装置１，２と管理サーバ３とを接続する通信ネットワーク６Ｂは、例えば、LAN（Local Area Network）やWAN（Wide Area Netwrok）等のように、TCP/IP（Transmission Control Protocol/Internet Protocol）に基づいて、データ通信を行うネットワークとして構成可能である。しかし、以上は例示であって、本発明はプロトコルの種類に限定されるものではない。
【００３２】
第１ストレージ装置１は、第１実ボリューム１Ａと、仮想ボリュームとしての仮想ボリューム１Ｂ１，１Ｂ２と、第１制御部１Ｃとを備えることができる。第１実ボリューム１Ａは、第１ストレージ装置１内の物理的な記憶デバイス（例えば、ディスクドライブ等）に基づいて生成されるボリュームである。各仮想ボリューム１Ｂ１，１Ｂ２は、仮想的な存在であり、データを記憶する実体は、第２ストレージ装置２内に存在する。即ち、第１ストレージ装置１が有する記憶階層の所定の層に、第２ストレージ装置２の有する第２実ボリューム２Ａ１，２Ａ２がそれぞれマッピングされることにより、仮想ボリューム１Ｂ１，１Ｂ２がそれぞれ構築されている。
【００３３】
第１制御部１Ｃは、第１ストレージ装置１の全体動作を制御するためのコントローラである。第１制御部１Ｃは、第１構成情報１Ｄを保持しており、この第１構成情報１Ｄに基づいてデータ入出力等を制御する。第１構成情報１Ｄには、例えば、ディスクドライブの構成、ホスト５のアクセスを制御するアクセス制御情報、コピーペアの設定状態等に加えて、マッピングテーブルが含まれている。マッピングテーブルには、各仮想ボリューム１Ｂ１，１Ｂ２と各実ボリューム２Ａ１，２Ａ２との対応関係が登録されている。
【００３４】
第１制御部１Ｃは、ホスト５から仮想ボリューム１Ｂ１，１Ｂ２を対象とするアクセス要求が発行されると、マッピングテーブルを参照し、第２ストレージ装置２の実ボリューム２Ａ１，２Ａ２にアクセスしてデータの読み書きを行う。従って、ホスト５からは、仮想ボリューム１Ｂ１，１Ｂ２にアクセスしているかのように見える。しかし、実際のデータ格納先は、第２ストレージ装置２内に存在する。
【００３５】
第２ストレージ装置２は、通信ポート２Ｅから通信ネットワーク６Ａを介して、第１ストレージ装置１に接続されている。また、第２ストレージ装置２は、通信ポート２Ｆから通信ネットワーク６Ｃを介して、ホスト５に接続されている。さらに、第２ストレージ装置２は、通信ネットワーク６Ｂを介して、管理サーバ３に接続されている。
【００３６】
第２ストレージ装置２は、例えば、複数の第２実ボリューム２Ａ１，２Ａ２と、第２制御部２Ｃを備えて構成することができる。各第２実ボリューム２Ａ１，２Ａ２は、第２ストレージ装置２内に設けられた物理的な記憶デバイスに基づいて設けられるもので、上述のように、第１ストレージ装置１の各仮想ボリューム１Ｂ１，１Ｂ２にそれぞれマッピングされている。第２制御部２Ｃは、第２ストレージ装置２の全体動作を制御するためのコントローラである。第２制御部２Ｃは、第２構成情報２Ｄに基づいて、データ入出力等を行うことができる。
【００３７】
管理サーバ３は、ストレージシステムの構成変更を一元的に管理する。管理サーバ３は、例えば、構成設定部３Ａと、構成管理部３Ｂと、判定部３Ｃと、構成情報記憶部３Ｄとを備えて構成することができる。
【００３８】
構成設定部３Ａは、第１ストレージ装置１または第２ストレージ装置２に構成変更の指示を発行することにより、各ストレージ装置１，２の構成を変更させる。構成変更としては、例えば、ボリュームの生成、生成したボリュームの通信ポートへの割当て、仮想ボリューム１Ｂ１，１Ｂ２と実ボリューム２Ａ１，２Ａ２とのマッピング、アクセス属性の設定、ホスト５のアクセス先の設定等を挙げることができる。
【００３９】
構成管理部３Ｂは、各ストレージ装置１，２の構成を一元的に管理する。各ストレージ装置１，２の構成情報１Ｄ，２Ｄは、構成管理部３Ｂによってそれぞれ取得され、構成情報記憶部３Ｄに記憶される。
【００４０】
判定部３Ｃは、管理端末４から入力された構成変更操作の実行可否を判定し、実行可と判定した操作のみを構成設定部３Ａに入力する。判定部３Ｃは、第１ストレージ装置１と第２ストレージ装置２との連携、即ち、相互依存関係に影響を与える構成変更操作の場合は、その実行を拒否する。これに対し、判定部３Ｃは、第１ストレージ装置１と第２ストレージ装置２との相互依存関係に影響を与えない構成変更操作の場合は、その実行を許可する。判定部３Ｃは、構成情報記憶部３Ｄに記憶されている情報を参照することにより、管理端末４から入力された構成変更操作が、相互依存関係に影響を与えるか否かを判定することができる。
【００４１】
ここで、相互依存関係とは、例えば、第１ストレージ装置１の仮想ボリューム１Ｂ１，１Ｂ２と第２ストレージ装置２の実ボリューム２Ａ１，２Ａ２とのマッピング構成（ボリューム間の接続構成）を意味する。判定部３Ｃは、このマッピング構成を破壊等する構成変更操作を禁止する。
【００４２】
例えば、判定部３Ｃは、第２ストレージ装置２側におけるボリューム間接続構成の解除操作、仮想ボリューム１Ｂ１，１Ｂ２にそれぞれ対応付けられている実ボリューム２Ａ１，２Ａ２を第２ストレージ装置２内の他の実ボリュームと統合させる統合操作、ボリューム間接続構成に使用されている通信ポート２Ｅ以外の他の通信ポート２Ｆに対する実ボリューム２Ａ１，２Ａ２の割当操作、実ボリューム２Ａ１，２Ａ２へのコピーペアの設定操作等の実施を禁止させることができる。
【００４３】
例えば、実ボリューム２Ａ１，２Ａ２が第１ストレージ装置１に接続されていることを理解していないユーザが、実ボリューム２Ａ１，２Ａ２のいずれかまたは両方を削除しようとするような場合、この構成変更操作によって、現在運用中のボリューム間接続が解除されてしまう。そこで、判定部３Ｃは、このような第２ストレージ装置２側での接続解除操作を禁止することができる。
【００４４】
また、例えば、大規模アプリケーションプログラムに対応等するために、複数の実ボリュームを結合して単一の大容量ボリュームを作成する場合がある。複数のボリュームを統合させることにより、ボリューム容量を増大できる。あるいは、ポートに割り当てるLU数に制限があるような場合、複数のボリュームを統合して一つにまとめることにより、見かけ上のLU数を削減することができ、ポートを効率的に使用できる。
【００４５】
しかし、既に仮想ボリューム１Ｂ１，１Ｂ２に接続されている実ボリューム２Ａ１，２Ａ２のいずれかを他のボリュームに統合させたり、あるいは、実ボリューム２Ａ１，２Ａ２同士を結合させたりすると、ストレージ装置１，２を跨って形成されたボリューム間の接続構成が破壊されてしまう。そこで、判定部３Ｃは、仮想ボリュームに対応付けられている実ボリューム２Ａ１，２Ａ２が他の実ボリュームに統合される操作を、未然に禁止することができる。
【００４６】
また、例えば、通信ポート２Ｅを介して仮想ボリューム１Ｂ１，１Ｂ２に接続されている実ボリューム２Ａ１，２Ａ２が、他の通信ポート２Ｆにも割り当てられた場合は、その通信ポート２Ｆを介して、ホスト５が実ボリューム２Ａ１，２Ａ２にアクセスし、データを更新してしまう可能性がある。この場合、仮想ボリュームと実ボリュームとの間で記憶内容に不整合が生じ、正しい運用を行うことができない。そこで、判定部３Ｃは、仮想論理ボリュームに接続されている実ボリュームが不用意に書き換えられることのないように、他の通信ポートへの割当を未然に禁止することができる。
【００４７】
なお、仮想ボリュームに接続された実ボリュームに対してリードオンリーのアクセス属性を設定するならば、他の通信ポートに割り当てても構わない場合もある。他の通信ポートから実ボリュームを更新することができず、記憶内容に不整合は生じない。
【００４８】
また、仮想ボリューム１Ｂ１，１Ｂ２に接続されている実ボリューム２Ａ１，２Ａ２が、他のボリュームとコピーペアを形成する場合、上記同様に、実ボリューム２Ａ１，２Ａ２の記憶内容が変更されて、不整合を生じる可能性がある。例えば、実ボリューム２Ａ１，２Ａ２のいずれかまたは両方が、コピー先ボリュームとして設定されるような場合である。そこで、判定部３Ｃは、実ボリューム２Ａ１，２Ａ２に対するコピーペアの設定操作を未然に禁止することができる。これに対し、実ボリューム２Ａ１，２Ａ２がコピー元ボリュームとして設定される場合は、記憶内容に変更を生じないため、コピー元ボリュームへの設定操作を許可することもできる。
【００４９】
構成設定部３Ａは、判定部３Ｃによって許可された構成変更操作を実施する。具体的には、許可された構成変更の内容を実現するためのコマンドまたはデータを、対象のストレージ装置に送信し、対象となるストレージ装置の構成を変更させる。構成変更を完了した場合、構成管理部３Ｂは、構成情報記憶部３Ｄの記憶内容を更新させる。これにより、ストレージシステムの構成に関する最新の情報を得ることができる。
【００５０】
管理端末４は、例えば、パーソナルコンピュータや携帯情報端末等のようなコンピュータシステムとして構成可能である。管理端末４は、例えば、ウェブヴラウザ等のユーザインターフェースを備えている。管理端末４と管理サーバ３とは、通信ネットワーク６Ｂを介して接続されている。管理端末４は、管理サーバ３にログインし、種々の操作内容を指示したり、あるいは、管理サーバ３からストレージシステムに関する各種の情報を読出して端末画面に表示させることができる。
【００５１】
一部の動作について既に述べたが、ストレージシステムの全体動作を簡単に説明すると
、システム管理者等のユーザは、管理端末４を介して、管理サーバ３にログインし、仮想ボリューム１Ｂ１，１Ｂ２及び実ボリューム２Ａ１，２Ａ２をそれぞれ生成し、所定の通信ポートに割り当てる。そして、ユーザは、仮想ボリューム１Ｂ１，１Ｂ２に実ボリューム２Ａ１，２Ａ２をそれぞれマッピングして、両者を接続させる（Ｓ１）。これにより、第１ストレージ装置１は、第２ストレージ装置２の記憶資源を取り込んで、ホスト５に提供することができる。
【００５２】
管理サーバ３は、例えば、ディスカバリ実行時等のような所定のタイミングで、ストレージシステムの構成に関する情報１Ｄ，２Ｄをそれぞれ取得する（Ｓ２）。取得された各構成情報１Ｄ，２Ｄは、構成情報記憶部３Ｄに記憶される。ユーザからの明示の要求に従って、各構成情報１Ｄ，２Ｄを取得することができる。これに限らず、例えば、ストレージシステムの負荷が低い時間帯等を選んで、管理サーバ３が定期的にまたは不定期に、各ストレージ装置１，２から構成情報１Ｄ，２Ｄをそれぞれ取得してもよい。
【００５３】
次に、ユーザは、管理端末４を介して、所望の操作内容４Ａを管理サーバ３に入力する（Ｓ３）。管理サーバ３の判定部３Ｃは、構成管理部３Ｂを介して構成情報記憶部３Ｄに記憶されている情報を参照し、ユーザから要求された操作内容４Ａを許可するか否かを判定する（Ｓ４）。操作内容４Ａの実施を拒否する場合、その旨が管理端末４に送信され、端末画面に表示される。なお、エラー通知は、画面表示に限らず、例えば、音声出力等によって行うこともできる。また、エラー通知の際に、その操作内容４Ａの実施が禁止された理由も併せて通知することができる。
【００５４】
ユーザは、エラー通知に基づいて、操作内容を正しい内容に変更可能である。管理端末４から正しい操作内容４Ａが入力されると、判定部３Ｃは、この操作内容４Ａの実施を許可する（Ｓ４）。この肯定的な判定結果に基づいて、構成設定部３Ａは、ユーザから要求された操作内容４Ａを実現させるべく、対象のストレージ装置に対して構成変更の指示を与える（Ｓ５）。この構成変更の指示を受信したストレージ装置（図中では、第２ストレージ装置２である）は、指示内容に基づいて構成を変更する。これにより、そのストレージ装置の構成情報（図中ではＤ２）が更新される。
【００５５】
構成設定部３Ａによる構成変更が完了すると、構成管理部３Ｂは、変更された内容を構成情報記憶部３Ｄに記憶されている情報に反映させる（Ｓ６）。これにより、管理サーバ３は、改めて各ストレージ装置１，２から構成情報１Ｄ，２Ｄをそれぞれ取得することなく、最新の構成に関する情報を得ることができる。但し、これに限らず、構成変更が実施される度に、各ストレージ装置１，２からそれぞれ構成情報１Ｄ，２Ｄを取得して、構成情報記憶部３Ｄの記憶内容を更新させる構成を採用してもよい。
【００５６】
このように、本実施形態によれば、第１ストレージ装置１が第２ストレージ装置２の有する実ボリューム２Ａ１，２Ａ２を自分自身の仮想ボリューム１Ｂ１，１Ｂ２として取り込んで利用することができる。
【００５７】
そして、本実施形態によれば、第１ストレージ装置１と第２ストレージ装置２との相互依存関係を破壊等するような構成変更操作を未然に禁止するため、第１ストレージ装置１と第２ストレージ装置２とが連携している場合でも、安全にストレージシステムの構成を変更することができ、使い勝手や信頼性が向上する。以下、本実施形態をより詳細に説明する。
【実施例１】
【００５８】
図２は、本実施例によるストレージシステムの要部の構成を示すブロック図である。このストレージシステムは、それぞれ後述するように、例えば、一つまたは複数のホスト１０Ａ，１０Ｂと、管理サーバ２０と、管理端末３０と、複数のストレージ装置１００，２００とを含んで構成することができる。
【００５９】
各ホスト１０Ａ，１０Ｂと各ストレージ装置１００，２００とは、通信ネットワークCN１を介して接続されている。第１ストレージ装置１００と第２ストレージ装置２００とは、通信ネットワークCN２を介して接続されている。各ストレージ装置１００，２００と管理サーバ２０とは、通信ネットワークCN３を介して接続されている。また、管理端末３０は、通信ネットワークCN３を介して管理サーバ２０に接続されている。
【００６０】
ホスト１０Ａ，１０Ｂは、例えば、CPU（Central Processing Unit）やメモリ等の情報処理資源を備えたコンピュータ装置であり、例えば、パーソナルコンピュータ、ワークステーション、メインフレーム等として構成される。
【００６１】
ホスト１０Ａは、通信ネットワークCN１を介して第１ストレージ装置１００にアクセスするためのHBA（Host Bus Adapter）１１Ａと、例えば、データベースソフトウェア等のアプリケーションプログラム１２Ａと、を備えている。同様に、ホスト１０Ｂも、第２ストレージ装置２００にアクセスするためのHBA１１Ｂと、アプリケーションプログラム１２Ｂとを備えている。以下、各ホスト１０Ａ，１０Ｂを特に区別しない場合は、単に、ホスト１０，HBA１１，アプリケーションプログラム１２と呼ぶ。
【００６２】
通信ネットワークCN１としては、例えば、LAN（Local Area Network）、SAN（Storage Area Network）、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。LANを介するデータ通信は、例えば、TCP/IPプロトコルに従って行われる。ホスト１０がLANを介して第１ストレージ装置１００，２００に接続される場合、ホスト１０は、ファイル名を指定してファイル単位でのデータ入出力を要求する。
【００６３】
一方、ホスト１０がSANを介して第１ストレージ装置１００，２００に接続される場合、ホスト１０は、ファイバチャネルプロトコルに従って、複数のディスク記憶装置（ディスクドライブ）により提供される記憶領域のデータ管理単位であるブロックを単位としてデータ入出力を要求する。通信ネットワークCN１がLANである場合、HBA１１は、例えばLAN対応のネットワークカードである。通信ネットワークCN１がSANの場合、HBA１１は、例えばホストバスアダプタである。
【００６４】
なお、ホスト１０がメインフレームとして構成される場合、ホスト１０は、例えば、FICON（Fibre Connection：登録商標）、ESCON（Enterprise System Connection：登録商標）、ACONARC（Advanced Connection Architecture：登録商標）、FIBARC（Fibre Connection Architecture：登録商標）等の通信プロトコルに従ってデータ転送を行う。
【００６５】
管理サーバ２０は、ストレージシステムの構成等を管理するためのコンピュータ装置であり、例えば、システム管理者等のユーザにより操作される。管理サーバ２０は、通信ネットワークCN３を介して、各ストレージ装置１００，２００及び管理端末３０とそれぞれ接続されている。管理サーバ２０は、例えば、通信ネットワークCN３に接続するためのLANポート２１と、管理ソフトウェア２２と、レポジトリ（データベース）２３とを備えて構成することができる。レポジトリ２３には、リザーブ情報管理テーブルＴｒを含めることができる。管理サーバ２０は、後述のように、各ストレージ装置１００，２００の構成変更を一元的に管理し、誤った構成変更の実行を未然に阻止する。
【００６６】
管理端末３０は、通信ネットワークCN３を介して管理サーバ２０に接続されており、管理サーバ２０との間で情報を交換する。管理端末３０は、例えば、通信ネットワークCN３に接続するためのLANポート３１と、ウェブヴラウザ等のユーザインターフェース３２とを備えて構成することができる。管理端末３０は、管理サーバ２０に対して各種の指示を与えることができる。また、管理端末３０は、管理サーバ２０からストレージシステムの状態に関する情報を取得し、端末画面に表示させることもできる。
【００６７】
第１ストレージ装置１００は、例えば、ディスクアレイサブシステムとして構成されるものである。但し、これに限らず、第１ストレージ装置１００を、高機能化されたインテリジェント型のファイバチャネルスイッチとして構成することもできる。第１ストレージ装置１００は、後述のように、第２ストレージ装置２００の有する記憶資源を、自己の論理ボリューム（Logical Unit）としてホスト１０に提供する。即ち、第１ストレージ装置１００は、ストレージシステムにおけるメインストレージである。これに対し、第２ストレージ装置２００は、メインストレージである第１ストレージ装置１００によって使用される外部ストレージである。
【００６８】
第１ストレージ装置１００は、コントローラと記憶部１６０とに大別することができ、コントローラは、例えば、複数のチャネルアダプタ（以下、「CHA」）１１０と、複数のディスクアダプタ（以下、「DKA」）１２０と、キャッシュメモリ１３０と、共有メモリ１４０と、接続制御部１５０とを備えて構成することができる。
【００６９】
各CHA１１０は、ホスト１０との間のデータ通信を行うものである。各CHA１１０は、ホスト１０と通信を行うための通信ポート１１１を備えている。各CHA１１０は、それぞれCPUやメモリ等を備えたマイクロコンピュータシステムとして構成されており、ホスト１０から受信した各種コマンドを解釈して実行する。各CHA１１０には、それぞれを識別するためのネットワークアドレス（例えば、IPアドレスやWWN）が割り当てられており、各CHA１１０は、それぞれが個別にNAS（Network Attached Storage）として振る舞うことも可能である。複数のホスト１０が存在する場合、各CHA１１０は、各ホスト１０からの要求をそれぞれ個別に受け付けて処理する。
【００７０】
各DKA１２０は、記憶部１６０が有するディスクドライブ１６１との間でデータ授受を行うものである。各DKA１２０は、CHA１１０と同様に、CPUやメモリ等を備えたマイクロコンピュータシステムとして構成される。各DKA１２０は、例えば、CHA１１０がホスト１０から受信したデータや第２ストレージ装置２００から読み出されたデータを、所定のディスクドライブ１６１の所定のアドレスに書込む。また、各DKA１２０は、所定のディスクドライブ１６１の所定のアドレスからデータを読み出し、ホスト１０または第２ストレージ装置２００に送信させる。ディスクドライブ１６１との間でデータ入出力を行う場合、各DKA１２０は、論理的なアドレスを物理的なアドレスに変換する。各DKA１２０は、ディスクドライブ１６１がRAIDに従って管理されている場合は、RAID構成に応じたデータアクセスを行う。例えば、各DKA１２０は、同一のデータを別々のディスクドライブ群（RAIDグループ）にそれぞれ書き込んだり、あるいは、パリティ計算を実行し、データ及びパリティをディスクドライブ群に書き込む。
【００７１】
キャッシュメモリ１３０は、ホスト１０または第２ストレージ装置２００から受信したデータを記憶したり、あるいは、ディスクドライブ１６１から読み出されたデータを記憶するものである。後述のように、キャッシュメモリ１３０の記憶空間を利用して、仮想的な中間記憶デバイスが構築される。
【００７２】
共有メモリ（制御メモリとも呼ばれる場合がある）１４０には、第１ストレージ装置１００の作動に使用するための各種制御情報等が格納される。この制御情報の一つには、後述の構成情報Ｔｃ１が含まれる。また、共有メモリ１４０には、ワーク領域が設定されるほか、後述するマッピングテーブル等の各種テーブル類も格納される。
【００７３】
なお、ディスクドライブ１６１のいずれか１つあるいは複数を、キャッシュ用のディスクとして使用してもよい。また、キャッシュメモリ１３０と共有メモリ１４０とは、それぞれ別々のメモリとして構成することもできるし、同一のメモリの一部の記憶領域をキャッシュ領域として使用し、他の記憶領域を制御領域として使用することもできる。
【００７４】
接続制御部１５０は、各CHA１１０，各DKA１２０，キャッシュメモリ１３０及び共有メモリ１４０を相互に接続させるものである。接続制御部１５０は、例えば、高速スイッチング動作によってデータ伝送を行う超高速クロスバスイッチ等のような高速バスとして構成することができる。
【００７５】
記憶部１６０は、複数のディスクドライブ１６１を備えている。ディスクドライブ１６１としては、例えば、ハードディスクドライブ、フレキシブルディスクドライブ、磁気テープドライブ、半導体メモリドライブ、光ディスクドライブ等のような各種記憶デバイス及びこれらの均等物を用いることができる。また、例えば、FC（Fibre Channel）ディスクやSATA（Serial AT Attachment）ディスク等のように、異種類のディスクを記憶部１６０内に混在させることもできる。
【００７６】
なお、後述のように、第１ストレージ装置１００は、第２ストレージ装置２００の有するディスクドライブ２２０に基づく仮想ボリューム１６３Ｖが形成される。この仮想ボリューム１６３Ｖは、ディスクドライブ１６１に基づく内部ボリューム１６３と同様にホスト１０Ａに提供される。
【００７７】
SVP（サービスプロセッサ）１７０は、内部の通信ネットワークCN４を介して、例えば、各CHA１１０とそれぞれ接続されている。また、SVP１７０は、いずれか一つまたは複数のCHA１１０を介して、共有メモリ１４０等にアクセスすることもできる。SVP１７０は、ストレージ装置１００内の各種情報を収集して管理サーバ２０に出力可能である。また、SVP１７０は、管理サーバ２０からの指示に応じて、共有メモリ１４０内の構成情報Ｔｃ１を書き換え、ストレージ装置１００の構成を変更させることができる。
【００７８】
第２ストレージ装置２００は、例えば、コントローラ２１０と、複数のディスクドライブ２２０とを備えている。コントローラ２１０は、構成情報Ｄ２を備えている。第２ストレージ装置２００は、通信ポート２１１を介して、ホスト１０Ｂと、管理サーバ２０及び第１ストレージ装置１００にそれぞれ通信可能に接続されている。
【００７９】
第２ストレージ装置２００とホスト１０Ｂとは、通信ネットワークCN１を介して接続されている。第２ストレージ装置２００と管理サーバ２０とは通信ネットワークCN３を介して接続されている。第２ストレージ装置２００と第１ストレージ装置１００とは通信ネットワークCN２を介して接続されている。通信ネットワークCN２，CN３は、例えば、SANやLAN等から構成することができる。本実施例では、ストレージ装置間をSANで接続し、管理サーバ２０と各ストレージ装置１００，２００とはLANで接続するものとする。
【００８０】
第２ストレージ装置２００は、第１ストレージ装置１００とほぼ同様の構成を備えることもできるし、第１ストレージ装置１００よりも簡易な構成を採用することもできる。第２ストレージ装置２００のディスクドライブ２２０は、第１ストレージ装置１００の内部記憶デバイスとして扱われるようになっている。
【００８１】
図３を参照する。図３は、第１ストレージ装置１００及び第２ストレージ装置２００の記憶構造に着目した構成説明図である。まず、第１ストレージ装置１００の構成から先に説明する。
【００８２】
第１ストレージ装置１００の記憶構造は、例えば、物理的記憶階層と論理的記憶階層とに大別することができる。物理的記憶階層は、物理的なディスクであるPDEV（Physical Device）１６１により構成される。PDEVは、ディスクドライブに該当する。
【００８３】
論理的記憶階層は、複数の（例えば２種類の）階層から構成することができる。一つの論理的階層は、VDEV（Virtual Device）１６２と、VDEV１６２のように扱われる仮想的なVDEV（以下、「V−VOL」とも呼ぶ）１６２Ｖとから構成可能である。他の一つの論理的階層は、LDEV（Logical Device）１６３から構成することができる。
【００８４】
VDEV１６２は、例えば、４個１組（３Ｄ＋１Ｐ）、８個１組（７Ｄ＋１Ｐ）等のような所定数のPDEV１６１をグループ化して構成される。グループに属する各PDEV１６１がそれぞれ提供する記憶領域が集合して一つのRAID記憶領域が形成される。このRAID記憶領域がVDEV１６２となる。
【００８５】
VDEV１６２が物理的な記憶領域上に構築されるのと対照的に、V−VOL１６２Ｖは、物理的な記憶領域を必要としない仮想的な中間記憶デバイスである。V−VOL１６２Ｖは、物理的な記憶領域に直接関係づけられるものではなく、第２ストレージ装置２００のLU（Logical Unit）をマッピングするための受け皿となる。
【００８６】
LDEV１６３は、VDEV１６２またはV−VOL１６２Ｖ上に、それぞれ少なくとも一つ以上設けることができる。LDEV１６３は、例えば、VDEV１６２を固定長で分割することにより構成することができる。ホスト１０がオープン系ホストの場合、LDEV１６３がLU１６４にマッピングされることにより、ホスト１０は、LDEV１６３を一つの物理的なディスクとして認識する。オープン系のホストは、LUN（Logical Unit Number ）や論理ブロックアドレスを指定することにより、所望のLDEV１６３にアクセスする。なお、メインフレーム系ホストの場合は、LDEV１６３を直接認識する。
【００８７】
LU１６４は、SCSIの論理ユニットとして認識可能なデバイスである。各LU１６４は、ターゲットポート１１１Ａを介してホスト１０に接続される。各LU１６４には、少なくとも一つ以上のLDEV１６３をそれぞれ関連付けることができる。一つのLU１６４に複数のLDEV１６３を関連付けることにより、LUサイズを仮想的に拡張することもできる。
【００８８】
CMD（Command Device）１６５は、ホスト１０上で稼働するI/O制御プログラムとストレージ装置１００のコントローラ（CHA１１０，DKA１２０）との間で、コマンドやステータスを受け渡すために使用される専用のLUである。ホスト１０からのコマンドは、CMD１６５に書き込まれる。ストレージ装置１００のコントローラは、CMD１６５に書き込まれたコマンドに応じた処理を実行し、その実行結果をステータスとしてCMD１６５に書き込む。ホスト１０は、CMD１６５に書き込まれたステータスを読出して確認し、次に実行すべき処理内容をCMD１６５に書き込む。このようにして、ホスト１０は、CMD１６５を介して、ストレージ装置１００に各種の指示を与えることができる。
【００８９】
なお、ホスト１０から受信したコマンドを、CMD１６５に格納することなく、処理することもできる。また、実体のデバイス（LU）を定義せずに、CMDを仮想的なデバイスとして生成し、ホスト１０からのコマンドを受け付けて処理するように構成してもよい。即ち、例えば、CHA１１０は、ホスト１０から受信したコマンドを共有メモリ１４０に書き込み、この共有メモリ１４０に記憶されたコマンドを、CHA１１０又はDKA１２０が処理する。その処理結果は共有メモリ１４０に書き込まれ、CHA１１０からホスト１０に送信される。
【００９０】
さて、第１ストレージ装置１００の外部接続用のイニシエータポート（External Port）１１１Ｂには、通信ネットワークCN２を介して、第２ストレージ装置２００が接続されている。
【００９１】
第２ストレージ装置２００は、複数のPDEV２２０と、PDEV２２０の提供する記憶領域上に設定されたVDEV２３０と、VDEV２３０上に少なくとも一つ以上設定可能なLDEV２４０とを備えている。各LDEV２４０は、LU２５０にそれぞれ関連付けられている。
【００９２】
そして、本実施例では、第２ストレージ装置２００のLU２５０（即ち、LDEV２４０）は、仮想的な中間記憶デバイスであるV-VOL１６２Ｖにマッピングされており、第１ストレージ装置１００からも使用できるようになっている。
【００９３】
例えば、図３において、第２ストレージ装置２００の「LDEV１」２４０，「LDEV２」２４０は、第２ストレージ装置２００の「LU１」２５０，「LU２」２５０を介して、第１ストレージ装置１００の「V−VOL１」１６２Ｖ，「V−VOL２」１６２Ｖにそれぞれマッピングされている。そして、「V−VOL１」，「V−VOL２」は、それぞれ「LDEV３」１６３Ｖ，「LDEV４」１６３Ｖにマッピングされ、「LU３」１６４，「LU４」１６４を介して、利用可能となっている。
【００９４】
なお、VDEV１６２，V-VOL１６２Ｖには、RAID構成を適用することができる。即ち、１つのディスクドライブを複数のVDEV１６２，V-VOL１６２Ｖに割り当てることもできるし（スライシング）、複数のディスクドライブから１つのVDEV１６２，V-VOL１６２Ｖを形成することもできる（ストライピング）。
【００９５】
第１ストレージ装置１００の「LDEV１」または「LDEV２」は、実内部ボリュームに相当し、「LDEV３」または「LDEV４」は仮想ボリュームに該当する。第２ストレージ装置２００の「LDEV１」または「LDEV２」は、実ボリュームである。なお、第１ストレージ装置１００を中心に観た場合、第２ストレージ装置２００は外部ストレージとなり、第２ストレージ装置２００の論理ボリューム２４０は外部ボリュームとなる。
【００９６】
図４を参照する。図４は、本実施例の機能構成に着目した構成説明図である。第１ストレージ装置１００のコントローラ１０１は、各CHA１１０及び各DKA１２０と、キャッシュメモリ１３０及び共有メモリ１４０等から構成される。
【００９７】
このコントローラ１０１は、その共有メモリ１４０内に、後述のマッピングテーブルＴ１等を含む構成情報Ｔｃ１を格納している。第１ストレージ装置１００には、実内部ボリューム１６３及び仮想ボリューム１６３Ｖがそれぞれ設けられている。内部ボリューム１６３は、第１ストレージ装置１００が直接的に支配している各ディスクドライブ１６１の記憶領域に基づいて設定されるボリュームである。仮想ボリューム１６３Ｖは、第２ストレージ装置２００の有する各ディスクドライブ２２０の記憶領域に基づいて設定されるボリュームである。
【００９８】
第２ストレージ装置２００のコントローラ２１０は、その図示せぬメモリ内に構成情報Ｔｃ２を記憶させている。第２ストレージ装置２００は、複数の実ボリューム２４０を備えている。これら各実ボリューム２４０は、ディスクドライブ２２０の記憶領域に基づいて生成されたものである。各実ボリューム２４０は、それぞれ第１ストレージ装置１００の仮想ボリューム１６３Ｖにマッピングされており、第１ストレージ装置１００に取り込まれたかのようになっている。
【００９９】
管理サーバ２０の管理ソフトウェア２２は、その内部的な機能として、構成管理部２２Ａと、判定部２２Ｂと、構成設定部２２Ｃとを備えることができる。構成管理部２２Ａは、各ストレージ装置１００，２００から構成情報Ｔｃ１，Ｔｃ２をそれぞれ取得し、この構成情報Ｔｃ１，Ｔｃ２をリザーブ情報管理テーブルＴｒに登録して管理する。リザーブ情報管理テーブルＴｒの更新時期の一例については後述する。
【０１００】
判定部２２Ｂは、管理端末３０から入力された構成変更操作の実行可否を判定し、許可した場合に、構成変更操作の内容を構成設定部２２Ｃに入力する。構成変更操作とは、ストレージシステムの構成を変更するための操作であり、例えば、ボリュームの生成、ボリュームへの通信ポートの割当て、ボリューム同士のマッピング、コピーペアの設定等を挙げることができる。
【０１０１】
判定部２２Ｂは、管理端末３０から入力された構成変更操作が、仮想ボリューム１６３Ｖと実ボリューム２４０との接続構成に影響を与えるか否かを判定する。判定部２２Ｂは、接続構成に影響を与える操作の実行を拒否し、接続構成に影響を与えない操作の実行を許可する。
【０１０２】
構成設定部２２Ｃは、構成変更操作に基づいて、各ストレージ装置１００，２００の構成を変更させるものである。構成設定部２２Ｃは、判定部２２Ｂにより許可された操作のみを実現させる。構成設定部２２Ｃは、構成変更に必要な指示を、変更対象のストレージ装置に与える。
【０１０３】
図５を参照する。図５は、第２ストレージ装置２００の実ボリューム２４０を第１ストレージ装置１００の仮想ボリューム１６３ＶにマッピングするためのマッピングテーブルＴ１の一例を示す。
【０１０４】
マッピングテーブルＴ１は、例えば、V-VOL１６２Ｖをそれぞれ識別するためのVDEV番号と、外部のディスクドライブ２２０の情報とをそれぞれ対応付けることにより、構成することができる。マッピングテーブルＴ１では、V−VOL１６２Ｖを仮想的なVDEVとして取り扱うため、図５中には「VDEV」という表示が含まれているが、実際には、V−VOL１６２Ｖと外部のディスクドライブ２２０との対応関係を規定するものである。
【０１０５】
外部デバイス情報としては、例えば、デバイス識別情報と、ディスクドライブ２２０の記憶容量と、デバイスの種別を示す情報と（例えば、テープ系デバイスかディスク系デバイスか等）、ディスクドライブ２２０へのパス情報とを含んで構成することができる。パス情報は、各通信ポート２１１に固有の識別情報（WWN）と、LU２５０を識別するためのLUN番号とを含んで構成できる。
【０１０６】
なお、図５中に示すデバイス識別情報やWWN等は、説明の便宜上の値であって特に意味はない。また、図５中の下側に示すVDEV番号「３」のV-VOLには、３個のパス情報が対応付けられている。即ち、このVDEV（＃３）にマッピングされる外部ディスクドライブ２２０は、その内部に３つの経路を有する交代パス構造を備えており、VDEV（＃３）には、この交代パス構造を意識してマッピングされている。これら３つの経路のいずれを通っても同一の記憶領域にアクセスできることが判明している。従って、いずれか１つまたは２つの経路に障害等が発生した場合でも、残りの正常な経路を介して、所望のデータにアクセスすることができる。
【０１０７】
図５に示すようなマッピングテーブルＴ１を採用することにより、第１ストレージ装置１００内のV-VOL１６２Ｖに対して、１つまたは複数の外部のディスクドライブ２２０をマッピングすることができる。
【０１０８】
なお、以下に示す他のテーブルでも同様であるが、テーブル中のボリューム番号等は、テーブル構成を説明するための例示であって、図３，図４等に示す他の構成中の番号とは特に対応していない。
【０１０９】
図６を参照して、各種テーブルを利用してデータが変換される様子を説明する。図６の上部に示すように、ホスト１０は、所定の通信ポート１１１に対し、LUN番号（LUN＃）及び論理ブロックアドレス（LBA）を指定してデータを送信する。
【０１１０】
第１ストレージ装置１００は、LDEV用に入力されたデータ（LUN＃＋LBA）を、図６（ａ）に示す第１変換テーブルＴ２に基づいて、VDEV用のデータに変換する。第１変換テーブルＴ２は、第１ストレージ装置１００内のLUNを指定するデータを、VDEV用データに変換するためのLUN−LDEV−VDEV変換テーブルである。
【０１１１】
この第１変換テーブルＴ２は、例えば、LUN番号（LUN＃）と、そのLUNに対応するLDEVの番号（LDEV＃）及び最大スロット数と、LDEVに対応するVDEV（V-VOLを含む）の番号（VDEV＃）及び最大スロット数等を対応付けることにより構成される。この第１変換テーブルＴ２を参照することにより、ホスト１０からのデータ（LUN＃＋LBA）は、VDEV用のデータ（VDEV＃＋SLOT＃＋SUBBLOCK＃）に変換される。
【０１１２】
次に、第１ストレージ装置１００は、図６（ｂ）に示す第２変換テーブルＴ３を参照して、VDEV用のデータを、第２ストレージ装置２００のLUN用に送信して記憶させるためのデータに変換する。
【０１１３】
第２変換テーブルＴ３には、例えば、VDEVの番号（VDEV＃）と、そのVDEVからのデータを第２ストレージ装置２００に送信するためのイニシエータポートの番号と、データ転送先の通信ポートを特定するためのWWNと、その通信ポートを介してアクセス可能なLUNとが対応付けられている。
【０１１４】
この第２変換テーブルＴ３に基づいて、第１ストレージ装置１００は、記憶させるべきデータの宛先情報を、イニシエータポート番号＃＋WWN＋LUN＃＋LBAの形式に変換する。このように宛先情報が変更されたデータは、指定されたイニシエータポートから通信ネットワークCN２を介して、指定された通信ポート２１１に到達する。そして、データは、指定されたLDEVの所定の場所に格納される。
【０１１５】
図６（ｃ）は、別の第２変換テーブルＴ３ａを示す。この変換テーブルＴ３ａは、外部ディスクドライブ２２０に由来するVDEV（即ち、V-VOL）に、ストライプやRAIDを適用する場合に使用される。変換テーブルＴ３ａは、VDEV番号（VDEV＃）と、ストライプサイズと、RAIDレベルと、第２ストレージ装置２００を識別するための番号（ＳＳ＃（ストレージシステム番号））と、イニシエータポート番号と、通信ポート２１１のWWN及びLUN番号とを対応付けることにより構成されている。
【０１１６】
図６（ｃ）に示す例では、１つのVDEV（V-VOL）は、ＳＳ＃（１，４，６，７）で特定される合計４つの外部記憶制御装置を利用してRAID１を構成する。また、ＳＳ＃１に割り当てられている３個のLUN（＃０，＃０，＃４）は、同一デバイス（LDEV＃）に設定されている。なお、LUN＃０のボリュームは、２個のアクセスデータパスを有する交代パス構造を備えている。このように、複数の外部ストレージ装置がそれぞれ有する論理ボリューム（LDEV）を、第１ストレージ装置１００内の一つのV-VOLにそれぞれマッピングし、仮想ボリューム１６３Ｖとして利用することもできる。これにより、本実施例では、外部に存在する複数の論理ボリューム（LDEV）からVDEV（V-VOL）を構成することにより、ストライピングやRAID等の機能を追加した上で、ホスト１０に提供することができる。
【０１１７】
図７は、アクセス属性管理テーブルＴ４の一例を示す説明図である。アクセス属性とは、ボリュームへのアクセス可否等を制御する情報である。アクセス属性管理テーブルＴ４は、例えば、LU番号（LUN）毎にアクセス属性を対応付けることにより、構成することができる。
【０１１８】
アクセス属性としては、例えば、「リード/ライト可能」、「ライト抑止（リードオンリー）」、「リード/ライト不可」、「空き容量０」、「コピー先設定不可」及び「隠蔽」を挙げることができる。
【０１１９】
ここで、「リード/ライト可能」とは、そのボリュームへの読み書きが可能である状態を示す。「ライト抑止」とは、そのボリュームへの書込みが禁止され、読出しは許可される状態を示す。「リード/ライト不可」とは、そのボリュームへの読み書きが禁止される状態を示す。「空き容量０」とは、ボリューム残量の問合せに対して、実際に空き容量がある場合でも、残量０（満杯）と応答する状態を示す。「コピー先設定不可」とは、そのボリュームをコピー先ボリューム（セカンダリボリューム）に設定することができない状態を示す。「隠蔽」とは、イニシエータから認識することができない状態を示す。なお、既に述べたように、テーブル内のLUNは、説明のためのものであって、番号それ自体には特に意味がない。
【０１２０】
次に、第１ストレージ装置１００と第２ストレージ装置２００との間のデータ入出力について説明する。図８は、データ書込み時の処理を示す模式図である。ホスト１０は、アクセス権限を有する論理ボリューム（LDEV）にデータを書き込むことができる。例えば、SANの中に仮想的なSANサブネットを設定するゾーニングや、アクセス可能なLUNのリストをホスト１０が保持するLUNマスキングという手法により、ホスト１０を特定のLDEVに対してのみアクセスさせるように設定できる。
【０１２１】
ホスト１０がデータを書き込もうとするLDEVが、VDEVを介して内部の記憶デバイスであるディスクドライブ１６１に接続されている場合は、通常の処理によってデータが書き込まれる。即ち、ホスト１０からのデータは、いったんキャッシュメモリ１３０に格納され、キャッシュメモリ１３０からDKA１２０を介して、所定のディスクドライブ１６１の所定アドレスに格納される。この際、DKA１２０は、論理的なアドレスを物理的なアドレスに変換する。また、RAID構成の場合、同一のデータが複数のディスクドライブ１６１に記憶等される。
【０１２２】
これに対し、ホスト１０がデータを書き込もうとするLDEVが、V-VOLを介して外部のディスクドライブ２２０に接続されている場合は、図８に示すような流れとなる。図８（ａ）は記憶階層を中心に示す流れ図であり、図８（ｂ）はキャッシュメモリ１３０の使われ方を中心に示す流れ図である。
【０１２３】
ホスト１０は、書込み対象のLDEVを特定するLDEV番号と、このLDEVにアクセスするための通信ポート１１１を特定するWWNとを明示して、ライトコマンド（Write）を発行する（Ｓ２１）。第１ストレージ装置１００は、ホスト１０からのライトコマンドを受信すると、第２ストレージ装置２００に送信するためのライトコマンドを生成し、第２ストレージ装置２００に送信する（Ｓ２２）。第１ストレージ装置１００は、ホスト１０から受信したライトコマンド中のアドレス情報等を、外部ボリューム２４０に合わせて変更することにより、新たなライトコマンドを生成する。
【０１２４】
ホスト１０は、ライトデータを第１ストレージ装置２００に送信する（Ｓ２３）。第１ストレージ装置１００に受信されたライトデータは、LDEVからV-VOLを介して（Ｓ２４）、第２ストレージ装置２００に転送される（Ｓ２６）。ここで、第１ストレージ装置１００は、ホスト１０からのデータをキャッシュメモリ１３０に格納した時点で、ホスト１０に対し書込み完了の応答（Good）を返す（Ｓ２５）。
【０１２５】
第２ストレージ装置２００は、第１ストレージ装置１００からライトデータを受信した時点で（あるいはディスクドライブ２２０に書込みを終えた時点で）、書込み完了報告を第１ストレージ装置１００に送信する（Ｓ２６）。即ち、第１ストレージ装置１００がホスト１０に対して書込み完了を報告する時期（Ｓ２５）と、実際にデータがディスクドライブ２２０に記憶される時期とは相違する（非同期方式）。従って、ホスト１０は、実際にライトデータがディスクドライブ２２０に格納される前に、データ書込み処理から解放され、別の処理を行うことができる。
【０１２６】
図８（ｂ）を参照する。キャッシュメモリ１３０には、多数のサブブロックが設けられている。第１ストレージ装置１００は、ホスト１０から指定された論理ブロックアドレスをサブブロックのアドレスに変換し、キャッシュメモリ１３０の所定箇所にデータを格納する（Ｓ２４）。換言すれば、V-VOL及びVDEVは、キャッシュメモリ１３０の記憶空間に設けられた論理的な存在である。
【０１２７】
図９を参照して、第２ストレージ装置２００の外部ボリューム２４０からデータを読み出す場合の流れを説明する。まず、ホスト１０は、通信ポート１１１を指定して第１ストレージ装置１００にデータの読み出しコマンドを送信する（Ｓ３１）。第１ストレージ装置１００は、リードコマンドを受信すると、要求されたデータを第２ストレージ装置２００から読み出すべく、リードコマンドを生成する。
【０１２８】
第１ストレージ装置１００は、生成したリードコマンドを第２ストレージ装置２００に送信する（Ｓ３２）。第２ストレージ装置２００は、第１ストレージ装置１００から受信したリードコマンドに応じて、要求されたデータをディスクドライブ２２０から読み出し、この読出したデータを第１ストレージ装置１００に送信し（Ｓ３３）、正常に読み出しが完了した旨を報告する（Ｓ３５）。図９（ｂ）に示すように、第１ストレージ装置１００は、第２ストレージ装置２００から受信したデータを、キャッシュメモリ１３０の所定の場所に格納させる（Ｓ３４）。
【０１２９】
第１ストレージ装置１００は、キャッシュメモリ１３０に格納されたデータを読み出し、アドレス変換を行った後、LUN１０３等を介してホスト１０にデータを送信し（Ｓ３６）、読み出し完了報告を行う（Ｓ３７）。これらデータ読み出し時の一連の処理では、図６と共に述べた変換操作が逆向きで行われる。
【０１３０】
図９では、ホスト１０からの要求に応じて、第２ストレージ装置２００からデータを読み出し、キャッシュメモリ１３０に保存するかのように示している。しかし、これに限らず、第２ストレージ装置２００のボリューム２４０に記憶されているデータの全部または一部を、予めキャッシュメモリ１３０に記憶させておくこともできる。この場合、ホスト１０からのリードコマンドに対し、直ちにキャッシュメモリ１３０からデータを読み出してホスト１０に送信することができる。
【０１３１】
次に、図１０は、リザーブ情報管理テーブルＴｒで管理されるリザーブ情報の一例を示す説明図である。リザーブ情報は、例えば、複数のテーブルＴ５〜Ｔ８を階層化することにより構成することができる。
【０１３２】
メインストレージ管理テーブルＴ１は、例えば、外部接続グループの番号と、外部接続に使用するポートの番号と、外部ストレージ（第２ストレージ装置）の種別等を含んで構成することができる。ここで、外部接続とは、メインストレージである第１ストレージ装置１００に、外部のストレージ装置（第２ストレージ装置２００）を接続し、外部ストレージの有する記憶資源を取り込むことを意味する。外部接続グループ番号は、外部接続のグループ単位に与えられる識別情報である。例えば、一つのメインストレージに、複数の外部接続グループ（V−VOL）を設定することができる。
【０１３３】
外部接続グループテーブルＴ６は、例えば、各外部接続グループ番号毎にそれぞれ設けられる。外部接続グループは、V−VOL１６２Ｖに相当する。このテーブルＴ６には、例えば、外部接続グループ番号と、外部接続に使用するポートに割り当てられたWWNと、外部接続先のLUN (Logical Unit Number)と、仮想ボリューム１６３Ｖの情報等を含めることができる。
【０１３４】
仮想ボリューム１６３Ｖの情報としては、例えば、ボリューム番号と、エミュレーションタイプと、接続状態と、ボリューム種別と、ペア状態と、その仮想ボリュームをホスト１０に提供するためのホスト接続ポートの情報等を含めることができる。ホスト接続ポート情報には、例えば、そのホストの所属するホストグループの番号と、そのホストのアクセス先として割り当てられたLUNと、そのホストのWWN等とを含めることができる。
【０１３５】
以上説明したテーブルＴ５及びテーブルＴ６に記録される各情報は、メインストレージである第１ストレージ装置１００の構成情報Ｔｃ１からそれぞれ取得される。
【０１３６】
次に、外部ストレージである第２ストレージ装置２００の構成情報Ｔｃ２から取得されるテーブルＴ７及びテーブルＴ８について説明する。外部接続先LUNテーブルＴ７は、第１ストレージ装置１００に接続されるポートを管理するためのものである。このテーブルＴ７には、例えば、外部接続用ポートに割り当てられたWWNと、その外部接続用ポートに割り当てられている実ボリューム２４０の情報等を含めることができる。
【０１３７】
実ボリューム管理テーブルＴ８には、例えば、ボリューム番号と、ボリューム種別と、ディスクアレイグループに関する情報等を含めることができる。ディスクアレイグループに関する情報には、例えば、そのディスクアレイグループ（RAIDグループまたはパリティグループと呼ばれる場合もある）に設定されているエミュレーションタイプ及びRAIDレベルと、そのディスクアレイグループを構成する物理ディスク２２０の情報等を含めることができる。物理ディスク、即ち、ディスクドライブ２２０の情報としては、例えば、ドライブタイプを挙げることができる。
【０１３８】
このように、各ストレージ装置１００，２００の構成情報Ｔｃ１，Ｔｃ２に基づいて、図１０に示すようなリザーブ情報管理テーブルＴｒを構成することができる。上述のように、このリザーブ情報管理テーブルＴｒには、仮想ボリューム１６３Ｖと実ボリューム２４０との接続構成に関する情報（マッピング情報）と、仮想ボリューム１６３Ｖ（即ち、その実体は実ボリューム２４０である）に設定されているコピーペア状態等の各種の状態とが含まれている。従って、このリザーブ情報管理テーブルＴｒを参照することにより、実ボリューム２４０を対象とする構成変更操作が、仮想ボリューム１６３Ｖとの接続構成に影響を与えるか否かを判別することができる。
【０１３９】
図１１〜図１３は、リザーブ情報管理テーブルＴｒの他の一例を示す説明図である。図１１〜図１３に示す各テーブルＴ９〜Ｔ１１は、上述したテーブルＴ５〜Ｔ８の内容をより具体的に示している。
【０１４０】
マッピングテーブルＴ９は、第１ストレージ装置１００で管理されている構成情報Ｔｃ１に基づいて、より詳しくは、構成情報Ｔｃ１の一部であるマッピングテーブルＴ１に基づいて生成することができる。
【０１４１】
マッピングテーブルＴ９は、例えば、メインストレージ（本実施例では、第１ストレージ装置１００）を識別するためのストレージ識別情報（ID）と、そのメインストレージに設定された仮想中間デバイスV−VOLを識別するためのVDEV番号と、そのメインストレージに接続される外部ストレージ（本実施例では、第２ストレージ装置２００）の識別情報と、V−VOLの容量及びデバイスタイプ（即ち、実ボリュームの容量及びデバイスタイプ）と、実ボリュームへアクセスするためのパス情報とを、それぞれ対応づけることにより、構成することができる。そして、パス情報には、例えば、外部ストレージのポート番号と、そのポートのWWNと、そのポートに接続されているLUNとを含めることができる。
【０１４２】
従って、このマッピングテーブルＴ９を参照することにより、メインストレージ内のどの仮想ボリュームが、いずれの外部ストレージの実ボリュームに対応付けられているか、どの経路を介してアクセス可能であるか等を把握することができる。
【０１４３】
図１２は、メインストレージ内のボリュームをホストに提供するためのVDEV-LDEV-LUN-HOST管理テーブルＴ１０（以下、内部ボリューム管理テーブルＴ１０）の一例を示す説明図である。この内部ボリューム管理テーブルＴ１０は、メインストレージ内の仮想ボリューム１６３Ｖに限らず、実ボリューム１６３も同時に管理することができる。この内部ボリューム管理テーブルＴ１０は、第１ストレージ装置１００の構成情報Ｔｃ１に基づいて生成することができる。
【０１４４】
内部ボリューム管理テーブルＴ１０は、例えば、メインストレージの識別情報と、そのメインストレージに設けられている各VDEV（V−VOLを含む）の番号と、そのVDEVに設定されている論理ボリューム（LDEV）の番号と、そのボリュームの容量と、そのボリュームの属性（エミュレーションタイプ及びペア状態）と、そのボリュームをホスト１０に提供するためのパス情報等を対応づけることにより、構成することができる。
【０１４５】
ここで、ボリューム属性中の「ペア状態」とは、そのボリュームに設定されているコピーペアの状態を示す。「ノーマル」状態は、そのボリュームにコピーペアが設定されていない状態を示す。「ペア」状態は、そのボリュームにコピーペアが設定されている状態を示す。より詳しくは、コピーペア状態としては、例えば、「ペア形成（Paircreate）」、「ペア分割（Pairsplit）」、「再同期（Resync）」等を挙げることができる。「ペア形成」ステータスは、コピー元ボリュームからコピー先ボリュームへ初期コピー（全コピー）を行って、コピーペアを形成する状態である。「ペア分割」ステータスは、コピーペアを強制的に同期させた後、コピー元ボリュームとコピー先ボリュームとを切り離す状態である。「再同期」ステータスは、コピー元ボリュームとコピー先ボリュームとを切り離した状態から、両者の記憶内容を再び同期させてコピーペアを形成する状態である。
【０１４６】
内部ボリューム管理テーブルＴ１０中のパス情報は、そのボリュームを利用するホストへのパス情報である。従って、このパス情報は、例えば、そのボリュームが接続されているターゲットポートの番号と、そのボリュームを利用するホスト１０が所属するホストグループの番号と、そのターゲットポートのWWNと、そのボリュームに割り当てられているLUN等を備えて構成することができる。
【０１４７】
図１３は、外部ストレージに設けられている外部ボリュームの構成を管理するための外部ボリューム管理テーブルＴ１１の一例を示す説明図である。この外部ボリューム管理テーブルＴ１１は、第２ストレージ装置２００の構成情報Ｔｃ２に基づいて生成することができる。
【０１４８】
外部ボリューム管理テーブルＴ１１は、例えば、外部ストレージを識別するための識別情報と、この外部ストレージに設けられている各ディスクアレイグループの情報（ディスクアレイグループ番号及びRAIDタイプ）と、そのディスクアレイグループに設定されたボリューム（LDEV）の番号と、そのボリュームの容量及び属性と、そのボリュームをメインストレージに接続するためのパス情報等をそれぞれ対応付けることにより、構成することができる。
【０１４９】
ここで、RAIDタイプとしては、例えば、複数のディスクの記憶領域を単純に統合するRAID０、同一データを別々のディスクにそれぞれ書き込むRAID１（ミラーリング）、「３Ｄ＋１Ｐ」等のように各データのパリティ計算を行い、これら各データ及びパリティを別々のディスクに分散して記憶させるRAID５、これらの組合せ（RAID１＋０等）とが知られている。
【０１５０】
次に、ストレージシステムの動作について、図１４〜図２２に基づいて説明する。図１４は、構成管理の全体的な動作を示すメインフローチャートである。最初に、構成管理の全体動作について説明し、次に、メイン処理中の主要なサブ処理について、別図と共に後述する。
【０１５１】
例えば、ユーザは、管理端末３０を介して管理サーバ２０にログインし、管理画面を呼び出して、所望の構成変更操作を入力する。ユーザが構成変更操作を行う際に、メイン処理が実行される。
【０１５２】
まず、管理サーバ２０は、レポジトリ２３で管理されているリザーブ情報管理テーブルＴｒを取得する（Ｓ４１）。リザーブ情報管理テーブルＴｒの生成方法については後述するが、第１ストレージ装置１００へのディスカバリ処理を実行する際に、リザーブ情報管理テーブルＴｒを生成することができる。
【０１５３】
管理サーバ２０は、ユーザから入力された構成変更操作に基づいて、操作対象のストレージがメインストレージであるか否かを判定する（Ｓ４２）。ユーザがメインストレージの構成変更を希望している場合（S42：YES）、管理サーバ２０は、ユーザの希望する構成変更操作に仮想ボリューム１６３Ｖの操作（生成や削除）が含まれているか否かを判定する（Ｓ４３）。
【０１５４】
仮想ボリューム１６３Ｖの操作が含まれている場合（S43：YES）、管理サーバ２０は、外部接続の設定が必要であるか否かを判定する（Ｓ４４）。即ち、操作対象である仮想ボリューム１６３Ｖとこの仮想ボリューム１６３Ｖに対応付けられる実ボリューム２４０とを接続するアクセスパスの設定変更を行うか否かを判定する。
【０１５５】
外部接続の設定が必要である場合（S44：YES）、管理サーバ２０は、ボリュームの追加または変更が必要であるか否かを判定する（Ｓ４５）。ボリュームの追加または変更が必要な場合（S45：YES）、管理サーバ２０は、外部ストレージの設定処理（Ｓ４６）と、外部接続ポートの設定処理（Ｓ４７）と、仮想ボリュームのマッピング処理（Ｓ４８）と、仮想ボリュームへの設定操作処理（Ｓ４９）とを、それぞれ実行し、リザーブ情報管理テーブルＴｒを更新して保存する（Ｓ５０）。なお、外部接続の設定が不要な場合（S44：NO）、管理サーバ２０は、Ｓ４５〜Ｓ４７をスキップしてＳ４８に移る。
【０１５６】
上記のサブ処理Ｓ４６〜Ｓ４９については、さらに後述する。外部ストレージの設定処理の詳細は、図１５及び図１６と共に述べる。外部接続ポートの設定処理の詳細は、図１７と共に述べる。仮想ボリュームのマッピング処理の詳細は、図１８と共に述べる。仮想ボリュームに対する設定操作処理の詳細は、図１９及び図２０と共に述べる。
【０１５７】
これに対し、ユーザから要求された構成変更操作がボリュームの追加または変更を伴わない場合は（S45：NO）、仮想ボリューム１６３Ｖと実ボリューム２４０との連携解除がユーザから要求されている場合である。
【０１５８】
そこで、管理サーバ２０は、ユーザにより指定された仮想ボリューム１６３Ｖを削除し（Ｓ５１）、その削除された仮想ボリューム１６３Ｖと実ボリューム２４０とのマッピング設定を削除する（Ｓ５２）。続いて、管理サーバ２０は、削除した仮想ボリューム１６３Ｖに関連付けられていた外部接続ポートの設定を削除し（Ｓ５３）、削除した仮想ボリューム１６３Ｖに関連付けられた外部ストレージの設定を削除する（Ｓ５４）。
【０１５９】
ところで、ユーザから要求された構成変更操作の対象となるストレージがメインストレージではない場合（S42：NO）、管理サーバ２０は、対象のストレージが外部ストレージであるか否かを判定する（Ｓ５５）。
【０１６０】
構成変更操作の対象となるストレージが外部ストレージである場合（S55：YES）、管理サーバ２０は、外部ストレージの設定抑止処理を行う（Ｓ５６）。この外部ストレージの設定抑止処理の詳細は、図２１と共に述べるが、仮想ボリューム１６３Ｖと実ボリューム２４０との連携に影響を与えない範囲内で、構成変更が許可される。
【０１６１】
構成変更操作の対象となるストレージが外部ストレージでもない場合は（S55：NO）、外部接続に使用されないストレージ装置への通常の構成変更操作が要求されている場合であるから、管理サーバ２０は、従来の設定操作を行う（Ｓ５７）。即ち、この外部接続に関連しない通常の設定操作としては、ボリュームの作成及び削除、ポートの割当て、ボリュームの統合、LUNマッピング等を挙げることができる。
【０１６２】
一方、ユーザの希望する構成変更操作の対象がメインストレージであって（S42：YES）、仮想ボリューム１６３Ｖの操作を含まない場合は（S43：NO）、メインストレージ内に実ボリューム１６３を生成または削除等する場合である。そこで、管理サーバ２０は、従来のボリューム設定操作を実行する（Ｓ５８）。
【０１６３】
Ｓ５６〜Ｓ５８でストレージシステムの構成が変更された場合、これらの構成変更は、リザーブ情報管理テーブルＴｒに反映されて保存される（Ｓ５０）。従って、リザーブ情報管理テーブルＴｒには、管理サーバ２０を介して実行された各構成変更の内容に基づいて随時更新され、最新の情報を保持できるようになっている。
【０１６４】
図１５，図１６に基づいて、外部ストレージの設定処理を説明する。この処理は、メイン処理中のＳ４６に相当する。まず、管理サーバ２０は、外部ストレージの設定が要求されているか否かを確認的に判定する（Ｓ６１）。外部ストレージの設定が要求されていない場合は、図１４に示すメイン処理にリターンする。
【０１６５】
外部ストレージの設定が要求されている場合（S61：YES）、管理サーバ２０は、構成変更が要求されている外部ストレージが、自己の管理下に置かれた外部ストレージであるか否かを判定する（Ｓ６２）。管理サーバ２０の管理対象以外の外部ストレージに対する構成変更が要求されている場合（S62：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ６３）。
【０１６６】
管理サーバ２０の管理下にある外部ストレージへの構成変更が要求されている場合（S62：YES）、管理サーバ２０は、ボリュームの作成がユーザから指示されているか否かを判定する（Ｓ６４）。ボリューム作成が指示されている場合（S64：YES）、管理サーバ２０は、例えば、第２ストレージ装置２００のコントローラ２１０に要求することにより、外部ストレージ内にボリュームを生成させる（Ｓ６５）。外部ストレージにボリュームを作成できなかった場合（S66：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ６７）。
【０１６７】
ボリュームを作成できた場合（S66：YES）、管理サーバ２０は、LUNマッピングの設定が指示されているか否かを判定する（Ｓ６８）。LUNマッピングとは、ボリューム（LUN）をポートに関連付ける処理を意味する。LUNマッピングが指示されている場合（S68：YES）、抑止条件の監査が実行される（Ｓ６９）。抑止条件の監査処理については、図１６と共に後述するが、この監査処理では、Ｓ６５で生成されたボリュームをポートに割り付けることが許可されるか否かを判定する。
【０１６８】
監査結果が「不可」の場合、つまり、後述の監査フラグに「FALSE」が設定されている場合（S70：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ７１）。逆に、監査結果が「可」の場合、つまり、監査フラグに「TRUE」が設定されている場合（S70：YES）、管理サーバ２０は、構成変更の対象である通信ポートにLUNを割当て（Ｓ７２）、LUNの割当てが成功したか否かを判定する（Ｓ７３）。
【０１６９】
ポートへのLUN割当てが失敗した場合（S73：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ７４）。ポートへのLUN割当てが成功した場合（S73：YES）、管理サーバ２０は、リザーブ情報管理テーブルＴｒを更新して保存する（Ｓ７５）。本処理を終了すると、メイン処理に戻る。
【０１７０】
図１６は、図１５中のＳ６９として示された抑止条件の監査処理を示すフローチャートである。まず、管理サーバ２０は、監査フラグ（Auditフラグ）に「FALSE」をセットし（Ｓ８１）、以下に述べるような複数の抑止条件についてそれぞれ検査し、全ての抑止条件をクリアした場合にのみ、監査フラグに「TRUE」をセットして、図１５に示す外部ストレージ設定処理に戻るようになっている。
【０１７１】
まず最初に、管理サーバ２０は、対象のボリュームが未フォーマットであるか否かを判定する（Ｓ８２）。未フォーマットの場合（S82：YES）、そのボリュームを外部接続用のポートに割り当てたところで使用することはできない。従って、管理サーバ２０は、監査フラグの内容を変更することなく、「FALSE」の値のままで図１５のフローチャートに返す（Ｓ８３）。
【０１７２】
これに対し、LUNマッピングの対象ボリュームがフォーマット済の場合（S82：NO）、管理サーバ２０は、その対象ボリュームが既に別のポートに割り当てられているか否かを判定する（Ｓ８４）。対象ボリュームが既に別のポートに割り当てられている場合（S84：YES）、そのボリュームは別の用途に使用されている場合なので、監査フラグの値を「FALSE」のままで図１５のフローチャートに返す（Ｓ８３）。
【０１７３】
対象ボリュームが他のポートに割り当てられていない場合（S84：NO）、管理サーバ２０は、その対象ボリュームがコピー先ボリューム（S-VOL）に設定されているか否かを判定する（Ｓ８５）。LUNマッピングの対象であるボリュームがコピー先ボリュームに設定されている場合（S85：YES）、そのボリュームの記憶内容は、コピー元ボリューム（P-VOL）の内容と一致させられる。従って、コピー先に設定されているボリュームをメインストレージの仮想ボリュームにマッピングすると、仮想ボリュームの記憶内容と一致しなくなる可能性がある。そこで、この場合（S85：YES）、管理サーバ２０は、監査フラグの値を「FALSE」にセットしたままで図１５のフローチャートに返す（Ｓ８３）。
【０１７４】
対象ボリュームがコピー先ボリュームに設定されていない場合（S85：NO）、そのボリュームを外部ストレージの外部接続用ポートに割り付けて、メインストレージの仮想ボリュームに関連付けて使用できる場合である。そこで、管理サーバ２０は、監査フラグの値を「TRUE」に変更し（Ｓ８６）、図１５に示すフローチャートに返す（Ｓ８３）。
【０１７５】
図１７は、図１４中のＳ４７で述べた外部接続用ポートの設定処理を示すフローチャートである。まず、管理サーバ２０は、構成変更操作の対象であるポートの属性を調べ、そのポートの属性が「External」であるか否か、つまり、その対象となっているポートが外部接続用のポートであるか否かを判定する（Ｓ９１）。対象ポートの属性が「External」の場合は、そのポートをそのまま外部接続用のポートとして使用できる場合なので、管理サーバ２０は、本処理を終了し、図１４に示すメイン処理に戻る。
【０１７６】
対象ポートの属性が「External」に設定されていない場合（S91：NO）、管理サーバ２０は、対象ポートに既にマッピングが設定がされて無いか否かを判定する（Ｓ９２）。その対象ポートに未だマッピングが設定されていない場合（S92：YES）、その対象ポートを使用可能なので、管理サーバ２０は、その未使用のポートの属性を「External」に変更し（Ｓ９３）、本処理を終了する。
【０１７７】
対象ポートに既にマッピングが設定されている場合（S92：NO）、管理サーバ２０は、既存のマッピング設定を上書きしても良いか否かを管理端末３０に問合せ（Ｓ９４）、ユーザによる上書きの許可を待つ（Ｓ９５）。そして、ユーザが既存設定の上書きを許可した場合（S95：YES）、管理サーバ２０は、その対象ポートの属性を「External」に変更し（Ｓ９３）、本処理を終了する。これに対し、その対象ポートに既に設定されているマッピングの上書きをユーザが許可しない場合（S95：NO）、その対象ポートを用いて仮想ボリュームと実ボリュームとを接続させることができないため、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ９６）。
【０１７８】
図１８は、図１４中のＳ４８で述べた仮想ボリュームのマッピング処理を示すフローチャートである。まず、管理サーバ２０は、仮想ボリュームのマッピング処理を行うか否かを確認する（Ｓ１０１）。仮想ボリュームのマッピング処理を行わない場合（S101：NO）、管理サーバ２０は、本処理を終了して、図１４に示すメイン処理に戻る。
【０１７９】
仮想ボリュームのマッピング処理を開始する場合（S101：YES）、管理サーバ２０は、外部接続用のポートからディスカバリ処理を実施する（Ｓ１０２）。このディスカバリ処理では、その外部接続用ポートに接続されているボリュームを発見する。
【０１８０】
管理サーバ２０は、発見されたボリュームが既にマッピングされているか否かを判定する（Ｓ１０３）。そのボリュームが既にマッピングされている場合（S103：YES）、管理サーバ２０は、リザーブ情報管理テーブルＴｒを更新して（Ｓ１０４）、図１４に示すメイン処理に戻る。
【０１８１】
発見されたボリュームが未だマッピングされていない場合（S103：NO）、管理サーバ２０は、そのボリュームに外部接続グループ番号を割当て（Ｓ１０５）、また、そのボリュームに仮想ボリューム番号を与える（Ｓ１０６）。さらに、管理サーバ２０は、そのボリュームにエミュレーションタイプを設定する（Ｓ１０７）。管理サーバ２０は、リザーブ情報管理テーブルＴｒを更新して（Ｓ１０４）、図１４に示すメイン処理に戻る。
【０１８２】
図１９及び図２０は、図１４中のＳ４９で述べた仮想ボリュームに対する設定操作処理を示すフローチャートである。まず、管理サーバ２０は、統合ボリュームの設定を行うか否かについて判定する（Ｓ１１１）。
【０１８３】
統合ボリュームの設定とは、一つのポートに複数のボリュームを割り当て、ボリュームサイズを拡張する処理（見かけ上のLUN数を減少させる処理）である。即ち、ホスト１０からは、大容量の単一ボリュームが形成されたかのように認識される。従って、仮想ボリュームに統合ボリュームを設定すると、その仮想ボリュームのサイズは、統合された複数の実ボリュームの各サイズの合計値となり、大容量となる。統合ボリュームの設定を行わない場合（S111：NO）、結合子を介して図２０に示す処理に移行する。
【０１８４】
統合ボリュームの設定を行う場合（S111：YES）、管理サーバ２０は、統合ボリュームの作成または更新を行うか否かを判定する（Ｓ１１２）。統合ボリュームの作成でも更新でも無い場合（S112：NO）、即ち、統合ボリュームの削除が要求されている場合、管理サーバ２０は、統合ボリュームを解除する（Ｓ１１３）。
【０１８５】
統合ボリュームの作成または更新が要求されている場合（S112：YES）、管理サーバ２０は、仮想ボリュームに対応付けられている物理ドライブ（本実施例では、第２ストレージ装置２００のディスクドライブ２２０である）に関する情報を、リザーブ情報管理テーブルＴｒから取得する（Ｓ１１４）。
【０１８６】
管理サーバ２０は、その仮想ボリュームが立脚する物理ディスクが高信頼性ドライブであるか否かを判定する（Ｓ１１５）。高信頼性ドライブとは、例えば、FC（Fibre Channel）ドライブのように、長時間の安定した使用が可能なドライブを意味する。その物理ドライブが高信頼性ドライブの場合（S115：YES）、管理サーバ２０は、統合ボリュームを設定する（Ｓ１１６）。管理サーバ２０は、統合ボリュームを設定した後、リザーブ情報管理テーブルＴｒを更新し、図２０に示す処理に移行する。
【０１８７】
これに対し、例えば、SATAディスク等のように、その物理ドライブが高信頼性ドライブではない場合（S115：NO）、管理サーバ２０は、この物理ドライブを用いて統合ボリュームを設定するか否かをユーザに問い合わせる（Ｓ１１８）。この問合せは、例えば、管理端末３０の端末画面を介して行うことができる。ユーザが、その高信頼性を有さない物理ドライブを用いた統合ボリュームの生成を許可する場合（S118：YES）、管理サーバ２０は、統合ボリュームの設定を行い（Ｓ１１６）、リザーブ情報管理テーブルＴｒを更新して（Ｓ１１７）、図２０に示す処理に移行する。ユーザが、高信頼性を有さない物理ドライブを用いた統合ボリュームを拒否する場合（S118：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ１１９）。
【０１８８】
このように、本処理では、統合ボリュームを設定する際に、優先的に、高信頼性の記憶領域上に統合ボリュームを生成する。また、高信頼性を有さない記憶領域であっても、ユーザが承認する場合は、統合ボリュームを生成する。
【０１８９】
図２０は、図１９に続くフローチャートである。次に、管理サーバ２０は、コピーペアを設定するか否かを判定する（Ｓ１２０）。コピーペアを設定しない場合（S120：NO）、後述のＳ１２９に移行する。コピーペアを設定する場合（S120：YES）、管理サーバ２０は、コピーペアの作成または更新が要求されているか否かを判定する（Ｓ１２１）。
【０１９０】
コピーペアの作成も更新も要求されていない場合は（S121：NO）、コピーペアの解除が要求されている場合である。そこで、管理サーバ２０は、要求されたコピーペアについて設定を解除する（Ｓ１２２）。
【０１９１】
これに対し、コピーペアの設定が要求されている場合（S121：YES）、管理サーバ２０は、仮想ボリュームにマッピングされる物理ドライブの情報を、リザーブ情報管理テーブルＴｒから取得し（Ｓ１２３）、そのドライブが高信頼性ドライブであるか否かを判定する（Ｓ１２４）。FCディスク等のような高信頼性ドライブである場合（S124：YES）、管理サーバ２０は、コピーペアを設定し（Ｓ１２５）、リザーブ情報管理テーブルＴｒを更新させる（Ｓ１２６）。
【０１９２】
一方、例えば、SATAディスク等のように、その物理ドライブが高信頼性を有さないドライブの場合（S124：NO）、管理サーバ２０は、管理端末３０を介して、その物理ドライブを用いてコピーペアを設定しても良いか否かをユーザに問い合わせる（Ｓ１２７）。ユーザが承認した場合（S127：YES）、管理サーバ２０は、コピーペアを設定し（Ｓ１２５）、リザーブ情報管理テーブルＴｒを更新させる（Ｓ１２６）。ユーザが承認しない場合（S127：NO）、管理サーバ２０は、管理端末３０にエラーを通知する（Ｓ１２８）。
【０１９３】
次に、管理サーバ２０は、LUNマッピングの設定が要求されているか否かを判定する（Ｓ１２９）。LUNマッピングの設定が要求されている場合（S129：YES）、管理サーバ２０は、LUNマッピングの設定を行い（Ｓ１３０）、リザーブ情報管理テーブルＴｒを更新させて（Ｓ１３１）、図１４に示すメイン処理に戻る。LUNマッピングの設定を行わない場合（S129：NO）、管理サーバ２０は、本処理を終了し、図１４に示すメイン処理に戻る。
【０１９４】
次に、図２１は、図１４中のＳ５６で述べた外部ストレージの設定抑止処理を示すフローチャートである。この処理は、以下に述べる通り、外部ストレージに対する構成変更操作が、所定の抑止条件をクリアしているか否かを判定し、抑止条件を全てクリアする場合にのみ、その構成変更操作を実施させるようになっている。
【０１９５】
まず、管理サーバ２０は、外部ストレージに対する構成変更操作の可否を判断するために、リザーブ情報管理テーブルＴｒを取得する（Ｓ１４１）。次に、管理サーバ２０は、通信ポートの設定操作（設定変更）が要求されているか否かを判定する（Ｓ１４２）。ポートの設定操作を行う場合（S142：YES）、管理サーバ２０は、構成変更操作の対象であるポートが外部接続用に使用されているか否かを判定する（Ｓ１４３）。そのポートが外部接続用に使用されている場合（S143：YES）、管理サーバ２０は、ユーザから要求された構成変更操作が、そのポートの構成を変更しないか否かを判定する（Ｓ１４４）。
【０１９６】
ユーザから要求された構成変更操作が、そのポートの構成を変更するものである場合（S144：NO）、管理サーバ２０は、抑止条件に違反する操作である旨を管理端末３０に通知する（Ｓ１４５）。要求された構成変更操作が、そのポートの構成を変更しない場合（S144：YES）、Ｓ１４６に移行する。なお、前記Ｓ１４２またはＳ１４３のいずれかで「NO」と判定された場合は、直ちにＳ１４６に移行する。
【０１９７】
次に、管理サーバ２０は、ユーザから外部ストレージの設定操作が要求されているか否かを判定する（Ｓ１４６）。外部ストレージの設定操作が要求されている場合（S146：YES）、管理サーバ２０は、その操作対象の外部ストレージが外部接続用に使用されているか否かを判定する（Ｓ１４７）。
【０１９８】
その外部ストレージが外部接続用に使用されている場合（S147：YES）、管理サーバ２０は、ユーザから要求された構成変更操作が、その外部ストレージの構成を変更しないか否かを判定する（Ｓ１４８）。要求された構成変更操作が、その外部ストレージの構成を変更させるものである場合（S148：NO）、管理サーバ２０は、その操作がLUNを追加する操作であるか否かを判定する（Ｓ１４９）。
【０１９９】
その操作がその外部ストレージにLUNを追加する操作ではない場合は（S149：NO）、ユーザから要求された構成変更操作が、LUNの変更や削除、あるいはWWNの追加や変更を行うものであるため（Ｓ１５０）、抑止条件に違反する操作である旨を管理端末３０に通知する（Ｓ１５１）。
【０２００】
これに対し、ユーザから要求された操作が、外部ストレージの構成を変更しない場合（S148：YES）、または、要求された操作がLUNを追加する操作である場合（S149：YES）、管理サーバ２０は、次の抑止条件の判定に移行する。なお、前記Ｓ１４６またはＳ１４７のいずれかで「NO」と判定された場合、直ちにＳ１５２に移行する。
【０２０１】
次に、管理サーバ２０は、ボリュームの設定操作が要求されているか否かを判定する（Ｓ１５２）。ボリュームの設定操作が要求されている場合（S152：YES）、操作対象のボリュームが外部接続用に使用されていないか否かを判定する（Ｓ１５３）。そのボリュームが外部接続用に使用されていない場合（S153：YES）、つまり、そのボリュームがメインストレージの仮想ボリュームにマッピングされていない場合は、メインストレージと外部ストレージとのボリューム連携に影響を及ぼさないので、そのボリュームへの操作を実施する（Ｓ１５４）。
【０２０２】
これに対し、操作対象のボリュームが外部接続用に使用されている場合（S153：NO）、管理サーバ２０は、その要求された操作が、そのボリュームの構成を変更させない操作か否かを判定する（Ｓ１５５）。ユーザから要求された構成変更操作が、外部接続されているボリュームの構成を変更しない場合（S155：YES）、管理サーバ２０は、そのボリュームに対して、ユーザから要求された操作を実施させる（Ｓ１５４）。
【０２０３】
一方、ユーザから要求された操作が、外部接続されているボリュームの構成を変更するものである場合（S155：NO）、管理サーバ２０は、要求された操作が抑止条件に違反する操作である旨を管理端末３０に通知する（Ｓ１５６）。
【０２０４】
このように、上述した本処理では、外部ストレージに対する操作が、メインストレージとの連携に影響する場合は、その実施を拒否してエラーを通知し、要求された操作がストレージ間の連携に影響しない場合は、その操作内容を実現させる。
【０２０５】
図２２は、リザーブ情報管理テーブルＴｒの更新処理を示すフローチャートである。一つの例として、ユーザがディスカバリ処理の実行を開始する際に、リザーブ情報管理テーブルＴｒを更新させることができる。
【０２０６】
ユーザは、管理端末３０を介して管理サーバ２０にログインし、ボリューム番号を指定して、メインストレージのディスカバリを指示する（Ｓ１６１）。この際、ユーザは、ストレージ間の依存関係の更新を行うか否かを併せて指定することができる。
【０２０７】
管理サーバ２０は、ユーザによってディスカバリ処理の実行を要求されると、ディスカバリ処理を開始する（Ｓ１６２）。そして、管理サーバ２０は、ディスカバリ処理を実行した結果、そのメインストレージに関連付けられた外部ストレージが検出されたか否かを判定する（Ｓ１６３）。
【０２０８】
メインストレージに関連付けられた外部ストレージが存在する場合（S163：YES）、即ち、そのメインストレージに外部接続された他のストレージが存在する場合、管理サーバ２０は、ユーザから依存関係の更新が要求されているか否かを判定する（Ｓ１６４）。
【０２０９】
ユーザがＳ１６１で依存関係の更新を要求している場合（S164：YES）、管理サーバ２０は、ディスカバリ処理によって検出された外部ストレージについて、ディスカバリ処理を実行する（Ｓ１６５）。このディスカバリ処理によって、その外部ストレージの構成を取得することができる。そして、管理サーバ２０は、取得した構成情報をリザーブ情報管理テーブルＴｒに登録して更新させ（Ｓ１６６）、ディスカバリの完了を管理端末３０に通知する（Ｓ１６７）。
【０２１０】
一方、ユーザがストレージ間の依存関係の更新を要求していない場合（S164：NO）、管理サーバ２０は、検出された外部ストレージが既にディスカバリ済であるか否かを判定する（Ｓ１６８）。既にディスカバリ済の外部ストレージである場合（S168：YES）、管理サーバ２０は、管理端末３０の端末画面に警告メッセージを表示させる（Ｓ１６９）。この警告メッセージは、例えば、「最後に実施されたディスカバリに基づいてリザーブ情報管理テーブルを更新します。よろしいですか」等の内容を含むことができる。管理サーバ２０は、警告メッセージを表示させた後、過去に行われた最後のディスカバリに基づいて、リザーブ情報管理テーブルＴｒを更新させ（Ｓ１６６）、処理完了を管理端末３０に通知する（Ｓ１６７）。
【０２１１】
これに対し、検出された外部ストレージが未だディスカバリされていない場合（S168：NO）、管理サーバ２０は、別の警告メッセージを管理端末３０の端末画面に表示させ（Ｓ１７０）、処理を終了する。この警告メッセージは、例えば、「ディスカバリが行われていないため、リザーブ情報管理テーブルを更新（生成）することができません。」等の内容を含むことができる。
【０２１２】
以上詳述した通り、本実施例によれば、外部のディスクドライブ２２０をV-VOLにマッピングすることにより、論理ボリューム２４０を第１ストレージ装置１００内の論理ボリュームであるかのように取り扱うことができる。従って、第２ストレージ装置２００の記憶資源を第１ストレージ装置１００に統合して有効に利用することができる。
【０２１３】
本実施例では、仮想ボリューム１６３Ｖと実ボリューム２４０との連携関係を維持するように、各ストレージ装置１００，２００に対して要求された構成変更操作の実施可否を判断し、ストレージ間の連携に影響を与えない操作のみを実施する。従って、ユーザの誤った操作によって、ストレージ間の連携が破壊されるのを未然に防止することができ、運用の安全性を高め、使い勝手を向上させることができる。
【０２１４】
本実施例では、ストレージ間の連携を論理的に破壊する操作に加えて、仮想ボリューム１６３Ｖと実ボリューム２４０との記憶内容に不整合を生じる操作についても、その実施を禁止するため、ストレージ間の連携を維持して正しく運用することができる。
【０２１５】
本実施例では、ストレージ間が連携している場合にのみ、その連携を維持するべく、所定の抑止条件に違反する操作の実施を禁止し、ストレージ間が連携していない場合は、抑止処理を行わない。つまり、仮想ボリューム１６３Ｖと実ボリューム２４０とが接続されている場合に、これらのボリュームに対する所定の操作は禁止するが、外部接続とは無関係のボリュームについては、その操作を許可する。従って、使い勝手を維持しながら、運用の信頼性を高めることができる。
【０２１６】
本実施例では、ストレージシステムに対して実施された操作の内容をリザーブ情報管理テーブルＴｒに反映させる構成を採用する。従って、各ストレージ装置１００，２００から構成情報Ｔｃ１，Ｔｃ２を毎回取得する手間をかけずに、ストレージシステムの最新の構成状態をリザーブ情報管理テーブルＴｒによって管理することができる。
【０２１７】
本実施例では、ディスカバリ処理の実行が指示された場合に、リザーブ情報管理テーブルＴｒを更新させる。また、本実施例では、ディスカバリ処理の実行に際して、ユーザがリザーブ情報管理テーブルＴｒの更新を明示した場合にのみ、リザーブ情報管理テーブルＴｒを更新させる。従って、ユーザの希望に応じて、リザーブ情報管理テーブルＴｒの更新を行うことができ、使い勝手が向上する。これに対し、ユーザの意向を確認せずに、自動的にリザーブ情報管理テーブルＴｒを更新させる場合は、この更新処理に長時間を要することがあり、ユーザに意図せぬ待ち時間を強いる可能性がある。但し、本発明は、リザーブ情報管理テーブルＴｒを自動的に更新する構成も含んでいる。
【実施例２】
【０２１８】
図２３，図２４に基づいて、本発明の第２実施例を説明する。本実施例を含む以下の実施例は、第１実施例の変形例に相当する。本実施例では、各ストレージ装置１００，２００にそれぞれ専用の管理サーバ２０，４０を設け、これら各管理サーバ２０，４０を連携させるようになっている。
【０２１９】
第１管理サーバ２０は、メインストレージである第１ストレージ装置１００の構成を管理するものである。第１管理サーバ２０の管理ソフトウェア２２は、構成管理部２２Ａ及びリザーブ情報提供部２２Ｄを備えている。なお、管理ソフトウェア２２は、図３中に示す構成設定部２２Ｃも備えているが、紙面の都合上割愛している。また、第１管理サーバ２０は、そのレポジトリ２３内でリザーブ情報管理テーブルＴｒを管理している。
【０２２０】
構成管理部２２Ａは、各ストレージ装置１００，２００からそれぞれの構成情報Ｔｃ１，Ｔｃ２を取得し、リザーブ情報管理テーブルＴｒを更新する。リザーブ情報提供部２２Ｄは、第２管理サーバ４０からの照会に応じて、リザーブ情報管理テーブルＴｒに登録されている情報を、第２管理サーバ４０に提供する。なお、このリザーブ情報の提供については、複数の方法が考えられる。一つの方法は、要求されたリザーブ情報をそのまま提供するものである。他の一つの方法は、要求されたリザーブ情報に基づいて実施の可否を判定し、その判定結果を提供するものである。いずれの方法を採用してもよい。
【０２２１】
第２管理サーバ４０は、外部ストレージである第２ストレージ装置２００の構成を管理するものである。第２管理サーバ４０の管理ソフトウェア４２は、リザーブ情報問合せ部４２Ａ及び構成設定部４２Ｂを備えている。リザーブ情報問合せ部４２Ａは、ユーザから要求された構成変更操作に対応するリザーブ情報について、第１管理サーバ２０に問い合わせるものである。構成設定部４２Ｂは、ユーザから要求された構成変更操作のうち、ストレージ間の連携に影響を与えない操作のみを実施するものである。
【０２２２】
図２４は、各管理サーバ２０，４０間の動作の概要を示すシーケンスフローチャートである。第２ストレージ装置２００の構成変更を希望するユーザは、管理端末３０を介して第２管理サーバ４０にログインし（Ｓ１８１）、操作内容を入力する（Ｓ１８２）。
【０２２３】
第２管理サーバ４０は、ユーザから要求された構成変更操作について、その実施可否を第１管理サーバ２０に問い合わせる（Ｓ１８３）。問合せを受けた第１管理サーバ２０は、リザーブ情報管理テーブルＴｒを参照し（Ｓ１８４）、その結果を第２管理サーバ４０に通知する（Ｓ１８５）。上述のように、実施の可否は、第１管理サーバ２０内で判断してもよいし、第１管理サーバ２０から第２管理サーバ４０に構成変更に関連するリザーブ情報のみを送信し、その実施可否は第２管理サーバ４０内で判定することもできる。
【０２２４】
第２管理サーバ４０は、ユーザから要求された操作を実施しても良いか否かを判定し、実施が禁止されている場合は、管理端末３０にエラーを通知する（Ｓ１８６）。これに対し、ユーザから要求された操作を実施可能な場合、第２管理サーバ４０は、第２ストレージ装置２００に構成変更の指示を発行する（Ｓ１８７）。
【０２２５】
この指示を受領した第２ストレージ装置２００のコントローラ２１０は、第２ストレージ装置２００内の構成を変更し（Ｓ１８８）、変更完了を第２管理サーバ４０に通知する（Ｓ１８９）。
【０２２６】
第２管理サーバ４０は、第２ストレージ装置２００の構成変更を確認すると、構成変更が完了した旨を管理端末３０に通知する（Ｓ１９０）。また、第２管理サーバ４０は、実施された構成変更の内容を第１管理サーバ２０に通知する（Ｓ１９１）。第２管理サーバ４０からの通知を受領した第１管理サーバ２０は、リザーブ情報管理テーブルＴｒを更新させる（Ｓ１９２）。なお、例えば、Ｓ１８３での問合せ時に、構成変更操作の内容を第１管理サーバ２０内で記憶しておけば、Ｓ１９１では、その実施が完了した旨だけを通知すれば足りる。
【０２２７】
このように、本実施例では、複数のストレージ装置１００，２００をそれぞれ管理する複数の管理サーバ２０，４０を連携させることにより、ストレージ装置間の連携を維持して正しい運用を行うことができる。
【実施例３】
【０２２８】
次に、図２５は、本発明の第３実施例に係るストレージシステムの全体構成を模式的に示す説明図である。本実施例では、第１ストレージ装置１００の有するコンピュータ資源（CPUやメモリ等）を利用して、管理サーバ２０Ａを第１ストレージ装置１００内に設けている。
【０２２９】
なお、本発明は、上述した各実施例に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、外部接続に使用されている実ボリュームを外部接続用のポートとは別のポートに割り当てる操作を禁止した。しかし、これに限らず、例えば、そのボリュームを別のポートに割り当てる場合でも、そのポートを介するアクセスをリードオンリーに設定する場合は、記憶内容に不整合を生じないため、その操作を許可することもできる。
【図面の簡単な説明】
【０２３０】
【図１】本発明の実施例に係わるストレージシステムの全体構成を示すブロック図である。
【図２】ストレージシステムのブロック図である。
【図３】ストレージシステムの記憶構造を模式的に示す説明図である。
【図４】ストレージシステムの機能構成の概略を示す説明図である。
【図５】マッピングテーブルの構成例を示す説明図である。
【図６】仮想ボリュームとして取り込まれた外部ボリュームにデータを書き込む場合のアドレス変換の様子を示す説明図である。
【図７】アクセス属性管理テーブルの構成例を示す説明図である。
【図８】仮想ボリュームとして使用される外部の記憶デバイスにデータを書き込む場合の概念図である。
【図９】仮想ボリュームとして使用される外部の記憶デバイスからデータを読み出す場合の概念図である。
【図１０】リザーブ情報管理テーブルの一例を示す説明図である。
【図１１】リザーブ情報管理テーブルの一部を構成するマッピングテーブルの構成を示す説明図である。
【図１２】リザーブ情報管理テーブルの一部を構成する内部ボリューム管理テーブルの構成を示す説明図である。
【図１３】リザーブ情報管理テーブルの一部を構成する外部ボリューム管理テーブルの構成を示す説明図である。
【図１４】メイン処理を示すフローチャートである。
【図１５】外部ストレージの設定処理を示すフローチャートである。
【図１６】抑止条件の監査処理を示すフローチャートである。
【図１７】外部接続ポートの設定処理を示すフローチャートである。
【図１８】仮想ボリュームのマッピング処理を示すフローチャートである。
【図１９】仮想ボリュームの設定操作処理を示すフローチャートである。
【図２０】図１９に続くフローチャートである。
【図２１】外部ストレージの設定抑止処理を示すフローチャートである。
【図２２】リザーブ情報更新処理を示すフローチャートである。
【図２３】第２実施例に係るストレージシステムの全体構成を模式的に示す説明図である。
【図２４】各管理サーバ間の連携処理を示すシーケンスフローチャートである。
【図２５】第３実施例に係るストレージシステムの全体構成を模式的に示す説明図である。
【符号の説明】
【０２３１】
１，２…ストレージ装置、１Ａ，２Ａ１，２Ａ２…実ボリューム、１Ｂ１，１Ｂ２…仮想ボリューム、１Ｃ，２Ｃ…制御部、１Ｄ，２Ｄ…構成情報、１Ｅ，２Ｅ…外部接続用ポート、１Ｆ，２Ｆ…通信ポート、３…管理サーバ、３Ａ…構成設定部、３Ｂ…構成管理部、３Ｃ…判定部、３Ｄ…構成情報記憶部、４…管理端末、５…ホスト、６Ａ〜６Ｃ…通信ネットワーク、１０Ａ，１０Ｂ…ホスト、１１Ａ，１１Ｂ…HBA、１２Ａ，１２Ｂ…アプリケーションプログラム、２０，２０Ａ，４０…管理サーバ、２１，４１…ポート、２２，４２…管理ソフトウェア、２２Ａ…構成管理部、２２Ｂ…判定部、２２Ｃ…構成設定部、２２Ｄ…リザーブ情報提供部、２３…レポジトリ、３０…管理端末、３１…ポート、３２…ユーザインターフェース、４２Ａ…リザーブ情報問合せ部、４２Ｂ…構成設定部、１００…第１ストレージ装置（メインストレージ）、１０１…コントローラ、１１０…チャネルアダプタ（CHA）、１１１Ａ…ターゲットポート、１１１Ｂ…外部接続用ポート、１２０…ディスクアダプタ（DKA）、１３０…キャッシュメモリ、１４０…共有メモリ、１５０…接続制御部、１６０…記憶部、１６１…ディスクドライブ（PDEV）、１６３…内部ボリューム（LDEV）、１６３Ｖ…仮想ボリューム、２００…第２ストレージ装置（外部ストレージ）、２１０…コントローラ、２１１…通信ポート、２２０…ディスクドライブ、２４０…論理ボリューム（LDEV）、Ｔｃ１，Ｔｃ２…構成情報、Ｔｒ…リザーブ情報管理テーブル
【図１】
2006134021.tif 000003
【図２】
2006134021.tif 000004
【図３】
2006134021.tif 000005
【図４】
2006134021.tif 000006
【図５】
2006134021.tif 000007
【図６】
2006134021.tif 000008
【図７】
2006134021.tif 000009
【図８】
2006134021.tif 000010
【図９】
2006134021.tif 000011
【図１０】
2006134021.tif 000012
【図１１】
2006134021.tif 000013
【図１２】
2006134021.tif 000014
【図１３】
2006134021.tif 000015
【図１４】
2006134021.tif 000016
【図１５】
2006134021.tif 000017
【図１６】
2006134021.tif 000018
【図１７】
2006134021.tif 000019
【図１８】
2006134021.tif 000020
【図１９】
2006134021.tif 000021
【図２０】
2006134021.tif 000022
【図２１】
2006134021.tif 000023
【図２２】
2006134021.tif 000024
【図２３】
2006134021.tif 000025
【図２４】
2006134021.tif 000026
【図２５】
2006134021.tif 000027