(57)【特許請求の範囲】
【請求項１】
複数のＨＤＤと当該各ＨＤＤを駆動制御する冗長構成された第一及び第二のＰＢＣ回路とを備えた複数の大容量記憶装置（ＪＢＯＤ）と、この各ＪＢＯＤに個別に併設され前記ＨＤＤにおける情報の読み書きに際しては前記各ＰＢＣ回路に所定の動作制御信号を送り込む冗長構成された第一及び第二のアダプタ回路と、前記ＰＢＣ回路と前記アダプタ回路とから成る冗長構成された第一及び第二のＨＤＤ制御系の動作を各別に制御するディスクアレイコントローラとを備えたディスクアレイサブシステムにおいて、
通常のアクセス用のパスを主経路とし、異常時に切換え使用するパスを迂経路としたとき、
前記第一のＨＤＤ制御系には前記第一のＰＢＣ回路及び前記第一のアダプタ回路が属し、
前記第二のＨＤＤ制御系には前記第二のＰＢＣ回路及び前記第二のアダプタ回路が属し、
前記第一のＰＢＣ回路は、当該第一のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第一のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第一のアダプタとに前記主経路を介して接続されるとともに、当該第一のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第二のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第二のアダプタとに前記迂回路介して接続され、
前記第二のＰＢＣ回路は、当該第二のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第二のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第二のアダプタとに前記主経路を介して接続されるとともに、当該第二のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第一のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第一のアダプタとに前記迂回路を介して接続された、
ことを特徴とするディスクアレイサブシステム。
【請求項２】
請求項１記載のディスクアレイサブシステムにおいて、
同じ前記ＪＢＯＤに備えられた前記第一及び第二のＰＢＣ回路並びに当該ＪＢＯＤに併設された前記第一及び第二のアダプタ回路について、
前記第一のアダプタ回路が、前記第二のＰＢＣ回路を駆動制御する第一のＰＢＣ駆動制御部を装備し、前記第二のアダプタ回路が、前記第一のＰＢＣ回路を駆動制御する第二のＰＢＣ駆動制御部を装備すると共に、
前記第一のＰＢＣ駆動制御部が、前記第二のＰＢＣ駆動制御部の動作を監視して前記第二のアダプタ回路における故障の有無を検知する故障検知機能と、この第二のアダプタ回路の故障を検知した場合に作動し当該故障発生にかかる第二のアダプタ回路を特定して前記ディスクアレイコントローラに故障情報を送信する故障情報送信機能を備え、
前記第二のＰＢＣ駆動制御部が、前記第一のＰＢＣ駆動制御部の動作を監視して前記第一のアダプタ回路における故障の有無を検知する故障検知機能と、この第一のアダプタ回路の故障を検知した場合に作動し当該故障発生にかかる第一のアダプタ回路を特定して前記ディスクアレイコントローラに故障情報を送信する故障情報送信機能を備えている、
ことを特徴としたディスクアレイサブシステム。
【請求項３】
請求項２記載のディスクアレイサブシステムにおいて、
前記第一のＰＢＣ駆動制御部が、前記第二のＰＢＣ回路を、前記ディスクアレイコントローラの指令に基づいて駆動制御する相手方ＰＢＣ駆動制御機能を備え、
前記第二のＰＢＣ駆動制御部が、前記第一のＰＢＣ回路を、前記ディスクアレイコントローラの指令に基づいて駆動制御する相手方ＰＢＣ駆動制御機能を備えている、
ことを特徴としたディスクアレイサブシステム。
【請求項４】
請求項３記載のディスクアレイサブシステムにおいて、
前記ディスクアレイコントローラは、特定された前記第一及び第二のアダプタ回路にかかる故障情報を入力した場合に作動し前記第一及び第二のＰＢＣ駆動制御部に対して前記迂経路に基づいたパス通路迂回路を構築するための迂経路構築指令を発信する迂経路構築指令発信機能を備え、
前記故障情報を受信した前記第一及び第二のＰＢＣ駆動制御部およびその上流側および下流側に位置する前記第一及び第二のＰＢＣ駆動制御部は、前記ディスクアレイコントローラから出力される迂経路構築指令に基づいて作動し相互に協同して前記パス通路迂回路を構築し維持する迂経路構築機能を備えている、
ことを特徴としたディスクアレイサブシステム。
【請求項５】
請求項４記載のディスクアレイサブシステムにおいて、
前記ディスクアレイコントローラは、前記故障が解消した旨の情報を入力した場合に作動し前記第一及び第二のＰＢＣ駆動制御部に対して前記パス通路迂経路の構築維持を解消し元の正常状態に戻すための正常復帰指令を発信する正常復帰指令発信機能を備え、
前記第一及び第二のＰＢＣ駆動制御部は、前記正常復帰指令に基づいて前記パス通路迂経路の構築維持状態を解消する迂経路解消機能を備えている、
ことを特徴としたディスクアレイサブシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイサブシステムに係り、特に複数の大容量記憶装置（ＪＢＯＤ）を備え且つその制御系として冗長構成の制御系を備えたディスクアレイサブシステムに関する。
【背景技術】
【０００２】
現在のコンピュータシステムにあっては、通常、２４Ｈ運用が求められており、しかも情報記憶用のストレージに保存するデータ量が年々増加している。同時に、データの増加に対応してさまざまなコンピュータシステムがデータ記憶装置としており、特に昨今にあっては、装置故障による性能低下がないサブシステムが求められている。この場合、オンラインによる作業の実施に際しては、人手ではなく自動的に処理が行えるような工夫が必要とされている。
【０００３】
図８に従来例を示す。この図８に示すように、従来のディスクアレイサブシステムは、複数のディスクアレイコントローラＡ０，Ａ１と、それに接続される情報記憶装置としての複数のＨＤＤ（ハードディスクドライブ）を格納して成る複数の大容量記憶装置（ＪＢＯＤ）１，２，３，……とを備えた構成となっている。
【０００４】
そして、各ＪＢＯＤ１，２，３，……内の複数の各ＨＤＤにアクセスするパスは二つあり、その一つのパスに対して各ＪＢＯＤ１，２，３，……毎に一つのアダプタ回路を持つＰＫＧが設けられている。これにより、ＪＢＯＤ１，２，３，……自体は冗長性を保つことができるようになっている。又、上述した複数のディスクアレイコントローラＡ０，Ａ１は、個々のディスクアレイコントローラＡ０又はＡ１が各ＪＢＯＤ１，２，３，……に冗長構成で配置されたアダプタ回路１Ａ，１Ｂ、２Ａ，２Ｂ、３Ａ，３Ｂ、……に接続される二系統のＦＣパスで系統毎に接続された構成となっている。
【０００５】
そのような構成の中で、システム運用中にＪＢＯＤ内の冗長を構成するアダプタ回路に問題が生じて交換という事態が生じても、もう一方の正常なアダプタ回路からＪＢＯＤ内のＨＤＤにアクセスすることができ、ディスクアレイサブシステムとしての機能を損なうことはない。かかる手法と同等の技術が特許文献１乃至３に開示されている。
【特許文献１】特開２０００−３４７８１２
【特許文献２】特開２００２−３１８６６７
【特許文献３】特開２００５−２２２３７９
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記各従来例におけるシステムにあっては、アダプタ回路１Ａ，１Ｂ、２Ａ，２Ｂ，３Ａ，３Ｂ、……に故障が生じた場合、ＪＢＯＤ１，２，３，……内の故障したアダプタ回路側の系統に接続しているディスクアレイコントローラＡ０又はＡ１は、ＨＤＤにアクセスするＦＣパスの冗長構成が無くなることから、制御上当該ディスクアレイコントローラが縮退することもあり、システムの信頼性に欠ける状況が生じる。
この場合、ディスクアレイサブシステムとしては、ＨＤＤにアクセスする場合のパスが半分になり、同時に使用できるＨＤＤがＦＣパスの帯域上の問題から性能が通常時よりも悪化する、という不都合があった。
かかる状況は、システムとして頻繁にアクセスが発生する環境にあってはＪＢＯＤ内のアダプタ回路の故障による性能低下の影響がでてくる、という不都合があった。
【０００７】
本発明の目的は、上記従来例の有する不都合を改善し、特にアダプタ回路の故障に際しても、ディスクアレイサブシステムとして有効に機能すると共に情報の書き込み読み出しに際しての信頼性を充分に確保し得るディスクアレイサブシステムを提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明にかかるディスクアレイサブシステムは、複数のＨＤＤと当該各ＨＤＤを駆動制御する冗長構成された第一及び第二のＰＢＣ回路とを備えた複数の大容量記憶装置（ＪＢＯＤ）と、前記各ＪＢＯＤに個別に対応して併設され前記ＨＤＤにおける情報の読み書きに際しては前記各ＰＢＣ回路に所定の動作制御信号を送り込む冗長構成された第一及び第二のアダプタ回路と、前記ＰＢＣ回路と前記アダプタ回路とから成る冗長構成された第一及び第二のＨＤＤ制御系の動作を各別に制御するディスクアレイコントローラとを備えている。
【０００９】
更に、本発明にかかるディスクアレイサブシステムでは、通常のアクセス用のパスを主経路とし、異常時に切換え使用するパスを迂経路としたとき、前記第一のＨＤＤ制御系には前記第一のＰＢＣ回路及び前記第一のアダプタ回路が属し、前記第二のＨＤＤ制御系には前記第二のＰＢＣ回路及び前記第二のアダプタ回路が属し、前記第一のＰＢＣ回路は、当該第一のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第一のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第一のアダプタとに前記主経路を介して接続されるとともに、当該第一のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第二のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第二のアダプタとに前記迂回路介して接続され、前記第二のＰＢＣ回路は、当該第二のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第二のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第二のアダプタとに前記主経路を介して接続されるとともに、当該第二のＰＢＣ回路を備える前記ＪＢＯＤに併設された前記第一のアダプタ回路と次段の前記ＪＢＯＤに併設された前記第一のアダプタとに前記迂回路を介して接続された、ことを特徴とする（請求項１乃至５）
【００１０】
このため、これによると、故障にかかるアダプタ回路を回避して且つ迂経路を構築するように構成したので、アダプタ回路の故障及び交換においても、当該箇所のＨＤＤに対する冗長構成を維持しつつＨＤＤにアクセスするパスを従来の正常な場合と全く同様に稼働させることができ、これがため、ディスクアレイコントローラの性能に影響を与えことなく、通常のＨＤＤアクセス状態を維持することができ、かかる点において、アダプタ回路の故障に際しても、ディスクアレイサブシステムとして有効に機能すると共に情報の書き込み読み出しに際しての信頼性を充分に確保することが可能となる。
【００１１】
ここで、同じ前記ＪＢＯＤに備えられた前記第一及び第二のＰＢＣ回路並びに当該ＪＢＯＤに併設された前記第一及び第二のアダプタ回路について、前記第一のアダプタ回路が、前記第二のＰＢＣ回路を駆動制御する第一のＰＢＣ駆動制御部を装備し、前記第二のアダプタ回路が、前記第一のＰＢＣ回路を駆動制御する第二のＰＢＣ駆動制御部を装備すると共に、前記第一のＰＢＣ駆動制御部が、前記第二のＰＢＣ駆動制御部の動作を監視して前記第二のアダプタ回路における故障の有無を検知する故障検知機能と、この第二のアダプタ回路の故障を検知した場合に作動し当該故障発生にかかる第二のアダプタ回路を特定して前記ディスクアレイコントローラに故障情報を送信する故障情報送信機能を備え、前記第二のＰＢＣ駆動制御部が、前記第一のＰＢＣ駆動制御部の動作を監視して前記第一のアダプタ回路における故障の有無を検知する故障検知機能と、この第一のアダプタ回路の故障を検知した場合に作動し当該故障発生にかかる第一のアダプタ回路を特定して前記ディスクアレイコントローラに故障情報を送信する故障情報送信機能を備えた構成としてもよい（請求項２）。
これにより、ディスクアレイコントローラは故障にかかるアダプタ回路の特定を瞬時に行うことができ、当該故障に伴う装置全体の性能低下および信頼性の喪失を予め有効に排除することができる。
【００１２】
又、前記第一のＰＢＣ駆動制御部が、前記第二のＰＢＣ回路を、前記ディスクアレイコントローラの指令に基づいて駆動制御する相手方ＰＢＣ駆動制御機能を備え、前記第二のＰＢＣ駆動制御部が、前記第一のＰＢＣ回路を、前記ディスクアレイコントローラの指令に基づいて駆動制御する相手方ＰＢＣ駆動制御機能を備えた構成としてもよい（請求項３）
【００１３】
更に、前記ディスクアレイコントローラは、特定された前記第一及び第二のアダプタ回路にかかる故障情報を入力した場合に作動し前記第一及び第二のＰＢＣ駆動制御部に対して前記迂経路に基づいたパス通路迂回路を構築するための迂経路構築指令を発信する迂経路構築指令発信機能を備え、前記故障情報を受信した前記第一及び第二のＰＢＣ駆動制御部およびその上流側および下流側に位置する前記第一及び第二のＰＢＣ駆動制御部は、前記ディスクアレイコントローラから出力される迂経路構築指令に基づいて作動し相互に協同して前記パス通路迂回路を構築し維持する迂経路構築機能を備えた構成としてもよい（請求項４）。
【００１４】
また、前記ディスクアレイコントローラは、前記故障が解消した旨の情報を入力した場合に作動し前記第一及び第二のＰＢＣ駆動制御部に対して前記パス通路迂経路の構築維持を解消し元の正常状態に戻すための正常復帰指令を発信する正常復帰指令発信機能を備えた構成としてもよい（請求項５）。
【００１５】
更に、本発明にかかるディスクアレイシステム用冗長性維持方法は、複数のＨＤＤと当該各ＨＤＤを駆動制御する冗長構成されたＰＢＣ回路とを備えた複数の大容量記憶装置（ＪＢＯＤ）と、前記各ＰＢＣ回路に個別に併設され前記ＨＤＤにおける情報の読み書きに際しては前記各ＰＢＣ回路にＨＤＤ用のＦＣパスを送り込む冗長構成されたアダプタ回路と、前記ＰＢＣ回路とアダプタ回路とから成る冗長構成された少なくとも二系統のＨＤＤ制御系の動作を各別に制御すると共に外部からの指令に基づいて前記ＨＤＤ用のＦＣパスを出力するディスクアレイコントローラとを備えたディスクアレイサブシステムにあって、前述した大容量記憶装置（ＪＢＯＤ）に併設されたアダプタ回路の故障を予め装備したＰＢＣ駆動制御部を介して検知し当該故障情報を前記ディスクアレイコントローラへ送り込む第１の工程を備えている。
【００１６】
更に、このディスクアレイシステム用冗長性維持方法では、前述したディスクアレイコントローラからの指令に基づいて前記ＰＢＣ駆動制御部が作動し前記ＰＢＣ回路を付勢して故障にかかる前記アダプタ回路を迂回して各系統毎に予め付設された別チャンネルの迂回路をＦＣパス用の迂経路として構築し維持する第２の工程と、前記アダプタ回路の故障が解消した場合に前記ディスクアレイコントローラからの指令に基づいて前記ＰＢＣ駆動制御部が作動し前記ＰＢＣ回路を付勢して迂経路の構築状態を解消する第３の工程とを備えたことを特徴とする。
【００１７】
このように構成すると、アダプタ回路の故障及び交換においても、当該箇所のＨＤＤに対する冗長構成を維持しつつＨＤＤにアクセスするパスを従来の正常な場合と全く同様に稼働させることができる。
【００１８】
又、本発明にかかるディスクアレイシステム用冗長性維持プログラムは、複数のＨＤＤと当該各ＨＤＤを駆動制御する冗長構成されたＰＢＣ回路とを備えた複数の大容量記憶装置（ＪＢＯＤ）と、前記各ＰＢＣ回路に個別に併設され前記ＨＤＤにおける情報の読み書きに際しては前記各ＰＢＣ回路にＨＤＤ用のＦＣパスを送り込む冗長構成されたアダプタ回路と、前記ＰＢＣ回路とアダプタ回路とから成る冗長構成された少なくとも二系統のＨＤＤ制御系の動作を各別に制御すると共に外部からの指令に基づいて前記ＨＤＤ用のＦＣパスを出力するディスクアレイコントローラとを備えたディスクアレイサブシステムにあって、前記ＪＢＯＤに併設されたアダプタ回路にかかる故障情報が入力された場合に作動し当該アダプタ回路を特定する故障アダプタ特定機能、前記特定された故障アダプタに対応するＰＢＣ回路およびその前後のＪＢＯＤにおけるＰＢＣ回路を特定すると共に当該各ＰＢＣ回路を介して予め前記故障にかかるアダプタ回路を迂回して各系統毎に付設された別チャンネルの迂回路を前記ＦＣパス用の迂経路として構築し維持する迂回路構築制御機能、および前記アダプタ回路の故障が解消した旨の情報が入力された場合に作動し前記特定された各ＰＢＣ回路を介して前記迂経路の構築維持状態を解消する迂回路解消制御機能、をプログラム化し、前記ディスクアレイサブシステムに予め装備したコンピュータに、これを実行させるように構成したことを特徴とする。
【００１９】
このように構成すると、アダプタ回路の故障及び交換に際しても、当該箇所のＨＤＤに対する冗長構成を保持しつつＨＤＤにアクセスするパスを従来の正常な場合と全く同様に稼働させることができる。
【発明の効果】
【００２０】
本発明は以上のように構成され機能するので、これによると、例えばＪＢＯＤに併設されたアダプタ回路部分につきその故障及び交換においても、当該アダプタ回路を回避して迂経路を構築するように構成したので、当該箇所のＨＤＤに対する冗長構成を実質的に維持しつつＨＤＤにアクセスするパスを従来の正常な場合と全く同様に稼働させることができ、これがため、ディスクアレイコントローラの性能に影響を与えことなく、通常のＨＤＤアクセス状態を維持することができ、かかる点において、アダプタ回路の故障に際しても、ディスクアレイサブシステムとして有効に機能すると共に情報の書き込み読み出しに際しての信頼性を充分に確保することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の一実施の形態を図面に従って説明する。ここで、前述した従来例と同一の構成については同一の符号を使用するものとする。
まず、本実施形態におけるディスクアレイサブシステムは、当該ディスクアレイサブシステムにおけるディスクアレイコントローラに接続されるＦＣ−ＡＬ(Fibre channel Arbitrated Loop) のＨＤＤを複数内蔵した複数のＪＢＯＤ（Just Bunch of Disk）装置において、当該各ＪＢＯＤ装置に併設されファイバチャネルのパスを持つアダプタ回路が冗長的に構成され、その構成において冗長を構成するアダプタ回路の故障及び交換においても、ＨＤＤにアクセスするパスを維持したまま、ディスクアレイコントローラの性能に影響を与えないようにしたことを特徴とする。
【００２２】
図１乃至図２において、符号１，２，３，……は、それぞれ複数のＨＤＤｎ（ｎ＝1,2,3,……k ：以下同じ）と当該各ＨＤＤｎを個別に駆動する冗長構成されたＰＢＣ回路１０１，２０１とを備えた複数の大容量記憶装置（ＪＢＯＤ）を示す。又、符号１０（１１），２０（２１），３０（３１），……は、それぞれ前記大容量記憶装置（ＪＢＯＤ）１，２，３，……に対応して個別に装備された冗長構成のアダプタ回路を示す。このアダプタ回路１０（１１），２０（２１），３０（３１），……は、前述した前記ＨＤＤｎにおける情報の読み書きに際しては前記各ＰＢＣ回路１０１（２０１）に所定の動作制御信号を送り込む機能を備えている。
【００２３】
ここで、上述したＰＢＣ回路１０１（２０１）とアダプタ回路１０（１１），２０（２１），３０（３１），……とは、冗長構成された少なくとも一方と他方の二系統のＨＤＤ制御系Ｓ０，Ｓ１を構成している。また、記号Ａ０，Ａ１は、正常時にあっては前記二系統の各ＨＤＤ制御系Ｓ０，Ｓ１の動作を各別に制御するディスクアレイコントローラを示す。そして、これら二系統の各ＨＤＤ制御系Ｓ０，Ｓ１は、その構成要素の相互間がＰＣパス用の経路で系統毎に連結されている。
【００２４】
又、上述した各ＨＤＤ制御系Ｓ０（Ｓ１）の系統内における各アダプタ回路１０（１１），２０（２１），３０（３１），……は、その入出力部に、それぞれ複数のパス連結部（入出力端子）Ｔ０，Ｔ１を備えている。そして、前述した各ＨＤＤ制御系Ｓ０，Ｓ１の各アダプタ回路１０（１１），２０（２１），３０（３１），……の相互間およびアダプタ回路１０（１１）とディスクアレイコントローラＡ０（Ａ１）との間のパス通路が、図２に示すように、前記各制御系統毎に、それぞれ通常のアクセス用のパスを維持する主経路ＰS0（ＰS1）と、異常時に切換え使用する迂経路ＳS0（ＳS1）とから成る複数のパス通路で構成すると共に、前記各迂経路ＳS0（ＳS1）を、冗長構成の対応する相手方の前記ＰＢＣ回路２０１，１０１を介してそれぞれ配設装備されている。
【００２５】
そして、上記各迂経路ＳS0，ＳS１は、正常時には使用しない状態に設定され、障害の発生等の異常時にあっては、障害が発生した制御系のディスクアレイコントローラＡ０（Ａ１）が、後述するように、相手側の迂経路ＳS１（ＳS0）を利用してＨＤＤｎをアクセス可能とするように構成され、これによって例えば一方の制御系Ｓ０のアダプタ回路１０に障害が発生しても、後述するように冗長構成を維持してシステムを運用することが可能となる。
【００２６】
前述したＰＢＣ回路１０１は、前記複数のＨＤＤｎに対応して装備された複数の直接駆動用のＰＢＣ回路１０ｎと当該直接駆動用のＰＢＣ回路１０ｎを挟んでその上流側と下流側にそれぞれ装備された入力側ＰＢＣ回路１１０と送出側ＰＢＣ回路１１１とにより構成されている。又、前述したＰＢＣ回路２０１も、このＰＢＣ回路１０１と同様に、前記複数のＨＤＤｎに対応して装備された複数の直接駆動用のＰＢＣ回路１０ｎと当該直接駆動用のＰＢＣ回路２０ｎを挟んでその上流側と下流側にそれぞれ装備された入力側ＰＢＣ回路２１０と送出側ＰＢＣ回路２１１とにより構成されている。これにより、ＰＢＣ回路１０１，２０１部分での冗長構成が維持されている。
【００２７】
ここで、前述した一方のＨＤＤ制御系Ｓ０のＰＢＣ回路１０１の内、上流側に位置する入力側ＰＢＣ回路１１０には、主経路ＰS0と迂経路ＳS１とが接続され、下流側に位置する出力側ＰＢＣ回路１１１には、主経路ＰS0と迂経路ＳS１とが接続されている。これにより、アダプタ回路１０が故障した場合には、迂経路ＳS１を活用してこれをアダプタ回路１０側のＰＣパス用の経路として構築し使用することにより、冗長構成を実質的に維持しつつ故障したアダプタ回路１０の着脱修理が可能となる。
【００２８】
これに対し、前述した他方のＨＤＤ制御系Ｓ１のＰＢＣ回路２０１の内、上流側に位置する入力側ＰＢＣ回路２１０には、主経路ＰS１と迂経路ＳS0とが接続され、下流側に位置する出力側ＰＢＣ回路２１１には、主経路ＰS１と迂経路ＳS0とが接続されている。これにより、アダプタ回路２０が故障した場合には、迂経路ＳS0を活用してこれをアダプタ回路１０側のＰＣパス用の経路として構築し使用することにより、冗長構成を実質的に維持しつつ故障したアダプタ回路２０の着脱修理が可能となる。
ここで、迂経路ＳS0，ＳS１は、システム内に障害等の異常が発生しない場合にあっては稼働停止状態に設定されている。
他の大容量記憶装置（ＪＢＯＤ）２，３，……も同様の構成となっている。
【００２９】
前述した各アダプタ回路１０（１１），２０（２１），３０（３１），……には、前述した複数のＨＤＤｎに対応して冗長構成で装備された相手方の前記ＰＢＣ回路２０１（１０１）を、前述したディスクアレイコントローラＡ０（Ａ１）の指令に従って駆動制御する相手方ＰＢＣ駆動制御機能を備えたＰＢＣ駆動制御部１００（２００）が装備されている。このＰＢＣ駆動制御部１００（２００）は実際にはＭＰＵで構成されている。
【００３０】
即ち、一方のＰＢＣ駆動制御部１００は、前述した迂回路ＳS0に対応してＨＤＤ制御系Ｓ１のＰＢＣ回路２０１（直接的には、図２中で、入力側ＰＢＣ回路２１０と出力側ＰＢＣ回路２１１を制御対象とする）を駆動制御する機能（相手方ＰＢＣ駆動制御機能）を備えている。同様に、他方のＰＢＣ駆動制御部２００も、前述した迂回路ＳS１に対応してＨＤＤ制御系Ｓ０のＰＢＣ回路１０１（直接的には、図２中で、入力側ＰＢＣ回路１１０と出力側ＰＢＣ回路１１１を制御対象とする）を駆動制御する機能（相手方ＰＢＣ駆動制御機能）を備えている。
【００３１】
ここで、上記各ＰＢＣ駆動制御部１００（２００）は、冗長構成の対応する相手方のアダプタ回路２０（１０）におけるＰＢＣ駆動制御部２００（１００）の動作を監視して当該相手方のアダプタ回路２０（１０）における故障の有無を検知する故障検知機能と、この相手方アダプタ回路の故障を検知した場合に作動し当該故障発生にかかるアダプタ回路を特定して前記ディスクアレイコントローラＡ０，Ａ１に故障情報を送信する故障情報送信機能を備えている。
【００３２】
これにより、ディスクアレイコントローラＡ０，Ａ１は、アダプタ回路１０（２０）の異常動作等の故障情報を取得することができるようになっている。尚、この場合、上記アダプタ回路１０（２０）の異常動作等の故障情報は、オペレータによって外部入力するようにしてもよい。
【００３３】
更に、前述したディスクアレイコントローラＡ０，Ａ１は、特定された前記アダプタ回路１０（１１），２０（２１）……にかかる故障情報を入力した場合に作動し前記各ＰＢＣ駆動制御部１００（２００）に対して前記迂経路と迂経路ＳS0，ＳS１に基づいたパス通路用の迂経路構築指令を発信する迂経路構築指令発信機能を備えている。
【００３４】
又、前述した故障情報および迂経路構築指令を受信した場合、アダプタ回路２０（又は２１）のＰＢＣ駆動制御部１００（又は２００）は、前記ディスクアレイコントローラから出力される迂経路構築指令に基づいて作動し相手方の入力側ＰＢＣ回路２１０，２１１（１１０，１１１）を駆動制御しこれによってＰＢＣ回路２０ｎ（１０ｎ）を迂経路ＳS0（ＳS１）に接続するための迂経路モードに設定するように機能する（相手方ＰＢＣ駆動制御機能）。同時に、この各ＰＢＣ駆動制御部１００（又は２００）は、その上流側および下流側に位置する各アダプタ回路１０（又は１１），３０（又は３１）の各ＰＢＣ駆動制御部１００（又は２００）と相互に協同して作動し、前記各ディスクアレイコントローラの指令に沿った前記ＰＣパス用の迂経路ＳS0，ＳS１を構築し維持する迂経路構築機能を備えている。
【００３５】
更に、前述したディスクアレイコントローラＡ０，Ａ１は、例えばアダプタ回路２０（又は２１）の故障が解消した旨の情報を入力した場合に作動し前記各アダプタ回路２１（又は２０）におけるＰＢＣ駆動制御部２００（又は１００）に対して前記パス通路迂経路の構築維持を解消して元の正常状態に戻すための正常復帰指令を発信する正常復帰指令発信機能を備えている。又、前記各ＰＢＣ駆動制御部は、前記ディスクアレイコントローラＡ０，Ａ１からの正常復帰指令に基づいて前記パス通路迂経路の構築維持状態を解消する迂経路解消機能を備えている。
【００３６】
ここで、符号１２０はＰＢＣ駆動制御部１００，２００の相互間におけるデータ伝送用のＳＥＳバスを示し、符号１３０は各ＰＢＣ駆動制御部１００，２００と相手方の制御系に位置する入力側ＰＢＣ回路２１０（１１０）および出力側ＰＢＣ回路２１１（１１１）に対する制御信号を送り込むための制御バスを示す。
【００３７】
更に、符号１１（１２）は、アダプタ回路１０の入力段に装備されたＰＢＣ回路を示す。そして、このＰＢＣ回路１１（１２）を介して、ＰＢＣ駆動制御部１００は前述したディスクアレイコントローラＡ０から必要な動作指令が送り込まれるようになっている。また、ＰＢＣ駆動制御部１００は、このＰＢＣ回路１１（１２）を介してディスクアレイコントローラＡ０へ故障情報等，必要な情報を送り届けるように構成されている。又、このＰＢＣ回路１１（１２）は、前述した入力側ＰＢＣ回路１１０（２１０）および前記複数のＨＤＤｎを直接駆動するＰＢＣ回路１０ｎとも連結され、これにより、前述したディスクアレイコントローラＡ０，Ａ１からＰＢＣ回路１０ｎ（２０ｎ）を介して各ＨＤＤｎが直接的に選択駆動されるようになっている。
【００３８】
同様に、符号２１（２２）は、アダプタ回路２０の入力段に装備されたＰＢＣ回路を示す。そして、このＰＢＣ回路２１（２２）を介して、ＰＢＣ駆動制御部２００は前述したディスクアレイコントローラＡ１から必要な動作指令が送り込まれるようになっている。また、ＰＢＣ駆動制御部２００は、このＰＢＣ回路２１（２２）を介してディスクアレイコントローラＡ１へ故障情報等，必要な情報を送り込むように構成されている。
又、記号Ｔ0，Ｔ１は、アダプタ回路１０（１１），２０（２１），３０（３１），……におけるＰＣパス等のパス通路の入出力端子を示す。
【００３９】
次に、上記実施形態の障害発生時の動作を説明する。
今、図１，図３に示すアダプタ回路２０（＃２０）に障害が発生している場合を想定する。この場合、ＰＢＣ駆動制御部２００は、冗長構成における相手方のＰＢＣ駆動制御部１００との間で相互に相手方の動作状態をＳＥＳ間バス１２０を介して監視している。そして、アダプタ回路２０に障害が発生していることを検出すると、ＰＢＣ駆動制御部２００は、図２のディスクアレイコントローラＡ１へ状態を通知する（ステップＳ１０１：第１の工程）。
【００４０】
この通知を受けたディスクアレイコントローラＡ１は、ＪＢＯＤ２のアダプタ回路２０に障害が発生したことを確認した後（ステップＳ１０２）、直ちに作動して問題箇所のアダプタ回路２０を迂回するようなＦＣパスを形成する指令を、大容量記憶装置（ＪＢＯＤ）１，２，３の各ＰＢＣ駆動制御部２００（ＳＥＳ＃２００）に対して構築指令発信指令を発信する（ステップＳ１０３：迂経路構築指令発信機能の発動）。
【００４１】
このディスクアレイコントローラＡ１からの迂経路構築指令を受け取ったＪＢＯＤ２のアダプタ回路（＃２０）２１側のＰＢＣ駆動制御部２００は、図３に示すように、制御バス２３０を介してＰＢＣ回路１１０、１１１に対してアダプタ回路２０を通さずにＨＤＤｎにアクセスするＦＣパスを形成するように（異常時の迂経路ＳS１から入力されるＦＣパスをＰＢＣ回路１１０の入力とするように）制御する（迂経路構築機能の発動：第２の工程）。かかる制御は、前述したディスクアレイコントローラＡ０からのアクセスに優先して実行されるように予め設定されている。
【００４２】
そして、ＰＢＣ回路１１１は、制御系Ｓ０の次段側への出力としてＦＣパス通路を主経路ＰS0ではなく異常時の迂経路ＳS１とするように制御する。このとき、アダプタ回路２０は、ＨＤＤｎにアクセスするＦＣパスとしては完全に切り離されることになる。図４は、アダプタ回路２０を修理のために切り離した場合のＪＢＯＤの状態を示す。
【００４３】
上記大容量記憶装置（ＪＢＯＤ）２におけるアダプタ回路２１側の動作と同時に、図５のＪＢＯＤ１のＰＢＣ駆動制御部２００（ＳＥＳ＃２００）は、ディスクアレイコントローラＡ１より指示を受けとると、制御バス２３０を介してＰＢＣ回路１１１の次段への出力を異常時の迂経路ＳS１とするように切換え制御する。かかる制御はＰＢＣ回路１１１に対しては最優先で実行される。
又、図６のＪＢＯＤ３のＰＢＣ駆動制御部２００（ＳＥＳ＃２００）は、ディスクアレイコントローラＡ１からの指令を受け取ると、制御バス２３０を介してＰＢＣ回路１１０に前段から入力される異常時の迂経路ＳS１からのＦＣパスを入力とするように切換え制御する。かかる制御はＰＢＣ回路１１０に対しては最優先で実行される。
【００４４】
これら一連の迂経路設定制御は、その動作を確認しながら迂経路設定が完了するまで順次実行される（ステップＳ１０４）。そして、迂経路設定が完了した場合、この迂経路設定状態はアダプタ回路２０の故障が解消しする迄、継続される（ステップＳ１０５）。
そして、前述したディスクアレイコントローラＡ１は、例えばアダプタ回路２０の故障が解消した旨の情報がディスクアレイコントローラＡ０又はＰＢＣ駆動制御部２００から入力された場合に作動し前記各アダプタ回路２１におけるＰＢＣ駆動制御部２００に対して前記パス通路迂経路の構築維持を解消して元の正常状態に戻すための正常復帰指令を発信する（ステップＳ１０６：正常復帰指令発信機能の発動）。
【００４５】
これに基づいて、前述したＰＢＣ駆動制御部２００は、前記ディスクアレイコントローラＡ１からの正常復帰指令に基づいて前記パス通路迂経路の構築維持状態を解消する迂経路解消機能を実行し、制御系Ｓ０は元の正常状態に復帰する（ステップＳ１０８）。
他のアダプタ回路１０が障害を起こした場合および他のＪＢＯＤ１，３……におけるアダプタ回路１０，２０が障害を起こした場合にも、上述した動作と全く同一の動作が各構成要素間で実行される。
【００４６】
ここで、上述した実施形態にあって、前述したディスクアレイコントローラＡ０（Ａ１）が実行する機能の内、ＪＢＯＤ１，２，３，……に併設されたアダプタ回路１０（１１），２０（２１），３０（３１），……に障害が発生しその故障情報がディスクアレイコントローラＡ０（Ａ１）に入力された場合に、当該ディスクアレイコントローラＡ０（Ａ１）が作動して当該アダプタ回路を特定する故障アダプタ特定機能と、この特定された故障アダプタに対応するＰＢＣ回路およびその前後のＪＢＯＤにおけるＰＢＣ回路を特定すると共に当該各ＰＢＣ回路を介して予め前記故障にかかるアダプタ回路を迂回して各系統毎に付設された別チャンネルの迂経路ＳS１（ＳS0）を前記ＦＣパス用の迂経路として構築し維持する迂回路構築制御機能、および前記アダプタ回路の故障が解消した旨の情報が入力された場合に作動し前記特定された各ＰＢＣ回路を介して前記迂経路の構築維持状態を解消する迂回路解消制御機能、をプログラム化し、これをコンピュータに実行させるように構成してもよい。
このようにしても、上述した実施形態におけるディスクアレイコントローラＡ０（Ａ１）で実行される動作内容と同等の効果を得ることができる。
【００４７】
このように、これら大容量記憶装置（ＪＢＯＤ）１，２，３側における一連の動きが実行されることで、ディスクアレイコントローラＡ０は、アダプタ回路２０の故障及び交換時であっても、ディスクアレイコントローラＡ１側の迂経路ＳS１を利用して、ＪＢＯＤ２のＨＤＤｎに対してアクセスすることができる。これにより、システム全体の性能低下を有効に且つ確実に防止することができ、装置の信頼性を高めることができる。
【００４８】
上述したように、本実施形態にあっては、従来の課題を解決する手段として、ＪＢＯＤ１，２，３，……内のアダプタ回路１０（１１）……の故障及び交換になった場合において、システム全体が性能低下をきたすのを防止する手段として、問題となるアダプタ回路例えば２０を迂回するパスを形成する手段を新たに設けた。
【００４９】
従来例にあっては、図８に示すようにディスクアレイコントローラＡ０，Ａ１とＪＢＯＤ１，２，３，……間、ＪＢＯＤ１，２，３，……の相互間に接続されるＦＣパスは冗長構成で各々１系統であるが、本実施形態においては、図１に示すように各間ケーブル接続はそれぞれ二系統を有する。即ち本実施例では、冗長構成で全体で四系統となる。そして迂経路を形成するにはＪＢＯＤ１，２，３，……内のアダプタ回路１０（１１）……の相互間に図２に示すようにＦＣパスをクロスするように（迂回路として）準備しておく。
【００５０】
このＪＢＯＤ１，２，３，……内のアダプタ間ＦＣパス（迂回路）に関しては、通常は待機系として扱われ、使われない。そして、異常が発生した時、異常が発生したアダプタ回路を迂回するように当該ＦＣパス（迂回路）を稼働可能に設定する。
この時、アダプタ回路１０（１１）……内の故障であっても、ＨＤＤｎにアクセスすることができる代替パスがＪＢＯＤ１，２，３，……のＢＢ共通部上（図２参照）に形成されることとなる。
【００５１】
これらの迂経路ＳS0，ＳS１の形成に関しては、ディスクアレイコントローラＡ０，Ａ１及びＪＢＯＤ１，２，３，……内に持つＰＢＣ駆動制御部（ＳＥＳ：Scsi Enclosure Service）１００，２００がお互いに連携しあうことで実施する。そして、ディスクアレイコントローラＡ０，Ａ１は、問題となっているアダプタ回路２０（例示）の箇所を見つけると、ＪＢＯＤ２のＰＢＣ駆動制御部２００に対してＦＣパスを迂回するようなＦＣパス変更指示を出す。
それを受信した、各ＪＢＯＤ２のＰＢＣ駆動制御部２００は指示どおりに各ＰＢＣ回路を動作させ、問題箇所を迂回するパスを上述したように形成する。これによりＨＤＤｎにアクセスするパスを維持しつつ、問題となっているアダプタ回路２０を除去及び交換し、その間も性能の低下を防止することが出来るという効果が得られる。
【００５２】
また、アダプタ回路２０の交換後、ＦＣパスの迂経路ＳS0を元に戻すため、ディスクアレイコントローラＡ１から各ＪＢＯＤ１，２，３，……のＰＢＣ駆動制御部２００に対して元に戻す指示を発信し、これを受け取った各ＰＢＣ駆動制御部２００は迂経路ＳS0を元に戻す作業を実施する。
【００５３】
以上説明したように、本実施形態においては、以下に記載するような効果を奏する。
第１の効果は、冗長構成のＪＢＯＤ内のアダプタ回路の故障が生じても、性能低下を起こすことがないディスクアレイサブシステムを提供することができる。
第２の効果は、制御上の問題でアクセスするパスがなくなることでディスクアレイコントローラの縮退を防止する効果が得られる。
【産業上の利用可能性】
【００５４】
本発明は、冗長構成の各種制御システムに有効に適用することが可能である。
【図面の簡単な説明】
【００５５】
【図１】本発明の一実施形態を示す概略構成図である。
【図２】図１の一段めの大容量記憶装置（ＪＢＯＤ）および冗長構成のアダプタ回路を示す説明図である。
【図３】図１の二段めのＪＢＯＤにかかるアダプタ回路に障害が発生した場合の例を示す説明図である。
【図４】図３における障害が発生したアダプタ回路を取り除いた場合に動作状態を示す説明図である。
【図５】図１の一段めのＪＢＯＤを示す説明図で、図４の障害発生時における動作を示す説明図である。
【図６】図１の三段めのＪＢＯＤを示す説明図で、図４の障害発生時における動作を示す説明図である。
【図７】図３における障害発生に対応するためにディスクアレイコントローラが実行する各種制御動作を示すフローチャートである。
【図８】従来例を示す説明図である。
【符号の説明】
【００５６】
１，２，３  大容量記憶装置（ＪＢＯＤ）
１０，１１  アダプタ回路
１００，２００  ＰＢＣ駆動制御部（ＳＥＳ）
１００Ａ，１００Ｂ，１０１，２００Ａ，２００Ｂ，２０１，１０ｎ  ＰＢＣ回路
１１０，２１０  入力側ＰＢＣ回路
１１１，２１１  出力側ＰＢＣ回路
Ａ０，Ａ１  ディスクアレイコントローラ
ＨＤＤｎ（ｎ＝1,2,3,……）  ハードディスクドライブ
ＰS0，ＰS１  主経路
ＳS0，ＳS１  迂経路
Ｔ0，Ｔ１  パス連結部（入出力端子）
【図１】
0004635941.tif 000002
【図２】
0004635941.tif 000003
【図３】
0004635941.tif 000004
【図４】
0004635941.tif 000005
【図５】
0004635941.tif 000006
【図６】
0004635941.tif 000007
【図７】
0004635941.tif 000008
【図８】
0004635941.tif 000009