(57)【要約】【課題】  現用系サイトと待機系サイトとを持つシステムにおいて、現用系サイトのメンテナンスが終了した後、短時間で現用系サイトを再起動させて業務を再開できるようにする。【解決手段】  管理プログラム２１は、自ボリューム４３、４５のペア状態をコピーに設定する（Ｓ２０１）。相手ボリューム２７、３５のペア状態をコピーに設定する（Ｓ２０２）。差分ビットマップの確認を行い（Ｓ２０３）、差分ビットの有無をチェックする（Ｓ２０４）。差分ビット有りの場合（Ｓ２０４でYes）、相手装置にコピーデータを転送する（Ｓ２０７）。Ｓ２０４で確認した差分ビットを更新して（Ｓ２０８）、Ｓ２０３に復帰する。差分ビットがなくなれば（Ｓ２０４でNo）、自ボリューム４３、４５のペア状態をペアに設定すると共に（Ｓ２０５）、相手ボリューム２７、３５のペア状態をもペアに設定する（Ｓ２０６）。【選択図】        図１８
2005141381.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置を持ち、前記複数の記憶装置の各々が１以上のボリュームを有する現用系サイトと、１つの記憶装置を持ち、前記１つの記憶装置が前記現用系サイトの複数の記憶装置内のボリュームに夫々対応した複数のボリュームを有する、前記現用系サイトをバックアップするための待機系サイトとを有するコンピュータシステムに適用されるものであって、
前記現用系サイトのメンテナンスを行うのに先立ち、前記現用系サイトの各記憶装置に保存されているデータを、前記待機系サイトの記憶装置へミラーリングすると共に、前記現用系サイトを待機状態に、前記待機系サイトを起動可能な状態に、夫々切り換える切換手段と、
前記現用系サイトの記憶装置から前記待機系サイトの記憶装置へミラーリングされたデータが、前記現用系サイトのメンテナンス中に更新されたか否か検知する検知手段と、
前記検知手段が、前記データが更新されたことを検知した場合に、前記ミラーリングされたデータと前記更新されたデータとの差分データを抽出する抽出手段と、
前記抽出手段によって抽出された差分データを、前記待機系サイトの記憶装置から前記メンテナンスが終了した後の前記現用系サイトの記憶装置へ転送する転送手段と、
を備え、
前記切換手段が、前記差分データの前記転送が終了したのを確認した後で、前記現用系サイトを起動可能な状態に、前記待機系サイトを待機状態に、夫々復帰させるようにした記憶装置システム。
【請求項２】
請求項１記載の記憶装置システムにおいて、
前記切換手段によって前記現用系サイト、及び前記待機系サイトの状態が切り換えられた場合に、前記現用系サイトの記憶装置が有する各ボリュームの属性を副ボリュームに、前記待機系サイトの記憶装置が有する各ボリュームの属性を正ボリュームに、夫々切り換えた後、対応するボリューム同士を、夫々再度ペアに設定し直すペア再設定手段を更に備え、
前記ペア再設定手段が、前記切換手段による前記切換が行われるのに先立ち、前記現用系サイトの記憶装置が有する各ボリュームの大きさと、これらボリュームに対応する前記待機系サイトの記憶装置が有する各ボリュームの大きさとを比較して、両者が等しい場合に、前記ペアの再設定を行うようにした記憶装置システム。
【請求項３】
請求項１記載の記憶装置システムにおいて、
前記転送手段が、前記抽出手段が任意の間隔で抽出した差分データのうちの最新の差分データを前記現用系サイトの記憶装置へ転送する記憶装置システム。
【請求項４】
請求項１記載の記憶装置システムにおいて、
前記現用系サイトの記憶装置に保存されているデータを、前記現用系サイトの記憶装置の全体の更新順序に従って前記待機系サイトの記憶装置に転送するために、夫々のデータに付されたタイムスタンプの順序で転送を行う記憶装置システム。
【請求項５】
請求項１又は請求項４記載の記憶装置システムにおいて、
前記待機系サイトの記憶装置に保存されているデータを前記現用系サイトの記憶装置に戻すときには、タイムスタンプを参照することなく、前記待機系サイトの記憶装置内の夫々のボリューム毎の更新順序に従って前記現用系サイトの記憶装置に戻すようにした記憶装置システム。
【請求項６】
複数の記憶装置を持ち、前記複数の記憶装置の各々が１以上のボリュームを有する現用系サイトと、１つの記憶装置を持ち、前記１つの記憶装置が前記現用系サイトの複数の記憶装置内のボリュームに夫々対応した複数のボリュームを有する、前記現用系サイトをバックアップするための待機系サイトとを有するコンピュータシステムに適用されるものであって、
前記現用系サイトのメンテナンスを行うのに先立ち、前記現用系サイトの各記憶装置に保存されているデータを、前記待機系サイトの記憶装置へミラーリングすると共に、前記現用系サイトを待機状態に、前記待機系サイトを起動可能な状態に、夫々切り換えるステップと、
前記現用系サイトの記憶装置から前記待機系サイトの記憶装置へミラーリングされたデータが、前記現用系サイトのメンテナンス中に更新されたか否か検知する検知するステップと、
前記検知ステップにおいて、前記データが更新されたことを検知した場合に、前記ミラーリングされたデータと前記更新されたデータとの差分データを抽出するステップと、
前記抽出ステップにおいて抽出された差分データを、前記待機系サイトの記憶装置から前記メンテナンスが終了した後の前記現用系サイトの記憶装置へ転送するステップと、
を備え、
前記差分データの前記転送が終了したのを確認した後で、前記現用系サイトを起動可能な状態に、前記待機系サイトを大気状態に、夫々復帰させるようにしたコンピュータシステムのデータバックアップ方法。
【請求項７】
請求項６記載のコンピュータシステムのデータバックアップ方法において、
前記切換ステップにおいて前記現用系サイト、及び前記待機系サイトの状態が切り換えられた場合に、前記現用系サイトの記憶装置が有する各ボリュームの属性を副ボリュームに、前記待機系サイトの記憶装置が有する各ボリュームの属性を正ボリュームに、夫々切り換えた後、対応するボリューム同士を、夫々再度ペアに設定し直すステップを更に備え、
前記ペア再設定ステップが、前記切換ステップにおける前記切換が行われるのに先立ち、前記現用系サイトの記憶装置が有する各ボリュームの大きさと、これらボリュームに対応する前記待機系サイトの記憶装置が有する各ボリュームの大きさとを比較して、両者が等しい場合に、前記ペアの再設定を行うようにしたコンピュータシステムのデータバックアップ方法。
【請求項８】
請求項６記載のコンピュータシステムのデータバックアップ方法において、
前記転送ステップにおいて、前記抽出ステップにおいて任意の間隔で抽出した差分データのうちの最新の差分データを前記現用系サイトの記憶装置へ転送するようにしたコンピュータシステムのデータバックアップ方法。
【請求項９】
請求項６記載のコンピュータシステムのデータバックアップ方法において、
前記転送ステップにおいて前記現用系サイトの記憶装置に保存されているデータを、前記現用系サイトの記憶装置の全体の更新順序に従って前記待機系サイトの記憶装置に転送するために、夫々のデータに付されたタイムスタンプの順序で転送を行うようにしたコンピュータシステムのデータバックアップ方法。
【請求項１０】
請求項６又は請求項９記載のコンピュータシステムのデータバックアップ方法において、
前記転送ステップにおいて前記待機系サイトの記憶装置に保存されているデータを前記現用系サイトの記憶装置に戻すときには、タイムスタンプを参照することなく、前記待機系サイトの記憶装置内の夫々のボリューム毎の更新順序に従って前記現用系サイトの記憶装置に戻すようにしたコンピュータシステムのデータバックアップ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置を持ち、上記複数の記憶装置の各々が１以上のボリュームを有する現用系サイトと、１つの記憶装置を持ち、上記１つの記憶装置が上記現用系サイトの複数の記憶装置内のボリュームに夫々対応した複数のボリュームを有する、上記現用系サイトをバックアップするための待機系サイトとを有するコンピュータシステムに適用される記憶装置システムに関する。
【背景技術】
【０００２】
従来、メインフレーム（コンピュータ）において、正サイト（現に運用中のサイト、即ち、現用系サイト）のメンテナンスを実施するのに適用される記憶装置システムが知られている。該システムでは、正サイトの記憶装置のボリューム（正サイトのボリューム）に保存しているデータを、副サイト（待機中のサイト、即ち、待機系サイト）の記憶装置のボリューム（副サイトのボリューム）にコピーし、業務を副サイトに切り換えた後、正サイトのメンテナンスを実施する。該メンテナンスが終了すると、副サイトのボリュームに保存していたデータを、正サイトのボリュームに転送してコピーした後に、正サイトを再起動して正サイトでの業務を再開する。従来、この種の提案として、記憶サブシステムのデータ二重化方法及びデータ二重化システムに係わるものがある（例えば特許文献１参照）。
【０００３】
【特許文献１】特開2001-282628号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記構成のメインフレームに適用される記憶装置システムにおいては、正サイトのメンテナンスが完了しても、副サイトのボリュームにコピーしておいたデータを、正サイトのボリュームへ転送して、それらのデータが正サイトのボリュームに全てコピーされなければ、正サイトのホストは、業務を再開することができない。
【０００５】
しかも、上記データを正サイトのボリュームへコピーするには、副サイトのボリュームの数や、それらのボリュームに保存されているデータの数によっても相違するが、通常、かなりの長時間を要する。特に、副サイトのボリューム数や、それらに保存されているデータ数が多い場合には、例えば最大で１ヶ月程度の時間を要することもあり、そのため折角正サイトのメンテナンスが完了しても、短時間で正サイトを再起動させることができないという問題があった。
【０００６】
従って本発明の目的は、現用系サイトをバックアップするための待機系サイトを持つコンピュータシステムにおいて、現用系サイトのメンテナンスが終了した後、短時間で現用系サイトを再起動させて業務を再開することが可能な記憶装置システムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の第１の観点に従う記憶装置システムは、複数の記憶装置を持ち、上記複数の記憶装置の各々が１以上のボリュームを有する現用系サイトと、１つの記憶装置を持ち、上記１つの記憶装置が上記現用系サイトの複数の記憶装置内のボリュームに夫々対応した複数のボリュームを有する、上記現用系サイトをバックアップするための待機系サイトとを有するコンピュータシステムに適用されるものであって、上記現用系サイトのメンテナンスを行うのに先立ち、上記現用系サイトの各記憶装置に保存されているデータを、上記待機系サイトの記憶装置へミラーリングすると共に、上記現用系サイトを待機状態に、上記待機系サイトを起動可能な状態に、夫々切り換える切換手段と、上記現用系サイトの記憶装置から上記待機系サイトの記憶装置へミラーリングされたデータが、上記現用系サイトのメンテナンス中に更新されたか否か検知する検知手段と、上記検知手段が、上記データが更新されたことを検知した場合に、上記ミラーリングされたデータと上記更新されたデータとの差分データを抽出する抽出手段と、上記抽出手段によって抽出された差分データを、上記待機系サイトの記憶装置から上記メンテナンスが終了した後の上記現用系サイトの記憶装置へ転送する転送手段と、を備え、上記切換手段が、上記差分データの上記転送が終了したのを確認した後で、上記現用系サイトを起動可能な状態に、上記待機系サイトを待機状態に、夫々復帰させるようにしている。
【０００８】
本発明の第１の観点に係る好適な実施形態では、上記切換手段によって上記現用系サイト、及び上記待機系サイトの状態が切り換えられた場合に、上記現用系サイトの記憶装置が有する各ボリュームの属性を副ボリュームに、上記待機系サイトの記憶装置が有する各ボリュームの属性を正ボリュームに、夫々切り換えた後、対応するボリューム同士を、夫々再度ペアに設定し直すペア再設定手段を更に備え、上記ペア再設定手段が、上記切換手段による上記切換が行われるのに先立ち、上記現用系サイトの記憶装置が有する各ボリュームの大きさと、これらボリュームに対応する上記待機系サイトの記憶装置が有する各ボリュームの大きさとを比較して、両者が等しい場合に、上記ペアの再設定を行うようにしている。
【０００９】
上記とは別の実施形態では、上記転送手段が、上記抽出手段が任意の間隔で抽出した差分データのうちの最新の差分データを上記現用系サイトの記憶装置へ転送する。
【００１０】
また、上記とは別の実施形態では、上記現用系サイトの記憶装置に保存されているデータを、上記現用系サイトの記憶装置の全体の更新順序に従って上記待機系サイトの記憶装置に転送するために、夫々のデータに付されたタイムスタンプの順序で転送を行う。
【００１１】
更に、上記とは別の実施形態では、上記待機系サイトの記憶装置に保存されているデータを上記現用系サイトの記憶装置に戻すときには、タイムスタンプを参照することなく、上記待機系サイトの記憶装置内の夫々のボリューム毎の更新順序に従って上記現用系サイトの記憶装置に戻すようにしている。
【００１２】
本発明の第２の観点に従うコンピュータシステムのデータバックアップ方法は、複数の記憶装置を持ち、上記複数の記憶装置の各々が１以上のボリュームを有する現用系サイトと、１つの記憶装置を持ち、上記１つの記憶装置が上記現用系サイトの複数の記憶装置内のボリュームに夫々対応した複数のボリュームを有する、上記現用系サイトをバックアップするための待機系サイトとを有するコンピュータシステムに適用されるものであって、上記現用系サイトのメンテナンスを行うのに先立ち、上記現用系サイトの各記憶装置に保存されているデータを、上記待機系サイトの記憶装置へミラーリングすると共に、上記現用系サイトを待機状態に、上記待機系サイトを起動可能な状態に、夫々切り換えるステップと、上記現用系サイトの記憶装置から上記待機系サイトの記憶装置へミラーリングされたデータが、上記現用系サイトのメンテナンス中に更新されたか否か検知する検知するステップと、上記検知ステップにおいて、上記データが更新されたことを検知した場合に、上記ミラーリングされたデータと上記更新されたデータとの差分データを抽出するステップと、上記抽出ステップにおいて抽出された差分データを、上記待機系サイトの記憶装置から上記メンテナンスが終了した後の上記現用系サイトの記憶装置へ転送するステップと、を備え、上記差分データの上記転送が終了したのを確認した後で、上記現用系サイトを起動可能な状態に、上記待機系サイトを待機状態に、夫々復帰させるようにしている。
【００１３】
本発明の第２の観点に係る好適な実施形態では、上記切換ステップにおいて上記現用系サイト、及び上記待機系サイトの状態が切り換えられた場合に、上記現用系サイトの記憶装置が有する各ボリュームの属性を副ボリュームに、上記待機系サイトの記憶装置が有する各ボリュームの属性を正ボリュームに、夫々切り換えた後、対応するボリューム同士を、夫々再度ペアに設定し直すステップを更に備え、上記ペア再設定ステップが、上記切換ステップにおける上記切換が行われるのに先立ち、上記現用系サイトの記憶装置が有する各ボリュームの大きさと、これらボリュームに対応する上記待機系サイトの記憶装置が有する各ボリュームの大きさとを比較して、両者が等しい場合に、上記ペアの再設定を行うようにしている。
【００１４】
上記とは別の実施形態では、上記転送ステップにおいて、上記抽出ステップにおいて任意の間隔で抽出した差分データのうちの最新の差分データを上記現用系サイトの記憶装置へ転送するようにしている。
【００１５】
また、上記とは別の実施形態では、上記転送ステップにおいて上記現用系サイトの記憶装置に保存されているデータを、上記現用系サイトの記憶装置の全体の更新順序に従って上記待機系サイトの記憶装置に転送するために、夫々のデータに付されたタイムスタンプの順序で転送を行うようにしている。
【００１６】
更に、上記とは別の実施形態では、上記転送ステップにおいて上記待機系サイトの記憶装置に保存されているデータを上記現用系サイトの記憶装置に戻すときには、タイムスタンプを参照することなく、上記待機系サイトの記憶装置内の夫々のボリューム毎の更新順序に従って上記現用系サイトの記憶装置に戻すようにしている。
【発明の効果】
【００１７】
本発明によれば、現用系サイトをバックアップするための待機系サイトを持つコンピュータシステムにおいて、現用系サイトのメンテナンスが終了した後、短時間で現用系サイトを再起動させて業務を再開することが可能な記憶装置システムを提供することができる。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明に従う記憶装置システムが適用されるメインフレーム（コンピュータ）の概要を示したブロック図である。
【００１９】
メインフレームでは、図１に示すように、メイン・コントロール・ユニット（ＭＣＵ）で表記した正サイトの記憶装置がＮ（Ｎ≦４）台（図１では、図示と説明の都合上、２台しか記載していない。）接続サポートが可能である。正サイトにおいて、レスポンス要求が非常に厳しい場合には、ホスト（ホストコンピュータ）‐ＭＣＵ間のパスネックを解消するため、複数のＭＣＵにデータを分散することがある。これに対して、リモート・コントロール・ユニット（ＲＣＵ）で表記した副サイトの（バックアップのための）記憶装置は、コスト抑制等のため１台のみ接続される。ここで、正サイトとは、既述のように現用系サイトのことであり、以下の実施形態ではＡサイトと表記する。また、副サイトとは、既述のように待機系サイトのことであり、以下の実施形態ではＢサイトと表記する。
【００２０】
一方、メインフレームと対比されるオープンシステムにおいては、ＭＣＵ、ＲＣＵ共に接続台数は１台のみである。
【００２１】
正サイトのホスト（ホストコンピュータ）であるホスト３００は、タイムスタンプ付加機能３０１を搭載しており、ホスト３００からデータＡ〜Ｅの順番で、例えば１秒毎に夫々の装置（ＭＣＵ４００、及びＭＣＵ５００）に上記データＡ〜Ｅを書き込む。
【００２２】
上述したように、複数台のＭＣＵ（４００、５００）に跨ってホスト３００からのデータ（ホストデータ）が書き込まれているため、このような複数台のＭＣＵ（４００、５００）に跨るホストデータの更新順序を保証する必要が生じる。
【００２３】
コンシステンシーグループ(CTG)は、ユーザが定義したボリュームペアの集合であり、この定義によって副サイト（の記憶装置であるＲＣＵ６００）での上記データの更新順序の一貫性が確保されている。上記のように、正（サイトの記憶）装置であるＭＣＵが複数台接続されている場合、（それらの記憶）装置単位に付加される更新番号だけでは、副（サイトの記憶）装置側ではデータの更新順序を判断することができないため、データの更新時刻を使用することとなるのである。従って、正サイトのホストであるホスト３００に、タイムスタンプ付加機能３０１がインストールされているのである。コンシステンシーグループ(CTG)については、後に詳述する。
【００２４】
なお、オープンシステムでは、ＭＣＵにおけるボリューム（正ボリューム又はＰＶＯＬとも表記する。）のボリュームサイズと、ＲＣＵにおけるボリューム（副ボリューム又はＳＶＯＬとも表記する。）のボリュームサイズとは一致しているが、メインフレームの場合、ＰＶＯＬのボリュームサイズとＳＶＯＬのボリュームサイズとが一致していない場合がある。このような場合、メインフレームでは、ＰＶＯＬサイズ≦ＳＶＯＬサイズは許可しているが、ＳＶＯＬ／ＰＶＯＬスワップ時に、差分データを再同期することができない可能性がある。
【００２５】
以下、本発明の実施の形態を、図面により詳細に説明する。
【００２６】
図２は、本発明の一実施形態に係る記憶装置システムの全体構成を示すブロック図である。本実施形態は、上述したメインフレームに係わるものである。
【００２７】
上記記憶装置システムは、図２に示すように、複数台のクライアントマシン（クライアント）１１〜１ｎと、Ａサイトのホストコンピュータ（Ａサイトのホスト）３と、Ｂサイトのホストコンピュータ（Ｂサイトのホスト）５と、第１記憶装置７と、第２記憶装置９と、第３記憶装置１１とを備える。ここで、Ａサイトとは、既述のように現に運用中のサイト（現用系のサイト）のことで正サイトと称されるものであり、一方、Ｂサイトとは、既述のように待機中のサイト（待機系のサイト）のことで副サイトと称されるものである。各クライアント１１〜１ｎと、Ａサイトのホスト３と、Ｂサイトのホスト５とは、各々がローカル・エリア・ネットワーク（ＬＡＮ）１３を通じて接続される。Ａサイトのホスト３と、第１記憶装置７、及び第２記憶装置９との間は、ストレージ・エリア・ネットワーク（ＳＡＮ）１５を通じて、Ａサイトのホスト３と、第３記憶装置１１との間は、ＳＡＮ１５、及びＳＡＮ１７を通じて、夫々接続される。一方、Ｂサイトのホスト５と、第１記憶装置７、及び第２記憶装置９との間は、ＳＡＮ１７、及びＳＡＮ１５を通じて、Ｂサイトのホスト５と、第３記憶装置１１との間は、ＳＡＮ１７を通じて夫々接続される。
【００２８】
Ａサイトのホスト３、Ｂサイトのホスト５には、後述するような処理機能を持つ管理プログラム１９、２１が夫々搭載されている。
【００２９】
本実施形態では、Ａサイト（即ち、正サイト）は複数の記憶装置を、Ｂサイト（即ち、副サイト）は１個の記憶装置を、夫々持っている。図２では、第１記憶装置７、及び第２記憶装置９がＡサイト（正サイト）に、第３記憶装置１１がＢサイト（副サイト）に、夫々設置されているものとして記載している。
【００３０】
第１記憶装置７、第２記憶装置９、及び第３記憶装置１１の構成は、いずれも同一である。第１記憶装置７は、コントロールユニット（ＣＵ）２３と、共用（シェアード）メモリ（ＳＭ）２５と、複数（図２では２個）のボリューム２７、２９とを、第２記憶装置９は、ＣＵ３１と、ＳＭ３３と、複数のボリューム３５、３７とを、第３記憶装置１１は、ＣＵ３９と、ＳＭ４１と、複数のボリューム４３、４５とを、夫々備える。ここで、ＣＵ（２３、３１、３９）とは、コンピュータ（ホスト３、又は５）のメモリヘのアクセスを制御するメモリの制御装置であり、調停機能や調整機能を実行するデバイスや回路である。また、ＳＭ（２５、３３、４１）とは、マルチタスキング環境で、複数のプログラムがアクセスするメモリである。更に、ボリューム（２７、２９、３５、３７、４３、４５）とは、コンピュータデータを格納するためのハード・ディスク（磁気ディスク）又はテープ、或いは、磁気ディスクやフロッピ・ディスクの管理上の単位である。
【００３１】
図２では、第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５は、共に、Ａサイト（正サイト）のプライマリ・ボリューム（正ボリューム）（ＰＶＯＬ）として、他方、第３記憶装置１１のボリューム４３、４５は、Ｂサイト（副サイト）のセコンダリ・ボリューム（副ボリューム）（ＳＶＯＬ）として、夫々ボリューム設定されている。本実施形態では、第１記憶装置７のＰＶＯＬ２７と、第３記憶装置１１のＳＶＯＬ４３とがペアになっており、また、第２記憶装置９のＰＶＯＬ３５と、第３記憶装置１１のＳＶＯＬ４５とがペアになっていて、ＰＶＯＬ２７のデータがＳＶＯＬ４３に、ＰＶＯＬ３５のデータがＳＶＯＬ４５に、夫々ミラーリング（コンピュータシステムの磁気ディスク装置に対するデータ保護対策の１つ。コンピュータに磁気ディスク装置を２台接続し、同一のデータを両方の装置に対して同時に書き込むことを指す。）されている。
【００３２】
管理プログラム２１（Ｂサイトのホスト５に搭載されている）は、例えば現用系サイトであるＡサイトのメンテナンス（保守）を行うために、システム管理者（図示しない）が、クライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ｂサイトの）ホスト５に対し、ホスト５のＳＶＯＬ（第３記憶装置１１のボリューム４３、４５）へのアクセスを可能にするテイクオーバコマンドを送出した場合に、該コマンドを実行する。即ち、管理プログラム２１は、テイクオーバコマンドを受け付けると、ＳＶＯＬである第３記憶装置１１のボリューム４３、４５の状態（ボリューム属性）を取得して、図５においてテイクオーバの行動として示す処理内容を実行する。
【００３３】
ここで、テイクオーバコマンドとは、Ａサイトの業務をＢサイトに引き継ぐべく、現用系サイトをＡサイトからＢサイトに切り換えると共に（つまり、待機系サイトをＢサイトからＡサイトに切り換えると共に）、ＳＶＯＬに設定されているボリューム４３、４５をＰＶＯＬに、ＰＶＯＬに設定されているボリューム２７、３５をＳＶＯＬに、夫々切り換えるためのコマンドのことである。
【００３４】
管理プログラム２１は、また、システム管理者（図示しない）が、クライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ｂサイトの）ホスト５に対し、ＣＴＧタイマＯＦＦ指定（つまり、タイムスタンプ無し）の再同期スワップコマンドを実行させるべく、該コマンドを送出した場合に、該コマンドを実行する。即ち、管理プログラム２１は、再同期スワップコマンドを受け付けると、ＳＶＯＬである第３記憶装置１１のボリューム４３、４５の状態（ボリューム属性）を取得して、図１６において再同期スワップの行動として示す処理内容を実行する。
【００３５】
なお、管理プログラム１９（Ａサイトのホスト３に搭載されている）は、例えばＡサイトのメンテナンスを行うため、Ａサイトの業務をＢサイトに引き継ぐべく、システム管理者（図示しない）が、クライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ａサイトの）ホスト３に対し、アクティブ状態からスタンバイ状態に移行するためのコマンドを送出した場合に、該コマンドを実行する。これと共に、管理プログラム１９も、管理プログラム２１が備えている上述したような諸機能を備えているものである。
【００３６】
ここで、ＣＴＧタイマとは、コンシステンシイ・グループ・タイマと称される、データの整合性を保証するためのタイマのことである。再同期スワップコマンドについては後述する。
【００３７】
図３、及び図４は、図２に記載した記憶装置システムにおいてテイクオーバコマンドが実行される場合の各部の処理動作を示す説明図である。
【００３８】
図３において、まずシステム管理者（図示しない）が、Ａサイトのメンテナンスを行うために、Ａサイトの業務をＢサイトに引き継ぐべく、（Ａサイトの）ホスト３に対しアクティブ状態からスタンバイ状態への移行を指示するためのコマンドを送出すると、それによって（Ａサイトの）ホスト３の状態が、アクティブ状態からスタンバイ状態へ変化する（ステップＳ５１）。次に、（Ｂサイトの）ホスト５は、（Ａサイトの）ホスト３の状態変化を検出し、（Ａサイトの）ホスト３の状態がアクティブ状態からスタンバイ状態へ変化したのを確認すると、自身の状態を、スタンバイ状態からアクティブ状態に移行させる。この場合、（Ａサイトの）ホスト３と、（Ｂサイトの）ホスト５とは、ＬＡＮ１３を通じて通信を行っており、且つ、互いに相手方の状態を検知してその検知結果が夫々のホスト（３、５）のメモリ（図示しない）に記録されている。つまり、夫々のホスト（３、５）は、相手方の状態を認識しており、片方がアクティブ状態からスタンバイ状態に切り換わると、他方が自動的にスタンバイ状態からアクティブ状態に切り換わって動作するようになっている。これらの処理動作は、一般にはＨＡソフト（ハイ・アベイラビリティ・ソフトウェア）と称されるホスト側のプログラムの機能によって実現される（ステップＳ５２）。
【００３９】
次に、システム管理者（図示しない）が、（Ｂサイトの）ホスト５に対し、ホスト５の第３記憶装置１１のボリューム４３、４５へのアクセスを可能にするためのテイクオーバコマンドを送出すると、管理プログラム２１は、ＳＶＯＬである（第３記憶装置１１の）ボリューム４３、４５の状態（即ち、ボリューム属性）を取得し、テイクオーバとして、図４に示す処理内容を実行する（ステップＳ５３）。次に、Ａサイトの記憶装置である第１記憶装置７、及び第２記憶装置９においては、Ａサイトのメンテナンスのために駆動電源がＯＦＦにされることにより、ＳＶＯＬ−テイクオーバが実行される（ステップＳ５４）。
【００４０】
ステップＳ５４でのＳＶＯＬ−テイクオーバが実行されることにより、（Ｂサイトの）ホスト５からの第３記憶装置１１のＳＶＯＬ４３、４５へのアクセスが可能になり、更新データのビットマップ情報がＳＭ４１において差分管理されることになる（ステップＳ５５）。
【００４１】
次に、図４において、Ａサイトのメンテナンスが完了したことで、Ａサイトの記憶装置である第１記憶装置７、及び第２記憶装置９の駆動電源がＯＮにされることにより、第１記憶装置７、及び第２記憶装置９が再起動すると、システム管理者（図示しない）は、（Ｂサイトの）ホスト５に対し、ＣＴＧタイマＯＦＦ指定の再同期スワップコマンドを実行させるべく、該コマンドを送出する（ステップＳ５６）。該再同期スワップコマンドを受け付けると、管理プログラム２１は、第３記憶装置１１のボリューム４３、４５に対して該再同期スワップコマンドを実行する（ステップＳ５７）。即ち、管理プログラム２１から該再同期スワップコマンドを受けた第３記憶装置１１は、ＳＶＯＬであるボリューム４３、４５をＰＶＯＬにスワップして差分データ（ＳＭ４１において差分管理されている更新データのビットマップ情報）をＰＶＯＬからＳＶＯＬにスワップされたＡサイトの記憶装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５に再同期させる（ステップＳ５８）。
【００４２】
この再同期が完了してペア状態になった後（つまり、上記スワップされた後の第１記憶装置７のボリューム２７と第３記憶装置１１のボリューム４３、第２記憶装置９のボリューム３５と第３記憶装置１１のボリューム４５が、夫々ペア状態になった後）で、システム管理者（図示しない）は、（Ｂサイトの）ホスト５に対しアクティブ状態からスタンバイ状態への移行を指示するためのコマンドを送出すると、それによって（Ｂサイトの）ホスト５の状態が、アクティブ状態からスタンバイ状態へ変化する。上記ペア状態になったときには、Ａサイトの記憶装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５はＳＶＯＬになっており、一方、Ｂサイトの記憶装置である第３記憶装置１１のボリューム４３、４５はＰＶＯＬになっている。ホスト３、５から夫々定期的にコマンドが発行されているので、上記ペア状態になったことを把握することが可能である（ステップＳ５９）。
【００４３】
次に、（Ａサイトの）ホスト３は、（Ｂサイトの）ホスト５の状態変化を検出し、（Ｂサイトの）ホスト５の状態がアクティブ状態からスタンバイ状態へ変化したのを確認すると、自身の状態を、スタンバイ状態からアクティブ状態に移行させる。これにより、Ａサイトが待機系サイトから現用系サイトへ復帰する（ステップＳ６０）。このＡサイトの状態変化を確認したシステム管理者（図示しない）が、クライアント（１１〜１ｎ）からＬＡＮ１３を通じて（Ａサイトの）ホスト３に対し、ＣＴＧタイマＯＮ指定の再同期スワップコマンドを送出して（Ａサイトの）ホスト３にＣＴＧタイマＯＮ指定の再同期スワップコマンドを実行させる（ステップＳ６１）。
【００４４】
上述した一連の処理動作が終了することによって、Ａサイトの記憶装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５が、夫々新たなＰＶＯＬとして定義付けられて、Ａサイト（のホスト３）がそのメンテナンスのために一時中断していた業務を再開することが可能になる。
【００４５】
なお、Ｂサイト（副サイト）のホスト５は、Ａサイト（正サイト）のホスト３の状態（情報）を意識しなければ、副サイトから正サイトに切り換わることはできない。正／副のボリュームが入れ替わった状態で、上述したボリューム同士のペア状態が設定される。この入れ替わりが行われている間は、ホスト（３、５）からのアクセスは抑止される。この間、仮にデータの更新があったとしても、再同期スワップコマンドに反映される。
【００４６】
図５は、本発明の一実施形態に係る記憶装置システムにおける各ボリュームのボリューム属性とテイクオーバ処理との関係を示す説明図である。
【００４７】
図５において、テイクオーバの行動の一種である「Nop-Takeover」とは、テイクオーバ（処理）は受け付けるが、テイクオーバ（処理）の実行がノーオペレーションで行われることを示している。次に、「ボリューム不整合」とは、上述した各ボリュームの対（ペア）が不整合であるため、テイクオーバ処理が異常終了することを示している。また、「NG」とは、テイクオーバ（処理）を拒否して異常終了することを示している。更に、「Unknown」とは、相手ノードのボリューム属性が不明であり特定することができないために、例えば相手ノードがシステムダウンしている場合のような、通信ができない状態を示している。なお、「SMPL」とは、上述したシンプレックス（つまり、ペアが解除された状態）のことであり、「PSUE」又は「PDUB」とは、ＰＶＯＬ（即ち、正ボリューム）を特殊なサスペンド状態にすることであり、「ＳＳＷＳ」とは、ＳＶＯＬ（即ち、副ボリューム）をサスペンド状態にすることである。
【００４８】
図５において、まず、自ノード（テイクオーバ処理を実行するノード）のボリューム属性が「SMPL」の場合、相手ノードのボリューム属性が同じく「SMPL」であれば、自ノードのテイクオーバの行動は、「NG」であり、相手ノードのボリューム属性が「PVOL」であれば、自ノードのテイクオーバの行動は、「Nop-Takeover」である。自ノードのボリューム属性が「SMPL」の場合、相手ノードのボリューム属性が「SVOL」であれば、自ノードのテイクオーバの行動は、「ボリューム不整合」であり、相手ノードのボリューム属性が「Unknown」であれば、自ノードのテイクオーバの行動は、「NG」である。
【００４９】
次に、自ノードのボリューム属性が「PVOL」で、フェンスレベルと状態が「data又はstatus」で且つ「PSUE又はPDUB」の場合、相手ノードのボリューム属性が「SMPL」であれば、自ノードのテイクオーバの行動は、「NG」であり、相手ノードのボリューム属性が「PVOL」であれば、自ノードのテイクオーバの行動は、「ボリューム不整合」である。自ノードのボリューム属性が「PVOL」で、フェンスレベルと状態が「data又はstatus」で且つ「PSUE又はPDUB」の場合、相手ノードのボリューム属性が「SVOL」であれば、自ノードのテイクオーバの行動は、「PVOL-Takeover」であり、相手ノードのボリューム属性が「Unknown」であれば、自ノードのテイクオーバの行動は、「PVOL-Takeover」である。
【００５０】
次に、自ノードのボリューム属性が「PVOL」で、フェンスレベルと状態が上記「data又はstatusで且つPSUE又はPDUB」以外の場合、相手ノードのボリューム属性が「SMPL」であれば、自ノードのテイクオーバの行動は、「NG」であり、相手ノードのボリューム属性が「PVOL」であれば、自ノードのテイクオーバの行動は、「ボリューム不整合」である。
自ノードのボリューム属性が「PVOL」で、フェンスレベルと状態が上記「data又はstatusで且つPSUE又はPDUB」以外の場合、相手ノードのボリューム属性が「SVOL」であれば、自ノードのテイクオーバの行動は、「Nop-Takeover」であり、相手ノードのボリューム属性が「Unknown」であれば、自ノードのテイクオーバの行動は、「Nop-Takeover」である。
【００５１】
更に、自ノードのボリューム属性が「SVOL」で、フェンスレベルと状態が「SSWS」の場合、自ノードのテイクオーバの行動は、「Nop-Takeover」である。自ノードのボリューム属性が「SVOL」で、フェンスレベルと状態が上記「SSWS」以外の場合、相手ノードのボリューム属性が「SMPL」であれば、自ノードのテイクオーバの行動は、「ボリューム不整合」であり、相手ノードのボリューム属性が「PVOL」で、且つ、相手ノードの状態が「PAIR」又は「PFUL」であれば、自ノードのテイクオーバの行動は、「Swap-Takeover」である。自ノードのボリューム属性が「SVOL」で、フェンスレベルと状態が上記「SSWS」以外の場合で、相手ノードの状態が上記「PAIR又はPFUL」以外の場合には、自ノードのテイクオーバの行動は、「SVOL-Takeover」である。自ノードのボリューム属性が「SVOL」で、フェンスレベルと状態が上記「SSWS」以外の場合で、相手ノードのボリューム属性が「SVOL」であれば、自ノードのテイクオーバの行動は、「ボリューム不整合」であり、また、相手ノードのボリューム属性が「Unknown」であれば、自ノードのテイクオーバの行動は、「SVOL-Takeover」である。
【００５２】
図６は、本発明の一実施形態に係る記憶装置システムにおいて、図３、図４に示すボリューム属性を取得するに際しての処理、及びテイクオーバを実行するに際しての処理が実行される場合の各部の処理動作を示す説明図である。
【００５３】
図６では、（Ｂサイトの）ホスト５から、第３記憶装置１１に対してボリューム状態取得コマンドを発行することにより、第３記憶装置１１内のボリューム４３、４５に係わる状態情報、即ち、ボリューム状態情報５１を、（Ｂサイトの）ホスト５が取得でき、且つ、取得したボリューム状態情報５１を、（Ｂホストの）ホスト５内のボリューム属性テーブル５３に格納できることを示している。
【００５４】
図７は、本発明の一実施形態に係る記憶装置システムにおける各ボリュームのボリューム属性を取得するに際しての処理流れ、及びテイクオーバを実行するに際しての処理流れを示すフローチャートである。以下の説明では、自装置とは、Ｂサイトの記憶装置である第３記憶装置１１を指し、相手装置とはＡサイトの記憶装置である第１記憶装置７、及び第２記憶装置９を指すものとする。
【００５５】
図７において、まず、（Ｂサイトのホスト５に搭載されている）管理プログラム２１は、自装置である第３記憶装置１１において、該自装置の最初のボリュームとしてボリューム４３を選択し（ステップＳ７１）、次に、この選択したボリューム４３の属性をチェックする（ステップＳ７２）。このチェックの結果、自装置（即ち、第３記憶装置１１）のボリューム４３の属性がＳＶＯＬであることを把握すると、管理プログラム２１は、相手装置である第１記憶装置７のボリューム２７の属性、及び状態をチェックする（ステップＳ７３）。このチェックの結果、相手装置（つまり、第１記憶装置７）の駆動電源がＯＦＦにされていることなどによって、Unknownであれば、対象のＳＶＯＬ、即ち、ボリューム４３についてのSVOL-Takeoverコマンドを自装置（即ち、第３記憶装置１１）に送出することによって、ボリューム４３の属性をＳＶＯＬからＰＶＯＬに切り換える。この場合、相手装置（つまり、第１記憶装置７）については、所謂ダウン状態にあるから、相手装置からの応答が無いため、無視することになる（ステップＳ７４）。
【００５６】
管理プログラム２１による（相手装置である第１記憶装置７の）ボリューム２７の属性、及び状態のチェックの結果、ＰＶＯＬ（例えば、ＰＶＯＬ  ８ｐａｉｒ）であることを把握したときには（ステップＳ７３）、対象のＶＯＬ、即ち、自装置のボリューム４３、及び相手装置のボリューム２７についてのSwap-Takeoverコマンドを自装置（つまり、第３記憶装置１１）に対して発行する。これにより、ボリューム４３の属性はＳＶＯＬからＰＶＯＬに、ボリューム２７の属性はＰＶＯＬからＳＶＯＬに、夫々切り換わることになる（ステップＳ７５）。ステップＳ７３でのチェックの結果、（第１記憶装置７の）ボリューム２７の属性、状態がUnknownでもＰＶＯＬでもなければ、ボリューム不整合となりテイクオーバが異常終了する（ステップＳ７６）。ステップＳ７４、Ｓ７５、Ｓ７６での処理動作が終了すると、夫々ステップＳ７７に移行する。
【００５７】
次に、管理プログラム２１は、自装置である第３記憶装置１１において、該自装置の次のボリュームを選択する（ステップＳ７７）。この場合、自装置には次のボリュームとしてボリューム４５が存在するので（ステップＳ７８でYes）、ステップＳ７２に復帰する。そして、管理プログラム２１は、ステップＳ７７で選択したボリューム４５の属性をチェックする（ステップＳ７２）。以下、ステップＳ７３からステップＳ７７を経てステップＳ７８に至る処理動作が繰り返される。
【００５８】
そして、管理プログラム２１が、自装置である第３記憶装置１１の次のボリュームが存在しないことを認識すると（本実施形態では、第３記憶装置１１のボリュームは、既述のようにボリューム４３、４５の２つだけである。）（ステップＳ７８でNo）、次の自装置を選択する（ステップＳ７９）。この選択において、自装置が存在していれば（ステップＳ８０でYes）、ステップＳ７１に復帰し、ステップＳ７１からステップＳ７８に至る処理動作が繰り返されるし、自装置が存在していなければ（ステップＳ８０でNo）、一連の処理動作が終了する。因みに本実施形態では、自装置は第３記憶装置１１だけであるので、ボリューム４５に係る上記処理動作が終了した時点で、一連の処理動作が終了する。
【００５９】
図８は、本発明の一実施形態に係る記憶装置システムにおけるPair Create実行処理を実行するに際しての処理流れを示すフローチャートである。このPair Create実行処理は、例えば図２で示した正サイトのデータを副サイトにミラーリングする処理動作等に適用されるものである。
【００６０】
図８において、まず、（Ｂサイトのホスト５に搭載されている）管理プログラム２１は、例えばシステム管理者（図示しない）からクライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ｂサイトの）ホスト５にPair Createコマンドが与えられたことを認識すると、該コマンドに従って、自装置である第３記憶装置１１のボリューム４３、４５の属性を、夫々正ボリューム（つまり、ＰＶＯＬ）に設定する。なお、Pair Createコマンドは、自ボリューム番号、相手ボリューム番号、ＣＴＧタイマ指示、及び相手装置アドレス情報を、Pair
Createコマンドパラメータとして含んでいる（ステップＳ８１）。
【００６１】
次に、管理プログラム２１は、相手装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５のボリューム属性を、夫々副ボリューム（つまり、ＳＶＯＬ）に設定する。この副ボリューム設定処理については、サブルーチンである図９に示す副ボリューム設定処理の処理流れに従って行われる（ステップＳ８２）。次に、管理プログラム２１は、相手装置である第１記憶装置７、及び第２記憶装置９に対して、ＣＴＧタイマを設定する。このＣＴＧタイマ設定処理については、サブルーチンである図１０に示すＣＴＧタイマ設定処理の処理流れに従って行われる（ステップＳ８３）。
【００６２】
次に、管理プログラム２１は、自（装置である第３記憶装置１１の）ボリューム４３、４５のボリュームサイズを取得すると共に（ステップＳ８４）、相手（装置である第１記憶装置７、及び第２記憶装置９の）ボリューム２７、３５のボリュームサイズをも取得する（ステップＳ８５）。そして、自ボリューム（４３、４５）のボリュームサイズと、相手ボリューム（２７、３５）のボリュームサイズとを夫々比較して、自ＶＯＬサイズ＜相手ＶＯＬサイズかどうかチェックする（ステップＳ８６）。
【００６３】
このチェックの結果、自ＶＯＬサイズ＜相手ＶＯＬサイズであれば（ステップＳ８６でYes）、SWAP不可設定の処理を行って（ステップＳ８７）、ステップＳ８８に移行する。そして、初期コピー処理を行う（ステップＳ８８）。一方、上記チェックの結果、自ＶＯＬサイズ＜相手ＶＯＬサイズでなければ（ステップＳ８６でNo）直ちにステップＳ８８に移行して初期コピー処理を行うことになる。この初期コピー処理については、サブルーチンである図１１に示す初期コピー実行処理の処理流れに従って行われる。そして、この初期コピー処理が行われた後（ステップＳ８８）、一連の処理動作が終了する。
【００６４】
図９は、本発明の一実施形態に係る記憶装置システムにおける副ボリューム設定処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、上述したように、図８で示したPair
Create実行処理のサブルーチンであると共に、後述する（図１６に示す）Pair再同期Swap実行処理のサブルーチンでもある。
【００６５】
副ボリューム設定処理では、管理プログラム２１が、図９に示すように、まず相手装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５のボリューム属性を、夫々副ボリューム（つまり、ＳＶＯＬ）に設定する（ステップＳ９１）。次に、これらボリューム２７、３５に対するWR許可（データ書き込み許可）を抑止し（ステップＳ９２）、更に、正ボリューム（ＰＶＯＬ）として定義される記憶装置とそのボリューム、副ボリュームとして定義される記憶装置とそのボリュームを設定するための正副ボリューム定義を設定して（ステップＳ９３）、一連の処理動作が終了する。
【００６６】
図１０は、本発明の一実施形態に係る記憶装置システムにおけるＣＴＧタイマ設定処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、副ボリューム設定処理と同様に、図８で示したPair Create実行処理のサブルーチンであると共に、後述する（図  に示す）Pair再同期Swap実行処理のサブルーチンでもある。
【００６７】
ＣＴＧタイマ設定処理では、図１０に示すように、管理プログラム２１が、まずPair Createコマンドパラメータの１つであるＣＴＧタイマ設定指示を、例えばクライアント（１１〜１ｎ）から（Ｂサイトの）ホスト５に与えられたPair Createコマンドより取得する（ステップＳ１０１）。次に、ＣＴＧタイマを使用するかどうかをチェックし（ステップＳ１０２）、使用するのであれば（ステップＳ１０２でYes）、タイムスタンプ有効フラグをＯＮにし（ステップＳ１０４）、使用しないのであれば（ステップＳ１０２でNo）、タイムスタンプ有効フラグをＯＦＦにして（ステップＳ１０３）、夫々一連の処理動作を終了する。
【００６８】
図１１は、本発明の一実施形態に係る記憶装置システムにおける初期コピー実行処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図８で示したPair Create実行処理のサブルーチンである。
【００６９】
初期コピー実行処理では、図１１に示すように、管理プログラム２１が、まず自（装置である第３記憶装置１１の）ボリューム４３、４５のペア状態をコピーに設定すると共に（ステップＳ１１１）、相手（装置である第１記憶装置７、及び第２記憶装置９の）ボリューム２７、３５のペア状態をコピーに設定する（ステップＳ１１２）。次に、コピー開始ポインタにＶＯＬ先頭アドレスを設定して（ステップＳ１１３）、コピー開始ポインタとＶＯＬ終端アドレスとを比較して、コピー開始ポインタ＜ＶＯＬ終端アドレスかどうかチェックする（ステップＳ１１４）。
【００７０】
このチェックの結果、コピー開始ポインタ＜ＶＯＬ終端アドレスであれば（ステップＳ１１４でYes）、管理プログラム２１は、相手装置（つまり、第１記憶装置７、第２記憶装置９）に対して、コピーデータを転送すると共に（ステップＳ１１５）、ステップＳ１１３で設定したコピー開始ポインタを更新して（ステップＳ１１６）、ステップＳ１１４に復帰する。そして、上記チェックの結果、コピ−開始ポインタ＜ＶＯＬ終端アドレスでなくなれば（ステップＳ１１４でNo）自（装置である第３記憶装置１１の）ボリューム４３、４５のペア状態をペアに設定すると共に（ステップＳ１１７）、相手（装置である第１記憶装置７、及び第２記憶装置９の）ボリューム２７、３５のペア状態をもペアに設定して（ステップＳ１１８）、一連の処理動作が終了する。
【００７１】
図１２は、本発明の一実施形態に係る記憶装置システムにおけるWRITE実行処理を実行するに際しての処理流れを示すフローチャートである。
【００７２】
図１２において、管理プログラム２１は、まず自（装置である第３記憶装置１１の）ボリューム４３、４５の状態を取得して（ステップＳ１２１）、WR許可（データ書き込み許可）が与えられているかどうかチェックする（ステップＳ１２２）。このチェックの結果、WR許可が与えられていれば（ステップＳ１２２でYes）、自（装置である第３記憶装置１１の）ボリューム４３、４５にデータを書き込むと共に（ステップＳ１２３）、差分ビットマップを更新して（ステップＳ１２４）、一連の処理動作が終了する。一方、上記チェックの結果、WR許可が与えられていなければ（ステップＳ１２２でNo）、所定の態様でエラー報告を行った後で（ステップＳ１２５）、一連の処理動作が終了する。
【００７３】
図１３は、本発明の一実施形態に係る記憶装置システムにおけるTakeover要求処理を実行するに際しての処理流れを示すフローチャートである。このTakeover要求処理は、例えば図７で示したテイクオーバを実行するに際しての処理動作等に適用されるものである。
【００７４】
このTakeover要求処理では、管理プログラム２１が、まず最初に自装置である第３記憶装置１１において、該自装置の最初のボリュームとしてボリューム４３を選択し（ステップＳ１３１）、次に、この選択したボリューム４３の属性が副ＶＯＬ（ＳＶＯＬ）であるかどうかをチェックする（ステップＳ１３２）。このチェックの結果、上記選択したボリューム４３の属性が副ＶＯＬ（ＳＶＯＬ）であれば（ステップＳ１３２でYes）、相手装置である第１記憶装置７のボリューム２７の属性、第２記憶装置９のボリューム３５の属性が共に正ＶＯＬ（ＰＶＯＬ）で、且つ、ボリューム２７の状態、ボリューム３５の状態が共にPAIRであるかどうかをチェックする（ステップＳ１３３）。このチェックの結果、ボリューム２７の属性、ボリューム３５の属性が共に正ＶＯＬ（ＰＶＯＬ）で、且つ、ボリューム２７の状態、ボリューム３５の状態が共にPAIRであれば（ステップＳ１３３でYes）、管理プログラム２１は、Swap-Takeoverコマンドを自装置（つまり、第３記憶装置１１）に対して発行する（ステップＳ１３４）。
【００７５】
次に、管理プログラム２１は、自装置である第３記憶装置１１において、該自装置の次のボリュームを選択する（ステップＳ１３５）。この場合、自装置には次のボリュームとしてボリューム４５が存在するので（ステップＳ１３６でYes）、ステップＳ１３２に復帰する。そして、管理プログラム２１は、ステップＳ１３５で選択したボリューム４５の属性をチェックする（ステップＳ１３２）。以下、ステップＳ１３３からステップＳ１３５を経てステップＳ１３６に至る処理動作が繰り返される。
【００７６】
そして、管理プログラム２１が、自装置である第３記憶装置１１の次のボリュームが存在しないことを認識すると（本実施形態では、第３記憶装置１１のボリュームは、既述のようにボリューム４３、４５の２つだけである。）（ステップＳ１３６でNo）、次の自装置を選択する（ステップＳ１３７）。この選択において、自装置が存在していれば（ステップＳ１３８でYes）、ステップＳ１３１に復帰し、ステップＳ１３１からステップＳ１３６に至る処理動作が繰り返されるし、自装置が存在していなければ（ステップＳ１３８でNo）、一連の処理動作が終了する。因みに本実施形態では、自装置は第３記憶装置１１だけであるので、ボリューム４５に係る上記処理動作が終了した時点で、一連の処理動作が終了する。
【００７７】
なお、ステップＳ１３２でのチェックの結果、上記選択したボリューム４３の属性が副ＶＯＬ（ＳＶＯＬ）でなければ（ステップＳ１３２でNo）、直ちにステップＳ１３５の処理に移行する。また、ステップＳ１３３でのチェックの結果、ボリューム２７の属性、ボリューム３５の属性が共に正ＶＯＬ（ＰＶＯＬ）でなく及び／又はボリューム２７の状態、ボリューム３５の状態が共にPAIRでなければ（ステップＳ１３３でNo）、管理プログラム２１は、SVOL-Takeoverコマンドを自装置（つまり、第３記憶装置１１）に対して発行し（ステップＳ１３９）、ステップＳ１３５に移行することになる。
【００７８】
なお、上述したステップＳ１３４の処理動作においては、サブルーチンである図１４に示すSwap-Takeover要求処理が実行され、また、ステップＳ１３９の処理動作においては、サブルーチンである図１５に示すSVOL-Takeover処理が実行される。
【００７９】
図１４は、本発明の一実施形態に係る記憶装置システムにおけるSwap-Takeover要求処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図１３で示したTakeover要求処理のサブルーチンである。
【００８０】
Swap-Takeover要求処理では、図１４に示すように、管理プログラム２１が、まず最初にSVOL-Takeoverコマンドを自装置（つまり、第３記憶装置１１）に対して発行する（ステップＳ１４１）。次に、相手装置である第１記憶装置７のボリューム２７のペア状態、及び第２記憶装置９のボリューム３５のペアオ状態を共にサスペンドに設定した後（ステップＳ１４２）、Pair再同期Swapコマンドを自装置（つまり、第３記憶装置１１）に対して発行し（ステップＳ１４３）、一連の処理動作が終了する。
【００８１】
ここで、Swap-Takeoverについて詳細に説明する。
【００８２】
相手ノードの正ボリュームのステータスが“PAIR”であり副ボリュームにミラー一貫性がある状態では、正／副ボリュームをスワップ（Swap）して継続稼働させることが可能である。テイクオーバコマンドは、後述の運用コマンドを内部的にステップ操作して正／副ボリュームをスワップする。スワップの単位は、ペア論理ボリューム単位か又はグループ単位に指定が可能である。このSwap-Takeoverは、SVOL-Takeoverの一つの機能として取込まれている。
【００８３】
最初のステップでは、スワップの前段階として自装置のボリューム（副ボリューム、つまり、ＳＶＯＬに設定されている）に対して、ペアサスペンドを発行する。このステップに失敗したらSwap-Takeoverは失敗を返す。
【００８４】
次のステップでは、テイクオーバノードの自装置のボリュームに対して、ペア再同期(pairresync swaps)を発行し、ボリュームの属性を正ボリューム（つまり、ＰＶＯＬ）に切り換える。ペア再同期時のコピートラックサイズについては、ペア生成時の値を使用する。このステップに失敗したらSVOL-SSUS-Takeoverを返す。副ボリュームを差分管理のサスペンド状態にして使用可能(Read/Write可能)にする。この特別な状態は、”pairdisplay -fc”コマンドオプションで”SSWS”として表示される。
【００８５】
図１５は、本発明の一実施形態に係る記憶装置システムにおけるSVOL-Takeover要求処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図１３で示したTakeover要求処理のサブルーチンであると共に、図１４で示したSwap-Takeover要求処理のサブルーチンでもある。
【００８６】
SVOL-Takeover要求処理では、（Ｂサイトのホスト５に搭載されている）管理プログラム２１が、例えばシステム管理者（図示しない）からクライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ｂサイトの）ホスト５にSVOL-Takeoverコマンドが与えられたことを認識すると、管理プログラム２１が、該コマンドに従って、図１５に示すように、まず最初に自装置（つまり、第３記憶装置１１）のボリューム４３、４５の状態を取得し（ステップＳ１５１）、SWAP可能かどうかをチェックする（ステップＳ１５２）。なお、SVOL-Takeoverコマンドには、自装置である第３記憶装置１１の各ボリューム（４３、４５）のボリューム番号情報が含まれている。
【００８７】
このチェックの結果、SWAP可能であると判断した場合には（ステップＳ１５２でYes）、自（装置である第３記憶装置１１の）ボリューム４３、４５のペア状態をサスペンドに設定すると共に（ステップＳ１５３）、WR許可（図１２で説明した）を可に設定し（ステップＳ１５４）、差分ビットマップをクリアして（ステップＳ１５５）、一連の処理動作を終了する。一方、上記チェックの結果、SWAP可能でないと判断した場合には（ステップＳ１５２でNo）所定の態様でエラー報告を行った後で（ステップＳ１５６）、一連の処理動作が終了する。
【００８８】
ここで、SVOL-Takeoverについて詳細に説明する。
【００８９】
相手ノード（正ボリューム（つまり、ＰＶＯＬ）を所持している）が使用できないと想定してテイクオーバノードだけで副ボリューム（つまり、ＳＶＯＬ）を差分管理のサスペンド状態にして使用可能(Read/Write可能)にする。
【００９０】
副ボリュームのミラー一貫性は、そのステータスとフェンスレベルとで判断する。チェックの結果、ボリュームにミラー一貫性がない場合には、SVOL-Takeoverは失敗を返す。ボリュームにミラー一貫性があればSwap-Takeoverを試みる。このSwap-Takeoverが成功した時、戻り値として「Swap-Takeover」を返す。また、失敗した時は「SVOL-SSUS-Takeover」を返す。
【００９１】
従って、ホスト障害のときには「Swap-Takeover」が実行され、サイト障害又はESCONリンク障害では「SVOL-SSUS-Takeover」が実行される。SVOL-Takeoverは、ペア論理ボリューム単位、又はグループ単位に指定可能である。グループ単位に指定された場合、副ボリュームのミラー一貫性のチェックは、グループに属するボリューム全てに対して行い、一貫性が無いボリュームを実行ログファイルにチェックアウトして表示する。
【００９２】
上記のように、SVOL-Takeoverは、副ボリュームにミラー一貫性がない場合失敗を返すが、相手ノード（正ボリューム（つまり、ＰＶＯＬ）を所持）が使用できないと仮定しているので、副ボリュームを使用可能(Read/Write可能)にする。
【００９３】
次に、PVOL-Takeoverについて詳細に説明する。
【００９４】
PVOL-Takeoverは、正ボリューム（つまり、ＰＶＯＬ）のフェンスレベルが”data”又は”status”で且つPSUE,PDUB状態によって使用不可(Write禁止)のとき、相手ノード（副ボリューム（つまり、ＳＶＯＬ）を所持）が使用できないと想定してテイクオーバノードだけでグループのペア状態を解除し正ボリューム（つまり、ＰＶＯＬ）を使用可能(Read/Write可能)にする。またテイクオーバコマンドを受けた時点で、グループの全ペアを解除することでグループとしての副ボリュームのデータ一貫性を維持する。
【００９５】
PVOL-Takeoverは、PVOL_PSUE-TakeoverとPVOL_SMPL-Takeoverとを、選択的に実行する。PVOL_PSUE-Takeoverは、正ボリュームを特殊なサスペンド状態(PSUE,PSUS)にし、グループの正ボリュームを全て使用可能(Read/Write可能)にする。この特殊なサスペンド状態(PSUE,PSUS)は、副ボリュームの回復後pairresyncコマンドを使用してペアを再同期することで元の状態に戻す。
【００９６】
PVOL_SMPL-TakeoverはPVOL_PSUE-Takeoveが失敗した時に強制的に正ボリュームをシンプレックス状態(SMPL)にしグループの正ボリュームを全て使用可能(Read/Writ可能)にする。PVOL-Takeoverはペア論理ボリューム単位、又はグループ単位に指定が可能である。
【００９７】
図１６は、本発明の一実施形態に係る記憶装置システムにおけるPairresync-Swap実行処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図１４で示したSwap-Takeover要求処理のサブルーチンである。
【００９８】
図１６において、まず、（Ｂサイトのホスト５に搭載されている）管理プログラム２１は、例えばシステム管理者（図示しない）からクライアント（１１〜１ｎ）、及びＬＡＮ１３を通じて（Ｂサイトの）ホスト５にPairresync Swapコマンドが与えられたことを認識すると、該コマンドに従って、自装置である第３記憶装置１１のボリューム４３、４５の属性を、夫々正ボリューム（つまり、ＰＶＯＬ）に設定する。なお、Pairresync Swapコマンドは、自ボリューム番号、相手ボリューム番号、及びCTGタイマ指示等の情報を、Pairresync-Swapコマンドパラメータとして含んでいる（ステップＳ１６１）。
【００９９】
次に、管理プログラム２１は、相手装置である第１記憶装置７のボリューム２７、及び第２記憶装置９のボリューム３５のボリューム属性を、夫々副ボリューム（つまり、ＳＶＯＬ）に設定する。この副ボリューム設定処理については、サブルーチンである図９に示す副ボリューム設定処理の処理流れに従って行われる（ステップＳ１６２）。次に、管理プログラム２１は、相手装置である第１記憶装置７、及び第２記憶装置９に対して、ＣＴＧタイマを設定する。このＣＴＧタイマ設定処理については、サブルーチンである図１０に示すＣＴＧタイマ設定処理の処理流れに従って行われる（ステップＳ１６３）。
【０１００】
そして、最後に差分コピー処理を、サブルーチンである図１８に示す差分コピー実行処理の処理流れに従って行った後、一連の処理動作を終了する。
【０１０１】
図１７は、本発明の一実施形態に係る記憶装置システムにおいて、図１８に示す差分コピー実行処理、図１９に示すデータコピー実行処理が実行される場合の各部の処理動作を示す説明図である。
【０１０２】
図１７では、（Ａサイトの）ホスト３のタイムスタンプ付加機能１７１が、第１記憶装置７のタイムスタンプ有効フラグ１７５、及び第２記憶装置９のタイムスタンプ有効フラグ１７７をＯＦＦにする。この状態で、（Ｂサイトの）ホスト５のタイムスタンプ付加機能１７３が、第３記憶装置１１内の差分ビットマップ１７９、１８１を確認し、夫々差分ビット有りと判断したことにより、コピーデータ１８３については第１記憶装置７へ、コピーデータ１８５については第２記憶装置９へ、夫々転送することになる。
【０１０３】
図１８は、本発明の一実施形態に係る記憶装置システムにおける差分コピー実行処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図１６で示したPairresync-Swap実行処理のサブルーチンである。
【０１０４】
差分コピー実行処理では、図１８に示すように、管理プログラム２１が、まず自（装置である第３記憶装置１１の）ボリューム４３、４５のペア状態をコピーに設定すると共に（ステップＳ２０１）、相手（装置である第１記憶装置７、及び第２記憶装置９の）ボリューム２７、３５のペア状態をコピーに設定する（ステップＳ２０２）。次に、差分ビットマップの確認を行い（ステップＳ２０３）、差分ビットが有るかどうかをチェックする（ステップＳ２０４）。このチェックの結果、差分ビットが有ると判断すれば（ステップＳ２０４でYes）、管理プログラム２１は、相手装置（つまり、第１記憶装置７、第２記憶装置９）に対して、コピーデータを転送すると共に（ステップＳ２０７）、ステップＳ２０４で確認した差分ビットを更新して（ステップＳ２０８）、ステップＳ２０３に復帰する。なお、ステップＳ２０７の処理動作は、差分コピー実行処理のサブルーチンである、図１９に示すデータコピー実行処理の処理流れに従って行われる。
【０１０５】
そして、上記チェックの結果、差分ビットがなくなれば（ステップＳ２０４でNo）、自（装置である第３記憶装置１１の）ボリューム４３、４５のペア状態をペアに設定すると共に（ステップＳ２０５）、相手（装置である第１記憶装置７、及び第２記憶装置９の）ボリューム２７、３５のペア状態をもペアに設定して（ステップＳ２０６）、一連の処理動作が終了する。
【０１０６】
図１９は、本発明の一実施形態に係る記憶装置システムにおけるデータコピー実行処理を実行するに際しての処理流れを示すフローチャートである。このフローチャートは、図１８で示した差分コピー実行処理のサブルーチンである。
【０１０７】
データコピー実行処理では、管理プログラム２１が、図１９に示すように、まず最初にデータをキャッシュ（メモリ）に格納し（ステップＳ２１１）、次に既述のタイムスタンプ有効フラグがＯＮになっているかどうかをチェックする（ステップＳ２１２）。このチェックの結果、タイムスタンプ有効フラグがＯＮになっていれば（ステップＳ２１２でYes）、タイムスタンプ順にデータソートを実行し（ステップＳ２１３）、次に上記データソートを行った後の夫々のデータをディスクに書き込む処理を行った後で（ステップＳ２１４）、一連の処理動作が終了する。上記チェックの結果、タイムスタンプ有効フラグがＯＮになっていなければ（ステップＳ２１２でNo）、直ちにステップＳ２１４に移行することになる。
【０１０８】
以上、本発明の好適な実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲をこの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【図面の簡単な説明】
【０１０９】
【図１】本発明に従う記憶装置システムが適用されるメインフレーム（コンピュータ）の概要を示したブロック図。
【図２】本発明の一実施形態に係る記憶装置システムの全体構成を示すブロック図。
【図３】図２に記載の記憶装置システムにおいてテイクオーバコマンドが実行される場合の各部の処理動作を示す説明図。
【図４】図２に記載の記憶装置システムにおいてテイクオーバコマンドが実行される場合の各部の処理動作を示す説明図。
【図５】本発明の一実施形態に係る記憶装置システムにおける各ボリュームのボリューム属性とテイクオーバ処理との関係を示す説明図。
【図６】本発明の一実施形態に係る記憶装置システムにおいて、図７に示すボリューム属性を取得するに際しての処理、及びテイクオーバを実行するに際しての処理が実行される場合の各部の処理動作を示す説明図。
【図７】本発明の一実施形態に係る記憶装置システムにおける各ボリュームのボリューム属性を取得するに際しての処理流れ、及びテイクオーバを実行するに際しての処理流れを示すフローチャート。
【図８】本発明の一実施形態に係る記憶装置システムにおけるPair Create実行処理を実行するに際しての処理流れを示すフローチャート。
【図９】本発明の一実施形態に係る記憶装置システムにおける副ボリューム設定処理を実行するに際しての処理流れを示すフローチャート。
【図１０】本発明の一実施形態に係る記憶装置システムにおけるＣＴＧタイマ設定処理を実行するに際しての処理流れを示すフローチャート。
【図１１】本発明の一実施形態に係る記憶装置システムにおける初期コピー実行処理を実行するに際しての処理流れを示すフローチャート。
【図１２】本発明の一実施形態に係る記憶装置システムにおけるWRITE実行処理を実行するに際しての処理流れを示すフローチャート。
【図１３】本発明の一実施形態に係る記憶装置システムにおけるTakeover要求処理を実行するに際しての処理流れを示すフローチャート。
【図１４】本発明の一実施形態に係る記憶装置システムにおけるSwap-Takeover要求処理を実行するに際しての処理流れを示すフローチャート。
【図１５】本発明の一実施形態に係る記憶装置システムにおけるSVOL-Takeover要求処理を実行するに際しての処理流れを示すフローチャート。
【図１６】本発明の一実施形態に係る記憶装置システムにおけるPairresync-Swap実行処理を実行するに際しての処理流れを示すフローチャート。
【図１７】本発明の一実施形態に係る記憶装置システムにおいて、図１８に示す差分コピー実行処理、図１９に示すデータコピー実行処理が実行される場合の各部の処理動作を示す説明図。
【図１８】本発明の一実施形態に係る記憶装置システムにおける差分コピー実行処理を実行するに際しての処理流れを示すフローチャート。
【図１９】本発明の一実施形態に係る記憶装置システムにおけるデータコピー実行処理を実行するに際しての処理流れを示すフローチャート。
【符号の説明】
【０１１０】
１１〜１ｎ  クライアントマシン（クライアント）
３  Ａサイトのホストコンピュータ（Ａサイトのホスト）
５  Ｂサイトのホストコンピュータ（Ｂサイトのホスト）
７  第１記憶装置
９  第２記憶装置
１１  第３記憶装置
１３  ローカル・エリア・ネットワーク（ＬＡＮ）
１５、１７  ストレージ・エリア・ネットワーク（ＳＡＮ）
１９、２１  管理プログラム
２３、３１、３９  コントロールユニット（ＣＵ）
２５、３３、４１  共用（シェアード）メモリ（ＳＭ）
２７、２９、３５、３７、４３、４５  ボリューム
【図１】
2005141381.tif 000003
【図２】
2005141381.tif 000004
【図３】
2005141381.tif 000005
【図４】
2005141381.tif 000006
【図５】
2005141381.tif 000007
【図６】
2005141381.tif 000008
【図７】
2005141381.tif 000009
【図８】
2005141381.tif 000010
【図９】
2005141381.tif 000011
【図１０】
2005141381.tif 000012
【図１１】
2005141381.tif 000013
【図１２】
2005141381.tif 000014
【図１３】
2005141381.tif 000015
【図１４】
2005141381.tif 000016
【図１５】
2005141381.tif 000017
【図１６】
2005141381.tif 000018
【図１７】
2005141381.tif 000019
【図１８】
2005141381.tif 000020
【図１９】
2005141381.tif 000021