(57)【要約】【課題】ホストからストレージへの入出力を継続できない期間が生じることを抑止する。【解決手段】実施形態のストレージシステムでは、現用系のストレージを有する第１のストレージ装置は、第１、第２のストレージ装置の間の通信経路に異常が生じ、監視サーバからのポーリングに基づいて第１のストレージ装置と、監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを非活性化する。待機系のストレージを有する第２のストレージ装置は、第１、第２のストレージ装置の間の通信経路に異常が生じ、監視サーバからのポーリングに基づいて第１のストレージ装置と、監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを活性化する。【選択図】図１
2015197742.tif 000002
【特許請求の範囲】
【請求項１】
現用系のストレージを有する第１のストレージ装置と、待機系のストレージを有する第２のストレージ装置と、監視サーバとが互いに通信可能に接続されたストレージシステムであって、ホストと通信するための、前記第１のストレージ装置における通信ポート及び前記第２のストレージ装置における通信ポートには互いに同一の識別子が設定され、前記第１のストレージ装置又は前記第２のストレージ装置において活性化された通信ポートを有するストレージ装置が前記設定された識別子をもとに前記ホストとの通信を行い、
前記監視サーバは、
前記第１のストレージ装置及び前記第２のストレージ装置に所定の時間間隔でポーリングを行って、前記第１のストレージ装置及び前記第２のストレージ装置より受信した情報を、次のポーリングで前記第１のストレージ装置及び前記第２のストレージ装置へ送信する送受信部を備え、
前記第１のストレージ装置は、
前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて前記第１のストレージ装置と前記監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを非活性化する第１のフェイルオーバ処理部を備え、
前記第２のストレージ装置は、
前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて前記第１のストレージ装置と前記監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを活性化する第２のフェイルオーバ処理部を備える
ことを特徴とするストレージシステム。
【請求項２】
前記第１のフェイルオーバ処理部は、前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じた後に、前記監視サーバからのポーリングを第１の時間間隔で監視して前記第１のストレージ装置と、前記監視サーバとの通信経路に異常が生じたか否かを判定し、
前記第２のフェイルオーバ処理部は、前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じた後に、前記監視サーバからのポーリングを前記第１の時間間隔よりも長い第２の時間間隔で監視して前記第１のストレージ装置と前記監視サーバとの通信経路に異常が生じたか否かを判定する
ことを特徴とする請求項１に記載のストレージシステム。
【請求項３】
前記第２のストレージ装置は、
前記第１のストレージ装置と、前記第２のストレージ装置との間の通信経路が復旧し、前記自装置の通信ポートが活性化されている場合、前記第１のストレージ装置とネゴシエーションして前記待機系のストレージのデータを前記現用系のストレージにコピーする処理を行うネゴシエーション処理部を備える
ことを特徴とする請求項１又は請求項２に記載のストレージシステム。
【請求項４】
前記第１のストレージ装置及び前記第２のストレージ装置は、前記第１のストレージ装置と、前記第２のストレージ装置との間の通信経路に異常が生じた場合、前記監視サーバからのポーリングに応じて当該ポーリングの時間間隔を短くするための通知を行い、
前記送受信部は、前記ポーリングの時間間隔を短くするための通知に基づいて前記ポーリングの時間間隔を短くする
ことを特徴とする請求項１乃至請求項３のいずれか一項に記載のストレージシステム。
【請求項５】
前記第１のストレージ装置及び前記第２のストレージ装置は、構成の変更を示す情報を、前記監視サーバからのポーリングに応じて送信し、
前記送受信部は、前記構成の変更を示す情報が受信された場合、前記ポーリングによって、前記第１のストレージ装置及び前記第２のストレージ装置より構成を示す情報を収集し、当該収集した情報を前記第１のストレージ装置及び前記第２のストレージ装置へ送信する
請求項１乃至請求項４のいずれか一項に記載のストレージシステム。
【請求項６】
前記第２のストレージ装置は、前記ポーリングにより通知された前記第１のストレージ装置の情報に基づいて、前記自装置の通信ポートに前記第１のストレージ装置の通信ポートと同一の識別子を設定する構成処理部を備える
請求項１乃至請求項５のいずれか一項に記載のストレージシステム。
【請求項７】
現用系のストレージ及び待機系ストレージの少なくとも一方のストレージと、
他のストレージ装置と同一の識別子が設定された、ホストと通信するための通信ポートと、
監視サーバからのポーリングに対して自装置の情報を通知する通信処理部と、
前記他のストレージ装置と、自装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて自装置と、前記監視サーバとの通信経路に異常が生じたと判定した場合に、活性化されている自装置の通信ポートを非活性化し、前記他のストレージ装置と、自装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて前記他のストレージ装置と、前記監視サーバとの通信経路に異常が生じたと判定した場合に、非活性化されている自装置の通信ポートを活性化するフェイルオーバ処理部と、
を備えることを特徴とするストレージ装置。
【請求項８】
現用系のストレージを有する第１のストレージ装置と、待機系のストレージを有する第２のストレージ装置と通信可能に接続される監視サーバであって、
前記第１のストレージ装置及び前記第２のストレージ装置に所定の時間間隔でポーリングを行って、前記第１のストレージ装置及び前記第２のストレージ装置より受信した情報を、次のポーリングで前記第１のストレージ装置及び前記第２のストレージ装置へ送信する送受信部を備えることを特徴とする監視サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ストレージシステム、ストレージ装置および監視サーバに関する。
【背景技術】
【０００２】
従来、業務サーバ等のホストのデータを管理するストレージシステムでは、ストレージの故障などに備えるため、現用系のストレージと待機系のストレージとを有するものがある。このストレージシステムでは、現用系のストレージのデータを待機系のストレージにバックアップしている。そして、運用管理者は、ホストと現用系のストレージとの入出力ができなくなった場合に、現用系／待機系のストレージの状態を確認して、待機系のストレージへ切り替えるフェイルオーバを行う。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００４−５３２４４２号公報
【特許文献２】特開２０１０−６７１１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来の技術では、運用管理者が待機系のストレージへ切り替えるフェイルオーバを行うまでに、運用管理者によるストレージの確認、設定などの工程を経る必要がある。このため、ホストからストレージへの入出力を継続できない（業務停止）期間が生じる場合があった。
【課題を解決するための手段】
【０００５】
一実施形態のストレージシステムは、現用系のストレージを有する第１のストレージ装置と、待機系のストレージを有する第２のストレージ装置と、監視サーバとが互いに通信可能に接続されたストレージシステムであって、ホストと通信するための、前記第１のストレージ装置における通信ポート及び前記第２のストレージ装置における通信ポートには互いに同一の識別子が設定され、前記第１のストレージ装置又は前記第２のストレージ装置において活性化された通信ポートを有するストレージ装置が前記設定された識別子をもとに前記ホストとの通信を行い、前記監視サーバは、前記第１のストレージ装置及び前記第２のストレージ装置に所定の時間間隔でポーリングを行って、前記第１のストレージ装置及び前記第２のストレージ装置より受信した情報を、次のポーリングで前記第１のストレージ装置及び前記第２のストレージ装置へ送信する送受信部と、前記第１のストレージ装置は、前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて前記第１のストレージ装置と前記監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを非活性化する第１のフェイルオーバ処理部を備え、前記第２のストレージ装置は、前記第１のストレージ装置と前記第２のストレージ装置との間の通信経路に異常が生じ、前記監視サーバからのポーリングに基づいて前記第１のストレージ装置と前記監視サーバとの通信経路に異常が生じたと判定した場合に、自装置の通信ポートを活性化する第２のフェイルオーバ処理部を備えることを特徴とする。
【発明の効果】
【０００６】
一実施形態によれば、ホストからストレージへの入出力を継続できない期間が生じることを抑止できる、という効果を奏する。
【図面の簡単な説明】
【０００７】
【図１】図１は、実施形態にかかるストレージシステムの構成を例示するブロック図である。
【図２】図２は、ＴＦＯグループを説明する説明図である。
【図３】図３は、送受信情報を説明する説明図である。
【図４】図４は、管理情報を説明する説明図である。
【図５】図５は、Ｐｏｒｔ管理テーブルを説明する説明図である。
【図６】図６は、ＯＬＵ管理テーブルを説明する説明図である。
【図７】図７は、セッション管理テーブルを説明する説明図である。
【図８】図８は、実施形態にかかるストレージシステムの機能構成を例示するブロック図である。
【図９】図９は、閉塞監視部の処理を例示するフローチャートである。
【図１０】図１０は、抑止通知監視部の処理を例示するフローチャートである。
【図１１】図１１は、フェイルオーバ処理部の処理を例示するフローチャートである。
【図１２】図１２は、通信処理部の処理を例示するフローチャートである。
【図１３】図１３は、構築処理部の処理を例示するフローチャートである。
【図１４】図１４は、送受信処理部の初回処理を例示するフローチャートである。
【図１５】図１５は、送受信処理部の処理を例示するフローチャートである。
【図１６】図１６は、タイムアウト処理部の処理を例示するフローチャートである。
【図１７】図１７は、閉塞監視部の処理を例示するフローチャートである。
【図１８】図１８は、抑止通知監視部の処理を例示するフローチャートである。
【図１９】図１９は、フェイルオーバ処理部の処理を例示するフローチャートである。
【図２０】図２０は、通信処理部の処理を例示するフローチャートである。
【図２１】図２１は、構築処理部の処理を例示するフローチャートである。
【図２２】図２２は、復旧監視部の処理を例示するフローチャートである。
【図２３】図２３は、ネゴシエーション処理部の処理を例示するフローチャートである。
【図２４】図２４は、通信監視処理部の処理を例示するフローチャートである。
【発明を実施するための形態】
【０００８】
以下、図面を参照して、実施形態にかかるストレージシステム、ストレージ装置および監視サーバを説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明するストレージシステム、ストレージ装置および監視サーバは、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
【０００９】
図１は、実施形態にかかるストレージシステム１の構成を例示するブロック図である。図１に示すように、ストレージシステム１は、ストレージ装置１０、２０と、監視サーバ３０と、業務サーバ４０とを有する。ストレージ装置１０、２０と業務サーバ４０とは、例えばＳＡＮ（Storage  Area  Network）などのネットワークＮ１によって互いに通信可能される。また、ストレージ装置１０、２０と、監視サーバ３０とは、ＬＡＮ（Local  Area  Network）などのネットワークＮ２によって互いに通信可能に接続される。監視サーバ３０は、ネットワークＮ２を介してストレージ装置１０、２０を監視するサーバ装置である（詳細は後述する）。業務サーバ４０は、ネットワークＮ１を介してストレージ装置１０、２０を利用するホストである。
【００１０】
ストレージ装置１０、２０は、ネットワークＮ１を介して業務サーバ４０が入出力するデータを、ディスク１３ａ、１３ｂ、１４ａ、１４ｂ、２３ａ、２３ｂ、２４ａ、２４ｂに記憶して管理する。具体的には、ストレージ装置１０、２０は、ディスク１３ａ、１３ｂ、１４ａ、１４ｂ、２３ａ、２３ｂ、２４ａ、２４ｂを現用系のストレージと、待機系のストレージとに分け、現用系のストレージと、待機系のストレージとの組を一つのグループとして管理する。
【００１１】
現用系のストレージは、いわゆるプライマリのストレージであり、例えば現用系のストレージに障害が無い通常時に使用される。また、待機系のストレージは、いわゆるセカンダリのストレージであり、例えば通常時には現用系のストレージのコピーが格納される。そして、現用系のストレージに異常が生じた場合には、フェイルオーバによって切り替えて使用される。
【００１２】
この現用系のストレージと、待機系のストレージとの組み合わせは、ストレージシステム１の運用管理者によって適宜設定される。例えば、ストレージ装置１０のディスク１３ａ、１３ｂ、１４ａ、１４ｂをプライマリ、ストレージ装置２０のディスク２３ａ、２３ｂ、２４ａ２４ｂをセカンダリとする組み合わせを設定してもよい。この場合、ストレージ装置１０は現用系のストレージを有し、ストレージ装置２０は待機系のストレージを有する構成となる。この現用系のストレージと、待機系のストレージとの組み合わせを、本実施形態ではＴＦＯ（トランスペアレントフェイルオーバ）グループと呼ぶ。トランスペアレントフェイルオーバは、現用系のストレージから待機系のストレージへの切り替えを業務サーバ４０が認識することなく、透過的に行われるフェイルオーバのことである。
【００１３】
このＴＦＯグループは、任意に設定してよい。図２は、ＴＦＯグループを説明する説明図である。例えば、図２に示すように、ＴＦＯグループＧ１、Ｇ２のように複数のグループを設定してもよい。ここで、ＴＦＯグループＧ１のプライマリをストレージ装置１０のディスク１３ａ、１３ｂ、セカンダリをストレージ装置２０の２４ａ、２４ｂと設定し、ＴＦＯグループＧ２のプライマリをストレージ装置２０のディスク２３ａ、２３ｂ、セカンダリをストレージ装置１０のディスク１４ａ、１４ｂと設定してもよい。この場合、ＴＦＯグループＧ１については、ストレージ装置１０は現用系のストレージを有し、ストレージ装置２０は待機系のストレージを有する構成となる。また、ＴＦＯグループＧ２については、ＴＦＯグループＧ１とは逆に、ストレージ装置１０は待機系のストレージを有し、ストレージ装置２０は現用系のストレージを有する構成となる。
【００１４】
以下の実施形態では、ストレージ装置１０を現用系のストレージを有するプライマリとし、ストレージ装置２０を待機系のストレージを有するセカンダリとして説明する。
【００１５】
ストレージ装置１０は、ＣＡ（Channel  Adapter）１１ａ、１１ｂ、１２ａ、１２ｂ、ディスク１３ａ、１３ｂ、１４ａ、１４ｂ、ＣＭ（Control  Module）１５、１６を有する。ＣＡ１１ａ、１１ｂ、１２ａ、１２ｂは、ネットワークＮ１を介した通信を行うインターフェース（通信ポート）である。ディスク１３ａ、１３ｂ、１４ａ、１４ｂは、例えばＲＡＩＤ（Redundant  Arrays  of  Inexpensive  Disks）を構築し、業務サーバ４０から受信した書込みデータを記憶する。
【００１６】
ＣＭ１５、１６は、業務サーバ４０とディスク１３ａ、１３ｂ、１４ａ、１４ｂとの間のデータの入出力、監視サーバ３０との通信を制御する。なお、ＣＭ１５、１６は、業務サーバ４０からの要求に応じて読み書きされるデータを一時的に記憶する図示しない論理ボリューム用キャッシュを有してもよい。また、ＣＭ１５、１６は、業務サーバ４０からストレージ装置２０へのデータの転送を依頼された場合に用いる図示しない転送用バッファを有してもよい。
【００１７】
ストレージ装置２０は、ＣＡ２１ａ、２１ｂ、２２ａ、２２ｂ、ディスク２３ａ、２３ｂ、２４ａ、２４ｂ、ＣＭ２５、２６を有する。ＣＡ２１ａ、２１ｂ、２２ａ、２２ｂは、ネットワークＮ１を介した通信を行うインタフェース（通信ポート）である。ディスク２３ａ、２３ｂ、２４ａ、２４ｂは、例えばＲＡＩＤを構築し、業務サーバ４０から受信した書込みデータやストレージ装置１０から転送されたデータを記憶する。
【００１８】
ＣＭ２５、２６は、業務サーバ４０とディスク２３ａ、２３ｂ、２４ａ、２４ｂとの間のデータの入出力、ストレージ装置１０から転送されたデータの入出力、監視サーバ３０との通信を制御する。なお、ＣＭ２５、２６は、業務サーバ４０からの要求に応じて読み書きされるデータを一時的に記憶する図示しない論理ボリューム用キャッシュを有してもよい。また、ＣＭ２５、２６は、ストレージ装置１０からデータを受信した場合に用いる図示しない転送用バッファを有してもよい。
【００１９】
また、ストレージ装置１０、２０においてネットワークＮ１を介して業務サーバ４０と通信を行う通信ポートである、ＣＡ１１ａ、１１ｂ、１２ａ、１２ｂ、２１ａ、２１ｂ、２２ａ、２２ｂには、所定のＷＷＮ（World  Wide  Name）が設定されている。このＷＷＮは、ＳＡＮにおいて装置を識別すために一意に設定される識別子である。なお、ＳＡＮの代わりにＬＡＮ等を用いる場合は、ＩＰアドレスを識別子として用いてもよい。
【００２０】
本実施形態では、ストレージ装置１０において、業務サーバ４０と通信を行うＣＡ１１ａ、１１ｂ、１２ａ、１２ｂには、各ポートの識別子であるＷＷＰＮ（World  Wide  Port  Name）、同一のノード(ストレージ装置１０)の識別子であるＷＷＮＮ（World  Wide  Node  Name）等が設定されている。
【００２１】
また、ストレージ装置２０において、実務業務サーバ４０と通信を行うＣＡ２１ａ、２１ｂ、２２ａ、２２ｂには、ＣＡ１１ａ、１１ｂ、１２ａ、１２ｂの各ポートと同一のＷＷＰＮ（World  Wide  Port  Name）が設定され、ストレージ装置１０と同一のＷＷＮＮ（World  Wide  Node  Name）が設定されている。
【００２２】
つまり、プライマリのストレージ装置１０とセカンダリのストレージ装置２０は、切り換えられた際に入出力がエラーとならずに業務が継続されるように、同一のＷＷＰＮ、ＷＷＮＮが設定されている。また、ボリュームのＵＩＤ（Universal  ID）や、ＨＬＵＮ（Host  Logical  Unit  Number）等も同一に設定されている。
【００２３】
そして、ストレージ装置１０、２０の一方の通信ポートをリンクアップ（活性化）させ、他方の通信ポートをリンクダウン（非活性化）させる。これにより、業務サーバ４０は、ストレージ装置１０、２０の内の、通信ポートがリンクアップされた方と通信できる。例えば、ストレージ装置１０のストレージに障害が無い通常時にはストレージ装置１０の通信ポートがリンクアップされ、ストレージ装置２０の通信ポートがリンクダウンされる。これにより、通常時における業務サーバ４０の入出力には、ストレージ装置１０が使用される。そして、ストレージ装置１０のストレージに障害が生じた場合には、ストレージ装置１０の通信ポートをリンクダウンさせ、ストレージ装置２０の通信ポートをリンクアップさせる。これにより、業務サーバ４０の入出力が透過的にストレージ装置２０に切り替えられることとなる。
【００２４】
監視サーバ３０は、ネットワークＮ２を介してストレージ装置１０、２０に所定の時間間隔でポーリングを行って、ストレージ装置１０、２０より各種情報を受信する。次いで、監視サーバ３０は、ポーリングによって受信した情報を次のポーリングでストレージ装置１０、２０へ送信する。これにより、ストレージ装置１０、２０は、各種情報を共有する。また、監視サーバ３０は、ストレージ装置１０、２０へのポーリングでタイムアウトが生じた場合、そのタイムアウトが生じたことをストレージ装置１０、２０へ送信する。これにより、ストレージ装置１０、２０は、監視サーバ３０とストレージ装置１０、２０との間の通信経路で異常が生じたことを認識できる。
【００２５】
ここで、監視サーバ３０のポーリングによって、ストレージ装置１０、２０の間で送受信される送信情報について説明する。図３は、送受信情報Ｉを説明する説明図である。
【００２６】
図３に示すように、送信情報Ｉは、Ｃｏｎｆｉｇ  Ｃｏｕｎｔを格納する領域Ｉ１と、Ｓｐｅｅｄ  Ｆｌａｇを格納する領域Ｉ２と、Ｇｒｏｕｐ  Ｉｎｆｏ［０］〜Ｇｒｏｕｐ  Ｉｎｆｏ［３１］を格納する領域Ｉ３とを含む。
【００２７】
Ｃｏｎｆｉｇ  Ｃｏｕｎｔは、ＴＦＯグループの設定、すなわちストレージ装置１０、２０におけるストレージ等の構成が変更されたことを示す情報であり、例えば、構成が変更された場合にインクリメントされるカウンタ値である。例えば、監視サーバ３０からのポーリングされる送信情報Ｉの領域Ｉ１に格納されたＣｏｎｆｉｇ  Ｃｏｕｎｔを参照して、直近のＣｏｎｆｉｇ  Ｃｏｕｎｔと比較することで、構成の変更の有無を確認できる。
【００２８】
Ｓｐｅｅｄ  Ｆｌａｇは、ポーリングの時間間隔を短くするか否かを示すフラグである。例えば、Ｓｐｅｅｄ  Ｆｌａｇが「ＮＯＲＭＡＬ」である場合には、監視サーバ３０はポーリングの時間間隔はそのままとする。また、Ｓｐｅｅｄ  Ｆｌａｇが「ＨＩＧＨ  ＳＰＥＥＤ」である場合には、監視サーバ３０はポーリングの時間間隔を短くする。
【００２９】
Ｇｒｏｕｐ  Ｉｎｆｏ［０］〜Ｇｒｏｕｐ  Ｉｎｆｏ［３１］は、各ＴＦＯグループ（０〜３１）において、監視サーバ３０のポーリングに応じてストレージ装置間で通知する情報である。本実施形態では、プライマリ側のストレージ装置１０と、セカンダリ側のストレージ装置２０の１つのＴＦＯグループであることから、Ｇｒｏｕｐ  Ｉｎｆｏ［０］などに情報を格納して通知する。
【００３０】
例えば、プライマリ側のストレージ装置１０は、業務サーバ４０とのＩＯ（入出力）を抑止中であることを示すＩＯ抑止通知を、ストレージ装置２０とのＴＦＯグループにおけるＧｒｏｕｐ  Ｉｎｆｏ［０］に格納して通知する。また、セカンダリ側のストレージ装置２０は、ストレージ装置１０からのＩＯ抑止通知に対するＩＯ抑止応答を、Ｇｒｏｕｐ  Ｉｎｆｏ［０］に格納して通知する。また、監視サーバ３０は、ストレージ装置１０、２０に対するポーリングがタイムアウト（失敗）したことをＧｒｏｕｐ  Ｉｎｆｏ［０］に格納して通知する。また、ストレージ装置１０、２０において構成の変更があった場合には、構成が変更中であることと、変更された差分などをＧｒｏｕｐ  Ｉｎｆｏ［０］に格納して通知する。
【００３１】
ストレージ装置１０、２０は、監視サーバ３０からポーリングによって通知された送信情報Ｉに基づいたＴＦＯグループの状態、各種設定などを、管理情報、管理テーブルとしてＣＭ１５、１６、２５、２６内の不揮発性メモリ（図示しない）などに記憶する。
【００３２】
ここで、ストレージ装置１０、２０が記憶する管理情報、管理テーブルについて説明する。図４は、管理情報Ｔ１を説明する説明図である。図４に示すように、管理情報Ｔ１は、ＴＦＯのグループについての情報を格納する。この管理情報Ｔ１は、ＴＦＯグループ（０〜３１）ごとに用意されており、各ＴＦＯグループの情報を参照することで、そのグループに関する各種情報を確認できる。
【００３３】
具体的には、管理情報Ｔ１は、「ＩＯ抑止状態」、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｅｔｉｏｎ」、「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」を含む。「ＩＯ抑止状態」は、プライマリが業務サーバ４０とのＩＯ（入出力）を抑止中であるか否かを示す。「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｅｔｉｏｎ」は、ＴＦＯグループのコンディションが通常（Ｎｏｒｍａｌ）であるか停止（Ｈａｌｔ）であるかを示す。
【００３４】
「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」は、ＴＦＯグループの状態が活動中（Ａｃｔｉｖｅ）であるか待機中（Ｓｔａｎｄｂｙ）であるかを示す。「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は、ＴＦＯグループのコンディションが停止となった要因を示す。具体的には、要因なし（Ｎｏｎｅ）、プライマリ／セカンダリ間の通信途絶（ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ）、プライマリ／監視サーバの通信途絶（Ｍｏｎｉｔｏｒｉｎｇ  Ｓｅｒｖｅｒ  Ｄｉｓｃｏｎｎｅｃｔｅｄ）がある。
【００３５】
また、管理情報Ｔ１は、「Ｋｉｎｄ」、「Ｐａｉｒ  Ｂｏｘ  ＩＤ」、「Ｐａｉｒ  Ｐｏｒｔ  Ｃｏｕｎｔ」、「ＷＷＮＮ」を含む。「Ｋｉｎｄ」は、自装置がプライマリ、セカンダリ、Ｎｏｎｅのいずれかを示す。「Ｐａｉｒ  Ｂｏｘ  ＩＤ」は、組となるストレージ装置を識別するＩＤである。「Ｐａｉｒ  Ｐｏｒｔ  Ｃｏｕｎｔ」は、組となるストレージ装置の構成の変更を示すカウンタ値である。「ＷＷＮＮ」は、自装置のＷＷＮＮ（World  Wide  Node  Name）を示す。また、管理情報Ｔ１は、各通信ポートの設定を示す「Ｏｗｎ  Ｐｏｒｔ［０］…」、「Ｐａｉｒ  Ｐｏｒｔ［０］…」、「ＷＷＰＮ［０］…」を含む。
【００３６】
図５は、Ｐｏｒｔ管理テーブルＴ２を説明する説明図である。図５に示すように、Ｐｏｒｔ管理テーブルＴ２は、自装置におけるＰｏｒｔを管理するテーブルである。このＰｏｒｔ管理テーブルＴ２を参照することで、例えば、ＣＡがどのＴＦＯグループで使用されているかを確認できる。
【００３７】
図６は、ＯＬＵ（Open  Logical  Unit）管理テーブルＴ３を説明する説明図である。図６に示すように、ＯＬＵ管理テーブルＴ３は、自装置におけるＯＬＵを管理するテーブルである。例えば、ＯＬＵ管理テーブルＴ３を参照することで、ＴＦＯグループが使用するＯＬＵを確認できる。
【００３８】
図７は、セッション管理テーブルＴ４を説明する説明図である。図７に示すように、セッション管理テーブルＴ４は、「ＴＦＯ  セッション  Ｓｔａｔｕｓ」、「Ｃｏｐｙ  元  ＯＬＵ」、「Ｃｏｐｙ  先  ＯＬＵ」を含み、ＴＦＯのセッションを管理するテーブルである。「ＴＦＯ  セッション  Ｓｔａｔｕｓ」は、「Ｃｏｐｙｉｎｇ」、「Ａｃｔｉｖｅ」、「Ｓｕｓｐｅｎｄ」など、ＴＦＯにおける現在のセッション状態を示す。「Ｃｏｐｙ  元  ＯＬＵ」、「Ｃｏｐｙ  先  ＯＬＵ」は、ＴＦＯにおいてコピー元のＯＬＵと、コピー先のＯＬＵとを示す。
【００３９】
次に、ストレージシステム１の機能構成について説明する。図８は、実施形態にかかるストレージシステム１の機能構成を例示するブロック図である。図８に示すように、プライマリ側のストレージ装置１０は、ＣＭ１５、１６がプログラムを順次実行することで、閉塞監視部１０１、抑止通知監視部１０２、フェイルオーバ処理部１０３、通信処理部１０４、構築処理部１０５としての機能を実現する。同様に、セカンダリ側のストレージ装置２０は、ＣＭ２５、２６がプログラムを順次実行することで、閉塞監視部２０１、抑止通知監視部２０２、フェイルオーバ処理部２０３、通信処理部２０４、構築処理部２０５、復旧監視部２０６、ネゴシエーション処理部２０７、通信監視処理部２０８としての機能を実現する。また、監視サーバ３０は、制御部３１が送受信処理部３０１、タイムアウト処理部３０２としての機能を実現する。制御部３１は、ＣＰＵ（Central  Processing  Unit）、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）などを有する。制御部３１は、ＣＰＵがＲＯＭなどに記憶されたプログラムをＲＡＭに展開して順次実行することで、上述した機能部を提供する。
【００４０】
先ず、ストレージ装置１０の機能構成を説明する。閉塞監視部１０１は、プライマリ、セカンダリ間の通信経路が閉塞（異常）状態であるか否かを監視する。ここでいう、通信経路の異常状態とは、正常な応答が得られない等の通信の異常による途絶状態を意味するものである。この通信経路の異常には、物理的な配線の切断等のハードウエア的な要因と、通信アプリケーションのハングアップなどソフトウエア的な要因とがある。閉塞監視部１０１は、いずれの要因であっても、正常な応答が得られない等の通信の異常となる場合は通信経路の閉塞とする。
【００４１】
図９は、閉塞監視部１０１の処理を例示するフローチャートである。図９に示すように、処理が開始されると、閉塞監視部１０１は、プライマリとセカンダリ間の通信経路、すなわちストレージ装置１０、２０の間の通信経路が異常であるか否かを判定する（Ｓ１１）。具体的には、ＡＣＫなどに対する正常な応答がない場合には、通信経路の異常と判定する。
【００４２】
異常でない場合（Ｓ１１：ＮＯ）、閉塞監視部１０１はそのまま処理を待機する。異常である場合（Ｓ１１：ＹＥＳ）、閉塞監視部１０１は、業務サーバ４０とのＩＯ（入出力）を抑止する抑止状態とし（Ｓ１２）、監視サーバ３０を介してストレージ装置２０へＩＯ抑止通知を行う（Ｓ１３）。具体的には、閉塞監視部１０１は、監視サーバ３０からのポーリングに対してＩＯ抑止通知を含めて応答を監視サーバ３０へ送信する。このとき、閉塞監視部１０１は、ＩＯ抑止通知に対する応答の監視を、所定の時間間隔（例えば９秒）でタイムアウトとするように抑止通知監視部１０２に依頼する。
【００４３】
抑止通知監視部１０２は、閉塞監視部１０１が送信したＩＯ抑止通知に対する応答の監視を行う。図１０は、抑止通知監視部１０２の処理を例示するフローチャートである。
【００４４】
図１０に示すように、閉塞監視部１０１の依頼などによって処理が開始されると、抑止通知監視部１０２は、ＩＯ抑止通知に対する応答が所定時間（例えば９秒間）無くて、タイムアウトしたか否かを判定する（Ｓ２１）。タイムアウトしていない場合（Ｓ２１：ＮＯ）、抑止通知監視部１０２は処理を待機する。タイムアウトした場合、抑止通知監視部１０２はＳ２２へ処理を進める。
【００４５】
次いで、抑止通知監視部１０２は、プライマリであるストレージ装置１０と監視サーバ３０間の通信経路が異常であるか否かを判定する（Ｓ２２）。具体的には、ＡＣＫに対する監視サーバ３０からの正常な応答がない場合や、監視サーバ３０とのポーリングが失敗した場合には、通信経路の異常と判定する。
【００４６】
異常である場合（Ｓ２２：ＹＥＳ）、抑止通知監視部１０２は、フェイルオーバ処理をフェイルオーバ処理部１０３に依頼する（Ｓ２３）。これにより、ストレージ装置１０、２０の間の通信経路が異常であり、ストレージ装置１０と監視サーバ３０間の通信経路が異常である場合には、ストレージ装置１０に異常があることから、フェイルオーバ処理部１０３によるフェイルオーバ処理が開始される。
【００４７】
異常でない場合（Ｓ２２：ＮＯ）、抑止通知監視部１０２は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」（停止）に遷移させる（Ｓ２４）。これにより、ＴＦＯグループのコンディションを停止とさせる。次いで、抑止通知監視部１０２は、ＴＦＯセッションをＨａｌｔ（停止）に遷移させ（Ｓ２５）、ＩＯ抑止状態を解除する（Ｓ２６）。これにより、ストレージ装置１０、２０の間の通信経路が異常であるが、ストレージ装置１０と監視サーバ３０間の通信経路が異常でない場合には、ストレージ装置１０に異常がないことから、ストレージ装置２０への切り替え（フェイルオーバ）が行われないようにする。
【００４８】
フェイルオーバ処理部１０３は、ストレージ装置１０からストレージ装置２０へのフェイルオーバを行うため、ストレージ装置１０が業務サーバ４０と通信する通信ポートをリンクダウンさせるフェイルオーバ処理を行う。図１１は、フェイルオーバ処理部１０３の処理を例示するフローチャートである。
【００４９】
図１１に示すように、ストレージ装置１０側のフェイルオーバ処理が開始されると、フェイルオーバ処理部１０３は、「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」を「Ｓｔａｎｄｂｙ」に遷移させる（Ｓ３１）。これにより、ＴＦＯグループの状態が待機中（Ｓｔａｎｄｂｙ）となる。次いで、フェイルオーバ処理部１０３は、「ＴＦＯ  Ｐｏｒｔ  Ｌｉｎｋ」、すなわちストレージ装置１０が業務サーバ４０と通信する通信ポートを「Ｄｏｗｎ」（非活性化）に遷移させる（Ｓ３２）。これにより、業務サーバ４０からはストレージ装置１０が認識できず、ストレージ装置１０と業務サーバ４０との通信ができなくなる。次いで、フェイルオーバ処理部１０３は、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」（停止）に遷移させる（Ｓ３３）。
【００５０】
通信処理部１０４は、ストレージ装置１０と監視サーバ３０との間の通信を制御する。図１２は、通信処理部１０４の処理を例示するフローチャートである。図１２に示すように、通信処理部１０４は、監視サーバ３０からのポーリングにより通知される送信情報Ｉをもとに、ＩＯ抑止通知に対する応答の受信があったか否かを判定する（Ｓ４１）。
【００５１】
ＩＯ抑止通知に対する応答の受信がなかった場合（Ｓ４１：ＮＯ）、通信処理部１０４はＳ４４へ処理を進める。ＩＯ抑止通知に対する応答の受信があった場合（Ｓ４１：ＹＥＳ）、通信処理部１０４は、ＩＯ抑止状態を解除する（Ｓ４２）。ついで、通信処理部１０４は、ＩＯ抑止通知を送った要因がプライマル／セカンダリ間の通信経路の閉塞であることから、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」に「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」を設定する（Ｓ４３）。
【００５２】
次いで、通信処理部１０４は、管理情報Ｔ１を参照して、ＩＯ抑止状態であるか否かを判定する（Ｓ４４）。ＩＯ抑止状態でない場合（Ｓ４４：ＮＯ）、通信処理部１０４はＳ４７へ処理を進める。ＩＯ抑止状態である場合（Ｓ４４：ＹＥＳ）、通信処理部１０４は、ＩＯ抑止通知を行うための、送信情報ＩのビットをＯＮとし（Ｓ４５）、「Ｓｐｅｅｄ  Ｆｌａｇ」のビットをＯＮとする（Ｓ４６）。
【００５３】
次いで、通信処理部１０４は、管理情報Ｔ１を参照して、直近からの構成の変更の有無を判定する（Ｓ４７）。構成に変更がない場合（Ｓ４７：ＮＯ）、通信処理部１０４はＳ４９へ処理を進める。構成に変更がある場合（Ｓ４７：ＹＥＳ）、通信処理部１０４は「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」のカウンタ値をインクリメントして設定する（Ｓ４８）。
【００５４】
次いで、通信処理部１０４は、監視サーバ３０からのポーリングに対する通信応答として、Ｓ４８までの処理で設定された送信情報Ｉを監視サーバ３０に送信する（Ｓ４９）。次いで、通信処理部１０４は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」が「Ｍｏｎｉｔｏｒｉｎｇ  Ｓｅｒｖｅｒ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」であり、監視サーバ３０に関する経路が正常であるか否かを判定する（Ｓ５０）。なお、監視サーバ３０に関する経路が正常であるか否かについては、監視サーバ３０からのポーリングの有無などをもとに判定する。
【００５５】
Ｓ５０において肯定である場合（Ｓ５０：ＹＥＳ）、監視サーバ３０に関する経路が正常に戻ったということであるから、通信処理部１０４は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｎｏｒｍａｌ」に遷移させる（Ｓ５１）。Ｓ５０において否定である場合（Ｓ５０：ＮＯ）、通信処理部１０４はＳ５１をスキップして処理を終了する。
【００５６】
構築処理部１０５は、送信情報Ｉの「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」での通知において、ＴＦＯグループにおいて構成の変更があった場合に、ストレージ装置１０側における構築処理を行う。図１３は、構築処理部１０５の処理を例示するフローチャートである。
【００５７】
図１３に示すように、処理が開始されると、構築処理部１０５は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」（停止）に遷移させる（Ｓ６１）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。次いで、構築処理部１０５は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」を「Ａｃｔｉｖｅ」に遷移させる（Ｓ６２）。
【００５８】
次に、監視サーバ３０の機能構成を説明する。送受信処理部３０１は、ストレージ装置１０、２０との間の情報を送受信する。具体的には、送受信処理部３０１は、ストレージ装置１０、２０に所定の時間間隔でポーリングを行って、ストレージ装置１０、２０より受信した情報を、次のポーリングでストレージ装置１０、２０へ送信する送受信処理を行う。
【００５９】
図１４は、送受信処理部３０１の初回処理を例示するフローチャートである。なお、初回処理とは、送受信処理部３０１がストレージ装置１０、２０に対して、初回に送受信を行う処理を示す。図１４に示すように、初回処理が開始されると、送受信処理部３０１は、送信情報Ｉに構成変更中などのフラグを立ててストレージ装置１０、２０へポーリングすることで、ストレージ装置１０、２０より構成に関する応答を取得する構成構築処理を行う（Ｓ１０１）。次いで、送受信処理部３０１は、ストレージ装置１０、２０より取得した構成に関する応答をもとに、送信情報Ｉを設定し（Ｓ１０２）、ストレージ装置１０、２０へ送信（ポーリング）する（Ｓ１０３）。これにより、ストレージ装置１０、２０では、互いの構成について情報を共有できる。次いで、フェイルオーバ処理部１０３は、ストレージ装置１０、２０との間の受信の監視を起動する（Ｓ１０４）。
【００６０】
図１５は、送受信処理部３０１の処理を例示するフローチャートであり、具体的には、初回処理後に行われる送受信処理部３０１の処理を示すフローチャートである。
【００６１】
図１５に示すように、送受信処理部３０１は、ストレージ装置１０、２０からの送信情報Ｉの受信を受けて（Ｓ１１０）、「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」のインクリメントの検出の有無を判定する（Ｓ１１１）。インクリメントの検出がない場合（Ｓ１１１：ＮＯ）、送受信処理部３０１はＳ１１４へ処理を進める。
【００６２】
インクリメントの検出がある場合（Ｓ１１１：ＹＥＳ）、送受信処理部３０１は、構成変更中などのフラグを立てた送信情報Ｉを設定し（Ｓ１１２）、ストレージ装置１０、２０へポーリングすることで、ストレージ装置１０、２０より構成に関する応答を取得する構成構築処理を行う（Ｓ１１３）。
【００６３】
次いで、送受信処理部３０１は、ＴＦＯグループの全装置、すなわちストレージ装置１０及び２０から応答を受信したか否かを判定する（Ｓ１１４）。応答を受信していない場合（Ｓ１１４：ＮＯ）、送受信処理部３０１は、Ｓ１１０へ処理を戻して応答を待つ。
【００６４】
ストレージ装置１０及び２０から応答を受信した場合（Ｓ１１４：ＹＥＳ）、送受信処理部３０１は、ストレージ装置１０、２０より取得した構成に関する応答をもとに、送信情報Ｉを設定する（Ｓ１１５）。次いで、送受信処理部３０１は、送信情報Ｉの「Ｓｐｅｅｄ  Ｆｌａｇ」がＯＦＦであるか否かを判定する（Ｓ１１６）。
【００６５】
ＯＦＦである場合（Ｓ１１６：ＹＥＳ）、ポーリングの時間間隔を短くしなくてよいことから、送受信処理部３０１は、予め設定された所定時間、ポーリング間隔を待ち合わせる（Ｓ１１７）。ＯＦＦでない場合（Ｓ１１６：ＮＯ）、ポーリングの時間間隔を短くすることから、送受信処理部３０１は、ポーリング間隔を待ち合わせるためのＳ１１７をスキップする。
【００６６】
次いで、送受信処理部３０１は、Ｓ１１５で設定された送信情報Ｉをストレージ装置１０、２０へ送信（ポーリング）し、受信の監視リセット・起動を行う（Ｓ１１９）。
【００６７】
タイムアウト処理部３０２は、送受信処理部３０１におけるストレージ装置１０、２０へのポーリングにおいて、所定の時間内の応答がない、タイムアウトが生じた否かを監視する。タイムアウト処理部３０２は、タイムアウトが生じた場合、タイムアウトが生じたことをストレージ装置１０、２０へ送信する。
【００６８】
図１６は、タイムアウト処理部３０２の処理を例示するフローチャートである。図１６に示すように、タイムアウト処理部３０２は、ストレージ装置１０、２０へのポーリングにおいて、所定の時間内の応答がない、タイムアウトが生じた場合（Ｓ１２０）、タイムアウトによりポーリングが失敗したことを示す送信情報Ｉを設定する（Ｓ１２１）。次いで、タイムアウト処理部３０２は、設定した送信情報Ｉをストレージ装置１０、２０へ送信し（Ｓ１２２）、受信の監視リセット・起動を行う（Ｓ１２３）。
【００６９】
次に、ストレージ装置２０の機能構成を説明する。閉塞監視部２０１は、プライマリ、セカンダリ間の通信経路が閉塞（異常）状態であるか否かを監視する。
【００７０】
図１７は、閉塞監視部２０１の処理を例示するフローチャートである。図１７に示すように、処理が開始されると、閉塞監視部２０１は、プライマリとセカンダリ間の通信経路、すなわちストレージ装置１０、２０の間の通信経路が異常であるか否かを判定する（Ｓ２０１）。具体的には、ＡＣＫなどに対する正常な応答がない場合には、通信経路の異常と判定する。
【００７１】
異常でない場合（Ｓ２０１：ＮＯ）、閉塞監視部２０１はそのまま処理を待機する。異常である場合（Ｓ２０１：ＹＥＳ）、ＩＯ抑止通知の監視を、所定の時間間隔（例えば１５秒）でタイムアウトとするように抑止通知監視部１０２に依頼する。
【００７２】
抑止通知監視部２０２は、ストレージ装置１０から監視サーバ３０を経由したＩＯ抑止通知を監視する。図１８は、抑止通知監視部２０２の処理を例示するフローチャートである。
【００７３】
図１８に示すように、閉塞監視部２０１の依頼などによって処理が開始されると、抑止通知監視部２０２は、ＩＯ抑止通知が所定時間（例えば１５秒間）なく、監視がタイムアウトしたか否かを判定する（Ｓ２１１）。タイムアウトしていない場合（Ｓ２１１：ＮＯ）、抑止通知監視部２０２は処理を待機する。
【００７４】
タイムアウトした場合（Ｓ２１１：ＹＥＳ）、抑止通知監視部２０２は、フェイルオーバ処理をフェイルオーバ処理部２０３に依頼する（Ｓ２１２）。これにより、ストレージ装置１０、２０の間の通信経路が異常であり、ストレージ装置１０からのＩＯ抑止通知がなく、ストレージ装置１０と監視サーバ３０間の通信経路が異常である場合には、ストレージ装置１０に異常があることから、フェイルオーバ処理部２０３によるフェイルオーバ処理が開始される。
【００７５】
フェイルオーバ処理部２０３は、ストレージ装置１０からストレージ装置２０へのフェイルオーバを行うため、ストレージ装置２０が業務サーバ４０と通信する通信ポートをリンクアップさせるフェイルオーバ処理を行う。図１９は、フェイルオーバ処理部２０３の処理を例示するフローチャートである。
【００７６】
図１９に示すように、ストレージ装置２０側のフェイルオーバ処理が開始されると、フェイルオーバ処理部２０３は、「ＴＦＯ  セッション」を「Ｓｕｓｐｅｎｄ」に遷移させる（Ｓ２２１）。次いで、フェイルオーバ処理部２０３は、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」（停止）に遷移させ（Ｓ２２２）、「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」を「Ａｃｔｉｖｅ」に遷移させる（Ｓ２２３）。次いで、フェイルオーバ処理部２０３は、「ＴＦＯ  Ｐｏｒｔ  Ｌｉｎｋ」、すなわちストレージ装置２０が業務サーバ４０と通信する通信ポートを「Ｕｐ」（活性化）に遷移させる（Ｓ２２４）。
【００７７】
これにより、業務サーバ４０からはストレージ装置２０が認識され、ストレージ装置２０と業務サーバ４０との通信が行われる。また、業務サーバ４０側では、ＷＷＮ等の設定を行うことなく、業務サーバ４０の入出力が透過的にストレージ装置２０に切り替えられることとなる。したがって、ストレージシステム１では、ホストである業務サーバ４０からストレージ装置１０、２０のストレージへの入出力を継続できない期間が生じることを、抑止できる。
【００７８】
通信処理部２０４は、ストレージ装置２０と監視サーバ３０との間の通信を制御する。図２０は、通信処理部２０４の処理を例示するフローチャートである。図２０に示すように、通信処理部２０４は、監視サーバ３０からのポーリングにより通知される送信情報Ｉをもとに、ＩＯ抑止通知があったか否かを判定する（Ｓ２３１）。
【００７９】
ＩＯ抑止通知の受信がなかった場合（Ｓ２３１：ＮＯ）、通信処理部２０４はＳ２３６へ処理を進める。ＩＯ抑止通知の受信があった場合（Ｓ２３１：ＹＥＳ）、通信処理部２０４は、ＩＯ抑止通知の監視を解除する（Ｓ２３２）。次いで、通信処理部２０４は、ＩＯ抑止通知を送った要因がプライマル／セカンダリ間の通信経路の閉塞であることから、「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」に「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」を設定する（Ｓ２３３）。
【００８０】
次いで、通信処理部２０４は、ＩＯ抑止通知への応答を行うための、送信情報ＩのビットをＯＮとし（Ｓ２３４）、「Ｓｐｅｅｄ  Ｆｌａｇ」のビットをＯＮとする（Ｓ２３５）。
【００８１】
次いで、通信処理部２０４は、管理情報Ｔ１を参照して、直近からの構成の変更の有無を判定する（Ｓ２３６）。構成に変更がない場合（Ｓ２３６：ＮＯ）、通信処理部２０４はＳ２３８へ処理を進める。構成に変更がある場合（Ｓ２３６：ＹＥＳ）、通信処理部２０４は「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」のカウンタ値をインクリメントして設定する（Ｓ２３７）。これにより、通信処理部２０４は、監視サーバ３０からのポーリングに対する通信応答として、Ｓ２３７までの処理で設定された送信情報Ｉを監視サーバ３０に送信する。
【００８２】
次いで、通信処理部２０４は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」が「Ｍｏｎｉｔｏｒｉｎｇ  Ｓｅｒｖｅｒ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」であり、監視サーバ３０に関する経路が正常であるか否かを判定する（Ｓ２３８）。なお、監視サーバ３０に関する経路が正常であるか否かについては、監視サーバ３０からのポーリングの有無などをもとに判定する。
【００８３】
Ｓ２３８において肯定である場合（Ｓ２３８：ＹＥＳ）、監視サーバ３０に関する経路が正常に戻ったということであるから、通信処理部２０４は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｎｏｒｍａｌ」に遷移させる（Ｓ２３９）。次いで、通信処理部２０４は、監視サーバ３０との通信の監視を開始し（Ｓ２４０）、監視タイマをリセットする（Ｓ２４１）。
【００８４】
次いで、通信処理部２０４は、監視サーバ３０との通信の監視をもとに、ストレージ装置２０と監視サーバ３０との間の通信経路に異常が生じているか否かを判定する（Ｓ２４２）。異常が生じている場合（Ｓ２４２：ＹＥＳ）、通信処理部２０４は、監視タイマを起動する（Ｓ２４３）。異常が生じていない場合（Ｓ２４２：ＮＯ）、通信処理部２０４は、監視タイマをリセットする（Ｓ２４４）。Ｓ２４３、Ｓ２４４に次いで、通信処理部２０４は、監視サーバ３０へポーリングに対する通信応答を行う（Ｓ２４５）。
【００８５】
構築処理部２０５は、送信情報Ｉの「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」での通知において、ＴＦＯグループにおいて構成の変更があった場合に、ストレージ装置２０側における構築処理を行う。図２１は、構築処理部２０５の処理を例示するフローチャートである。
【００８６】
図２１に示すように、処理が開始されると、構築処理部２０５は、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」（停止）に遷移させる（Ｓ２５１）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。次いで、構築処理部２０５は、ＴＦＯセッションを起動させ（Ｓ２５２）、管理情報Ｔ１における「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」を「Ｓｔａｎｄｂｙ」に遷移させる（Ｓ２５３）。
【００８７】
次いで、構築処理部２０５は、監視サーバ３０を経由してストレージ装置１０より送信される送信情報Ｉをもとに、プライマリとセカンダリとの設定合わせを行う（Ｓ２５４）。具体的には、構築処理部２０５は、プライマリ側であるストレージ装置１０からの設定をコピーして管理情報Ｔ１に設定する。この時、構築処理部２０５は、自装置における業務サーバ４０との通信を行う通信ポートに、ストレージ装置１０側の設定と同一のＷＷＰＮ（World  Wide  Port  Name）等を設定する。
【００８８】
次いで、構築処理部２０５は、送信情報Ｉの「Ｃｏｎｆｉｇ  Ｃｏｕｎｔ」をインクリメントし（Ｓ２５５）、ネゴシエーション処理部２０７に依頼してネゴシエーション処理を開始させる（Ｓ２５６）。
【００８９】
復旧監視部２０６は、ストレージ装置１０、２０間の通信経路が異常から復旧したか否かを監視する。具体的には、復旧監視部２０６ストレージ装置１０、２０間の通信経路において異常が検出された場合に、所定の時間間隔で復旧の有無を確認する。図２２は、復旧監視部２０６の処理を例示するフローチャートである。
【００９０】
図２２に示すように、処理が開始されると、復旧監視部２０６は、プライマリとセカンダリ間の通信経路、すなわちストレージ装置１０、２０の間の通信経路が異常から復旧したか否かを判定する（Ｓ２６１）。具体的には、ＡＣＫなどに対する正常な応答が返ってきた場合には、通信経路の異常が復旧したと判定する。異常から復旧した場合（Ｓ２６１：ＹＥＳ）、復旧監視部２０６は、ネゴシエーション処理部２０７に依頼してネゴシエーション処理を開始させる（Ｓ２６２）。異常から復旧していない場合（Ｓ２６１：ＮＯ）、復旧監視部２０６は、Ｓ２６２をスキップして処理を終了する。
【００９１】
ネゴシエーション処理部２０７は、ストレージ装置１０と、ストレージ装置２０との間のネゴシエーションを行う。具体的には、ネゴシエーション処理部２０７は、セカンダリが「Ａｃｔｉｖｅ」、すなわち業務サーバ４０との通信を行っている場合、ストレージ装置１０との通信により、ストレージ装置２０側のストレージのデータをストレージ装置１０側のストレージにコピーする。また、セカンダリがアクティブでなく、業務サーバ４０との通信を行っていない場合、ネゴシエーション処理部２０７は、ストレージ装置１０との通信により、ＴＦＯの状態の設定合わせを行う。
【００９２】
図２３は、ネゴシエーション処理部２０７の処理を例示するフローチャートである。図２３に示すように、ネゴシエーション処理部２０７は、管理情報Ｔ１を参照してセカンダリが「Ａｃｔｉｖｅ」であるか否かを判定する（Ｓ２７１）。セカンダリが「Ａｃｔｉｖｅ」である場合（Ｓ２７１：ＹＥＳ）、ネゴシエーション処理部２０７は、「ＴＦＯ  セッション」のステータスを「Ｃｏｐｙｉｎｇ」に遷移させる（Ｓ２７２）。これにより、セカンダリからプライマリへのデータのコピーが開始され、プライマリでのバックアップが行われることとなる。次いで、ネゴシエーション処理部２０７は、「ＴＦＯのセッション」を「Ｓｕｓｐｅｎｄ」に遷移させる（Ｓ２７３）。
【００９３】
セカンダリが「Ａｃｔｉｖｅ」でない場合（Ｓ２７１：ＮＯ）、ネゴシエーション処理部２０７は、管理情報Ｔ１の「ＴＦＯ  Ｇｒｏｕｐ  Ｓｔａｔｕｓ」を「Ａｃｔｉｖｅ」に遷移させる（Ｓ２７４）。次いで、ネゴシエーション処理部２０７は、管理情報Ｔ１におけるプライマリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」が「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」であるか否かを判定する（Ｓ２７５）。
【００９４】
Ｓ２７５で肯定の場合（Ｓ２７５：ＹＥＳ）、ネゴシエーション処理部２０７は、管理情報Ｔ１におけるプライマリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」に遷移させる（Ｓ２７６）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「Ｍｏｎｉｔｏｒｉｎｇ  Ｓｅｒｖｅｒ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。Ｓ２７５で否定の場合（Ｓ２７５：ＮＯ）、ネゴシエーション処理部２０７はＳ２７６をスキップしてＳ２７７へ処理を進める。
【００９５】
次いで、ネゴシエーション処理部２０７は、管理情報Ｔ１をもとに、プライマリであるストレージ装置１０が「Ｎｏｒｍａｌ」であるか否かを判定する（Ｓ２７７）。Ｓ２７７が否定である場合（Ｓ２７７：ＮＯ）、ネゴシエーション処理部２０７は、Ｓ２７８、Ｓ２７９をスキップして処理を終了する。
【００９６】
Ｓ２７７が肯定である場合（Ｓ２７７：ＹＥＳ）、ネゴシエーション処理部２０７は、管理情報Ｔ１をもとに、セカンダリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」が「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」であるか否かを判定する（Ｓ２７８）。Ｓ２７８が否定である場合（Ｓ２７８：ＮＯ）、ネゴシエーション処理部２０７は、Ｓ２７９をスキップして処理を終了する。
【００９７】
Ｓ２７８が肯定である場合（Ｓ２７８：ＹＥＳ）、ネゴシエーション処理部２０７は、管理情報Ｔ１におけるセカンダリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」に遷移させる（Ｓ２７９）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「Ｍｏｎｉｔｏｒｉｎｇ  Ｓｅｒｖｅｒ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。
【００９８】
通信監視処理部２０８は、ストレージ装置２０と監視サーバ３０との間の通信を監視する。図２４は、通信監視処理部２０８の処理を例示するフローチャートである。図２４に示すように、通信監視処理部２０８は、セカンダリであるストレージ装置２０と、監視サーバ３０との経路の監視が所定の時間経過（例えば３秒）でタイムアウトしたか否かを判定する（Ｓ２８１）。タイムアウトしなかった場合（Ｓ２８１：ＮＯ）、通信監視処理部２０８は、Ｓ２８４へ処理を進める。
【００９９】
タイムアウトした場合（Ｓ２８１：ＹＥＳ）、通信監視処理部２０８は、管理情報Ｔ１におけるセカンダリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」に遷移させる（Ｓ２８２）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。次いで、通信監視処理部２０８は、監視サーバ３０との通信の監視を停止する（Ｓ２８３）。
【０１００】
次いで、通信監視処理部２０８は、プライマリであるストレージ装置１０と監視サーバ３０との経路の監視が所定の時間経過（例えば３０秒）でタイムアウトしたか否かを判定する（Ｓ２８４）。タイムアウトしなかった場合（Ｓ２８４：ＮＯ）、通信監視処理部２０８は、処理を終了する。
【０１０１】
タイムアウトした場合（Ｓ２８４：ＹＥＳ）、通信監視処理部２０８は、管理情報Ｔ１におけるセカンダリの「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ」を「Ｈａｌｔ」に遷移させる（Ｓ２８５）。この時、Ｈａｌｔの要因である「ＴＦＯ  Ｇｒｏｕｐ  Ｃｏｎｄｉｔｉｏｎ  Ｈａｌｔ  Ｆａｃｔｏｒ」は「ＴＦＯ  Ｇｒｏｕｐ  Ｄｉｓｃｏｎｎｅｃｔｅｄ」とする。次いで、通信監視処理部２０８は、監視サーバ３０との通信の監視を停止する（Ｓ２８６）。
【０１０２】
以上のように、監視サーバ３０は、ストレージ装置１０、２０に所定の時間間隔でポーリングを行って、ストレージ装置１０、２０より受信した情報を、次のポーリングでストレージ装置１０、２０へ送信する。これにより、ストレージ装置１０、２０では互いの情報を共有し、フェイルオーバ処理を行うことができる。また、ストレージ装置１０、２０において、業務サーバ４０と通信を行うＣＡ１１ａ、１１ｂ、１２ａ、１２ｂと、対応するＣＡ２１ａ、２１ｂ、２２ａ、２２ｂには、同一のＷＷＰＮ（World  Wide  Port  Name）が設定されている。また、ストレージ装置１０、２０において、同一のＷＷＮＮ（World  Wide  Node  Name）、ボリュームのＵＩＤ（Universal  ID）、ＨＬＵＮ（Host  Logical  Unit  Number）等が設定されている。
【０１０３】
そして、ストレージ装置１０、２０の一方の通信ポートをリンクアップ（活性化）させ、他方の通信ポートをリンクダウン（非活性化）させる。例えば、ストレージ装置１０のストレージに障害が無い通常時にはストレージ装置１０の通信ポートをリンクアップし、ストレージ装置２０の通信ポートをリンクダウンする。これにより、通常時における業務サーバ４０の入出力には、ストレージ装置１０が使用される。そして、ストレージ装置１０のストレージに障害が生じた場合には、ストレージ装置１０の通信ポートをリンクダウンし、ストレージ装置２０の通信ポートをリンクアップする。これにより、業務サーバ４０の入出力が透過的にストレージ装置２０に切り替えられることとなり、業務サーバ４０からストレージ装置１０、２０のストレージへの入出力を継続できない期間が生じることを抑止できる。
【０１０４】
なお、ストレージ装置１０及びストレージ装置２０がフェイルオーバ処理を開始するための、ＩＯ抑止通知の受信（応答）にかかるタイムアウト時間は、セカンダリ側の時間を長く設定することが好ましい。セカンダリ側の時間を長く設定することで、プライマリ側よりもセカンダリ側のフェイルオーバ処理が遅く開始されることとなる。したがって、プライマリ側の通信ポートがリンクダウンされた後に、セカンダリ側の通信ポートをリンクアップすることができる。
【０１０５】
なお、これらタイムアウト時間は、業務サーバ４０からストレージ装置１０、２０のストレージへの入出力がエラーとならずに継続される程度の値を設定することが好ましい。例えば、業務サーバ４０からストレージ装置１０、２０のストレージへの入出力が、例えば２５秒間の停止でエラーとなり、業務停止期間が生じるものと想定する。この想定では、ストレージ装置１０、２０におけるフェイルオーバ処理を開始するためのタイムアウト時間の合計を２５秒未満（例えば９秒、１５秒）とすることで、エラーが生じる前にストレージ装置１０、２０におけるフェイルオーバ処理を行うことができる。これにより、業務停止期間が生じることを抑止できる。
【符号の説明】
【０１０６】
１…ストレージシステム
１０…ストレージ装置
１１ａ〜１２ｂ、２１ａ〜２２ｂ…ＣＡ
１３ａ〜１４ｂ、２３ａ〜２４ｂ…ディスク
１５、１６、２５、２６…ＣＭ
２０…ストレージ装置
３０…監視サーバ
３１…制御部
４０…業務サーバ
Ｎ１、Ｎ２…ネットワーク
１０１…閉塞監視部
１０２…抑止通知監視部
１０３…フェイルオーバ処理部
１０４…通信処理部
１０５…構築処理部
３０１…送受信処理部
３０２…タイムアウト処理部
２０１…閉塞監視部
２０２…抑止通知監視部
２０３…フェイルオーバ処理部
２０４…通信処理部
２０５…構築処理部
２０６…復旧監視部
２０７…ネゴシエーション処理部
２０８…通信監視処理部
Ｇ１、Ｇ２…ＴＦＯグループ
Ｉ…送信情報
Ｉ１〜Ｉ３…領域
Ｔ１…管理情報
Ｔ２…Ｐｏｒｔ管理テーブル
Ｔ３…ＯＬＵ管理テーブル
Ｔ４…セッション管理テーブル
【図１】
2015197742.tif 000003
【図２】
2015197742.tif 000004
【図３】
2015197742.tif 000005
【図４】
2015197742.tif 000006
【図５】
2015197742.tif 000007
【図６】
2015197742.tif 000008
【図７】
2015197742.tif 000009
【図８】
2015197742.tif 000010
【図９】
2015197742.tif 000011
【図１０】
2015197742.tif 000012
【図１１】
2015197742.tif 000013
【図１２】
2015197742.tif 000014
【図１３】
2015197742.tif 000015
【図１４】
2015197742.tif 000016
【図１５】
2015197742.tif 000017
【図１６】
2015197742.tif 000018
【図１７】
2015197742.tif 000019
【図１８】
2015197742.tif 000020
【図１９】
2015197742.tif 000021
【図２０】
2015197742.tif 000022
【図２１】
2015197742.tif 000023
【図２２】
2015197742.tif 000024
【図２３】
2015197742.tif 000025
【図２４】
2015197742.tif 000026