(57)【要約】【課題】  業務の継続と災害によるシステム障害への対応の両立を低コストで実現する。【解決手段】  ストレージ１０３Ａからリモートコピー失敗の報告を受けたら、ホスト１０２Ａはホストベースのリモートコピーを開始する。このとき、まず未完了のＩ／Ｏに対するコピーから始める。ストレージベースのリモートコピーが再開可能になったら、管理サーバ１０４Ａの指示によって、ホスト１０２ＡはまずＩ／Ｏの発行を止め、発行済Ｉ／Ｏの完了を待つ。その後、リモートコピー方式を切り替えてＩ／Ｏを再開する。【選択図】        図１
2006285919.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも、第１のホスト計算機と、前記第１のホスト計算機が内容を読み書きする第１の論理ボリュームを少なくとも１個含む第１のストレージ装置と、第２のホスト計算機と、前記第２のホスト計算機が内容を読み書きする第２の論理ボリュームを少なくとも１個含む第２のストレージ装置とを有する計算機システムであって、
前記第１のストレージ装置と前記第２のストレージ装置との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる第１のリモートコピーを行うために、前記第１のストレージ装置又は前記第２のストレージ装置が有する第１のリモートコピー機能部と、
前記第１のホスト計算機と前記第２のホスト計算機との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる第２のリモートコピーを行うために、前記第１のホスト計算機又は前記第２のホスト計算機が有する第２のリモートコピー機能部と、
前記第１のリモートコピー機能部からの情報により前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピーが停止したことを検出する前記第１のホスト計算機又は前記第２のホスト計算機が有する第１のリモートコピー停止検出機能部と、
前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピー機能部による前記第１のリモートコピーが停止したことを検出した場合、前記第２のリモートコピー機能部による前記第２のリモートコピーに切替えて前記第２のリモートコピーを起動する前記第１のホスト計算機又は前記第２のホスト計算機が有する第２のリモートコピー切替機能部と
を備えたことを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムにおいて、
前記第１のホスト計算機又は前記第２のホスト計算機が有する第２のリモートコピー切替機能部は、前記第２のリモートコピー機能部による前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を一時停止する第１の一時停止機能部と、前記第１のリモートコピー機能部による前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を再開する第１のリモートコピー再開機能部とを有することを特徴とする計算機システム。
【請求項３】
請求項２に記載の計算機システムにおいて、
前記第１のホスト計算機と前記第１のストレージ装置の動作を管理して制御する第１の管理用計算機又は前記第２のホスト計算機と前記第２のストレージ装置の動作を管理して制御する第２の管理用計算機を備え、
前記第１の管理用計算機又は前記第２の管理用計算機は、
停止している前記第１のリモートコピー機能部による前記第１のリモートコピーの再開に先立ち、前記第１の一時停止機能部による前記一時停止の実行を前記第１のホスト計算機又は前記第２のホスト計算機に指示する一時停止指示機能部と、
前記第１のリモートコピー機能部による前記第１のリモートコピーの再開後、前記第１のリモートコピー再開機能部による前記第１のリモートコピーの再開機能の実行を前記第１の計算機又は前記第２の管理用計算機に指示する再開指示機能部とを有することを特徴とする計算機システム。
【請求項４】
請求項１に記載の計算機システムにおいて、
前記第１のリモートコピー停止検出機能部は、前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のストレージ装置又は前記第２のストレージ装置に発行する入出力処理コマンドに対して、前記第１のストレージ装置又は前記第２のストレージ装置が前記第１のリモートコピーの結果を前記第１のホスト計算機又は前記第２のホスト計算機に報告し、報告を受けた前記第１のホスト計算機又は前記第２のホスト計算機が、前記報告の内容を検査することによって、前記第１のリモートコピーの停止を検出することを特徴とする計算機システム。
【請求項５】
請求項１に記載の計算機システムにおいて、
前記第１のストレージ装置又は前記第２のストレージ装置が有する前記第１のリモートコピー機能部は、前記第１のストレージ装置と前記第２のストレージ装置との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる前記第１のリモートコピーを行うためのリモートコピープログラムと、前記第１の論理ボリュームと前記第２の論理ボリュームに対する情報を示すペア情報と、前記第１のホスト計算機又は前記第２のホスト計算機から発行される入出力処理コマンドに対する動作を行うための入出力処理制御プログラムとにより実行される
ことを特徴とする計算機システム。
【請求項６】
請求項１に記載の計算機システムにおいて、
前記第１のホスト計算機又は前記第２のホスト計算機が有する前記第２のリモートコピー機能部は、前記第１のホスト計算機と前記第２のホスト計算機との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる前記第２のリモートコピーを行うためのリモートコピープログラムと、前記第１の論理ボリュームと前記第２の論理ボリュームに対する情報を示すペア情報と、アプリケーションに基づいて発行される処理コマンドに対して前記リモートコピープログラムにリモートコピー動作を行わせるためのファイルシステムとにより実行される
ことを特徴とする計算機システム。
【請求項７】
請求項１に記載の計算機システムにおいて、
前記第１のホスト計算機又は前記第２のホスト計算機が有する前記第２のリモートコピー切替機能部は、
前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピー機能部による前記第１のリモートコピーが停止したことを検出した場合に、前記第１のホスト計算機又は前記第２のホスト計算機から発行済みであるが前記第１のストレージ装置又は前記第２のストレージ装置において未処理である入出力処理コマンドを格納する発行済コマンドキューと、
前記第２のリモートコピー機能部による前記第２のリモートコピーを切替えて起動するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキューと、
前記第２のリモートコピー機能部により前記第２のリモートコピーに切替えて前記第２のリモートコピーを起動するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される状態を示す入出力処理保留中フラグとにより実行される
ことを特徴とする計算機システム。
【請求項８】
請求項２に記載の計算機システムにおいて、
前記第１のホスト計算機又は前記第２のホスト計算機が有する前記第１のリモートコピー再開機能部は、前記第１の一時停止機能部が前記第２のリモートコピー機能部による前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を一時停止するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される状態を示す入出力処理保留中フラグと、
前記入出力処理保留中フラグにより入出力処理が保留される状態を示すときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキューとを有し、
前記入出力処理保留中フラグにより入出力処理が再開される状態を示すときに、前記保留中コマンドキューに格納された入出力処理が保留された入出力処理コマンドが実行されることにより、前記第１のリモートコピー機能部による前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を再開することを特徴とする計算機システム。
【請求項９】
少なくとも、第１のホスト計算機と、前記第１のホスト計算機が内容を読み書きする第１の論理ボリュームを少なくとも１個含む第１のストレージ装置と、第２のホスト計算機と、前記第２のホスト計算機が内容を読み書きする第２の論理ボリュームを少なくとも１個含む第２のストレージ装置とを有する計算機システムにおけるリモートコピー処理方法において、
前記第１のストレージ装置と前記第２のストレージ装置との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる第１のリモートコピーステップと、
前記第１のリモートコピーステップにおける情報により前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピーが停止したことを検出する第１のリモートコピー停止検出ステップと、
前記第１のリモートコピー停止検出ステップにおいて前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピーステップにおける情報により前記第１のリモートコピーが停止したことを検出した場合、他のリモートコピーに切替えて他のリモートコピーを起動するリモートコピー切替ステップと、
前記リモートコピー切替ステップにおいてリモートコピーに切替えて他のリモートコピーを起動するとき、前記第１のホスト計算機と前記第２のホスト計算機との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる第２のリモートコピーを行う第２のリモートコピーステップと、
を備えたことを特徴とするリモートコピー処理方法。
【請求項１０】
請求項９に記載のリモートコピー処理方法において、
前記リモートコピー切替ステップは、前記第２のリモートコピーステップによる前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を一時停止する第１の一時停止ステップと、前記第１のリモートコピーステップによる前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を再開する第１のリモートコピー再開ステップとを有することを特徴とするリモートコピー処理方法。
【請求項１１】
請求項１０に記載のリモートコピー処理方法において、
前記第１のホスト計算機と前記第１のストレージ装置の動作を管理して制御する第１の管理用計算機又は前記第２のホスト計算機と前記第２のストレージ装置の動作を管理して制御する第２の管理用計算機から、
停止している前記第１のリモートコピーステップによる前記第１のリモートコピーの再開に先立ち、前記第１の一時停止ステップによる前記一時停止の実行を前記第１のホスト計算機又は前記第２のホスト計算機に指示する一時停止指示ステップと、
前記第１のリモートコピーステップによる前記第１のリモートコピーの再開後、前記第１のリモートコピー再開ステップによる前記第１のリモートコピーの再開機能の実行を前記第１のホスト計算機又は前記第２のホスト計算機に指示する再開指示ステップとを実行することを特徴とするリモートコピー処理方法。
【請求項１２】
請求項９に記載のリモートコピー処理方法において、
前記第１のリモートコピー停止検出ステップは、前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のストレージ装置又は前記第２のストレージ装置に発行する入出力処理コマンドに対して、前記第１のストレージ装置又は前記第２のストレージ装置が前記第１のリモートコピーの結果を前記第１のホスト計算機又は前記第２のホスト計算機に報告し、報告を受けた前記第１のホスト計算機又は前記第２のホスト計算機が、前記報告の内容を検査することによって、前記第１のリモートコピーの停止を検出することを特徴とするリモートコピー処理方法。
【請求項１３】
請求項９に記載のリモートコピー処理方法において、
前記第１のストレージ装置又は前記第２のストレージ装置が実行する前記第１のリモートコピーステップは、前記第１のストレージ装置と前記第２のストレージ装置との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる前記第１のリモートコピーを行うためのリモートコピープログラムと、前記第１の論理ボリュームと前記第２の論理ボリュームに対する情報を示すペア情報と、前記第１のホスト計算機又は前記第２のホスト計算機から発行される入出力処理コマンドに対する動作を行うための入出力処理制御プログラムとにより実行される
ことを特徴とするリモートコピー処理方法。
【請求項１４】
請求項９に記載のリモートコピー処理方法において、
前記第１のホスト計算機又は前記第２のホスト計算機が実行する前記第２のリモートコピーステップは、前記第１のホスト計算機と前記第２のホスト計算機との間で互いに通信を行うことにより、前記第１の論理ボリュームの内容と前記第２の論理ボリュームの内容とを一致させる前記第２のリモートコピーを行うためのリモートコピープログラムと、前記第１の論理ボリュームと前記第２の論理ボリュームに対する情報を示すペア情報と、アプリケーションに基づいて発行される処理コマンドに対して前記リモートコピープログラムにリモートコピー動作を行わせるためのファイルシステムとにより実行される
ことを特徴とするリモートコピー処理方法。
【請求項１５】
請求項９に記載のリモートコピー処理方法において、
前記第１のホスト計算機又は前記第２のホスト計算機が実行する前記リモートコピー切替ステップは、
前記第１のホスト計算機又は前記第２のホスト計算機が前記第１のリモートコピーステップによる前記第１のコピーが停止したことを検出した場合に、前記第１のホスト計算機又は前記第２のホスト計算機から発行済みであるが前記第１のストレージ装置又は前記第２のストレージ装置において未処理である入出力処理コマンドを格納する発行済コマンドキューと、
前記第２のリモートコピーステップによる前記第２のリモートコピーを切替えて起動するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキューと、
前記第２のリモートコピーステップによる前記第２のリモートコピーを切替えて起動するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される状態を示す入出力処理保留中フラグとにより実行される
ことを特徴とするリモートコピー処理方法。
【請求項１６】
請求項１０に記載のリモートコピー処理方法において、
前記第１のホスト計算機又は前記第２のホスト計算機が実行する前記第１のリモートコピー再開ステップは、前記第１の一時停止ステップが前記第２のリモートコピーステップによる前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を一時停止するときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される状態を示す入出力処理保留中フラグと、
前記入出力処理保留中フラグにより入出力処理が保留される状態を示すときに、前記第１のストレージ装置又は前記第２のストレージ装置において入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキューとを有し、
前記入出力処理保留中フラグにより入出力処理が再開される状態を示すときに、前記保留中コマンドキューに格納された入出力処理が保留された入出力処理コマンドが実行されることにより、前記第１のリモートコピーステップによる前記第１のストレージ装置又は前記第２のストレージ装置への入出力処理を再開することを特徴とするリモートコピー処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のストレージ装置（以下、ストレージと表記）とホスト計算機（以下、ホストと表記）がネットワークで接続されている情報処理システムにおいて、複数のストレージにデータを複製し記憶する計算機システム、計算機及びリモートコピー処理方法に関する。
【背景技術】
【０００２】
情報処理システム、特に金融システムなどデータの損失やサービスの停止が許されない、いわゆるミッションクリティカルなシステムでは、災害によるシステム障害に備えるために、遠隔地に、バックアップシステムを設けることが少なくない。その際、ストレージにデータを複製し記憶するリモートコピーの技術が必要となっている。
【０００３】
リモートコピーとは、ホストがある決められたコピー元のストレージのボリュームに対してデータの書き込みをすると、ストレージが自動的にコピー先のストレージのボリュームにデータのコピーを実行する技術をいう。
【０００４】
リモートコピーの実現方法としては、ホストがデータの複製を行う、ホストベースのリモートコピーと、ストレージがデータの複製を行う、ストレージベースのリモートコピーとが知られている。ストレージベースのリモートコピーには、ホストにデータ複製の負荷がかからないという利点がある（特許文献１参照）。
【０００５】
また、ストレージベースのリモートコピーにおいても、ストレージ間を接続したＦＣ（Fibre Channel）ネットワークを使ってリモートコピーを行うとともに、ホスト間を接続したＩＰ(Internet Protocol)ネットワークを介してホスト同士がお互いの状態を監視している（特許文献２参照）。
【特許文献１】米国特許第５１５５８４５号
【特許文献２】特開２００４−３０２５１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述したミッションクリティカルなシステムでは、仮にリモートコピーの経路で通信障害が起こっても業務を停止することはできない。そこで、リモートコピーができない状態で業務が実行されることによりコピー元のストレージのボリュームにデータが残されるが、コピー先のストレージのボリュームにこのデータを反映させることができない。
【０００７】
しかし、リモートコピーが停止したまま業務を継続する場合、データはコピー元のストレージのボリュームのみに書かれるが、このコピー先のストレージのボリュームにこのデータを反映できていない状態ではミッションクリティカルなシステムに求められる災害によるシステム障害への対応ができない。
【０００８】
そこで、このようなシステム障害を予め予測しておいてリモートコピー経路を多重化することによって通信障害に備えるという方法が考えられるが、経路を複数にすると、その分コストが増えるという問題がある。特に、ストレージベースのリモートコピーでは、ストレージ間を専用線で接続する形態が一般的だが、この回線を多重化するためのコストは高価である。
【０００９】
本発明は以上の問題を解決し、業務の継続と災害によるシステム障害への対応の両立を低コストで実現することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決し、本発明の目的を達成するため、本発明の計算機システムは、第１のストレージ装置と第２のストレージ装置との間で互いに通信を行うことにより、第１の論理ボリュームの内容と第２の論理ボリュームの内容とを一致させる第１のリモートコピーを行うために、第１のストレージ装置又は第２のストレージ装置が有する第１のリモートコピー機能部と、第１のホスト計算機と第２のホスト計算機との間で互いに通信を行うことにより、第１の論理ボリュームの内容と第２の論理ボリュームの内容とを一致させる第２のリモートコピーを行うために、第１のホスト計算機又は第２のホスト計算機が有する第２のリモートコピー機能部とを備えている。
【００１１】
さらに、本発明の計算機システムは、第１のリモートコピー機能部からの情報により第１のホスト計算機又は第２のホスト計算機が第１のリモートコピーが停止したことを検出する第１のホスト計算機又は第２のホスト計算機が有する第１のリモートコピー停止検出機能部と、第１のホスト計算機又は第２のホスト計算機が前記第１のリモートコピー機能部による第１のリモートコピーが停止したことを検出した場合、第２のリモートコピー機能部による第２のリモートコピーに切替えて第２のリモートコピーを起動する第１のホスト計算機又は第２のホスト計算機が有する第２のリモートコピー切替機能部とを備えたことを特徴とする。
【００１２】
本発明によれば、通常時は第１のリモートコピー機能部によりストレージベースの第１のリモートコピーを行い、第１のリモートコピー停止検出機能部によりストレージ間通信に障害が発生したことを検出した時には、第２のリモートコピー切替機能部が第２のリモートコピー機能部によるホストベースの第２のリモートコピーに切り替える。第２のリモートコピーに切り替え後、ストレージ間通信が復旧したときには再びストレージベースの第１のリモートコピーに切り替える。
【発明の効果】
【００１３】
本発明により、通常時にはストレージベースの第１のリモートコピーによりホストへの負荷を抑えつつ、ストレージベースの第１のリモートコピーの障害時においてはホストベースの第２のリモートコピーに切り替えて、第２のリモートコピーを使用することで、業務の続行と災害によるシステム障害への対応を両立することが可能となる。
また、ストレージ間の通信回線を多重化せず、ホスト間の通信回線を代替として用いるので、コストが抑えられる。
【発明を実施するための最良の形態】
【００１４】
図１は、本実施の形態例におけるシステム全体の構成図である。
サイトＡ１０１Ａは通常業務を行うサイトであり、サイトＢ１０１ＢはサイトＡ１０１Ａから離れた場所にあるバックアップサイトである。
各サイト１０１（１０１Ａおよび１０１Ｂ）は、ホスト１０２、ストレージ１０３、管理サーバ１０４を有している。この３つの装置はＬＡＮ１０５に接続しており、互いに通信が可能である。管理サーバ１０４は、ホスト１０２およびストレージ１０３の設定変更および状態監視を行う。また、管理端末１０６は、管理者がこの管理端末１０６から前記設定変更などの操作を行うための計算機であり、管理サーバ１０４と直接接続し、互いに通信が可能である。管理端末１０６はＬＡＮ１０５を介して管理サーバ１０４に接続してもよい。
【００１５】
各ホスト１０２は、少なくとも、ＣＰＵ１１１とメモリ１１２、ＩＰ  Ｉ／Ｆ１１３、ＩＰ  Ｉ／Ｆ１１４、ＦＣ  Ｉ／Ｆ１１５を備える。
メモリ１１２はＣＰＵ１１１が処理するプログラムおよびデータ、すなわちアプリケーション１１６およびファイルシステム１１７、リモートコピープログラム１１８、ペア情報１１９、発行済コマンドキュー１２０、保留中コマンドキュー１２１、Ｉ／Ｏ保留中フラグ１２２、ＦＣドライバ１２３、ＩＰドライバ１２４を格納している。
【００１６】
アプリケーション１１６はデータベース管理ソフトなどの、業務の処理に関するプログラムである。ファイルシステム１１７は、ＣＰＵ１１１がアプリケーション１１６の処理を行う上で生じたファイルへのＩ／Ｏを、リモートコピープログラムへのＩ／Ｏに変換するプログラムである。リモートコピープログラム１１８は、リモートコピーの処理に関するプログラムである。リモートコピープログラム１１８の詳細は後述する。ペア情報１１９、発行済コマンドキュー１２０、保留中コマンドキュー１２１、Ｉ／Ｏ保留中フラグ１２２はリモートコピープログラム１１８が扱うデータである。
【００１７】
ＦＣドライバ１２３はＦＣ  Ｉ／Ｆ  １１５を制御するプログラムであり、ＩＰドライバ１２４はＩＰ  Ｉ／Ｆ  １１３、１１４を制御するプログラムである。
ＩＰ  Ｉ／Ｆ１１３は管理サーバ１０４およびストレージ１０３Ａとの通信を行うためのインタフェースである。本実施の形態例では、ＩＰ  Ｉ／Ｆ１１３はＩＰ（Internet Protocol）に基づいて通信を行うとしているが、他の規格に準拠したインタフェースでもよい。また、ＩＰ  Ｉ／Ｆ１１４はホスト１０２Ｂとの通信を行うインタフェースであり、ＩＰ  Ｉ／Ｆ１１３同様、他の規格に準拠したインタフェースでもよい。なお、ＩＰ  Ｉ／Ｆ１１３、１１４は共用することも可能である。
【００１８】
ＦＣ  Ｉ／Ｆ１１５は、各ストレージ（１０３Ａまたは１０３Ｂ）に対してデータの入出力を行うインタフェースである。具体的にはＦＣ（Fibre Channel）のＨＢＡ（ホストバスアダプタ）だが、ＳＣＳＩ，ｉＳＣＳＩなど他の規格に準拠したインタフェースでもよい。
各ストレージ（１０３Ａまたは１０３Ｂ）は、プロセッサ１３１とメモリ１３２、ボリューム１３３、ＩＰ  Ｉ／Ｆ  １３４、ＦＣ  Ｉ／Ｆ１３５、ＦＣ  Ｉ／Ｆ１３６を備える。
【００１９】
各メモリ（１３２Ａまたは１３２Ｂ）は、プロセッサ１３１によって処理されるリモートコピープログラム１３７、ペア情報１３８、Ｉ／Ｏ制御プログラム１３９を保持する。プログラムの説明は後述。
ホスト１０２ＡのＩＰ  Ｉ／Ｆ１１３Ａとホスト１０２ＢのＩＰ  Ｉ／Ｆ１１３Ｂはインターネット（Internet）１４１を介して通信を行う。なお、１４１はインターネット（Internet）以外の回線でもよい。本実施例において、インターネット（Internet）１４１は、少なくともホストベースのリモートコピーのための通信に用いられる。
【００２０】
ストレージ１０３ＡのＦＣ  Ｉ／Ｆ１３６Ａとストレージ１０３ＢのＦＣ  Ｉ／Ｆ１３６Ｂは広域ＳＡＮ(Storage Area Network)１４２を介して通信を行う。なお、１４２は広域ＳＡＮ以外の回線でもよい。本実施の形態例において、広域ＳＡＮ１４２は少なくともストレージベースのリモートコピーのための通信に用いられる。
【００２１】
図２は、本発明の実施の形態例におけるコンポーネントの関係を示す図である。
本実施の形態例では、リモートコピー方式切り替え時のデータ保証を実現するために、ホストのリモートコピープログラム同士、ストレージのリモートコピープログラム同士が連携するだけでなく、ホストのリモートコピープログラムと、ストレージのリモートコピープログラムおよびＩ／Ｏ制御プログラムとが連携して種々の処理が行われる。
【００２２】
ＣＰＵ１１１Ａはファイルシステム１１７Ａをもって作成したＩ／Ｏをもとに、リモートコピープログラム１１８Ａを実行して、ストレージ１０３Ａに対するＩ／Ｏを作成する。また、ストレージ１０３Ａ，Ｂでのリモートコピー停止中に、ホストＢに対し、該Ｉ／Ｏを送信することにより、ストレージ１０３Ａ内の正ボリューム１３３Ａの内容とストレージ１０３Ｂ内の副ボリューム１３３Ｂの内容とを一致させる。ＣＰＵ１１１Ａは、ＦＣドライバ１２３Ａを実行してＦＣ  Ｉ／Ｆ１１５Ａを制御し、ストレージ１０３Ａに対するＩ／Ｏを送信する。また、ホストＢに対しては、ＣＰＵ１１１ＡはＩＰドライバ１２４Ａを実行してＩＰ  Ｉ／Ｆ１１４Ａを制御し、Ｉ／Ｏを発行する。
【００２３】
リモートコピープログラム１１８Ａを実行するＣＰＵ１１１Ａはまた、管理プログラム２２１Ａからの要求や、ストレージ１０３Ａから報告されるＩ／Ｏの結果に応じて、ペア情報１１９Ａを変更する。ペア情報１１９Ａには、リモートコピーの正ボリューム１３３Ａおよび副ボリューム１３３Ｂの情報として、Ｉ／Ｏ発行先（正ボリューム識別子、ホスト１０２Ｂ識別子、副ボリューム識別子）およびペア状態が格納される。ペア状態としては、少なくとも同期状態（ＰＡＩＲ：ホスト１０２Ａから正ボリューム１３３Ａへの書き込みは副ボリューム１３３Ｂへ複写される状態）、エラーによるサスペンド状態（ＰＳＵＥ：エラーのため、当該ペアは同期していない状態）の２つの状態が定義されている。
【００２４】
発行済コマンドキュー１２０Ａは、ホスト１０２Ａが発行済かつ未だストレージ１０３Ａから完了報告が返されていないコマンドを記憶しておくキューである。保留中コマンドキュー１２１Ａは、Ｉ／Ｏを保留する際に、その要求内容を保管するためのキューである。Ｉ／Ｏ保留中フラグ１２２Ａは、ＯＮならばＩ／Ｏ保留中であり、ＯＦＦならばＩ／Ｏ保留中でないことを示すフラグである。これらのキューおよびフラグはリモートコピー方式を切り替える際にデータ保証を行うために用いられる。
【００２５】
ホスト１０２Ｂは、リモートコピープログラム１１８Ｂに基づいて、ホスト１０２Ａからストレージ１０３ＢへのＩ／Ｏを中継する。すなわち、ホスト１０２ＡからＩ／Ｏを受け取り、その内容をストレージ１０３Ｂに送る。そして、ストレージ１０３Ｂに対するＩ／Ｏの結果をホスト１０２Ａに送る。また、ホスト１０２Ａからの要求に応じて、ペア情報１１９Ｂの変更を行う。
【００２６】
ストレージ１０３Ａでは、ホスト１０２Ａから受けたライトＩ／Ｏを、プロセッサ１３１ＡがＩ／Ｏ制御プログラム１３９Ａに基づいてボリューム１３３Ａに書き込むとともに、リモートコピープログラム１３７Ａを実行してストレージ１０３Ｂに転送する。リードＩ／Ｏの場合はリモートコピー処理は不要で、プロセッサ１３１Ａはボリューム１３３Ａの内容をホスト１０２Ａに送る。また、リモートコピープログラム１３７Ａを実行するプロセッサ１３１Ａは、管理サーバ１０４Ａからの指示や、リモートコピー処理の成否によってペア情報１３８Ａを変更する。
【００２７】
ペア情報１３８Ａには、リモートコピーの正ボリューム１３３Ａおよび副ボリューム１３３Ｂの情報として、正ボリューム識別子、副ボリューム識別子、ペア状態が格納される。ペア状態についてはホスト上のペア情報１１９Ａと同様である。
なお、本発明の特徴として、一組のボリュームに対して、ホストベースのリモートコピーとストレージベースのリモートコピーの両方が行えるようにする必要があり、このため、一組のボリュームに対する同じ設定情報が、ホスト上のペア情報１１９とストレージ上のペア情報１３８との両方に含まれるようにしている。
【００２８】
ストレージ１０３Ｂでは、プロセッサ１３１Ｂがリモートコピープログラムに基づいてストレージ１０３ＡからのＩ／Ｏを受け、Ｉ／Ｏ制御プログラム１３９Ｂに基づいてボリューム１３３Ｂに反映させる。また、リモートコピープログラム１３７Ｂを実行するプロセッサ１３１Ｂは、管理サーバ１０４Ｂからの指示や、リモートコピー処理の成否によってペア情報１３８Ｂを変更する。
【００２９】
次に、ＣＰＵ１１１Ａが実行するリモートコピープログラム１１８Ａの処理手順について、図３、図４、図５、図６のフローチャートを用いて説明する。
図３はホスト１０２Ａにおけるリモートコピープログラム１１８Ａ全体の処理手順を示すフローチャートである。
【００３０】
ＣＰＵ１１１Ａは、まず管理サーバ１０４Ａからの要求が来ているか検査し（ステップＳ３０１）、要求があれば、リモートコピー管理処理を行う（ステップＳ３０２）。リモートコピー管理処理としてＣＰＵ１１１Ａは、管理サーバ１０４Ａからの指示に従い、ペア情報１１９Ａのペア状態の変更、ペア状態の報告、Ｉ／Ｏ保留中フラグ１２２Ａの変更、発行済みＩ／Ｏの完了待ち、のいずれかの処理を行う。次に、ＣＰＵ１１１Ａはファイルシステム１１７ＡからのＩ／Ｏがあるか検査し（ステップＳ３０３）、要求があれば、その要求を受け取り（ステップＳ３０４）、その内容を保留中コマンドキュー１２１Ａに登録する（ステップＳ３０５）。この場合、保留中コマンドキュー１２１Ａは、通常処理におけるコマンドを溜めるために使用する。
【００３１】
その後、ＣＰＵ１１１Ａは保留中コマンドキュー１２１Ａが空かどうか検査し（ステップＳ３０６）、空ならばそのまま終了する。空でなければ、ＣＰＵ１１１ＡはＩ／Ｏ保留中フラグ１２２Ａを検査し（ステップＳ３０７）、ＯＮならばそのまま終了する。ＯＦＦならば、ＣＰＵ１１１Ａは保留中コマンドキュー１２１ＡからＩ／Ｏの内容を入って来た順番に取り出し（デキューし）（ステップＳ３０８）、Ｉ／Ｏ処理を行う（ステップＳ３０９）。
【００３２】
ステップＳ３０３のファイルシステム１１７ＡからのＩ／Ｏ要求検査からステップＳ３０９のＩ／Ｏ処理に示したように、Ｉ／Ｏ保留中フラグ１２２ＡがＩ／Ｏ保留中を示す状態であれば、ＣＰＵ１１１ＡはＩ／Ｏを保留中コマンドキュー１２１Ａに溜めるだけで、Ｉ／Ｏ処理を行わない。この手順によって、後述するホストベースリモートコピーからストレージリモートコピーへの切り替え時において、書き込み順序の逆転や書き込み漏れを防ぐために必要となる、Ｉ／Ｏの保留が可能になる。
【００３３】
図４は図３のステップＳ３０９に示すＩ／Ｏ処理のフローチャートである。
ＣＰＵ１１１Ａは、まずストレージ１０３ＡへＩ／Ｏを発行する（ステップＳ４０１）。その後ＣＰＵ１１１ＡはＩ／Ｏ種別を検査し（ステップＳ４０２）、ライトＩ／Ｏでなければストレージ１０３Ａから完了報告を受信して（ステップＳ４０３）、終了する。ライトＩ／ＯならばＣＰＵ１１１Ａはペア状態を検査する（ステップＳ４０４）。ペア状態が同期状態、すなわちホストベースリモートコピーを行うべき状態ならば、ＣＰＵ１１１Ａはホスト１０２ＢへＩ／Ｏを発行し（ステップＳ４０５）、ストレージ１０３Ａおよびホスト１０２Ｂから完了報告を受信して（ステップＳ４０６）、終了する。
【００３４】
同期状態以外、すなわちホストベースリモートコピーを行わないエラーによるサスペンド状態ならば、ＣＰＵ１１１Ａはまず発行済コマンドキュー１２０ＡにＩ／Ｏの内容を入れておき（エンキューし）（ステップＳ４０７）、ストレージ１０３Ａからの完了報告を受信する（ステップＳ４０８）。次に、ＣＰＵ１１１Ａはこの完了報告を検査し（ステップＳ４０９）、コピー成功ならば当該コマンドを発行済コマンドキュー１２０Ａから削除して（ステップＳ４１０）、終了する。コピー失敗の場合、ＣＰＵ１１１Ａはホストベースリモートコピー開始処理を行う（ステップＳ４１１）。この場合、ストレージベースリモートコピーからホストベースリモートコピーへの切替時に直ちにホストベースリモートコピーの開始処理を実行する。
【００３５】
ステップＳ４０８のストレージ１０３Ａからの完了報告、ステップＳ４０９のコピー成功判定、ステップＳ４１１のホストベースリモートコピー開始処理に示したとおり、ストレージからリモートコピー失敗の報告を受けた場合にはホストベースのリモートコピーを開始する。このことにより、ストレージベースリモートコピーに障害が発生したときでも、リモートコピーを継続できる。ただし、詳細は後述するが、データ保証のために、このホストベースリモートコピー開始処理で、未完了の（ホスト１０２Ａは発行したが、ストレージ１０３Ａからリモートコピーが完了したとの応答をホスト１０２Ａが受けていない）入出力処理のコマンドを示すＩ／Ｏの内容が必要になる。そのため、ステップＳ４０７でＩ／Ｏの内容を発行済コマンドキュー１２０Ａに格納し、Ｉ／Ｏ完了までの間保持する。
【００３６】
図５はホストベースリモートコピー開始処理のフローチャートである。
ＣＰＵ１１１Ａは、まず、ホスト１０２Ｂに対し、ペア状態の変更を要求して（ステップＳ５０１）、完了報告を受信する（ステップＳ５０２）。次に、ＣＰＵ１１１Ａは発行済コマンドキュー１２０Ａが空かどうか検査し（ステップＳ５０３）、空ならば終了する。空でなければ、ＣＰＵ１１１Ａは、発行済コマンドキュー１２０Ａに格納されたコマンドを、空になるまで順次処理していく。具体的には、ＣＰＵ１１１Ａは発行済コマンドキュー１２０ＡからＩ／Ｏの内容を取り出し（ステップＳ５０４）、ホスト１０２Ｂへ送って（ステップＳ５０５）、ホスト１０２Ｂから完了報告を受信する（ステップＳ５０６）。そして、ＣＰＵ１１１ＡはステップＳ５０３に戻り、発行済コマンドキュー１２０Ａが空になったかどうか検査する（ステップＳ５０３）。
【００３７】
ステップＳ５０３の発行済コマンドキュー１２０Ａの空の検査〜ステップＳ５０６のホスト１０２Ｂからの完了報告に示したように、リモートコピーを開始する際、まず未完了のＩ／Ｏに対するコピーを行うことで、ホスト１０２Ａは、ストレージ１０３Ａに書き込んだデータを、ストレージ１０３Ｂにも漏れなく書き込むことが可能となる。
【００３８】
図６はホストベースリモートコピーからストレージベースリモートコピーへの切り替え処理により、ストレージベースリモートコピーの処理を再開する流れを表している。
まず、管理者の操作に従って、管理サーバ１０４Ａがホスト１０２Ａにホストベースリモートコピー停止要求を送る（ステップＳ６０１）。この場合、ホストベースリモートコピー再開時は、管理サーバ１０４Ａからのホストベースリモートコピー停止指示が管理者のタイミングで発行される。
【００３９】
その要求を受けたホスト１０２Ａは、Ｉ／Ｏ保留中フラグ１２２ＡをＯＮにすることで、Ｉ／Ｏの保留を開始する（ステップＳ６０２）。Ｉ／Ｏ保留の手順は図３のステップＳ３０３からステップＳ３０７に示したとおりである。ホスト１０２Ａは、Ｉ／Ｏ保留前に発行したＩ／Ｏの完了報告を全て受信したら（ステップＳ６０３）、ホスト１０２Ｂにサスペンド指示を送る（ステップＳ６０４）。ホスト１０２Ｂからサスペンド完了報告が返ってくると（ステップＳ６０５）、ホスト１０２Ａはペア状態をサスペンド状態に変更し（ステップＳ６０６）、ホストベースリモートコピーの停止を管理サーバ１０４Ａへ報告する（ステップＳ６０７）。報告を受けた管理サーバ１０４Ａは、ストレージ１０３Ａにストレージベースリモートコピーの再開指示を出す（ステップＳ６０８）。この場合、ホストベースリモートコピー再開時は、管理サーバ１０４Ａからのストレージベースリモートコピー再開指示が管理者のタイミングで発行される。
【００４０】
完了報告が返ってきたら（ステップＳ６０９）、管理サーバ１０４Ａはホスト１０２ＡにＩ／Ｏ再開要求を送る（ステップＳ６１０）。Ｉ／Ｏ再開要求を受けたホスト１０２Ａは、Ｉ／Ｏ保留中フラグ１２２ＡをＯＦＦにして、Ｉ／Ｏ処理を再開する（ステップＳ６１１）。管理サーバ１０４Ａがホスト１０２ＡからＩ／Ｏ再開報告を受け取ると（ステップＳ６１２）、ホストベースリモートコピーからストレージベースリモートコピーへの切り替え処理は完了となる。
【００４１】
ストレージベースのリモートコピーが再開可能になった場合、ステップＳ６０２のＩ／Ｏ保留中フラグ１２２ＡをＯＮにすることから、ステップＳ６０６のペア状態をサスペンド状態に変更すること、ステップＳ６１０のＩ／Ｏ再開要求、ステップＳ６１１のＩ／Ｏ保留中フラグ１２２ＡをＯＦＦにすることによって、ホスト１０２Ａは、リモートコピー方式切り替え前後の各Ｉ／Ｏが、どちらか一方だけの方式で必ずリモートコピーされることを保証する。したがって、ストレージ１０３Ｂに対する、二重書き込みによる書き込み順序の逆転や、書き込み漏れを防ぐことが可能となる。
【００４２】
次に、図７、８、９を用いて、リモートコピー方式切り替え処理の概要を説明する。
図７は、通常時のリモートコピー処理の概要を示した図である。
ホスト１０２ＡではライトＩ／Ｏをストレージ１０３Ａに発行するとともに、同Ｉ／Ｏの内容を発行済みコマンドキュー１２０Ａに保持する。この発行済みコマンドキュー１２０ＡへのＩ／Ｏ保持は、アプリケーション１１６Ａに基づいて発行される処理コマンドに対してリモートコピープログラム１１８Ａにストレージベースのリモートコピー動作を行わせるためのファイルシステム１１７Ａにより実行される。
ストレージ１０３Ａはストレージ１０３Ｂとの間でストレージベースのリモートコピー処理を行い、その結果をホスト１０２Ａに報告する。コピー成功の報告を受けたら、ホスト１０２Ａは当該Ｉ／Ｏの内容を発行済みコマンドキュー１２０Ａから削除する。
【００４３】
この場合、ホスト１０２Ａ又はホスト１０２Ｂからの指示によりストレージベースのリモートコピーを行うために、ストレージ１０３Ａ又はストレージ１０３Ｂは、リモートコピープログラム１３７Ａ又はリモートコピープログラム１３７Ｂを有していて、これにより、ストレージ１０３Ａとストレージ１０３Ｂとの間で互いに通信を行うことにより、正ボリューム１３３Ａの内容と副ボリューム１３３Ｂの内容とを一致させる。なお、リモートコピープログラム１３７Ｂは、ホスト１０２Ｂからの指示によりストレージベースのリモートコピーを行う場合に同様に使用される。
【００４４】
図８は、ストレージベースのリモートコピーに障害が起こったときの処理の概要を示した図である。まず、ストレージベースのリモートコピーを開始したストレージ１０３Ａが、ストレージベースのリモートコピーが失敗したことをホスト１０２Ａに報告する。
この場合、ストレージベースのリモートコピー停止検出は、ホスト１０２Ａ又はホスト１０２Ｂがストレージ１０３Ａ又はストレージ１０３Ｂに発行する入出力処理コマンドに対して、ストレージ１０３Ａ又はストレージ１０３Ｂがストレージベースのリモートコピーの結果をホスト１０２Ａ又はホスト１０２Ｂに報告し、報告を受けたホスト１０２Ａ又はホスト１０２Ｂが、前記報告の内容を検査することによって、ストレージベースのリモートコピーの停止を検出することにより行われる。ホスト１０２Ｂからの指示によりストレージベースのリモートコピーを行う場合にも、同様にストレージベースのリモートコピー停止検出が行われる。
【００４５】
報告を受けたホスト１０２Ａは、発行済みコマンドキュー１２０Ａの中身、すなわち、未完了のＩ／Ｏをホスト１０２Ｂに送る。ホスト１０２Ｂは、同Ｉ／Ｏを受け取って、ストレージ１０３Ｂに送る。以上の手順によって、未完了のＩ／Ｏを副ボリューム１３３Ｂに反映する。これにより、ホストベースのリモートコピーが実行される。
【００４６】
ホスト１０２Ａ又はホスト１０２Ｂが実行するホストベースのリモートコピーは、ホスト１０２Ａ又はホスト１０２Ｂとの間で互いに通信を行うことにより、正ボリューム１３３Ａの内容と副ボリューム１３３Ｂの内容とを一致させるホストベースのリモートコピーを行うためのリモートコピープログラム１１８Ａ、１１８Ｂと、正ボリューム１３３Ａと副ボリューム１３３Ｂに対する情報を示すペア情報１１９Ａ、１１９Ｂと、アプリケーション１１６Ａに基づいて発行される処理コマンドに対してリモートコピープログラム１１８Ａ、１１８Ｂにリモートコピー動作を行わせるためのファイルシステム１１７Ａ、１１７Ｂとにより実行される。なお、リモートコピープログラム１１８Ｂ、ペア情報１１９Ｂファイルシステム１１７Ｂは、ホスト１０２Ｂからの指示によりホストベースのリモートコピーを行う場合に同様に使用される。
【００４７】
ホスト１０２Ａ又はホスト１０２Ｂが実行するホストベースのリモートコピーへのリモートコピー方式の切替は、ホスト１０２Ａ又はホスト１０２Ｂがストレージベースのリモートコピーが停止したことを検出した場合に実行される。このホストベースのリモートコピーへのリモートコピー方式の切替は、ホスト１０２Ａ又はホスト１０２Ｂから発行済みであるがストレージ１０３Ａ又はストレージ１０３Ｂにおいて未処理である入出力処理コマンドを格納する発行済コマンドキュー１２０Ａ、１２０Ｂと、このリモートコピーを起動するときにストレージ１０３Ａ又はストレージ１０３Ｂにおいて入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキュー１２１Ａ、１２１Ｂと、このホストベースのリモートコピーを起動するときにストレージ１０３Ａ又はストレージ１０３Ｂにおいて入出力処理が保留される状態を示すＩ／Ｏ保留中フラグ１２１Ａ、１２１Ｂとにより実行される。なお、発行済コマンドキュー１２０Ｂ、保留中コマンドキュー１２１Ｂ、Ｉ／Ｏ保留中フラグ１２１Ｂは、ホスト１０２Ｂからの指示によりホストベースのリモートコピーへの切替を行う場合に同様に使用される。
【００４８】
図９は、ストレージベースリモートコピー再開処理の概要を示した図である。
管理サーバ１０４Ａがホスト１０２Ａとストレージ１０３Ａにホストベースのリモートコピーの停止指示、及びストレージベースのリモートコピーの再開指示を送り、ホストベースのリモートコピーからストレージベースのリモートコピーに切り替える。このリモートコピー方式切り替えの間、Ｉ／Ｏを保留する必要があるため、Ｉ／Ｏの内容は保留中コマンドキュー１２１Ａに溜められる。
【００４９】
ホスト１０２Ａ又はホスト１０２Ｂが実行するストレージベースのリモートコピー再開処理は、ホストベースのリモートコピーによるストレージ１０３Ａ又はストレージ１０３Ｂへの入出力処理を一時停止するときに実行される。このストレージベースのリモートコピー再開処理は、ストレージ１０３Ａ又はストレージ１０３Ｂにおいて入出力処理が保留される状態を示すＩ／Ｏ保留中フラグ１２１Ａ、１２１Ｂと、Ｉ／Ｏ保留中フラグ１２１Ａ、１２１Ｂにより入出力処理が保留される状態を示すときにストレージ１０３Ａ又はストレージ１０３Ｂにおいて入出力処理が保留される入出力処理コマンドを格納する保留中コマンドキュー１２１Ａ、１２１Ｂとを用いて、入出力処理が再開される状態を示すときに保留中コマンドキュー１２１Ａ、１２１Ｂに格納された入出力処理が保留された入出力処理コマンドが実行されることにより、ストレージベースのリモートコピーによるストレージ１０３Ａ又はストレージ１０３Ｂへの入出力処理を再開することにより行われる。なお、保留中コマンドキュー１２１Ｂ、Ｉ／Ｏ保留中フラグ１２１Ｂは、ホスト１０２Ｂからの指示によりストレージベースのリモートコピーの再開を行う場合に同様に使用される。
【００５０】
上述したようなストレージベースのリモートコピーを行う場合でも、ホスト間には別の通信回線を用意する場合がある。例えば、特許文献２では、ストレージ装置間を接続したＦＣネットワークを使ってリモートコピーを行うとともに、ホスト間を接続したＩＰネットワークを介してホスト同士がお互いの状態を監視している。
そこで、ストレージ間での通信障害時に、このようなホスト間の通信回線をリモートコピーの経路として使うことができれば、ストレージ間の通信回線を多重化する場合に比べてコストを低減できる。
【００５１】
ただし、通信障害を検知したときに単純にリモートコピー方式を切り替えるだけでは、切り替え時に、二重書き込みによって書き込み順序が逆転したり、データが書き込まれないケースが起こりうる。
そこで、ホストは、ストレージベースのリモートコピーが失敗した場合には、ホストベースのリモートコピーを開始する。その際にホストはまず、未完了の（ホストは発行したが、ストレージ装置からリモートコピーが完了したとの応答をホストが受けていない）Ｉ／Ｏに対するコピーから始める。
【００５２】
ストレージベースのリモートコピーが復旧した場合、ホストはまず新たなＩ／Ｏの発行を止め、発行済Ｉ／Ｏの処理完了を待つ。その後、リモートコピー方式が切り替わってからＩ／Ｏ処理を再開する。
これにより、リモートコピー方式を切り替える際、リモートコピーとＩ／Ｏ処理の順序を制御することにより、データ保証が可能となる。
【００５３】
次に、本発明の他の実施の形態例を説明する。
以下説明する本発明の他の実施の形態例では、リモートコピープログラムの処理手順が既に説明した実施の形態例とは異なる。
図１０は、他の実施の形態例における、リモートコピープログラム１１８Ａの処理手順を示すフローチャートである。
図１０において、ステップＳ３０１およびステップＳ３０２の処理は図３に示した先の実施の形態例と同様であるので、その説明を省略する。
【００５４】
次に、ＣＰＵ１１１ＡはＩ／Ｏ保留中フラグを検査し（Ｓ１００３）、ＯＮならばステップＳ１０１０に進む。ＯＦＦならばＣＰＵ１１１Ａは保留中コマンドキューが空かどうか調べ（Ｓ１００４）、空ならば、次にファイルシステムからのＩ／Ｏの有無を調べる（Ｓ１００５）。Ｉ／Ｏがあれば、そのＩ／Ｏを受け取り（Ｓ１００６）、Ｉ／Ｏ処理を行う（Ｓ１００７）。
ステップＳ１００４において保留中コマンドキューが空でなければ、ＣＰＵ１１１Ａは保留中コマンドキューからＩ／Ｏの内容を取り出し（Ｓ１００８）、Ｉ／Ｏ処理を行う（Ｓ１００９）。
【００５５】
次に、ＣＰＵ１１１ＡはファイルシステムからのＩ／Ｏの有無を調べる（Ｓ１０１０）。Ｉ／Ｏがあれば、そのＩ／Ｏを受け取り（Ｓ１０１１）、その内容を保留中コマンドキュー１２１Ａに登録する（Ｓ１０１２）。
ステップＳ１００３からステップＳ１０１２において、Ｉ／Ｏ保留中フラグがＯＮならばＣＰＵ１１１ＡはＩ／Ｏを保留中コマンドキュー１２１Ａに溜めるだけで、Ｉ／Ｏ処理を行わない。この手順により、先の実施の形態例のステップＳ３０３からステップＳ３０９での処理と同様に、Ｉ／Ｏの保留が可能となる。
【００５６】
なお、先の実施の形態例では、処理の流れを単純にするため、Ｉ／Ｏ保留時でなくとも、ステップＳ３０５でＣＰＵ１１１ＡはＩ／Ｏを保留中コマンドキュー１２１Ａに一旦格納したが、他の実施の形態例では、Ｉ／Ｏ保留時以外は保留中コマンドキューを使わない。そのため、他の実施の形態例では先の実施の形態例に比べ、キュー操作のための処理オーバヘッドが削減できる。
【００５７】
なお、上述した実施の形態に限らず、本発明の特許請求の範囲内であれば、適宜、構成を変更しうることはいうまでもない。
【図面の簡単な説明】
【００５８】
【図１】本発明による計算機システムの全体構成を示す図である。
【図２】計算機システムのコンポーネントの関係を示す図である。
【図３】ホストのリモートコピープログラムの処理手順を示すフローチャートである。
【図４】リモートコピープログラムの処理手順のうち、I/O処理の手順を示すフローチャートである。
【図５】リモートコピープログラムの処理手順のうち、ホストベースリモートコピー開始の手順を示すフローチャートである。
【図６】ストレージベースリモートコピー再開の手順を示す図である。
【図７】通常時のリモートコピー処理の概要を表わす図である。
【図８】ストレージベースリモートコピー障害時の処理の概要を表わす図である。
【図９】ストレージベースリモートコピー再開処理の概要を表わす図である。
【図１０】他のリモートコピープログラムの処理手順を示すフローチャートである。
【符号の説明】
【００５９】
１０１Ａ…サイトＡ（通常業務を行うサイト）、１０１Ｂ…サイトＢ（バックアップサイト）、１４１…インターネット（Ｉｎｔｅｒｎｅｔ）、１４２…広域ＳＡＮ、１０２…ホスト、１０３…ストレージ、１０４…管理サーバ、１０５…ＬＡＮ、１０６…管理端末、
１１１…ＣＰＵ、１１２…メモリ、１１３…ＩＰ  Ｉ／Ｆ、１１４…ＦＣ  Ｉ／Ｆ、１１５…ＩＰ  Ｉ／Ｆ、１１６…アプリケーション、１１７…ファイルシステム、１１８…リモートコピープログラム、１１９…ペア情報、１２０…発行済コマンドキュー、１２１…保留中コマンドキュー、１２３…ＦＣドライバ、１２４…ＩＰドライバ、１３１…プロセッサ、１３２…メモリ、１３３…ボリューム、１３４…ＩＰ  Ｉ／Ｆ、１３５…ＦＣ  Ｉ／Ｆ、１３６…ＦＣ  Ｉ／Ｆ、１３７…リモートコピープログラム、１３８…ペア情報、１３９…Ｉ／Ｏ制御プログラム、２０１…ＯＳ、２２１…管理プログラム
【図１】
2006285919.tif 000003
【図２】
2006285919.tif 000004
【図３】
2006285919.tif 000005
【図４】
2006285919.tif 000006
【図５】
2006285919.tif 000007
【図６】
2006285919.tif 000008
【図７】
2006285919.tif 000009
【図８】
2006285919.tif 000010
【図９】
2006285919.tif 000011
【図１０】
2006285919.tif 000012