(57)【要約】【課題】  物理的ケーブル接続の結果として、ストレージシステムの多数のポートとホストコンピュータ及び／又はスイッチの間の多数の接続を管理することが困難になってきた。ケーブルを誤ってクロス接続することはよく起きることだが、クロス接続を見つけることは困難である。これは解決を要する課題である。【解決手段】  多数の入出力インターフェースポートを持つストレージシステムは、ポートでの失敗した交信状態を検出可能である。本ストレージシステムは、やはり交信に失敗した他のポートの構成を使用して交信テストを実行する。この交信が成立すれば、本ポートは、この他のポートの構成を用いて再構成される。  本発明により、ストレージシステムは自分の(障害中)ポートでの障害通信状態を検出することができる。ストレージシステムは、他の障害ポートのポート構成情報を使用して、障害ポートの再構成を試行することができる。【選択図】図１
2005327271.tif 000002
【特許請求の範囲】
【請求項１】
第一記憶領域に結合される第一ポートと第二記憶領域に結合される第二ポートとを有し、時刻Ｔに於いて、前記第一ポートは第一ネットワークを通して一つ以上の第一デバイスとデータ交信を行い、前記第二ポートは第二ネットワークを通して一つ以上の第二デバイスとデータ交信を行うストレージシステムに於いて、
前記第一ポートが前記一つ以上の第一デバイスとデータ交信していないことを判定する第一ステップと、
前記第二ポートが前記一つ以上の第二デバイスとデータ交信していないことを判定する第二ステップと、
前記第一ポートと前記第二デバイスの一つとの間でデータ交信していることを判定し、前記第一ポートを前記第二記憶領域に結合する、第三ステップと、
から成り、
前記第一判定ステップでは、前記第一ポートと前記第一デバイスの少なくとも一つとの間の交信テストを一回以上実施し、
前記第二判定ステップでは、前記第二ポートと前記第二デバイスの少なくとも一つとの間の交信テストを一回以上実施する、
ことを特徴とする、時刻Ｔに引き続いて実行される方法。
【請求項２】
前記第一判定ステップと第二判定ステップでの前記交信テストは、自動的に定期的に実行されることを特徴とする請求項１の方法。
【請求項３】
前記結合ステップはボリュームマッピング操作であることを特徴とする請求項１の方法。
【請求項４】
前記結合ステップはファイバチャネルスイッチでのゾーン分割操作であることを特徴とする請求項１の方法。
【請求項５】
前記第一ポートは第一構成情報を持ち、前記第一判定ステップは該第一構成情報で定義される前記第一ポートで実施され、前記第二ポートは第二構成情報を持ち、前記第二判定ステップは該第二構成情報で定義される前記第二ポートで実施される、ことを特徴とする請求項１の方法。
【請求項６】
前記第三判定ステップでは、前記第二構成情報を使用して前記第一ポートを再構成し、前記結合ステップでは、前記第一ポートに前記第二構成情報を割り当て、前記第一ポートが前記第二構成情報を持つ、ことを特徴とする請求項５の方法。
【請求項７】
前記結合ステップは前記第一構成情報を前記第二ポートに割り当てることをさらに含むことを特徴とする請求項６の方法。
【請求項８】
前記第一構成情報と第二構成情報は、各々ポートＩＰ(インタネットプロトコル)アドレスを持つことを特徴とする請求項６の方法。
【請求項９】
前記第一構成情報は更に前記第一デバイスの一つのデバイスＩＰ（インタネットプロトコル）アドレスを持ち、前記第二構成情報は更に前記第二デバイスの一つのデバイスＩＰ（インタネットプロトコル）アドレスを持つ、ことを特徴とする請求項６の方法。
【請求項１０】
各々ストレージシステムでのストレージ領域に結合し、対応するネットワーク上でデータ交信を行う複数のポートを有するストレージシステムに於いて、
前記対応するネットワーク上でアクセス可能な少なくとも一台のデバイスにメッセージを交信し、該交信結果がＯＫか非ＯＫになったかを判定する、交信テストを各ポート上で一回以上実施するステップと、
非ＯＫ交信結果になった各対象ポートに対して、
非ＯＫ交信結果になった候補ポートに対応するネットワーク上でアクセス可能な少なくとも一台のデバイスに対して、前記対象ポートからメッセージを交信するステップを、
前記交信結果がＯＫ結果であれば、前記候補ポートのストレージ領域を前記対象ポートに結合するステップを、
実行するステップと、
からなることを特徴とする方法。
【請求項１１】
前記結合ステップはボリュームマッピング操作を行うことを含むことを特徴とする請求項１０の方法。
【請求項１２】
前記結合ステップはゾーン分割操作を行うことを含むことを特徴とする請求項１０の方法。
【請求項１３】
非ＯＫ交信結果を生じた各対象ポートに対して、前記交信ステップを実施する前に、前記候補ポートの交信構成情報で前記対象ポートを再構成するステップを、更に含むことを特徴とする請求項１０の方法。
【請求項１４】
各ポートは交信構成情報を持ち、前記一回以上の交信テストの実行ステップは、自らの交信構成情報で定義される各ポートで実行され、非ＯＫ交信結果を持つ各対象ポートに対して、前記交信ステップを実施する前に、前記候補ポートが持つ交信構成情報で前記対象ポートを再構成するステップを、更に含むことを特徴とする請求項１０の方法。
【請求項１５】
前記結合ステップは、更に、前記交信構成情報を前記対象ポートと前記候補ポートとの間で交換するステップを含むことを特徴とする請求項１４の方法。
【請求項１６】
前記交信構成情報がポートＩＰアドレスとデバイスＩＰアドレスを持つことを特徴とする請求項１４の方法。
【請求項１７】
交信の為のデバイスアドレスを持つデバイスに接続する複数のポートを備えるストレージデバイスに於いて、
各ポートとそれが接続するデバイスとの間にデータ交信パスが存在することを示す少なくとも第一状態と、各ポートとそれが接続するデバイスとの間のデータ交信パスの不在を示す第二状態の内の、何れかを示す交信状態を、各ポートについて判定するステップと、
交信状態が第二状態である第一ポートに対して、
その交信状態が第二状態であるもう一つのぽーとを候補ポートとして指定するステップと、
前記第一ポートから、前記候補ポートが持つ前記デバイスのデバイスアドレスを使用して、交信テストを実施するステップと、
前記交信テストの結果が成功であれば、前記第一ポートに前記候補ポートのデバイスを結合し、前記第一ポートの交信状態を前記第一状態に更新するステップと、
前記交信テストの結果が不成功であれば、前記候補ポートの指定と実行のステップを繰り返すステップと、
からなることを特徴とする、ストレージデバイスを操作する方法。
【請求項１８】
前記判定ステップでは、各ポートから接続先デバイスにＰＩＮＧ動作を実行するステップをさらに含んでいることを特徴とする請求項１７の方法。
【請求項１９】
前記判定ステップでは、各ポートから接続先デバイスにブロードキャスト動作を実行するステップをさらに含んでいることを特徴とする請求項１７の方法。
【請求項２０】
各ポートは、更に、前記ストレージデバイスのストレージボリュームに結合し、前記交信テストの結果が成功であれば、更に前記第一ポートに前記候補ポートのストレージボリュームを結合する、ことを特徴とする請求項１７の方法。
【請求項２１】
複数のストレージ領域と、
各々が前記ストレージ領域の一つに結合し、各々が他のポートとは異なるネットワークに結合する複数のポートと、
前記各ポートから、該ポートが結合するネットワークからアクセスできるデバイスへ、メッセージを交信し、ＯＫ又は非ＯＫの結果を生成するステップと、
ＯＫ結果と非ＯＫ結果を生成したポートを特定するステップと、
非ＯＫ結果を生成した各第一ポートに対して、
非ＯＫ結果を生成した候補ポートを指定して、
前記第一ポートから、前記候補ポートが接続するネットワーク上のデバイスに対して、メッセージを交信し、更に
前記交信結果がＯＫ結果であれば、前記候補ポートのネットワークと前記第一ポートを結合し、前記候補ポートの前記ストレージ領域を前記第一ポートに結合する、
ステップを実行するステップと、
を実行するノード管理機能と、
を備えることを特徴とするストレージシステム。
【請求項２２】
各ポートは更に構成情報を持ち、
前記ノード管理機能では、前記第一ポートを前記候補ポートの構成情報を用いて構成するステップを更に実行し、前記候補ポートのネットワークを前記第一ポートに結合するステップは、前記候補ポートの構成情報を前記第一ポートに割り当てるステップである、ことを特徴とする請求項２１のストレージシステム。
【請求項２３】
前記ノード管理機能では、更に、前記第一ポートの構成情報を前記候補ポートに割り当てるステップを実行し、これにより、前記第一ポートと前記候補ポートの構成情報は交換される、ことを特徴とする請求項２２のストレージシステム。
【請求項２４】
前記構成情報には、該構成情報を持つポートを識別するポートＩＰアドレスとデバイスＩＰアドレスが含まれる、ことを特徴とする請求項２２のストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
01  本発明はストレージシステムに関連し、具体的には、ストレージシステムが複数のネットワークに接続されている環境での構成を含めて、ストレージシステムの設定を自動化することに関連する。
【背景技術】
【０００２】
02  データ統合の最近の傾向により、大企業のストレージシステムやミッドレンジのストレージシステムは、より多数の入出力ポートを備えてきている。大きなストレージシステムは二桁の数の入出力ポートを備えている。このような多数のポートにより、ビジネス、教育施設、病院等の殆どの稼働環境で、多数のホストコンピュータへの接続性が向上している。
【０００３】
03  多様な物理的接続形態が年を追って登場してきている。ホストコンピュータは、ストレージシステムの入出力ポートに直接接続可能である。入出力ポートの幾つかは通信ネットワークに接続され、ホストコンピュータは本ネットワークを通してストレージデバイスにアクセスできる。このようなネットワークには、ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等が含まれる。典型的には、ストレージシステムはルータやゲートウェイの如きスイッチ装置に接続される。物理的な結合方法（有線結合と呼ばれる）に加えて、ストレージシステムにホストデバイスを無線で結合する技術もある。
【０００４】
04  有線でストレージシステムに接続する場合には、ケーブルの一端は適切に構成されたポートに、他の一端はホストコンピュータ又は通信ネットワークに結合するスイッチに接続される。
【０００５】
05  典型的な例として、ストレージシステムはホストコンピュータにＳＣＳＩ（Small Computer System Interface）を通して結合可能である。物理的な接続はイーサネット（イーサネットは登録商標です）又はファイバチャネル（ＦＣ：Fibre Channel）スイッチを用いて接続される。これらのインターフェース（データ交信方法）により、システム管理者等のユーザは、ホストコンピュータをストレージシステムとは物理的に離れた所に設置することが可能になる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
06  物理的ケーブル接続の結果として、ストレージシステムの多数のポートとホストコンピュータ及び／又はスイッチの間の多数の接続を管理することが困難になってきた。ケーブルを誤ってクロス接続することはよく起きることだが、クロス接続を見つけることは困難である。これは解決を要する課題である。
【課題を解決するための手段】
【０００７】
07  本発明によって、複数の入出力インターフェースポートを持つストレージシステムが実現される。ストレージシステムは自分の(障害中)ポートでの障害通信状態を検出することができる。ストレージシステムは、他の障害ポートのポート構成情報を使用して、障害ポートの再構成を試行することができる。
【発明の効果】
【０００８】
本発明によって、複数の入出力インターフェースポートを持つストレージシステムが実現される。ストレージシステムは自分の(障害中)ポートでの障害通信状態を検出することができる。ストレージシステムは、他の障害ポートのポート構成情報を使用して、障害ポートの再構成を試行することができる。
【発明を実施するための最良の形態】
【０００９】
08  本発明の有益で新規な特徴が、以下の付属図面に関してなされる説明で明らかになる。
【００１０】
09  図１は、ストレージシステム１の典型的な実施例を示す上位レベルのブロックダイアグラムである。図示されるストレージシステムには、複数のホストアダプタ（ＨＡ）１１ａ〜１１Ｎが存在する。ＨＡ１１で共通的に示す各ホストアダプタは、データ処理要素（例：ＣＰＵ１２）、メモリ要素１３、及びポート（例：ＬＡＮインターフェースポート)１４を持つ。図示するようにＨＡ１１には、これらの要素を結合して稼動させる適切な内部バスがありデータバス、制御線、給電線等が存在する。図１に示す例では、ストレージシステム１のポートは、ＨＡ１１内のポート１４より成る。
【００１１】
10  図１を続けると、ストレージシステム１は内部スイッチ２０を持つ。見て判る通り、各ＨＡ１１の内部バスは内部スイッチ２０へ接続している。ディスクアダプタ３１も内部スイッチ２０に接続している。ディスクアダプタ３１はデータ処理ユニット（例：ＣＰＵ３２）、メモリ要素３３、及び物理ストレージユニット４０に接続するファイバチャネル（ＦＣ）インターフェース３４を備える。図示するように、ディスクアダプタ３１は、これら要素を結合して稼動させる内部バスを含み、データバス、制御線、給電線等より成る。
【００１２】
11  共有メモリ５０が内部スイッチ２０に接続される。共有メモリ５０はＨＡ１１とディスクアダプタ３１の関連制御情報を格納する。読み書きされるデータも共有メモリ５０に保存される。図１での共有メモリは、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＲＡＭ（Static Random Access Memory）等の一つ以上のメモリ要素で構成できる。
【００１３】
12  内部スイッチ２０は、ＨＡ１１の各要素とディスクアダプタ３１間のデータ経路を調整し、又システムコンソール６０とストレージシステム１の多様な内部要素間のアクセスを調整する。内部スイッチ２０は、データ移動を司る相応しい制御論理を持つバス構造で実現できる。
【００１４】
13  ストレージシステム１のポートは多様な外部デバイスと結合する。図１では、各ポートはＬＡＮスイッチ２ａ〜２Ｎ（一般的にＬＡＮスイッチ２で示す）に接続されている。図１は、クライアントホスト３ａ〜３Ｎ（一般的にホスト３で示す）は、ＬＡＮスイッチ２を通してストレージシステム１とデータ交信できることを示す。クライアントホスト３は、ストレージシステム１で処理される入出力要求を発行する任意タイプのデータ処理ユニットで、物理ストレージユニット４０に対する読み書き動作を実行する。
【００１５】
14  ディスクアダプタ３１は、ＨＡ１１を通して内部スイッチ２０経由で各クライアントホスト３からの入出力要求を受け取る。ディスクアダプタ３１は、物理ストレージユニット４０にアクセスして入出力要求を実行する。ディスクアダプタ３１は、更に物理ストレージユニット４０を一つ以上の論理ボリューム（論理デバイス）として提示して、クライアントホスト３からは論理デバイスのみが見えるようにする。本図には唯一つのディスクアダプタしか示していないが、一つ以上のディスクアダプタを追加できることは、当業者には明白であろう。
【００１６】
15  図１の記述を完成する為に、ストレージシステム１は、システムコンソール６０を有し、これは任意タイプの相応しいデータ処理装置でよい。システムコンソール６０は、ユーザ（例：システム管理者）がストレージシステム１の各種の要素にアクセスできるようにする。例えば、ストレージシステム１の構成情報は、システムコンソール６０を通して定義され、観察され、或るいは維持される。ストレージシステム１でのシステム活動及びその他の活動は、システムコンソール６０を通してモニタされる。本図では、システムコンソール６０は相応しい外部コネクタ経由で、内部スイッチ２０に物理的に接続されるデバイスであることを示す。しかしながら、システムコンソール６０の機能は、ネットワーク接続経由でもアクセスできることは理解されるところである。
【００１７】
16  図２は、図１で示すストレージシステム１の機能構成を示す。本図はストレージシステム１に装備される多様な機能ユニットを示す。本発明の一実施例では、ストレージシステム１は、ＴＣＰ／ＩＰベースのプロトコル、例えばＮＦＳ（Network File System），ＣＩＦＳ（Common Internet File System），又はｉＳＣＳＩ（Internet SCSI）を用いてクライアントホスト３ａ〜３Ｎと交信する。図２では、ＨＡ１１ａと１１ｂは、ＮＦＳやＣＩＦＳ等のファイルサーバタイプのプロトコルを用いてクライアントホスト３とファイルレベル要求の交信を行う。ＨＡ１１ａと１１ｂは、ネットワークファイルシステム１０３とローカルファイルシステム１０２を有する。ＨＡ１１ＮはｉＳＣＳＩを用いて交信し、ｉＳＣＳＩプロトコルを処理するソフトウエアコンポーネント、即ちｉＳＣＳＩサービスモジュール１１１を有している。
【００１８】
17  図２は各ＨＡ１１が物理ストレージユニット４０と交信する為のデバイスドライバ１０１を示す。本図では物理ストレージユニット４０は個別のＨＡに割り当てされた、複数の論理ボリューム４１〜４５として構成されている。例えば、論理ボリューム４１と４２はＨＡ１１ａに、論理ボリューム４３と４４はＨＡ１１ｂに、更に論理ボリューム４５はＨＡ１１Ｎに割り当てられている。これらの割り当ては、各ＨＡ１１を物理ストレージユニット４１〜４５の各要素に繋ぐ点線で表されている。これらの割り当ては、ボリュームマッピングとして知られるプロセスを通して、ディスクアダプタ３１による操作で実現される。図２では各論理ボリュームは一式のＨＡに割り当てられているが、ボリュームマッピングでは、各論理ボリュームに一式以上のＨＡを割り当て可能なことに注意を要する。
【００１９】
18  図２に示される本発明の具体的実施例では、各ＨＡ１１はノードマネージャ１０４を持つ。これは、ソフトウエアコンポーネントで、ここでは“論理設定情報”と呼ぶことにする、各ＨＡ１１の構成情報を設定し維持するのに使用される。論理設定情報は、共有メモリ５０のノード管理テーブル５１に格納される。各ＨＡ１１のノードマネージャ１０４は、内部スイッチ２０を通してノード管理テーブル５１にアクセスできる。各ＨＡ１１に対して、対応するノードマネージャ１０４が提供するノード管理機能は、他の方法でも実現可能であることは理解されるところである。例えば、ストレージシステム１に共通制御モジュールを用意して、本モジュールが各ＨＡをアクセスして、以下で議論する機能を実行するように制御してもよい。従って、各ＨＡで実行する機能を総称して、ノード管理機能と呼ぶことができる。
【００２０】
19  加えて、システムコンソール６０は、ユーザ（例：システム管理者）が維持、観察、或いはアクセスできるように、ノード管理テーブル５１へのアクセスを提供する。本発明の一実施例では、システムコンソール６０がノードマネージャ１０４の一つとの交信を通してノード管理テーブル５１へアクセスすることができる。
【００２１】
20  図３(a)は、ノード管理テーブル５１の説明用実施例を表により示す。ノード管理テーブル５１の各行は各ポートに対応する。各行は、ＨＡの識別情報を示すノード欄２０１を持つ。かくして、各ＨＡはこれを識別する識別情報を持つ。例えば、ＨＡ内のメモリ要素１３はＨＡの識別情報を格納する不揮発メモリ(図示していない)を持つ。ポート欄２０２は、他のポートから当該ポートを固有に識別する識別子を格納する。本ポート識別情報も各ＨＡの不揮発メモリに格納される。ＩＰアドレス欄２０３は当該ポートのＩＰアドレスを示す。ポートのＩＰアドレスは、当該ポートに接続されるデバイス(例：クライアントホスト、スイッチ等)が本ポートと交信する為に本デバイスにより使用される。典型的に、デバイスでの構成情報にはポートのＩＰアドレスが含まれる。ネットマスク欄２０４には、当該ポートのＩＰアドレスに付随するサブネットマスクビットが表示される。デバイス欄２０６は、当該ポートに対応するＨＡ（ノード欄２０１で指定される）に割り当てられた一つ以上の論理デバイスのリストを示す。
【００２２】
21  ゲートウェイ欄２０５は、ＨＡが接続されているのと同じネットワークに接続されているルータのＩＰアドレス（以降“ゲートウェイアドレス”と称す）を示す。以降に述べるように、ゲートウェイ欄２０５のＩＰアドレスは、ＨＡの交信テストをする為に、本テーブルに保持される。ルータのＩＰアドレスに代わって、ＮＩＳ（Network Information Service）サーバ等のネットワーク要素のＩＰアドレスも交信テストの為に使用できる。この場合、ＮＩＳサーバのＩＰアドレスが、ルータのＩＰアドレスに代わってテーブルに保持される。
【００２３】
22  状態欄２０７は、ポートとネットワーク間の交信状態を示す。以降に議論するように、本状態は、ゲートウェイ欄２０５に示すＩＰアドレスのデバイスとの交信結果で決定される。以上で分る通り、本デバイスは、ケーブルにより本ポートに接続されている（接続デバイス）デバイス、又は本ポートに接続されているスイッチ装置の背後に存在するデバイスである。ＯＫ交信状態は、ＨＡ（ノード欄２０１で識別される）とデバイス（ゲートウェイ欄２０５でのルータアドレスで識別される）間での正常なデータ交信の存在を示す。ＮＧ（即ち非正常）交信状態は、ＨＡがゲートウェイ欄２０５で指定するデバイスと正常に交信できなかったことを示す。ノード管理テーブル５１には他の情報を追加しても構わない事は勿論である。
【００２４】
23  図４は、本発明の実施例による、ストレージシステム１で実行される主要な動作を説明する。図４で示される動作はノードマネージャ１０４で実行される。
【００２５】
24  各ＨＡ１１のノードマネージャ１０４は、ネットワーク結合をテストする為に、交信テストを実行する（ステップ１００１）。テストは自動で周期的に又はユーザ（例：管理者）からの起動により実行される。本発明の一実施例によれば、テスト対象のＨＡのノードマネージャ１０４は、エンド−エンドパスを検証する為にＩＣＭＰ（Internet Control Message Protocol） ＥＣＨＯ要求メッセージを発行する、衆知の“ＰＩＮＧ”プログラムに類似のルーチンを使用する。かくして、各ノードマネージャ１０４はノード管理テーブル５１の自らの対応行をアクセスして、ゲートウェイ欄２０５より対応するゲートウェイアドレスを取得する。例えば、ＨＡの識別情報は取得可能で（例：不揮発メモリから）、ノード管理テーブル５１での自らのＨＡの対応エントリを見つける為に、ノード欄２０１と照合する。アクセスされたエントリのゲートウェイ欄２０５の値が、“ＰＩＮＧ”動作の対象アドレスとして使用される。又は、上記の対象アドレスにメッセージをブロードキャストしてもよい。あるいは又、他の同等な交信を行ってもよい。各ノードマネージャ１０４は、本交信テストを実施して、ノード管理テーブル５１の対応エントリの状態欄２０７を更新する。
【００２６】
25  ＨＡが対象デバイス（即ち、対象アドレスのネットワーク要素）から肯定応答を受信すれば、これに対応するアクセスされたエントリの交信状態欄２０７はＯＫにセットされる。ＨＡが否定応答を受信又はタイムアウトになれば、対応する状態欄２０７にはＮＧがセットされる。
【００２７】
26  ここで言う“肯定応答”とは、対象デバイスからの応答で、対象デバイスは確かに、ゲートウェイ欄２０５のアドレスで指定されたデバイスであることを示している。即ち、対象デバイスのＩＰアドレスは、ゲートウェイ欄のアドレスと同じであることを示している。“否定応答”は、ＮＡＫ応答、又は対象デバイスのアドレスがゲートウェイ欄２０５のものと異なることを示す類似の否定的応答である。“否定応答”には、対象デバイスから一定時間待っても応答が得られない場合も含まれる。否定応答は、従って、ＨＡポートは別のデバイスに接続されているか、何物にも接続されていない（即ち、ポートに接続されているケーブルが存在しない）かを示す場合もある。
【００２８】
27  図４のフローチャートに戻って、処理ループ１０１０が実行される。ステップ１００１の交信テストは、各ノードマネージャ１０４により互いに独立に実行されるバックグラウンドプロセスであることに注意願いたい。共有メモリ５０は、共通資源を並行してアクセスする為の公知の技術によりアクセスされる。加えて、交信テストは、図４の開始ノードからの二重フローで示されるように、プロセスループ１０１０とは独立に走行する。
【００２９】
28  プロセスループ１０１０は、ユーザからの手動（例：システムコンソール６０からのコマンド）で起動できる。或いは、プロセスループ１０１０は、周期的又は計画的に自動的に起動しても、又は何かの契機イベント（例：ケーブルの接続又は切断の検出）により起動してもよい。以下の議論で明らかになるように、ノード管理テーブル５１へのアクセス競合を回避する為に、ＨＡ１１の一つのノードマネージャ１０４を“マスタ”ノードマネージャ又は単純にマスタとして指定する。更に又、マスタは常に同じノードマネージャでもよく、又はノードマネージャ間で例えば順繰りに交代してもよく（例：ラウンドロビン方式）、又はユーザ(例：管理者)により指定されてもよい。マスタは、以下に議論するステップを実行する為に、他のノードマネージャ１０４と交信し通知を出す。
【００３０】
29  ノード管理テーブル５１の各エントリを処理する為に、処理中のエントリを表示する為の何らかのポインタが必要である。かくして、マスタは、処理中の現エントリを単純に表示するカウンタＫを初期化する（ステップ１００２）。カウンタは、図３(a)で示すノード管理テーブル５１の特定の実施例に対応する。現エントリに対応するポートの交信状態がチェックされる（ステップ１００３）。これは状態欄２０７をチェックすることにより実行される。ＯＫ交信状態は、前回の１００１での更新に於いて、ＨＡ１１は成功裏にテストを完了し、デバイス(例：クライアントホスト、スイッチ要素等)との交信結果は、ＩＰアドレスが現エントリのゲートウェイ欄２０５のアドレスと一致したことを示す。ステップ１００３に関して、状態欄２０７がＯＫなら、テスト１００６にてノード管理テーブル５１の全エントリがチェックされたかを判定する。ノード管理テーブル５１が最終ノードまでテストされたかを判定するのに、多数の方法が採用できる。ノード管理テーブル５１に存在するエントリの数を示すカウンタを用意してもよい。最終エントリには、最終であることを示すために特殊な値(例：−１などの負の値)を持たせてもよい。更に他の方法も可能である。
【００３１】
30  ループ１０１０の処理は、ノード管理テーブル５１の最終行が終了すれば完了する。途中の場合には、カウンタＫはステップ１００７でインクリメントされ、ステップ１００３に戻る。
【００３２】
31  ステップ１００３に戻って、状態欄２０７がＮＧの場合は、一つの可能性は、現エントリのポートには何も接続されていないことである。他の可能性として、接続先デバイスは停止状態か動作不能である。更に他の可能性として、接続先デバイスは、現エントリのゲートウェイ欄２０５のアドレスとは別のＩＰアドレスを持っているかもしれない。クロスしたケ−ブル(図６)もこのような結果をもたらす。かくして、ステップ１００３の結果として、状態欄２０７がＮＧなら、クロス接続状態がＮＧ結果をもたらしているかをステップ１００４で判定する（図５）。
【００３３】
32  図５の処理はノードマネージャ１０４の一つで実行される。具体的には、現エントリに対応するＨＡのノードマネージャ１０４が、図５のプロセスを実行するよう“通知”される。通知されるノードマネージャ(対象ノードマネージャ、以降単に対象と呼ぶ)は、現エントリのノード欄２０１のＨＡ識別子情報で指定される。例えば、ノード管理テーブル５１の現エントリが第二エントリ３０２であれば、ＨＡ１１ｂのノードマネージャが対象として通知される。マスタが対象ノードマネージャ（対象）に通知できる相応しい通知技術が実用可能であることは理解されるであろう。通知された対象が図５の処理を実行する。図５の処理中にも、ノード管理テーブル５１は対象による処理中に更新されるかもしれない。図５の議論で明らかなように、次の対象に通知される前に現対象の処理は完了しなければならない。従って、マスタは、次の対象に通知を出す前に、現対象の処理の完了を待たなければならない。マスタが完了を待たずして次の対象に通知を出せば、ノード管理テーブル５１は破損される可能性がある。従って、ステップ１００４には、マスタは対象を通知後に待ち状態に入ることが含まれる。
【００３４】
33  次に図５を参照するに、対象ノードマネージャは不使用アドレスを用いて交信テストを実行する（ステップ１０５１）。本対象は、対象ノードマネージャに対応するエントリ（対象エントリ）以外のエントリで、ＮＧの状態欄２０７を持つ“候補”エントリをノード管理テーブル５１から検索する。対象ノードマネージャは、次いで、候補エントリのゲートウェイ欄２０５のゲートウェイアドレスを用いて、上記の交信テストを実行する。例えば、対象ノードマネージャのＨＡのポートを通して、上記ゲートウェイアドレスのデバイスに“ＰＩＮＧ”を発行する。状態欄２０７に示されるように、候補エントリに対応するＨＡは、当該候補ポートを通して本ゲートウェイアドレスと交信不可能な為、本ゲートウェイアドレスは不使用（又は不使用になった）と見なされる。
【００３５】
34  ステップ１０５２にて、交信結果として肯定結果が得られたかを判定する。肯定結果ならノード管理テーブル５１は対象ポートの結果を反映すべく更新される。本更新では、候補エントリに含まれるいくつかの情報を対象エントリの対応情報と交換する。具体的には、ゲートウェイ欄２０５とデバイス欄２０６に加えて、ＩＰアドレス欄２０３とネットマスク欄２０４を交換する。本状況を図３(a)と図３(b)で示す。対象エントリがノード１で候補エントリがノード２とする。更新ステップ１０５４は図３(b)に示すノード管理テーブル５１を生成する。対象エントリの欄（灰色）と候補エントリの欄（ハッチング）は交換されている。対象エントリの状態欄２０７はＯＫにセットされる。ステップ１０５４に続いて、対象は待機中のマスタに対して、対象が試行したＨＡは今や交信可能になったことを“通知”することができる。
【００３６】
35  ステップ１０５２でのテストに戻って、交信結果が否定的であれば、次の不使用アドレスを用いて交信テストを試みる。かくして、更に不使用アドレスが存在するかをテスト１０５３にて判定する。例えば、対象ノードマネージャは、ＮＧ判定された状態欄２０７を持つエントリのリストを保持してもよい。ＮＧ状態欄２０７を持つエントリが存在しなければ、対象は待機中のマスタに対して、対象が試行したＨＡは交信不能のままであることを“通知”する。
【００３７】
36  図４に戻って、対象は、ステップ１００４にて待機中のマスタに対して、成功又は不成功の結果を通知する。ステップ１００５にて、対象が成功裏に完了したか否かの判定が行われる。不成功ならエラー処理が実行される。これには、ログファイルへの記録やユーザ（例：管理者）への警告が含まれる。処理は次いで判定ステップ１００６へ進む。
【００３８】
37  対象が成功裏に終了すれば、判定ステップ１００６に進み、ノード管理テーブル５１の全てのポートがテストされたかをチェックする。他のポートが存在すれば、次のポートを示すべくカウンタＫが加算されて、ループのトップステップ１００３に戻る。テストすべきポートが存在しなければ、本処理ループは完了する。
【００３９】
38  図６Ａ〜６Ｃ（図６(a)〜図６(c)）は、図４、図５に示すプロセスでの経過を示す。図６(a)に示す構成は、ストレージシステム１への幾つかの結合の初期（時刻Ｔ１での）状態を示す。図７Ａ（図７(a)）に示すノード管理テーブルのエントリを参照するに、ＨＡに対応する第一エントリ７０１はノード１に割り当てられている。そこでは、ＩＰアドレス152.98.2.15を持ち、ポート１で指定されるポートを持つ。ゲートウェイ欄２０５は、本ポートが結合するネットワーク（図６(a)のジェネリックアドレス152.98.*.*で指定される）のルータのＩＰアドレス（152.98.2.2）を指定する。本エントリ７０１に結合する論理デバイスはデバイス０と１である。第二エントリ７０２は、同様に、ノード２と指定されたＨＡに対応する。本ノードは、ＩＰアドレス133.144.10.20を持ち、ポート２として指定されたポートを持つ。ゲートウェイ欄２０５は、本ポートが結合するネットワーク（図６(a)のジェネリックアドレス133.144.*.*で指定される）のルータのＩＰアドレス（133.144.10.1）を指定する。本エントリ７０２に結合する論理デバイスはデバイス１０と１１である。図６(a)は、時刻Ｔ１での、各ポートとこれに対応するネットワークとの間のケーブル接続を示す。
【００４０】
39  図６(b)は、その後の時刻Ｔ２での状況を示しており、事故又は設計上の問題で、ケーブルがクロスされた場合を示す。クロスケーブルの結果、ポート１とポート２の何れもネットワークとの交信が不可能になる。
【００４１】
40  しかしながら、図４と図５に示されるプロセスが完了した（時刻Ｔ３にて）後には、各ネットワーク（即ち、152.98.*.*と133.144.*.*）との交信が可能になるように、ノード管理テーブル５１は再構成される。図７Ｂ（図７(b)）は再構成されたノード管理テーブルを示す。図６(c)は、ＨＡで実行された再構成結果を示す。かくして、エントリ７０１（ノード１で指定される）に対応するＨＡは今やＩＰアドレス133.144.10.20（ＩＰアドレス欄２０３）で構成されている。これのゲートウェイ欄２０５は、ＩＰアドレス133.144.10.1を持つ。デバイス欄２０６は、論理ボリュームデバイス１０と１１を示し、本ＨＡは今やこれら論理ボリュームに結合していることを表す。ボリュームマッピングでは、クロスポートは論理ボリュームにもなされており、クライアントホストからの見え方が維持されていることが確かめられる（図６(a)と図６(c)の点線で示される）。上記した如く、ボリュームマッピングは公知だが、論理ボリュームからＨＡへのマッピングの詳細は、ストレージシステムの個々の構成に依存する。
【００４２】
41  図８は本発明のもう一つの説明用実施例を示す。ストレージシステム５０００は複数のノード５０１ａ〜５０１Ｎ（一般にノード５０１で表す）を持つ。複数のディスクユニット５４０ａ〜５４０Ｍ（一般にディスクユニット５４０で表す）がストレージを構成する。ファイバチャネルスイッチ５２０（又はその他の相応しいファブリックスイッチ）はディスクユニット５４０とノード５０１との間の選択的データ結合を可能にする。ノードマネージャ５６５は、図１のシステムコンソールと類似の機能を果たす。ノードマネージャ５６５は、管理ホストプロッセサ５６０上で走行するソフトウエアモジュールでよい。
【００４３】
42  各ノード５０１は図１のＨＡ１１と類似の機能を果たす。各ノード５０１は、ＵＮＩＸ（ＵＮＩＸは登録商標です）等の相応しいＯＳ（Operating System）上で稼動するＰＣ（Personal Computer）ベースのコンピュータシステムで実装可能である。ローカルディスクドライブ（図示していない）が各ノードに配備され、ローカルにアクセスされるプログラムや情報を保存する。ノード５０１は、クライアントホスト３への多様な共通入出力インターフェースを提供する。例えば、ノード５０１ａと５０１ｂは各々ＮＡＳ（Network Attached Storage）デバイスとして構成され、ファイルレベル入出力に対して、ホストシステム３とＮＦＳプロトコル又はＣＩＦＳプロトコルで交信する。ノード５０１ＮはＳＡＮ（Storage Area Network）として構成され、ブロックレベル入出力に対してｉＳＣＳＩプロトコルで交信する。
【００４４】
43  各ノード５０１は、データ交信の為に、第一と第二のインターフェースポート５１０と５１１を備える。第一のＬＡＮインターフェース５１０は、外部デバイス（ストレージシステムに対して相対的に）例えば、クライアントホスト３ａ〜３Ｎとのデータ交信に使用される。第二のＬＡＮインターフェース５１１は、管理ホストプロッセサ５６０上に用意され適切に構成されたポート（図示していない）への内部通信チャネル上のノードマネージャ５６５との交信の為に使用される。ファイバチャネルインターフェースポート（ＦＣ Ｉ/Ｏ）５１２は、ファイバチャネルスイッチ５２０との間の相応しいデータ交信の為に使用される。各ノード５０１は、図２のノードマネージャ１０４の機能を持つエージェント５１５を持つ。各ノード５０１は、自らのＬＡＮのＩＰアドレス等の構成情報を、例えばローカルディスクドライブ上又はディスクユニット５４０の何れかに保存する。
【００４５】
44  ファイバチャネルスイッチ５２０は複数のポート５２１を備える。各ノード５０１のＦＣ Ｉ/Ｏ５１２はポート５２１の一つに結合する。ディスクユニット５４０も同様にポート５２１の一つ以上に結合する。ファイバチャネルスイッチ５２０は、ノード５０１とディスクユニット５４０との間の選択的データパスを提供する。ＬＡＮポート５２２は、内部通信チャネルとの結合の為に用意される。これによって、管理ホストプロセサ５６０が、ファイバチャネルスイッチ５２０にアクセス可能になる。
【００４６】
45  ディスクユニット５４０は、個別にアクセスされるか、又は、プールされ一つ以上の論理ボリュームに分割される、個別の物理ドライブ５４０ａ〜５４０Ｍである。ディスクユニット５４０は、論理ボリュームに分割された単一の物理ドライブでもよい。更に他の構成も可能である。本実施例では、各ディスクユニット５４０ａ〜５４０ＭはＷＷＮ（World Wide Name）とＬＵＮ（Logical Unit Number）で固有に識別される。
【００４７】
46  図９はファイバチャネルスイッチ５２０での“ゾーン分割”の概念を説明する。ゾーン分割は、ノードを物理ポート、名前、又はアドレスで分割することを可能にするファイバチャネルスイッチ５２０で提供される機能である。図９に於いて、ノード５０１ａとディスクユニット５４０ａと５４０ｂは“ゾーン１”と称されるゾーンに所属する。同様に、ノード５０１ｂとディスクユニット５４０ｃは、“ゾーン２”と称されるゾーンに所属する。ファイバチャネルスイッチ５２０に於いては、ゾーンを生成することにより、ストレージシステム５０００は、デバイスマッピングに類似した機能を実行する。ファイバチャネルスイッチの本様態については更に後で議論する。
【００４８】
47  図１０と１１は、図８で示す本発明の実施例に適するノード管理情報を示す。ノード管理情報は、ノードマネージャ５６５で管理され、管理ホストプロセサ５６０のローカルストレージに保存できる。ノード管理情報は、図１０のノード管理テーブル５６１と図１１のストレージ管理テーブル５６２、の二つのテーブル形式で示される。図１０のノード管理テーブル５６１は、ノード管理テーブル５１に類似している。ノード管理テーブル５６１の各欄は対応するノード管理テーブル５１の各欄と同じ内容を持っている。図３(a)のデバイス欄２０６はノード管理テーブル５６１には存在しない。代わって、ストレージ管理テーブル５６２が、ディスクユニット５４０に関する情報を管理する為に使用される。
【００４９】
48  図１１はストレージ管理テーブル５６２を示す。ストレージ管理テーブル５６２は、ファイバチャネルスイッチ５２０のゾーン分割情報を保存する為に使用される。各行はノード５０１に対応し、対応ノードのストレージ関連情報を収容する。ゾーン欄６０１は本ノードが属するゾーンを識別する情報を保存する。ノード欄６０２は当該ノードを識別する情報を収容する。Ｆ−ポート欄６０３は、ノード（ノード欄６０２で指定される）が接続されるファイバチャネルスイッチ５２０でのポート５２１を識別する情報を収容する。本ポートはノードのインターフェースポート５１２に接続されることに注意願いたい。ＤＥＶ−ＷＷＮ欄６０４は、ゾーン欄６０１で指定されるゾーンに属するディスクユニット５４０のＷＷＮを収容する。同様に、ＬＵＮ欄６０５は当該ディスクユニットのロジカルユニット番号を指定する。ＤＥＶ−ポート欄６０６は、ＤＥＶ−ＷＷＮ欄６０４とＬＵＮ欄６０５で指定されるディスクユニット５４０が接続される各ポート５２１の識別番号を示す。
【００５０】
49  図４と図８を参照するに、本発明でのストレージシステム５０００で実行される動作は、図４で示されるステップに実質的に同じである。ステップ１００１はノードマネージャ５６５で実行され、手動又は自動的に起動される。ノードマネージャ５６５は、各エージェント５１５と交信して、ステップ１００１の通信テストを実行する。図８に示す実施例では、各エージェント５１５は、自らのテスト結果（例：ＯＫ，ＮＧ）をノードマネージャ５６５に返送する。ノードマネージャは次いで、ノード管理情報（例：図１０と１１に示されるテーブル）を更新する。図４の処理ループ１０１０は、上記のように実行される。ノード管理テーブル５６１の対応する状態欄２０７にＮＧを持ったポート５１０のエージェント５１５は、ノードマネージャ５６５により、対象エージェントとして通知される。対象エージェントが行うステップ１００４での処理は、図１２のフローチャートに従って進む。
【００５１】
50  図１２に関して、対象エージェントが実行するステップ１０５１〜１０５３は、図５のステップ１０５１〜１０５３と実質的に同じである。かくして、対象エージェントは、未使用アドレスを用いて通信テストを実施する（ステップ１０５１）。対象は、自分以外のエントリで状態欄２０７がＮＧの候補エントリをノード管理テーブル５６１内で検索する。対象エージェントは、次いで、候補エントリのゲートウェイ欄２０５でのゲートウェイアドレスを用いて、すでに述べた交信テストを実施する。
【００５２】
51  ステップ１０５２にて、交信結果は肯定結果か否定結果かの判定を行う。否定結果なら、次の不使用アドレスを用いて交信テストを実行する。かくして、テスト１０５３にて、まだ不使用アドレスが残っているかを判定する。状態欄２０７がＮＧの候補用エントリが最早存在しなければ、対象エージェントは、ノードマネージャ５６５に対して、対象エージェントのＨＡは、デバイスとの交信が不能のままであることを通知する。
【００５３】
52  ステップ１０５２に戻って、交信結果が肯定結果であれば、対象エージェントのノードのポートに接続されているネットワーク（検出されたネットワーク）が判明したことになる。ステップ１３０１にて、ポートは検出されたネットワークの論理ドライブに接続するように再ゾーン分割操作を行う為に、ノード管理テーブル５６１は更新される。このことは、ファイバチャネルスイッチ５２０のゾーン設定を変更することにより実行され、典型的には、ノードマネージャ５６５にて（例：対象エージェントがノードマネージャに通知する相応しい方法を通して）実施される。
【００５４】
53  図９に関して、ポート接続がクロスしている場合には、ゾーン１は、ディスクユニット５４０ｃのみを含むように再構成され、ゾーン２は、ディスクユニット５４０ａと５４０ｂのみを含むように再構成されなければならない（点線で示す）。再ゾーン分割により、クロスされたポートは、クライアントホストの観点からは、ディスクユニットへの対応が保存されていることが保証されている。
【００５５】
54  処理は、ステップ１３０２に進み、ノードマネージャ５６５は、対象エージェントと交信しネットワーク設定情報を保存させる。次いで、ステップ１３０３にて、ノードマネージャ５６５は、ノード管理情報テーブル５６１及びストレージ管理テーブル５６２に対して、図５のステップ１０５４で議論した方法にて、適切な更新を行う。
【図面の簡単な説明】
【００５６】
【図１】図１は、本発明の一実施例が適用されるストレージシステムの構成を示すブロックダイアグラムである。
【図２】図２は、図１の要素により提供される機能を示す、図１の機能的ブロックダイアグラムである。
【図３（ａ）】図３(a)は、図１の構成に対応するノード管理テーブルの構成情報を示す表である。
【図３（ｂ）】図３(b)は、更新されたノード管理テーブルの構成情報を示す表である。
【図４】図４は、本発明の一実施例による、ポート再構成の処理を示す上位レベルのフローチャートである。
【図５】図５は、本発明の一実施例による、ポート再構成の処理を示す上位レベルのフローチャートである。
【図６】図６(a)〜図６(c)は、本発明によるポート再構成の例を説明する。
【図７】図７(a)と図７(b)は、図６(a)〜図６(c)の結果でノード管理テーブルになされた更新を示す。
【図８】図８は、本発明のもう一つの実施例によるストレージシステムの構成を示すブロックダイアグラムである。
【図９】図９は、ファイバチャネルスイッチでのゾーン分割を説明する。
【図１０】図１０は、図８の構成に対応するノード管理テーブルの構成情報を示す表である。
【図１１】図１１は、図８の構成に対応するノード管理テーブルの構成情報を示す表である。
【図１２】図１２は、図８での本発明の実施例によるポート再構成の重要点を説明する上位レベルのフローチャートである。
【符号の説明】
【００５７】
１…            ストレージシステム
２ａ，２ｂ，２ｃ，２Ｎ…    ＬＡＮスイッチ
３ａ、３ｂ、３ｃ、３Ｎ…    クライアントホスト
５…            ルータ
６…            インタネット
１１ａ，１１ｂ，１１ｃ，１１Ｎ…    ＨＡ
１２、３２…    ＣＰＵ
１３、３３…    メモリ
１４…            ＬＡＮポート
２０…            内部スイッチ
３１…            ディスクアダプタ
３４…            ＦＣ
４０…            ディスクユニット
５０…            共有メモリ(図３)
６０…            コンソール
【図１】
2005327271.tif 000003
【図２】
2005327271.tif 000004
【図３（ａ）】
2005327271.tif 000005
【図３（ｂ）】
2005327271.tif 000006
【図４】
2005327271.tif 000007
【図５】
2005327271.tif 000008
【図６】
2005327271.tif 000009
【図７】
2005327271.tif 000010
【図８】
2005327271.tif 000011
【図９】
2005327271.tif 000012
【図１０】
2005327271.tif 000013
【図１１】
2005327271.tif 000014
【図１２】
2005327271.tif 000015
【外国語明細書】
2005327271.tif 000016
2005327271.tif 000017
2005327271.tif 000018
2005327271.tif 000019
2005327271.tif 000020
2005327271.tif 000021
2005327271.tif 000022
2005327271.tif 000023
2005327271.tif 000024
2005327271.tif 000025
2005327271.tif 000026
2005327271.tif 000027
2005327271.tif 000028
2005327271.tif 000029
2005327271.tif 000030
2005327271.tif 000031
2005327271.tif 000032
2005327271.tif 000033
2005327271.tif 000034
2005327271.tif 000035
【図１】
2005327271.tif 000036
【図２】
2005327271.tif 000037
【図３】
2005327271.tif 000038
【図３Ａ】
2005327271.tif 000039
【図４】
2005327271.tif 000040
【図５】
2005327271.tif 000041
【図６Ａ＆Ｂ＆Ｃ】
2005327271.tif 000042
【図７Ａ＆Ｂ】
2005327271.tif 000043
【図８】
2005327271.tif 000044
【図９】
2005327271.tif 000045
【図１０】
2005327271.tif 000046
【図１１】
2005327271.tif 000047
【図１２】
2005327271.tif 000048