(57)【要約】【課題】本発明は、ボリュームをプロビジョニングする前に、物理的ケーブルおよび論理パスを認証するための技術に関する。【解決手段】本発明のコンピュータは、ソフトウェアを格納するメモリと、ソフトウェアを実行するプロセッサを有する。ソフトウェアは、サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別し、（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されることを特徴とする。【選択図】図２
2014026637.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアを格納するメモリと、前記ソフトウェアを実行するプロセッサとを有するコンピュータであって、前記ソフトウェアは
サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別し、
（ｉ）前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続、または（ｉｉ）前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する
ことを特徴とする、コンピュータ。
【請求項２】
前記ソフトウェアは、前記第１ストレージポートと前記第２ストレージポートを、前記ストレージシステムの同一の論理ボリュームをアクセスするために使用されるように提供する
ことを特徴とする、請求項１に記載のコンピュータ。
【請求項３】
前記ソフトウェアは、（ｉ）前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続、および（ｉｉ）前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続、の両方により、冗長関係が形成されるか否かを確認する
ことを特徴とする、請求項１に記載のコンピュータ。
【請求項４】
前記ソフトウェアは、前記冗長関係を認証した後、前記ストレージシステムからボリュームをプロビジョニングする
ことを特徴とする、請求項３に記載のコンピュータ。
【請求項５】
前記ソフトウェアは、物理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の物理的接続、および前記第２サーバポートと前記第２ストレージポート間の物理的接続を認証し、
もし前記ソフトウェアが物理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続の片方または両方を認証しない場合、前記ソフトウェアは、物理的接続の冗長関係を確立するために、前記メモリに格納された予約情報に含まれる予約済みポートを使って前記物理的接続の片方または両方を修復する
ことを特徴とする、請求項１に記載のコンピュータ。
【請求項６】
前記ソフトウェアは、論理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の論理的接続、および前記第２サーバポートと前記第２ストレージポート間の論理的接続を認証し、
もし前記ソフトウェアが論理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続の片方または両方を認証しない場合、前記ソフトウェアは、論理的接続の冗長関係を確立するために、サーバポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮにより新しいゾーンを作成する
ことを特徴とする、請求項１に記載のコンピュータ。
【請求項７】
前記第１サーバポートと前記第２サーバポートは、前記サーバの同じ仮想マシンによって使用される
ことを特徴とする、請求項１に記載のコンピュータ。
【請求項８】
前記ソフトウェアは、前記仮想マシンのための論理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の論理的接続、および前記第２サーバポートと前記第２ストレージポート間の論理的接続を認証し、
もし前記ソフトウェアが前記仮想マシンのための論理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続の片方または両方を認証しない場合、前記ソフトウェアは、仮想マシンのための論理的接続の冗長関係を確立するために、仮想マシンポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮによりＮＰＩＶ（Ｎｏｄｅ  Ｐｏｒｔ  Ｉｎｔｅｒｆａｃｅ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ）用の新しいゾーンを作成する
ことを特徴とする、請求項７に記載のコンピュータ。
【請求項９】
ストレージシステムと、
ソフトウェアを格納するメモリと前記ソフトウェアを実行するプロセッサを有するコンピュータと
からなるシステムであって、前記ソフトウェアは
サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別し、
（ｉ）前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続、または（ｉｉ）前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続、のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する
ことを特徴とする、システム。
【請求項１０】
前記サーバは、前記第１サーバポートと前記第２サーバポートを有する
ことを特徴とする、請求項９に記載のシステム。
【請求項１１】
前記第１サーバポートと前記第２サーバポートを有する前記サーバは、第１ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）および第２ＮＩＣを有する第１サーバであり、
前記システムはさらに、第３ＮＩＣと第４ＮＩＣを有する第２サーバを有し、
前記第１および第２サーバの各サーバは、ＮＩＣに接続される仮想スイッチに接続されている仮想マシンを含み、
システムはさらに、前記第１および第２サーバおよび集約スイッチの間に接続されるアクセススイッチを有し、前記集約スイッチは前記ストレージシステムに接続され、
前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続により物理的接続の冗長関係が形成されているか否かの確認は、前記第１および第２サーバの各々のＮＩＣと前記仮想スイッチ間の接続性を認証することを含み、
前記第１サーバポートと前記第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続により論理的接続の冗長関係が形成されているか否かの確認は、前記第１および第２サーバとアクセススイッチ間の冗長性を認証することを含み、
該確認処理は、前記第１サーバの第１および第２ＮＩＣおよび前記第２サーバの第３および第４ＮＩＣ間のすべてのパスを列挙し、列挙されたパスをパステーブル内に格納すること、
前記パステーブル内の列挙されたパスから最短パスを選択し、選択された最短パスを最短パステーブルに格納し、前記パステーブルから選択された最短パスを削除すること、
一つ以上の集約スイッチを含むすべてのパスを最短パステーブルから削除すること、
前記パステーブルに一つ以上のパスが残っている場合、前記パステーブル内にパスが残っていない状態になるまで選択および削除を繰り返すこと、および
前記削除後に少なくとも２つの選択された最短パスが残っている場合、論理的接続の冗長関係が形成されたと認証することを含む
ことを特徴とする、請求項１０に記載のシステム。
【請求項１２】
前記ソフトウェアは、物理的接続の冗長関係および論理的接続の冗長関係を認証したのち、第１および第２スイッチポートにＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ＩＤを設定する
ことを特徴とする、請求項１１に記載のシステム。
【請求項１３】
冗長パスを認証するようデータプロセッサを制御するための複数の命令を格納するコンピュータ読み取り可能な記憶媒体であって、該複数の命令は、
前記データプロセッサに対して、サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別させる命令と、
前記データプロセッサに対し、（ｉ）前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続、または（ｉｉ）前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続、のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認させる命令とを有する
ことを特徴とする、コンピュータ読み取り可能な記憶媒体。
【請求項１４】
前記複数の命令は、
前記データプロセッサに対し、前記第１ストレージポートと前記第２ストレージポートを、前記ストレージシステムの同一の論理ボリュームをアクセスするために使用されるように提供する命令を含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１５】
前記複数の命令は、
前記データプロセッサに対し（ｉ）前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続、および（ｉｉ）前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続、の両方により、冗長関係が形成されるか否かを確認させる命令を含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１６】
前記複数の命令は、
前記データプロセッサに対し、前記冗長関係を認証した後、前記ストレージシステムからボリュームをプロビジョニングさせる命令を含む
ことを特徴とする、請求項１５に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１７】
前記複数の命令は、
前記データプロセッサに対し、物理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の物理的接続、および前記第２サーバポートと前記第２ストレージポート間の物理的接続を認証させる命令と、
前記データプロセッサに対し、もしソフトウェアが物理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の物理的接続および前記第２サーバポートと前記第２ストレージポート間の物理的接続の片方または両方を認証しない場合、物理的接続の冗長関係を確立するために、前記メモリに格納された予約情報に含まれる予約済みポートを使って前記物理的接続の片方または両方を修復させる命令とを含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１８】
前記複数の命令は、
前記データプロセッサに対し、論理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の論理的接続、および前記第２サーバポートと前記第２ストレージポート間の論理的接続を認証させる命令と、
前記データプロセッサに対し、もしソフトウェアが論理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続の片方または両方を認証しない場合、論理的接続の冗長関係を確立するために、サーバポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮにより新しいゾーンを作成させる命令とを含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１９】
前記第１サーバポートと第２サーバポートは前記サーバの同じ仮想マシンによって使用され、
前記複数の命令は、
前記データプロセッサに対し、前記仮想マシンのための論理的接続の冗長関係を確立するために、前記第１サーバポートと前記第１ストレージポート間の論理的接続、および前記第２サーバポートと前記第２ストレージポート間の論理的接続を認証させる命令と、
前記データプロセッサに対し、もしソフトウェアが、前記仮想マシンのための論理的接続の冗長関係を確立するために行われる前記第１サーバポートと前記第１ストレージポート間の論理的接続および前記第２サーバポートと前記第２ストレージポート間の論理的接続の片方または両方を認証しない場合、仮想マシンのための論理的接続の冗長関係を確立するために、仮想マシンポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮによりＮＰＩＶ（Ｎｏｄｅ  Ｐｏｒｔ  Ｉｎｔｅｒｆａｃｅ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ）用の新しいゾーンを作成させる命令とを含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能な記憶媒体。
【請求項２０】
前記第１サーバポートと前記第２サーバポートとを有する前記サーバは、第１ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）および第２ＮＩＣを有する第１サーバであり、
第２サーバはさらに、第３ＮＩＣと第４ＮＩＣを有し、
前記第１および第２サーバの各サーバは、ＮＩＣに接続される仮想スイッチに接続されている仮想マシンを含み、
前記第１および第２サーバおよび集約スイッチの間に接続されるアクセススイッチを有し、前記集約スイッチは前記ストレージシステムと接続され、
前記第１サーバポートと前記第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続により物理的接続の冗長関係が形成されているか否かをデータプロセッサに確認させる命令は、前記第１および第２サーバの各々のＮＩＣと前記仮想スイッチ間の接続性をデータプロセッサに認証させる命令からなり、
前記第１サーバポートと前記第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続により論理的接続の冗長関係が形成されているか否かをデータプロセッサに確認させる命令は、前記第１および第２サーバとアクセススイッチ間の冗長性をデータプロセッサに認証させる命令からなり、
該命令は、前記データプロセッサに対し、前記第１サーバの第１および第２ＮＩＣおよび前記第２サーバの第３および第４ＮＩＣ間のすべてのパスを列挙させ、列挙されたパスをパステーブル内に格納させる命令と、
前記パステーブル内の列挙されたパスから最短パスをデータプロセッサに選択させ、選択された最短パスを最短パステーブルに格納させ、前記パステーブルから選択された最短パスを削除させる命令と、
前記データプロセッサに対し、一つ以上の集約スイッチを含むすべてのパスを最短パステーブルから削除させる命令と、
前記データプロセッサに対し、前記パステーブルに一つ以上のパスが残っている場合、前記パステーブル内にパスが残っていない状態になるまで選択および削除を繰り返させる命令と、
前記データプロセッサに対し、削除後に少なくとも２つの選択された最短パスが残っている場合、論理的接続の冗長関係が形成されたと認証させる命令を含む
ことを特徴とする、請求項１３に記載のコンピュータ読み取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
０００１    本発明はストレージシステムに関し、特に、ボリュームをプロビジョニングする前に冗長パスを認証する方法および装置に関する。
【背景技術】
【０００２】
０００２    データセンターにおいては、イーサネットスイッチやファイバーチャネルスイッチを使って、サーバやストレージを接続するためのケーブルが数多く設置される。そのような装置間を、冗長性を確保しつつ接続する場合、システムを構成するのが難しく、人的エラーが生じやすくなる。サーバや仮想マシンの管理者にとって、そのようなシステムを設置するのは困難である。例えば管理者、特にハイパバイザ管理者は、ボリュームをプロビジョニングする（割当てる）ことを要求される。その際、ストレージのロックリソース（例えばストレージ確保）を探すのに時間がかかる（例えば数分）。プロビジョニングされたボリュームを検出するのは難しい時もあり、管理者やストレージ管理者が、ファイバーチャネル（ＦＣ）スイッチ（ＦＣ−ＳＷ）を含むシステムの構成を理解するのに時間がかかる場合もある。
【０００３】
０００３    特許文献１（米国特許第７，６１７，３２０号明細書）は、ＬＵＮプロビジョニング後のＨＡ論理的接続の認証方法を開示している。この方法は、ＬＵＮの作成後、ＬＵＮ用のＨＡ論理パスに注目する方法である。この方法は、物理的なケーブル構造やストレージポートの冗長性については考慮しない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第７，６１７，３２０号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
０００４    本発明の具体的な実施例によると、ボリュームをプロビジョニングする前に物理的ケーブルおよび論理パスを認証する技術が提供される。この技術により、冗長物理テーブルおよび論理パスを確保することが可能となり、ボリュームプロビジョニングにＦＣ−ＳＷおよびストレージ管理者が関わる必要がなくなり、ボリュームに対してストレージのロック（確保済み）リソースを使うことを避けることができる。
【０００６】
０００５    ある例において、システムは少なくとも、ストレージと、ＦＣ−ＳＷ（コアおよびエッジスイッチ）、管理サーバ、および仮想マシンサーバ（通常サーバでも適用可能）を有する。この構成において、管理サーバで実行される管理ソフトウェアは、ファイバーチャネルゾーニングである物理ケーブルおよび論理パスを認証する。管理ソフトウェアは以下の処理を実行する。まず、ソフトウェアはサーバおよびストレージの対象ポートを特定する。次にソフトウェアは、ドメインＩＤを使って、スイッチの検出されたＷＷＮの情報および冗長性に関してサーバＨＢＡポートのＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートのＷＷＮに基づいて物理ケーブルを認証する。もし認証が失敗した場合、予約済みケーブルを使ってケーブルを修復する。その後、ソフトウェアは、ＦＣ−ＳＷのＨＢＡポートのＷＷＮおよびストレージポートのＷＷＮを使って、論理パス（ゾーン）を認証する。この認証で、もしサーバポートのＷＷＮがゾーンを有しない場合、ゾーンを有するストレージのＷＷＮにサーバＨＢＡポートのＷＷＮを加えること、もしストレージポートのＷＷＮがゾーンを有しない場合、ゾーンを有するサーバのＷＷＮにストレージポートのＷＷＮを加えること、ストレージポートのＷＷＮとサーバのＷＷＮを有する新しいゾーンを加えること、またはストレージポートのホストグループにサーバのＷＷＮを加えることを含むことができ、また、ストレージの対象ポートにホストグループがない場合、ホストグループを加えることができる。さらに、もし物理パスおよび論理パスが正しく構成されている場合、ソフトウェアはボリュームをサーバにプロビジョニングし、ボリュームを検出することができる。別の実施例において、ソフトウェアはノードポートインタフェース仮想化（ＮＰＩＶ）を考慮して論理パスを認証し、ＮＰＩＶのＷＷＮのための論理パスを修復する。
【０００７】
０００６    別の例において、システムは仮想マシン（ＶＭ）が実行されるサーバ間の冗長イーサネット（登録商標）のネットワークを認証し構成する。ストレージシステムには、集約スイッチを介してアクセススイッチが接続される。ＶＭは仮想スイッチに接続され、仮想スイッチはＮＩＣ（ネットワークインタフェースカード）に接続される。ＮＩＣはアクセススイッチに接続される。この例は、サーバとアクセススイッチ間の冗長性を認証することができる。この認証は、パスの間に集約スイッチを有しない少なくとも２つの最短パスをサーバ間に検出することにより達成される。
【０００８】
０００７    本発明の一つの特徴によると、コンピュータは、ソフトウェアを格納するメモリと、ソフトウェアを実行するプロセッサとを有する。ソフトウェアは、サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別し、（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する。
【０００９】
０００８    ある実施例において、ソフトウェアは、第１ストレージポートと第２ストレージポートとを、ストレージシステムの同一の論理ボリュームをアクセスできるよう制御する。ソフトウェアは、（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続の両方により、冗長関係が形成されるか否かを確認する。
【００１０】
０００９    ある実施例において、ソフトウェアは、冗長関係を認証した後、ストレージシステムからボリュームをプロビジョニングする。ソフトウェアは、物理的接続の冗長関係を確立するために、第１サーバポートと第１ストレージポート間の物理的接続、および第２サーバポートと第２ストレージポート間の物理的接続を認証する。もしソフトウェアが、物理的接続の冗長関係を確立するために行われる第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続の片方または両方を認証しない場合、ソフトウェアは、物理的接続の冗長関係を確立するために、メモリに格納された予約情報に含まれる予約済みポートを使って物理的接続の片方または両方を修復する。
【００１１】
００１０    ある実施例において、ソフトウェアは、論理的接続の冗長関係を確立するために、第１サーバポートと第１ストレージポート間の論理的接続、および第２サーバポートと第２ストレージポート間の論理的接続を認証する。もしソフトウェアが、論理的接続の冗長関係を確立するために行われる第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続の片方または両方を認証しない場合、ソフトウェアは、論理的接続の冗長関係を確立するために、論理的接続の片方または両方を修復するようサーバポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮにより新しいゾーンを作成する。
【００１２】
００１１    ある実施例において、第１サーバポートと第２サーバポートは、サーバの同一仮想マシンによって使用される。ソフトウェアは、仮想マシンのための論理的接続の冗長関係を確立するために、第１サーバポートと第１ストレージポート間の論理的接続、および第２サーバポートと第２ストレージポート間の論理的接続を認証する。もしソフトウェアが、仮想マシンのための論理的接続の冗長関係を確立するために行われる第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続の片方または両方を認証しない場合、ソフトウェアは、仮想マシンのための論理的接続の冗長関係を確立するために、論理的接続の片方または両方を修復する仮想マシンポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮによりＮＰＩＶ（Ｎｏｄｅ  Ｐｏｒｔ  Ｉｎｔｅｒｆａｃｅ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ）用の新しいゾーンを作成する。
【００１３】
００１２    本発明の別の特徴によると、システムは、ストレージシステムと、ソフトウェアを格納するメモリとソフトウェアを実行するプロセッサを有するコンピュータとを有する。ソフトウェアは、サーバの冗長ポートを構成する第１サーバポートと第２サーバポートおよびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別し、（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する。
【００１４】
００１３    ある実施例において、サーバは、第１サーバポートと第２サーバポートを有する。第１サーバポートと第２サーバポートを有するサーバは、第１ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）および第２ＮＩＣを有する第１サーバである。システムはさらに、第３ＮＩＣと第４ＮＩＣを有する第２サーバを有する。第１および第２サーバの各サーバは、ＮＩＣに接続される仮想スイッチに接続されている仮想マシンを含む。システムはさらに、第１および第２サーバおよび集約スイッチの間に接続されるアクセススイッチを有し、集約スイッチはストレージシステムに接続される。第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続により物理的接続の冗長関係が形成されているか否かの確認は、第１および第２サーバの各々のＮＩＣと仮想スイッチ間の接続性を認証することを含む。第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続により論理的接続の冗長関係が形成されているか否かの確認は、第１および第２サーバとアクセススイッチ間の冗長性を認証することを含み、この認証は、第１サーバの第１および第２ＮＩＣおよび第２サーバの第３および第４ＮＩＣ間のすべてのパスを列挙し、列挙されたパスをパステーブル内に格納すること、パステーブル内の列挙されたパスから最短パスを選択し、選択された最短パスを最短パステーブルに格納し、パステーブルから選択された最短パスを削除すること、一つ以上の集約スイッチを含むすべてのパスを最短パステーブルから削除すること、パステーブルに一つ以上のパスが残っている場合、パステーブル内にパスが残っていない状態になるまで選択および削除を繰り返すこと、および削除後に少なくとも２つの選択された最短パスが残っている場合、論理的接続の冗長関係が形成されたと認証することを含む。
【００１５】
００１４    ある実施例によると、ソフトウェアは、物理的接続の冗長関係および論理的接続の冗長関係を認証したのち、第１および第２スイッチポートにＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ＩＤを設定する。
【００１６】
００１５    本発明の別の特徴は、冗長パスを認証するようデータプロセッサを制御するための複数の命令を格納するコンピュータ読み取り可能な記憶媒体に関する。複数の命令は、データプロセッサに対して、サーバの冗長ポートを構成する第１サーバポートと第２サーバポート、およびストレージシステムの冗長ポートを構成する第１ストレージポートと第２ストレージポートを識別させる命令と、データプロセッサに対し、（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認させる命令とを有する。
【００１７】
００１６    ある実施例によると、複数の命令は、データプロセッサを、ストレージシステムの同一の論理ボリュームをアクセスするために使用される第１ストレージポートと第２ストレージポートを、提供するよう動作させる命令を含む。また、複数の命令は、データプロセッサを（ｉ）第１サーバポートと第１ストレージポート間の物理的接続および第２サーバポートと第２ストレージポート間の物理的接続、または（ｉｉ）第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続の両方により、冗長関係が形成されるか否かを確認させるよう動作させる命令を含む。さらに、複数の命令は、データプロセッサに対し、冗長関係を認証した後、ストレージシステムからボリュームをプロビジョニングさせるよう動作させる命令を含む。
【００１８】
００１７    ある実施例によると、第１サーバポートと第２サーバポートは、サーバの同一仮想マシンによって使用される。また、複数の命令は、データプロセッサに対し、仮想マシンのための論理的接続の冗長関係を確立するために、第１サーバポートと第１ストレージポート間の論理的接続、および第２サーバポートと第２ストレージポート間の論理的接続を認証させる命令と、データプロセッサに対し、もしソフトウェアが論理的接続の冗長関係を確立するために行われる第１サーバポートと第１ストレージポート間の論理的接続および第２サーバポートと第２ストレージポート間の論理的接続の片方または両方を認証しない場合、仮想マシンのための論理的接続の冗長関係を確立するために、サーバポートＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）およびストレージポートＷＷＮによりＮＰＩＶ（Ｎｏｄｅ  Ｐｏｒｔ  Ｉｎｔｅｒｆａｃｅ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ）のための新しいゾーンを作成させるよう動作させる命令とを含む。
【発明の効果】
【００１９】
０００４    本発明の具体的な実施例によると、ボリュームをプロビジョニングする前に物理的ケーブルおよび論理パスを認証する技術が提供される。この技術により、冗長物理テーブルおよび論理パスを確保することが可能となり、ボリュームプロビジョニングにＦＣ−ＳＷおよびストレージ管理者が関わる必要がなくなり、ボリュームに対してストレージのロックリソースを使うことを避けることができる。
００１８    上述した本発明の特徴および効果、およびその他の特徴および効果は、後に述べる本発明の実施形態の詳細な説明から、当業者にとって明らかとなろう。
【図面の簡単な説明】
【００２０】
【図１】００１９    本発明の方法および装置を適用可能なシステムの物理構成例を示す図である。
【図２】００２０    本発明の第１実施例において、ストレージ側の視点から図１のシステムの論理構成の例を示す図である。
【図３】００２１    サーバ構成テーブルの例を示す図である。
【図４】００２２    ＦＣ−ＳＷのテーブルの例を示す図である。
【図５】００２３    コアＦＣ−ＳＷのポート構成テーブルの例を示す図である。
【図６】００２４    エッジＦＣ−ＳＷのポート構成テーブルの例を示す図である。
【図７】００２５    ゾーンテーブルの例を示す図である。
【図８】００２６    ストレージ構成テーブルの例を示す図である。
【図９】００２７    第１実施例による、管理ソフトウェアのボリュームプロビジョニング方法を示すフロー図の例である。
【図１０】００２８    管理ソフトウェアの物理ケーブルを認証し修復する方法の詳細を示すフロー図の例である。
【図１１】００２９    物理ケーブルを確定するために予約済みケーブルを選択する方法を示すフロー図の例である。
【図１２】００３０    論理パス（本発明ではゾーン）を認証し、必要な場合にそれを確定する方法を示すフロー図の例である。
【図１３】００３１    本発明の第２実施例に基づき、ストレージ側の視点から図１のシステムの論理構成の例を示す図である。
【図１４】００３２    集められたＶＭ構成テーブルの例を示す図である。
【図１５】００３３    第２実施例にかかる、エッジＦＣ−ＳＷのポート構成テーブルの例を示す図である。
【図１６】００３４    第２実施例にかかるゾーンリストテーブルの例を示す図である。
【図１７】００３５    第２実施例にかかる、ＮＰＩＶを考慮に入れた認証を含むボリュームプロビジョニング処理のフロー図の例を示す図である。
【図１８】００３６    アレイのポートにあるホストグループのサーバＷＷＮまたはホストグループを修復する処理にかかるフロー図の例を示す図である。
【図１９】００３７    ストレージ構成におけるホストグループのテーブルの例を示す図である。
【図２０Ａ】００３８    図２０Ａは第３実施例にかかる、イーサネットのネットワークの視点から見た、図１のシステムの論理構成例を示す図である。
【図２０Ｂ】００３９    図２０Ｂは図２０Ａの管理サーバの詳細を示す図である。
【図２１】００４０    イーサネット用のサーバテーブルの例を示す図である。
【図２２】００４１    イーサネットスイッチテーブルの例を示す図である。
【図２３】００４２    アクセススイッチテーブルのポートの例を示す図である。
【図２４】００４３    集約スイッチテーブルのポートの例を示す図である。
【図２５】００４４    トポロジーサマリーテーブルの例を示す図である。
【図２６】００４５    サーバ間のイーサネットのネットワークを認証し構成する処理のフロー図の例を示す図である。
【図２７】００４６    ２つのサーバ間のネットワークの冗長性を認証する処理を示すフロー図の例である。
【図２８】００４７    パステーブルの例を示す図である。
【図２９】００４８    最短パステーブルの例を示す図である。
【図３０Ａ】００４９    図３０Ａは各スイッチポートにＶＬＡＮ  ＩＤを設定する処理のフロー図例を示す図である。
【図３０Ｂ】００５０    図３０ＢはデバイスＩＤおよびポートＩＤ｛（ｄｉｄ，ｐｉｄ）｝およびＶＬＡＮ  ＩＤ｛ｖｉｄ｝を入力として、図３０ＡのポートにＶＬＡＮ  ＩＤを設定するステップ３９００２の処理の詳細を示すフロー図の例である。
【図３１】００５１    セットポートテーブルの例を示す図である。
【図３２】００５２    図２６に示すアクセスと集約スイッチ間の冗長性を認証するステップ３５００６の処理の詳細を示すフロー図の例である。
【発明を実施するための形態】
【００２１】
００５３    以下の本発明についての詳細な説明では、開示の一部を成すとともに本発明を実施する例示的な実施形態として示される添付図面を参照するが、本発明は図面の内容に限定されるものではない。図面において、類似する数字は複数の図面においてほぼ同様の構成要素を示すものである。また、留意すべき点として、詳細な説明では、以下の説明および図面に示される通り様々な実施の形態を示すが、本発明は本明細書において説明されかつ示される実施形態に限定されず、当業者が知っているであろう又は知るようになり得るその他の実施形態をも含む。本明細書における「一実施形態」、「本実施形態」、又は「上述の実施形態」の文言は、ある実施形態に関連して説明される特定の特性、構造又は特徴が、本発明の少なくとも一実施形態に含まれることを意味し、本明細書の様々な箇所において上記文言が使用されていても、必ずしもすべてが同一の実施形態を言及するものではない。さらに、以下の詳細な説明において、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。ただし、本発明を実施するためにこれらの具体的かつ詳細な内容すべてが必要なわけではないことは、当業者にとって明らかであろう。状況によっては、曖昧な記載を避けるために、周知の構造、材料、回路、プロセス及びインタフェースの詳細については説明しておらず、かつ／又はブロック図において図示していない場合もある。
【００２２】
００５４    さらに、以下の詳細な説明の一部は、コンピュータ内のオペレーションのアルゴリズムおよび記号表現で示されている。これらのアルゴリズム記述及び記号表現は、データ処理分野の当業者がその新しいアイディアの本質を最も効果的に他の当業者に伝えるために使用する手段である。アルゴリズムとは、望ましい最終状態又は結果へと導く一連の定義されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための相応量の物理的操作を必要とする。必ずしもそうとは限らないが、通常はかかる数量は、格納、転送、組み合わせ、比較その他の操作が可能な電気もしくは磁気信号又は命令の形態を取る。主に一般的な使用のために、上記の信号をビット、値、記号、要素、文字、用語、数字、命令等として言及することが便利なことがある。但し、上記の及び類似の用語すべてが、適切な物理数量に関連付けられるものであり、かつ当該数量に適用される単に便利なラベルであることに留意すべきである。別段の記載がない限り、以下の解説から明らかなように、説明全体を通して、「処理」、「演算」、「計算」、「判断」、「表示」等の用語を用いた説明は、コンピュータシステムのレジスタ及びメモリもしくはレジスタ又はその他の情報記憶、送信もしくは表示装置の中の物理的（電気的）数量として同等にあらわされるその他のデータに操作しかつ変換する、コンピュータシステム又はその他の情報処理装置の動作またはプロセスを含み得る。
【００２３】
００５５    本発明は、本明細書における操作を実施する装置にも関する。この装置は、必要とされる目的のために特別に構築してもよく、又は一つ以上のコンピュータプログラムによって選択的に起動又は再構築された一つ以上の汎用コンピュータを含み得る。当該コンピュータプログラムは、光ディスク、磁気ディスク、読取専用記憶措置、ランダムアクセスメモリ、ソリッドステート装置及びドライブ、又は電子情報の格納に適したその他の種類の媒体等（但し、これらに限定されない）のコンピュータ読取可能記憶媒体に格納され得る。本明細書において提示するアルゴリズム及び態様は、特定のコンピュータ又はその他の装置とは本質的に関係していない。様々な汎用システムを、本明細書の教示に従ってプログラム及びモジュールと共に使用してもよく、又は望ましい方法を実施するためにより特化した装置を構築した方がよい場合も有り得る。さらに本発明は、特定のプログラミング言語を参照して説明されてはいない。当然のことながら、本明細書に記載されている通りに本発明の教示内容を実施するために、様々なプログラミング言語を使用してもよい。プログラミング言語の命令は、一つ以上の処理装置、例えば中央処理装置（ＣＰＵ）、プロセッサ、又はコントローラによって実行され得る。
【００２４】
００５６    下記に詳細に説明する本発明の実施例は、ボリュームプロビジョニング前に冗長パスを認証する装置、方法およびコンピュータプログラムを提供する。
【実施例１】
【００２５】
００５８    本発明の第１実施例は、ボリュームプロビジョニング前に冗長物理ケーブルや論理パスを認証する方法に関する。これは冗長物理ケーブルや論理パスを確保し、ボリュームプロビジョニングにおけるＦＣ−ＳＷを削減し、ストレージ管理者の関与を軽減し、ストレージのロックリソースをボリュームに利用することを避けるという効果を有する。
【００２６】
００５９    図１は、本発明の方法および装置が適用されるシステムの物理構成の例を示す。システムは、基本ラック１０００および増設ラック１１００と１２００を有する。基本ラックは少なくとも、ストレージサブシステム１０１０（例えばストレージ）、基本ラック内の２つのコアＦＣ−ＳＷ１０２０および１０３０、管理サーバ１０４０、および２つのコアイーサネットスイッチ１０５０および１０６０を有する。コアＦＣ−ＳＷのポートは、ファイバーチャネルプロトコルを適用可能なケーブルにより、ストレージの各ポートおよび増設ラック内の他のエッジＦＣ−ＳＷ（１１２０、１１３０、１２２０および１２３０）に接続される。イーサネットスイッチの各ポートは、ストレージのＮＩＣ、ＦＣの管理ＮＩＣ、および他のエッジイーサネットスイッチに接続される。増設ラック１１００および１２００は、それぞれ、サーバ、エッジＦＣ−ＳＷ（１１２０、１１３０、１２２０および１２３０）、およびエッジのイーサネットスイッチ（１１５０、１１６０、１２５０および１２６０）を有する。エッジのＦＣ−ＳＷの各ポートは、エッジＦＣ−ＳＷおよびコアＦＣ−ＳＷ間の相互接続を利用して、サーバ（１１４０、１２４０）とコアスイッチのポートに接続される。
【００２７】
００６０    ストレージ１０１０は、独立クラスター（１０１１、１０１２）を有するいくつかのポート、マイクロプロセッサ（ＭＰ、１０１３）、メモリ（ＭＥＭ、１０１４）、ソリッドステートディスク（ＳＳＤ）を含むディスク１０１６、ＮＩＣ＿Ｉ／Ｆ１０１５、および各部間の内部バスを有する。ストレージのＭＰはマイクロコードを実行してＲＡＩＤ技術によりユーザデータを保護し、コントローラのポートを介してＲＡＩＤにより保護されたディスクセットからなるボリュームをプロビジョニングする。ストレージは、バッテリーによるバックアップで保護されたメモリーデータを保護する冗長部として設計される。サーバは汎用サーバであり、プロセッサ、メモリ、ネットワークインタフェースカード（ＮＩＣ）およびホストバスアダプタ（ＨＢＡ）（図示しない）を有する。
サーバは、Ｈｙｐｅｒ−Ｖ（登録商標）、ＶＭｗａｒｅ（登録商標）、ＫＶＭ（カーネルベース仮想マシン）または他のジェネリックなハイパバイザを実行する。イーサネットスイッチ１０５０および１０６０はそれぞれ、サーバ、ストレージ、ＦＣ−ＳＷ及びＮＩＣと接続するポートを有する。ポートはＩＥＥＥ８０２．３や関連するフレームを処理することができ、ＩＥＥＥ８０２．３フレーム用ケーブルに接続することができる。ＦＣ−ＳＷ１０２０および１０３０はそれぞれ、ポートおよび管理ＮＩＣを有する。ポートはファイバーチャネルプロトコルなどのフレームを処理することができ、ファイバーチャネルプロトコル用ケーブルに接続することができる。ＦＣ−ＳＷとイーサネットスイッチの接続の際には、冗長トポロジーを考慮すべきである。ＦＣ−ＳＷは２つの独立したネットワークを有するよう設計される。イーサネットスイッチもまた、二つの独立したネットワークを有するよう設計される。アレイのポートの冗長性に関連して、ストレージサブシステムは独立したクラスタを有する。
【００２８】
００６１    基本ラックと増設ラックの間に、データセンターネットワーク１３００を設置することができる。ネットワークはパッチパネルを利用して、ケーブルをある位置に集め、装置間のケーブルを交換することができる。このパネルは主にネットワーク管理者またはケーブル管理者によって管理される。そのため、構成にエラーが生じる。
【００２９】
００６２    図２は、第１実施例に基づいて、ストレージ側の視点から図１のシステムの論理構成の例を示す図である。このシステムは基本ラック１０００および増設ラック１１００と１２００を有する。
【００３０】
００６３    基本ラック１０００は少なくとも一つのストレージ１０１０、２つのＦＣ−ＳＷ１０２０および１０３０、および管理サーバ１０４０を有する。ストレージは、ストレージ管理者の操作または管理サーバの指示した管理ソフトウェアに基づいて、ストレージのポートから、ポートに冗長性を与える独立したハードウェアクラスタ１０１１および１０１２にボリュームを提供する。管理サーバ１０４０は、ボリュームプロビジョニング前に、物理テーブルおよび論理パスを認証するための管理ソフトウェア（ＭＧＭＴソフトウェア、１０４９）を有する。ソフトウェアは、サーバ、ＦＣ−ＳＷおよびストレージのための構成情報収集機能１０４１と、物理ケーブルおよび論理パスのための認証機能１０４２と、サーバ構成テーブル１０４３と、ＦＣ−ＳＷポート構成テーブル１０４４と、コアＦＣ−ＳＷおよびエッジＦＣ−ＳＷのＦＣ−ＳＷポートのテーブル１０４７および１０４８と、ゾーンテーブル１０４５と、ストレージ構成テーブル１０４６を有する（図２の１０４０に図示する）。管理ソフトウェアはユーザの特定されたストレージのポート（図示しない）のためにボリュームをプロビジョニングすることができる。各ＦＣ−ＳＷ（１０２０、１０３０、１１２０、１１３０、１２２０および１２３０）は独立した複数の冗長ネットワーク、例えば１０２０、１１２０および１２２０のグループと１０３０、１１３０、１２３０の別のグループ、として構成される。ＦＣ−ＳＷのネットワーク（ファブリックのネットワーク）の冗長性を維持するため、ＦＣ−ＳＷの分野ではドメインの概念を利用する。ドメインは複数の接続されたＦＣ−ＳＷからなるファブリックについて固有のドメインＩＤとしての識別子を有する。本実施例において、第１グループに１を付与し、第２グループに２を付与する。冗長ファブリックネットワークがある場合、この図に示す通り、２つのドメインＩＤが付与される。ファブリックネットワークが独立である場合、ドメインＩＤは重複しない。
【００３１】
００６４    増設ラックは少なくともサーバ１１４０および２つのＦＣ−ＳＷ１１２０および１１３０を有する。各サーバは少なくとも、２ポートＨＢＡ１１４３と、仮想マシン（ＶＭ）を動作させるハイパバイザ（図示しない）と、ＶＭ１１４２を有する。ＶＭは、Ｗｉｎｄｏｗｓ（登録商標）やＬｉｎｕｘ（登録商標）といったオペレーティングシステムを実行することができる。ＦＣ−ＳＷのハードウェアの能力は基本ラックのものと同じである。ＦＣ−ＳＷは、エッジＦＣ−ＳＷとコアＦＣ−ＳＷ間のＦＣ−ＳＷ相互接続パスを使用して、基本ラックと増設ラックを接続する。例えば、エッジＦＣ−ＳＷ１１２０はコアＦＣ−ＳＷ１０２０に接続され、エッジＦＣ−ＳＷ１１３０はコアＦＣ−ＳＷ１０３０に接続される。サーバからストレージへの接続は下記のように形成される。サーバはＨＢＡ１１４１を有する。ＨＢＡのポートはエッジＦＣ−ＳＷ１１２０および１１３０に接続される。エッジＦＣ−ＳＷは前述のとおり、コアＦＣ−ＳＷに接続される。ポートの冗長性を維持するため、ＦＣ−ＳＷは２つの異なる冗長クラスタ（１０１１および１０１２）のストレージポートに接続される。イーサネットスイッチ（１０５０、１０６０、１１５０、１１６０、１２５０、１２６０）を利用して、ＬＡＮは各サーバ、ＦＣ−ＳＷおよび管理ソフトウェア１０４９のためのストレージを接続する。本実施例において、イーサネットスイッチを使ったＬＡＮ構成の詳細については図示しない。サーバからストレージへの接続に関して、太線はパスの例を示す。
【００３２】
００６５    図３は、サーバ構成テーブル１０４３の例を示す図である。テーブルは、サーバ名３００１、ＵＵＩＤ３００２、サーバのための管理ＮＩＣのＩＰアドレス３００３、ＨＢＡのポート番号３００４、ポートのＷＷＮ３００５、およびポートが予約されているか否かの欄３００６を有する。ＵＵＩＤは、分散環境において、サーバの重複を禁止するため、サーバに与えられるユニバーサルに固有の識別子である。ＷＷＮ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｎａｍｅ）は、ＩＥＥＥによって規定されるハードウェアの８バイト識別子であり、ＨＢＡの各ポートに付与される。
【００３３】
００６６    図４は、ＦＣ−ＳＷのテーブル（１０４４）の例を示す図である。テーブルは、スイッチ名４００１、スイッチのＩＰアドレス４００２、およびファブリックネットワークの関係を示すドメインＩＤ４００３の欄を有する。
【００３４】
００６７    図５は、コアＦＣ−ＳＷ（１０２０、１０３０）のポート構成テーブル１０４７の例を示す図である。テーブルの上部には、名前５００１、ＩＰアドレス５００２およびドメインＩＤ５００３が格納される。テーブルは、実際のＦＣ−ＳＷのポート＃５０１１、各ポートのリンクアップ／ダウン５０１２、ポートにおいて検出されたＷＷＮ５０１３、およびシステム内のポートの予約情報５０１４の欄を有する。ＦＣ−ＳＷはサーバＨＢＡポートまたは各ＷＷＮのストレージポートからのファブリックログインを使ってリンクアップ／ダウンやパワーアップ／ダウンの初期接続へのログインであるので、ポートにおいて検出されたＷＷＮは、図示されたストレージのポートのＷＷＮである。ＦＣ−ＳＷ間の接続に関し、サーバＨＢＡポートのＷＷＮのリストを示す。予約情報以外の欄の情報は、ＬＡＮを通じてコアＦＣのスイッチから集められる。予約情報は管理ソフトウェアによって規定される。
【００３５】
００６９    図６は、エッジＦＣ−ＳＷのポート構成テーブル１０４８の例を示す図である。フォーマットはコアＦＣ−ＳＷのものと同じである。コアＦＣ−ＳＷのテーブル（図５）と異なる点は、エッジが直接サーバに接続され、ほとんどのポートがサーバＨＢＡポートのＷＷＮを示すことから、検出されるＷＷＮが異なることである。ＦＣ−ＳＷ間の接続に関して、ストレージのポートＷＷＮのリストを示す。
【００３６】
００６９    図７はゾーンテーブル１０４５の例を示す図である。テーブルは、ドメインＩＤ７００１、およびゾーン＃７００２、ゾーン名７００３、およびゾーンにおけるＷＷＮ７００４の欄を有する。ファイバーチャネルのゾーンはドメインＩＤにおいて規定されるＷＷＮ内に論理パスを作成する能力を提供する。予約情報以外の情報は、コアＦＣのスイッチから集められる。
【００３７】
００７０    図８は、ストレージ構成テーブル１０４６の例を示す図である。テーブルは、ストレージ名８００１、ストレージＮＩＣのＩＰアドレス８００２、およびストレージポート＃８００３、ポート名８００４、ポートのＷＷＮ８００５、ポートに属するクラスタ８００６、および予約情報８００８の欄を有する。予約情報８００８に関して、ポートは必要ならば物理ケーブルを修復するのに使用することのできる予約ポートである。
【００３８】
００７１    図１９は、ストレージ構成内のホストグループのテーブルの例である。ホストグループは、ボリュームに対するサーバポートのＷＷＮに基づき、ホストからのファイバチャネルパケットにアクセスすることができる。テーブルは、ストレージ名８００１、ストレージＮＩＣのＩＰアドレス８００２、およびアレイポート＃１９０３、ポート名１９０４、ホストグループ１９０５、ＷＷＮ１９０６およびボリューム番号１９０７の欄を有する。ストレージがサーバポートＷＷＮおよびボリュームとホストグループを形成すると、ホストはボリュームを見ることができる。ホストからのボリュームアクセスの際、ストレージはアレイポート内のボリュームのアドレスとして論理ユニット番号を付与する。ボリュームプロビジョニングの方法および動作を次に説明する。
【００３９】
００７２    図９は、第１実施例に基づく管理ソフトウェア１０４９のボリュームプロビジョニング方法を示すフロー図の例である。入力として、ハイパバイザ管理者などの管理ソフトウェアの管理者は、サーバから接続されボリュームをプロビジョニングされるストレージのポートを選択する。ステップ９０１において、管理ソフトウェアは、管理者の特定したストレージポートに基づき、物理ケーブルを認証し、修復する。このステップの詳細は、図１０を参照して説明する。ステップ９０２において、管理ソフトウェアは、ステップ９０１の結果に基づき、冗長性に関連してサーバとストレージのポート間で物理ケーブルが確立されているかどうかをチェックする。確立されている場合、ステップ９０３に進み、確立されていない場合、ソフトウェアはエラーを表示する。ステップ９０３において、管理ソフトウェアは論理パスを認証し、修復する。このステップの詳細は、図１２を参照して説明する。ステップ９０４において、管理ソフトウェアは、ステップ９０３の結果に基づき、冗長性に関連してサーバとストレージのポート間で論理パス、つまりゾーン、が確立されているかどうかをチェックする。確立されている場合、ステップ９０５に進み、確立されていない場合、ソフトウェアはエラーを表示する。ステップ９０５において、ソフトウェアはストレージにボリュームをプロビジョニングし、サーバに検出ボリュームをプロビジョニングする（ステップ９０６から９０８を参照）。これらのステップ９０１から９０４を使って、管理者はボリュームをプロビジョニングする前に、物理テーブルおよび論理パスを認証することができる。
【００４０】
００７３    ボリュームをプロビジョニングし検出する方法を、ステップ９０６から９０８に示す。管理ソフトウェアは、サーバＷＷＮを有するホストグループを使用するターゲットポートに対し、ターゲットサーバのＷＷＮを有するホストグループにボリュームをプロビジョニングする（ステップ９０６）。プロビジョニングの間、ストレージは他のユーザの介入を防止するために、ストレージのロックリソースを使用する（ステップ９０７）。ボリュームプロビジョニングの後、管理ソフトウェアはサーバのボリュームの検出を指示する（ステップ９０８）。ボリュームが検出された場合、処理は終了する。検出されなかった場合、管理ソフトウェアは管理者に対しエラーを表示する。
【００４１】
００７４    図１０は、管理ソフトウェア１０４９の物理ケーブルの認証および修復の詳細を示すフロー図の例である。ステップ９００１からの一連の入力として、管理者に特定されたストレージのポートを使う。
【００４２】
００７５    ステップ１００１において、管理ソフトウェアはサーバからサーバ構成を集め、図３に示されるサーバ構成を格納する。データを集めるため、ＣＩＭ、ＳＳＨ、ＸＭＬ、ＷＥＢＭまたは他の種類のＩ／Ｆを使用する。ステップ１００２において、管理ソフトウェアはＦＣ−ＳＷの構成を集め、図４のＦＣ−ＳＷリストに基づき、図５および６に示されるように格納する。ＦＣ−ＳＷ構成を集めるため、ＳＭＩＳ、ＳＳＨ、ＸＭＬ、ＷＥＢＭまたは他の種類のＩ／Ｆを使用する。ステップ１００３において、管理ソフトウェアはストレージのポート構成を集め、図６に示されるように格納する。ストレージ構成を集めるため、ＳＭＩ−Ｓ、ＲＭＩ、ＸＭＬ＿ＡＰＩまたは他の種類のＩ／Ｆを使用する。ステップ１００４において、管理ソフトウェアは図３にリストされるサーバの中からあるサーバを選択する。ステップ１００５において、管理ソフトウェアは、エッジのＦＣ−スイッチにより検出されたサーバＨＢＡポートのＷＷＮおよびストレージポートのＷＷＮをたどることにより、サーバＨＢＡポートから選択されたストレージのポートへの接続性を認証する。例えば、管理者が４つのストレージポートを選択した場合、管理サーバは、サーバＨＢＡポートのＷＷＮを図３のサーバ構成テーブルから得て、また選択された４つのストレージポートＷＷＮを図６のストレージポート構成テーブルから得て、サーバＨＢＡポートのＷＷＮとストレージポートＷＷＮとを、エッジスイッチにおいて検出された予約済みでないＷＷＮの欄（３００６において、「予約済み」フラッグがないもの）を使用して、照合する。一致する場合、ステップ１００６に進む。一致しない場合、ステップ１００８に進む。
【００４３】
００７６    ステップ１００６において（管理ソフトウェアがステップ１００５においてサーバポートのＷＷＮとストレージポートのＷＷＮ間の接続を検出した後）、管理ソフトウェアは各サーバのＨＢＡポートがＦＣ−ＳＷの独立したドメインＩＤに接続するか否かを、エッジＦＣ−ＳＷテーブルのアクティブポートにおいて検出されたＷＷＮの欄を使用して、認証する（図６）。ＨＢＡポートに独立ドメインＩＤがある場合、ステップ１００７に進み、ない場合、ステップ１００８に進む。
【００４４】
００７７    ステップ１００７において（管理ソフトウェアがステップ１００５においてサーバポートのＷＷＮとストレージポートのＷＷＮ間の接続を検出し、各サーバＨＢＡポートがＦＣ−ＳＷの独立ドメインのＩＤに接続することを認証した後）、管理ソフトウェアは、ストレージのクラスタ情報を使って、各サーバのＨＢＡポートが各ストレージの独立したストレージのクラスタに接続されているかどうかを認証する。あるドメインにおいて、もしドメインのすべての検出されたＷＷＮからなるドメインキャッシュ情報に基づき、一つのサーバＨＢＡポートのＷＷＮが少なくとも２つの対象ストレージアレイポートを有し、他のドメインおよび他のＨＢＡポートのＷＷＮに基づき少なくとも２つの対象ストレージアレイポートを有する場合、認証処理は成功である。そうでない場合、処理は失敗である。認証が成功した場合、処理はステップ１０１０に進む。認証が失敗した場合、処理はステップ１００８に進む。
【００４５】
００７８    ステップ１００８において、管理ソフトウェアは図５および６を参照して、コアおよびエッジＦＣ−ＳＷのポートのうちのすべての予約済みポートを確認する。予約済みポートがある場合、ステップ１００９に進む。予約済みポートがない場合、管理ソフトウェアは認証失敗としてエラーを報告する。ステップ１００９において、管理ソフトウェアは他のパスを選択する。このステップの詳細は図１１に示す。ステップ１０１０において、管理ソフトウェアはすべてのサーバに関してこのステップが実行されたか否かを確認する。このプロセスがすべてのサーバに関して実行されている場合、この処理は終了する。そうでない場合、ステップ１００４に進む。
【００４６】
００７９    図１１は、物理ケーブルを確定するために予約済みケーブルを選択する処理のフロー図の例を示す。ステップ１００９からのサーバおよび対象ストレージの各ポートが入力される。
【００４７】
００８０    ステップ１１０１において、管理ソフトウェアは、サーバＨＢＡポートのＷＷＮと図６において検出されたＷＷＮ（エッジＦＣ−ＳＷ）とを照合する。一致しなかった場合は、ステップ１１０２に進む。一致した場合は、ステップ１１０６に進む。ステップ１１０２において、管理ソフトウェアは、ＳＭＩ−Ｓ＿ＣＩＭ（Ｃｏｍｍｏｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｍｏｄｅｌ）、ＳＳＨ（ｓｅｃｕｒｅ  ｓｏｃｋｅｔ  ｓｈｅｌｌ）またはサーバおよびエッジＦＣ−ＳＷ用の他のＩ／Ｆを使用して、予約済みＨＢＡのポートと予約済みエッジＦＣ−ＳＷポートをリンクアップする。ステップ１１０３において、管理ソフトウェアは、サーバＨＢＡポートのＷＷＮと図６において検出されたＷＷＮを照合する。一致しなかった場合、管理ソフトウェアは、リンクアップ用のＩ／Ｆと同じＩ／Ｆを使用して予約済みポートをリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ１１０４に進む。ステップ１１０４において、管理ソフトウェアはサーバ構成およびエッジＦＣ−ＳＷのポート構成から予約状態を解除し、ＨＢＡのポートとエッジＦＣ−ＳＷのポートを選択する。ステップ１１０５において、管理ソフトウェアは、選択されたＨＢＡのポートとＦＣ−ＳＷのポートを除く予約済みＨＢＡポートとエッジＦＣ−ＳＷポートをリンクダウンする。これで処理が終了する。
【００４８】
００８１    ステップ１１０６において、管理ソフトウェアは、サーバＨＢＡポートのＷＷＮと図５において検出されたＷＷＮ（コアＦＣ−ＳＷ）とを照合する。一致しなかった場合、ステップ１１０７に進む。一致した場合、ステップ１１１１に進む。ステップ１１０７において、管理ソフトウェアはＳＭＩ−Ｓ、ＣＩＭ、ＳＳＨまたはサーバおよびコアＦＣ−ＳＷ用の他のＩ／Ｆを使用して、予約済みＨＢＡポートと予約済みコアＦＣ−ＳＷポートとをリンクアップする。ステップ１１０８において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮと図５において検出されたＷＷＮとを照合する。一致しなかった場合、管理ソフトウェアは、リンクアップ用のＩ／Ｆと同じＩ／Ｆを使用して予約済みポートをリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ１１０９に進む。ステップ１１０９において、管理ソフトウェアは、サーバ構成およびコアＦＣ−ＳＷのポート構成から予約状態を解除し、ＨＢＡポートとコアＦＣ―ＳＷポートを選択する。ステップ１１１０において、管理ソフトウェアは予約済みＨＢＡポートとコアＦＣ−ＳＷポートをリンクダウンする。これで処理が終了する。
【００４９】
００８２    ステップ１１１１において、管理ソフトウェアはストレージポートＷＷＮと図５において検出されたＷＷＮを照合する。一致しなかった場合、ステップ１１１２に進む。一致した場合、ソフトウェアは未確認エラーメッセージを発行する。ステップ１１１２において、管理ソフトウェアは、ＸＭＬ＿ＡＰＩ、ＲＭＩ、ＣＩＭ、ＳＳＨまたはサーバおよびコアＦＣ−ＳＷ用の他のＩ／Ｆを使用して予約済みストレージポートとコアＦＣ−ＳＷポートとをリンクアップする。ステップ１１１３において、管理ソフトウェアはストレージポートのＷＷＮと図５において検出されたＷＷＮを照合する。一致しなかった場合、管理ソフトウェアは予約済みポート同士をリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ１１１４に進む。ステップ１１１４において、管理ソフトウェアは、ストレージポート構成およびコアＦＣ−ＳＷのポート構成から予約状態を解除し、ＨＢＡポートとコアＦＣ―ＳＷポートを選択する。ステップ１１１５において、管理ソフトウェアは予約済みストレージポートとコアＦＣ−ＳＷポートをリンクダウンする。これで処理が終了する。この処理によって、予約済みポートと予約済みケーブルを使って、ケーブルを確立することができる。
【００５０】
００８３    図１２は、論理パス（本発明におけるゾーン）を認証し、必要な時にそれを確定させるための処理のフロー図の例を示す。この処理は「ドメインＩＤ」付与済みの各エッジＦＣスイッチに対して実行される。この構成においては２つのドメインが存在し、管理ソフトウェアは両ドメインに対して処理を実行する。ステップ１００７においてアレイの冗長ポートとして定義づけられたサーバおよび対象ストレージのポートが入力される。
【００５１】
００８４    ステップ１２０１において、管理ソフトウェアは、図３のサーバ構成テーブルからサーバを選択する。ステップ１２０２において、管理ソフトウェアは、図７において格納されるコアＦＣ−ＳＷからゾーン情報をゾーン構成として集める。ステップ１２０３において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮとストレージのＷＷＮを各ファブリックネットワークの各ドメインＩＤ内のＷＷＮを有する各ゾーンと照合する。一致しなかった場合、ステップ１２０４に進む。一致した場合、ステップ１２０５に進む。ステップ１２０４において、管理ソフトウェアは修復ゾーン処理を実行する（ステップ１２１０から１２１５）。ステップ１２０５において、管理ソフトウェアは図８にリストされたストレージ構成情報を集める。ステップ１２０６において、管理ソフトウェアは、対象アレイポートのホストグループの冗長性を確認する。各対象ポートが対象サーバＷＷＮを有するホストグループを有する場合、ステップ１２０８に進む。そうでない場合、ステップ１２０７に進む。ステップ１２０７において、管理ソフトウェアはホストグループまたはサーバＷＷＮを対象ポートにある対象アレイのホストグループに修復する。このステップの詳細を図１８に示す。ステップ１２０８において、管理ソフトウェアはこの処理がすべてのサーバに対して実行されたか否かを確認する。この処理がすべてのサーバに対して実行された場合、処理を終了する。そうでない場合、ステップ１２０１に進む。
【００５２】
００８５    サーバのための修復ゾーン処理をステップ１２１０から１２１５に示す。管理者によって選択されたサーバおよび対象ポートが入力される。ステップ１２１０において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮとストレージポートのＷＷＮを、ＷＷＮを有するゾーンと照合する。一致した場合、処理は終了する。一致しなかった場合、ステップ１２１１に進む。ステップ１２１１において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮを、ＷＷＮを有するゾーンと照合する。一致した場合、ステップ１２１２に進む。一致しなかった場合、ステップ１２１３に進む。ステップ１２１２において、管理ソフトウェアはストレージポートのＷＷＮを存在するゾーンに加え、処理を終了する。ステップ１２１３において、管理ソフトウェアはストレージポートのＷＷＮを、ＷＷＮを有するゾーンと照合する。一致した場合、ステップ１２１４に進む。一致しなかった場合、ステップ１２１５に進む。ステップ１２１４において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮを存在するゾーンに加え、処理を終了する。ステップ１２１５において、管理ソフトウェアはサーバＨＢＡポートのＷＷＮとストレージポートのＷＷＮとで新たなゾーンを作成し、処理を終了する。
【００５３】
００８６    図１８は、アレイのポート内のホストグループまたはホストグループ用のサーバＷＷＮを修復する処理のフロー図の例を示す。この処理は各クラスターストレージサブシステムに対して実行される。管理ソフトウェアから、アレイのポートおよびサーバのＷＷＮが入力される。
【００５４】
００８７    ステップ１８０１において、管理ソフトウェアは対象アレイのポート内のホストグループにサーバＷＷＮが含まれるか否かを確認する。サーバＷＷＮがホストグループに含まれる場合、処理は終了する。そうでない場合、ステップ１８０２に進む。ステップ１８０２において、管理ソフトウェアはアレイポート内にサーバのポートＷＷＮ用のホストグループがあるか否かを確認する。ある場合、ステップ１８０４に進む。ない場合、ステップ１８０３に進み、その後１８０４に進む。ステップ１８０３において、管理ソフトウェアはストレージアレイに対して、対象アレイのポートにホストグループを作成するよう要求する。ステップ１８０４において、管理ソフトウェアはストレージアレイに対し、ホストグループにサーバのＷＷＮを加えるよう要求する。これで処理が終了する。
【実施例２】
【００５５】
００８９    本発明の第２実施例は、Ｎポートの仮想化に関する。本実施例の利点は、ＲＡＷデバイスのＮＰＩＶマッピングでの冗長ファブリックネットワークを考慮して、ＶＭユーザがＶＭに対するストレージポートの冗長性を維持することができる点にある。第２実施例は第１実施例と共通する部分がある。よって、第１実施例との相違点についてのみ説明する。図１の物理構成がこの実施例においても適切である。
【００５６】
００９０    図１３は、実施例２に基づき、ストレージ側の視点から図１のシステムの論理構成の例を示す。図２に示す実施例１に比べ、実施例２ではＮＰＩＶに使用されるＶＭ１１４５およびノードＷＷＮおよびポートＷＷＮ１１４４が加わっている。その結果、ＶＭはハイパバイザによって提供されるポートＷＷＮを介してローボリュームに直接アクセスすることができる。ホストのＶＭによって加えられたＶＭの構成情報は、ＷＥＢＭ、ＣＩＭまたはその他のＯＳ管理Ｉ／Ｆを使用して得ることができる。
【００５７】
００９１    図１４は、集められたＶＭ構成のテーブルの例を示す。テーブルは、ＶＭ名、サーバＵＵＩＤに属するＶＭ、ＮＰＩＶのポート＃、およびＮＰＩＶのポートＷＷＮの欄を有する。ＮＰＩＶのノードＷＷＮもこのテーブルに含むことができる。
【００５８】
００９２    ＮＰＩＶの特徴として、各ＶＭは仮想的な自身だけのポートＷＷＮを有することができる。そのため、エッジＦＣ−ＳＷのためのポート構成はポートのＷＷＮを含む。図１５は、第２実施例にかかるエッジＦＣ−ＳＷのポート構成のテーブルの例を示す。ポート＃１はＶＭを有するホストに接続される。ＶＭのうちの一つは仮想ＨＢＡポートのＷＷＮを有する。エッジスイッチに対してファブリックログインが実行されたため、上記ＷＷＮはエッジＦＣ−ＳＷにおいて検出される。その結果、図１５のテーブルにおいて、ポート＃１には仮想ＨＢＡポートのＷＷＮが付与されている。
【００５９】
００９３    図１６は、実施例２に基づくゾーンリストのテーブルの例を示す。バーチャルＨＢＡポートのＷＷＮを使用してゾーンを作成する場合、実施例１のゾーンリスト（図７）を利用することができる。実施例２に関して考慮すべき点は、ストレージポートのＷＷＮを有する仮想ＨＢＡポートのＷＷＮを使って新しいゾーンを作成することである。そのため、既存のゾーンに対し、図１６に示すゾーンリスト追加テーブルが加えられる。テーブルのフォーマットは図７と同じである。ここでも、相違点はＮＰＩＶのためのゾーンが追加されたことだけである。
【００６０】
００９４    実施例２のフローおよび動作に関して、実施例１との相違点は、管理ソフトウェアがＶＭのために他のゾーンを論理パスとして作成しなければならないことである。処理は図９に示した実施例１の処理と類似している。
【００６１】
００９５    図１７は、第２実施例において、ＮＰＩＶを考慮に入れた認証を含むボリュームプロビジョニング処理のフロー図の例を示す。図１７は追加ステップ９１３と９１４、および図９のステップ９０６から９０８に代わる新規ステップ９１６から９１８を示す。ステップ９１３はＶＭのための論理パスを認証して修復するためのステップである。このステップの詳細を図１２に示す。このステップにおいて、実施例１では管理サーバはサーバを使用する。実施例２では、ＮＰＩＶのノードおよびポートＷＷＮを使用してゾーンを作成するため、サーバの代わりに、管理サーバは図１４のＶＭ構成テーブルでのＶＭを使用する。ステップ９１３の結果に基づき、ステップ９１４ではパスがＶＭのためのゾーンとしての論理パスであるか否かを確認する。加えて、ステップ９１６と９１７のボリュームプロビジョニングに際し、管理ソフトウェアはＶＭ＿ＮＰＩＶのＷＷＮに対してボリュームをプロビジョニングし、ＶＭにプロビジョニングされたボリュームを検出するよう指示する。ステップ９１８では、ＶＭのボリュームの存在を確認する。
【実施例３】
【００６２】
００９７    サーバや仮想マシンの管理者にとって、冗長性を考慮に入れつつイーサネットのネットワークを確立することは難しい。実施例３は、仮想マシンの実行されるサーバ間のイーサネットのネットワークを認証し、冗長性を持たせるための方法を開示する。
【００６３】
００９８    図２０Ａは実施例３に基づき、イーサネットのネットワークの視点から、図１のシステムの論理構成例を示す。システムは、基本ラック１０００および増設ラック１１００および１２００を有する。基本ラック１０００は２つの集約スイッチ１０５０、１０６０、および管理サーバ１０４０からなる。図２０Ｂは、図２０Ａの管理サーバ１０４０の詳細を示す。管理サーバ１０４０は、物理テーブルおよび論理パスを認証するための管理ソフトウェア（ＭＧＭＴソフトウェア、１０４９）を有する。ソフトウェアは、サーバおよびイーサネットスイッチの情報用の構成情報収集機能１０４１と、物理ケーブルおよび論理パスのための認証機能１０４２と、イーサネットのためのサーバテーブル３００００と、イーサネットスイッチテーブル３１０００と、アクセススイッチポートテーブル３２０００と、集約スイッチポートテーブル３３０００と、トポロジーサマリーテーブル３４０００と、パステーブル３７０００と、最短パステーブル３８０００と、セットポートテーブル４００００を含む。管理ソフトウェアは、イーサネットスイッチの各ポートに対してＶＬＡＮ（仮想ローカルエリアネットワーク）ＩＤを付与することができる。
【００６４】
００９９    アクセススイッチ（１１５０、１１６０、１２５０および１２６０）が集約スイッチ（１０５０および１０６０）に接続される。ＶＭ１１４７が仮想スイッチに接続され（２９０１０から２９０１３）、仮想スイッチがＮＩＣに接続される（２９０４０から２９０４７）。ＮＩＣはアクセススイッチ（１１５０、１１６０、１２５０および１２６０）に接続される。各増設ラックは、サーバ１１４０およびアクセススイッチ（１１５０、１１６０、１２５０および１２６０）からなる。各サーバは２つのＮＩＣ（２９０４０から２９０４７）、ＶＭを実行するためのハイパバイザ（図示しない）、およびＶＭ１１４７を有する。ＶＭは、ＷｉｎｄｏｗｓやＬｉｎｕｘといったオペレーティングシステムを実行することができる。管理サーバ１０４０はサーバ１１４０、アクセススイッチ（１１５０、１１６０、１２５０および１２６０）、および集約スイッチ（１０５０および１０６０）に、ＬＡＮ２０１０を介して接続される。
【００６５】
０１００    図２１は、イーサネットのためのサーバテーブル３００００の例を示す。テーブルはサーバ名３０００１、ＵＵＩＤ３０００２、サーバのＩＰアドレス３０００３、サーバの仮想スイッチ３０００４、ＮＩＣ識別子３０００５、ＮＩＣのＭＡＣアドレス３０００６、およびＮＩＣまたは仮想スイッチ３０００４のために設定されるＶＬＡＮ＿ＩＤ３０００７の欄を有する。ＵＵＩＤは分散環境においてサーバの重複を禁止するための、サーバのためのユニバーサルに固有の識別子である。
【００６６】
０１０１    図２２は、イーサネットスイッチテーブル３１０００の例を示す。テーブルは、イーサネットスイッチ名３１００１、それらのＩＰアドレス３１００２、およびそれらの属性３１００３の欄を含む。属性３１００３は，「アクセス」または「集約」である。
【００６７】
０１０２    図２３は、アクセススイッチテーブル３２０００のポートの例を示す。テーブルは、イーサネットスイッチ名３１００１、そのＩＰアドレス３１００２、およびそのポート識別子３２００１、検出されたデバイスＩＰアドレス３２００３、および検出されたポート識別子３２００４の欄を有する。検出されたデバイスＩＰアドレス３２００３と検出されたポート識別子３２００４はイーサネットスイッチ３１００１に接続されるデバイスおよびそのポート識別子を示す。
【００６８】
０１０３    図２４は集約スイッチテーブル３３０００のポートの例を示す。テーブルは、イーサネットスイッチ名３１００１、そのＩＰアドレス３１００２、およびそのポート識別子３３００１と、検出されたデバイスＩＰアドレス３３００３と、検出されたポート識別子３３００４の欄を有する。検出されたデバイスＩＰアドレス３３００３および検出されたポート識別子３３００４はイーサネットスイッチ３１００１に接続されるデバイスおよびそのポート識別子を示す。
【００６９】
０１０４    図２５は、トポロジーサマリーテーブル３４０００の例を示す。テーブルは、ソースデバイスＩＤ３４００１、ソースデバイスポート３４００２、接続デバイスＩＤ３４００３および接続デバイスポート３４００４の欄を有する。このテーブルは、スイッチポートからスイッチポート接続性およびＮＩＣからスイッチポート接続性を表す。このテーブルは、テーブル３００００、３１０００、３２０００および３３０００の情報を使って作成される。
【００７０】
０１０５    図２６は、サーバ間のイーサネットのネットワークを認証し構成する処理のフロー図の例を示す。この処理は、ユーザがＭＧＭＴソフトウェア１０４９を使ってイーサネットのネットワークを認証し構成するよう指示することにより開始される。ステップ３５００１において、ソフトウェアは上述の通り情報を収集し、テーブルを作成する。ステップ３５００２において、ソフトウェアは仮想スイッチとＮＩＣ間の接続を認証する。ステップ３５００３において、ソフトウェアは、認証が成功したか否かを判断する。認証が失敗した場合、ソフトウェアはエラーを表示する。認証が成功した場合、ソフトウェアはステップ３５００４において、サーバとアクセススイッチ間の冗長性を認証する（図２７参照）。ステップ３５００５において、ソフトウェアは認証が成功したか否かを判断する。認証が失敗した場合、ソフトウェアはエラーを表示する。認証が成功した場合、ソフトウェアはステップ３５００６において、アクセスと集約スイッチ間の冗長性を認証する（図３２参照）。ステップ３５００７において、ソフトウェアは認証が成功したか否かを判断する。認証が失敗であった場合、ソフトウェアはエラーを表示する。認証が成功であった場合、ソフトウェアはステップ３５００８においてＶＬＡＮ＿ＩＤを各スイッチポートに設定する。このステップの詳細を図３０Ａ及び図３０Ｂに示す。これで処理が終了する。
【００７１】
０１０６    図２７は、２つのサーバ間のネットワークの冗長性を認証する処理のフロー図の例を示す。この図は、図２６のステップ３５００４の詳細を示す。処理はサーバｉとサーバｊの入力から開始する。ステップ３６００１において、ソフトウェアはサーバｉおよびｊに属するＮＩＣを探す。ステップ３６００２において、ソフトウェアは、ＮＩＣｉｘとＮＩＣｉｙ（ＮＩＣａｂとは、サーバａに属するｂ番目のＮＩＣという意味）間のすべてのパスを列挙する。ステップ３６００３において、ソフトウェアは列挙されたパスをパステーブル３７０００に格納する（図２８参照）。ステップ３６００４において、ソフトウェアは、パステーブル３７０００からサーバｉとサーバｊ間の最短パスを選択する（パスｎが選択されたパス）。ステップ３６００５において、ソフトウェアはパスｎを最短パステーブル３８０００に格納し（図２９参照）、選択されたパスｎをパステーブル３７０００から削除する。ステップ３６００６において、ソフトウェアは、最短パステーブル３８０００内の集約スイッチを含むすべてのパスを削除する。ステップ３６００７において、ソフトウェアは、パステーブル３７０００内にパスが残っているか否かを判断する。残っている場合、ステップ３６００４に戻る。残っていない場合、ソフトウェアはステップ３６００８において最短パステーブル３８０００に含まれるパスの数を数える。ステップ３６００９において、ソフトウェアは、少なくとも２つのパスを数えたか否かを判断する。そうである場合、認証は成功したとして終了する。そうでなかった場合、認証は失敗に終わる。
【００７２】
０１０７    図２８は、パステーブル３７０００の例を示す。このテーブルは、図２７の処理の中で作成され、使用される。パス３７００１はイーサネットのネットワークの終端間パスを示す。
【００７３】
０１０８    図２９は、最短パステーブル３８０００の例を示す。このテーブルは、図２７に示す処理の間に作成され、使用される。パス３８００１はイーサネットのネットワークの終端間パスを表す。このテーブルを使って、２つのサーバ間のパスの数を算出することができる。
【００７４】
０１０９    図３０Ａは、各スイッチポートにＶＬＡＮ＿ＩＤを設定する処理のフロー図の例を示す。この処理は図２６のステップ３５００８の詳細を表す。ステップ３９０００において、ソフトウェアは、サーバｉの仮想スイッチに設定されるＶＬＡＮ＿ＩＤを探し、検出したＶＬＡＮ＿ＩＤ｛ｖｉｄ｝のセットを作成する。ステップ３９００１において、ソフトウェアは、トポロジーサマリーテーブル３４０００からサーバｉのＮＩＣのうちの一つに接続された接続デバイスおよびそのポートを探し（図２５）、検出された接続デバイスおよびそのポート｛（ｄｉｄ、ｐｉｄ）｝のセットを作成する。デバイスＩＤとポートＩＤ｛（ｄｉｄ、ｐｉｄ）｝およびＶＬＡＮ＿ＩＤ｛ｖｉｄ｝を入力として、ソフトウェアはステップ３９００２においてポートのＶＬＡＮ＿ＩＤを設定する。このステップの詳細を図３０Ｂに示す。ステップ３９００３において、もしソフトウェアがサーバｉのすべてのＮＩＣについて「ポートのＶＬＡＮ＿ＩＤを設定」を実行した場合、処理は終了し、そうでない場合、処理はステップ３９００１に戻る。
【００７５】
０１１０    図３０Ｂは、図３０ＡにおけるポートのＶＬＡＮ＿ＩＤを設定するステップ３９００２の詳細な処理を示すフロー図の例であり、デバイスＩＤとポートＩＤ｛（ｄｉｄ、ｐｉｄ）｝およびＶＬＡＮ＿ＩＤ｛ｖｉｄ｝を入力とする。ステップ３９０１０において、ソフトウェアは、接続デバイス（ｄｉｄ）がサーバであるか否かを判断する。そうである場合、処理は終了する。そうでない場合、ソフトウェアはステップ３９０１１において、セットポートテーブル４００００（図３１参照）内に｛（ｄｉｄ、ｐｉｄ）｝が存在するか否かを判断する。ある場合、処理は終了する。ない場合、ソフトウェアはステップ３９０１２内においてｐｉｄとして表されるポートに｛ｖｉｄ｝を設定する。ステップ３９０１２において、収集機能１０４１を使って、ｐｉｄで識別されるポートに設定されたＶＬＡＮ＿ＩＤを取得する。ＭＧＭＴソフトウェア１０４９は、｛ｖｉｄ｝からポートへ設定されていないＶＬＡＮ＿ＩＤを選択し、選択ＩＤをポートに設定する。
【００７６】
０１１１    ステップ３９０１３において、ソフトウェアはセットポートテーブル４００００に｛（ｄｉｄ、ｐｉｄ）｝を格納する。ステップ３９０１４において、ソフトウェアはトポロジーサマリーテーブル３４０００（図２５）から（ｄｉｄ）に接続された接続デバイスおよびそのポートを探し、接続デバイスおよびそのポート｛（ｄｉｄ’、ｐｉｄ’）｝のセットを得る。ステップ３９０１５において、ソフトウェアは１つの｛（ｄｉｄ’、ｐｉｄ’）｝を選択する。デバイスＩＤとポートＩＤ｛（ｄｉｄ、ｐｉｄ）｝およびＶＬＡＮ＿ＩＤ｛ｖｉｄ｝を入力として、ソフトウェアはステップ３９００２においてポートのＶＬＡＮ＿ＩＤを設定する。ステップ３９０１６において、もしすべての｛（ｄｉｄ’、ｐｉｄ’）｝に対して「ポートにＶＬＡＮ＿ＩＤを設定」が実行された場合、処理は終了する。そうでない場合、処理はステップ３９０１５に戻る。図３０Ｂのステップ３９０１５および３９００２は「ポートにＶＬＡＮ＿ＩＤを設定する」再帰的処理を示す。
【００７７】
０１１２    図３０Ｂのステップ３９００２は、ＶＬＡＮを設定する処理の再帰的特徴を示す。ネットワークにおけるすべての関係するポートを構成するために、処理は一つのスイッチから始まってそれに接続されるスイッチに対して行われ、各スイッチに対して図３０Ｂのすべてのステップを実行する。図３０Ｂにおけるステップ３９０１２は、ポートに対して実際にＶＬＡＮを設定するステップである。図３０Ｂの残りのステップは、ＶＬＡＮが構成されるべきデバイスに他のデバイスが接続されているか否かを検出するためのものである。そのため、ステップ３９０１４の後、ステップ３９０１５の前に、ソフトウェアは選択可能なポートがあるか否かを確認する。ある場合はステップ３９０１５に進み、ない場合は処理を終了する。
【００７８】
０１１３    図３１は、セットポートテーブル４００００の例を示す。このテーブルは図３０Ａ及び図３０Ｂに示す処理の間に作成され、使用される。デバイスＩＤ４０００１はサーバおよびイーサネットスイッチのＩＰアドレスを表す。デバイスポート４０００２は、イーサネットスイッチおよびＮＩＣのポートの識別子を表す。
【００７９】
０１１５    図３２は、図２６に示されるアクセスと集約スイッチ間の冗長性を認証するステップ３５００６の詳細な説明を示すフロー図の例である。ステップ４１０００において、ソフトウェアは、イーサネットスイッチテーブル３１０００（図２２）からすべてのアクセススイッチを列挙し、アクセススイッチ｛ａｓ｝のセットを形成する。ステップ４１００１において、ソフトウェアは｛ａｓ｝に含まれるアクセススイッチのうちの１つを選択する。ステップ４１００２において、ソフトウェアは、アクセススイッチテーブル３２０００（図２３）内のポートを使って、イーサネットスイッチテーブル３１０００に列挙されたすべての集約スイッチに選択されたアクセススイッチが接続されているか否かを確認する。ステップ４１００３において、ステップ４１０２が｛ａｓ｝内のすべてのアクセススイッチに対して実行された場合、処理が終了する。そうでない場合、処理はステップ４１００１に戻る。
【００８０】
０１１５    当然のことながら、図１に示すシステム構造は、本発明が実施され得る情報システムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、上述の発明を実施するために用いられるモジュール、プログラム及びデータ構造を格納しかつ読み出すことができる公知のＩ／Ｏ装置（例えば、ＣＤ及びＤＶＤドライブ、フロッピー（登録商標）ディスクドライブ、ハードドライブ等）を有し得る。これらのモジュール、プログラム及びデータ構造は、当該コンピュータ読み取り可能媒体上で符号化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムが存在する一つ以上のコンピュータ読み取り可能媒体から独立したコンピュータ読み取り可能媒体に格納することができる。システムの構成要素は、あらゆる形態又は媒体のデジタルデータ通信、例えば通信ネットワーク、によって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク、ワイドエリアネットワーク、例えばインターネット、無線ネットワーク、ストレージエリアネットワーク等、を含む。
【００８１】
０１１６    本明細書では、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。しかし当業者にとっては、本発明を実施するためにこれら具体的な詳細のすべてが必要なわけではないことは明らかであるだろう。また、留意すべき点として、本発明は、通常はフローチャート、フロー図、構成図又はブロック図として記載されるプロセスとして説明されてもよい。フローチャートでは動作を逐次プロセスとして説明するが、動作の多くは並行して又は同時に実行することができる。さらに、動作の順番は並び替えてもよい。
【００８２】
０１１７    当技術分野では周知であるように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの組み合わせによって実行することができる。本発明の実施形態の様々な態様は、回路や論理装置（ハードウェア）を用いて実施してよく、その一方で、その他の態様は、機械読取可能媒体（ソフトウェア）上に記憶された命令を用いて実施してもよく、当該発明は、プロセッサによって実行された場合には、プロセッサに本発明の実施形態を実行させる方法を実施させるものである。さらに、本発明のいくつかの実施形態は、ハードウェアのみにおいて実施されてもよく、その他の実施形態は、ソフトウェアのみで実施されてもよい。さらに、説明された様々な機能は一つのユニットで実施することができ、又はあらゆる方法によって多くの構成要素に広めることができる。ソフトウェアによって実施された場合、本発明の方法は、コンピュータ読取可能媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。望ましい場合には、圧縮およびまたは暗号化形式で命令を媒体に記憶することができる。
【００８３】
０１１８    上記により、本発明が、ボリュームをプロビジョニングする前に冗長パスを認証するための方法、装置およびコンピュータ読取可能な媒体に記憶されたプログラムを提供するものであることが明らかであろう。さらに、本明細書において特定の実施形態が示され説明されているが、当業者にとって明白なように、開示された特定の実施形態の代わりに、同じ目的を達成するために創出された構成を用いてもよい。本開示は、本発明のあらゆる適応例や変形例を対象とすることを意図したものであり、また以下の請求項で用いられる用語は、本発明を本明細書で開示した特定の実施形態に限定するよう解釈されるべきではない。むしろ本発明の範囲は、以下の請求項によって判断されるべきものであり、以下の請求項は、当該請求項が権利を有する同等物の範囲全体と共に、請求項の解釈について確立された原則に従って解釈されるものである。
【符号の説明】
【００８４】
１０００：基本ラック
１１００、１２００：増設ラック
１０１０：ストレージ
１０４０：サーバ（管理サーバ）
１１４０、１２４０：サーバ
１０５０、１０６０、１１５０、１１６０、１２５０、１２６０：イーサネットスイッチ
１１４０、１２４０：  サーバ
１３００：  データセンターネットワーク
【図１】
2014026637.tif 000003
【図２】
2014026637.tif 000004
【図３】
2014026637.tif 000005
【図４】
2014026637.tif 000006
【図５】
2014026637.tif 000007
【図６】
2014026637.tif 000008
【図７】
2014026637.tif 000009
【図８】
2014026637.tif 000010
【図９】
2014026637.tif 000011
【図１０】
2014026637.tif 000012
【図１１】
2014026637.tif 000013
【図１２】
2014026637.tif 000014
【図１３】
2014026637.tif 000015
【図１４】
2014026637.tif 000016
【図１５】
2014026637.tif 000017
【図１６】
2014026637.tif 000018
【図１７】
2014026637.tif 000019
【図１８】
2014026637.tif 000020
【図１９】
2014026637.tif 000021
【図２０Ａ】
2014026637.tif 000022
【図２０Ｂ】
2014026637.tif 000023
【図２１】
2014026637.tif 000024
【図２２】
2014026637.tif 000025
【図２３】
2014026637.tif 000026
【図２４】
2014026637.tif 000027
【図２５】
2014026637.tif 000028
【図２６】
2014026637.tif 000029
【図２７】
2014026637.tif 000030
【図２８】
2014026637.tif 000031
【図２９】
2014026637.tif 000032
【図３０Ａ】
2014026637.tif 000033
【図３０Ｂ】
2014026637.tif 000034
【図３１】
2014026637.tif 000035
【図３２】
2014026637.tif 000036
【外国語明細書】
2014026637000001.pdf
2014026637000002.pdf
2014026637000003.pdf
2014026637000004.pdf