(57)【特許請求の範囲】
【請求項１】
計算機、第１ストレージシステム及び第２ストレージシステムを備える計算機システムを制御する方法であって、
前記第１ストレージシステムは、第１経路及び第２経路を介して前記計算機に接続され、
前記第２ストレージシステムは、第３経路を介して前記第１ストレージシステムに接続され、第４経路を介して前記計算機に接続され、
前記計算機は、前記第１経路に接続される第１インターフェース、前記第２経路に接続される第２インターフェース、前記第４経路に接続される第３インターフェース、前記第１インターフェースから前記第３インターフェースに接続される第１プロセッサ、及び、前記第１プロセッサに接続される第１メモリを備え、
前記第１ストレージシステムは、
前記第１経路、前記第２経路及び前記第３経路に接続される第１コントローラを備え、  第１記憶領域を前記計算機に提供し、
前記第２ストレージシステムは、前記第３経路及び前記第４経路に接続される第２コントローラ、及び、第２記憶領域を備え、
前記第１ストレージシステムは、前記計算機から前記第１記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求を前記第２記憶領域へのアクセス要求に変換し、前記変換されたアクセス要求を、前記第３経路を経由して前記第２ストレージシステムに送信し、
前記第２ストレージシステムは、前記計算機又は前記第１ストレージシステムから前記第２記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求に従って前記第２記憶領域へのアクセス処理を実行し、
前記計算機は、
前記第１記憶領域と前記第２記憶領域とを対応付ける第１情報を保持し、
前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かの判定結果と、前記第１記憶領域又は前記第２記憶領域へのアクセスに使用される前記第１経路から前記第４経路の少なくとも一つと、を対応付ける第２情報を保持し、
前記方法は、
前記計算機が、前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かを判定する第１手順と、
前記計算機が、前記判定の結果及び前記第２情報に基づいて、前記第１記憶領域又は前記第２記憶領域へのアクセスに使用される前記第１経路から前記第４経路の少なくとも一つを選択する第２手順と、
前記計算機が、前記選択された前記第１経路から前記第４経路の少なくとも一つを用いて、前記第１記憶領域又は前記第２記憶領域へのアクセス要求を送信する第３手順と、を含み、
前記第２手順は、
前記第１手順によって前記第１経路から前記第４経路のいずれにも障害が発生していないと判定された場合、前記第２情報に基づいて前記第１経路を選択する手順と、
前記第１手順によって前記第１経路に障害が発生したと判定され、かつ、前記第２経路に障害が発生していないと判定された場合、前記第２情報に基づいて前記第２経路を選択する手順と、
前記第１手順によって前記第３経路に障害が発生したと判定された場合、前記第２情報に基づいて前記第４経路を選択する手順と、を含み、
前記第３手順は、
前記第１手順によって前記第１経路から前記第４経路のいずれにも障害が発生していないと判定された場合、前記選択された第１経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信する手順と、
前記第１手順によって前記第１経路に障害が発生したと判定され、かつ、前記第２経路に障害が発生していないと判定された場合、前記選択された第２経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信する手順と、
前記第１手順によって前記第３経路に障害が発生したと判定された場合、前記第２記憶領域へのアクセス要求を、前記選択された第４経路を介して前記第２ストレージシステムに送信する手順と、を含むことを特徴とする方法。
【請求項２】
前記第１手順は、前記第１経路を経由する前記第１記憶領域へのアクセスに失敗した場合、前記第１経路に障害が発生したと判定する手順と、前記第３経路を経由する前記第２記憶領域へのアクセスに失敗した場合、前記第３経路に障害が発生したと判定する手順と、を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記第２経路及び前記第４経路は、前記第１経路及び前記第３経路よりデータ転送速度が低いネットワーク上に設定された経路であることを特徴とする請求項１に記載の方法。
【請求項４】
前記第１経路及び前記第３経路は、ファイバーチャネルプロトコルが適用されるネットワーク上に設定され、前記第２経路及び前記第４経路は、インターネットプロトコルが適用されるネットワーク上に設定されることを特徴とする請求項３に記載の方法。
【請求項５】
前記第２ストレージシステムは、さらに、一つ以上の第５経路を介して前記第１ストレージシステムと接続され、
前記第１ストレージシステムは、複数の前記変換されたアクセス要求を、前記第３経路及び前記一つ以上の第５経路を経由するように分散して送信し、
前記第３経路及び前記一つ以上の第５経路は、スイッチ装置を経由し、
前記方法は、さらに、前記第１経路から前記第５経路の少なくとも一つに障害が発生していると判定された場合、前記計算機が、前記スイッチ装置に所定のコマンドを送信することによって、前記第３経路及び前記一つ以上の第５経路の各々に障害が発生しているか否かを判定する第４手順を含み、
前記第３手順は、前記一つ以上の第５経路のうち、障害が発生していないものの数が所定の閾値より小さいと判定された場合、前記第１記憶領域への複数のアクセス要求の一部を前記第２記憶領域へのアクセス要求に変換し、前記変換されたアクセス要求を、前記第４経路を経由して前記第２ストレージシステムに送信する手順を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記第１ストレージシステムは、さらに、前記第１記憶領域に書き込まれるデータ及び前記第１記憶領域から読み出されたデータの少なくとも一方が一時的に記憶されるキャッシュメモリを備え、
前記方法は、さらに、
前記計算機が、前記一つ以上の第５経路のうち、障害が発生していないものの数が所定の閾値より小さいと判定された場合、前記キャッシュメモリに格納されたデータを前記第１記憶領域に書き込ませるキャッシュデータ書き込み要求を前記第１ストレージシステムに送信する第５手順と、
前記第１ストレージシステムが、前記キャッシュデータ書き込み要求を受信すると、前記キャッシュメモリに格納されたデータのうち、少なくとも前記第２記憶領域に格納されていないデータを前記第２記憶領域に格納する要求を前記第２ストレージシステムに送信する第６手順と、
前記キャッシュデータ書き込み要求を受信した後で前記第１記憶領域へのアクセス要求を受信した後、前記変換されたアクセス要求に対する終了報告を前記第２ストレージシステムから受信した場合にのみ、前記受信したアクセス要求に対する終了報告を前記計算機に送信する第７手順と、を含むことを特徴とする請求項５に記載の方法。
【請求項７】
計算機、第１ストレージシステム及び第２ストレージシステムを備える計算機システムであって、
前記第１ストレージシステムは、第１経路及び第２経路を介して前記計算機に接続され、
前記第２ストレージシステムは、第３経路を介して前記第１ストレージシステムに接続され、第４経路を介して前記計算機に接続され、
前記計算機は、前記第１経路に接続される第１インターフェース、前記第２経路に接続される第２インターフェース、前記第４経路に接続される第３インターフェース、前記第１インターフェースから前記第３インターフェースに接続される第１プロセッサ、及び、前記第１プロセッサに接続される第１メモリを備え、
前記第１ストレージシステムは、
前記第１経路、前記第２経路及び前記第３経路に接続される第１コントローラを備え、
第１記憶領域を前記計算機に提供し、
前記計算機から前記第１記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求を前記第２記憶領域へのアクセス要求に変換し、前記変換されたアクセス要求を、前記第３経路を経由して前記第２ストレージシステムに送信し、
前記第２ストレージシステムは、
前記第３経路及び前記第４経路に接続される第２コントローラ、及び、第２記憶領域を備え、
前記計算機又は前記第１ストレージシステムから前記第２記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求に従って前記第２記憶領域へのアクセス処理を実行し、
前記計算機は、
前記第１記憶領域と前記第２記憶領域とを対応付ける第１情報を保持し、
前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かの判定結果と、前記第１記憶領域又は前記第２記憶領域へのアクセスに使用される前記第１経路から前記第４経路の少なくとも一つと、を対応付ける第２情報を保持し、
前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かを判定し、
前記第１経路から前記第４経路のいずれにも障害が発生していないと判定された場合、前記第２情報に基づいて前記第１経路を選択し、前記選択された第１経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信し、
前記第１経路に障害が発生したと判定され、かつ、前記第２経路に障害が発生していないと判定された場合、前記第２情報に基づいて前記第２経路を選択し、前記選択された第２経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信し、
前記第３経路に障害が発生したと判定された場合、前記第２情報に基づいて前記第４経路を選択し、前記選択された第４経路を経由して、前記第２記憶領域へのアクセス要求を前記第２ストレージシステムに送信することを特徴とする計算機システム。
【請求項８】
前記計算機は、前記第１経路を経由する前記第１記憶領域へのアクセスに失敗した場合、前記第１経路に障害が発生したと判定し、前記第３経路を経由する前記第２記憶領域へのアクセスに失敗した場合、前記第３経路に障害が発生したと判定することを特徴とする請求項９に記載の計算機システム。
【請求項９】
前記第２経路及び前記第４経路は、前記第１経路及び前記第３経路よりデータ転送速度が低いネットワーク上に設定された経路であることを特徴とする請求項９に記載の計算機システム。
【請求項１０】
前記第１経路及び前記第３経路は、ファイバーチャネルプロトコルが適用されるネットワーク上に設定され、前記第２経路及び前記第４経路は、インターネットプロトコルが適用されるネットワーク上に設定されることを特徴とする請求項１３に記載の計算機システム。
【請求項１１】
前記第２ストレージシステムは、さらに、一つ以上の第５経路を介して前記第１ストレージシステムと接続され、
前記第１ストレージシステムは、複数の前記変換されたアクセス要求を、前記第３経路及び前記一つ以上の第５経路を経由するように分散して送信し、
前記第３経路及び前記一つ以上の第５経路は、スイッチ装置を経由し、
前記計算機は、
前記第１経路から前記第５経路の少なくとも一つに障害が発生していると判定された場合、前記スイッチ装置に所定のコマンドを送信することによって、前記第３経路及び前記一つ以上の第５経路の各々に障害が発生しているか否かを判定し、
前記一つ以上の第５経路のうち、障害が発生していないものの数が所定の閾値より小さいと判定された場合、前記第１記憶領域への複数のアクセス要求の一部を前記第２記憶領域へのアクセス要求に変換し、前記変換されたアクセス要求を、前記第４経路を経由して前記第２ストレージシステムに送信することを特徴とする請求項９に記載の計算機システム。
【請求項１２】
前記第１ストレージシステムは、さらに、前記第１記憶領域に書き込まれるデータ及び前記第１記憶領域から読み出されたデータの少なくとも一方が一時的に記憶されるキャッシュメモリを備え、
前記計算機は、前記一つ以上の第５経路のうち、障害が発生していないものの数が所定の閾値より小さいと判定された場合、前記キャッシュメモリに格納されたデータを前記第１記憶領域に書き込ませるキャッシュデータ書き込み要求を前記第１ストレージシステムに送信し、
前記第１ストレージシステムは、
前記キャッシュデータ書き込み要求を受信すると、前記キャッシュメモリに格納されたデータのうち、少なくとも前記第２記憶領域に格納されていないデータを前記第２記憶領域に格納する要求を前記第２ストレージシステムに送信し、
前記キャッシュデータ書き込み要求を受信した後で前記第１記憶領域へのアクセス要求を受信すると、前記変換されたアクセス要求に対する終了報告を前記第２ストレージシステムから受信するまで、前記受信したアクセス要求に対する終了報告を前記計算機に送信しないことを特徴とする請求項１５に記載の計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願明細書で開示される技術は、ストレージシステムにおけるデータ経路（パス）の管理に関し、特に、外部接続されたストレージシステムにおける障害発生時の障害箇所検出及びパス切り替えに関する。
【背景技術】
【０００２】
計算機に接続された第１のストレージシステムにさらに第２のストレージシステムを接続し、第１のストレージシステムが第２のストレージシステムの物理的な記憶領域を第１のストレージシステムの仮想的な記憶領域として計算機に提供する、いわゆるストレージシステムの外部接続が開示されている（例えば、特許文献１参照）。このような外部接続によれば、第１のストレージシステムが備える機能を第２のストレージシステムの記憶領域にも適用することができる。
【特許文献１】特開２００７−２５７６６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記のようにストレージシステムが外部接続された環境において、計算機と第１のストレージシステムとの間の全てのデータ経路（パス）に障害（例えば断線）が発生して通信が切断された場合、第１のストレージシステムと第２のストレージシステムとの間のパスが正常であったとしても、計算機は第２のストレージシステムの記憶領域にアクセスできなくなる。計算機と第１のストレージシステムとの間のパスが正常であったとしても、第１のストレージシステムと第２のストレージシステムとの間の全てのパスの通信が切断された場合、同様に計算機は第２のストレージシステムの記憶領域にアクセスできなくなる。上記のいずれの場合であっても、計算機で稼動する従来のパス管理ソフトウェアは、計算機と第１のストレージシステムとの間のパスに障害が発生したと認識する。その結果、上記のいずれの場合であっても、第２のストレージシステムの記憶領域を使用する業務は停止する。
【課題を解決するための手段】
【０００４】
本願で開示する代表的な発明は、計算機、第１ストレージシステム及び第２ストレージシステムを備える計算機システムを制御する方法であって、前記第１ストレージシステムは、第１経路及び第２経路を介して前記計算機に接続され、前記第２ストレージシステムは、第３経路を介して前記第１ストレージシステムに接続され、第４経路を介して前記計算機に接続され、前記計算機は、前記第１経路に接続される第１インターフェース、前記第２経路に接続される第２インターフェース、前記第４経路に接続される第３インターフェース、前記第１インターフェースから前記第３インターフェースに接続される第１プロセッサ、及び、前記第１プロセッサに接続される第１メモリを備え、前記第１ストレージシステムは、前記第１経路、前記第２経路及び前記第３経路に接続される第１コントローラを備え、第１記憶領域を前記計算機に提供し、前記第２ストレージシステムは、前記第３経路及び前記第４経路に接続される第２コントローラ、及び、第２記憶領域を備え、前記第１ストレージシステムは、前記計算機から前記第１記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求を前記第２記憶領域へのアクセス要求に変換し、前記変換されたアクセス要求を、前記第３経路を経由して前記第２ストレージシステムに送信し、前記第２ストレージシステムは、前記計算機又は前記第１ストレージシステムから前記第２記憶領域へのアクセス要求を受信すると、前記受信したアクセス要求に従って前記第２記憶領域へのアクセス処理を実行し、前記計算機は、前記第１記憶領域と前記第２記憶領域とを対応付ける第１情報を保持し、前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かの判定結果と、前記第１記憶領域又は前記第２記憶領域へのアクセスに使用される前記第１経路から前記第４経路の少なくとも一つと、を対応付ける第２情報を保持し、前記方法は、前記計算機が、前記第１経路から前記第４経路の少なくとも一つに障害が発生したか否かを判定する第１手順と、前記計算機が、前記判定の結果及び前記第２情報に基づいて、前記第１記憶領域又は前記第２記憶領域へのアクセスに使用される前記第１経路から前記第４経路の少なくとも一つを選択する第２手順と、前記計算機が、前記選択された前記第１経路から前記第４経路の少なくとも一つを用いて、前記第１記憶領域又は前記第２記憶領域へのアクセス要求を送信する第３手順と、を含み、前記第２手順は、前記第１手順によって前記第１経路から前記第４経路のいずれにも障害が発生していないと判定された場合、前記第２情報に基づいて前記第１経路を選択する手順と、前記第１手順によって前記第１経路に障害が発生したと判定され、かつ、前記第２経路に障害が発生していないと判定された場合、前記第２情報に基づいて前記第２経路を選択する手順と、前記第１手順によって前記第３経路に障害が発生したと判定された場合、前記第２情報に基づいて前記第４経路を選択する手順と、を含み、前記第３手順は、前記第１手順によって前記第１経路から前記第４経路のいずれにも障害が発生していないと判定された場合、前記選択された第１経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信する手順と、前記第１手順によって前記第１経路に障害が発生したと判定され、かつ、前記第２経路に障害が発生していないと判定された場合、前記選択された第２経路を経由して、前記第１記憶領域へのアクセス要求を前記第１ストレージシステムに送信する手順と、前記第１手順によって前記第３経路に障害が発生したと判定された場合、前記第２記憶領域へのアクセス要求を、前記選択された第４経路を介して前記第２ストレージシステムに送信する手順と、を含むことを特徴とする。
【発明の効果】
【０００５】
本発明の一実施形態によれば、計算機から第２のストレージシステムまでの間のいずれかのパスに障害が発生しても、補助用のパスを使用して業務を継続することができる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施形態を、図面を参照して説明する。
【０００７】
図１は、本発明の実施形態の計算機システムの構成を示すブロック図である。
【０００８】
本実施形態の計算機システムは、業務ホスト１００、接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０を備える。
【０００９】
業務ホスト１００は、外部接続ストレージシステムＢ１３０の記憶領域を使用して種々の業務を実行する計算機である。業務ホスト１００は、相互に接続されたＣＰＵ１０２、メモリ１０３、複数のホストバスアダプタ（ＨＢＡ）１０４及び複数のネットワークインターフェースカード（ＮＩＣ）１０５を備える。図１に示すＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂの各々は、複数のＨＢＡ１０４の一つである。ＮＩＣ１＿１０５Ａ及びＮＩＣ２＿１０５Ｂの各々は、複数のＮＩＣ１０５の一つである。
【００１０】
ＣＰＵ１０２は、メモリ１０３に格納されたプログラムを実行するプロセッサである。以下の説明においてメモリ１０３に格納されたプログラムが実行する処理は、実際にはＣＰＵ１０２によって実行される。
【００１１】
メモリ１０３は、ＣＰＵ１０２によって実行されるプログラム及びＣＰＵ１０２によって参照されるデータ等を格納する記憶装置である。本実施形態のメモリ１０３には、アプリケーション１０６、ＬＵマッピング管理部１０７、パス管理部１０８、パス管理テーブル１０９、ステータス管理テーブル１１０、ＨＢＡステータステーブル１１１、スイッチステータステーブル１１２、ストレージステータステーブル１１３及びアクセス経路判定テーブル１１４が格納される。
【００１２】
アプリケーション１０６は、業務ホスト１００が提供する種々の業務を実現するプログラムである。アプリケーション１０６は、必要に応じて外部接続ストレージシステムＢ１３０の記憶領域を使用する。
【００１３】
ＬＵマッピング管理部１０７は、接続元ストレージシステムＡ１２０が業務ホスト１００に提供する仮想的な記憶領域と、外部接続ストレージシステムＢ１３０が備える物理的な記憶領域と、の対応関係を管理するためのプログラム及びテーブルを含む。
【００１４】
パス管理部１０８は、業務ホスト１００、接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０の間のデータ転送経路を管理するプログラムを含む。
【００１５】
上記のプログラム及びテーブルについては、後で詳細に説明する。
【００１６】
業務ホスト１００は、第１ネットワーク１４０Ａを介して接続元ストレージシステムＡ１２０に接続される。接続元ストレージシステムＡ１２０は、第２ネットワーク１４０Ｂを介して外部接続ストレージシステムＢ１３０に接続される。以下の説明において、第１ネットワーク１４０Ａを「ＰＡ」（パスＡ）、第２ネットワーク１４０Ｂを「ＰＢ」（パスＢ）とも記載する。
【００１７】
本実施形態において、ＰＡ１４０Ａ及びＰＢ１４０Ｂは、ファイバーチャネル（ＦＣ）プロトコルが適用されるいわゆるストレージエリアネットワーク（ＳＡＮ）である。ＰＡ１４０Ａ及びＰＢ１４０Ｂは、それぞれ、一つ以上のＦＣスイッチを含んでもよい（図４参照）。以下の説明において、ＰＡ１４０Ａ及びＰＢ１４０Ｂを総称して、ＦＣネットワークとも記載する。
【００１８】
ＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂは、ＰＡ１４０Ａに接続されるインターフェースである。ＰＡ１４０ＡにＦＣプロトコルが適用される場合、ＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂは、通信速度の速いＦＣカードである。業務ホスト１００は、ＰＡ１４０Ａを介して接続元ストレージシステムＡ１２０の仮想的な記憶領域にアクセスすることができる。
【００１９】
ＰＡ１４０Ａは、業務ホスト１００と接続元ストレージシステムＡ１２０とを接続する複数のパスを含んでもよい（後述する図４参照）。図１の例において、ＰＡ１４０Ａは、ＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂの二つのパスを含む。この例において、ＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂは、それぞれ、ＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂに接続される。
【００２０】
同様に、ＰＢ１４０Ｂは、接続元ストレージシステムＡ１２０と外部接続ストレージシステムＢ１３０とを接続する複数のパスを含んでもよい。図１の例において、ＰＢ１４０Ｂは、ＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄの二つのパスを含む。
【００２１】
さらに、業務ホスト１００、接続元ストレージシステムＡ１２０、外部接続ストレージシステムＢ１３０及び各ＦＣスイッチは、第３ネットワーク１５０を介して相互に接続される。第３ネットワーク１５０は、例えばＩＰ（インターネットプロトコル）ネットワークである。第３ネットワーク１５０は、一つ以上のハブ１６０を含んでもよい。
【００２２】
ＮＩＣ１＿１０５Ａ及びＮＩＣ２＿１０５Ｂは、第３ネットワーク１５０に接続されるインターフェースである。第３ネットワーク１５０がＩＰネットワークである場合、ＮＩＣ１＿１０５Ａ及びＮＩＣ２＿１０５Ｂは、ＦＣカードよりは通信速度の遅いネットワークインターフェースカードである。
【００２３】
本実施形態の業務ホスト１００は、第３ネットワーク１５０を介して、外部接続ストレージシステムＢ１３０が備える物理的な記憶領域にアクセスすることもできる。例えば、第３ネットワーク１５０上に、ＮＩＣ２＿１０５Ｂからハブ１６０を経由して接続元ストレージシステムＡ１２０に至るパスＣ（ＰＣ）１５１Ａ、及び、ＮＩＣ１＿１０５Ａからハブ１６０を経由して外部接続ストレージシステムＢ１３０に至るパスＤ（ＰＤ）１５１Ｂが設定されてもよい。業務ホスト１００は、ＰＣ１５１Ａ又はＰＤ１５１Ｂに例えばｉＳＣＳＩプロトコルを適用することによって、外部接続ストレージシステムＢ１３０の記憶領域にアクセスしてもよい。
【００２４】
なお、第１ネットワーク１４０Ａ、第２ネットワーク１４０Ｂ及び第３ネットワーク１５０の種類は上記のものに限定されない。ただし、第１ネットワーク１４０Ａ及び第２ネットワーク１４０Ｂは、大量のデータを高速に転送可能なネットワークであることが望ましい。一方、第３ネットワーク１５０は、第１ネットワーク１４０Ａ及び第２ネットワーク１４０Ｂより低速でもよいが、低コストで汎用性が高いネットワークであることが望ましい。
【００２５】
接続元ストレージシステムＡ１２０は、コントローラ１２１を備える。コントローラ１２１は、複数のチャネルアダプタ（ＣＨＡ）１２２を備える。各ＣＨＡ１２２は、ＦＣプロトコル又はｉＳＣＳＩプロトコルによって業務ホスト１００又は外部接続ストレージシステムＢ１３０と通信するインターフェースである。図１に示すＣＨＡ１−１＿１２２Ａ、ＣＨＡ１−２＿１２２Ｂ、ＣＨＡ１−３＿１２２Ｃ、ＣＨＡ１−４＿１２２Ｄ及びＣＨＡ１−５＿１２２Ｅの各々は、複数のＣＨＡ１２２の一つである。
【００２６】
各ＣＨＡ１２２は、ＣＰＵ（図示省略）、メモリ（図示省略）及び一つ以上のポート（図示省略）を備える。各ポートは、第１ネットワーク１４０Ａ、第２ネットワーク１４０Ｂ又は第３ネットワーク１５０に接続される。各ポートには、それが接続されたネットワークにおいてそのポートを識別するためのネットワークアドレス、例えば、ＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）又はＩＰアドレスが付与される。
【００２７】
図１の例において、ＣＨＡ１−１＿１２２Ａ及びＣＨＡ１−２＿１２２Ｂは、それぞれ、ＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂに接続される。ＣＨＡ１−３＿１２２Ｃは、ハブ１６０に接続される。ＣＨＡ１−４＿１２２Ｄ及びＣＨＡ１−５＿１２２Ｅは、それぞれ、ＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄに接続される。
【００２８】
コントローラ１２１は、仮想的な記憶領域（仮想論理ボリューム）であるＶ−ＶＯＬ１２３を業務ホスト１００に提供する。Ｖ−ＶＯＬ１２３は、外部接続ストレージシステムＢ１３０内の物理的な記憶領域（実論理ボリューム）であるＲ−ＶＯＬ１３３と対応付けられる（図２参照）。
【００２９】
接続元ストレージシステムＡ１２０は、さらに、物理的な記憶領域を提供するハードディスクドライブ（ＨＤＤ）のような記憶デバイス（図示省略）を備えてもよい。その場合、コントローラ１２１は、その物理的な記憶領域を業務ホスト１００に提供するために、業務ホスト１００からその物理的な記憶領域へのアクセス（すなわちデータの書き込み及び読み出し）を制御する。
【００３０】
外部接続ストレージシステムＢ１３０は、コントローラ１３１及び物理的な記憶領域（Ｒ−ＶＯＬ）１３３を備える。
【００３１】
コントローラ１３１は、複数のＣＨＡ１３２を備える。各ＣＨＡ１３２は、ＦＣプロトコル又はｉＳＣＳＩプロトコルによって業務ホスト１００又は接続元ストレージシステムＡ１２０と通信するインターフェースである。図１に示すＣＨＡ２−１＿１３２Ａ、ＣＨＡ２−２＿１３２Ｂ及びＣＨＡ２−３＿１３２Ｃの各々は、複数のＣＨＡ１３２の一つである。各ＣＨＡ１３２は、ＣＨＡ１２２と同様に、ＣＰＵ、メモリ及びポートを備える。
【００３２】
図１の例において、ＣＨＡ２−１＿１３２Ａ及びＣＨＡ２−２＿１３２Ｂは、それぞれ、ＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄに接続される。ＣＨＡ２−３＿１３２Ｃは、ハブ１６０に接続される。
【００３３】
Ｒ−ＶＯＬ１３３は、一つ又は複数の記憶デバイスによって実現されてもよい。Ｒ−ＶＯＬ１３３を実現する記憶デバイスは、例えばＨＤＤであってもよいし、フラッシュメモリのような半導体記憶デバイスであってもよい。
【００３４】
コントローラ１３１は、業務ホスト１００及び接続元ストレージシステムＡ１２０の少なくとも一方にＲ−ＶＯＬ１３３を提供する。具体的には、コントローラ１３１は、業務ホスト１００又は接続元ストレージシステムＡ１２０からＲ−ＶＯＬ１３３へのアクセス要求を受信すると、要求されたアクセスを実行し、その結果を要求元に送信する。
【００３５】
ここで、各ネットワークが正常に動作している場合の、業務ホスト１００によるＲ−ＶＯＬ１３３へのアクセスについて説明する。
【００３６】
業務ホスト１００は、アプリケーション１０６を実行し、必要に応じて、Ｖ−ＶＯＬ１２３へのアクセス要求を、ＰＡ１４０Ａを介して送信する。ＰＡ１４０Ａが複数のパス（例えばＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂ）を含む場合、業務ホスト１００は、アクセス負荷が分散されるように、複数のアクセス要求をそれらの複数のパスに分散して送信してもよい。
【００３７】
アクセス要求を受信した接続元ストレージシステムＡ１２０のコントローラ１２１は、アクセス先として指定されたＶ−ＶＯＬ１２３に対応する外部接続ストレージシステムＢ１３０内の物理的な記憶領域（図１の例では、Ｒ−ＶＯＬ１３３）を特定する。この特定をするために、コントローラ１２１は、接続元ストレージシステムＡ１２０内の仮想的な記憶領域と外部接続ストレージシステムＢ１３０内の物理的な記憶領域とを対応付ける情報を予め保持している。
【００３８】
コントローラ１２１は、受信したアクセス要求を特定されたＲ−ＶＯＬ１３３へのアクセス要求に変換して、外部接続ストレージシステムＢ１３０に送信する。具体的には、コントローラ１２１は、受信したアクセス要求に基づいて、特定されたＲ−ＶＯＬ１３３へのアクセス要求を生成し、生成したアクセス要求を、ＰＢ１４０Ｂを介して送信する。
【００３９】
ＰＢ１４０Ｂが複数のパス（例えばＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄ）を含む場合、コントローラ１２１は、アクセス負荷が分散されるように、生成された複数のアクセス要求をそれらの複数のパスに分散して送信してもよい。
【００４０】
このアクセス要求を受信した外部接続ストレージシステムＢ１３０のコントローラ１３１は、受信したアクセス要求に基づいて、Ｒ−ＶＯＬ１３３へのアクセスを実行し、その結果をアクセス要求の送信元（すなわち接続元ストレージシステムＡ１２０）に送信する。接続元ストレージシステムＡ１２０のコントローラ１２１は、受信した結果を業務ホスト１００に送信する。
【００４１】
上記の手順によって、例えば業務ホスト１００がＶ−ＶＯＬ１２３へのデータの書き込み要求を送信した場合、要求されたデータは接続元ストレージシステムＡ１２０を経由して外部接続ストレージシステムＢ１３０に転送され、Ｒ−ＶＯＬ１３３に格納される。業務ホスト１００がＶ−ＶＯＬ１２３からのデータの読み出し要求を送信した場合、要求されたデータは、Ｒ−ＶＯＬ１３３から読み出され、接続元ストレージシステムＡ１２０を経由して業務ホスト１００に転送される。
【００４２】
上記のようなストレージシステムの接続及びアクセスの形態は、ストレージシステムの外部接続と呼ばれる。
【００４３】
なお、接続元ストレージシステムＡ１２０のコントローラ１２１は、さらに、キャッシュメモリ１２４を備えてもよい。キャッシュメモリ１２４には、Ｖ−ＶＯＬ１２３に書き込まれたデータ、及び、Ｖ−ＶＯＬ１２３から読み出されたデータの少なくとも一方が一時的に格納される。キャッシュメモリ１２４を使用することによって、Ｖ−ＶＯＬ１２３へのアクセスに要する時間（すなわち、実際には、Ｒ−ＶＯＬ１３３へのアクセスに要する時間）が業務ホスト１００から隠蔽される。
【００４４】
続いて、ネットワークに障害が発生した場合について説明する。
【００４５】
例えば、ＰＡ１４０Ａに含まれるＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂのうち一方における通信が障害のために停止したとしても、他方が正常であれば、業務ホスト１００はＶ−ＶＯＬ１２３にアクセスすることができる。しかし、ＰＡ１４０Ａに含まれる全てのパスにおける通信が停止した場合、業務ホスト１００はＰＡ１４０Ａを介してＶ−ＶＯＬ１２３にアクセスできなくなる。同様に、ＰＢ１４０Ｂに含まれる全てのパスにおける通信が停止した場合、接続元ストレージシステムＡ１２０はＰＢ１４０Ｂを介してＲ−ＶＯＬ１３３にアクセスできなくなる。
【００４６】
従来の外部接続では、ＰＡ１４０Ａ及びＰＢ１４０Ｂの少なくとも一方の全てのパスにおいて通信が停止した場合、他方が正常であったとしても、業務ホスト１００はＲ−ＶＯＬ１３３にアクセスできなくなる。このため、Ｒ−ＶＯＬ１３３に格納されたデータを使用する業務が停止する。さらに、業務ホスト１００は、実際にはＰＡ１４０Ａ及びＰＢ１４０Ｂのどちらに障害が発生していたとしても、ＰＡ１４０Ａに障害が発生したと認識するため、実際に障害が発生したパスを特定することができなかった。
【００４７】
本実施形態では、業務ホスト１００は、第３ネットワーク１５０を介して、ｉＳＣＳＩプロトコルによるＶ−ＶＯＬ１２３及びＲ−ＶＯＬ１３３へのアクセスを実行することができる。このため、ＰＡ１４０Ａ及びＰＢ１４０Ｂの少なくとも一方に障害が発生した場合、第３ネットワークを補助的なパスとして使用することによって、業務ホスト１００は業務を継続することができる。第３ネットワーク１５０がＰＡ１４０Ａ及びＰＢ１４０Ｂより低速なネットワークである場合、ＰＡ１４０Ａ又はＰＢ１４０Ｂの代わりに第３ネットワーク１５０を使用することによって業務の性能は低下するが、業務が完全に停止することは防止される。
【００４８】
さらに、本実施形態の業務ホスト１００は、障害が発生した箇所を特定し、それを管理者に通知することができる。
【００４９】
上記の本実施形態を実現するために、業務ホスト１００のメモリ１０３には、図１に示すようなプログラム及びテーブルが格納される。以下、これらについて説明する。
【００５０】
図２は、本発明の実施形態のＬＵマッピング管理部１０７による記憶領域の割り当ての説明図である。
【００５１】
ＬＵマッピング管理部１０７は、マッピングテーブル２００を含む。マッピングテーブル２００は、接続元ストレージシステムＡ１２０内の仮想論理ボリュームへの、外部接続ストレージシステムＢ１３０内の実論理ボリュームの割り当て（すなわちマッピング）を管理する情報を含む。
【００５２】
具体的には、マッピングテーブル２００は、マッピングＩＤ２０１、接続元ストレージシステムのＣＵ２０２、接続元ストレージシステムのＬＤＥＶ２０３、外部接続ストレージシステムのＣＵ２０４及び外部接続ストレージシステムのＬＤＥＶ２０５を含む。
【００５３】
マッピングＩＤ２０１は、仮想論理ボリュームへの実ボリュームのマッピングの識別子である。一つの仮想論理ボリュームへの一つの実ボリュームのマッピングが、一つのマッピングＩＤ２０１によって識別される。
【００５４】
接続元ストレージシステムのＣＵ２０２及び接続元ストレージシステムのＬＤＥＶ２０３は、仮想論理ボリュームを識別する情報である。具体的には、接続元ストレージシステムのＣＵ２０２は、仮想論理ボリュームを管理する（言い換えるとその仮想論理ボリュームへのアクセスを制御する）コントローラの識別子である。接続元ストレージシステムのＬＤＥＶ２０３は、コントローラによって仮想論理ボリュームに付与された識別子である。
【００５５】
外部接続ストレージシステムのＣＵ２０４及び外部接続ストレージシステムのＬＤＥＶ２０５は、実論理ボリュームを識別する情報である。具体的には、外部接続ストレージシステムのＣＵ２０４は、実論理ボリュームを管理するコントローラの識別子である。外部接続ストレージシステムのＬＤＥＶ２０５は、コントローラによって実論理ボリュームに付与された識別子である。
【００５６】
コントローラによって論理ボリュームに付与される識別子は、ストレージシステム内で一意ではないが、そのコントローラが管理する範囲内では一意である。このため、コントローラの識別子と論理ボリュームの識別子とを組み合わせることによって、論理ボリュームをストレージシステム内で一意に識別することができる。
【００５７】
例えば、Ｖ−ＶＯＬ１２３の識別子が「０１」、Ｖ−ＶＯＬ１２３へのアクセスを制御するコントローラ１２１の識別子が「０１」、Ｒ−ＶＯＬ１３３の識別子が「０１」、Ｒ−ＶＯＬ１３３へのアクセスを制御するコントローラ１３１の識別子が「０２」であり、Ｖ−ＶＯＬ１２３にＲ−ＶＯＬ１３３がマッピングされる（すなわち、Ｖ−ＶＯＬ１２３に書き込まれたデータが実際にはＲ−ＶＯＬ１３３に格納される）場合、一つのマッピングＩＤ２０１（例えば「マッピング１」）に対応する接続元ストレージシステムのＣＵ２０２、接続元ストレージシステムのＬＤＥＶ２０３、外部接続ストレージシステムのＣＵ２０４及び外部接続ストレージシステムのＬＤＥＶ２０５には、それぞれ、「０１」、「０１」、「０２」及び「０１」が保持される（図２参照）。
【００５８】
図３は、本発明の実施形態のパス管理テーブル１０９の説明図である。
【００５９】
パス管理テーブル１０９は、アクセス要求を送信する業務ホスト１００から、そのアクセス要求の対象のデータが格納される実論理ボリュームまでのデータの経路（パス）を管理する情報を保持する。
【００６０】
具体的には、パス管理テーブル１０９は、パスＩＤ３０１、ＨＢＡ３０２、第１ネットワークＰＡ３０３、接続元ストレージシステムのＣＨＡ情報３０４、接続元ストレージシステムのボリューム情報３０５、第２ネットワークＰＢ３０６、外部接続ストレージシステムのＣＨＡ情報３０７、外部接続ストレージシステムのボリューム情報３０８、ケーブル情報３０９及びステータス３１０を含む。
【００６１】
パスＩＤ３０１は、業務ホスト１００から実論理ボリュームまでのパスの識別子である。
【００６２】
ＨＢＡ３０２は、パスに含まれるＨＢＡ１０４の識別子である。
【００６３】
第１ネットワークＰＡ３０３は、パスに含まれるＰＡ１４０Ａ内のＦＣスイッチのポートの識別子である（図４参照）。
【００６４】
接続元ストレージシステムのＣＨＡ情報３０４は、パスに含まれるＣＨＡ１２２の識別子である。
【００６５】
接続元ストレージシステムのボリューム情報３０５は、パスを経由してアクセスされる仮想論理ボリューム（言い換えると、業務ホスト１００によってアクセス先として指定される仮想論理ボリューム）の識別子である。なお、図３の例では接続元ストレージシステムのボリューム情報３０５として「Ｖ−ＶＯＬ」が保持されているが、図２と同様、「ＣＵ：０１、ＬＤＥＶ：０１」のような情報が保持されてもよい。
【００６６】
第２ネットワークＰＢ３０６は、パスに含まれるＰＢ１４０Ｂ内のＦＣスイッチのポートの識別子である（図４参照）。
【００６７】
外部接続ストレージシステムのＣＨＡ情報３０７は、パスに含まれるＣＨＡ１３２の識別子である。
【００６８】
外部接続ストレージシステムのボリューム情報３０８は、パスを経由してアクセスされる実論理ボリューム（言い換えると、業務ホスト１００によってアクセス先として指定される仮想論理ボリュームにマッピングされた実論理ボリューム）の識別子である。なお、図３の例では外部接続ストレージシステムのボリューム情報３０８として「Ｒ−ＶＯＬ」が保持されているが、図２と同様、「ＣＵ：０２、ＬＤＥＶ：０１」のような情報が保持されてもよい。
【００６９】
ケーブル情報３０９は、パスに含まれる各部を接続するために使用されるケーブルを識別する情報である。パスに適用されるプロトコルを識別する情報がケーブル情報３０９として保持されてもよい。
【００７０】
ステータス３１０は、パスのステータス（状態）を識別する情報、具体的には、パスが正常である（すなわち「ＯＮＬＩＮＥ」である）か、障害のために通信ができない状態である（すなわち「ＯＦＦＬＩＮＥ」である）か、を示す情報である。
【００７１】
パス管理部１０８は、パスに発生した障害を検出すると、各部のステータスを更新する処理を実行し、その結果に従ってステータス３１０を更新する。ステータスを更新する処理については後述する（図１１参照）。
【００７２】
図４は、本発明の実施形態において設定されたパスの詳細な説明図である。
【００７３】
具体的には、図４は、図１に示すシステムにおいて設定されたパスのうち、ＦＣプロトコルが適用されるパスを詳細に説明するものである。なお、図１に示した各部の構成のうち、パスの説明に必要がないものは図４において省略されている。
【００７４】
図４には、図１では省略されたＦＣスイッチ４０１Ａ及び４０１Ｂが表示されている。ＦＣスイッチ４０１Ａは、ポートＡ１＿４０２Ａ〜ポートＡ４＿４０２Ｄを備える。ポートＡ１＿４０２Ａは、ＨＢＡ１＿１０４Ａに接続される。ポートＡ２＿４０２Ｂは、ＨＢＡ２＿１０４Ｂに接続される。ポートＡ３＿４０２Ｃは、ＣＨＡ１−１＿１２２Ａに接続される。ポートＡ４＿４０２Ｄは、ＣＨＡ１−２＿１２２Ｂに接続される。
【００７５】
図４の例では、ポートＡ１＿４０２Ａ及びポートＡ３＿４０２Ｃを含むゾーンＡ４０３Ａ、及び、ポートＡ２＿４０２Ｂ及びポートＡ４＿４０２Ｄを含むゾーンＢ４０３Ｂが設定されている。この場合、ＦＣスイッチ４０１Ａは、例えば、ポートＡ１＿４０２Ａから入力されたデータをポートＡ３＿４０２Ｃから出力することができるが、そのデータをポートＡ２＿４０２Ｂ及びポートＡ４＿４０２Ｄのいずれからも出力することができない。
【００７６】
図４において、ＨＢＡ１＿１０４ＡからポートＡ１＿４０２Ａ及びポートＡ３＿４０２Ｃを経由してＣＨＡ１−１＿１２２Ａに至るパスが、図１のＰＡ１＿１４１Ａに相当する。ＨＢＡ２＿１０４ＢからポートＡ２＿４０２Ｂ及びポートＡ４＿４０２Ｄを経由してＣＨＡ１−２＿１２２Ｂに至るパスが、図１のＰＡ２＿１４１Ｂに相当する。
【００７７】
ＦＣスイッチ４０１Ｂは、ポートＢ１＿４０２Ｅ〜ポートＢ４＿４０２Ｈを備える。ポートＢ１＿４０２Ｅは、ＣＨＡ１−４＿１２２Ｄに接続される。ポートＢ２＿４０２Ｆは、ＣＨＡ１−５＿１２２Ｅに接続される。ポートＢ３＿４０２Ｇは、ＣＨＡ２−１＿１３２Ａに接続される。ポートＢ４＿４０２Ｈは、ＣＨＡ２−２＿１３２Ｂに接続される。
【００７８】
図４の例では、ポートＢ１＿４０２Ｅ及びポートＢ３＿４０２Ｇを含むゾーンＣ４０３Ｃ、及び、ポートＢ２＿４０２Ｆ及びポートＢ４＿４０２Ｈを含むゾーンＤ４０３Ｄが設定されている。ＣＨＡ１−４＿１２２ＤからポートＢ１＿４０２Ｅ及びポートＢ３＿４０２Ｇを経由してＣＨＡ２−１＿１３２Ａに至るパスが、図１のＰＢ１＿１４１Ｃに相当する。ＣＨＡ１−５＿１２２ＥからポートＢ２＿４０２Ｆ及びポートＢ４＿４０２Ｈを経由してＣＨＡ２−２＿１３２Ｂに至るパスが、図１のＰＢ２＿１４１Ｄに相当する。
【００７９】
図１及び図４に示すようなパスが設定されている場合、パス管理テーブル１０９は、例えば図３に示すとおりとなる。
【００８０】
パスＩＤ「０００１」によって識別されるパスは、ＨＢＡ１＿１０４ＡからＲ−ＶＯＬ１３３に至るパスである。パスＩＤ「０００２」によって識別されるパスは、ＨＢＡ２＿１０４ＢからＲ−ＶＯＬ１３３に至るパスである。これらのパスにはＦＣプロトコルが適用されるため、これらに対応するケーブル情報３０９として「ＦＣ」が保持される。
【００８１】
パス管理テーブル１０９には、さらに、第３ネットワーク１５０を経由するパスに関する情報も含まれる。
【００８２】
パスＩＤ「０００３」によって識別されるパスは、ＮＩＣ２＿１０５ＢからＶ−ＶＯＬ１２３を経由してＲ−ＶＯＬ１３３に至るパスである。パスＩＤ「０００４」によって識別されるパスは、ＮＩＣ１＿１０５Ａから、接続元ストレージシステムＡ１２０を経由せずにＲ−ＶＯＬ１３３に至るパスである。これらのパスにはｉＳＣＳＩプロトコルが適用されるため、これらに対応するケーブル情報３０９として「ｉＳＣＳＩ」が保持される。
【００８３】
図３の例において、パスＩＤ「０００１」及び「０００２」に対応するステータス３１０として「ＯＦＦＬＩＮＥ」が、パスＩＤ「０００３」及び「０００４」に対応するステータス３１０として「ＯＮＬＩＮＥ」が保持されている。これは、パスＩＤ「０００１」及び「０００２」によって識別される二つのパスは、それぞれに含まれるいずれかの部位に発生した障害のために、通信ができない状態であることを示す。
【００８４】
業務ホスト１００は、図３に示すパス管理テーブル１０９を出力してもよい。例えば、業務ホスト１００は、表示装置１１５にパス管理テーブル１０９を表示してもよい。ユーザは、いずれかのパスの状態が「ＯＦＦＬＩＮＥ」である場合、障害が発生している部位を特定するために、そのパスの詳細な状態を表示させる指示を入力してもよい。この指示が入力されると、ステータス管理テーブル１１０の内容が新たに出力される。
【００８５】
図５は、本発明の実施形態のステータス管理テーブル１１０の説明図である。
【００８６】
ステータス管理テーブル１１０は、パスの構成要素の状態を示す情報を保持する。具体的には、ステータス管理テーブル１１０は、ＩＤ５０１、構成５０２及びステータス５０３を含む。
【００８７】
ＩＤ５０１は、ステータス管理テーブル１１０内の各エントリに付与された番号である。
【００８８】
構成５０２は、パスの構成要素の分類の名前である。図５の例では、構成５０２として「ＨＢＡ」、「ネットワーク」及び「ストレージ」が保持される。
【００８９】
ステータス５０３は、パスの構成要素の分類ごとの状態を示す情報である。例えば、業務ホスト１００内の全てのＨＢＡ１０４（図１の例では、ＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂ）が正常な状態である場合、「ＨＢＡ」に対応するステータス５０３として「ＯＮＬＩＮＥ」が保持される。一方、業務ホスト１００内のＨＢＡ１０４の少なくとも一つに障害が発生している場合、「ＨＢＡ」に対応するステータス５０３として「ＯＦＦＬＩＮＥ」が保持される。
【００９０】
同様に、業務ホスト１００によって要求されたデータアクセスが経由するネットワーク（図１の例では、第１ネットワーク（ＰＢ）１４０Ａ及び第２ネットワーク（ＰＢ）１４０Ｂ）の少なくとも一つに障害が発生している場合、「ネットワーク」に対応するステータス５０３として「ＯＦＦＬＩＮＥ」が保持される。業務ホスト１００からのアクセス要求を処理するストレージシステム（図１の例では、接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０）の少なくとも一つに障害が発生している場合、「ストレージ」に対応するステータス５０３として「ＯＦＦＬＩＮＥ」が保持される。
【００９１】
ステータス５０３の値は、後述するＨＢＡステータステーブル１１１、スイッチステータステーブル１１２及びストレージステータステーブル１１３の内容に基づいて設定される。図５の例では、「ストレージ」に対応するステータス５０３として「ＯＦＦＬＩＮＥ」が保持されている。
【００９２】
ユーザは、いずれかの構成要素の分類の状態が「ＯＦＦＬＩＮＥ」である場合、障害が発生している部位を特定するために、その構成要素の分類の詳細な状態を表示させる指示を入力してもよい。この指示が入力されると、指示に応じて、ＨＢＡステータステーブル１１１、スイッチステータステーブル１１２及びストレージステータステーブル１１３の少なくとも一つの内容が新たに出力される。
【００９３】
図６は、本発明の実施形態のＨＢＡステータステーブル１１１の説明図である。
【００９４】
ＨＢＡステータステーブル１１１は、業務ホスト１００が備える各ＨＢＡ１０４の状態を示す情報を保持する。具体的には、ＨＢＡステータステーブル１１１は、ＩＤ６０１、ＨＢＡ６０２及びステータス６０３を含む。
【００９５】
ＩＤ６０１は、ＨＢＡステータステーブル１１１内の各エントリに付与された番号である。
【００９６】
ＨＢＡ６０２は、業務ホスト１００が備える各ＨＢＡ１０４の識別子である。
【００９７】
ステータス６０３は、各ＨＢＡ１０４の状態を示す情報である。「ＯＮＬＩＮＥ」はＨＢＡ１０４が正常に動作していることを、「ＯＦＦＬＩＮＥ」はＨＢＡ１０４に障害が発生していることを示す。
【００９８】
図６の例では、業務ホスト１００が備えるＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂのいずれも正常に動作している。これは、図５において「ＨＢＡ」に対応するステータス５０３が「ＯＮＬＩＮＥ」であることに対応する。ＨＢＡ１＿１０４Ａ及びＨＢＡ２＿１０４Ｂの少なくとも一方に対応するステータス６０３が「ＯＦＦＬＩＮＥ」である場合、図５において「ＨＢＡ」に対応するステータス５０３が「ＯＦＦＬＩＮＥ」となる。
【００９９】
図７は、本発明の実施形態のスイッチステータステーブル１１２の説明図である。
【０１００】
図７は、ユーザからの指示に従って表示装置１１５に表示されたスイッチステータステーブル１１２の内容を示す。
【０１０１】
表示されたスイッチステータステーブル１１２は、業務ホスト１００によって要求されたデータアクセスが経由するネットワークの各構成要素の状態を示す情報を保持する。具体的には、スイッチステータステーブル１１２は、ドメイン７０１、ポート７０２、ＨＢＡ７０３、ポートステータス７０４、ケーブルステータス７０５、ＨＢＡベンダ名７０６及び選択タブ７１１を含む。
【０１０２】
選択タブ７１１は、表示されるべきネットワークを選択するために指定されるタブである。本実施形態では、図１に示すように、データアクセスがＰＡ１４０Ａ及びＰＢ１４０Ｂの二つのネットワークを経由する。このため、図７の例では、ＰＡ１４０Ａ及びＰＢ１４０Ｂのそれぞれに対応する選択タブ７１１が表示される。図７は、ＰＡ１４０Ａが選択された場合を示す。この場合、表示装置１１５には、図７に示すように、ＰＡ１４０Ａの構成要素の状態を示す情報が表示される。
【０１０３】
なお、メモリ１０３に格納されたスイッチステータステーブル１１２は、図７に示すＰＡ１４０Ａの構成要素の状態を示す情報に加えて、図７では省略されているＰＢ１４０Ｂの構成要素の状態を示す情報も含む。
【０１０４】
ドメイン７０１は、ネットワークに含まれる各ＦＣスイッチの識別子である。図４に示すように、ＰＡ１４０ＡはＦＣスイッチ４０１Ａを含む。図７に示す「０００１」は、ＦＣスイッチ４０１Ａの識別子である。
【０１０５】
ポート７０２は、ネットワークに含まれるＦＣスイッチのポートの識別子である。図４に示すように、ＰＡ１４０Ａに含まれるＦＣスイッチ４０１Ａは、ポートＡ１＿４０２Ａ〜ポートＡ４＿４０２Ｄを備える。このため、ポート７０２として、これらの四つのポートの識別子が保持される。
【０１０６】
ＨＢＡ７０３は、各ポートに接続されたＨＢＡ１０４又はＣＨＡ１２２（又はＣＨＡ１３２）の識別子である。
【０１０７】
ポートステータス７０４は、各ポートの状態を示す情報である。「ＯＮＬＩＮＥ」はポートが正常に動作していることを、「ＯＦＦＬＩＮＥ」はポートに障害が発生していることを示す。
【０１０８】
ケーブルステータス７０５は、各ポートに接続されたケーブルの状態を示す情報である。「ＯＮＬＩＮＥ」はケーブルが正常に接続されていることを、「ＯＦＦＬＩＮＥ」はケーブルの接続に障害（例えば断線）が発生していることを示す。
【０１０９】
ＨＢＡベンダ名７０６は、各ポートに接続されたＨＢＡ１０４又はＣＨＡ１２２（又はＣＨＡ１３２）のベンダの識別子である。
【０１１０】
スイッチステータステーブル１１２は、さらに、各ポートが属するゾーン（例えば図４に示すゾーンＡ４０３Ａ等）を識別する情報を含んでもよい。
【０１１１】
図７の例では、各ポート及び各ケーブルの状態が全て正常である。これは、図５において「ネットワーク」に対応するステータス５０３が「ＯＮＬＩＮＥ」であることに対応する。ポートステータス７０４又はケーブルステータス７０５に一つでも「ＯＦＦＬＩＮＥ」が保持される場合、図５において「ネットワーク」に対応するステータス５０３が「ＯＦＦＬＩＮＥ」となる。
【０１１２】
図８は、本発明の実施形態のストレージステータステーブル１１３の説明図である。
【０１１３】
図８は、ユーザからの指示に従って表示装置１１５に表示されたストレージステータステーブル１１３の内容を示す。
【０１１４】
表示されたストレージステータステーブル１１３は、業務ホスト１００からのアクセス要求を処理する各ストレージシステムの状態を示す情報を保持する。具体的には、ストレージステータステーブル１１３は、ポート８０１、ＣＨＡ８０２、ＣＵ８０３、ＬＤＥＶ８０４、ＣＨＡステータス８０５、ポートステータス８０６及び選択タブ８１１を含む。
【０１１５】
選択タブ８１１は、表示されるべきストレージシステムを選択するために指定されるタブである。本実施形態では、図１に示すように、接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０が業務ホスト１００からのアクセス要求を処理する。このため、図８の例では、接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０のそれぞれに対応する選択タブ７１１が表示される。図８は、接続元ストレージシステムＡ１２０が選択された場合を示す。この場合、表示装置１１５には、図８に示すように、接続元ストレージシステムＡ１２０の構成要素の状態を示す情報が表示される。
【０１１６】
なお、メモリ１０３に格納されたストレージステータステーブル１１３は、図８に示す接続元ストレージシステムＡ１２０の構成要素の状態を示す情報に加えて、図８では省略されている外部接続ストレージシステムＢ１３０の構成要素の状態を示す情報も含む。
【０１１７】
ポート８０１は、接続元ストレージシステムＡ１２０が備える各ＣＨＡ１２２のポートの識別子である。
【０１１８】
ＣＨＡ８０２は、接続元ストレージシステムＡ１２０が備える各ＣＨＡ１２２の識別子である。
【０１１９】
ＣＵ８０３及びＬＤＥＶ８０４は、接続元ストレージシステムＡ１２０に含まれる論理ボリュームを識別する情報である（図２参照）。
【０１２０】
ＣＨＡステータス８０５は、各ＣＨＡ１２２の状態を示す情報である。「ＯＮＬＩＮＥ」はＣＨＡ１２２が正常に動作していることを、「ＯＦＦＬＩＮＥ」はＣＨＡ１２２に障害が発生していることを示す。
【０１２１】
ポートステータス８０６は、各ＣＨＡ１２２の各ポートの状態を示す情報である。「ＯＮＬＩＮＥ」はポートが正常に動作していることを、「ＯＦＦＬＩＮＥ」はポートに障害が発生していることを示す。
【０１２２】
ＣＨＡステータス８０５又はポートステータス８０６に一つでも「ＯＦＦＬＩＮＥ」が保持される場合、図５において「ストレージ」に対応するステータス５０３が「ＯＦＦＬＩＮＥ」となる。図８の例では、ＣＨＡ１−１＿１２２Ａ及びＣＨＡ１−２＿１２２Ｂの状態が「ＯＦＦＬＩＮＥ」であり、その他のＣＨＡ１２２及びポートの状態が全て正常である。これは、図５において「ストレージ」に対応するステータス５０３が「ＯＦＦＬＩＮＥ」であること、及び、図３においてパスＩＤ「０００１」及び「０００２」に対応するステータス３１０が「ＯＦＦＬＩＮＥ」であることに対応する。
【０１２３】
図９は、本発明の実施形態の障害通知処理を示すフローチャートである。
【０１２４】
障害通知処理は、パス管理部１０８が障害を検出してから、それを管理者に通知するまでの処理である。
【０１２５】
最初に、パス管理部１０８は、パスに発生した障害を検出する（ステップ９０１）。例えば、パス管理部１０８は、実行したＩ／Ｏに対する応答としてエラーを受信した場合、障害が発生したと判定する。
【０１２６】
次に、パス管理部１０８は、パス判定処理を実行する（ステップ９０２）。パス判定処理については、後で詳細に説明する（図１０参照）。
【０１２７】
次に、パス管理部１０８は、パス判定処理の結果、代替パス（すなわち、業務ホスト１００によるＲ−ＶＯＬ１３３へのアクセスに使用可能なパス）があるか否かを判定する（ステップ９０３）。
【０１２８】
代替パスがあると判定された場合、パス管理部１０８は、代替パスを使用して業務を継続する（ステップ９０４）。
【０１２９】
次に、パス管理部１０８は、管理者に障害が発生したことを示す通知を送信する（ステップ９０５）。
【０１３０】
ステップ９０３において代替パスがないと判定された場合、パス管理部１０８は、ステップ９０４を実行せずにステップ９０５を実行する。
【０１３１】
次に、パス管理部１０８は、障害箇所判定処理を実行する（ステップ９０６）。障害箇所判定処理については、後で詳細に説明する（図１１参照）。
【０１３２】
次に、パス管理部１０８は、障害箇所判定処理の結果に基づいて、障害が発生した箇所を特定する（ステップ９０７）。
【０１３３】
次に、パス管理部１０８は、特定された障害箇所を示す通知を管理者に送信する（ステップ９０８）。
【０１３４】
以上で障害通知処理が終了する。
【０１３５】
図１０は、本発明の実施形態のパス判定処理を示すフローチャートである。
【０１３６】
図１０に示すパス判定処理は、図９に示す障害通知処理のステップ９０２において実行される。
【０１３７】
通常時（すなわち、パスに障害が発生していない場合）、業務ホスト１００はＰＡ１４０Ａを経由してＶ−ＶＯＬ１２３にアクセスすることができる。接続元ストレージシステムＡ１２０は、ＰＢ１４０Ｂを経由してＲ−ＶＯＬ１３３にアクセスすることができる。この場合、業務ホスト１００によるデータの書き込み及び読み出しは、ＰＡ１４０Ａ、Ｖ−ＶＯＬ１２３及びＰＢ１４０Ｂを経由して、Ｒ−ＶＯＬ１３３に対して実行される。
【０１３８】
さらに、業務ホスト１００は、ＰＣ１５１Ａを介して接続元ストレージシステムＡ１２０の各ＣＨＡ１２２及び各ポート等の状態を確認し、ＰＤ１５１Ｂを介して外部接続ストレージシステムＢ１３０の各ＣＨＡ１３２及び各ポート等の状態を確認する。そして、パス管理部１０８は、いずれかの部位に発生した障害を検出すると、パス判定処理を実行して、使用するパスを選択する。
【０１３９】
最初に、パス管理部１０８は、フラグＰＡの値を「０」にする（ステップ１００１）。フラグＰＡは、ＰＡ１４０Ａに障害が発生しているか否かを示すフラグである。図１０の例において、フラグＰＡの値「０」はＰＡ１４０Ａに障害が発生していないことを、値「１」はＰＡ１４０Ａに障害が発生していることを示す。
【０１４０】
次に、パス管理部１０８は、ＰＡ１４０Ａを経由するＶ−ＶＯＬ１２３へのアクセスを実行し、そのアクセスが成功したか否かを判定する（ステップ１００２）。具体的には、例えば、パス管理部１０８は、ＰＡ１４０Ａを経由してＶ−ＶＯＬ１２３へ所定のＩ／Ｏコマンドを送信してもよい。そのコマンドに対する応答を所定の時間内に受信できなかった場合、パス管理部１０８は、ＰＡ１４０Ａを経由するＶ−ＶＯＬ１２３へのアクセスに失敗したと判定してもよい。なお、後述するステップ１００３、１００８及び１００４もこれと同様の方法によって実行することができる。
【０１４１】
ステップ１００２においてアクセスに失敗したと判定された場合、パス管理部１０８は、ＰＡ１４０Ａに障害が発生していると判定して、フラグＰＡの値を「１」に変更する（ステップ１００７）。
【０１４２】
次に、パス管理部１０８は、ＰＣ１５１Ａを経由するＶ−ＶＯＬ１２３へのアクセスを実行し、そのアクセスが成功したか否かを判定する（ステップ１００８）。
【０１４３】
ステップ１００８においてアクセスに成功したと判定された場合、ＰＡ１４０Ａには障害が発生しているが、ＰＣ１５１Ａ及び接続元ストレージシステムＡ１２０は正常に動作している。ステップ１００２においてアクセスに成功したと判定された場合、ＰＡ１４０Ａ及び接続元ストレージシステムＡ１２０のいずれも正常に動作している。これらの場合、パス管理部１０８は、ＰＢ１４０Ｂを経由するＲ−ＶＯＬ１３３へのアクセスを実行し、そのアクセスに成功したか否かを判定する（ステップ１００３）。
【０１４４】
ただし、ステップ１００８においてアクセスに成功したと判定された後にステップ１００３が実行される場合、ＰＣ１５１Ａ及びＰＢ１４０Ｂを経由するアクセスが実行される。一方、ステップ１００２においてアクセスに成功したと判定された後にステップ１００３が実行される場合、ＰＡ１４０Ａ及びＰＢ１４０Ｂを経由するアクセスが実行される。
【０１４５】
ステップ１００３においてアクセスに成功したと判定された場合、少なくともＰＢ１４０Ｂ及び外部接続ストレージシステムＢ１３０は正常に動作している。この場合、パス管理部１０８は、フラグＰＡの値が「０」であるか否か（すなわち、ＰＡ１４０Ａが正常であるか否か）を判定する（ステップ１００９）。
【０１４６】
ステップ１００９においてフラグＰＡの値が「０」であると判定された場合、結局、パス管理部１０８は、全パス及び全ストレージシステムが正常であると判定する（ステップ１０１０）。この場合、パス管理部１０８は、使用可能なパスとしてＰＡ１４０Ａ及びＰＢ１４０Ｂを選択し（ステップ１０１１）、パス判定処理を終了する。
【０１４７】
ステップ１００９においてフラグＰＡの値が「１」であると判定された場合、全ストレージシステム、ＰＣ１５１Ａ及びＰＢ１４０Ｂが正常であるが、ＰＡ１４０Ａに障害が発生していると判定される（ステップ１０１２）。この場合、パス管理部１０８は、使用可能なパスとしてＰＣ１５１Ａ及びＰＢ１４０Ｂを選択し（ステップ１０１３）、パス判定処理を終了する。
【０１４８】
ステップ１００３においてアクセスに失敗したと判定された場合、ＰＢ１４０Ｂ及び外部接続ストレージシステムＢ１３０の少なくとも一つに障害が発生していると考えられる。ステップ１００８においてアクセスに失敗したと判定された場合、ＰＣ１５１Ａ、接続元ストレージシステムＡ１２０、ＰＢ１４０Ｂ及び外部接続ストレージシステムＢ１３０の少なくとも一つに障害が発生していると考えられる。これらの場合、パス管理部１０８は、ＰＤ１５１Ｂを経由するＲ−ＶＯＬ１３３へのアクセスを実行し、そのアクセスに成功したか否かを判定する（ステップ１００４）。
【０１４９】
ステップ１００４においてアクセスに失敗したと判定された場合、パス管理部１０８は、外部接続ストレージシステムＢ１３０及びＰＤ１５１Ｂの少なくとも一方に障害が発生していると判定する（ステップ１００５）。この場合、パス管理部１０８は、使用可能なパスが存在しないと判定して（ステップ１００６）、パス判定処理を終了する。
【０１５０】
ステップ１００４においてアクセスに成功したと判定された場合、外部接続ストレージシステムＢ１３０及びＰＤ１５１Ｂが正常に動作している。この場合、パス管理部１０８は、フラグＰＡの値が「０」であるか否かを判定する（ステップ１０１４）。
【０１５１】
フラグＰＡの値が「０」であると判定された場合、パス管理部１０８は、ＰＢ１４０Ｂに障害が発生していると判定する（ステップ１０１５）。この場合、パス管理部１０８は、使用可能なパスとしてＰＤ１５１Ｂを選択し（ステップ１０１６）、パス判定処理を終了する。
【０１５２】
フラグＰＡの値が「１」であると判定された場合、パス管理部１０８は、ＰＡ１４０Ａ及びＰＢ１４０Ｂに障害が発生していると判定する（ステップ１０１７）。この場合、パス管理部１０８は、使用可能なパスとしてＰＤ１５１Ｂを選択し（ステップ１０１８）、パス判定処理を終了する。
【０１５３】
図１１は、本発明の実施形態の障害箇所判定処理を示すフローチャートである。
【０１５４】
図１１に示す障害箇所判定処理は、図９に示す障害通知処理のステップ９０６において実行される。
【０１５５】
最初に、パス管理部１０８は、ＨＢＡステータステーブル処理を開始する（ステップ１１０１）。ＨＢＡステータステーブル処理とは、ＨＢＡステータステーブル１１１を更新する処理（具体的には、続くステップ１１０２及び１１０３の処理）である。
【０１５６】
次に、パス管理部１０８は、各ＨＢＡ１０４のステータスを確認する（ステップ１１０２）。具体的には、パス管理部１０８は、例えば所定のコマンドを各ＨＢＡ１０４に送信し、そのコマンドに対する応答を所定の時間内に受信しなかった場合、ＨＢＡ１０４のステータスが「ＯＦＦＬＩＮＥ」であると判定してもよい。あるいは、そのコマンドに対して、ＨＢＡ１０４に障害が発生したことを示す応答を受信した場合、パス管理部１０８は、そのＨＢＡ１０４のステータスが「ＯＦＦＬＩＮＥ」であると判定してもよい。
【０１５７】
次に、パス管理部１０８は、ステップ１１０２において確認されたステータスを反映させるように、ＨＢＡステータステーブル１１１を更新する（ステップ１１０３）。
【０１５８】
さらに、パス管理部１０８は、スイッチステータステーブル処理を開始する（ステップ１１０４）。スイッチステータステーブル処理とは、スイッチステータステーブル１１２を更新する処理（具体的には、続くステップ１１０５及び１１０６の処理）である。
【０１５９】
次に、パス管理部１０８は、各ＦＣスイッチ（図４の例ではＦＣスイッチ４０１Ａ及び４０１Ｂ）のステータスを確認する（ステップ１１０５）。例えば、パス管理部１０８は、第３ネットワーク１５０を経由して所定のコマンドを各ＦＣスイッチに送信し、そのコマンドに対する応答に基づいて、ステップ１１０２と同様に判定してもよい。
【０１６０】
次に、パス管理部は、ステップ１１０５において確認されたステータスを反映させるように、スイッチステータステーブル１１２を更新する（ステップ１１０６）。
【０１６１】
さらに、パス管理部１０８は、ストレージステータステーブル処理を開始する（ステップ１１０７）。ストレージステータステーブル処理とは、ストレージステータステーブル１１３を更新する処理（具体的には、続くステップ１１０８及び１１０９の処理）である。
【０１６２】
次に、パス管理部１０８は、各ストレージシステム（図１の例では接続元ストレージシステムＡ１２０及び外部接続ストレージシステムＢ１３０）のステータスを確認する（ステップ１１０８）。例えば、パス管理部１０８は、第３ネットワーク１５０を経由して所定のコマンドを各ストレージシステムに送信し、そのコマンドに対する応答に基づいて、ステップ１１０２と同様に判定してもよい。
【０１６３】
次に、パス管理部１０８は、ステップ１１０８において確認されたステータスを反映させるように、ストレージステータステーブル１１３を更新する（ステップ１１０９）。
【０１６４】
図１１は、上記のＨＢＡステータステーブル処理、スイッチステータステーブル処理及びストレージステータステーブル処理が並列に実行される例を示す。しかし、これらの処理は順次実行されてもよい。例えば、最初にステップ１１０１から１１０３が実行され、次にステップ１１０４から１１０６が実行され、次にステップ１１０７から１１０９が実行されてもよい。
【０１６５】
次に、パス管理部１０８は、全てのステータステーブルの更新が終了したか否かを判定する（ステップ１１１０）。
【０１６６】
ステップ１１１０において更新が終了していないと判定された場合、パス管理部１０８は、更新の終了を待つ。
【０１６７】
ステップ１１１０において更新が終了したと判定された場合、パス管理部１０８は、更新された内容を反映させるようにステータス管理テーブル１１０を更新する（ステップ１１１１）。
【０１６８】
次に、パス管理部１０８は、更新されたステータス管理テーブル１１０に基づいてパス管理テーブル１０９を更新する（ステップ１１１２）。
【０１６９】
以上で障害箇所判定処理が終了する。
【０１７０】
図１０に示す処理において、図１２に示すテーブルが参照されてもよい。具体的には、図１０に示す処理において、障害が発生したパスが特定された後（すなわち、ステップ１０１０、１０１２、１０１７及び１０１５の後）、図１２に示すテーブルが参照され、使用可能なパスが選択されてもよい。
【０１７１】
図１２は、本発明の実施形態のアクセス経路判定テーブル１１４の説明図である。
【０１７２】
アクセス経路判定テーブル１１４の各行（行１２１１〜行１２２６）は、本実施形態の計算機システムにおいてデータアクセスに使用されるパスと、そのパスに障害が発生した場合に使用されるパス（すなわち代替パス）とを対応付ける情報を保持する。具体的には、アクセス経路判定テーブル１１４は、障害箇所１２０１及びアクセス経路１２０２を含む。
【０１７３】
障害箇所１２０１は、障害が発生したパスを識別する情報である。例えば、障害箇所１２０１に保持された値「ＰＡ」はＰＡ１４０Ａを（行１２１４参照）、「ＰＡ１」はＰＡ１＿１４１Ａを識別する情報である（行１２１２参照）。
【０１７４】
アクセス経路１２０２は、障害箇所１２０１によって識別されるパスに障害が発生した場合に使用される代替パスを識別する情報である。例えば、「ＰＡ→Ｖ−ＶＯＬ→ＰＢ→Ｒ−ＶＯＬ」は、業務ホスト１００からＰＡ１４０Ａ、Ｖ−ＶＯＬ１２３及びＰＢ１４０Ｂを経由してＲ−ＶＯＬ１３３に至るパスを識別する情報である（行１２１１参照）。なお、空の障害箇所１２０１に対応するアクセス経路１２０２は、いずれのパスにも障害が発生していない場合に使用されるパスを識別する情報である。
【０１７５】
以下、行１２１１から行１２２６のうちいくつかを例として説明する。
【０１７６】
行１２１１の障害箇所１２０１は空であり、行１２１１のアクセス経路１２０２は「ＰＡ→Ｖ−ＶＯＬ→ＰＢ→Ｒ−ＶＯＬ」である。これは、いずれのパスにも障害が発生していない場合、業務ホスト１００からＰＡ１４０Ａ、Ｖ−ＶＯＬ１２３及びＰＢ１４０Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。これは、図１０のステップ１０１１に相当する。
【０１７７】
行１２１２の障害箇所１２０１及びアクセス経路１２０２は、それぞれ、「ＰＡ１」及び「ＰＡ２→Ｖ−ＶＯＬ→ＰＢ→Ｒ−ＶＯＬ」である。これは、ＰＡ１＿１４１Ａに障害が発生した場合、代替パスとして、業務ホスト１００からＰＡ２＿１４１Ｂ、Ｖ−ＶＯＬ１２３及びＰＢ１４０Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。これは、ＰＡ１４０Ａの少なくとも一部が使用可能であるため、図１０のステップ１０１１に相当する。
【０１７８】
行１２１４の障害箇所１２０１及びアクセス経路１２０２は、それぞれ、「ＰＡ」及び「ＰＣ→Ｖ−ＶＯＬ→ＰＢ→Ｒ−ＶＯＬ」である。これは、ＰＡ１４０Ａ（すなわち、ＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂの両方）に障害が発生した場合、代替パスとして、業務ホスト１００からＰＣ１５１Ａ、Ｖ−ＶＯＬ１２３及びＰＢ１４０Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。これは、図１０のステップ１０１３に相当する。
【０１７９】
行１２１７の障害箇所１２０１及びアクセス経路１２０２は、それぞれ、「ＰＢ」及び「ＰＤ→Ｒ−ＶＯＬ」である。これは、ＰＢ１４０Ｂ（すなわち、ＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄの両方）に障害が発生した場合、代替パスとして、業務ホスト１００からＰＤ１５１Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。これは、図１０のステップ１０１６に相当する。
【０１８０】
行１２２６の障害箇所１２０１及びアクセス経路１２０２は、それぞれ、「ＰＢ／ＰＢ」及び「ＰＤ→Ｒ−ＶＯＬ」である。これは、ＰＡ１４０Ａ（すなわち、ＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂの両方）及びＰＢ１４０Ｂ（すなわち、ＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄの両方）に障害が発生した場合、代替パスとして、業務ホスト１００からＰＤ１５１Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。これは、図１０のステップ１０１８に相当する。
【０１８１】
結局、パス判定処理（図１０）及びアクセス経路判定テーブル１１４（図１２）によれば、使用可能なパスと、それらのパスが使用可能である場合に優先的に使用されるべきパスとが対応付けられる。具体的には、ＦＣネットワーク上のパス及びＩＰネットワーク上のパスの両方が使用可能である場合、原則として、ＦＣネットワーク上のパスが優先的に使用される。
【０１８２】
図１０の例では、ＰＡ１４０Ａに含まれる複数のパス（図１の例ではＰＡ１＿１４１Ａ及びＰＡ２＿１４１Ｂ）のうち少なくとも一つが使用可能である限り、代替パスは使用されない。ＰＢ１４０Ｂについても同様である。しかし、これらの複数のパスのうち、使用可能なパスの数が所定の値以下となった場合、まだ使用可能なパスと併せて代替パスが使用されてもよい。
【０１８３】
例えば、ＰＢ１４０Ｂに含まれる複数のパス（図１の例ではＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄ）のうち使用可能なパスの数が１以下となった（言い換えると２より小さくなった）場合、代替パスとしてＰＤ１５１Ｂが使用されてもよい。まだＰＢ１＿１４１Ｃ及びＰＢ２＿１４１Ｄのうち一方が使用可能である場合、その使用可能なパスを含む、業務ホスト１００からＲ−ＶＯＬ１３３に至るパスと、ＰＤ１５１Ｂを含むパスとの両方が使用される。
【０１８４】
例えば、行１２１５の障害箇所１２０１及びアクセス経路１２０２は、それぞれ、「ＰＢ１」及び「ＰＡ→Ｖ−ＶＯＬ→ＰＢ２／ＰＤ→Ｒ−ＶＯＬ」である。これは、ＰＢ１＿１４１Ｃに障害が発生した場合、代替パスとして、業務ホスト１００からＰＡ１４０Ａ、Ｖ−ＶＯＬ１２３及びＰＢ２＿１４１Ｄを経由してＲ−ＶＯＬ１３３に至るパス、及び、業務ホスト１００からＰＤ１５１Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用されることを示す。
【０１８５】
複数のパスのうち一部に障害が発生した場合、残りの使用可能なパスにアクセス負荷が集中することによって、性能が低下する場合がある。しかし、上記のように、ＦＣネットワークの使用可能なパスとＩＰネットワークの代替パスとを併用し、それらのパスにアクセス負荷を分散させることによって、障害に起因する性能低下の発生を抑制することができる。
【０１８６】
ユーザは、上記のようにＦＣネットワークのパスとＩＰネットワークのパスとの併用を許可するか否かを、例えば、図１３に示す画面を用いて選択することができる。
【０１８７】
具体的には、上記のように業務ホスト１００からＰＡ１４０Ａ、Ｖ−ＶＯＬ１２３及びＰＢ２＿１４１Ｄを経由してＲ−ＶＯＬ１３３に至るパス、及び、業務ホスト１００からＰＤ１５１Ｂを経由してＲ−ＶＯＬ１３３に至るパスが使用される場合、業務ホストは、Ｖ−ＶＯＬ１２３への複数のアクセス要求の一部をＲ−ＶＯＬ１３３へのアクセス要求に変換する。そして、業務ホスト１００は、Ｖ−ＶＯＬ１２３へのアクセス要求を、ＰＡ１４０Ａを経由してＶ−ＶＯＬ１２３に送信し、変換されたアクセス要求を、ＰＤ１５１Ｂを経由してＲ−ＶＯＬ１３３に送信する。
【０１８８】
図１３は、本発明の実施形態の表示装置１１５に表示されるパス優先設定画面１３００の説明図である。
【０１８９】
パス優先設定画面１３００は、ＦＣネットワークのパスとＩＰネットワークのパスとの併用を許可するか否かを指定する入力を受け付けるために表示される。具体的には、パス優先設定画面１３００は、選択タブ１３０１、ＦＣ優先ボタン１３０２、ＦＣ／ｉＳＣＳＩ併用ボタン１３０３及びパス数入力フィールド１３０４を含む。
【０１９０】
選択タブ１３０１は、表示されるべき画面を選択するために指定されるタブである。本実施形態では、ＰＡ１４０Ａ及びＰＢ１４０Ｂのそれぞれについて、ＦＣネットワークのパスとＩＰネットワークのパスとの併用を許可するか否かを指定することができる。例えば、ユーザが選択タブ１３０１のうち「ＰＡ」を選択した場合、ＰＡ１４０Ａの使用可能なパスとＩＰネットワークのパス（例えばＰＣ１５１Ａ）との併用を許可するか否かを指定するための画面が表示される。図１３は、「ＰＡ」が選択された場合を示す。
【０１９１】
ＦＣ優先ボタン１３０２及びＦＣ／ｉＳＣＳＩ併用ボタン１３０３は、それらのうち一方が選択される、いわゆるラジオボタンである。
【０１９２】
ＦＣ優先ボタン１３０２が操作（例えばマウスによってクリック）された場合、ＦＣネットワークのパスとＩＰネットワークのパスとの併用が禁止される。すなわち、この場合、例えばＰＡ１４０Ａに使用可能なパスが一つでも含まれる限り、ＰＡ１４０ＡとＩＰネットワークのパス（例えばＰＣ１５１Ａ）とを併用することができない。
【０１９３】
一方、ＦＣ／ｉＳＣＳＩ併用ボタン１３０３が操作された場合、ＦＣネットワークのパスとＩＰネットワークのパスとの併用が許可される。ユーザは、さらに、パス数入力フィールド１３０４に任意のパス数を入力することができる。ＦＣネットワークのパス数がパス数入力フィールド１３０４に入力された数以下となった場合、ＦＣネットワークのパスとＩＰネットワークのパスとが併用される。
【０１９４】
例えば、図１３の例では、ＦＣ／ｉＳＣＳＩ併用ボタン１３０３が操作され、さらに、パス数入力フィールド１３０４に「１」が入力されている。この例では、ＰＡ１４０Ａに含まれる使用可能なパス数が「１」以下になった場合、ＰＡ１４０Ａと、ＩＰネットワークの代替パス（例えばＰＣ１５１Ａ）とが併用される。
【０１９５】
図１２は、図１３の画面において、ＰＡ１４０ＡついてはＦＣ優先ボタン１３０２が操作され、ＰＢ１４０ＢについてはＦＣ／ｉＳＣＳＩ併用ボタン１３０３が操作され、パス数入力フィールド１３０４に「１」が入力されている場合の例を示す。
【０１９６】
なお、接続元ストレージシステムＡ１２０のコントローラ１２１がキャッシュメモリ１２４を備え、そのキャッシュメモリ１２４に格納されたデータがＲ−ＶＯＬ１３３に格納される前にＰＢ１４０Ｂに障害が発生した場合、業務ホスト１００がそのキャッシュメモリ１２４に格納されたデータ（すなわち最新のデータ）を利用できなくなる可能性がある。
【０１９７】
通常、キャッシュメモリ１２４が使用される場合、書き込みを要求されたデータのキャッシュメモリ１２４への格納が終了すると、そのデータがまだＶ−ＶＯＬ１２３（すなわちそれに対応するＲ−ＶＯＬ１３３）に格納されていなくても、接続元ストレージシステムＡ１２０は業務ホスト１００に書き込み処理の終了報告を送信する。その後、そのデータがＲ−ＶＯＬ１３３に格納される前にＰＢ１４０Ｂに障害が発生した場合、業務ホスト１００はそのデータがまだＲ−ＶＯＬ１３３に格納されていないことを知ることができないため、キャッシュメモリ１２４に格納された最新のデータをＲ−ＶＯＬ１３３に反映させることができない。業務ホスト１００からＲ−ＶＯＬ１３３に至る代替パスは、接続元ストレージシステムＡ１２０を経由しないため、業務ホスト１００はキャッシュメモリ１２４にアクセスすることができない。このため、業務ホスト１００は、キャッシュメモリ１２４に格納された最新のデータを利用することができない。
【０１９８】
本実施形態では、上記のような問題の発生を防ぐため、ＰＢ１４０Ｂについては必ずＦＣネットワークとＩＰネットワークの併用が許可される。具体的には、例えば、図１３の画面において、「ＰＢ」の選択タブ１３０１が選択された場合、自動的にＦＣ／ｉＳＣＳＩ併用ボタン１３０３が操作され、ＦＣ優先ボタン１３０２の操作が禁止されてもよい。
【０１９９】
図１４は、本発明の実施形態のデータの整合性を示すフローチャートである。
【０２００】
例えば、ＰＢ１４０Ｂに含まれる複数パスの少なくとも一つに障害が発生（ステップ１４０１）した場合、業務ホスト１００は、ＰＢ１４０Ｂにて生存しているパス（すなわち、障害が発生していない、使用可能なパス）の数ＳＰを検出する（ステップ１４０２）。
【０２０１】
次に、業務ホスト１００は、ＦＣ／ｉＳＣＳＩ併用ボタン１３０３にてパス数入力フィールド１３０４に入力されたパス数ＰＮｕｍを確認する（ステップ１４０３）。ここでは、パス数ＰＮｕｍが「１」である場合を例として説明する。
【０２０２】
次に、業務ホスト１００は、生存しているパス数ＳＰとパス数入力フィールド１３０４に入力されたパス数ＰＮｕｍを比較する（ステップ１４０４）。
【０２０３】
生存しているパス数ＳＰがパス数ＰＮｕｍより大きい場合、代替パスへの負荷分散を実行せずに、図１４のフローが終了する。この場合、生存しているパスを使用して業務が継続される。
【０２０４】
一方、生存しているパス数ＳＰがパス数ＰＮｕｍ以下である場合、業務ホスト１００は、第３ネットワーク１５０の代替パス（例えばＰＤ１５１Ｂ）を使用して、ＰＢ１４０Ｂの使用可能なパスと代替パスとの間でアクセス負荷分散させる（ステップ１４０５）。
【０２０５】
さらに業務ホスト１００は、キャッシュメモリ１２４に格納されたデータのうち、少なくとも、まだＶ−ＶＯＬ１２３（すなわちそれに対応するＲ−ＶＯＬ１３３）に格納されていないデータをＶ−ＶＯＬ１２３に格納することを接続元ストレージシステムＡ１２０に指示する。接続元ストレージシステムＡ１２０は、その指示に従って、キャッシュメモリ１２４に格納されたデータをＶ−ＶＯＬ１２３に対応するＲ−ＶＯＬ１３３に格納する（ステップ１４０６）。
【０２０６】
接続元ストレージシステムＡ１２０は、ステップ１４０６におけるＲ−ＶＯＬ１３３への書き込みが成功したか否かを判定する（ステップ１４０７）。Ｒ−ＶＯＬ１３３に書き込みが成功した場合、接続元ストレージシステムＡ１２０は、業務ホスト１００に完了通知を送信する（ステップ１４０８）。一方、書き込みに失敗した場合、接続元ストレージシステムＡ１２０は、ＰＢ１４０Ｂに含まれる全パスに障害が発生したものと判定し、業務ホスト１００にエラーを通知する（ステップ１４０９）。業務ホスト１００は、エラーを検知すると、代替パスを経由してＲ−ＶＯＬ１３３への書き込みを実行する（ステップ１４１０）。このため、最新のデータをＲ−ＶＯＬ１３３に反映することができ、その後も代替パスを使用して業務を継続することができる。
【０２０７】
上記のようにＲ−ＶＯＬ１３３への格納が終了するまで接続元ストレージシステムＡ１２０が終了報告を送信しない場合、アクセス性能が低下する。しかし、代替パス（例えばＰＤ１５１Ｂ）に負荷を分散させることによって、アクセス性能の低下を抑制することができる。
【０２０８】
以上、本発明の実施形態によれば、業務ホストから、実際にデータが格納されるＲ−ＶＯＬ１３３までの間のＦＣネットワークのパスに障害が発生しても、補助用のパス（例えばＩＰネットワークのパス）を使用して業務を継続することができる。その結果、業務の停止が防止される。さらに、ＦＣネットワークのパスと補助用のパスとを併用し、それらのパスにアクセス負荷を分散させることによって、ＦＣネットワークのパスの一部に障害が発生した場合の性能低下が抑制される。さらに、本発明の実施形態によれば、障害が発生した箇所を特定することができる。
【図面の簡単な説明】
【０２０９】
【図１】本発明の実施形態の計算機システムの構成を示すブロック図である。
【図２】本発明の実施形態のＬＵマッピング管理部による記憶領域の割り当ての説明図である。
【図３】本発明の実施形態のパス管理テーブルの説明図である。
【図４】本発明の実施形態において設定されたパスの詳細な説明図である。
【図５】本発明の実施形態のステータス管理テーブルの説明図である。
【図６】本発明の実施形態のＨＢＡステータステーブルの説明図である。
【図７】本発明の実施形態のスイッチステータステーブルの説明図である。
【図８】本発明の実施形態のストレージステータステーブルの説明図である。
【図９】本発明の実施形態の障害通知処理を示すフローチャートである。
【図１０】本発明の実施形態のパス判定処理を示すフローチャートである。
【図１１】本発明の実施形態の障害箇所判定処理を示すフローチャートである。
【図１２】本発明の実施形態のアクセス経路判定テーブルの説明図である。
【図１３】本発明の実施形態の表示装置に表示されるパス優先設定画面の説明図である。
【図１４】本発明の実施形態のデータの整合性の説明図である。
【符号の説明】
【０２１０】
１００  業務ホスト
１０２  ＣＰＵ
１０３  メモリ
１０６  アプリケーション
１０７  ＬＵマッピング管理部
１０８  パス管理部
１０９  パス管理テーブル
１１０  ステータス管理テーブル
１１１  ＨＢＡステータステーブル
１１２  スイッチステータステーブル
１１３  ストレージステータステーブル
１１４  アクセス経路判定テーブル
１２０  接続元ストレージＡ
１２１、１３１  コントローラ
１２３  Ｖ−ＶＯＬ
１３０  外部接続ストレージＢ
１３３  Ｒ−ＶＯＬ
【図１】
0004738438.tif 000002
【図２】
0004738438.tif 000003
【図３】
0004738438.tif 000004
【図４】
0004738438.tif 000005
【図５】
0004738438.tif 000006
【図６】
0004738438.tif 000007
【図７】
0004738438.tif 000008
【図８】
0004738438.tif 000009
【図９】
0004738438.tif 000010
【図１０】
0004738438.tif 000011
【図１１】
0004738438.tif 000012
【図１２】
0004738438.tif 000013
【図１３】
0004738438.tif 000014
【図１４】
0004738438.tif 000015