(57)【要約】      （修正有）【課題】それぞれ異なる記憶制御装置内に存在する別々の論理デバイスから一つの仮想論理デバイスを生成し、かつ、仮想論理デバイスの全部または一部を別の論理デバイスにリモートコピーできるようにしたストレージシステムを提供する。【解決手段】第１ストレージ装置１のボリューム１Ａと第２ストレージ装置２のボリューム２Ａとには、それぞれ同一の仮想識別子が設定される。ホスト５のパス制御部５Ｂは、同一の仮想識別子を有するボリューム１Ａ，２Ａを一つの仮想ボリューム６として認識する。仮想ボリューム６と第３ストレージ装置３のボリューム３Ａとでリモートコピーペアを設定することもできる。仮想ボリュームの設定及びリモートコピーの設定は、管理サーバ４からの指示で行うことができる。【選択図】図１
2009093316.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータと、このホストコンピュータにより利用される複数の記憶制御装置とを備えるストレージシステムであって、
前記各記憶制御装置のうち指定される第１記憶制御装置に属する第１論理デバイスと前記各記憶制御装置のうち指定される第２記憶制御装置に属する第２論理デバイスとをペアに設定することにより、前記第１論理デバイス及び前記第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスを前記ホストコンピュータに提供する仮想化設定部であって、前記仮想論理デバイスに設定される仮想識別子を前記第１論理デバイス及び前記第２論理デバイスにそれぞれ設定させる仮想化設定部と、
前記各記憶制御装置のうち指定される他の記憶制御装置に属する他の論理デバイスと前記仮想論理デバイスの全部または一部とをリモートコピーペアに設定するリモートコピー設定部と、
を備えるストレージシステム。
【請求項２】
前記ホストコンピュータは、前記仮想識別子が設定される前記第１論理デバイスへアクセスするための第１アクセス経路と、前記仮想識別子が設定される前記第２論理デバイスへアクセスするための第２アクセス経路とを切り替えるための交替パス制御部を備えている請求項１に記載のストレージシステム。
【請求項３】
前記仮想化設定部は、前記仮想論理デバイスを構成する前記ペアに関する第１管理情報を、前記第１記憶制御装置及び前記第２記憶制御装置の両方にそれぞれ記憶させることにより、前記第１論理デバイス及び前記第２論理デバイスに前記仮想識別子をそれぞれ設定させる請求項２に記載のストレージシステム。
【請求項４】
前記仮想化設定部は、前記第１管理情報を前記第１記憶制御装置または前記第２記憶制御装置のいずれか一方にのみ送信し、前記第１記憶制御装置または前記第２記憶制御装置のうち前記仮想化設定部から前記第１管理情報を受信した一方の記憶制御装置は、他方の記憶制御装置に前記第１管理情報を送信して記憶させる請求項３に記載のストレージシステム。
【請求項５】
前記ペアを形成する前記第１論理デバイス及び前記第２論理デバイスとの間で、プライマリデバイス及びセカンダリデバイスを切替可能である請求項３に記載のストレージシステム。
【請求項６】
前記ホストコンピュータが前記仮想論理デバイスの記憶内容を更新させる場合、（１）前記ホストコンピュータは、前記第１論理デバイスまたは前記第２論理デバイスのうち前記ペアのプライマリデバイスとなる論理デバイスにライトコマンド及びライトデータを送信し、前記プライマリデバイスとなる一方の論理デバイスは、（2-1）前記ライトデータを自分自身に書き込んだ後で、（2-2）前記第１論理デバイスまたは前記第２論理デバイスのうち前記ペアのセカンダリデバイスとなる他方の論理デバイスに前記ライトデータを転送し、（2-3）前記他方の論理デバイスに前記ライトデータが書き込まれたことを確認してから、前記ホストコンピュータに前記ライトコマンドの処理が完了した旨を通知する請求項３に記載のストレージシステム。
【請求項７】
前記第１論理デバイスが前記ペアにおけるプライマリデバイスであり、前記第１アクセス経路が前記仮想論理デバイスのプライマリアクセス経路である場合において、前記ホストコンピュータは、前記第１アクセス経路を用いて前記第１論理デバイスにアクセスできない場合、前記第２アクセス経路を用いて前記第２論理デバイスにアクセスし、
前記第２論理デバイスは、前記ホストコンピュータからアクセスされた場合、前記第１論理デバイスの属性を前記プライマリデバイスからセカンダリデバイスに変更させ、かつ、前記第２論理デバイスの属性を前記セカンダリデバイスから前記プライマリデバイスに変更する請求項３に記載のストレージシステム。
【請求項８】
前記仮想識別子は、前記第１論理デバイスの所在に関する情報と前記第２論理デバイスの所在に関する情報とに基づいて生成される請求項１に記載のストレージシステム。
【請求項９】
前記仮想化設定部は、前記各記憶制御装置の有する論理デバイスに関する情報を収集して前記各論理デバイスの一覧を画面に表示させ、この画面に表示された各論理デバイスの中から前記仮想論理デバイスを構成する前記第１論理デバイス及び前記第２論理デバイスを、ユーザによってそれぞれ指定させる請求項１に記載のストレージシステム。
【請求項１０】
前記リモートコピー設定部は、前記他の論理デバイスをリモートコピー先デバイスまたはリモートコピー元デバイスのいずれかに設定し、前記仮想論理デバイスを前記リモートコピー元デバイスまたは前記リモートコピー先デバイスのいずれかに設定することにより、前記リモートコピーペアを生成する請求項１に記載のストレージシステム。
【請求項１１】
前記他の論理デバイスは、前記他の記憶制御装置の有する論理デバイス、または、前記各記憶制御装置のうち前記第１記憶制御装置及び前記第２記憶制御装置以外の別の複数の記憶制御装置がそれぞれ有する論理デバイスから形成される別の仮想論理デバイス、として構成される請求項１に記載のストレージシステム。
【請求項１２】
前記リモートコピー設定部は、前記ペアが解消される場合、前記仮想論理デバイスを構成する前記第１論理デバイスまたは前記第２論理デバイスのうち、いずれか一方の論理デバイスと前記他の論理デバイスとの間で前記リモートコピーペアを継続させる請求項１に記載のストレージシステム。
【請求項１３】
前記リモートコピー設定部は、（１）前記ペアが解消される場合、前記仮想論理デバイスを構成する前記第１論理デバイスまたは前記第２論理デバイスのうち、ユーザにより選択される論理デバイスと前記他の論理デバイスとの間で前記リモートコピーペアを継続させることが可能か否かを判定し、（２）前記リモートコピーペアの継続が可能と判断した場合は前記ペアを解消させ、（３）前記リモートコピーペアの継続が不能と判断した場合は、ユーザに警告する請求項１に記載のストレージシステム。
【請求項１４】
前記リモートコピー設定部は、前記仮想論理デバイスを構成する前記第１論理デバイスまたは前記第２論理デバイスのいずれか一方と前記他の論理デバイスとを、前記仮想論理デバイスとは無関係のリモートコピーペアとして設定可能である請求項１に記載のストレージシステム。
【請求項１５】
前記第１論理デバイスまたは前記第２論理デバイスのうち少なくともいずれか一方の論理デバイスは、この一方の論理デバイスの属する記憶制御装置内に、他の記憶制御装置の有する論理デバイスを仮想的に取り込むことにより生成される請求項１に記載のストレージシステム。
【請求項１６】
前記第１論理デバイス及び前記第２論理デバイスの両方は、前記第１記憶制御装置及び前記第２記憶制御装置以外の他の記憶制御装置の有する共通の論理デバイスを、前記第１記憶制御装置内及び前記第２記憶制御装置内にそれぞれ仮想的に取り込むことにより生成される請求項１に記載のストレージシステム。
【請求項１７】
前記仮想化設定部は、前記仮想論理デバイスを削除する場合に、前記仮想識別子を前記第１論理デバイスまたは前記第２論理デバイスのいずれか一方に引き継がせる請求項１に記載のストレージシステム。
【請求項１８】
ホストコンピュータと、ホストコンピュータにより利用される複数の記憶制御装置と、前記ホストコンピュータ及び前記各記憶制御装置に接続される管理装置とを備えるストレージシステムであって、
前記複数の記憶制御装置には、第１記憶制御装置、第２記憶制御装置及び第３記憶制御装置が含まれており、
前記第１記憶制御装置は第１通信経路に設定される第１アクセス経路を介して前記ホストコンピュータに接続され、第２記憶制御装置は前記第１通信経路に設定される第２アクセス経路を介して前記ホストコンピュータに接続されており、
前記第１記憶制御装置または／及び前記第２記憶制御装置と、前記第３記憶制御装置とは、第２通信経路を介して接続されており、
前記ホストコンピュータ、前記第１記憶制御装置、前記第２記憶制御装置及び前記第３記憶制御装置は、第３通信経路を介して前記管理装置に接続されており、かつ、
（１）前記各記憶制御装置は、前記ホストコンピュータまたは他の記憶制御装置と通信するための第１通信制御部と、一つまたは複数の記憶デバイスから構成される論理デバイスと通信するための第２通信制御部と、前記第１通信制御部及び前記第２通信制御部より利用されるメモリ部とを備えており、
（２）前記管理装置は、
（2-1）前記各記憶制御装置のうち指定される第１記憶制御装置に属する第１論理デバイスと前記各記憶制御装置のうち指定される第２記憶制御装置に属する第２論理デバイスとをペアに設定することにより、前記第１論理デバイス及び前記第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスを前記ホストコンピュータに提供する仮想化設定部であって、前記仮想論理デバイスに設定される仮想識別子を前記第１論理デバイス及び前記第２論理デバイスにそれぞれ設定させる仮想化設定部と、
（2-2）前記各記憶制御装置のうち指定される前記第３記憶制御装置に属する第３論理デバイスと前記仮想論理デバイスの全部または一部とをリモートコピーペアに設定するリモートコピー設定部と、を備えており、
（３）前記ホストコンピュータは、前記第１アクセス経路と前記第２アクセス経路とを切り替えるための交替パス制御部を備えている、ストレージシステム。
【請求項１９】
複数の記憶制御装置にそれぞれ分散される論理デバイスを仮想化してホストコンピュータに提供するための仮想化方法であって、
管理装置が、前記各記憶制御装置の構成に関する情報を前記各記憶制御装置からそれぞれ収集するステップと、
前記管理装置が、前記各記憶制御装置の構成に関する情報に基づいて、ペアを形成するプライマリの論理デバイスとセカンダリの論理デバイスとを、それぞれ異なる記憶制御装置の中からユーザに指定させるステップと、
前記管理装置が、前記プライマリの論理デバイス及び前記セカンダリの論理デバイスに関する情報と仮想識別子とを含む第１管理情報を生成するステップと、
前記管理装置が、前記ペアに関わる前記各記憶制御装置のうちいずれか一方の記憶制御装置に、前記第１管理情報を送信させるステップと、
前記一方の記憶装置が、前記受信した第１管理情報を自分自身に設定すると共に、前記ペアに関わる前記各記憶制御装置のうち他方の記憶制御装置に前記第１管理情報を送信して設定させるステップと、
前記ペアに関わる前記各記憶制御装置が、前記プライマリの論理デバイスの記憶内容と前記セカンダリの論理デバイスの記憶内容とを一致させるステップと、
前記管理装置が、前記ホストコンピュータに対して論理デバイスの認識を要求するステップと、
前記ホストコンピュータが、前記管理装置からの要求に応じて、前記各記憶制御装置の有する論理デバイスに関する情報をそれぞれ取得するステップと、
前記ホストコンピュータが、前記取得された各論理デバイスのうち前記仮想識別子が設定されている前記プライマリの論理デバイス及び前記セカンダリの論理デバイスをそれぞれ検出し、これら同一の仮想識別子を有する前記プライマリの論理デバイス及び前記セカンダリの論理デバイスを一つの仮想論理デバイスとして認識するステップと、
前記ホストコンピュータによって、前記仮想論理デバイスを構成する前記プライマリの論理デバイスの記憶内容が変更された場合には、前記セカンダリの論理デバイスの記憶内容も変更させるステップと、
前記管理装置が、前記各記憶制御装置の構成に関する情報に基づいて、リモートコピーペアを形成するリモートコピー元の論理デバイスとリモートコピー先の論理デバイスとの少なくともいずれか一方が前記仮想論理デバイスとなるように、前記リモートコピー元の論理デバイス及び前記リモートコピー先の論理デバイスを、ユーザにそれぞれ指定させるステップと、
前記管理装置が、前記リモートコピーペアを形成する前記各論理デバイスに関する情報を含む第２管理情報を生成するステップと、
前記管理装置が、前記リモートコピーペアに係る前記各記憶制御装置のうちいずれか一方の記憶制御装置に、前記第２管理情報を送信させるステップと、
前記リモートコピーに係る前記一方の記憶制御装置が、前記受信した前記第２管理情報を自分自身に設定すると共に、前記リモートコピーペアに係る前記各記憶制御装置のうち他方の記憶制御装置に前記第２管理情報を送信して設定させるステップと、
前記リモートコピーペアに関わる前記各記憶制御装置が、前記リモートコピー元の論理デバイスの記憶内容と前記リモートコピー先の論理デバイスの記憶内容とを一致させるステップと、
前記ホストコンピュータによって、前記リモートコピー元の論理デバイスの記憶内容が変更された場合には、前記リモートコピー先の論理デバイスの記憶内容も変更させるステップと、
前記仮想論理デバイスを構成する前記ペアの解消が指示された場合、前記プライマリの論理デバイスまたは前記セカンダリの論理デバイスのいずれかの論理デバイスを用いて、前記リモートコピーペアを維持可能であるか否かを判定するステップと、
前記ペアの解消後も前記リモートコピーペアを維持可能であると判断した場合には、前記ペアを解消させるステップと、
前記ペアの解消後は前記リモートコピーペアを維持不能であると判断した場合には、ユーザに警告を発するステップと、
をそれぞれ実行する仮想化方法。
【請求項２０】
複数の記憶制御装置にそれぞれ分散される論理デバイスを仮想化してホストコンピュータに提供するための仮想化方法であって、
プライマリの第１論理デバイス及びセカンダリの第２論理デバイスを、それぞれ異なる記憶制御装置の中から、ユーザに指定させるステップと、
前記第１論理デバイスと前記第２論理デバイスとから構成されるペアを設定するステップと、
共通の仮想識別子を前記第１論理デバイス及び前記第２論理デバイスにそれぞれ設定することにより、前記第１論理デバイス及び前記第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスを前記ホストコンピュータに提供するステップと、
リモートコピー元の論理デバイスまたはリモートコピー先の論理デバイスの少なくともいずれか一方が前記仮想論理デバイスとなるように、前記リモートコピー元の論理デバイス及び前記リモートコピー先の論理デバイスを、前記ユーザにそれぞれ指定させるステップと、
前記リモートコピー元の論理デバイスと前記リモートコピー先の論理デバイスとからリモートコピーペアを設定するステップと、
をそれぞれ実行する仮想化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム及び仮想化方法に関する。
【背景技術】
【０００２】
例えば、政府機関、企業、教育機関等では、多種多量のデータを取り扱うために、比較的大規模なストレージシステムを用いてデータを管理する。このストレージシステムは、少なくとも一つの記憶制御装置を備える。記憶制御装置、例えば、多数の記憶デバイスを備えており、ＲＡＩＤ（Redundant Array of Inexpensive Disks）に基づく記憶領域を提供することができる。記憶デバイス群が提供する物理的な記憶領域上には少なくとも１つ以上の論理デバイス（論理ボリュームとも呼ばれる）が形成される。ホストコンピュータ（以下、「ホスト」）は、論理デバイスに対してライトコマンドやリードコマンドを発行することにより、データの書込みやデータの読出しを行う。
【０００３】
ストレージシステムは、データの安全性等を改善するために、複数の論理デバイスに同一のデータをそれぞれ記憶させることができる。例えば、第１の従来技術として、ストレージシステムは、同一の記憶制御装置内のそれぞれ異なる論理デバイスに同一のデータをそれぞれ記憶させることができ、または、別々の記憶制御装置内の論理デバイスに同一のデータをそれぞれ記憶させることができる（特許文献１）。
【特許文献１】特開２００７−１５０４０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記従来技術では、同一筐体内の複数の論理デバイスにデータをそれぞれ記憶させたり、あるいは、それぞれ別々の筐体内に位置する複数の論理デバイスにデータを記憶させることにより、プライマリの論理デバイスが使用不能な場合でも、セカンダリの論理デバイスを用いて業務処理を続行可能である。しかし、プライマリの論理デバイスからセカンダリの論理デバイスに切り替えるためには、ホストのアクセス先デバイスをプライマリの論理デバイスからセカンダリの論理デバイスに意図的に切り替える必要があり、切替作業に手間がかかる。
【０００５】
本発明は、上記の問題点に鑑みてなされたもので、本発明の目的は、それぞれ異なる記憶制御装置内に存在する別々の論理デバイスを一つの仮想論理デバイスとして仮想化することができ、かつ、仮想論理デバイスの全部または一部を別の論理デバイスにリモートコピーできるようにしたストレージシステム及び仮想化方法を提供することにある。本発明の他の目的は、仮想論理デバイスを構成する各論理デバイスがコピー元論理デバイスとコピー先論理デバイスの役割を変更可能とすることにより、一方の論理デバイスへのアクセスに障害が生じた場合でも、ホストコンピュータのアクセス先の論理デバイスをホストコンピュータに対して透過的に切り替えることができるようにしたストレージシステム及び仮想化方法を提供することにある。本発明の更なる目的は、後述する実施の形態の記載から明らかになるであろう。
【課題を解決するための手段】
【０００６】
上記課題を解決すべく、本発明に従うストレージシステムは、ホストコンピュータと、このホストコンピュータにより利用される複数の記憶制御装置とを備え、各記憶制御装置のうち指定される第１記憶制御装置に属する第１論理デバイスと各記憶制御装置のうち指定される第２記憶制御装置に属する第２論理デバイスとをペアに設定することにより、第１論理デバイス及び第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスをホストコンピュータに提供する仮想化設定部であって、仮想論理デバイスに設定される仮想識別子を第１論理デバイス及び第２論理デバイスにそれぞれ設定させる仮想化設定部と、各記憶制御装置のうち指定される他の記憶制御装置に属する他の論理デバイスと仮想論理デバイスの全部または一部とをリモートコピーペアに設定するリモートコピー設定部と、を備える。
【０００７】
ホストコンピュータは、仮想識別子が設定される第１論理デバイスへアクセスするための第１アクセス経路と、仮想識別子が設定される第２論理デバイスへアクセスするための第２アクセス経路とを切り替えるための交替パス制御部を備えることができる。
【０００８】
仮想化設定部は、仮想論理デバイスを構成するペアに関する第１管理情報を、第１記憶制御装置及び第２記憶制御装置の両方にそれぞれ記憶させることにより、第１論理デバイス及び第２論理デバイスに仮想識別子をそれぞれ設定させることができる。
【０００９】
仮想化設定部は、第１管理情報を第１記憶制御装置または第２記憶制御装置のいずれか一方にのみ送信し、第１記憶制御装置または第２記憶制御装置のうち仮想化設定部から第１管理情報を受信した一方の記憶制御装置は、他方の記憶制御装置に第１管理情報を送信して記憶させる構成でもよい。
【００１０】
ペアを形成する第１論理デバイス及び第２論理デバイスとの間で、プライマリデバイス及びセカンダリデバイスを切替可能である。
【００１１】
ホストコンピュータが仮想論理デバイスの記憶内容を更新させる場合、（１）ホストコンピュータは、第１論理デバイスまたは第２論理デバイスのうちペアのプライマリデバイスとなる論理デバイスにライトコマンド及びライトデータを送信し、プライマリデバイスとなる一方の論理デバイスは、（2-1）ライトデータを自分自身に書き込んだ後で、（2-2）第１論理デバイスまたは第２論理デバイスのうちペアのセカンダリデバイスとなる他方の論理デバイスにライトデータを転送し、（2-3）他方の論理デバイスにライトデータが書き込まれたことを確認してから、ホストコンピュータにライトコマンドの処理が完了した旨を通知することができる。
【００１２】
第１論理デバイスがペアにおけるプライマリデバイスであり、第１アクセス経路が仮想論理デバイスのプライマリアクセス経路である場合において、ホストコンピュータは、第１アクセス経路を用いて第１論理デバイスにアクセスできない場合、第２アクセス経路を用いて第２論理デバイスにアクセスし、第２論理デバイスは、ホストコンピュータからアクセスされた場合、第１論理デバイスの属性をプライマリデバイスからセカンダリデバイスに変更させ、かつ、第２論理デバイスの属性をセカンダリデバイスからプライマリデバイスに変更させることができる。
【００１３】
仮想識別子は、第１論理デバイスの所在に関する情報と第２論理デバイスの所在に関する情報とに基づいて生成することができる。
【００１４】
仮想化設定部は、各記憶制御装置の有する論理デバイスに関する情報を収集して各論理デバイスの一覧を画面に表示させ、この画面に表示された各論理デバイスの中から仮想論理デバイスを構成する第１論理デバイス及び第２論理デバイスを、ユーザによってそれぞれ指定させることができる。
【００１５】
リモートコピー設定部は、他の論理デバイスをリモートコピー先デバイスまたはリモートコピー元デバイスのいずれかに設定し、仮想論理デバイスをリモートコピー元デバイスまたはリモートコピー先デバイスのいずれかに設定することにより、リモートコピーペアを生成することができる。
【００１６】
他の論理デバイスは、他の記憶制御装置の有する論理デバイス、または、各記憶制御装置のうち第１記憶制御装置及び第２記憶制御装置以外の別の複数の記憶制御装置がそれぞれ有する論理デバイスから形成される別の仮想論理デバイス、として構成してもよい。
【００１７】
リモートコピー設定部は、ペアが解消される場合、仮想論理デバイスを構成する第１論理デバイスまたは第２論理デバイスのうち、いずれか一方の論理デバイスと他の論理デバイスとの間でリモートコピーペアを継続させることができる。
【００１８】
リモートコピー設定部は、（１）ペアが解消される場合、仮想論理デバイスを構成する第１論理デバイスまたは第２論理デバイスのうち、ユーザにより選択される論理デバイスと他の論理デバイスとの間でリモートコピーペアを継続させることが可能か否かを判定し、（２）リモートコピーペアの継続が可能と判断した場合はペアを解消させ、（３）リモートコピーペアの継続が不能と判断した場合は、ユーザに警告することができる。
【００１９】
リモートコピー設定部は、仮想論理デバイスを構成する第１論理デバイスまたは第２論理デバイスのいずれか一方と他の論理デバイスとを、仮想論理デバイスとは無関係のリモートコピーペアとして設定可能である。
【００２０】
第１論理デバイスまたは第２論理デバイスのうち少なくともいずれか一方の論理デバイスは、この一方の論理デバイスの属する記憶制御装置内に、他の記憶制御装置の有する論理デバイスを仮想的に取り込むことにより生成することができる。
【００２１】
第１論理デバイス及び第２論理デバイスの両方は、第１記憶制御装置及び第２記憶制御装置以外の他の記憶制御装置の有する共通の論理デバイスを、第１記憶制御装置内及び第２記憶制御装置内にそれぞれ仮想的に取り込むことにより生成することができる。
【００２２】
仮想化設定部は、仮想論理デバイスを削除する場合に、仮想識別子を第１論理デバイスまたは第２論理デバイスのいずれか一方に引き継がせることもできる。
【００２３】
本発明の他の観点に従うストレージシステムは、ホストコンピュータと、ホストコンピュータにより利用される複数の記憶制御装置と、ホストコンピュータ及び各記憶制御装置に接続される管理装置とを備え、複数の記憶制御装置には、第１記憶制御装置、第２記憶制御装置及び第３記憶制御装置が含まれており、第１記憶制御装置は第１通信経路に設定される第１アクセス経路を介してホストコンピュータに接続され、第２記憶制御装置は第１通信経路に設定される第２アクセス経路を介してホストコンピュータに接続されており、第１記憶制御装置または／及び第２記憶制御装置と、第３記憶制御装置とは、第２通信経路を介して接続されており、ホストコンピュータ、第１記憶制御装置、第２記憶制御装置及び第３記憶制御装置は、第３通信経路を介して管理装置に接続されており、かつ、（１）各記憶制御装置は、ホストコンピュータまたは他の記憶制御装置と通信するための第１通信制御部と、一つまたは複数の記憶デバイスから構成される論理デバイスと通信するための第２通信制御部と、第１通信制御部及び第２通信制御部より利用されるメモリ部とを備えており、（２）管理装置は、（2-1）各記憶制御装置のうち指定される第１記憶制御装置に属する第１論理デバイスと各記憶制御装置のうち指定される第２記憶制御装置に属する第２論理デバイスとをペアに設定することにより、第１論理デバイス及び第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスをホストコンピュータに提供する仮想化設定部であって、仮想論理デバイスに設定される仮想識別子を第１論理デバイス及び第２論理デバイスにそれぞれ設定させる仮想化設定部と、（2-2）各記憶制御装置のうち指定される第３記憶制御装置に属する第３論理デバイスと仮想論理デバイスの全部または一部とをリモートコピーペアに設定するリモートコピー設定部と、を備えており、（３）ホストコンピュータは、第１アクセス経路と第２アクセス経路とを切り替えるための交替パス制御部を備えている。
【００２４】
本発明の別の観点に従う、複数の記憶制御装置にそれぞれ分散される論理デバイスを仮想化してホストコンピュータに提供するための仮想化方法は、管理装置が、各記憶制御装置の構成に関する情報を各記憶制御装置からそれぞれ収集するステップと、管理装置が、各記憶制御装置の構成に関する情報に基づいて、ペアを形成するプライマリの論理デバイスとセカンダリの論理デバイスとを、それぞれ異なる記憶制御装置の中からユーザに指定させるステップと、管理装置が、プライマリの論理デバイス及びセカンダリの論理デバイスに関する情報と仮想識別子とを含む第１管理情報を生成するステップと、管理装置が、ペアに関わる各記憶制御装置のうちいずれか一方の記憶制御装置に、第１管理情報を送信させるステップと、一方の記憶装置が、受信した第１管理情報を自分自身に設定すると共に、ペアに関わる各記憶制御装置のうち他方の記憶制御装置に第１管理情報を送信して設定させるステップと、ペアに関わる各記憶制御装置が、プライマリの論理デバイスの記憶内容とセカンダリの論理デバイスの記憶内容とを一致させるステップと、管理装置が、ホストコンピュータに対して論理デバイスの認識を要求するステップと、ホストコンピュータが、管理装置からの要求に応じて、各記憶制御装置の有する論理デバイスに関する情報をそれぞれ取得するステップと、ホストコンピュータが、取得された各論理デバイスのうち仮想識別子が設定されているプライマリの論理デバイス及びセカンダリの論理デバイスをそれぞれ検出し、これら同一の仮想識別子を有するプライマリの論理デバイス及びセカンダリの論理デバイスを一つの仮想論理デバイスとして認識するステップと、ホストコンピュータによって、仮想論理デバイスを構成するプライマリの論理デバイスの記憶内容が変更された場合には、セカンダリの論理デバイスの記憶内容も変更させるステップと、管理装置が、各記憶制御装置の構成に関する情報に基づいて、リモートコピーペアを形成するリモートコピー元の論理デバイスとリモートコピー先の論理デバイスとの少なくともいずれか一方が仮想論理デバイスとなるように、リモートコピー元の論理デバイス及びリモートコピー先の論理デバイスを、ユーザにそれぞれ指定させるステップと、管理装置が、リモートコピーペアを形成する各論理デバイスに関する情報を含む第２管理情報を生成するステップと、管理装置が、リモートコピーペアに係る各記憶制御装置のうちいずれか一方の記憶制御装置に、第２管理情報を送信させるステップと、リモートコピーに係る一方の記憶制御装置が、受信した第２管理情報を自分自身に設定すると共に、リモートコピーペアに係る各記憶制御装置のうち他方の記憶制御装置に第２管理情報を送信して設定させるステップと、リモートコピーペアに関わる各記憶制御装置が、リモートコピー元の論理デバイスの記憶内容とリモートコピー先の論理デバイスの記憶内容とを一致させるステップと、ホストコンピュータによって、リモートコピー元の論理デバイスの記憶内容が変更された場合には、リモートコピー先の論理デバイスの記憶内容も変更させるステップと、仮想論理デバイスを構成するペアの解消が指示された場合、プライマリの論理デバイスまたはセカンダリの論理デバイスのいずれかの論理デバイスを用いて、リモートコピーペアを維持可能であるか否かを判定するステップと、ペアの解消後もリモートコピーペアを維持可能であると判断した場合には、ペアを解消させるステップと、ペアの解消後はリモートコピーペアを維持不能であると判断した場合には、ユーザに警告を発するステップと、をそれぞれ実行する。
【００２５】
本発明の他の観点に従う、複数の記憶制御装置にそれぞれ分散される論理デバイスを仮想化してホストコンピュータに提供するための仮想化方法は、プライマリの第１論理デバイス及びセカンダリの第２論理デバイスを、それぞれ異なる記憶制御装置の中から、ユーザに指定させるステップと、第１論理デバイスと第２論理デバイスとから構成されるペアを設定するステップと、共通の仮想識別子を第１論理デバイス及び第２論理デバイスにそれぞれ設定することにより、第１論理デバイス及び第２論理デバイスを一つの仮想論理デバイスとして仮想化し、この仮想論理デバイスをホストコンピュータに提供するステップと、リモートコピー元の論理デバイスまたはリモートコピー先の論理デバイスの少なくともいずれか一方が仮想論理デバイスとなるように、リモートコピー元の論理デバイス及びリモートコピー先の論理デバイスを、ユーザにそれぞれ指定させるステップと、リモートコピー元の論理デバイスとリモートコピー先の論理デバイスとからリモートコピーペアを設定するステップと、をそれぞれ実行する。
【００２６】
本発明の手段、機能、ステップの全部または一部は、コンピュータシステムにより実行されるコンピュータプログラムとして構成可能な場合がある。本発明の構成の全部または一部がコンピュータプログラムから構成された場合、このコンピュータプログラムは、例えば、各種記憶媒体に固定して配布等することができ、あるいは、通信ネットワークを介して送信することもできる。
【発明を実施するための最良の形態】
【００２７】
図１は、本発明の実施形態の全体概要を示す構成説明図である。本実施形態では、後述のように、それぞれ異なるストレージ装置１，２内の論理ボリューム１Ａ，２Ａによって一つの仮想ボリューム６を形成する構成と、仮想ボリューム６と他の論理ボリューム３Ａとをリモートコピーペアに設定する構成と、仮想ボリューム６の設定方法及びリモートコピーの設定方法が、それぞれ開示されている。
【００２８】
図１に示すストレージシステムは、例えば、「記憶制御装置」としてのストレージ装置１，２，３と、「管理装置」としての管理サーバ４と、「ホストコンピュータ」としてのホスト５とを備えて構成される。ストレージシステムは、別々のストレージ装置１，２内に存在する論理ボリューム１Ａ，２Ａを仮想化して仮想ボリューム６を生成し、この仮想ボリューム６をホスト５に提供する。仮想ボリューム６は、「仮想論理デバイス」に該当する。
【００２９】
先に接続構成について説明する。ストレージ装置１，２は、「第１通信経路」としての第１通信ネットワークＣＮ１を介して、ホスト５に接続されている。ストレージ装置２とストレージ装置３は、「第２通信経路」としての第２通信ネットワークＣＮ２を介して接続されている。管理サーバ４は、「第３通信経路」としての第３通信ネットワークＣＮ３を介して、各ストレージ装置１〜３及びホスト５と接続されている。また、ストレージ装置１とストレージ装置２とは、第４通信経路ＣＮ４を介して相互に接続されている。なお、図１では省略しているが、ストレージ装置３も第１通信ネットワークＣＮ１を介して、ホスト５に接続されてもよい。
【００３０】
ここで、例えば、通信ネットワークＣＮ１，ＣＮ２は、ＦＣ＿ＳＡＮ（Fibre Channel_Storage Area Network）、ＩＰ＿ＳＡＮ（Internet Protocol_SAN）等を用いて構成することができる。第３通信ネットワークＣＮ２は、例えば、ＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）等を用いて構成可能である。第４通信経路ＣＮ４は、例えば、各ストレージ装置１，２間を直接結ぶファイバケーブルまたはメタルケーブルとＦＣプロトコルとから構成可能である。なお、以上は例示であって、本発明は、上記の接続構成に限定されない。
【００３１】
各ストレージ装置１〜３は、それぞれ物理的に異なる装置として構成されており、「論理デバイス」としての論理ボリューム１Ａ〜３Ａをそれぞれ備えている。各ストレージ装置１〜３は、複数の記憶デバイスを備えることができ、これら記憶デバイスの有する物理的記憶領域上に論理デバイスとしての論理ボリュームが形成される。論理ボリューム１Ａ〜３Ａは、例えば、ＲＡＩＤ５やＲＡＩＤ６のような冗長化された物理的記憶領域上に設けることができる。なお、以下の説明では、「論理ボリューム」を「ボリューム」と略記する場合がある。図中では、論理デバイスとしての論理ボリュームを「ＬＤＥＶ」と表示している。
【００３２】
記憶デバイスとしては、例えば、ハードディスクデバイス、半導体メモリデバイス、光ディスクデバイス、光磁気ディスクデバイス、磁気テープデバイス、フレキシブルディスクデバイス等のデータを読み書き可能な種々のデバイスを利用可能である。
【００３３】
記憶デバイスとしてハードディスクデバイスを用いる場合、例えば、ＦＣ（Fibre Channel）ディスク、ＳＣＳＩ（Small Computer System Interface）ディスク、ＳＡＴＡディスク、ＡＴＡ（AT Attachment）ディスク、ＳＡＳ（Serial Attached SCSI）ディスク等を用いることができる。
記憶デバイスとして半導体メモリデバイスを用いる場合、例えば、フラッシュメモリ、ＦｅＲＡＭ（Ferroelectric Random Access Memory）、ＭＲＡＭ（MagnetoresistiveRandom Access Memory）、相変化メモリ（Ovonic Unified Memory）、ＲＲＡＭ（Resistance RAM）」等の種々のメモリデバイスを利用可能である。なお、記憶デバイスの種類は、上記のものに限定されず、将来製品化される他の種類の記憶デバイスを利用できるであろう。
【００３４】
なお、図１では、便宜上、各ストレージ装置１〜３が、それぞれ実論理ボリューム１Ａ〜３Ａを有する場合を示している。実論理ボリュームとは、記憶デバイスの物理的記憶領域に直接的に対応付けられているボリュームである。後述の実施例から明らかとなるように、各ストレージ装置１〜３は、必ずしも実論理ボリュームを備える必要はなく、自装置の外部に存在する別のストレージ装置が有する論理ボリュームを取り込んで使用することもできる。
【００３５】
外部のストレージ装置が有する論理ボリュームを自装置内に取り込み、それがあたかも自分自身の実論理ボリュームであるかのようにしてホスト５に見せかける技術は、特開２００５−１０７６４５号公報に記載されている。この公報に記載の技術を、本実施形態において援用することができる。
【００３６】
従って、各ストレージ装置１〜３は、ハードディスクドライブ等の記憶デバイスを備えない構成でもよい。この場合、各ストレージ装置１〜３は、例えば、スイッチ装置や仮想化装置のようなコンピュータ装置として構成可能である。
【００３７】
管理サーバ４は、各ストレージ装置１〜３の構成を管理したり、ホスト５に指示を与えるための装置である。管理サーバ４は、ストレージシステムを管理するための基本的機能に加えて、仮想ボリューム設定部４Ａ及びリモートコピー設定部４Ｂを備える。各設定部４Ａ，４Ｂの詳細は後述するが、先に簡単に説明すると、仮想ボリューム設定部４Ａは、それぞれ異なるストレージ装置１，２内に存在する別々の論理ボリューム１Ａ，２Ａを一つの仮想ボリューム６に仮想化させるための機能である。リモートコピー設定部４Ｂは、仮想ボリューム６の全部または一部と、別のストレージ装置３内の論理ボリューム３Ａとでリモートコピーペアを設定させるための機能である。
【００３８】
ホスト５は、例えば、メインフレームコンピュータ、サーバコンピュータ、あるいはパーソナルコンピュータ等のコンピュータ装置として構成される。ホスト５がメインフレームコンピュータである場合、例えば、ＦＩＣＯＮ（Fibre Connection：登録商標）、ＥＳＣＯＮ（Enterprise System Connection：登録商標）、ＡＣＯＮＡＲＣ（Advanced Connection Architecture：登録商標）、ＦＩＢＡＲＣ（Fibre Connection Architecture：登録商標）のような通信プロトコルが用いられる。ホスト５がサーバコンピュータやパーソナルコンピュータ等である場合、例えば、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）、ＦＣＰ（Fibre Channel Protocol）、ｉＳＣＳＩ（internet Small Computer System Interface）のような通信プロトコルが用いられる。
【００３９】
ホスト５は、例えば、アプリケーションプログラム（以下、「アプリケーション」と略記する場合がある）５Ａと、「交替パス制御部」としてのパス制御部５Ｂと、通信部５Ｃとを備えている。なお、ストレージ装置１〜３，管理サーバ４，ホスト５のハードウェア構成については、後述の実施例で詳細に説明する。アプリケーションプログラム５Ａは、例えば、電子メール管理ソフトウェア、顧客管理ソフトウェア、文書作成ソフトウェア等の各種業務を遂行するための一つまたは複数のソフトウェア製品である。
【００４０】
パス制御部５Ｂは、ホスト５が使用するアクセスパス（以下、「パス」と略記する場合がある）を切り替えて使用するソフトウェアである。ホスト５は、例えば、Inquiryコマンドのような問合せコマンドを各ストレージ装置１，２に送信することにより、各ストレージ装置１，２内に設けられている各論理ボリューム１Ａ，２Ａの識別子、装置番号、ＬＵ番号、パス情報等を得ることができる。パス制御部５Ｂは、同一の識別子を有するパスが複数検出された場合、その複数のパスを交替パスとして認識する。つまり、同一の論理ボリュームへアクセスするためのパスが複数検出された場合、一方のパスを通常時に使用するプライマリパス（アクティブパスとも呼ぶ）として、他方のパスを異常時に使用するセカンダリパス（パッシブパスとも呼ぶ）として、それぞれ認識する。
【００４１】
仮想ボリューム６は、それぞれ異なるストレージ装置１，２内の論理ボリューム１Ａ，２Ａを仮想化することにより構成される。仮想ボリューム６を構成する各論理ボリューム１Ａ，２Ａは、例えば、構成要素ボリュームと呼ぶことができる。
【００４２】
一方の論理ボリューム１Ａは、仮想ボリューム６内のプライマリボリュームとして設定されており、他方の論理ボリューム２Ａは、仮想ボリューム６内のセカンダリボリュームとして設定される。但し、後述の実施例から明らかなように、プライマリボリュームであるかセカンダリボリュームであるかは、必要に応じて変更される。即ち、論理ボリューム１Ａにアクセス障害が発生した場合、論理ボリューム２Ａの属性が「セカンダリ」から「プライマリ」に変更される。
【００４３】
プライマリボリュームは、通常時にホスト５からアクセスされるボリュームであり、セカンダリボリュームは、障害発生時にホスト５からアクセスされるボリュームである。プライマリボリュームはアクティブボリュームと、セカンダリボリュームはパッシブボリュームと呼び変えることもできる。仮想ボリューム６を構成するプライマリボリュームとセカンダリボリュームとがコピーペアを形成する場合、プライマリボリュームをコピー元ボリュームと、セカンダリボリュームをコピー先ボリュームと呼ぶことができる。
【００４４】
仮想ボリューム６には、ストレージシステム内で仮想ボリューム６を一意に特定するための仮想識別子が設定される。図１に示す例では、仮想識別子として「＃１２」を使用している。仮想識別子は、例えば、仮想ボリューム６を構成する各論理ボリューム１Ａ，２Ａの元の識別子に基づいて生成される。図１に示す例では、一方の論理ボリューム１Ａの元の識別子「＃１」、他方の論理ボリューム２Ａの元の識別子は「＃２」である。そこで、本実施形態では、一方の論理ボリューム１Ａの識別子「＃１」と他方の論理ボリューム２Ａの識別子「＃２」とを合体させて、仮想識別子「＃１２」を得ている。
【００４５】
つまり、仮想識別子は、ストレージシステム内に存在する他の各論理ボリュームの識別子と重複しないように生成される。既存の論理ボリューム１Ａ〜３Ａ、及び、これから先に各ストレージ装置１〜３内に設定される可能性のある論理ボリュームの識別子をローカル識別子と呼ぶ場合、仮想識別子は、いずれのローカル識別子とも重複しないように、設定される。
【００４６】
仮想ボリューム６が設定された場合、各ストレージ装置１，２は、仮想ボリューム６を構成する論理ボリューム１Ａ，２Ａに仮想識別子を設定する。ストレージ装置１は、論理ボリューム１Ａの識別子として仮想識別子「＃１２」を設定する。ストレージ装置２も、論理ボリューム２Ａの識別子として仮想識別子「＃１２」を設定する。
【００４７】
つまり、仮想識別子は、仮想ボリューム６を構成する各論理ボリューム１Ａ，２Ａの元々の識別子に優先して設定される。ホスト５からの問合せに対し、ストレージ装置１は論理ボリューム１Ａの識別子として仮想識別子を返し、ストレージ装置２も論理ボリューム２Ａの識別子として仮想識別子を返す。従って、パス制御部５Ｂは、論理ボリューム１Ａ及び論理ボリューム２Ａを同一のボリューム（仮想ボリューム６）として認識する。
【００４８】
各論理ボリューム１Ａ，２Ａに元々設定されているローカル識別子「＃１」，「＃２」は、各ストレージ装置１，２内で論理ボリューム１Ａ，２Ａを管理するために使用される、内部的な識別情報である。これに対し、仮想識別子は、仮想ボリューム６をホスト５に認識させるための、対外的な識別情報である。
【００４９】
論理ボリューム１Ａにアクセスするための第１アクセスパスＰ１と、論理ボリューム２Ａにアクセスするための第２アクセスパスＰ２とは、仮想ボリューム６にアクセスするためのパスとして、パス制御部５Ｂに認識される。本実施形態では、第１アクセスパスＰ１をプライマリパス、第２アクセスパスＰ２をセカンダリパスとして説明する。
【００５０】
本ストレージシステムの動作について説明する。最初に、ユーザは、仮想ボリューム設定部４Ａを用いて、仮想ボリューム６を構成させる各論理ボリューム１Ａ，２Ａをそれぞれ指定する。仮想ボリューム設定部４Ａは、仮想ボリューム６を設定するための第１管理情報を生成し、この第１管理情報をストレージ装置１またはストレージ装置２のいずれか一方に送信する（Ｓ１）。
【００５１】
第１管理情報とは、仮想ボリューム６をストレージシステム内に設定するために必要な情報であり、仮想ボリューム設定用情報と呼ぶこともできる。第１管理情報には、例えば、仮想識別子と、仮想ボリューム６を構成するコピー元ボリューム（プライマリボリュームまたはアクティブボリューム）及びコピー先ボリューム（セカンダリボリュームまたはパッシブボリューム）をそれぞれ特定するための情報とが含まれる。各論理ボリュームを特定するための情報には、その論理ボリュームが存在するストレージ装置を特定するための情報（装置番号）と、そのストレージ装置内における論理ボリュームの識別子（ローカル識別子）と、コピー元ボリュームであるかコピー先ボリュームであるかの区別を示す属性情報とが含まれる。
【００５２】
ストレージ装置１が管理サーバ４から第１管理情報を受信した場合を説明する。ストレージ装置１は、第１管理情報に基づいて、論理ボリューム１Ａに仮想識別子を設定し、かつ、論理ボリューム１Ａの属性を「プライマリ（または、アクティブ）」に設定する。さらに、ストレージ装置１は、第１管理情報に基づいて、「セカンダリ（または、パッシブ）」の論理ボリューム２Ａを有するストレージ装置２に、第１管理情報を送信する。
【００５３】
ストレージ装置１からストレージ装置２への第１管理情報の転送には、第４通信経路ＣＮ４を用いることができる。ストレージ装置１とストレージ装置２とが、第１通信ネットワークＣＮ１または第３通信ネットワークＣＮ３を介して双方向に通信可能な場合、ストレージ装置１は、第１通信ネットワークＣＮ１または第３通信ネットワークＣＮ３のいずれかを用いて、ストレージ装置２に第１管理情報を送信することもできる。
【００５４】
ストレージ装置２は、ストレージ装置１から第１管理情報を受信すると、ストレージ装置１で実行されたのと同様に、論理ボリューム２Ａに仮想識別子を設定し、かつ、論理ボリューム２Ａの属性を「セカンダリ」に設定する。
【００５５】
各ストレージ装置１，２に第１管理情報がそれぞれ設定されることにより、共通の仮想識別子を有する複数の論理ボリューム１Ａ，２Ａから一つの仮想ボリューム６が生成される（Ｓ２）。
【００５６】
管理サーバ４は、ホスト５にデバイス認識要求を発行する。デバイス認識要求とは、ホスト５が利用可能な全ての論理ボリュームの所在や状態を、ホスト５によって確認させるための要求である。ホスト５は、デバイス認識要求に応じて、各ストレージ装置１，２にInquiryコマンドを発行する。ホスト５は、各ストレージ装置１，２の有する全ての論理ボリュームについて、情報を要求する。
【００５７】
各ストレージ装置１，２は、ホスト５からのInquiryコマンドに応じて、所定の応答をホスト５に返す。所定の応答には、例えば、その論理ボリュームに設定されたＬＵ（Logical Unit）番号、その論理ボリュームが存在するストレージ装置の装置番号、その論理ボリュームに設定されている識別子、その論理ボリュームにアクセスするパスの属性（プライマリパス（アクティブパス）またはセカンダリパス（パッシブパス）のいずれであるか）が含まれる。パスの属性は、その論理ボリュームの初期の属性を決定する。即ち、プライマリパスの属性を有する論理ボリュームは、プライマリボリュームであり、通常時に使用されるボリュームである。セカンダリパスの属性を有する論理ボリュームは、セカンダリボリュームであり、障害発生時に使用されるボリュームである。
【００５８】
ホスト５のパス制御部５Ｂは、各ストレージ装置１，２から受信した所定の応答を解析し、同一の識別子（仮想識別子）を有する論理ボリューム１Ａ，２Ａを検出する。同一の仮想識別子が設定された論理ボリューム１Ａ，２Ａは、同一のボリュームであると認識され、パス制御部５Ｂは、論理ボリューム１Ａへのアクセスパスと論理ボリューム２Ａへのアクセスパスとを切替可能であると判断する。
【００５９】
本実施形態では、論理ボリューム１Ａへのアクセスパスがプライマリパスに設定されているため、通常時に、パス制御部５Ｂは、論理ボリューム１Ａにアクセスする。アプリケーションプログラム５Ａによって論理ボリューム１Ａの記憶内容が変更されると、この変更は、論理ボリューム２Ａにも反映される。即ち、論理ボリューム１Ａで行われたデータ更新は、論理ボリューム２Ａでも同様に実行される。図１に示す例では、仮想ボリューム６を構成する論理ボリューム１Ａ及び論理ボリューム２Ａは、コピーペアを形成しているためである。
【００６０】
なお、後述の図６に示すように、それぞれ異なるストレージ装置により提供される一つの仮想ボリュームが、最終的に同一の論理ボリュームに接続されている場合、仮想ボリュームを構成する各論理ボリュームがコピーペアを形成する必要はない。即ち、仮想ボリュームを構成する各論理ボリュームはペアを形成するが、このペアがコピーペアである必要は、ストレージシステムの構成に依存する。
【００６１】
さて、論理ボリューム１Ａへのアクセスに何らかの障害が発生した場合、パス制御部５Ｂは、プライマリパスからセカンダリパスに切り替えて、論理ボリューム２Ａにアクセスする。アプリケーションプログラム５Ａは、パスの切替を意識することなく、論理ボリューム２Ａからデータを読み出したり、論理ボリューム２Ａにデータを書き込む。論理ボリューム２Ａは、論理ボリューム１Ａと同一の記憶内容を保持しているため、アプリケーションプログラム５Ａは、何らの不都合もなく、かつ、ボリュームの切替を意識することもなく、処理を続行することができる。
【００６２】
次に、リモートコピーの設定について説明する。本実施形態では、リモートコピー先のストレージ装置をストレージ装置３であるとする。ストレージ装置３は、ストレージ装置１，２と同一のサイト内に設置してもよいし、ストレージ装置１，２とは別のサイトに設置してもよい。ディザスタリカバリの観点からは、ストレージ装置１，２とストレージ装置３とは、物理的距離を離して設置するのが好ましい。
【００６３】
ユーザは、リモートコピー元のボリュームとリモートコピー先のボリュームとをそれぞれ指定する。ここでは、リモートコピー元ボリュームを仮想ボリューム６、リモートコピー先ボリュームをストレージ装置３内の論理ボリューム３Ａとする。
【００６４】
リモートコピー設定部４Ｂは、指定されたボリューム６，３Ａをリモートコピーペアに設定するために必要な第２管理情報を生成する。第２管理情報は、リモートコピー設定用情報と呼ぶこともできる。第２管理情報は、リモートコピー元ボリュームを特定するための情報と、リモートコピー先ボリュームを特定するための情報とを含む。リモートコピー元ボリュームまたはリモートコピー先ボリュームを特定するための情報には、そのボリュームの存在するストレージ装置を特定する装置番号と、その論理ボリュームの番号と、その論理ボリュームがリモートコピー元ボリュームであるかリモートコピー先ボリュームであるかの区別を示す属性と、その論理ボリュームが仮想ボリューム６であるか否かを示す属性とが含まれる。
【００６５】
リモートコピー設定部４Ｂは、リモートコピー元ボリュームである仮想ボリューム６を提供している各ストレージ装置１，２のうちいずれか一方のストレージ装置に、第２管理情報を送信する（Ｓ４）。
【００６６】
ストレージ装置１は、第２管理情報をストレージ装置１に設定した後、第２管理情報をストレージ装置２に送信する。ストレージ装置２は、ストレージ装置１と同様に、第２管理情報をストレージ装置２に設定する。これにより、ストレージ装置１及びストレージ装置２によって提供されている仮想ボリューム６に、リモートコピー元ボリュームとして機能するように設定される。
【００６７】
ストレージ装置１は、仮想ボリューム６へのリモートコピー設定が完了すると、第２管理情報をリモートコピー先のストレージ装置３に送信する。ストレージ装置１は、例えば、第１通信ネットワークＣＮ１または第３通信ネットワークＣＮ３のいずれかを介して、ストレージ装置３に第２管理情報を送信する。ストレージ装置３は、論理ボリューム３Ａをリモートコピー先ボリュームとして設定する。
【００６８】
仮想ボリューム６がリモートコピー元ボリュームとして設定され、かつ、論理ボリューム３Ａがリモートコピー先ボリュームとして設定されることにより、リモートコピーペアが形成される（Ｓ５）。
【００６９】
アプリケーションプログラム５Ａが、仮想ボリューム６にデータを書き込む場合、パス制御部５Ｂは、第１アクセスパスＰ１を用いて、論理ボリューム１Ａにライトコマンドを発行する（Ｓ６）。
【００７０】
ストレージ装置１は、ホスト５から受信したライトデータを論理ボリューム１Ａに書き込む。さらに、ストレージ装置１は、論理ボリューム１Ａと共に仮想ボリューム６を構成する論理ボリューム２Ａに、ライトデータを送信する。ストレージ装置２は、ストレージ装置１から受信したライトデータを論理ボリューム２Ａに書込む。このように、仮想ボリューム６を提供する各ストレージ装置１，２は、それぞれの論理ボリューム１Ａ，２Ａにライトデータを書き込んでライトコマンドを処理する（Ｓ７）。
【００７１】
次に、ストレージ装置１は、仮想ボリューム６がリモートコピー元ボリュームであることを確認し、論理ボリューム１Ａに書き込まれたライトデータを、リモートコピー先の論理ボリューム３Ａに送信する。ストレージ装置３は、ストレージ装置１から受信したライトデータを論理ボリューム３Ａに書き込む。これにより、仮想ボリューム６から論理ボリューム３Ａへのリモートコピーが完了する（Ｓ８）。
【００７２】
このように構成される本実施形態によれば、以下の効果を奏する。本実施形態では、管理サーバ４は、仮想ボリューム６を設定するために必要な第１管理情報を、仮想ボリューム６を共同で提供するストレージ装置１またはストレージ装置２のいずれか一方に送信するだけで、仮想ボリューム６をストレージシステム内に生成させることができる。即ち、ユーザは、ストレージ装置１及びストレージ装置２の両方に対して仮想ボリューム６を設定するための指示を与える必要がない。このため、本実施形態では、ユーザの使い勝手が向上する。
【００７３】
本実施形態では、管理サーバ４は、リモートコピーを設定するために必要な第２管理情報を、リモートコピー元ボリュームである仮想ボリューム６を担当するストレージ装置１及びストレージ装置２のいずれか一方に送信するだけで、ストレージシステム内にリモートコピーを設定することができる。即ち、ユーザは、ストレージ装置１，ストレージ装置２及びストレージ装置３にそれぞれ個別に指示を出す必要が無く、一回の指示でリモートコピーペアを生成することができる。従って、ユーザの使い勝手が向上する。
【００７４】
さらに、後述の実施例から明らかとなるように、仮想ボリューム６を解除する場合、管理サーバ４は、仮想識別子を論理ボリューム１Ａまたは論理ボリューム２Ａのいずれか一方に引き継がせることができる。従って、ホスト５に意識させずに、仮想ボリューム６の構成を変更させることができる。
【００７５】
また、後述の実施例から明らかとなるように、仮想ボリュームを解除する場合、管理サーバ４は、仮想ボリューム６に設定済のリモートコピーの取り扱いについて検討し、仮想ボリューム６の解除の是非を判断する。なお、仮想ボリューム６の解除とは、論理ボリューム１Ａと論理ボリューム２Ａからなる仮想ボリューム６を解消して仮想ボリューム６を消滅させ、論理ボリューム１Ａ及び論理ボリューム２Ａを通常のボリュームに戻すことを意味する。後述の実施例では、仮想ボリュームの解除を仮想ボリュームの削除と呼ぶ場合がある。以下、本実施形態を詳細に説明する。
【実施例１】
【００７６】
図２は、本実施例によるストレージシステムの全体概要を示す説明図である。先に図１との対応関係について説明すると、図２中のストレージ装置１０，２０，３０は、図１中のストレージ装置１，２，３にそれぞれ対応する。図２中のホスト７０は図１中のホスト５に、図２中の管理サーバ８０は図１中の管理サーバ４に、それぞれ対応する。図５に示す仮想ボリューム２３１は、図１中の仮想ボリューム６に対応する。図４に示す論理ボリューム２３０は、図１中の論理ボリューム１Ａ，２Ａ，３Ａに対応する。図２中の第１通信ネットワークＣＮ１０は図１中の第１通信ネットワークＣＮ１に、図２中の第２通信ネットワークＣＮ２０は図１中の第２通信ネットワークＣＮ２に、図２中の第３通信ネットワークＣＮ３０は図１中の第３通信ネットワークＣＮ３に、図２中の第４通信経路ＣＮ４０は図１中の第４通信経路ＣＮ４に、それぞれ対応する。以下、図１で述べた説明と重複する部分は簡単に説明する。
【００７７】
ストレージシステムは、複数のストレージ装置１０，２０，３０と、ホスト７０と、管理サーバ８０とを備えている。ストレージ装置１０，２０とホスト７０とは、通信ネットワークＣＮ１０を介して接続される。ストレージ装置２０とストレージ装置３０とは、通信ネットワークＣＮ２０を介して接続される。管理サーバ８０は、通信ネットワークＣＮ３０を介して、各ストレージ装置１０〜３０及びホスト７０と接続される。ストレージ装置１０とストレージ装置２０とは、通信経路ＣＮ４０を介して接続可能である。
【００７８】
ホスト７０と各ストレージ装置１０，２０を接続する通信ネットワークＣＮ１０と、外部接続用に使用される通信ネットワークＣＮ２０とを別々の通信ネットワークとして構成することにより、外部接続による通信がホスト７０とストレージ装置１０，２０との間の通信に与える影響を低減することができる。但し、これに限らず、通信ネットワークＣＮ１０とＣＮ２０とを同一の通信ネットワークとして構成してもよい。また、管理用ネットワークＣＮ３０を廃止し、通信ネットワークＣＮ１０を用いて管理用の情報を流通させる構成でもよい。
【００７９】
ストレージシステムの構成は、図２に示すものに限らず、他の変形が存在する。他の構成例については、図５〜図８と共に後述する。図２に示す構成は、ストレージ装置２０が外部接続の接続元となり、ストレージ装置３０が外部接続の接続先となっている例を示している。外部接続とは、上述の通り、自装置の外部に存在する論理ボリュームを自装置の内部に取り込む技術である。外部接続の接続元となるストレージ装置２０は、ストレージ装置３０内の論理ボリューム２３０を利用可能であるため、ストレージ装置２０内に論理ボリューム２３０を備えている必要はない。
【００８０】
ストレージ装置１０〜３０の構成を説明する。各ストレージ装置１０〜３０は、同一構成であってもよい。そこで、ストレージ装置１０を例に挙げて説明する。なお、図２に示すストレージ装置１０は、他のストレージ装置に外部接続されていないが、ストレージ装置１０も、外部接続を用いて他のストレージ装置内の論理ボリュームを自装置内に取り込むことができる。そこで、以下の説明では、外部接続に対応する構成も説明する。
【００８１】
ストレージ装置１０は、例えば、コントローラ１００と記憶デバイス搭載部（以下、ＨＤＵとも呼ぶ）２００とを備える。コントローラ１００は、ストレージ装置１０の動作を制御するものである。コントローラ１００は、例えば、チャネルアダプタ（以下、「ＣＨＡ」）１１０と、ディスクアダプタ（以下、「ＤＫＡ」）１２０と、キャッシュメモリ（図中、「ＣＭ」）１３０と、共有メモリ（図中、「ＳＭ」）１４０と、接続制御部１５０と、サービスプロセッサ（ＳＶＰ）１６０とを備えている。
【００８２】
「第１通信制御部」としてのＣＨＡ１１０は、ホスト７０または他のストレージ装置との間でデータ通信を行うものである。各ＣＨＡ１１０は、図４に示すように、通信ポート１１１（１１１Ａ及び１１１Ｂの総称として符号１１１を用いる）をそれぞれ少なくとも一つ以上備える。各ＣＨＡ１１０は、それぞれＣＰＵやメモリ等を備えたマイクロコンピュータシステムとして構成される。各ＣＨＡ１１０は、ホスト７０から受信したリードコマンドやライトコマンド等の各種コマンドを解釈して実行する。
【００８３】
各ＣＨＡ１１０には、それぞれを識別するためのネットワークアドレス（例えば、ＩＰアドレスやＷＷＮ（World Wide Name））が割り当てられている。各ＣＨＡ１１０は、それぞれが個別にＮＡＳ（Network Attached Storage）として振る舞うこともできる。複数のホスト７０が存在する場合、各ＣＨＡ１１０は、各ホスト７０からの要求をそれぞれ個別に受け付けて処理する。
【００８４】
「第２通信制御部」としてのＤＫＡ１２０は、ＨＤＵ２００が有するディスクドライブ２１０との間でデータ授受を行う。各ＤＫＡ１２０は、ＣＨＡ１１０と同様に、ＣＰＵやメモリ等を備えたマイクロコンピュータシステムとして構成される。各ＤＫＡ１２０は、例えば、ＣＨＡ１１０がホスト７０から受信したデータや、他のストレージ装置から読み出されたデータを、所定のディスクドライブ２１０に書込む。また、各ＤＫＡ１２０は、所定のディスクドライブ２１０からデータを読み出し、ホスト７０または外部のストレージ装置に送信することもできる。ディスクドライブ２１０との間でデータ入出力を行う場合、各ＤＫＡ１２０は、論理的なアドレスを物理的なアドレスに変換する。
【００８５】
各ＤＫＡ１２０は、ディスクドライブ２１０がＲＡＩＤに従って管理されている場合、ＲＡＩＤ構成に応じたデータアクセスを行う。例えば、各ＤＫＡ１２０は、同一のデータを別々のディスクドライブ群（ＲＡＩＤグループ）にそれぞれ書き込んだり（ＲＡＩＤ１）、あるいは、パリティ計算を実行し、データ及びパリティをディスクドライブ群に書き込む（ＲＡＩＤ５、ＲＡＩＤ６等）。
【００８６】
キャッシュメモリ１３０は、ホスト７０または外部のストレージ装置から受信したデータを記憶する。また、キャッシュメモリ１３０は、ディスクドライブ２１０から読み出されたデータを記憶する。後述のように、キャッシュメモリ１３０の記憶空間を利用して、仮想的な中間記憶デバイスが構築される。
【００８７】
共有メモリ（制御メモリとも呼ばれる場合もある）１４０には、ストレージ装置１０の作動に使用するための各種制御情報等が格納される。また、共有メモリ１４０には、ワーク領域が設定されるほか、後述する各種テーブル類も格納される。
【００８８】
なお、ディスクドライブ２１０のいずれか一つあるいは複数を、キャッシュ用のディスクとして使用してもよい。また、キャッシュメモリ１３０と共有メモリ１４０とは、それぞれ別々のメモリとして構成することもできるし、同一のメモリの一部の記憶領域をキャッシュ領域として使用し、他の記憶領域を制御領域として使用することもできる。
【００８９】
接続制御部１５０は、各ＣＨＡ１１０，各ＤＫＡ１２０，キャッシュメモリ１３０及び共有メモリ１４０を相互に接続させる。接続制御部１５０は、例えば、クロスバスイッチ等として構成可能である。
【００９０】
ＨＤＵ２００は、複数のディスクドライブ２１０を備えている。ディスクドライブ２１０としては、例えば、ハードディスクドライブ、フレキシブルディスクドライブ、磁気テープドライブ、半導体メモリドライブ、光ディスクドライブ等のような各種記憶デバイス及びこれらの均等物を用いることができる。
【００９１】
例えば、複数のディスクドライブ２１０の物理的記憶領域を一つにまとめてＲＡＩＤグループ２２０を構成することができる。このＲＡＩＤグループ２２０の物理的記憶領域には、固定サイズまたは可変サイズの論理ボリューム２３０を少なくとも一つ以上設けることができる。
【００９２】
ＳＶＰ１６０は、ＬＡＮ等の内部ネットワークを介して、各ＣＨＡ１１０とそれぞれ接続されている。ＳＶＰ１６０は、ＣＨＡ１１０を介して、共有メモリ１４０やＤＫＡ１２０とデータ授受を行うことができる。ＳＶＰ１６０は、ストレージ装置１０内の各種情報を収集し、管理サーバ８０に提供する。
【００９３】
他のストレージ装置２０，３０もストレージ装置１０と同様に構成可能である。しかし、ストレージ装置１０〜３０の構成がそれぞれ異なっていてもよい。例えば、各ストレージ装置１０〜３０の機種、ベンダ、型式等が異なっていても、本発明を適用することができる。
【００９４】
ホスト７０のハードウェア構成を説明する。ホスト７０は、例えば、ＣＰＵ７１と、メモリ７２と、ＨＢＡ（Host Bus Adapter）７３と、ＬＡＮインターフェース７４及び内蔵ディスク７５を備えて構成される。なお、図中では、ホスト７０を一つだけ示しているが、実際には、複数のホスト７０を設けることができる。
【００９５】
ＨＢＡ７３は、通信ネットワークＣＮ１０を介して、ストレージ装置１０，２０にアクセスするための通信部であり、図１中の通信部５Ｃに対応する。ＬＡＮインターフェース７４は、管理用の通信ネットワークＣＮ３０を介して、管理サーバ８０（あるいは、管理サーバ８０及び各ストレージ装置１０〜３０）と通信するための通信部である。
【００９６】
管理サーバ８０の構成を説明する。管理サーバ８０は、ストレージシステムの構成等を管理するためのコンピュータ装置であり、例えば、システム管理者や保守員等のユーザにより操作される。管理サーバ８０は、例えば、ＣＰＵ８１と、メモリ８２と、ユーザインターフェース（図中、「ＵＩ」）８３と、ＬＡＮインターフェース８４及び内蔵ディスク８５を備えて構成される。ＬＡＮインターフェース８４は、管理用の通信ネットワークＣＮ３０を介して、各ストレージ装置１０〜３０及びホスト７０と通信を行うためのものである。
【００９７】
ユーザインターフェース８３は、ユーザに後述の管理画面を提供し、かつ、ユーザからの指定を受け取るためのものである。ユーザインターフェース８３は、例えば、ディスプレイ装置、キーボードスイッチ、ポインティングデバイス等から構成される。なお、例えば、音声入力によって各種の指定を行うことができる構成でもよい。
【００９８】
図３は、ホスト７０及び管理サーバ８０のソフトウェア構成を示す説明図である。図３（ａ）に示すように、ホスト７０は、例えば、オペレーティングシステム７６と、ＨＢＡドライバ７７と、パス制御ソフトウェア７８と、アプリケーションプログラム７９とを備えている。
【００９９】
ＨＢＡドライバ７７は、ＨＢＡ７３を制御するためのソフトウェアである。パス制御ソフトウェア７８は、図１中のパス制御部５Ｂに対応する。パス制御ソフトウェア７８は、アプリケーションプログラム７９からのアクセス要求に応じて、どのアクセスパスを用いてアクセスすべきかを決定する。パス制御ソフトウェア７８は、アクセス先のボリュームに繋がるアクセスパスが複数存在する場合、プライマリに設定されているアクセスパスとセカンダリに設定されているパスとを切り替えて使用する。以下の説明では、パス制御ソフトウェア７８をパス制御部７８と呼ぶ場合がある。アプリケーションプログラム７９は、図１中のアプリケーションプログラム５Ａに対応するソフトウェアである。
【０１００】
図３（ｂ）に示すように、管理サーバ８０は、ホスト７０とほぼ同様に、オペレーティングシステム８６と、ＨＢＡドライバ８７と、パス制御ソフトウェア８８と、管理プログラム８９とを備えている。管理プログラム８９は、仮想ボリューム２３１の設定をストレージ装置に指示する機能と、仮想ボリューム２３１と別の論理ボリューム２３０との間のリモートコピーの設定をストレージ装置に指示する機能とを実現する。管理プログラム８９は、図１中の仮想ボリューム設定部４Ａ及びリモートコピー設定部４Ｂに対応するソフトウェアである。
【０１０１】
図４は、ストレージシステムの記憶構造を示す説明図である。図４には、上述した外部接続に関する構成等が示されている。
【０１０２】
ストレージ装置２０の記憶構造は、例えば、物理的記憶階層と論理的記憶階層とに大別することができる。物理的記憶階層は、物理的なディスクであるＰＤＥＶ（Physical Device）２１０により構成される。ＰＤＥＶは、ディスクドライブ２１０に該当する。
【０１０３】
論理的記憶階層は、複数の（例えば２種類の）階層から構成可能である。一つの論理的階層は、ＶＤＥＶ（Virtual Device）２２０、または、ＶＤＥＶ２２０のように扱われる仮想的なＶＤＥＶ２２１のいずか一つから構成可能である。他の一つの論理的階層は、ＬＤＥＶ（Logical Device）２３０から構成することができる。
【０１０４】
ＶＤＥＶ２２０は、例えば、４個１組（３Ｄ＋１Ｐ）、８個１組（７Ｄ＋１Ｐ）等のような所定数のＰＤＥＶ２１０をグループ化して構成される。グループに属する各ＰＤＥＶ２１０によりそれぞれ提供する記憶領域を集合させて、一つのＲＡＩＤ記憶領域が形成される。このＲＡＩＤ記憶領域がＶＤＥＶ２２０となる。
【０１０５】
ＶＤＥＶ２２０が物理的な記憶領域上に構築されるのとは対照的に、ＶＤＥＶ２２１は、物理的な記憶領域を直接には必要としない仮想的な中間記憶デバイスである。ＶＤＥＶ２２１は、物理的な記憶領域に直接関係づけられるものではなく、外部ストレージ装置３０のＬＵ（Logical Unit）をマッピングするための受け皿となる。ここでは、接続元であるストレージ装置２０から見て、接続先のストレージ装置３０はストレージ装置２０の外部に存在するため、外部ストレージ装置３０と呼ぶ。
【０１０６】
ＬＤＥＶ２３０は、ＶＤＥＶ２２０またはＶＤＥＶ２２１上に、それぞれ少なくとも一つ以上設けることができる。ＬＤＥＶ２３０とは、上述の論理ボリューム２３０のことである。ＬＤＥＶ２３０は、例えば、ＶＤＥＶ２２０を可変サイズまたは固定サイズで分割することにより構成される。
【０１０７】
オープン系ホストの場合、ＬＤＥＶ２３０がＬＵ２４０にマッピングされることにより、ホスト７０は、ＬＤＥＶ２３０を一つの物理的なディスクとして認識する。オープン系のホストは、ＬＵＮ（Logical Unit Number ）や論理ブロックアドレスを指定することにより、所望のＬＤＥＶ２３０にアクセスする。なお、メインフレーム系ホストの場合は、ＬＤＥＶ２３０を直接認識する。
【０１０８】
ＬＵ２４０は、ＳＣＳＩの論理ユニットとして認識可能なデバイスである。各ＬＵ２４０は、ターゲットポート１１１Ａを介してホスト７０に接続される。各ＬＵ２４０には、少なくとも一つ以上のＬＤＥＶ２３０をそれぞれ関連付けることができる。なお、一つのＬＵ２４０に複数のＬＤＥＶ２３０を関連付けることにより、ＬＵサイズを仮想的に拡張することもできる。
【０１０９】
ＣＭＤ（Command Device）２５０は、ホスト７０とストレージ装置２０との間で、コマンドやステータスを受け渡すために使用される専用のＬＵである。ホスト７０からのコマンドは、ＣＭＤ２５０に書き込まれる。ストレージ装置２０は、ＣＭＤ２５０に書き込まれたコマンドに応じた処理を実行し、その実行結果をステータスとしてＣＭＤ２５０に書き込む。ホスト７０は、ＣＭＤ２５０に書き込まれたステータスを読み出して確認し、次に実行すべき処理内容をＣＭＤ２５０に書き込む。このようにして、ホスト７０は、ＣＭＤ２５０を介して、ストレージ装置２０に各種の指示を与えることができる。
【０１１０】
なお、ホスト７０から受信したコマンドを、ＣＭＤ２５０に格納せずに、ストレージ装置２０は、直接的に処理することもできる。また、実体のデバイス（ＬＵ）を定義せずに、ＣＭＤを仮想的なデバイスとして生成し、ホスト７０からのコマンドを受け付けて処理するように構成してもよい。例えば、ＣＨＡ１１０は、ホスト７０から受信したコマンドを共有メモリ１４０に書き込み、この共有メモリ１４０に記憶されたコマンドを、ＣＨＡ１１０又はＤＫＡ１２０が処理する。その処理結果は共有メモリ１４０に書き込まれ、ＣＨＡ１１０からホスト７０に送信される。
【０１１１】
ストレージ装置２０のイニシエータポート（External Port）１１１Ｂには、通信ネットワークＣＮ２０を介して、外部ストレージ装置３０が接続されている。この通信ポート１１１Ｂは、外部接続用の通信ポートである。
【０１１２】
外部ストレージ装置３０は、複数のＰＤＥＶ２１０と、ＰＤＥＶ２１０の提供する記憶領域上に設定されたＶＤＥＶ２２０と、ＶＤＥＶ２２０上に少なくとも一つ以上設定可能なＬＤＥＶ２３０とを備えている。そして、各ＬＤＥＶ２３０は、ＬＵ２４０にそれぞれ関連付けられている。
【０１１３】
外部ストレージ装置３０のＬＵ２４０は、ＶＤＥＶ２２１にマッピングされている。図４中の上側に太い点線で示すように、ストレージ装置２０内の仮想的なＶＤＥＶ２２１に設けられたＬＤＥＶ２３０Ａは、ＬＵ２４０を介してホスト７０に提供される。
【０１１４】
ホスト７０がＬＤＥＶ２３０Ａにライトコマンドやリードコマンドを発行すると、このコマンドは、外部ストレージ装置３０へ発行されるコマンドに変換され、ストレージ装置２０から外部ストレージ装置３０に送信される。外部ストレージ装置３０は、ストレージ装置２０から受領したコマンドに応じて処理を行い、その処理結果をストレージ装置２０に送信する。ストレージ装置２０は、外部ストレージ装置３０から受信した処理結果を、ホスト７０に送信する。
【０１１５】
図４では、ストレージ装置２０がストレージ装置３０内の論理ボリューム２３０を取り込む場合を例に挙げて説明したが、ストレージ装置１０がストレージ装置３０内の論理ボリューム２３０を取り込む場合も同様である。
【０１１６】
図５〜図８は、ストレージシステムの構成の変形例を示す。図２では、ストレージ装置２０が外部接続の接続元ストレージ装置である場合を示した。図５では、仮想ボリューム２３１を提供する各ストレージ装置１０，２０がいずれも外部接続を使用しない場合を示している。即ち、各ストレージ装置１０，２０は、それぞれが実ボリューム２３０（図中のＬＤＥＶ１とＬＤＥＶ２）を備えている。これら各実ボリューム２３０からコピーペアを形成することにより、仮想ボリューム２３１が形成される。
【０１１７】
パス制御部７８は、アクセスパスＰ１０またはアクセスパスＰ２０のいずれか一つを用いて、仮想ボリューム２３１にアクセスする。ここでは、初期状態において、アクセスパスＰ１０がプライマリパス、アクセスパスＰ２０がセカンダリパスであるとする。
【０１１８】
プライマリパスＰ１０が使用される場合、実際には、ホスト７０は、ストレージ装置１０内の論理ボリューム２３０（ＬＤＥＶ１）にアクセスする。ホスト７０が論理ボリューム２３０（ＬＤＥＶ１）に記憶されているデータを更新させると、この更新は、ストレージ装置２０内の論理ボリューム２３０（ＬＤＥＶ２）にも適用される。コピーペアを形成する２つの論理ボリューム２３０（ＬＤＥＶ１，ＬＤＥＶ２）によって、一つの仮想ボリューム２３１が構成されているためである。仮想ボリューム２３１を構成する各論理ボリューム２３０（ＬＤＥＶ１，ＬＤＥＶ２）には、それぞれ同一の仮想識別子が設定されているため、パス制御部７８は、各論理ボリューム２３０（ＬＤＥＶ１，ＬＤＥＶ２）の見分けがつかず、同一のデバイスとして認識する。
【０１１９】
図５に示す例では、仮想ボリューム２３１のデータが、それぞれ異なる論理ボリューム２３０に記憶されているため、ストレージ装置１０内の論理ボリューム２３０とストレージ装置２０内の論理ボリューム２３０とでコピーペアを形成し、各論理ボリューム２３０同士の記憶内容を一致させる必要がある。しかし、仮想ボリューム２３１のデータが、別々のストレージ装置１０，２０内にそれぞれ存在するため、データの冗長度は高い。
【０１２０】
図６は、別の接続構成を示す。図６には、ストレージ装置１０及びストレージ装置２０の両方が、共通の外部ストレージ装置３０を利用する場合が示されている。外部ストレージ装置３０内の論理ボリューム２３０を外部ボリュームと呼ぶ場合がある。
【０１２１】
仮想ボリューム２３１を構成する一方の論理ボリューム２３０（ＬＤＥＶ１）は、外部ボリューム２３０（ＬＤＥＶ３）の記憶領域を利用している。同様に、仮想ボリューム２３１を構成する他方の論理ボリューム２３０（ＬＤＥＶ２）も、外部ボリューム２３０（ＬＤＥＶ３）の記憶領域を利用する。
【０１２２】
ストレージ装置１０内の論理ボリューム２３０（ＬＤＥＶ１）とストレージ装置２０内の論理ボリューム２３０（ＬＤＥＶ２）とがペア（コピーペアではない）を形成し、これら各論理ボリューム２３０（ＬＤＥＶ１，ＬＤＥＶ２）に同一の仮想識別子を設定することにより、仮想ボリューム２３１が形成される。
【０１２３】
図６に示す例では、一つの外部ボリューム２３０（ＬＤＥＶ３）をストレージ装置１０及びストレージ装置２０で共有するため、仮想ボリューム２３１のデータは、外部ボリューム２３０（ＬＤＥＶ３）にのみ記憶される。つまり、仮想ボリューム２３１のデータは、外部ストレージ装置３０の外部ボリューム２３０（ＬＤＥＶ３）によって一元管理されている。従って、図６に示す例では、仮想ボリューム２３１を構成する各論理ボリューム２３０（ＬＤＥＶ１，ＬＤＥＶ２）同士で記憶内容を一致させる必要はない。
【０１２４】
図７は、仮想ボリューム２３１を提供する各ストレージ装置１０，２０の両方が、外部ストレージ装置３０，４０を利用する場合を示す。一方のストレージ装置１０は、外部ストレージ装置３０内の外部ボリューム２３０（ＬＤＥＶ３）を利用しており、他方のストレージ装置２０は、外部ストレージ装置４０内の外部ボリューム２３０（ＬＤＥＶ４）を利用している。つまり、図７の例では、仮想ボリューム２３１を提供する各ストレージ装置１０，２０は、それぞれ異なる外部ボリュームを利用している。この場合、論理ボリューム２３０（ＬＤＥＶ１）と論理ボリューム２３０（ＬＤＥＶ２）との記憶内容を一致させる必要がある。
【０１２５】
なお、図８に示す例は、図２に示す構成を、図５〜図７と同様に簡略化して示したものである。その構成は既に述べたので、ここでの説明は省略する。
【０１２６】
図９は、仮想ボリューム２３１を設定するための管理情報を記憶するテーブルＴ１０を示す説明図である。このテーブルＴ１０は、「第１管理情報」に該当する。仮想ボリューム管理情報テーブルＴ１０は、管理サーバ８０によって生成され、かつ、仮想ボリューム２３１を提供する各ストレージ装置内の共有メモリ１４０にそれぞれ記憶される。
【０１２７】
仮想ボリューム管理情報テーブルＴ１０は、例えば、番号Ｃ１１と、仮想ボリューム識別子（図中、識別子をＩＤと表示）Ｃ１２と、第１の仮想ボリューム構成情報Ｃ１３と、第２の仮想ボリューム構成情報Ｃ１４とを対応付けている。
【０１２８】
番号Ｃ１１とは、仮想ボリューム２３１が設定された順番を示す。仮想ボリューム識別子Ｃ１２とは、「仮想識別子」に該当する。以下、仮想ボリューム識別子を仮想識別子と略記する場合がある。仮想識別子は、上述の通り、ストレージシステム内で仮想ボリューム２３１を一意に特定するための識別情報であり、ホスト７０に公開される。仮想識別子Ｃ１２は、例えば、装置番号（図中「Ｓ／Ｎ」）Ｃ１５と、ＬＤＥＶ番号Ｃ１６とを含んで構成される。装置番号Ｃ１５とは、ストレージシステム内でストレージ装置を一意に特定するための識別情報である。ＬＤＥＶ番号Ｃ１６とは、ストレージ装置の内部で論理ボリューム２３０を管理するための識別情報である。仮想識別子Ｃ１２の構成例については、さらに後述する。
【０１２９】
第１の仮想ボリューム構成情報Ｃ１３とは、仮想ボリューム２３１を構成する一方の論理ボリュームに関する情報である。第１の仮想ボリューム構成情報Ｃ１３は、例えば、装置番号Ｃ１５と、ＬＤＥＶ番号Ｃ１６と、ボリューム属性Ｃ１７とを含んでいる。ボリューム属性Ｃ１７とは、仮想ボリューム２３１を構成するプライマリボリュームであるかセカンダリボリュームであるかの区別を示す。ストレージ装置１０内の論理ボリューム２３０がプライマリボリュームとして選択された場合、装置番号Ｃ１５には、ストレージ装置１０の装置番号が設定される。
【０１３０】
第２の仮想ボリューム構成情報Ｃ１４とは、仮想ボリューム２３１を構成する他方の論理ボリュームに関する情報である。第２の仮想ボリューム構成情報Ｃ１４は、第１の仮想ボリューム構成情報Ｃ１３と同様に、装置番号Ｃ１５と、ＬＤＥＶ番号Ｃ１６と、ボリューム属性Ｃ１７とを含んでいる。ストレージ装置２０内の論理ボリューム２３０がセカンダリボリュームとして選択された場合、装置番号Ｃ１５には、ストレージ装置２０の装置番号が設定される。
【０１３１】
図９の下側には、仮想識別子Ｃ１２の構成例が示されている。仮想識別子Ｃ１２に含まれる装置番号Ｃ１５は、仮想ボリューム２３１を提供する２つのストレージ装置１０，２０の装置番号Ｃ１５１，Ｃ１５２から構成される（仮想識別子の装置番号Ｃ１５＝一方のストレージ装置の装置番号Ｃ１５１＋他方のストレージ装置の装置番号Ｃ１５２）。仮想識別子Ｃ１２のＬＤＥＶ番号Ｃ１６には、プライマリボリュームのＬＤＥＶ番号が使用される。
【０１３２】
図１０は、仮想識別子Ｃ１２の別の構成例を示す。仮想識別子Ｃ１２は、一方のストレージ装置の装置番号Ｃ１５１と、他方のストレージ装置の装置番号Ｃ１５２と、プライマリボリュームのＬＤＥＶ番号Ｃ１６と、連番Ｃ１８とを含んで構成してもよい。
【０１３３】
連番Ｃ１８とは、仮想ボリューム２３１を生成した順序で設定される番号である。仮想識別子Ｃ１２内に連番Ｃ１８を設けることにより、仮想ボリューム２３１の生成及び消滅が繰り返された場合でも、仮想識別子が重複するのを防止できる。
【０１３４】
図９の例では、一方のストレージ装置の番号と他方のストレージ装置の番号及びプライマリボリュームのＬＤＥＶ番号から仮想識別子が構成される。例えば、ある仮想ボリュームが解消されて、その仮想ボリュームに関するペアを形成していたボリュームが通常ボリュームにそれぞれ戻り、その後、それらのボリュームが再びペアを形成した場合は、最初の仮想ボリュームと同一の仮想識別子を有する別の仮想ボリュームが形成される可能性がある。これに対し、図１０に示す例では、連番Ｃ１８を使用して仮想識別子を生成するため、ストレージシステムを長期間運用した場合でも、仮想識別子が重複する事態を防止することができる。
【０１３５】
なお、仮想識別子の構成は、図９，図１０に示すものに限らない。例えば、図６に示すように、仮想ボリュームを共同で提供する各ストレージ装置が一つの外部ボリュームを共用する場合、外部ストレージ装置の番号と外部ボリュームのＬＤＥＶ番号とから仮想識別子を生成してもよい。また、連番Ｃ１８に代えて、他の手法によって仮想識別子の重複を防止する構成でもよい。
【０１３６】
図１１は、リモートコピーを設定するための管理情報を記憶するテーブルＴ２０を示す説明図である。このテーブルＴ２０は、「第２管理情報」に該当する。リモートコピーペア管理テーブルＴ２０は、管理サーバ８０によって生成され、かつ、リモートコピー元のボリュームを提供するストレージ装置内の共有メモリ１４０及びリモートコピー先のボリュームを提供するストレージ装置内の共有メモリ１４０にそれぞれ記憶される。リモートコピー元ボリュームまたはリモートコピー先ボリュームのいずれかが仮想ボリューム２３１である場合、その仮想ボリューム２３１を提供する各ストレージ装置の共有メモリ１４０にもテーブルＴ２０がそれぞれ記憶される。
【０１３７】
リモートコピーペア管理テーブルＴ２０は、例えば、番号Ｃ２１と、第１のリモートコピー構成情報Ｃ２２と、第２のリモートコピー構成情報Ｃ２３とを含んでいる。番号Ｃ２１は、リモートコピーペアを設定した順番を示す。第１のリモートコピー構成情報Ｃ２２は、リモートコピーペアを形成する一方のボリュームに関する情報である。第２のリモートコピー構成情報Ｃ２３は、リモートコピーペアを形成する他方のボリュームに関する情報である。
【０１３８】
第１，第２のリモートコピー構成情報Ｃ２２，Ｃ２３は、それぞれ装置番号Ｃ２４と、ＬＤＥＶ番号Ｃ２５と、リモートコピー属性Ｃ２６と、仮想ボリューム属性Ｃ２７とを備えている。
【０１３９】
装置番号Ｃ２４とは、リモートコピー元ボリュームまたはリモートコピー先ボリュームの存在するストレージ装置を特定する番号である。ＬＤＥＶ番号Ｃ２５とは、リモートコピー元ボリュームまたはリモートコピー先ボリュームを特定する番号である。リモートコピー属性Ｃ２６とは、リモートコピー元であるかリモートコピー先であるかの区別を示す情報である。図中、リモートコピー元ボリュームを「ＲＣ−ＰＶＯＬ」、リモートコピー先ボリュームを「ＲＣ−ＳＶＯＬ」と表示している。ＲＣとは、リモートコピーを略したものである。仮想ボリューム（図中、「ＶＶＯＬ」と表記）属性Ｃ２７とは、リモートコピー元ボリュームまたはリモートコピー先ボリュームが、上述の仮想ボリューム２３１として形成されているか否かを示す。仮想ボリューム属性Ｃ２７に「ＯＮ」が設定されているボリュームは、仮想ボリューム２３１として形成されていることを意味する。仮想ボリューム属性Ｃ２７に「ＯＦＦ」が設定されているボリュームは、仮想ボリューム２３１ではない通常のボリュームであることを意味する。
【０１４０】
図１２は、各ストレージ装置が論理ボリュームをそれぞれ管理するためのテーブルＴ３０を示す。つまり、各ストレージ装置は、テーブルＴ３０をそれぞれ備えている。テーブルＴ３０は、共有メモリ１４０内に記憶される。
【０１４１】
ＬＤＥＶ管理テーブルＴ３０は、例えば、ＬＤＥＶ番号Ｃ３１と、ボリューム種別Ｃ３２と、ＶＤＥＶ番号Ｃ３３と、開始アドレスＣ３４と、サイズＣ３５とを含む。ＬＤＥＶ番号Ｃ３１とは、各ストレージ装置内で論理ボリューム２３０を管理するための識別情報である。ＬＤＥＶ番号Ｃ３１は、ローカル識別子と呼ぶこともできる。
【０１４２】
ボリューム種別Ｃ３２とは、内部ボリュームとして構成されているか外部ボリュームを利用して構成されているかの区別を示す。内部ボリュームとして構成されるボリュームとは、ストレージ装置内の物理的記憶領域を利用しているボリュームである。外部ボリュームを利用して構成されるボリュームとは、外部ストレージ装置内のボリューム（外部ボリューム）を利用しているボリュームである。
【０１４３】
ＶＤＥＶ番号Ｃ３３とは、そのボリュームの属するＶＤＥＶを特定する情報である。開始アドレスＣ３４とは、ＶＤＥＶの物理的記憶領域のどの部分からボリュームが開始するかを示す。サイズＣ３５とは、ボリュームの記憶容量である。
【０１４４】
図１３は、外部ボリュームを管理するためのテーブルＴ４０を示す。このテーブルＴ４０は、外部ボリュームを利用するストレージ装置の共有メモリ１４０に記憶される。外部ボリュームを利用しないストレージ装置は、テーブルＴ４０を備えない。
【０１４５】
外部ボリューム管理テーブルＴ４０は、例えば、ＶＤＥＶ番号Ｃ４１と、接続ポートＣ４２と、外部ストレージ情報Ｃ４３とを含む。ＶＤＥＶ番号Ｃ４１とは、ＶＤＥＶを特定する情報である。接続ポートＣ４２とは、外部ストレージ装置が接続されている通信ポート１１１Ｂを特定する情報である。
【０１４６】
外部ストレージ情報Ｃ４３は、外部ストレージ装置の構成を示す。外部ストレージ情報Ｃ４３は、例えば、ＬＵＮ＿Ｃ４４と、ベンダ名Ｃ４５と、装置名Ｃ４６と、ボリューム識別子Ｃ４７とを含む。ＬＵＮ＿Ｃ４４とは、外部ボリュームに対応付けられているＬＵＮを示す。ベンダ名Ｃ４５とは、外部ストレージ装置の提供者名を示す。装置名Ｃ４６とは、外部ストレージ装置を特定するための番号を示す。ボリューム識別子Ｃ４７とは、外部ストレージ装置内のボリューム（外部ボリューム）を外部ストレージ装置が識別するための、ローカル識別子である。
【０１４７】
ストレージシステムの動作について説明する。図１４は、全体の動作の流れを簡略化して示すフローチャートである。本実施例のストレージシステムでは、管理サーバ８０がストレージ装置に指示を出して仮想ボリュームを設定させ（Ｓ１０）、続いて、ホスト７０は、管理サーバ８０からの通知に応じて、ストレージシステム内のデバイス（ボリューム）を認識する（Ｓ１１）。さらに、管理サーバ８０は、ストレージ装置に指示を出してリモートコピーを設定させる（Ｓ１２）。なお、後述のように、仮想ボリュームを解消する場合は、別の処理が実行される。
【０１４８】
図１５は、仮想ボリュームの設定方法を説明するために使用される、ストレージシステムの構成図である。図１５に示すように、第１のストレージ装置１０と第２のストレージ装置２０とによって仮想ボリューム２３１を生成する場合を説明する。
【０１４９】
図１６は、仮想ボリュームの設定方法を示すフローチャートである。管理サーバ８０は、ストレージシステム内の各ストレージ装置に対して、構成情報をそれぞれ要求する（Ｓ２０，Ｓ２２，Ｓ２４）。各ストレージ装置は、管理サーバ８０に、ＬＤＥＶ管理テーブルＴ３０等を送信する（Ｓ２１，Ｓ２３，Ｓ２５）。
【０１５０】
管理サーバ８０は、各ストレージ装置から収集した構成情報に基づいて、仮想ボリュームを設定するための画面Ｇ１０を生成する。ユーザは、設定画面Ｇ１０を用いて、仮想ボリュームを構成するボリュームペアを指定する。設定画面Ｇ１０及び指定方法については、図１８〜図２２と共に後述する。
【０１５１】
管理サーバ８０は、ユーザの指定に基づいて、図９に仮想ボリューム管理情報テーブルＴ１０として示したように、仮想ボリューム管理情報を生成する（Ｓ２６）。管理サーバ８０は、仮想ボリュームのプライマリボリュームを提供するストレージ装置または仮想ボリュームのセカンダリボリュームを提供するストレージ装置のいずれか一方に、仮想ボリューム管理情報を送信する（Ｓ２７）。図１６では、セカンダリボリュームを提供する第２ストレージ装置２０に仮想ボリューム管理情報を送信する場合を示す。
【０１５２】
ストレージ装置２０は、管理サーバ８０から受信した仮想ボリューム管理情報を、ストレージ装置２０内の共有メモリ１４０に記憶し、ストレージ装置２０のコントローラ１００に仮想ボリュームの構成を設定する（Ｓ２８）。続いて、ストレージ装置２０は、仮想ボリューム管理情報を、プライマリボリュームを提供するストレージ装置１０に転送する（Ｓ２９）。
【０１５３】
ストレージ装置１０は、ストレージ装置２０から受信した仮想ボリューム管理情報をストレージ装置１０の共有メモリ１４０に記憶し、ストレージ装置１０のコントローラ１００に仮想ボリュームの構成を設定する（Ｓ３０）。ストレージ装置１０は、仮想ボリュームの設定が完了した旨を、仮想ボリューム管理情報の送信元であるストレージ装置２０に報告する（Ｓ３１）。
【０１５４】
ストレージ装置２０は、ストレージ装置１０からの設定完了報告を受信すると、管理サーバ８０に、仮想ボリュームの設定が完了した旨を報告する（Ｓ３２）。
【０１５５】
プライマリボリュームを提供するストレージ装置１０は、セカンダリボリュームを提供するストレージ装置２０に形成コピーの開始を指示し（Ｓ３３）、仮想ボリュームを構成するプライマリボリュームに記憶されているデータをストレージ装置２０に送信する（Ｓ３４）。ストレージ装置２０は、ストレージ装置１０から受信したデータを、仮想ボリュームを構成するセカンダリボリュームに書き込む。形成コピーが完了すると、ストレージ装置２０は、ストレージ装置１０に形成コピーが完了した旨を報告する（Ｓ３５）。
【０１５６】
形成コピーとは、２つのボリューム同士の記憶内容を一致させるために行われる初期コピーである。以下の説明では、便宜上、仮想ボリュームのプライマリボリュームを提供するストレージ装置をプライマリストレージ装置と、仮想ボリュームのセカンダリボリュームを提供するストレージ装置をセカンダリストレージ装置と、呼ぶ場合がある。
【０１５７】
図１７は、ホスト７０がストレージシステム内のデバイスを検出する処理を示すフローチャートである。デバイスとは、論理デバイス（論理ボリューム２３０）である。管理サーバ８０は、ホスト７０にデバイスの認識を要求する（Ｓ４０）。
【０１５８】
ホスト７０は、管理サーバ８０からの指示に応じて、各ストレージ装置１０，２０に、Inquiryコマンドを送信する（Ｓ４１，Ｓ４４）。各ストレージ装置は、ホスト７０からの指示に応じて、Inquiry情報をそれぞれ生成する（Ｓ４２，Ｓ４５）。Inquiry情報とは、Inquiryコマンドに応答するための情報であり、例えば、ＬＵ番号（ＬＵＮ）、仮想識別子、パスの種別が含まれている。ここでは、仮想ボリューム２３１が生成済の場合を例に挙げるため、Inquiry情報には仮想識別子が含まれている。
【０１５９】
各ストレージ装置１０，２０は、ホスト７０にInquiry情報をそれぞれ送信する（Ｓ４３，Ｓ４６）。ホスト７０のパス制御部７８は、同一の仮想識別子を有するデバイスを、同一のデバイスであると認識する。パス制御部７８は、そのデバイス（仮想ボリューム２３１）にアクセス可能な２つのアクセス経路Ｐ１０，Ｐ２０を、交替パス動作の可能なパスであるとして設定する（Ｓ４７）。
【０１６０】
ホスト７０は、各ストレージ装置１０，２０から収集したInquiry情報を管理サーバ８０に転送する（Ｓ４８）。管理サーバ８０は、ホスト７０からの情報を受信することにより、ホスト７０によるデバイスの認識処理が完了したことを確認する。
【０１６１】
図１８〜図２２を参照して、仮想ボリュームの設定方法の一例を説明する。図１８〜図２２に示す各画面は、例えば、管理サーバ８０のユーザインターフェース８３を介して、ユーザに提供される。
【０１６２】
図１８は、仮想ボリュームを設定するための設定画面Ｇ１０の初期状態を示す。設定画面Ｇ１０には、例えば、ボリュームリストＧ１１と、選択リストＧ１２と、適用ボタンＧ１３及び取消ボタンＧ１４が表示される。
【０１６３】
ボリュームリストＧ１１は、ユーザの選択可能なボリュームの一覧を示す。ボリュームリストＧ１１には、例えば、各ボリューム毎に、そのボリュームの存在するストレージ装置の装置番号（Ｓ／Ｎ）と、そのボリュームの番号（ＬＤＥＶ＃）と、ボリューム種別と、ボリュームサイズとがそれぞれ示される。
【０１６４】
選択リストＧ１２は、ユーザによって選択されたボリュームが表示される。初期状態では、未だユーザによって何も選択されていないため、空欄となっている。
【０１６５】
図１９は、ユーザが、仮想ボリュームを構成するプライマリボリュームを選択する様子を示す。ユーザは、ボリュームリストＧ１１に表示されたボリュームの中から、所望のボリュームをプライマリボリュームとして選択する。例えば、ユーザは、所望のボリュームを選択した状態でポインティングデバイスをクリック等することにより、サブメニューＧ１５を呼び出す。サブメニューＧ１５は、プライマリボリュームとして選択するか、または、セカンダリボリュームとして選択するかを指示するためのものである。
【０１６６】
ユーザは、選択したボリュームの上で、そのボリュームをプライマリボリュームとして選択し、適用ボタンＧ１３を操作する。これにより、ユーザによって指定されたボリュームがプライマリボリュームに決定される。
【０１６７】
図２０は、ユーザが、仮想ボリュームを構成するセカンダリボリュームを選択する様子を示す。図１９で述べたと同様に、ユーザは所望のボリュームの上でサブメニューＧ１５を呼び出し、そのボリュームをセカンダリボリュームとして選択する。ユーザが適用ボタンＧ１３を操作すると、ユーザによって指定されたボリュームがセカンダリボリュームに決定される。なお、図２０の選択リストＧ１２には、先に決定されたプライマリボリュームに関する情報が表示されている。
【０１６８】
図２１は、仮想ボリュームの構成を最終決定する様子を示す。選択リストＧ１２には、ユーザにより指定されたプライマリボリューム及びセカンダリボリュームに関する情報がそれぞれ表示されている。ユーザが適用ボタンＧ１３を操作すると、選択リストＧ１２に示された構成で、仮想ボリュームが設定される。
【０１６９】
図２２は、ユーザにより指定された仮想ボリュームの一覧を示す画面Ｇ２０である。この画面には、各仮想ボリューム毎に、その仮想ボリュームの識別子（仮想識別子）Ｇ２１と、その仮想ボリュームを構成するプライマリボリュームを特定する情報Ｇ２２と、その仮想ボリュームを構成するセカンダリボリュームを特定する情報Ｇ２３と、その仮想ボリュームのサイズＧ２４とが示される。ユーザによって指定された仮想ボリュームの構成に関する情報は、仮想ボリューム管理情報テーブルＴ１０に登録される。
【０１７０】
図２３〜図２６に基づいて、仮想ボリュームにデータを読み書きする場合の処理を説明する。図２３は、仮想ボリュームからデータを読み出す場合の処理を示す。ホスト７０は、プライマリストレージ装置にリードコマンドを発行する（Ｓ５０）。プライマリストレージ装置は、リードコマンドに応じて、論理ボリューム２３０からデータを読出し、読み出したデータをホスト７０に送信する（Ｓ５１）。プライマリストレージ装置は、リードコマンドの処理が完了した旨をホスト７０に通知する（Ｓ５２）。
【０１７１】
図２４は、仮想ボリュームにデータを書き込む場合の処理を示す。ホスト７０は、プライマリストレージ装置にライトコマンドを発行し（Ｓ６０）、ライトデータをプライマリストレージ装置に送信する（Ｓ６１）。より詳しくは、プライマリストレージ装置は、ホスト７０からのライトコマンドを受信すると、キャッシュメモリ１３０に空き領域があるか否か等を判断し、ライトデータの受け入れが可能な場合に、ホスト７０にライトデータの受信が可能であることを通知する。この通知を受信したホスト７０は、プライマリストレージ装置にライトデータを送信する。
【０１７２】
プライマリストレージ装置は、ライトデータをキャッシュメモリ１３０に記憶させた後、セカンダリストレージ装置にライトコマンドを発行し（Ｓ６２）、ライトデータをセカンダリストレージ装置に送信する（Ｓ６３）。
【０１７３】
セカンダリストレージ装置は、プライマリストレージ装置から受信したライトデータをキャッシュメモリ１３０に記憶し、ライトコマンドの処理が完了した旨をプライマリストレージ装置に報告する（Ｓ６４）。
【０１７４】
プライマリストレージ装置は、セカンダリストレージ装置によるライトコマンドの処理を確認すると、ホスト７０にライトコマンドの処理完了を報告する（Ｓ６５）。
【０１７５】
プライマリストレージ装置及びセカンダリストレージ装置は、例えば、処理負荷の少ないタイミングを見計らって、キャッシュメモリ１３０に記憶されたライトデータをディスクドライブ２１０に書き込む。キャッシュメモリ１３０からディスクドライブ２１０にデータを転送することをディステージ処理と呼ぶ。
【０１７６】
次に、アクセス障害が発生した場合のライト処理及びリード処理を説明する。図２６は、プライマリストレージ装置のプライマリボリュームからデータを読み出すことができない場合を示す。
【０１７７】
最初に、ホスト７０は、プライマリボリュームに向けて、リードコマンドを発行する（Ｓ７０）。プライマリボリュームへのアクセスに何らかの障害が発生している場合、タイムアウトエラー等が発生する（Ｓ７１）。そこで、パス制御部７８は、プライマリパスからセカンダリパスに切り替えて、セカンダリボリュームにリードコマンドを発行する（Ｓ７４）。
【０１７８】
セカンダリストレージ装置は、ホスト７０からリードコマンドを受信すると、そのリードコマンドの対象とするボリュームが、仮想ボリュームを構成するセカンダリボリュームであるか否かを判定する（Ｓ７４）。
【０１７９】
セカンダリストレージ装置は、セカンダリボリュームへのリードコマンドであることを確認すると、共有メモリ１４０に記憶されている仮想ボリューム管理情報を書き換え、プライマリボリュームとセカンダリボリュームの属性を逆転させる（Ｓ７５）。即ち、今までプライマリボリュームであったボリュームの属性をセカンダリボリュームに、今までセカンダリボリュームであったボリュームの属性をプライマリボリュームに、それぞれ変更させる。
【０１８０】
セカンダリストレージ装置は、プライマリストレージ装置にボリューム属性の切替を要求し（Ｓ７６）、セカンダリストレージ装置内の仮想ボリューム管理情報をプライマリストレージ装置に転送する（Ｓ７７）。
【０１８１】
プライマリストレージ装置は、セカンダリストレージ装置から受信した仮想ボリューム管理情報をプライマリストレージ装置内の共有メモリ１４０に記憶し、ボリューム属性を変更する（Ｓ７８）。プライマリストレージ装置は、セカンダリストレージ装置に、仮想ボリューム管理情報の更新が完了した旨を報告する（Ｓ７９）。
【０１８２】
セカンダリストレージ装置は、ホスト７０から要求されたデータを読み出して、ホスト７０に送信する（Ｓ８０）。セカンダリストレージ装置は、リードコマンドの処理が完了した旨を、ホスト７０に報告する（Ｓ８１）。
【０１８３】
例えば、一時的なアクセス障害の場合のように、ホスト７０に記憶されている仮想ボリューム管理情報を更新させる必要がない場合、セカンダリストレージ装置からホスト７０に仮想ボリューム管理情報を送信する必要はない。
【０１８４】
これに代えて、Ｓ８１の後で、セカンダリストレージ装置からホスト７０に、セカンダリストレージ装置内の仮想ボリューム管理情報を送信し、ホスト７０に記憶されている仮想ボリュームを更新させてもよい。
【０１８５】
また、例えば、プライマリストレージ装置に重い障害が発生しており、セカンダリストレージ装置がプライマリストレージ装置と通信できない場合は、Ｓ７６〜Ｓ７９の処理を省略する構成でもよい。
【０１８６】
図２６は、アクセス障害が発生した場合のライト処理を示す。ホスト７０は、プライマリボリュームにライトコマンドを発行する（Ｓ９０）。プライマリボリュームへのアクセス障害のため、パス制御部７８は、エラーを検出する（Ｓ９１）。パス制御部７８は、プライマリパスからセカンダリパスに自動的に切り替えて（Ｓ９２）、セカンダリボリュームに向けてライトコマンドを発行する（Ｓ９３）。
【０１８７】
セカンダリストレージ装置は、ホスト７０からライトコマンドを受信すると、セカンダリボリュームへのアクセスであるか否かを判定し（Ｓ９４）、前記同様に、仮想ボリューム管理情報を書き換える（Ｓ９５）。
【０１８８】
セカンダリストレージ装置は、前記同様に、プライマリストレージ装置にボリューム属性の切替を要求し（Ｓ９６）、仮想ボリューム管理情報をプライマリストレージ装置に送信する（Ｓ９７）。
【０１８９】
プライマリストレージ装置は、自装置に設定されている仮想ボリューム管理情報を更新し（Ｓ９８）、更新完了をセカンダリストレージ装置に報告する（Ｓ９９）。セカンダリストレージ装置は、ホスト７０にライトデータの受信が可能であることを通知する。
【０１９０】
ホスト７０は、セカンダリストレージ装置にライトデータを転送する（Ｓ１００）。セカンダリストレージ装置は、ホスト７０から受信したライトデータをキャッシュメモリ１３０に記憶する。
【０１９１】
セカンダリストレージ装置は、プライマリストレージ装置のプライマリボリュームにライトコマンドを発行し（Ｓ１０１）、ライトデータをプライマリストレージ装置に送信する（Ｓ１０２）。
【０１９２】
プライマリストレージ装置は、セカンダリストレージ装置から受信したライトデータをキャッシュメモリ１３０に記憶し（Ｓ１０３）、ライトコマンドの処理完了をセカンダリストレージ装置に報告する（Ｓ１０４）。
【０１９３】
セカンダリストレージ装置は、プライマリストレージ装置からの完了報告を受信すると、ライトコマンドの処理が完了した旨をホスト７０に報告する（Ｓ１０５）。
【０１９４】
なお、セカンダリストレージ装置がプライマリストレージ装置と通信できない場合、Ｓ９６〜Ｓ９９、Ｓ１０１〜Ｓ１０４を省略可能である。この場合は、セカンダリボリュームの記憶内容とプライマリボリュームの記憶内容が不一致となり、両ボリューム間に差分が発生する。そこで、セカンダリストレージ装置は、例えば、差分ビット等の差分管理データを用いて、両ボリューム間の差分を管理する。プライマリストレージ装置が障害から回復した場合、セカンダリストレージ装置は、プライマリストレージ装置に差分データを送信する。これにより、プライマリボリュームの記憶内容とセカンダリボリュームの記憶内容を再び一致させることができる。
【０１９５】
上述のように、仮想ボリュームは、プライマリボリュームとセカンダリボリュームのペアによって形成されるため、ホスト７０は、プライマリパス及びセカンダリパスという二重化されたアクセスパスのいずれか一つを用いて、仮想ボリュームにアクセスすることができる。また、仮想ボリュームを構成するプライマリボリューム及びセカンダリボリュームのデータ格納先デバイス（論理ボリューム）がそれぞれ物理的に異なる場合、データ保護を冗長化することができる。従って、仮想ボリュームは、従来にない利便性及び信頼性をユーザに提供することができる。
【０１９６】
さらに、ユーザは、プライマリサイトから離れたセカンダリサイトに、仮想ボリュームのデータのコピーを保存させることができる。これにより、災害等が生じた場合でもデータを保護することができ、ディザスタリカバリ性能が向上する。
【０１９７】
そこで、リモートコピーの設定方法及びリモートコピーの動作について説明する。図２７は、リモートコピーの設定方法及び動作を説明するための、ストレージシステムの構成例を示す。ストレージ装置１０とストレージ装置３０、ストレージ装置２０とストレージ装置３０とは、それぞれ外部接続用の通信ネットワークＣＮ２１，ＣＮ２０によって接続されている。また、ホスト７０は、各ストレージ装置１０〜３０とそれぞれ通信を行うことができる。
【０１９８】
図２８は、リモートコピーの設定処理を示すフローチャートである。ストレージ装置１０及びストレージ装置２０によって提供される仮想ボリュームと、ストレージ装置３０のボリュームとをリモートコピーペアに設定する方法を説明する。仮想ボリュームがリモートコピー元ボリューム（ＲＣ−ＰＶＯＬ）である場合を説明する。
【０１９９】
管理サーバ８０は、各ストレージ装置１０〜３０に、ＬＤＥＶ管理テーブルＴ３０等の構成情報の取得をそれぞれ要求する（Ｓ１１０，Ｓ１１２，Ｓ１１４）。各ストレージ装置１０〜３０は、自装置の構成情報を管理サーバ８０にそれぞれ送信する（Ｓ１１１，Ｓ１１３，Ｓ１１５）。
【０２００】
管理サーバ８０は、各ストレージ装置１０〜３０から収集した構成情報に基づいて、リモートコピー設定画面Ｇ３０を生成し、このリモートコピー設定画面Ｇ３０をユーザに操作させることにより、リモートコピーペア管理テーブルＴ２０で説明したリモートコピー管理情報を生成する（Ｓ１１６）。
【０２０１】
管理サーバ８０は、リモートコピー元である仮想ボリュームを提供する、プライマリストレージ装置１０またはセカンダリストレージ装置２０のうち、いずれか一方のストレージ装置にリモートコピー管理情報を送信する。図２８では、セカンダリストレージ装置２０に送信する場合を示す。
【０２０２】
セカンダリストレージ装置２０は、管理サーバ８０から受信したリモートコピー管理情報を共有メモリ１４０に記憶し、セカンダリストレージ装置２０にリモートコピーを設定する（Ｓ１１８）。セカンダリストレージ装置２０は、リモートコピー管理情報をプライマリストレージ装置１０に転送する（Ｓ１１９）。
【０２０３】
プライマリストレージ装置１０は、セカンダリストレージ装置２０から受信したリモートコピー管理情報を、プライマリストレージ装置１０の共有メモリ１４０に記憶し、プライマリストレージ装置１０にリモートコピーを設定する（Ｓ１２０）。
【０２０４】
さらに、プライマリストレージ装置１０は、リモートコピー先のストレージ装置３０に、リモートコピー管理情報を送信する（Ｓ１２１）。リモートコピー先のストレージ装置３０は、受信したリモートコピー管理情報をストレージ装置３０の共有メモリ１４０に記憶し、ストレージ装置３０にリモートコピーを設定する（Ｓ１２２）。リモートコピー先のストレージ装置３０は、プライマリストレージ装置１０にリモートコピーの設定が完了した旨を通知する（Ｓ１２３）。
【０２０５】
プライマリストレージ装置１０は、リモートコピー先のストレージ装置３０における設定完了を確認すると、セカンダリストレージ装置２０に、リモートコピーの設定が完了した旨を報告する（Ｓ１２４）。
【０２０６】
セカンダリストレージ装置２０は、管理サーバ８０に、リモートコピーの設定が完了した旨を報告する（Ｓ１２５）。
【０２０７】
例えば、処理負荷の少ないタイミングを見計らって、リモートコピー元のプライマリストレージ装置１０は、リモートコピー先のストレージ装置３０に形成コピーの開始を指示する（Ｓ１２６）。プライマリストレージ装置１０は、プライマリボリュームに記憶されているデータをリモートコピー先のストレージ装置３０に送信する（Ｓ１２７）。リモートコピー先のストレージ装置３０は、受信したデータをリモートコピー先ボリュームに書き込む。形成コピーが完了すると、リモートコピー先のストレージ装置３０は、プライマリストレージ装置１０に、形成コピーの完了を報告する（Ｓ１２８）。
【０２０８】
図２９〜図３２に基づいて、ユーザが管理サーバ８０を用いてリモートコピーの設定を指示する様子を説明する。図２９は、リモートコピーを設定する画面Ｇ３０である。
【０２０９】
リモートコピー設定画面Ｇ３０は、例えば、仮想ボリュームリストＧ３１と、通常ボリュームリストＧ３２と、選択リストＧ３３と、適用ボタンＧ３４及び取消ボタンＧ３５を備える。
【０２１０】
仮想ボリュームリストＧ３１は、ストレージシステム内に設けられている仮想ボリューム２３１の一覧を示す。通常ボリュームリストＧ３２は、ストレージシステム内に設けられている通常のボリュームの一覧を示す。選択リストＧ３３は、リモートコピーペアとして選択されたボリュームの一覧を示す。
【０２１１】
ユーザは、所望のボリュームを選択した状態でサブメニューＧ３６を呼び出すことにより、そのボリュームをリモートコピー元ボリュームまたはリモートコピー先ボリュームのいずれかとして選択する。図２９では、プライマリストレージ装置１０及びセカンダリストレージ装置２０によって提供されている仮想ボリューム２３１が、リモートコピー元ボリュームとして選択される。
【０２１２】
図３０は、リモートコピー先ボリュームを選択する様子を示す。ユーザは、所望のボリュームを選択した状態でサブメニューＧ３６を開くことにより、そのボリュームをリモートコピー先ボリュームとして選択する。選択リストＧ３３には、先に選択されたリモートコピー元ボリュームの情報が表示されている。
【０２１３】
図３１は、リモートコピー元の仮想ボリューム及びリモートコピー先の通常ボリュームをそれぞれ選択し終わった状態を示す。ユーザが適用ボタンＧ３４を操作することにより、ユーザによるリモートコピーの指示は完了する。
【０２１４】
図３２は、リモートコピーペアの一覧を示す画面Ｇ４０である。この画面Ｇ４０によって、ユーザは、指定した内容を確認することができる。
【０２１５】
図３３は、通常ボリュームがリモートコピー元ボリュームであり、仮想ボリュームがリモートコピー先ボリュームである場合の、リモートコピーの設定方法を示すフローチャートである。
【０２１６】
管理サーバ８０は、図２８で述べたと同様に、各ストレージ装置１０〜３０から構成情報をそれぞれ取得し（Ｓ１３０〜Ｓ１３５）、リモートコピー管理情報を生成する（Ｓ１３６）。
【０２１７】
管理サーバ８０は、リモートコピー元のストレージ装置３０にリモートコピー管理情報を送信する（Ｓ１３７）。リモートコピー元のストレージ装置３０は、リモートコピーの設定を行った後（Ｓ１３８）、リモートコピー先のプライマリストレージ装置１０にリモートコピー管理情報を送信する（Ｓ１３９）。
【０２１８】
プライマリストレージ装置１０は、受信したリモートコピー管理情報に基づいてリモートコピーの設定を行い（Ｓ１４０）、セカンダリストレージ装置２０にリモートコピー管理情報を送信する（Ｓ１４１）。
【０２１９】
セカンダリストレージ装置２０は、受信したリモートコピー管理情報に基づいてリモートコピーの設定を行い（Ｓ１４２）、プライマリストレージ装置１０に設定完了を報告する（Ｓ１４３）。この報告を受信したプライマリストレージ装置１０は、リモートコピー元のストレージ装置３０に、設定完了を報告する（Ｓ１４４）。
【０２２０】
リモートコピー元のストレージ装置３０は、管理サーバ８０に、リモートコピーの設定が完了した旨を報告する（Ｓ１４５）。
【０２２１】
その後、リモートコピー元のストレージ装置３０は、プライマリストレージ装置１０に形成コピーの開始を指示し（Ｓ１４６）、リモートコピー元ボリュームに記憶されているデータをプライマリストレージ装置１０に送信する（Ｓ１４７）。
【０２２２】
プライマリストレージ装置１０は、受信したデータをプライマリボリュームに書込む（Ｓ１４７）。プライマリストレージ装置１０は、セカンダリストレージ装置２０にライトコマンドを発行し（Ｓ１４８）、プライマリボリュームに記憶されたデータをセカンダリストレージ装置２０に送信する（Ｓ１４９）。
【０２２３】
セカンダリストレージ装置２０は、セカンダリボリュームにデータを書込み、ライトコマンドの処理完了をプライマリストレージ装置１０に報告する（Ｓ１５０）。プライマリストレージ装置１０は、形成コピーが完了した旨をリモートコピー元のストレージ装置３０に報告する（Ｓ１５１）。
【０２２４】
なお、説明の便宜上、あたかも一回のデータ転送で形成コピーが完了するかのように示したが、実際には、複数回のデータ転送によって形成コピーが完了する。
【０２２５】
図３４は、ライトコマンドが発行された場合のリモートコピーの動作を示す。図３４では、図２８で述べたように、プライマリストレージ装置１０及びセカンダリストレージ装置２０によって提供される仮想ボリュームが、リモートコピー元ボリュームである場合を示す。
【０２２６】
ホスト７０は、プライマリボリュームにライトコマンドを発行し（Ｓ１６０）、ライトデータをプライマリボリュームに送信する（Ｓ１６１）。プライマリストレージ装置１０は、ライトデータをキャッシュメモリ１３０に記憶させる（Ｓ１６２）。プライマリストレージ装置１０は、自装置がプライマリボリュームを有していることを確認し（Ｓ１６３）、セカンダリストレージ装置２０にライトコマンド及びライトデータを送信する（Ｓ１６４，Ｓ１６５）。
【０２２７】
セカンダリストレージ装置２０は、プライマリストレージ装置１０から受信したライトデータをセカンダリボリュームに書込み、ライトコマンドの処理が完了した旨をプライマリストレージ装置１０に報告する（Ｓ１６６）。
【０２２８】
これにより、プライマリボリュームの記憶内容とセカンダリボリュームの記憶内容とが一致する。
【０２２９】
続いて、プライマリストレージ装置１０は、自装置がリモートコピー元のストレージ装置であることを確認し（Ｓ１６７）、リモートコピー先のストレージ装置３０にライトコマンド及びライトデータを送信する（Ｓ１６８，Ｓ１６９）。
【０２３０】
リモートコピー先のストレージ装置３０は、リモートコピー元から受信したライトデータをリモートコピー先ボリュームに書込み、プライマリストレージ装置１０に処理が完了した旨を報告する（Ｓ１７０）。
【０２３１】
プライマリストレージ装置１０は、リモートコピー先のストレージ装置３０からの完了報告を受信すると、ホスト７０に、ライトコマンドの処理が完了した旨を報告する（Ｓ１７１）。
【０２３２】
なお、図３４中にＳ１７１Ａとして示すように、プライマリストレージ装置１０は、セカンダリボリュームへのライトデータの書込が完了したことを確認した時点で、ライトコマンドの処理が完了した旨をホスト７０に報告してもよい。
【０２３３】
リモートコピーの完了を確認した後で、ホスト７０にライトコマンドの処理完了を報告する方法を同期方式と呼ぶことができる（Ｓ１７１）。これに対し、リモートコピーの処理完了を確認する前に、ホスト７０にライトコマンドの処理完了を報告する方法を非同期方式と呼ぶことができる（Ｓ１７１Ａ）。
【０２３４】
同期方式の場合、プライマリボリューム、セカンダリボリューム、リモートコピー先ボリュームの３つのボリュームの記憶内容は、全て一致するため、データ保護の信頼性を高くすることができる。しかし、ホスト７０に処理完了を報告するまでに時間がかかり、ストレージシステムの応答性は低下する。
【０２３５】
非同期方式の場合、プライマリボリュームの記憶内容及びセカンダリボリュームの記憶内容が一致した時点で、ホスト７０に処理完了を報告できる。従って、ストレージシステムの応答性は、同期方式のそれよりも改善される。しかし、リモートコピーの完了前にホスト７０に報告するため、リモートコピー先ボリュームの記憶内容とリモートコピー元ボリュームの記憶内容とが一致しているという保証は必ずしもない。
【０２３６】
なお、非同期方式の更なる変形例として、プライマリストレージ装置１０がライトデータをキャッシュメモリ１３０に記憶させた時点で（Ｓ１６２）、ホスト７０にライトコマンドの処理が完了した旨を報告することもできる。
【０２３７】
図３５は、プライマリボリュームへのアクセスに障害が生じた場合の処理を示すフローチャートである。
【０２３８】
ホスト７０は、プライマリボリュームにライトコマンドを発行する（Ｓ１８０）。アクセス障害のため、パス制御部７８は、エラーを検出する（Ｓ１８１）。パス制御部７８は、プライマリパスからセカンダリパスに切り替えて、セカンダリボリュームにライトコマンドを発行する（Ｓ１８２）。
【０２３９】
セカンダリストレージ装置２０は、自装置がセカンダリボリュームを有していることを確認し（Ｓ１８３）、仮想ボリューム管理情報を変更する（Ｓ１８４）。上述の通り、セカンダリストレージ装置は、今までセカンダリボリュームであったボリュームの属性をプライマリボリュームに、今までプライマリボリュームであったボリュームの属性をセカンダリボリュームに、それぞれ変更する。
【０２４０】
セカンダリストレージ装置２０は、プライマリストレージ装置１０にボリューム属性の切替を要求する（Ｓ１８５）。次に、セカンダリストレージ装置２０は、プライマリストレージ装置１０に、ボリューム属性を変更した仮想ボリューム管理情報を送信する（Ｓ１８６）。
【０２４１】
プライマリストレージ装置１０は、セカンダリストレージ装置２０から受信した仮想ボリューム管理情報をプライマリストレージ装置１０の共有メモリ１４０に記憶する（Ｓ１８７）。プライマリストレージ装置１０は、セカンダリストレージ装置２０に、仮想ボリューム管理情報の更新が完了した旨を報告する（Ｓ１８８）。
【０２４２】
セカンダリストレージ装置２０は、ホスト７０からライトデータを受信すると（Ｓ１８９）、このライトデータをセカンダリストレージ装置２０のキャッシュメモリ１３０に記憶させる（Ｓ１９０）。
【０２４３】
セカンダリストレージ装置２０は、プライマリストレージ装置１０にライトコマンドを発行し（Ｓ１９１）、さらに、ライトデータをプライマリストレージ装置１０に送信する（Ｓ１９２）。
【０２４４】
プライマリストレージ装置１０は、セカンダリストレージ装置２０から受信したライトデータをキャッシュメモリ１３０に記憶し（Ｓ１９３）、ライトコマンドの処理が完了した旨をセカンダリストレージ装置２０に報告する（Ｓ１９４）。
【０２４５】
次に、セカンダリストレージ装置２０は、リモートコピーを実行する。セカンダリストレージ装置２０は、リモートコピー先のストレージ装置３０にライトコマンド及びライトデータを送信する（Ｓ１９５，Ｓ１９６）。
【０２４６】
リモートコピー先のストレージ装置３０は、ライトデータをストレージ装置３０のキャッシュメモリ１３０に記憶し、セカンダリストレージ装置２０にライトコマンドの処理が完了した旨を報告する（Ｓ１９７）。
【０２４７】
セカンダリストレージ装置２０は、リモートコピーの完了を確認すると、ホスト７０にライトコマンドの処理が完了した旨を報告する（Ｓ１９８）。
【０２４８】
図３６は、ストレージ装置３０の有する通常ボリュームがリモートコピー元ボリュームであり、ストレージ装置１０及びストレージ装置２０により提供される仮想ボリュームがリモートコピー先ボリュームである場合のライト処理を示す。
【０２４９】
ホスト７０は、ストレージ装置３０にライトコマンド及びライトデータを送信する（Ｓ２００，Ｓ２０１）。ストレージ装置３０は、リモートコピー先ボリュームが仮想ボリュームであることを確認し（Ｓ２０２）、プライマリストレージ装置１０にライトコマンド及びライトデータを送信する（Ｓ２０３，Ｓ２０４）。
【０２５０】
プライマリストレージ装置１０は、ライトデータをプライマリストレージ装置１０のキャッシュメモリ１３０に記憶した後で（Ｓ２０５）、セカンダリストレージ装置２０にライトコマンド及びライトデータを送信する（Ｓ２０６，Ｓ２０７）。
【０２５１】
セカンダリストレージ装置２０は、ライトデータをセカンダリストレージ装置２０のキャッシュメモリ１３０に記憶し、プライマリストレージ装置１０に処理完了を報告する（Ｓ２０８）。なお、説明の便宜上、ライトデータをキャッシュメモリに記憶させることを、ボリュームにデータを書き込むと表現する場合がある。
【０２５２】
プライマリストレージ装置１０は、セカンダリストレージ装置２０からの報告を受信すると、リモートコピー元のストレージ装置３０にライトコマンドの処理が完了した旨を報告する（Ｓ２０９）。
【０２５３】
リモートコピー元のストレージ装置３０は、リモートコピー先での処理完了を確認すると、ホスト７０にライトコマンドの処理が完了した旨を報告する（Ｓ２１０）。
【０２５４】
図３７は、図３６で説明した場合において、仮想ボリュームのプライマリボリュームへのアクセスに障害が発生した場合の処理を示す。
【０２５５】
ホスト７０は、リモートコピー元のストレージ装置３０にライトコマンド及びライトデータを送信する（Ｓ２２０，Ｓ２２１）。ストレージ装置３０は、リモートコピー先ボリュームが仮想ボリュームであることを確認し（Ｓ２２２）、プライマリストレージ装置１０にライトコマンドを送信する（Ｓ２２３）。しかし、プライマリボリュームへのアクセスに障害が発生しているため、リモートコピー元のストレージ装置３０は、エラーを検出する（Ｓ２２４）。
【０２５６】
リモートコピー元のストレージ装置３０は、プライマリパスからセカンダリパスに切り替えて（Ｓ２２５）、セカンダリストレージ装置２０にライトコマンドを送信する（Ｓ２２６）。
【０２５７】
セカンダリストレージ装置２０は、前記同様に、自装置がセカンダリストレージ装置であることを確認し（Ｓ２２７）、仮想ボリューム管理情報を変更する（Ｓ２２８）。セカンダリストレージ装置２０は、プライマリストレージ装置１０にボリューム属性の切替を要求し（Ｓ２２９）、仮想ボリューム管理情報をプライマリストレージ装置１０に送信する（Ｓ２３０）。
【０２５８】
プライマリストレージ装置１０は、仮想ボリューム管理情報を更新し（Ｓ２３１）、更新が完了した旨をセカンダリストレージ装置２０に報告する（Ｓ２３２）。
【０２５９】
セカンダリストレージ装置２０は、リモートコピー元のストレージ装置３０からのライトデータを（Ｓ２３３）、セカンダリストレージ装置２０のキャッシュメモリ１３０に記憶する（Ｓ２３４）。
【０２６０】
セカンダリストレージ装置２０は、プライマリストレージ装置１０にライトコマンド及びライトデータを送信する（Ｓ２３５，Ｓ２３６）。プライマリストレージ装置１０は、ライトデータをプライマリストレージ装置１０のキャッシュメモリ１３０に記憶し（Ｓ２３７）、処理完了をセカンダリストレージ装置２０に報告する（Ｓ２３８）。
【０２６１】
セカンダリストレージ装置２０は、リモートコピー元のストレージ装置３０に、ライトコマンドの処理が完了した旨を、即ち、リモートコピーが完了した旨を報告する（Ｓ２３９）。リモートコピー元のストレージ装置３０は、ホスト７０に、ライトコマンドの処理が完了した旨を報告する（Ｓ２４０）。
【０２６２】
本実施例は、上述のように構成されるため、以下の効果を奏する。本実施例では、プライマリストレージ装置のプライマリボリュームとセカンダリストレージ装置のセカンダリボリュームとで、一つの仮想ボリュームを生成し、ホスト７０に提供する。従って、ホスト７０のパス制御部７８は、プライマリパスまたはセカンダリパスのいずれかを用いることにより、仮想ボリュームへアクセスすることができる。従って、ホスト７０のアプリケーションプログラム７９は、パスの切替を意識することなく、処理を継続することができ、ユーザの使い勝手が向上する。
【０２６３】
本実施例では、仮想ボリュームをプライマリボリューム及びセカンダリボリュームのペアから構成する。従って、仮想ボリューム内のデータをプライマリボリュームとセカンダリボリュームの２カ所に記憶させることも可能であり、データ保護の信頼性を高めることができる。
【０２６４】
本実施例では、管理サーバ８０は、仮想ボリューム２３１を設定するために必要な仮想ボリューム管理情報を、プライマリストレージ装置またはセカンダリストレージ装置のいずれか一方に送信するだけで、仮想ボリューム２３１をストレージシステム内に設けることができる。従って、ユーザは、プライマリストレージ装置及びセカンダリストレージ装置の両方をそれぞれ設定する必要が無く、使い勝手が向上する。
【０２６５】
本実施例では、管理サーバ８０は、リモートコピー管理情報をリモートコピー元ストレージ装置またはリモートコピー先ストレージ装置のいずれかに送信するだけで、リモートコピーの設定を行うことができる。従って、ユーザは、リモートコピー元ストレージ装置及びリモートコピー先ストレージ装置の両方をそれぞれ設定する必要が無く、使い勝手が向上する。
【実施例２】
【０２６６】
図３８，図３９を参照して第２実施例を説明する。本実施例を含む以下の各実施例は、第１実施例の変形例に該当する。以下、第１実施例と重複する説明は割愛する。本実施例では、リモートコピー元ボリューム及びリモートコピー先ボリュームの両方を、仮想ボリュームから構成する。
【０２６７】
即ち、第１ストレージ装置と第２ストレージ装置とがペアを組んで一方の仮想ボリュームを提供しており、第３ストレージ装置と第４ストレージ装置とが別のペアを組んで他方の仮想ボリュームを提供する。第１ストレージ装置及び第２ストレージ装置により提供される一方の仮想ボリュームは、リモートコピー元ボリュームである。第３ストレージ装置及び第４ストレージ装置により提供される他方の仮想ボリュームは、リモートコピー先ボリュームである。
【０２６８】
仮想ボリュームの設定方法は、第１実施例で述べた通りである。管理サーバ８０から、各ペアのそれぞれについて、そのペアを構成する２つのストレージ装置のうちいずれか一方のストレージ装置に、仮想ボリューム管理情報を送信すればよい。
【０２６９】
図３８は、仮想ボリューム同士でリモートコピーを行う場合の設定方法を示す。図中では、便宜上、リモートコピー管理情報をＲＣＩと略記している。管理サーバ８０は、第１〜第４ストレージ装置から、構成情報をそれぞれ取得する（Ｓ２５０）。
【０２７０】
管理サーバ８０は、ユーザの指示に基づいてリモートコピー管理情報を生成し（Ｓ２５１）、リモートコピー元のストレージ装置（第１ストレージ装置または第２ストレージ装置のいずれか一方）にリモートコピー管理情報を送信する（Ｓ２５２）。図３８では、管理サーバ８０は、リモートコピー元の仮想ボリュームを構成している、セカンダリストレージ装置（第２ストレージ装置）にリモートコピー管理情報を送信する。
【０２７１】
第２ストレージ装置は、リモートコピーの設定を行った後（Ｓ２５３）、リモートコピー管理情報を第１ストレージ装置に送信する（Ｓ２５４）。第１ストレージ装置は、リモートコピーの設定を行った後（Ｓ２５５）、リモートコピー先の各ストレージ装置のうちいずれか一方に向けて、リモートコピー管理情報を送信し、リモートコピーペアの設定を指示する（Ｓ２５６）。図３８では、一方の仮想ボリュームのプライマリストレージ装置である第１ストレージ装置から、他方の仮想ボリュームのプライマリストレージ装置である第３ストレージ装置に、リモートコピーペアの設定を指示する。
【０２７２】
第１ストレージ装置及び第２ストレージ装置について述べたと同様に、第３ストレージ装置は、リモートコピーの設定を行った後（Ｓ２５７）、第４ストレージ装置にリモートコピー管理情報を送信する（Ｓ２５８）。第４ストレージ装置は、リモートコピーの設定を行い、設定が完了した旨を第３ストレージ装置に報告する（Ｓ２５９）。
【０２７３】
第３ストレージ装置は、第４ストレージ装置にリモートコピーが設定されたことを確認すると、第１ストレージ装置に設定完了を報告する（Ｓ２６０）。第１ストレージ装置は、第２ストレージ装置に設定完了を報告する（Ｓ２６１）。第２ストレージ装置は、管理サーバ８０に設定完了を報告する（Ｓ２６２）。
【０２７４】
その後、適当なタイミングを見計らって、リモートコピー元のストレージ装置は、形成コピーを開始する。リモートコピー元の第１ストレージ装置は、リモートコピー先の第３ストレージ装置に、形成コピーの開始を指示する（Ｓ２６３）。第１ストレージ装置は、リモートコピー元の仮想ボリュームに記憶されているデータを、第３ストレージ装置に送信する（Ｓ２６４）。
【０２７５】
第３ストレージ装置は、第１ストレージ装置から受信したデータを第３ストレージ装置内のキャッシュメモリに記憶させ、さらに、第４ストレージ装置にライトコマンド及びライトデータを送信する（Ｓ２６５，Ｓ２６６）。第４ストレージ装置は、第３ストレージ装置から受信したデータを第４ストレージ装置内のキャッシュメモリに記憶させ（Ｓ２６７）、第３ストレージ装置に書込み完了を報告する（Ｓ２６８）。第３ストレージ装置は、第１ストレージ装置に処理完了を報告する（Ｓ２６９）。
【０２７６】
図３９は、２つの仮想ボリュームでリモートコピーペアを形成した場合のライト処理を示すフローチャートである。ホスト７０は、第１ストレージ装置にライトコマンド及びライトデータを送信する（Ｓ２７０，Ｓ２７１）。
【０２７７】
第１ストレージ装置は、ライトデータをキャッシュメモリに記憶させ（Ｓ２７２）、自装置がプライマリストレージ装置であることを確認する（Ｓ２７３）。第１ストレージ装置は、セカンダリストレージ装置である第２ストレージ装置に、ライトコマンド及びライトデータを送信する（Ｓ２７４，Ｓ２７５）。第２ストレージ装置は、第１ストレージ装置から受信したライトデータをキャッシュメモリに記憶させた後、書込み完了を第１ストレージ装置に報告する（Ｓ２７６）。
【０２７８】
第１ストレージ装置は、自装置がリモートコピー元ストレージ装置であることを確認する（Ｓ２７７）。第１ストレージ装置は、リモートコピー先の第３ストレージ装置に、ライトコマンド及びライトデータを送信する（Ｓ２７８，Ｓ２７９）。
【０２７９】
第３ストレージ装置は、第１ストレージ装置から受信したライトデータをキャッシュメモリに記憶させる（Ｓ２８０）。第３ストレージ装置は、自装置がプライマリストレージ装置であることを確認し（Ｓ２８１）、ライトコマンド及びライトデータを第４ストレージ装置に送信する（Ｓ２８２，Ｓ２８３）。
【０２８０】
第４ストレージ装置は、第３ストレージ装置から受信したライトデータをキャッシュメモリに記憶させ、第３ストレージ装置に書込み完了を報告する（Ｓ２８４）。第３ストレージ装置は、第１ストレージ装置に書込み完了を報告し（Ｓ２８５）、第１ストレージ装置は、ホスト７０に書込み完了を報告する（Ｓ２８６）。なお、上述の通り、第１ストレージ装置は、リモートコピー先でデータが書き込まれたことを確認するよりも前に、ホスト７０に書込み完了を報告することもできる。
【０２８１】
このように構成される本実施例も第１実施例と同様の効果を奏する。本実施例では、リモートコピー元サイト及びリモートコピー先サイトの両方に、仮想ボリュームをそれぞれ設定するため、データ保護の冗長性をより一層高めることができ、ディザスタリカバリ性能を改善することができる。
【実施例３】
【０２８２】
図４０〜図４２を参照して第３実施例を説明する。本実施例では、仮想ボリュームを構成するプライマリボリューム及びセカンダリボリュームのそれぞれが別々のボリュームとリモートコピーペアを形成する。
【０２８３】
図４０は、仮想ボリュームを構成するプライマリボリュームを、リモートコピー元ボリュームとして設定する様子を示す画面である。即ち、仮想ボリューム全体をリモートコピー元ボリュームとして設定するのではなく、その仮想ボリュームを構成する２つのボリュームのうちいずれか又は両方について、リモートコピーを設定できる。
【０２８４】
図４１は、ストレージシステムの全体構成を示す説明図である。図４１に示すように、第１ストレージ装置１０と第３ストレージ装置３０及び第５ストレージ装置５０は、それぞれ接続されている。第２ストレージ装置２０は、第３ストレージ装置３０，第４ストレージ装置４０及び第６ストレージ装置６０にそれぞれ接続されている。
【０２８５】
第２ストレージ装置２０は、外部接続機能を用いて、第４ストレージ装置４０の論理ボリューム２３０を使用している。従って、第２ストレージ装置２０内のボリュームを対象とするライトコマンドやリードコマンドは、第２ストレージ装置２０内で第４ストレージ装置４０向けのコマンドに変換される。
【０２８６】
図４２は、ストレージシステム内に設けられるリモートコピーペアを簡略化して示す説明図である。仮想ボリューム２３１は、第３ストレージ装置３０内の論理ボリュームとリモートコピーペアを形成する。仮想ボリューム２３１を構成するプライマリボリューム（ＬＤＥＶ１）は、第５ストレージ装置５０内の論理ボリューム（ＬＤＥＶ５）とリモートコピーペアを形成する。仮想ボリューム２３１を構成するセカンダリボリューム（ＬＤＥＶ２）は、第６ストレージ装置６０内の論理ボリューム（ＬＤＥＶ６）とリモートコピーペアを形成する。
【０２８７】
仮想ボリューム２３１と通常ボリューム（ＬＤＥＶ３）とによるリモートコピーについては、第１実施例で述べた通りである。通常時において、仮想ボリューム２３１内のプライマリボリューム（ＬＤＥＶ１）とセカンダリボリューム（ＬＤＥＶ２）とは、記憶内容が同期しており、さらに、プライマリボリュームまたはセカンダリボリュームのいずれかの記憶内容がリモートコピー先のボリューム（ＬＤＥＶ３）に送信される。仮想ボリューム２３１に障害が発生した場合でも、プライマリボリュームまたはセカンダリボリュームのいずれかを用いて、リモートコピー先のボリュームにデータを転送できる。
【０２８８】
即ち、仮想ボリューム２３１を用いるリモートコピーペアの場合、仮想ボリューム２３１を構成する一部のボリューム（ＬＤＥＶ１またはＬＤＥＶ２のいずれか一つ）に障害が発生した場合でも、リモートコピーを継続させることができる。プライマリボリュームまたはセカンダリボリュームのいずれか一方に障害が発生した場合でも、仮想ボリューム２３１を用いて業務を続行することができ、仮想ボリューム２３１に書き込まれたデータをリモートコピー先のボリュームに記憶させることができる。
【０２８９】
これに対し、仮想ボリューム２３１内の一部のボリューム（ＬＤＥＶ１，ＬＤＥＶ２）と通常ボリューム（ＬＤＥＶ５，ＬＤＥＶ６）との間のリモートコピーの場合、仮想ボリューム２３１に発生した障害によって、リモートコピーが中止する場合がある。例えば、プライマリボリュームに障害が発生した場合、プライマリボリュームをリモートコピー元ボリュームとするリモートコピーペア（ＬＤＥＶ１とＬＤＥＶ５のペア）は、リモートコピー処理を停止する。セカンダリボリュームをリモートコピー元ボリュームとするリモートコピーペア（ＬＤＥＶ２とＬＤＥＶ６のペア）は、プライマリボリュームの障害に関係なく、リモートコピーを続行する。
【０２９０】
セカンダリボリュームに障害が発生した場合、セカンダリボリュームがリモートコピー元ボリュームとなっているリモートコピーペアは、リモートコピーを停止する。プライマリボリュームがリモートコピー元ボリュームとなっているリモートコピーペアは、リモートコピーを続行する。
【０２９１】
このように構成される本実施例も第１実施例と同様の効果を奏する。これに加えて、本実施例では、仮想ボリュームの全体を用いてリモートコピーを行うこともできるし、仮想ボリュームの一部を用いてリモートコピーを行うこともできる。さらに、本実施例では、仮想ボリュームの全体を利用するリモートコピーと仮想ボリュームの一部を利用するリモートコピーとを混在させることができる。
【０２９２】
従って、仮想ボリュームを構成するプライマリボリュームまたはセカンダリボリュームのいずれか一方に障害が発生した場合、仮想ボリュームを対象とするリモートコピーを続行させながら、障害発生時の記憶内容を保存することもできる。例えば、プライマリボリュームに障害が発生した場合、セカンダリボリュームを用いて、仮想ボリューム２３１とリモートコピー先ボリューム（ＬＤＥＶ３）とのリモートコピーペアを維持しつつ、障害が発生した時点の記憶内容をプライマリボリュームのリモートコピー先であるボリューム（ＬＤＥＶ５）に保存することができる。これにより、使い勝手が高まる。
【実施例４】
【０２９３】
図４３〜図４７を参照して第５実施例を説明する。本実施例は、仮想ボリュームを削除する場合を説明する。以下に述べるように、本実施例では、仮想ボリュームとリモートコピーとの関係を判定して、仮想ボリュームを削除する。さらに、本実施例では、仮想ボリュームを構成するプライマリボリュームとセカンダリボリュームとのペアを解消する場合に、プライマリボリュームまたはセカンダリボリュームのいずれかを用いて、仮想ボリュームに設定されているリモートコピーを受け継ぐことができる。
【０２９４】
図４３，図４４を参照して、仮想ボリュームに設定されている仮想識別子を引き継ぐことなく、仮想ボリュームを削除する場合を説明する。図４３には、仮想ボリュームを削除する画面Ｇ４０が示されている。ユーザは、図４３中「0x00010002 0x0010」の仮想識別子で特定される仮想ボリュームを選択し、選択した仮想ボリュームの削除をサブメニューＧ３６から指示することができる。
【０２９５】
図４４は、削除対象の仮想ボリュームが決定された状態を示す。選択リストＧ３３には、図４３で選択された仮想ボリュームの情報が表示される。ユーザが、適用ボタンＧ３４を操作することにより、仮想ボリュームは削除される。仮想識別子は、いずれのボリュームにも引き継がれず、その仮想ボリュームは削除される。但し、図４７で後述するように、削除対象の仮想ボリュームにリモートコピーが設定されている場合は、ユーザに警告が発せられる。
【０２９６】
図４５，図４６は、仮想ボリュームに設定された仮想識別子を、その仮想ボリュームを構成するプライマリボリュームまたはセカンダリボリュームのいずれか一方に引き継がせて、その仮想ボリュームを削除する場合を示す。
【０２９７】
図４５に示すように、ユーザは、削除対象の仮想ボリュームを構成するプライマリボリュームを選択して、仮想ボリュームの削除を指示することができる。図４６に示すように、選択リストＧ３６には、削除対象の仮想ボリュームの情報が示される。
【０２９８】
但し、図４６の場合、選択されたプライマリボリュームに関する情報は選択リストＧ３３に表示されるが、選択されていないセカンダリボリュームに関する情報は選択リストＧ３３に表示されていない。
【０２９９】
つまり、仮想ボリュームの全体を削除する場合は、図４３に示すように、仮想識別子を選択し、仮想ボリュームの一部を削除する場合は、図４６に示すように、削除対象の部分（図４５におけるプライマリボリューム）を選択する。仮想ボリュームの一部を削除する場合とは、仮想ボリュームに設定されている仮想識別子を、その仮想ボリュームを構成するいずれか一つのボリュームに引き継がせることを意味する。図４６に示す例では、仮想識別子は、セカンダリボリュームに引き継がれる。
【０３００】
従って、ユーザは、仮想ボリュームを削除した場合でも、それまでと同じ仮想識別子を用いてセカンダリボリュームにアクセスすることができる。もっとも、セカンダリボリュームは、単一のボリュームから構成されているため、２つのボリュームのペアから構成される仮想ボリュームに比べると、データ保護の信頼性は低下する。但し、セカンダリボリュームの記憶内容を別のボリュームにリモートコピーしておくことにより、データ保護を冗長化することができる。
【０３０１】
図４７は、仮想ボリュームを削除する場合の監視処理を示す。管理サーバ８０は、ユーザによる仮想ボリュームの削除が指示されたか否かを判定する（Ｓ３００）。仮想ボリュームの削除とは、仮想ボリュームを構成するボリュームを通常のボリュームに戻し、仮想ボリュームのペアを解消させることを意味する。
【０３０２】
例えば、管理サーバ８０は、削除対象の仮想ボリュームが選択された時点、または、仮想対象のボリュームを選択して適用ボタンＧ３４が操作された時点のいずれかで、仮想ボリュームの削除が指示されたことを検出する（Ｓ３００）。
【０３０３】
仮想ボリュームが解除（削除）される場合（S300:YES）、管理サーバ８０は、仮想識別子（図中「ＶＶＯＬ−ＩＤ」）を引き継ぐか否かを判定する（Ｓ３０１）。仮想識別子を引き継ぐとは、図４５，図４６で述べたように、仮想ボリュームを構成するいずれかのボリュームに仮想識別子を受け継がせることを意味する。
【０３０４】
仮想識別子を引き継がない場合（S301:NO）、管理サーバ８０は、仮想ボリュームにリモートコピーが設定されているか否かを判定する（Ｓ３０２）。仮想ボリュームにリモートコピーが設定されていない場合（S302:NO）、管理サーバ８０は、仮想ボリュームを解除させる（Ｓ３０３）。
【０３０５】
仮想ボリュームにリモートコピーが設定されている場合（S302:YES）、管理サーバ８０は、ユーザに警告する（Ｓ３０４）。例えば、管理サーバ８０は、「その仮想ボリュームにはリモートコピーが設定されています。リモートコピーの設定を解除してから、仮想ボリュームを削除して下さい。」のようなエラーメッセージをユーザに与える。ユーザは、仮想ボリュームに設定されているリモートコピーを解除した後、仮想ボリュームの削除を改めて指示する。
【０３０６】
一方、図４５，図４６で述べたように、仮想ボリュームを構成する複数のボリュームのいずれか一方に仮想識別子を引き継がせる場合（S301:YES）、仮想ボリュームに設定されていたリモートコピーを維持可能であるか否かを判定する（Ｓ３０５）。
【０３０７】
例えば、図４１に示すストレージシステムにおいて、セカンダリボリュームが仮想識別子を受け継ぐ場合を説明する。セカンダリストレージ装置である第２ストレージ装置２０は、通信ネットワークＣＮ２を介して、リモートコピー先ストレージ装置である第３ストレージ装置３０に接続されている。
【０３０８】
従って、第２ストレージ装置２０と第３ストレージ装置３０との間に通信リンクが設定されていれば、仮想ボリュームと第３ストレージ装置３０内のリモートコピー先ボリュームとで構成されていたリモートコピーペアを、セカンダリボリュームとリモートコピー先ボリュームとで構成されるリモートコピーペアに置き換えることができる。
【０３０９】
これに対し、もしも、第２ストレージ装置２０と第３ストレージ装置３０とが通信可能ではない場合や、セカンダリボリュームとリモートコピー先ボリュームとの間に通信リンクが設定されていない場合は、仮想ボリュームに設定されていたリモートコピーをセカンダリボリュームが引き継ぐことはできない。
【０３１０】
仮想ボリュームに設定されているリモートコピーをセカンダリボリュームが引き継ぐことができる場合（S305:YES）、管理サーバ８０は、仮想ボリュームを削除し、プライマリボリューム及びセカンダリボリュームを通常のボリュームに戻す（Ｓ３０６）。仮想ボリュームに設定されているリモートコピーをセカンダリボリュームが引き継ぐことができない場合（S305:NO）、管理サーバ８０は、ユーザに警告する（Ｓ３０７）。
【０３１１】
例えば、管理サーバ８０は、「仮想ボリュームに設定されているリモートコピーを引き継ぐために、セカンダリボリュームとリモートコピー先ボリュームとの間の通信リンクを設定してください。」等のエラーメッセージをユーザに通知する。ユーザは、セカンダリボリュームとリモートコピー先ボリュームとの通信リンクを設定した後、仮想ボリュームの削除を改めて指示する。
【０３１２】
このように構成される本実施例も第１実施例と同様の効果を奏する。これに加えて、本実施例では、仮想ボリュームを構成する複数のボリュームのいずれか一方に、仮想識別子を引き継がせて、仮想ボリュームを削除できる。従って、ホスト７０に意識させずに、仮想ボリュームを削除することができる。さらに、図１６で述べたような方法により、仮想識別子を引き継いだボリュームと別のボリュームとで新たなペアを構成できる。従って、ホスト７０による仮想識別子の認識を維持したままで、仮想ボリュームの構成を変化させることができる。
【０３１３】
具体的には、例えば、第１の状態では、第１ストレージ装置１０のプライマリボリュームと第２ストレージ装置２０のセカンダリボリュームとで仮想ボリュームを構成し、第２の状態では、セカンダリボリュームが仮想識別子を受け継いで、ホスト７０からのアクセスを単独で処理し、第３の状態では、セカンダリボリュームと別のストレージ装置内のボリュームとで新たな仮想ボリュームを形成できる。第１の状態から第２の状態を経て第３の状態に至るまでの間、仮想識別子は変化しないため、ホスト７０は、実質的に、仮想ボリュームの構成変更を意識しない。
【０３１４】
本実施例では、仮想ボリュームを削除する場合に、その仮想ボリュームにリモートコピーが設定されているならば、ユーザに警告する。従って、ユーザが仮想ボリュームに設定されているリモートコピーに気づかずに、その仮想ボリュームを削除してしまうのを防止でき、使い勝手が向上する。
【０３１５】
なお、本発明は、上述した各実施例に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。
【図面の簡単な説明】
【０３１６】
【図１】本発明の実施形態を示す概念図である。
【図２】本発明の実施例に係るストレージシステムのハードウェア構成図である。
【図３】ホスト及び管理サーバのソフトウェア構成を模式的に示す説明図である。
【図４】ストレージ装置の記憶階層構造を示す説明図である。
【図５】仮想ボリュームの構成例を示す説明図である。
【図６】仮想ボリュームの他の構成例を示す説明図である。
【図７】仮想ボリュームのさらに別の構成例を示す説明図である。
【図８】仮想ボリュームのさらに他の構成例を示す説明図である。
【図９】仮想ボリューム管理情報を管理するテーブルを示す説明図である。
【図１０】仮想識別子の構造を示す説明図である。
【図１１】リモートコピー管理情報を管理するテーブルを示す説明図である。
【図１２】論理ボリュームを管理するテーブルを示す説明図である。
【図１３】外部ボリュームを管理するテーブルを示す説明図である。
【図１４】ストレージシステムの全体動作を模式的に示す流れ図である。
【図１５】仮想ボリュームの設定方法を説明するためのストレージシステムの構成図である。
【図１６】仮想ボリュームの設定方法を示すフローチャートである。
【図１７】ホストがシステム内のボリュームを認識する処理を示すフローチャートである。
【図１８】仮想ボリュームを設定するための画面を示す説明図である。
【図１９】仮想ボリュームを構成するプライマリボリュームが指定される様子を示す画面の説明図である。
【図２０】仮想ボリュームを構成するセカンダリボリュームが指定される様子を示す画面の説明図である。
【図２１】プライマリボリューム及びセカンダリボリュームが指定された状態を示す画面の説明図である。
【図２２】仮想ボリュームのリストを表示する画面の説明図である。
【図２３】仮想ボリュームへのリードコマンドを処理するフローチャートである。
【図２４】仮想ボリュームへのライトコマンドを処理するフローチャートである。
【図２５】障害発生時における、リードコマンドを処理するフローチャートである。
【図２６】障害発生時における、ライトコマンドを処理するフローチャートである。
【図２７】リモートコピーの設定方法を説明するためのストレージシステムの構成図である。
【図２８】リモートコピーの設定方法を示すフローチャートである。
【図２９】リモートコピー元ボリュームが指定される様子を示す画面の説明図である。
【図３０】リモートコピー先ボリュームが指定される様子を示す画面の説明図である。
【図３１】リモートコピー元ボリューム及びリモートコピー先ボリュームが指定された状態を示す画面の説明図である。
【図３２】リモートコピーペアのリストを表示する画面の説明図である。
【図３３】通常ボリュームがリモートコピー元、仮想ボリュームがリモートコピー先となる、リモートコピーの設定方法を示すフローチャートである。
【図３４】リモートコピーの動作を示すフローチャートである。
【図３５】障害発生時におけるリモートコピーの動作を示すフローチャートである。
【図３６】通常ボリュームがリモートコピー元である場合のリモートコピーの動作を示すフローチャートである。
【図３７】通常ボリュームがリモートコピー元であり、かつ、仮想ボリュームに障害が発生した場合の、リモートコピーの動作を示すフローチャートである。
【図３８】第２実施例に係るストレージシステムにおいて、仮想ボリューム同士でリモートコピーを形成する方法を示すフローチャートである。
【図３９】ライトコマンドを処理するフローチャートである。
【図４０】第３実施例に係るストレージシステムにおいて、仮想ボリューム内の一部のボリュームにリモートコピーを設定する画面を示す説明図である。
【図４１】第３実施例のストレージシステムの構成を示す説明図である。
【図４２】ストレージシステムに設定されるリモートコピーの構成を示す説明図である。
【図４３】第４実施例に係るストレージシステムにおいて、仮想識別子を引き継ぐことなく仮想ボリュームを削除する画面を示す説明図である。
【図４４】削除対象の仮想ボリュームが決定された状態を示す画面の説明図である。
【図４５】仮想ボリューム内のボリュームに仮想識別子を引き継がせて、仮想ボリュームを削除する画面を示す説明図である。
【図４６】削除対象の仮想ボリュームが決定された状態を示す画面の説明図である。
【図４７】仮想ボリュームに設定されているリモートコピーを考慮して、仮想ボリュームの削除の可否を判断する処理を示すフローチャートである。
【符号の説明】
【０３１７】
１〜３：ストレージ装置、１Ａ〜３Ａ：論理ボリューム、４：管理サーバ、４Ａ：仮想ボリューム設定部、４Ｂ：リモートコピー設定部、５：ホスト、５Ａ：アプリケーションプログラム、５Ｂ：パス制御部、５Ｃ：通信部、６：仮想ボリューム、１０〜６０：ストレージ装置、７０：ホスト、７８：パス制御ソフトウェア（パス制御部）、７９：アプリケーションプログラム、８０：管理サーバ、８９：管理プログラム、１００：コントローラ、１１０：チャネルアダプタ（CHA）、１１１：通信ポート、１２０：ディスクアダプタ（DKA）、１３０：キャッシュメモリ、１４０：共有メモリ、１５０：接続制御部、２１０：ディスクドライブ、２２０：RAIDグループ（VDEV）、２３０：論理ボリューム（LDEV）。
【図１】
2009093316.tif 000003
【図２】
2009093316.tif 000004
【図３】
2009093316.tif 000005
【図４】
2009093316.tif 000006
【図５】
2009093316.tif 000007
【図６】
2009093316.tif 000008
【図７】
2009093316.tif 000009
【図８】
2009093316.tif 000010
【図９】
2009093316.tif 000011
【図１０】
2009093316.tif 000012
【図１１】
2009093316.tif 000013
【図１２】
2009093316.tif 000014
【図１３】
2009093316.tif 000015
【図１４】
2009093316.tif 000016
【図１５】
2009093316.tif 000017
【図１６】
2009093316.tif 000018
【図１７】
2009093316.tif 000019
【図１８】
2009093316.tif 000020
【図１９】
2009093316.tif 000021
【図２０】
2009093316.tif 000022
【図２１】
2009093316.tif 000023
【図２２】
2009093316.tif 000024
【図２３】
2009093316.tif 000025
【図２４】
2009093316.tif 000026
【図２５】
2009093316.tif 000027
【図２６】
2009093316.tif 000028
【図２７】
2009093316.tif 000029
【図２８】
2009093316.tif 000030
【図２９】
2009093316.tif 000031
【図３０】
2009093316.tif 000032
【図３１】
2009093316.tif 000033
【図３２】
2009093316.tif 000034
【図３３】
2009093316.tif 000035
【図３４】
2009093316.tif 000036
【図３５】
2009093316.tif 000037
【図３６】
2009093316.tif 000038
【図３７】
2009093316.tif 000039
【図３８】
2009093316.tif 000040
【図３９】
2009093316.tif 000041
【図４０】
2009093316.tif 000042
【図４１】
2009093316.tif 000043
【図４２】
2009093316.tif 000044
【図４３】
2009093316.tif 000045
【図４４】
2009093316.tif 000046
【図４５】
2009093316.tif 000047
【図４６】
2009093316.tif 000048
【図４７】
2009093316.tif 000049