(57)【要約】【課題】  コンピュータシステムにおいて、安価で簡易なフェイルオーバ機能を実現することができる。【解決手段】  記憶装置および複数のホストバスアダプタに接続された切替器と、前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成するコントローラを備え、前記切替器は、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する。【選択図】      図６
2018156218.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置および複数のホストバスアダプタに接続された切替器と、
前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成するコントローラを備え、
前記切替器は、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する、
パス切替装置。
【請求項２】
前記冗長構成情報は、前記記憶装置の接続先となる前記複数のホストバスアダプタの接続順位を含み、
前記コントローラは、前記接続順位を参照して、前記パス切替信号を生成する、
請求項１に記載のパス切替装置。
【請求項３】
前記コントローラは、前記切替器の内部に配置される、
請求項１又は２に記載のパス切替装置。
【請求項４】
前記コントローラは、ＢＩＯＳ（Basic Input Output System）コードを実行するＣＰＵ（Central Processing Unit）であり、
前記ＣＰＵが、前記障害情報を生成し、前記複数のホストバスアダプタのうち、障害の無い前記ホストバスアダプタと前記記憶装置を接続させるための信号を生成する、
請求項１乃至３のいずれか１項に記載のパス切替装置。
【請求項５】
記憶装置と複数のホストバスアダプタに接続された切替器のパス切替方法であって、
前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成し、
前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する、
パス切替方法。
【請求項６】
記憶装置と複数のホストバスアダプタに接続された切替器のパス切替プログラムであって、
前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成し、
前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する、
ことをコンピュータに実行させるパス切替プログラム。
【請求項７】
記憶装置と、
複数のホストバスアダプタと、
前記記憶装置と前記複数のホストバスアダプタに接続された切替器と、
前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成するコントローラを備え、
前記切替器は、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する、
コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置との接続を切替えるパス切替装置等に関する。
【背景技術】
【０００２】
複数のＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）を１単位とするＨＤＤ  Ｂｏｘを備え、拡張カードを介して複数のＨＤＤ  Ｂｏｘとアクセス可能なコンピュータシステムがある。具体的には、ＨＤＤ  Ｂｏｘは、拡張カードの接続規格の一つであるＰＣＩｅ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ−Ｅｘｐｒｅｓｓ）カードを介してコンピュータシステムのシステムバスと接続される。ＰＣＩｅカードの一例は、ＳＡＳ（Ｓｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）カードである。
【０００３】
一方で、ＳＡＳカードの障害発生によって、当該ＳＡＳカードと接続されたＨＤＤ  Ｂｏｘ内のデータにアクセスできなくなる。例えば、障害が発生したＳＡＳカードに接続されたＨＤＤ  Ｂｏｘ内のＨＤＤにコンピュータシステムのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）がインストールされている場合、ＯＳが起動できずコンピュータシステムの運用が停止することになる。
【０００４】
このため、関連技術は、ＨＤＤ  ＢｏｘごとにＳＡＳカードを接続し、ＯＳから複数のＳＡＳカードを跨いだソフトウエアＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成して冗長性を確保している。また、ソフトウエアＲＡＩＤを組む場合、システム設計の知識が必要であり、さらに、ソフトウエアＲＡＩＤでは、２つのＨＤＤ  Ｂｏｘを跨ぐ２つのＨＤＤに同じデータを書き込むように設定をするために、ＨＤＤの容量は２分の１となる。
【０００５】
他の関連技術は、外部ストレージに対して、複数のＦＣ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ）カードまたは複数のＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）カードを接続して冗長性を持せている。しかしながら、外部ストレージは高額で物理的なスペースが必要である。
【０００６】
また、特許文献１、２には、複数のストレージと複数のコンピュータとの接続をスイッチによって切替えるコンピュータシステムが記述されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】実開平０１−０６４７４９号公報
【特許文献２】特表２０１５−５２８９６２号公報
【特許文献３】特開２０００−１６３３５７号公報
【特許文献４】特開２０１５−０６５６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１の技術は、障害検出後からスイッチ切替の具体的な開示がない。また、特許文献２の技術は、サーバが冗長化されたコンピュータシステムが対象であり、フェイルオーバ機能を実現するシステム構成が複雑となっていた。このため、コンピュータシステムにおいて、安価で簡易なフェイルオーバ機能を実現する技術が求められていた。
【０００９】
本発明の目的は、安価で簡易なフェイルオーバ機能を実現するパス切替装置等を提供することにある。
【課題を解決するための手段】
【００１０】
本発明のパス切替装置の一態様は、記憶装置および複数のホストバスアダプタに接続された切替器と、前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成するコントローラを備え、前記切替器は、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する。
【００１１】
本発明のパス切替方法の一態様は、記憶装置と複数のホストバスアダプタに接続された切替器のパス切替方法であって、前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成し、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する。
【００１２】
本発明のパス切替プログラムの一態様は、記憶装置と複数のホストバスアダプタに接続された切替器のパス切替プログラムであって、前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成し、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する、ことをコンピュータに実行させる。
【００１３】
本発明のコンピュータシステムの一態様は、記憶装置と、複数のホストバスアダプタと、前記記憶装置と前記複数のホストバスアダプタに接続された切替器と、前記記憶装置と前記ホストバスアダプタとの冗長構成を示す冗長構成情報および前記ホストバスアダプタの障害情報に基づいて、前記切替器に対して、前記複数のホストバスアダプタのうち、障害の無いホストバスアダプタと前記記憶装置を接続させるための信号を生成するコントローラを備え、前記切替器は、前記信号に基づいて前記記憶装置と前記障害の無いホストアダプタを接続する。
【発明の効果】
【００１４】
本発明は、コンピュータシステムにおいて、安価で簡易なフェイルオーバ機能を実現することができる。
【図面の簡単な説明】
【００１５】
【図１】第１の実施形態のコンピュータシステムの構成の一例を示すブロック図である。
【図２】第１の実施形態のコンピュータシステムの動作の一例を示すフローチャートである。
【図３】第１の実施形態のＢＩＯＳセットアップ情報の一例を示す説明図である。
【図４】第１の実施形態の冗長構成情報の一例を示す説明図である。
【図５】障害発生時におけるパス切替信号の生成を説明する説明図である。
【図６】第２の実施形態に係るパス切替装置の構成を示すブロック図である。
【図７】第２の実施形態の冗長構成情報の一例を示す説明図である。
【図８】第２の実施形態に係るパス切替装置の動作を示すフローチャートである。
【図９】第１の実施形態のＰＣＨ、第２の実施形態のコントローラのハードウエア構成を示す図である。
【発明を実施するための形態】
【００１６】
（第１の実施形態）
第１の実施形態のコンピュータシステム、パス切替装置について図面を用いて説明する。第１の実施形態は、コンピュータシステムにパス切替装置を適用した例である。図１は、第１の実施形態のコンピュータシステムの構成の一例を示すブロック図である。図１に示すように、コンピュータシステム１００は、ＨＤＤ  Ｂｏｘ１１０、１２０、切替器１３０、ＳＡＳカード１４１、１４２、ＣＰＵ１５１、１５２、ＰＣＨ１６１、Ｆｌａｓｈ  ＲＯＭ１７１を有する。
【００１７】
ＣＰＵ１５１は、ＰＣＨ（Ｐｌａｔｆｏｒｍ  Ｃｏｎｔｒｏｌｌｅｒ  Ｈｕｂ）１６１と接続される。ＣＰＵ１５１は、ＢＩＯＳコードを実行し、ＯＳ起動前にコンピュータシステム１００のハードウエアの認識・制御を行う。ＰＣＨ１６１は、周辺Ｉ／Ｏ制御用プロセッサである。ＰＣＨ１６１は、汎用的な入出力信号として出力可能なＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）１６２を備える。ＧＰＩＯ１６２は、切替器１３０と信号線で接続される。
【００１８】
ＰＣＨ１６１は、Ｆｌａｓｈ  ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１７１と接続される。Ｆｌａｓｈ  ＲＯＭ１７１は、コンピュータシステムを初期化するＢＩＯＳ（Ｂｕｉｌｔ−ｉｎ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、冗長構成情報、および、コンピュータシステムの各種設定を格納する。冗長構成情報には、ＨＤＤ  Ｂｏｘ１１０、１２０とＳＡＳカード１４１、１４２との冗長構成が含まれる。
【００１９】
図４は、第１の実施形態の冗長構成情報の一例を示す説明図である。図４に示す冗長構成情報には、切替器１３０内のパスとして、切替器１３０のコネクタポート（＃Ｓ１〜＃Ｓ４）とコネクタポート（＃Ｄ１〜＃Ｄ２）間の冗長構成が記される。
【００２０】
また、冗長構成情報には、パスごとにコネクタポートの接続先となるＳＡＳカードおよびＨＤＤ  Ｂｏｘの識別子が記される。例えば、パス＃Ｓ１−＃Ｄ１では、コネクタポートの接続先の識別子としてＳＡＳカード１４１、ＨＤＤ  Ｂｏｘ１１０が記される。さらに、冗長構成情報には、パスごとに接続順位が含まれる。接続順位は、あるＨＤＤ  ＢｏｘにＳＡＳカードを接続する際の優先順位である。図４の例では、パス＃Ｓ１−＃Ｄ１の接続順位は「１」、パス＃Ｓ３−＃Ｄ１の接続順位は「２」と記されている。ＢＩＯＳは、接続順位にしたがい、ＨＤＤ  Ｂｏｘ１１０に対するＳＡＳカードの接続先をパス＃Ｓ１−＃Ｄ１とする。
【００２１】
冗長構成情報の接続順位は、ＢＩＯＳセットアップにおけるユーザ設定を反映することもできる。ＢＩＯＳセットアップのユーザ設定によって、コンピュータシステムのＰＣＩスロット、ＰＣＩスロットに搭載されるＰＣＩｅカード、および、ＰＣＩｅカードの接続先のデバイスとの関係が登録される。
【００２２】
図３は、ＢＩＯＳセットアップにおけるユーザ設定の一例である。ユーザ設定によってＰＣＩスロットのスロット番号、ＰＣＩスロットに搭載されるＰＣＩｅカードの識別子、ＰＣＩｅカードの接続先のデバイス識別子が関連付けされる。具体的には、「ＳＬＯＴ＃１，ＳＡＳカード１４１，ＨＤＤ  Ｂｏｘ１１０」、および、「ＳＬＯＴ＃２、ＳＡＳカード１４２、ＨＤＤ  Ｂｏｘ１２０」がそれぞれ関連付けされる。ＢＩＯＳは、ＢＩＯＳセットアップで関連付されたＳＡＳカードとＨＤＤ  Ｂｏｘとの接続関係を冗長構成情報における接続順位の最上位として、冗長構成情報を更新する。
【００２３】
ＳＡＳカード１４１、１４２は、システムバスを介してＣＰＵ１５１、１５２と接続される。具体的には、ＳＡＳカード１４１、１４２は、システムバスとＰＣＩｅ規格で接続された２つのＰＣＩｅスロット（ＳＬＯＴ＃１、ＳＬＯＴ＃２）にそれぞれ搭載される。
【００２４】
ＳＡＳカード１４１、１４２は、コンピュータシステムにＨＤＤ等のストレージを接続するためのインターフェースカードである。図１のＳＡＳカード１４１、１４２は、ＳＡＳケーブルをつなぐコネクタポートを２つ備える。
【００２５】
ＨＤＤ  Ｂｏｘ１１０、１２０は、それぞれ４台のＨＤＤ（ＨＤＤ１１１、ＨＤＤ１１２、ＨＤＤ１１３、ＨＤＤ１１４と、ＨＤＤ１２１、ＨＤＤ１２２、ＨＤＤ１２３、ＨＤＤ１２４）を格納する。ＨＤＤ  Ｂｏｘ１１０、１２０は、ＳＡＳケーブルを接続するためのコネクタポートをそれぞれ備える。
【００２６】
切替器１３０は、ＳＡＳカード１４１、１４２と接続するコネクタポート（＃Ｓ１、＃Ｓ２、＃Ｓ３、＃Ｓ４）と、ＨＤＤ  Ｂｏｘ１１０、１２０と接続するコネクタポート（＃Ｄ１、＃Ｄ２）を備える。図１の例では、コネクタポート＃Ｓ１、＃Ｓ２は、ＳＡＳカード１４１と接続され、コネクタポート＃Ｓ３、＃Ｓ４は、ＳＡＳカード１４２と接続される。また、コネクタポート＃Ｄ１は、ＨＤＤ  Ｂｏｘ１１０と接続され、コネクタポート＃Ｄ２は、ＨＤＤ  Ｂｏｘ１２０と接続される。
【００２７】
さらに切替器１３０は、内部にスイッチ機構を備え、後述するＧＰＩＯ１６２が出力するパス切替信号に応じてＨＤＤ  Ｂｏｘ１１０、１２０ごとに、ＳＡＳカード１４１又はＳＡＳカードへのパスを切替える。パス切替信号については後述する。図１のスイッチ機構の一例は、２極双投形スイッチである。ＳＡＳカード１４１、１４２とＨＤＤ  Ｂｏｘ１１０、１２０との接続パスを切替える機能を有する。
【００２８】
次に、第１の実施形態のコンピュータシステムの動作について、図面を用いて説明する。図２は、第１の実施形態のコンピュータシステムの動作を示すフローチャートである。
【００２９】
コンピュータシステム１００の電源がオンになると、Ｆｌａｓｈ  ＲＯＭ１７１に格納されているＢＩＯＳコードがＣＰＵ１５１にロードされてＢＩＯＳが実行される。
【００３０】
ＢＩＯＳは、ＣＰＵ１５１、１５２、ＰＣＨ１６１、ＳＡＳカード１４１、１４２などの初期化を実行する（ステップＳ１０１）。初期化の一例は、ＢＩＯＳによるＰＯＳＴ（Ｐｏｗｅｒ  Ｏｎ  Ｓｅｌｆ  Ｔｅｓｔ）である。
【００３１】
ＢＩＯＳは、初期化によってＳＡＳカード１４１、１４２を検出（ステップＳ１０２）し、さらにＳＡＳカード１４１、１４２に障害が有るか検査する（ステップＳ１０３）。ＳＡＳカードの障害の一例は、ＨＤＤ  ＢｏｘとのＬｉｎｋｕｐ不能などである。
【００３２】
ＳＡＳカードが正常な場合、すなわち、ＳＡＳカードが検出され（ステップＳ１０２のＹｅｓ）、さらにＳＡＳカードに障害が無い（ステップＳ１０３のＮｏ）場合、ＢＩＯＳは、Ｆｌａｓｈ  ＲＯＭ１７１に登録された冗長構成情報に基づいて、パス切替信号を生成する。ＢＩＯＳは、冗長構成情報に含まれるＳＡＳカードとＨＤＤ  Ｂｏｘとのパスのうち、パスに関連付けされた接続順位にしたがってパス切替信号を生成する（ステップＳ１０５）。
【００３３】
ＢＩＯＳは、ＳＡＳカード１４１の初期化中にＬｉｎｋｕｐ不能等の障害を検出すると、ＳＡＳカードの障害情報を生成する（ステップＳ１０４）。障害情報には、少なくとも障害が発生したＳＡＳカードの識別子が含まれる。識別子の他にＰＯＳＴによるテスト結果が含まれてもよい。
【００３４】
障害情報にＳＡＳカードが含まれる場合、ＢＩＯＳは、冗長構成情報および障害情報に基づいて、パス切替信号を生成する（ステップＳ１０５）。具体的には、ＢＩＯＳは、冗長構成情報が示すＳＡＳカードとＨＤＤ  Ｂｏｘとのパスのうち、障害が発生したＳＡＳカードが含まれるパスを除外して、パス切替信号を生成する。すなわち、障害の無いＳＡＳカードとＨＤＤ  Ｂｏｘとを接続するパス切替信号を生成する。
【００３５】
図５は、ＳＡＳカードの障害発生時におけるパス切替信号の生成を説明する説明図である。例えば、障害情報にＳＡＳカードの識別子「ＳＡＳカード１４１」が含まれるとする。図５に示すように、ＢＩＯＳは、冗長構成情報が示すパス（＃Ｓ１−＃Ｄ１）、（＃Ｓ２−＃Ｄ１）、（＃Ｓ２−＃Ｄ１）、（＃Ｓ２−＃Ｄ２）のうち、障害が発生したＳＡＳカード１４１が関連するパス（＃Ｓ１−＃Ｄ１）、（＃Ｓ２−＃Ｄ２）を除外する。ＢＩＯＳは、ＳＡＳカード１４２に関連するバスが除外され、残ったバスに対して、接続順位を参照してパス（＃Ｓ３−＃Ｄ１）、（＃Ｓ４−＃Ｄ２）をパス切替信号として生成し、ＧＰＩＯ１６２を介して切替器１３０へ出力する。なお、図５の例では、残ったバスのうち、ＨＤＤ  Ｂｏｘ１１０およびＨＤＤ  Ｂｏｘ１２０と接続できるＳＡＳカードのパスがＳＡＳカード１４２のみとなるため、接続順位が参照されることなく、パス切替信号が生成される。
【００３６】
切替器１３０は、ＧＰＩＯ１６２から出力されたパス切替信号に含まれるパスに基づいて、切替器１３０内のスイッチパスを切替える（ステップＳ１０６）。
【００３７】
（第１の実施形態の変形例）
第１の実施形態では、ＢＩＯＳが、冗長構成情報に基づいて、あるいは、冗長構成情報と障害情報に基づいて、パス切替信号を生成する例を用いて説明したが、これに限られない。例えば、ＢＩＯＳの代わりに、ＰＣＨ１６１によって、冗長構成情報と障害情報に基づいて、パス切替信号を生成してもよい。その場合、ＢＩＯＳが、ＳＡＳカードの初期化中に障害を検出してＰＣＨ１６１へ障害情報を通知することになる。
【００３８】
なお、ＣＰＵ１５１又はＰＣＨ１６１とは別のプロセッサによって冗長構成情報と障害情報に基づいて、パス切替信号を生成してもよい。その場合、別のプロセッサは、切替器１３０の内部にあってもよい。
【００３９】
また、ＨＤＤ  Ｂｏｘ１１０、１２０と接続可能な待機系ＳＡＳカード（図示せず）を別の拡張スロットに搭載し、さらに、冗長構成情報に待機系ＳＡＳカードを経由するＨＤＤ  Ｂｏｘとのパスを予め冗長構成情報に含めてもよい。この場合、待機系ＳＡＳカードを経由するパスを、冗長構成情報における接続順位の最上位として設定してもよい。
【００４０】
第１の実施形態では、冗長構成情報をＢＩＯＳセットアップで変更できる例を説明したが、冗長構成情報が変更されないように更新できないようにしてもよい。
【００４１】
第１の実施形態では、２つのＨＤＤ  Ｂｏｘ、２つのＳＡＳカードを用いた例で説明したが、ＨＤＤ  Ｂｏｘ、ＳＡＳカードは２つ以上であってもよい。また、ＳＡＳカードのコネクタポート数も２つ以上でもよい。
【００４２】
第１の実施形態では、コンピュータシステムの電源投入後のコンピュータシステムの動作の例を説明したが、リセットスイッチ後であっても適用できる。
【００４３】
なお、ＰＣＩｅカード、ＳＡＳカードは、ホストバスアダプタとも呼ばれる。また、ＨＤＤ  Ｂｏｘ、又は、ＨＤＤは、記憶装置またはストレージとも呼ばれる。
【００４４】
第１の実施形態のコンピュータシステムによれば、ＢＩＯＳの初期化中にＳＡＳカードの障害が検出された場合でも、冗長構成情報を参照して、ＨＤＤ  Ｂｏｘと接続された他のＳＡＳカードにパスを切替えることができる。これにより、障害が発生したＳＡＳカードに接続されたＨＤＤ  Ｂｏｘにもアクセス可能となる。
【００４５】
ソフトウエアＲＡＩＤ、外部ストレージを導入するよりも安価で、簡単に記憶装置のフェイルオーバ機能を実現することができる。
【００４６】
（第２の実施形態）
次に、第２の実施形態に係るパス切替装置の概要について説明する。図６は、第２の実施形態のパス切替装置の構成の一例を示すブロック図である。図６によれば、パス切替装置１０は、切替器１３、コントローラ１６を備える。コントローラ１６は、切替器１３と信号線で接続される。
【００４７】
コントローラ１６は、冗長構成情報と障害情報をそれぞれ取得する。冗長構成情報は、切替器１３内における、記憶装置１１とホストバスアダプタ１４、１５との冗長構成を示す情報である。具体的には、冗長構成情報には、切替器１３内における接続パスとして、ホストバスアダプタ１４、１５側のコネクタポートと記憶装置１１側のコネクタポート間の冗長構成が記される。図７は、第２の実施形態の冗長構成情報の一例である。冗長構成情報には、パスごとに接続順位が含まれていてもよい。接続順位は、ある記憶装置にホストバスアダプタを接続する際の優先順位である。
【００４８】
障害情報は、具体的には、ホストバスアダプタ１４、１５の検出不可、又は、ホストバスアダプタ１４、１５の障害を示す情報である。ホストバスアダプタ１４、１５の障害の一例は、記憶装置１１、１２へのＬｉｎｋｕｐ不可である。障害情報は、例えば、ホストバスアダプタ１４、１５と接続されたＣＰＵが実行するデバイス診断テストによって通知される。
【００４９】
コントローラ１６は、冗長構成情報と障害情報に基づいて、記憶装置１１とホストバスアダプタ１４、１５と接続するためのパス切替信号を生成する。すなわち複数のホストバスアダプタのうち、障害の無いホストバスアダプタと記憶装置１１を接続させるためのパス切替信号を生成する。
【００５０】
切替器１３は、コントローラ１６からのパス切替信号に基づいて、記憶装置１１に接続先となるホストバスアダプタ１４、１５とのパスを切替える。
【００５１】
切替器１３は、ホストバスアダプタ１４、１５と接続する２つのホストバスアダプタガワコネクタポートと、記憶装置１１と接続する１つの記憶装置側コネクタポートを備える。切替器１３は、内部にスイッチ機構を備え、スイッチ機構はコントローラ１６が出力するパス切替信号に応じて記憶装置１１とホストバスアダプタ１４、１５とを接続するパスを切替える。
【００５２】
次に、第２の実施形態に係るパス切替装置の動作について図面を用いて説明する。図８は、第２の実施形態に係るパス切替装置の動作を示すフローチャートである。
【００５３】
コントローラ１６は、冗長構成情報を取得する（ステップＳ１１）。ホストバスアダプタの障害等を示す障害情報が生成されている場合（ステップＳ１２）、コントローラ１６は、当該障害情報を取得する（ステップＳ１３）。障害情報は、例えば、ホストバスアダプタ１４、１５と接続されたＣＰＵが実行するＢＩＯＳの初期化によって生成される。
【００５４】
ホストバスアダプタの障害情報を取得すると、コントローラ１６は、冗長構成情報および障害情報に基づいて、パス切替信号を生成する（ステップＳ１４）。具体的には、コントローラ１６は、冗長構成情報が示すホストバスアダプタ１４、１５と記憶装置１１とのパスのうち、障害が発生したホストバスアダプタが含まれるパスを除外して、パス切替信号を生成する。
【００５５】
一方、ホストバスアダプタ１４、１５が正常な場合、すなわち、ホストバスアダプタの障害情報が無い場合（ステップＳ１２のＮｏ）、コントローラ１６は、取得した冗長構成情報に基づいて、パス切替信号を生成する(ステップＳ１４)。
【００５６】
冗長構成情報において、記憶装置１１とホストバスアダプタ１４、１５との接続を示すパスに接続順位が関連付されている場合、コントローラ１６は、接続順位にしたがってパス切替信号を生成してもよい。
【００５７】
コントローラ１６は、生成されたバス切替信号を切替器１３へ出力し、切替器１３は、パス切替信号に基づいて、切替器１３内のパスを切替える。なお、明細書等においてパス切替信号を信号と称する場合もある。
【００５８】
第２の実施形態の例では、コントローラ１６は、切替器１３の外部に配置されているが、切替器１３の内部に配置されていてもよい。
【００５９】
以上のように、第２の実施形態のバス切替装置によれば、コンピュータシステムにおいて、安価で簡易なフェイルオーバ機能を実現することができる。その理由は、コントローラが、記憶装置とホストバスアダプタとの冗長構成を示す冗長構成情報、および、ホストバスアダプタ１４又は１５の障害情報に基づいて、複数のホストバスアダプタのうち、障害の無いホストバスアダプタと記憶装置を接続させるための信号を生成し、切替器１３は、信号に基づいて記憶装置１１と障害の無いホストアダプタとを接続するからである。
【００６０】
（ハードウエア構成）
図９は、第１の実施形態のＰＣＨ、第２の実施形態のコントローラのハードウエア構成を示す図である。第１の実施形態のＰＣＨ１６１、第２の実施形態のコントローラ１６は、一例として、以下のような構成を含む。
プロセッサ６０１、
ＲＯＭ６０２、
プログラムがロードされたＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６０３、
データの入出力を行う入出力インターフェース６０４、
システムバス６０５
第１の実施形態のＰＣＨ１６１、第２の実施形態のコントローラ１６は、これらの機能を実現するプログラムをプロセッサが取得して実行することで実現される。プログラムは、例えば、予めＲＡＭ６０３に格納されており、必要に応じてプロセッサ６０１が読み出す。
【００６１】
ＰＣＨ１６１、コントローラ１６の実現方法には、様々な変形例がある。
【００６２】
また、第１の実施形態のＰＣＨ１６１、第２の実施形態のコントローラ１６の一部又は全部は、その他の汎用または専用の回路、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、第１の実施形態のＰＣＨ、第２の実施形態のコントローラ１６は、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のようなプログラマブルロジックデバイスを用いて実現してもよい。
【００６３】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００６４】
また、図面中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
【符号の説明】
【００６５】
１０  パス切替装置
１１、１２  記憶装置
１３  切替器
１４、１５  ホストバスアダプタ
１６  コントローラ
１００  コンピュータシステム
１１０、１２０  ＨＤＤ  Ｂｏｘ
１１１、１１２、１１３、１１４、１２１、１２２、１２３、１２４  ＨＤＤ
１３０  切替器
１４１、１４２  ＳＡＳカード
１５１、１５２  ＣＰＵ
１６１  ＰＣＨ
１６２  ＧＰＩＯ
１７１  Ｆｌａｓｈ  ＲＯＭ
６０１  プロセッサ
６０２  ＲＯＭ
６０３  ＲＡＭ
６０４  入出力インターフェース
６０５  システムバス
【図１】
2018156218.tif 000003
【図２】
2018156218.tif 000004
【図３】
2018156218.tif 000005
【図４】
2018156218.tif 000006
【図５】
2018156218.tif 000007
【図６】
2018156218.tif 000008
【図７】
2018156218.tif 000009
【図８】
2018156218.tif 000010
【図９】
2018156218.tif 000011