(57)【要約】【課題】  電源部及びＤＫＣの多重構成のディスクアレイ装置で、停復電時における復帰のための手間の省略、短時間、低コスト構成、及び処理負荷の低い復帰を実現する。【解決手段】  ディスクアレイ装置で、多重化されたクラスタ（１０Ａ，１０Ｂ）と、各クラスタを対象に電源供給する多重化された電源部（２Ａ，２Ｂ）を有する。各クラスタに、他クラスタの電源状態を判定するための停電判断部１０３を含む。停電で一方のクラスタが先に稼動停止するケースに応じて、停電時、例えばクラスタ１０ＡのＭＰ１０１は、他クラスタ１０Ｂの部位の閉塞処理を行うと共に、停電判断部１０３からの信号に基づき他クラスタ１０Ｂの電源状態を判定して、それを表わす停電情報をメモリ１０２上に記録する。復電時、クラスタ１０Ａは、他クラスタ１０Ｂで閉塞状態の部位について、停電による閉塞であると認識すると、その部位を回復処理する。【選択図】  図３
2006235673.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えたディスクアレイ装置であって、
前記記憶制御装置は、プロセッサとメモリを有する、多重化されたクラスタの構成を有し、
前記クラスタを対象として電源供給を行う、多重化された電源部と、前記クラスタの電源状態を判定する回路とを有し、
停電の場合に少なくとも一部のクラスタが先に稼動停止するケースに対応して実行する制御において、
停電時の制御として、前記クラスタは、閉塞判定をもとに他クラスタの部位についての閉塞処理を行うと共に、前記電源状態を判定する回路からの信号に基づき前記他クラスタの電源状態を判定して、前記他クラスタの電源状態を表わす情報を前記メモリ上に記録して保存し、
復電時の制御として、前記クラスタは、前記他クラスタで閉塞状態となっている部位について、停電による閉塞状態であると認識した場合に、その部位を回復処理することを特徴とするディスクアレイ装置。
【請求項２】
請求項１記載のディスクアレイ装置において、
前記電源部は、ＡＣ−ＤＣ電源部を有する構成であり、
前記各ＡＣ−ＤＣ電源部は、複数のスイッチング電源を含む構成で、前記各スイッチング電源に対し異なる系統のＡＣ電源が入力されＡＣ−ＤＣ変換して、対応するクラスタに対するＤＣ電源を出力する構成であり、
前記スイッチング電源は、停電耐力の差により停電時における前記ＤＣ電源の出力停止のタイミングに差が生じ得るものであり、
前記クラスタのプロセッサは、自クラスタ内のメモリに対する制御と、他クラスタのプロセッサとの通信と、他クラスタのメモリに対する制御とが可能であり、前記閉塞処理と、前記電源状態の判定と、前記回復処理とを実行することを特徴とするディスクアレイ装置。
【請求項３】
請求項１記載のディスクアレイ装置において、
停電時にすべてのクラスタが稼動停止するケースに対応して実行する第１の制御において、
停電時の制御として、停電直後に稼動継続している第１のクラスタのプロセッサは、先に稼動停止した第２のクラスタの部位を閉塞状態に移行する閉塞処理を行うと共に、前記電源状態を判定する回路からの信号に基づき前記第２のクラスタの電源状態を判定して、前記第２のクラスタの電源状態を表わす情報を前記メモリ上に記録して保存し、
復電時の制御として、復電直後に、前記第１のクラスタのプロセッサは、前記メモリ上に保存されている情報をもとに、前記第２のクラスタで閉塞状態となっている部位について、停電による閉塞状態であると認識した場合に、その部位を回復処理することを特徴とするディスクアレイ装置。
【請求項４】
請求項１記載のディスクアレイ装置において、
停電時に一部のクラスタのみ稼動停止するケースに対応して実行する第２の制御において、
停電時の制御として、停電直後に稼動継続している第１のクラスタのプロセッサは、稼動停止した第２のクラスタの部位を閉塞状態に移行する閉塞処理を行うと共に、前記電源状態を判定する回路からの信号に基づき前記第２のクラスタの電源状態を判定して、前記第２のクラスタの電源状態を表わす情報を前記メモリ上に記録して保存し、
復電時の制御として、前記閉塞処理後に、前記第１のクラスタのプロセッサは、前記第２のクラスタでの閉塞状態の部位に対して、動作健全性チェックのためのアクセスを定期的に実施し、前記チェックの結果で問題ない場合に、その部位を回復処理することを特徴とするディスクアレイ装置。
【請求項５】
請求項１記載のディスクアレイ装置において、
前記クラスタの電源状態を判定する回路は、前記クラスタのそれぞれに備えた停電判断部の回路で構成され、
前記停電判断部の回路は、他クラスタの電源部からのＤＣ電源供給状態を判断して、他クラスタの停電状態についての判断結果を表わす信号を、前記クラスタ内のプロセッサに対して出力し、
前記クラスタ内のプロセッサは、前記信号を検出することで、前記閉塞状態の発生時における前記他クラスタの電源状態を認識することを特徴とするディスクアレイ装置。
【請求項６】
請求項１記載のディスクアレイ装置において、
前記クラスタの電源状態を判定する回路は、前記電源部とクラスタの間に備えた停電判断部の回路で構成され、
前記停電判断部の回路は、前記電源部におけるＡＣ電源供給状態を判断して、他クラスタの停電状態についての判断結果を表わす信号を、前記クラスタのプロセッサに対して出力し、
前記クラスタのプロセッサは、前記信号を検出することで、前記閉塞状態の発生時における前記他クラスタの電源状態を認識することを特徴とするディスクアレイ装置。
【請求項７】
請求項１記載のディスクアレイ装置において、
前記メモリ上には、前記記憶制御装置における部位のロケーションごとに前記閉塞状態を表わす情報が管理され、前記プロセッサごとに前記クラスタの電源状態の判定結果を表わす情報が管理されることを特徴とするディスクアレイ装置。
【請求項８】
請求項１記載のディスクアレイ装置において、
前記クラスタに対して通信接続される保守・管理装置を有し、
前記保守・管理装置から前記クラスタに対し指示することにより、代表となるプロセッサが、前記停電時及び復電時の制御を実行することを特徴とするディスクアレイ装置。
【請求項９】
請求項１記載のディスクアレイ装置において、
前記電源部からクラスタに対する電源供給ラインにおいてバッテリが接続されていない構成であることを特徴とするディスクアレイ装置。
【請求項１０】
記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置とを備えたディスクアレイ装置であって、
前記記憶制御装置は、プロセッサとメモリを有する、二重化されたクラスタの構成を有し、
前記クラスタを対象として電源供給を行う、二重化された電源部と、前記クラスタの電源状態を判定する回路とを有し、
前記記憶制御装置は、他装置側との通信インタフェース処理を行う、前記プロセッサを備えるチャネル制御部と、前記記憶装置側との通信インタフェース処理を行う、前記プロセッサを備えるディスク制御部と、データキャッシュのためのキャッシュメモリ部と、状態情報を格納するための共有メモリ部と、それらを相互接続する接続部とを備える構成であり、
前記クラスタのプロセッサは、自クラスタ内のメモリに対する制御と、他クラスタのプロセッサとの通信と、他クラスタのメモリに対する制御とが可能であり、
前記電源部は、ＡＣ−ＤＣ電源部を有する構成であり、前記各ＡＣ−ＤＣ電源部は、複数のスイッチング電源を含む構成で、前記各スイッチング電源に対し異なる系統のＡＣ電源が入力されＡＣ−ＤＣ変換して、対応するクラスタに対するＤＣ電源を出力し、前記スイッチング電源は、停電耐力の差により停電時における前記ＤＣ電源の出力停止のタイミングに差が生じ得るものであり、
停電の場合に少なくとも一方のクラスタが先に稼動停止するケースに対応して実行する制御において、
停電時の制御として、稼動している第１のクラスタのプロセッサは、閉塞判定をもとに、停止した第２のクラスタの部位についての閉塞処理を行うと共に、前記電源状態を判定する回路からの信号に基づき前記第２のクラスタの電源状態を判定して、前記第２のクラスタの電源状態を表わす情報を前記共有メモリ部上に記録して保存し、
復電時の制御として、前記第１のクラスタのプロセッサは、前記第２のクラスタで閉塞状態となっている部位について、停電による閉塞状態であると認識した場合に、その部位を回復処理することを特徴とするディスクアレイ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードディスクドライブ（ＨＤＤ）等の記憶装置と前記記憶装置に対するデータの記憶を制御する記憶制御装置（以下、ＤＫＣとする）とを備えＲＡＩＤ制御が可能なディスクアレイ装置に関し、特に、停復電時の復帰のための技術に関する。
【背景技術】
【０００２】
従来のディスクアレイ装置において、信頼性確保のために、ＤＫＣ及びそれに対し電源供給する電源部を多重化した構成が採用されている。例えば、ＤＫＣを二重化、すなわち論理的なクラスタ（例えばＣＬ１，ＣＬ２とする）とした構成とし、またそれに対応して２系統の電源部（例えばＰＳ１，ＰＳ２とする）を備えた構成が可能である。前記ＰＳ１，ＰＳ２から、それぞれ、ＤＫＣのクラスタＣＬ１，ＣＬ２に対してＤＣ電源（例えばＤＣ１，ＤＣ２とする）が供給される。上記二重化構成例において、停電などにより一方のＤＣ電源供給が停止した場合でも、他方のＤＣ電源供給を用いてＤＫＣの稼動が継続される。また、電源部に更にバッテリを備える構成の場合は、ＤＣ電源供給が停止した場合でも、バッテリバックアップ機能によりＤＫＣの稼動が継続される。両方のＤＣ電源供給が停止した場合は、両方のクラスタが稼動停止することになる。復電時にＤＣ電源供給が再開されると、保守員の操作の介在によりＤＫＣのクラスタでの復帰処理が行われた後に稼動再開される。
【０００３】
特許文献１には、復帰のための技術の例について記載されている。この技術は、電源の停復電の状態に応じ、復電対象となる機器が停電前の状態に復帰するように制御出力するもので、停電前の機器状態を機器復帰用の情報として用いる旨が記載されている。
【特許文献１】特開平９−３２５８３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記二重化構成例では、停電時に両方のＤＣ電源供給が停止した場合、両方のクラスタが稼動停止するが、その際、各電源部からのＤＣ電源停止タイミングに差が生じるため、各クラスタの稼動停止タイミングも差が生じる。ここで、先に停止したクラスタの部位は、その後に停止するクラスタによる閉塞処理により、閉塞状態へ移行されることになる。復電時にＤＣ電源供給が再開されると、両クラスタが再起動されるが、前記停電時の閉塞処理により、一方のクラスタの部位が閉塞状態となっている。従って、保守員の操作の介在により、クラスタの部位について回復処理が行われる必要がある。しかしながら、このような保守員介在による復帰の手続きに手間がかかる。
【０００５】
本発明は以上のような問題に鑑みてなされたものであり、その目的は、電源部及び電源部からの電源供給対象となるＤＫＣが多重化された構成のディスクアレイ装置において、前記停復電時における復帰のための保守員介在の手間を省略でき、また、短時間での復帰、低コストな構成での復帰、及び、ＤＫＣ処理負荷の低い復帰が実現される技術を提供することにある。
【課題を解決するための手段】
【０００６】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。前記目的を達成するために、本発明のディスクアレイ装置は、記憶装置と記憶制御装置（ＤＫＣ）とを備えＲＡＩＤ制御が可能な装置であって、以下に示す技術的手段を備えることを特徴とする。
【０００７】
本発明のディスクアレイ装置は、多重化されたＤＫＣによるクラスタ構成と、前記クラスタを対象として電源供給を行う多重化された電源部とを有する構成である。例えば、二重のクラスタと、それらを対象としてＤＣ電源供給を行う二重の電源部とによる構成である。各電源部で複数系統のＡＣ電源を入力してＡＣ−ＤＣ変換してＤＣ電源を出力する。第１の電源部から第１のクラスタへ第１のＤＣ電源が供給され、第２の電源部から第２のクラスタへ第２のＤＣ電源が供給される対応関係である。
【０００８】
電源部は、例えば、ＡＣ−ＤＣ電源部（ＰＳと略称する）を有する構成である。各ＰＳは、複数のスイッチング電源（ＳＷＰＳ）を含む構成である。各ＰＳでは、各ＳＷＰＳに対し異なる系統のＡＣ電源が入力され、それぞれＡＣ−ＤＣ変換して、ＰＳに対応するクラスタに対するＤＣ電源を供給する。各ＳＷＰＳは、その停電耐力の差により、停電によるＡＣ入力停止時におけるＤＣ出力停止のタイミングに差が生じ得る。
【０００９】
ＤＫＣのクラスタは、通信接続されるホストコンピュータ（以下、ホストとする）等の他装置からのデータ入出力要求に従って、記憶装置上の記憶ボリュームに対するデータ入出力処理を行う。クラスタのそれぞれは、少なくともプロセッサとメモリの部位を有する。前記メモリは、不揮発性メモリを含む。各クラスタのプロセッサは、自クラスタ内のメモリに対する制御を行うと共に、他クラスタのプロセッサと通信可能であり、他クラスタのメモリに対する制御が可能である。
【００１０】
ＤＫＣのクラスタは、例えば、他装置側との通信インタフェース処理を行うチャネル制御部と、記憶装置側との通信インタフェース処理を行うディスク制御部と、データキャッシュのためのキャッシュメモリ部と、制御情報格納のための共有メモリ部と、それらを相互接続する接続部とを備える構成である。前記チャネル制御部及びディスク制御部は、プロセッサを備える。クラスタにおいて、プロセッサにより共有メモリ上に状態情報を読み書きしながら、停復電時の制御を実行する。
【００１１】
停復電時のパターンとして、電源部における電源供給停止タイミングの差によって発生する以下のものがある。第１の停電パターンとして、比較的長い時間の停電の場合に、複数のすべてのクラスタが稼動停止するケースがある。例えば、二重のクラスタの構成で、一方が先に停止し、他方が後に停止することで、結果的に両クラスタが稼動停止に至るケースである。また第２の停電パターンとして、短い停電の場合に、複数のクラスタのうち一部が稼動停止するが一部が稼動継続されるケースがある。例えば、二重のクラスタの構成で、一方が先に停止し、他方が停止せずに復電することで、結果的に片クラスタのみ稼動停止されるケースである。本ディスクアレイ装置は、停電時の状況に応じて、前記第１の停電パターンに対応した第１の制御と、前記第２の停電パターンに対応した第２の制御とを実行可能である。
【００１２】
本ディスクアレイ装置では、電源部と、プロセッサ及びメモリを有するクラスタとの多重構成において、各クラスタの電源状態あるいは停電状態を判定する手段を有する。本手段は、ディスクアレイ装置内に設けられた停電判断部などの回路と、クラスタのプロセッサによる停電判定処理などとにより実現される。前記メモリ上には、プロセッサにより、クラスタの部位の閉塞／回復の状態を管理する情報と、クラスタの電源状態を管理する情報とが、状態情報として管理される。
【００１３】
第１または第２の制御において、停電時の制御として、稼動しているクラスタは、閉塞判定をもとに、停止している他クラスタの部位についての閉塞処理を行うと共に、前記電源状態を判定する手段により、前記他クラスタの部位についての電源状態を判定する。そして、その時の閉塞状態を表わす情報と電源状態を表わす情報とを関係が対応付けられた形で状態情報として不揮発性メモリ上に記録する。そして、復電時の制御として、稼動しているクラスタは、前記他クラスタで閉塞状態となっている部位について、それが停電を原因・契機とした閉塞状態であると判断・認識した場合には、その部位を自動回復処理する。また停電による閉塞状態ではないと判断した場合には、その部位の自動回復処理を行わない。これらによりオペレータの介在なしでクラスタを通常稼動へ復帰する。
【００１４】
前記制御において、前記閉塞処理では、例えば、部位の閉塞状態を表わす閉塞情報を、稼動継続しているクラスタ内の不揮発性メモリ上に書き込む。また、前記電源状態の判定では、例えば、稼動継続しているクラスタのプロセッサは、前記閉塞処理の実行と同時または直前または直後に、停電判断部の回路からの信号の検出に従った停電判定によりクラスタの電源状態を認識し、停電状態である場合はそれを表わす停電情報を、稼動継続しているクラスタ内の不揮発性メモリ上に書き込む。また、前記回復処理では、例えば、前記クラスタの部位の閉塞状態を解除するようにメモリ上の前記閉塞情報を更新すると共に、クラスタ間のメモリの内容を一致させるためのメモリコピー処理を実施する。
【００１５】
（１）  第１の制御において、停電時の制御として、停電直後に稼動継続している第１のクラスタのプロセッサは、先に稼動停止した第２のクラスタの部位を閉塞処理すると共に、前記第２のクラスタの電源状態を判定し、前記第２のクラスタの電源状態を表わす情報をクラスタ内の不揮発性メモリ上に記録して保存する。その後第１のクラスタも稼動停止される。そして復電時の制御として、復電により複数のクラスタが再起動されると、直後に、前記第１のクラスタのプロセッサは、前記不揮発性メモリ上に保存されている情報をもとに、前記第２のクラスタの閉塞状態の部位について、停電による閉塞状態であることを認識できた場合に、その部位を回復処理する。
【００１６】
（２）  第２の制御において、停電時の制御として、停電直後に稼動継続している第１のクラスタのプロセッサは、稼動停止した第２のクラスタの部位を閉塞処理すると共に、前記第２のクラスタの電源状態を判定して、前記第２のクラスタの電源状態を表わす情報を前記メモリ上に記録して保存する。その後第１のクラスタが稼動停止する前に復電される。そして復電時の制御として、前記閉塞処理後に、前記第１のクラスタのプロセッサは、前記第２のクラスタでの閉塞状態の部位が停電によるものであることを認識しているので、その部位に対して、動作健全性チェックのためのアクセスを定期的に実施し、前記チェックの結果が問題ない場合に、その部位を回復処理する。前記チェックのアクセスは、復電前から実行するものとしてもよいし、復電後に実行するものとしてもよい。
【００１７】
（３）  また、本発明のディスクアレイ装置は、内部に、前記クラスタの電源状態を判定する手段を、停電判断部などの回路により構成する。前記停電判断部の回路は、例えば、電源部におけるＤＣ電源またはＡＣ電源の供給の状態をもとに、クラスタの電源状態を表わす信号を、クラスタのプロセッサに対して出力する回路である。各プロセッサは、前記電源状態を表わす信号を検出することで他クラスタの電源状態を認識する。
【００１８】
前記電源状態を判定する手段は、第１の構成例として、各クラスタに停電判断部の回路を備え、各停電判断部の回路は、他のクラスタの電源部からのＤＣ電源を入力して、停電判断結果を表わす信号を、クラスタ内のプロセッサに対して出力する構成である。前記電源状態または停電状態を表わす信号は、例えば、電源供給が途絶えた停電状態の時にアクティブ、停電なし状態の時にノンアクティブとなる停電信号である。この信号の検出により、プロセッサは、閉塞処理の時における、他クラスタの停電状態を判定する。
【００１９】
前記電源状態を判定する手段は、第２の構成例として、電源部とクラスタの間に停電判断部の回路を備え、停電判断部の回路は、電源部におけるＡＣ電源を入力して、停電判断結果を表わす信号を、各クラスタ内のプロセッサに対して出力する構成である。この信号の検出により、プロセッサは、閉塞処理の時における、他クラスタの停電状態を判定する。
【発明の効果】
【００２０】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。本発明によれば、前記停復電時における復帰のための保守員介在の手間を省略でき、また、短時間での復帰、低コストな構成での復帰、及び、ＤＫＣ処理負荷の低い復帰が実現される。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。図１〜１２は、本発明の実施の形態のディスクアレイ装置を説明するための図である。本発明の実施の形態のディスクアレイ装置は、ＤＫＣ及び電源部の二重構成において、停電時の状況に応じて第１の制御と第２の制御を実行可能である。実施の形態１では、第１の制御を実行する機能を備える。実施の形態２では、第２の制御を実行する機能を備える。各実施の形態で、基本となるハードウェア構成は同様である。第１及び第２の制御では、停電時のクラスタの部位における閉塞状態の発生時に、停電判定により停電状態を認識して状態情報として保存し、復電時に前記閉塞状態の部位について自動回復処理する。各実施の形態で、停電判定のための回路の構成を備える。
【００２２】
（実施の形態１）
図１〜６は、本発明の実施の形態１におけるディスクアレイ装置１を説明するための図である。実施の形態１では、ＤＫＣ及び電源部の二重構成において、第１の制御として、比較的長い停電の発生時におけるＤＫＣの両クラスタ稼動停止に対応した、停電時制御と復電時制御とを行う。停電時制御では、停止時間の差により後に停止する側のクラスタによる、先に停止した側のクラスタの部位を対象とした閉塞処理時に、停電判定をもとに停電状態を認識して、閉塞状態の発生と停電状態との関係が対応付けられた形で状態情報を不揮発性メモリ上に保存する。そして、復電時制御では、再起動した両クラスタで、通常状態の側のクラスタは、前記保存しておいた状態情報から、クラスタにおける閉塞状態の部位について、その閉塞状態が停電によるものであることを認識すると、その部位を自動回復処理する。第１の制御では、再起動されたクラスタが、保存しておいた状態情報から前記閉塞状態の発生の原因・契機を認識する。
【００２３】
＜ディスクアレイ装置ハードウェア＞
図１は、ディスクアレイ装置１の全体のハードウェア外観構成を示す斜視図である。ディスクアレイ装置１は、例えば基本筐体と複数の増設筐体とから構成できる。図１は、基本筐体の前面右斜め上から筐体を透過して見たものであり、筐体内各部の配置の概略を示している。基本筐体は、最小構成単位であり、ＤＫＣ１０などが担う記憶制御機能と、ＨＤＤ３０などが担う記憶機能との両方を備える。増設筐体は、オプション単位であり、記憶機能を備える。記憶制御機能は、通信接続されるホストなどの他装置からの要求や命令に応じて、記憶機能の提供する記憶領域に対するユーザデータ等のデータの記憶を制御する。各筐体間が通信ケーブルで通信可能に接続される。
【００２４】
基本筐体には、下から、複数のバッテリ２１、複数のＡＣボックス２２、複数のＡＣ−ＤＣ電源２３、論理ボックス４、複数のファン５、ＳＶＰ６、パネル７、ＨＤＤボックス８、複数のファン９等が配備されている。
【００２５】
バッテリ２１は、ＡＣ−ＤＣ電源２３に対して接続され、停電時のバックアップ電源として機能する。後述するように、各実施の形態では、バッテリ２１の搭載を必要最低限に抑える。ＡＣボックス２２は、顧客設備の入力ＡＣ電源を接続する部分であり、ＡＣ−ＤＣ電源２３と接続される。ＡＣ−ＤＣ電源２３は、入力ＡＣ電源についてＡＣ−ＤＣ変換を行い、ＤＫＣ１０他の筐体内各部位に対してＤＣ電源を供給する。
【００２６】
論理ボックス４には、制御パッケージ１００を収容可能な複数のスロットを有し、各スロットに制御パッケージ１００がガイドレールに沿ってそれぞれ挿抜可能に収容・接続され制御パッケージ１００単位で交換可能となっている。制御パッケージ１００は、ホストインタフェース等の機能を実装したボード（回路基板）を中心に含んで、論理ボックス４等に装着するためのキャニスタ等の機械的構造を加えて一体的にモジュール化されたものである。各種の制御パッケージ１００の相互接続によってＤＫＣ１０が実現される。論理ボックス４内には、制御パッケージ１００の相互接続のための図示しないバックプレーンボードを有する。各制御パッケージ１００のコネクタが、スロット内でバックプレーンボードのコネクタに接続され、ＤＫＣ１０として組み込まれる。
【００２７】
ＳＶＰ（保守・管理端末）６は、ディスクアレイ装置１の保守・管理の処理を担当するプロセッサを持つ装置である。ＳＶＰ６は、例えばノート型ＰＣの形態を有し、通常時には筐体内に収容され必要時に前面に取り出される。保守員は、ＳＶＰ６を操作して、保守・管理の処理を行うことが可能である。パネル７は、ディスクアレイ装置１の基本操作のためのスイッチや、各種情報表示を行う表示器などが配置されている。
【００２８】
ＨＤＤボックス８には、複数のＨＤＤ３０が、ＨＤＵ（ＨＤＤユニット）の形態で、並列的に、それぞれ挿抜可能に収容・接続される。ＨＤＵは、ＨＤＤ３０を含んで、装着のためのキャニスタ等の機械的構造を加えて一体的にモジュール化されたものである。
【００２９】
筐体内に設けられた複数のファン５，９は、筐体内の部位に対して送風することにより空冷する。
【００３０】
＜ディスクアレイ装置の機能ブロック構成＞
図２は、ディスクアレイ装置１の機能ブロック構成を示す。図２に示すように、ディスクアレイ装置１は、電源部とＤＫＣ１０とＤＫＵ（ディスクユニット）３００とＳＶＰ６とを有する。電源部とＤＫＣ１０とＤＫＵ３００は、対応して二重化された構成である。
【００３１】
ＤＫＣ１０は、論理的なクラスタ（ＣＬ）１０Ａ，１０Ｂにより二重化された構成である。例えばＣＬ（＃１）１０ＡとＣＬ（＃２）１０Ｂで同一機能である。ＤＫＵ３００は、ＨＤＤ３０のグループを含む部分である。各ＣＬ１０Ａ，ＣＬ１０Ｂは、ＤＫＵ３００の各ＨＤＤ３０に対して接続網などを介して通信接続される。
【００３２】
電源部は、ＤＫＣ１０に対する２系統のＡＣ−ＤＣ電源部（ＰＳ）２Ａ，２Ｂを含む。電源境界に対応して、一方側をＰＳ＃１（２Ａ）、他方側をＰＳ＃２（２Ｂ）として構成管理している。各ＰＳ２Ａ，２Ｂは、前記ＡＣ−ＤＣ電源２３に対応した、二重のスイッチング電源（ＳＷＰＳ）により構成されている。ＰＳ２Ａは、ＳＷＰＳ３１，３２を有し、ＰＳ２Ｂは、ＳＷＰＳ３３，３４を有する。また、ディスクアレイ装置１内には、ＤＫＵ３００内に対してＤＣ電源を供給するＰＳ２を有し、ＰＳ２は、ＳＷＰＳ３５，３６を有する。
【００３３】
各ＰＳには、２系統の入力ＡＣ電源（ＡＣ１，ＡＣ２）のそれぞれが、前記ＡＣボックス２２を介して、二重のＳＷＰＳへと入力・接続される。ＡＣ１がＳＷＰＳ３１，３３，３５に入力され、ＡＣ２がＳＷＰＳ３２，３４，３６に入力される。各ＰＳ２Ａ，２Ｂでは、各ＳＷＰＳによりＡＣ−ＤＣ変換され、対応するＤＫＣ１０のＣＬ１０Ａ，ＣＬ１０Ｂに対してＤＣ電源（ＤＣ１，ＤＣ２）が供給される。ＤＣ１はＣＬ１０Ａを構成する各部位へ供給され、ＤＣ２はＣＬ１０Ｂを構成する各部位へ供給される。また、ＤＫＵ３００の各ＨＤＤ３０に対しても、ＤＫＣ１０に対してと同様に、ＰＳ２を介してＤＣ電源が供給される。一方のＡＣ入力が途絶えた場合でも、他方のＡＣ入力により各ＰＳでＤＣ電源供給が継続される。
【００３４】
図２中に示す電源境界は、電源供給系に関する、電源部及びＤＫＣ１０における論理的な境界を示す。電源部によるＤＫＣ１０に対する電源供給が二重化されているので、電源境界の一方側、例えばＰＳ２ＡからＣＬ１０Ａに対するＤＣ１の供給が停止した場合でも、他方側でＰＳ２ＢからＣＬ１０Ｂに対するＤＣ２の供給が継続されることで、他方側のＣＬ１０Ｂによりディスクアレイ装置１の機能の提供が継続できる。
【００３５】
なお、ＰＳとＤＫＣ１０の間にバッテリ２１が更に接続される構成の場合は、入力ＡＣ電源ＡＣ１，ＡＣ２の停電時、すなわちＰＳ２Ａ，ＰＳ２ＢのＤＣ電源供給の停止時にも、バッテリ２１から電源供給され、ＣＬ１０Ａ，１０Ｂの稼動をしばらく維持できる。
【００３６】
ディスクアレイ装置１に対しては、ネットワーク等の通信手段を介して、ホスト等の外部装置が通信接続される。前記ネットワークは、例えば、ファイバチャネルプロトコルに準拠した１つ以上のスイッチ等の通信機器により構築されたＳＡＮ（Storage Area Network）である。その場合、ホストとＣＨＡ１１は、ＳＡＮ上でファイバチャネルプロトコルに従った通信処理を行う。例えばホストからディスクアレイ装置１に対してブロック単位のデータ入出力要求が送信される。またＤＫＣ１０は、ネットワーク等を介して他のディスクアレイ装置にも通信接続可能である。
【００３７】
ディスクアレイ装置１に通信接続されるホストは、ＣＰＵ、メモリ、通信インタフェース部などを備えた、例えばＰＣ、ワークステーション、サーバ、メインフレームコンピュータといった形態の情報処理装置である。ホストは、前記ＣＰＵにより各種プログラムが実行されることにより、ホストとしての様々な機能が実現される。ホストは、ディスクアレイ装置１に対するデータ入出力を行うためのソフトウェア（管理プログラムと称する）と、ディスクアレイ装置１に対するアクセスを利用して情報処理サービスを行うためのアプリケーションプログラム等とを備える。
【００３８】
クラスタ構成において、例えば、ホストが一方のＣＬ１０ＡのＣＨＡ１１に通信接続され、ホストからの要求に従ってＣＭ１３及びＳＭ１４を介してＤＫＡ１２によりＨＤＤ３０に対するデータ読み書きが行われる。ＣＬ１０Ａが稼動停止する場合は、ＣＬ１０ＢにＣＬ１０Ａの処理を引き継ぐことができる。すなわち、同ホストは、ＣＬ１０ＢのＣＨＡ１１と通信接続され、同様にＨＤＤ３０に対するデータ読み書きが行われる。
【００３９】
＜ＤＫＣ＞
ＤＫＣ１０は、機能ごとの処理部として、ＣＨＡ（チャネル制御部）１１、ＤＫＡ（ディスク制御部）１２、ＣＭ（キャッシュメモリ）１３、ＳＭ（シェアドメモリ：共有メモリ）１４を有する。各処理部は、例えばスイッチ部などの接続部を介して相互に通信やデータ転送が可能に接続される。各処理部は、前記制御パッケージ１００やその他のボード等により提供可能である。
【００４０】
ＣＨＡ１１は、ホストや他の外部装置とのデータ入出力口となるホストインタフェース（チャネルインタフェースともいう）の機能を有する。また、ＤＫＡ１２は、ＤＫＵ３００のＨＤＤ３０のデータを読み書きするディスクインタフェース（ドライブインタフェースともいう）の機能を有する。各ＣＨＡ１１及びＤＫＡ１２は、ＭＰ（マイクロプロセッサ）やメモリや、各インタフェースに応じた処理部などの部位を有する構成である。ＭＰがプログラムを実行してＣＨＡ１１等としての機能を実現する。
【００４１】
ＣＨＡ１１とＤＫＡ１２の処理データは、大容量のＣＭ１３を介してやり取りされる。ＳＭ１４は、状態情報などの制御情報の格納用に使用され、ＤＫＣ１０内各部によって共有される。ＣＭ１３及びＳＭ１４は、不揮発性メモリで構成され、バッテリ２１によりバックアップされる。従って、停電によるＤＣ電源供給停止時でも、前記状態情報を含む内容が保持され消失しない。
【００４２】
ＣＨＡ１１及びＤＫＡ１２とＣＭ１３とは、データキャッシュ用のパスで接続される。ＣＨＡ１１及びＤＫＡ１２とＳＭ１４とは、制御情報読み書き用のパスで接続される。ＣＨＡ１１とホストコンピュータ等の外部装置とがホストインタフェースのパスで接続される。ＤＫＡ１２と各ＨＤＤ３０とが、ディスクインタフェースのパスで接続される。各パスは、物理的なライン上に必要に応じて論理的なパスが設定されるものである。
【００４３】
ディスクアレイ装置１での通常のデータ入出力処理は例えば以下のような流れになる。ホストからの要求に応じたディスクアレイ装置１での記憶ボリュームに対するデータの書き込み／読み出し処理について示す。あるＣＨＡ１１がホストから受信したデータ入出力要求がデータ書き込み要求であった場合、当該ＣＨＡ１１は、データ書き込み要求をＳＭ１４に書き込むと共に、ホストから受信した書き込みデータをＣＭ１３に書き込む。一方、ＤＫＡ１２は、ＳＭ１４を監視しており、ＳＭ１４にデータ書き込み要求が書き込まれたことを検出すると、当該データ書き込み要求に従ってＣＭ１３から書き込みデータを読み出して、ＨＤＤ３０上に書き込む。また、あるＣＨＡ１１がホストから受信したデータ入出力要求がデータ読み出し要求であった場合、読み出し対象となるデータがＣＭ１３に存在するかどうかを調べる。ここでＣＭ１３に前記データが存在する場合、ＣＨＡ１１はそのデータをホストに送信する。一方、ＣＭ１３に前記データが存在しない場合、ＣＨＡ１１はデータ読み出し要求をＳＭ１４に書き込むと共に、ＳＭ１４を監視する。データ読み出し要求がＳＭ１４に書き込まれたことを検出したＤＫＡ１２は、ＨＤＤ３０から読み出し対象となるデータを読み出してＣＭ１３に書き込むと共に、その旨をＳＭ１４に書き込む。そしてＣＨＡ１１は、読み出し対象となるデータがＣＭ１３に書き込まれたことを検出すると、そのデータをホストへ送信する。
【００４４】
ＤＫＣ１０における各機能は他の構成も可能である。例えば、ＣＭ１３とＳＭ１４とを一体的に形成されたメモリ構成とすることもできる。ＣＨＡ１１からＤＫＡ１２に対するデータの書き込みや読み出しの指示をＳＭ１４を介在させて間接的に行う構成の他、例えばＳＭ１４を介在させずに直接的に行う構成とすることもできる。また、ＣＨＡ１１にＤＫＡ１２の機能を持たせることにより、ＣＨＡ１１がＨＤＤ３０に記憶されたデータの読み書きを行うようにすることもできる。また、ＳＭ１４またはＣＭ１３がＣＨＡ１１とＤＫＡ１２の各々に分散されて設けられた構成とすることもできる。
【００４５】
ディスクアレイ装置１内の状態、例えば各部位の構成や障害状態や処理状況などは、ＤＫＣ１０内に有するＳＭ１４などのメモリに状態情報・データとして随時に格納される。本実施の形態では、ＤＫＣ１０内に有するＣＨＡ１１及びＤＫＡ１２に搭載されている各ＭＰは、ＳＭ１４に対し上記各種の状態情報を随時に読み書きする。
【００４６】
＜ＤＫＵ＞
ＤＫＣ１０のＤＫＡ１２に対して接続網を介してＤＫＵ３００内の各ＨＤＤ３０が通信接続される。ＨＤＤ３０は、ＤＫＡ１２側からの要求に応じてそのディスク領域にデータを読み書きする動作を行う。ＨＤＤ３０における記憶領域単位は、例えばＬＢＡ（ロジカルブロックアドレス）に対応したブロック単位である。ＨＤＤ３０としては各種のインタフェースのドライブが使用可能である。
【００４７】
ＤＫＣ１０によりＨＤＤ３０上に記憶ボリュームが設定される。記憶ボリュームは、ＨＤＤ３０により提供される物理的な記憶領域である物理ボリュームと、物理ボリューム上に論理的に設定される記憶領域である論理ボリュームとを含む、データを記憶するための記憶資源をいう。論理ボリュームを特にＬＵ（論理ユニット）とも称する。複数のＨＤＤ３０からディスクアレイが構成され、ホストに対する記憶領域を、ＲＡＩＤ制御により管理されたＲＡＩＤグループとして提供可能である。各ＬＵには、ＬＵＮ（論理ユニット番号）等の固有の識別子が付与されて管理される。ホストからディスクアレイ装置１に対するデータ入出力要求には、対象を指定するためのＬＵＮやＬＢＡ等が記述される。
【００４８】
＜ＳＶＰ＞
ＤＫＣ１０に対しては、内部のＬＡＮを介してＳＶＰ６が接続される。ＳＶＰ６は、内部のＬＡＮにより各ＣＨＡ１１及びＤＫＡ１２のＭＰと接続され、各ＭＰとの間で通信可能である。ＳＶＰ６は、プログラムを実行して保守・管理処理を実現する。本実施の形態では、ＳＶＰ６がディスクアレイ装置１内で内部接続されている。また、ＳＶＰ６は、ディスクアレイ装置１に外部接続される形態でもよい。また、ＳＶＰ６以外の保守・管理装置が、ディスクアレイ装置１に対してネットワーク等を介して通信接続される形態も可能である。例えば、ディスクアレイ装置１に通信接続されるホスト上に保守・管理処理用のプログラムをインストールしたものを保守・管理装置として使用可能である。
【００４９】
ＳＶＰ６は、ディスクアレイ装置１内の状態を、保守員などのオペレータが監視・把握できるように、その保守・管理の機能がＧＵＩ化されている。ＳＶＰ６は、通常時、ディスクアレイ装置１内のＤＫＣ１０を含む各部位の構成、障害状態、処理状況などの各状態を把握する。ディスクアレイ装置１内の状態情報はＳＭ１４上に保持され、ＳＶＰ６は、ＳＭ１４上の状態情報をもとにＳＶＰ６のディスプレイ画面へ各種情報の表示を行う。また、オペレータによるＳＶＰ６への操作入力により、ＳＭ１４上の情報を変更することで、ディスクアレイ装置１の構成や状態を変更することができる。
【００５０】
ディスクアレイ装置１では、停復電時の制御をオペレータの介在なしで自動的に実行する。例えばＳＶＰ６からＤＫＣ１０のクラスタに対して指示・制御することにより、クラスタのＭＰに停復電時の制御に係わる閉塞処理といった処理を行わせる。処理を行う対象となるＭＰは、その時に仕事が少ないＭＰや、ディスクアレイ装置１の機能によっては固定の代表ＭＰなどである。処理を行うＭＰは、ＳＭ１４上に対し、状態情報として、各部位の閉塞状態を示す情報や停電状態を示す情報などを読み書きする。例えば、ＳＶＰ６からの制御に従い、健全な、すなわち障害や閉塞などの状態でないＭＰを用いて、故障停止した部位を閉塞状態にするようにＳＭ１４上の状態情報の内容を変更する。また健全なＭＰを用いて、前記故障停止した部位の閉塞状態を解除するようにＳＭ１４上の状態情報の内容を変更する。
【００５１】
ＭＰは、停復電時の制御に関して、対象部位を前記閉塞状態へ移行する閉塞処理、停電状態を判定して保存する処理、前記閉塞状態を解除して通常状態に戻す回復処理などを行う。クラスタの部位における閉塞状態の発生の原因・契機として、ハードウェア故障以外に、停電によるＤＣ電源供給停止がある。
【００５２】
＜電源部及びクラスタ構成（１）＞
図３（ａ），（ｂ）は、実施の形態１及び２における停復電時の制御に係わる、電源部とクラスタの第１の構成例を示すブロック図である。図３（ａ）は、特に、停電状態を判定する手段に関する第１の構成例を示しており、図３（ｂ）は、そのうちの停電判断部１０３の詳細構成を示す。ディスクアレイ装置１内で、停電状態を判定する手段を、停電判断部１０３の回路を中心に構成している。
【００５３】
本構成は、二重のＤＫＣ１０のクラスタ及び電源部の構成において、各ＣＬ１０Ａ，１０Ｂ内に、停電判断部１０３を設け、それぞれ相手クラスタ（ＣＬ１０Ｂ，１０Ａ）側の供給ＤＣ電源（ＤＣ２，ＤＣ１）を入力して、相手クラスタ側の停電状態を示す停電信号Ｆ（＃２，＃１）を同クラスタ内のＭＰ１０１に出力する構成である。
【００５４】
停電によりＡＣ１，ＡＣ２の供給が途絶えると、ＤＣ１，ＤＣ２共に供給停止するが、ＳＷＰＳ３１〜３４の停電耐力の差により電源保持時間に差が生じ得る。そのため、ＤＣ１，ＤＣ２のＣＬ１０Ａ，１０Ｂへの供給停止タイミングに差が生じ、クラスタ稼動停止タイミングにずれが生じ得る。
【００５５】
ＣＬ１０Ａ，１０Ｂにおいて、ＭＰ１０１、メモリ１０２、停電判断部１０３を有する。ＭＰ１０１は、前記ＣＨＡ１１等に搭載されているＭＰに相当する。メモリ１０２は、前記ＣＭ１３とＳＭ１４に相当する。各ＭＰ１０１は、自クラスタ内の各ＭＰ１０１と通信可能であり、自クラスタ内の各メモリ１０２に対し読み書きアクセス可能である。また、各ＭＰ１０１は、他クラスタ内のＭＰ１０１に対し通信可能であり、他クラスタ内のメモリ１０２に対し読み書きアクセス可能である。各ＭＰ１０１は相互に状態をチェックし合う。
【００５６】
第１及び第２の制御において、ＭＰ１０１は、停電時の閉塞処理、停電状態の判定処理、復電時の回復処理などを行う。また、メモリ１０２であるＳＭ１４上には、ＭＰ１０１により、各部位の閉塞／回復の状態を管理するための閉塞情報、停電状態を管理するための停電情報などが状態情報として記憶される。
【００５７】
停電判断部１０３は、他クラスタ、すなわち本実施の形態の場合における組となる相手クラスタのＤＣ電源を入力して、相手クラスタ及び電源部についての停電判断、すなわち相手クラスタに供給されるＤＣ電源供給の停止／保持についての判断を行い、停電状態を示す停電信号Ｆを、自クラスタ内のＭＰ１０１に対して出力する。例えば、ＣＬ１０Ａにおいて停電判断部１０３はＤＣ２を入力して、ＤＣ２の供給が停電なしで途絶えていない場合には、「ＰＳ＃２及びＣＬ＃２における停電なし状態」を示す停電信号Ｆ＃２を、ＤＣ２の供給が停電により途絶えている場合には、「ＰＳ＃２及びＣＬ＃２における停電状態」を示す停電信号Ｆ＃２を、ＭＰ１０１に対し出力する。ＣＬ１０Ｂ側も同様である。停電信号Ｆの入力及び検出により、ＭＰ１０１は、相手クラスタについての停電状態を判定・認識できる。
【００５８】
図３（ｂ）において、停電判断部１０３は、比較器１０４で構成される。比較器１０４は、相手クラスタのＤＣ電圧（例えばＤＣ２）を一方の端子に入力し、他方の端子に入力される基準電圧と比較して、結果を停電信号Ｆ（＃２）として同クラスタ内のＭＰ１０１に対し出力する。本構成の場合、相手クラスタのＤＣ電圧での停電判定であるため、回路構成が容易である。
【００５９】
図３に示すような電源部及びＤＫＣ１０のクラスタの構成において、停復電によるクラスタ稼動停止等のパターン（以下、停電パターンと称する）として、後述する停電パターン（１），（２）がある。
【００６０】
＜従来の停復電時の動作＞
比較のために、従来のディスクアレイ装置構成例における停復電時の動作例について説明しておく。従来のディスクアレイ装置構成例は、例えば前記図３（ａ）の構成で停電判断部１０３等を含まない構成である。停電によりＡＣ１，ＡＣ２の供給が途絶えると、ＰＳ２Ａ，２Ｂで、それぞれ停電耐力に応じた電源保持時間の後にＤＣ１，ＤＣ２の出力が停止する。ＰＳ２Ａ，２Ｂにおいて、個々のＳＷＰＳ３１〜３４は、停電耐力にばらつきがあり、すなわち停電時の電源保持時間にばらつきがある。例えばＳＷＰＳ３１でＡＣ１の入力が停電により途絶えると、そのＳＷＰＳ３１の停電耐力に応じた電源保持時間の間はＤＣ１の出力が保持され、その後耐力限界によりＤＣ１の出力が停止する。そのため、停電時、ＤＣ１，ＤＣ２の供給停止タイミングにも差が生じる。結果、各ＣＬ１０Ａ，１０Ｂの稼動停止時間にも差が生じる。例えばＣＬ１０Ａ，１０Ｂの一方が先に停止することになる。
【００６１】
例えば、コスト低減のために複数ベンダのＳＷＰＳを電源部に使用した構成の場合、前記停電耐力のばらつきは更に大きくなる。逆に、前記ばらつきを少なくするために、単一ベンダのＳＷＰＳに統一したり、前記ばらつきを少なくするための専用回路を付加したりといった手段が考えられるが、その場合コストが高くなり不利である。
【００６２】
停電時に２つのクラスタ（ＣＬ１０Ａ，１０Ｂ）に対するＰＳ２Ａ，ＰＳ２Ｂで耐力に差がある場合、先に耐力限界に達したＰＳ（例えばＰＳ２Ｂ）に対応したクラスタ（例えばＣＬ１０Ｂ）のＭＰ１０１やメモリ１０２等の部位が稼動停止する。この時点の状態は、片クラスタ停止状態と同じである。この片クラスタ停止状態の場合では、稼動を継続している側の、もう片方のクラスタ（例えばＣＬ１０Ａ）でＤＫＣ１０としての動作が継続される。しかしながら、停止した側のＣＬ１０Ｂのメモリ１０２では、格納されている情報・データの内容が更新されないため、システムを正常に保つために、稼動側のＣＬ１０Ａの制御によって、停止側のＣＬ１０Ｂについて故意にメモリ１０２を閉塞状態に移行させる。また、停止側のＣＬ１０ＢのＭＰ１０１もＭＰ１０１間相互の状態チェックで反応できないため、同様に閉塞状態となる。このように、前記片クラスタ停止状態になると、稼動側のＣＬ１０Ａの制御により、停止側のＣＬ１０ＢのＭＰ１０１やメモリ１０２といった各ハードウェア資源の部位が閉塞状態へ移行される。
【００６３】
比較的長い停電の場合、前記片クラスタ停止状態の後、前記ＰＳ２Ｂの後に耐力限界に達したＰＳ２Ａに対応したＣＬ１０ＡのＭＰ１０１やメモリ１０２等の部位が稼動停止する。結果的に、両クラスタ（ＣＬ１０Ａ，１０Ｂ）が稼動停止した状態になる。その後、復電すると、両クラスタ（ＣＬ１０Ａ，１０Ｂ）が再起動されるが、前記先に停止した側のＣＬ１０ＢのＭＰ１０１やメモリ１０２等の部位は、閉塞状態での再稼動となる。当該部位は、閉塞状態ではあるがハードウェア故障ではないので、動作的には健全性を持つ。
【００６４】
前記閉塞状態で再稼動したＣＬ１０Ｂの部位について回復してクラスタを通常状態へ復帰させる必要があるが、この回復のために、従来では保守員が介在して手動での回復作業が必要となっていた。すなわち、ＳＶＰ６経由でＳＭ１４の状態情報を変更することで閉塞状態にある部位を回復させる手間が必要であった。前記閉塞状態の回復及びクラスタの復帰は、できる限り短時間で行われることが望ましい。
【００６５】
＜停電パターン（１）＞
図４は、停電パターン（１）及び停電パターン（１）に対応した第１の制御の例を示すタイムシーケンス図である。停電パターン（１）として、比較的長い時間の停電の発生により両クラスタが電源停止するケースにおいて、まず片方のクラスタ（仮にＣＬ１０Ｂとする）が先に電源停止し、その後にもう片方のクラスタ（仮にＣＬ１０Ａとする）が電源停止して、結果的に両クラスタが稼動停止に至るケースがある。クラスタ稼動停止タイミングの差により、閉塞処理による閉塞状態となる部位が発生する。
【００６６】
図４で、上から、（ａ）はＡＣ１，ＡＣ２の状態、（ｂ）はＤＣ１状態及びＣＬ＃１（１０Ａ）動作、（ｃ）はＤＣ２状態及びＣＬ＃２（１０Ｂ）動作、（ｄ）は停電信号Ｆ＃１、（ｅ）は停電信号Ｆ＃２、（ｆ）はＣＬ＃１の稼動及び閉塞の状態、（ｇ）はＣＬ＃２の稼動及び閉塞の状態を示す。ｔ１等は時刻を示す。ＰＳ＃１（２Ａ）の停電耐力がＰＳ＃２（２Ｂ）の停電耐力より大きい場合である。ｓ１は、片クラスタ停止状態、ｓ２は、両クラスタ停止状態、ｓ３は、片クラスタ閉塞状態に対応する。
【００６７】
（ａ）ＡＣ１，ＡＣ２の状態において、ｔ１で停電の発生によりＡＣ１，ＡＣ２の供給が停止している。その後ｔ４で復電によりＡＣ１，ＡＣ２の供給が再開されている。
【００６８】
（ｂ）ＤＣ１状態及びＣＬ＃１動作において、ｔ１からｔ３までの間のＰ１は、ＤＣ１耐力、すなわちＰＳ２Ａの停電耐力による電源保持時間を示し、この間、ＣＬ＃１へのＤＣ１の供給が継続されている。ｔ３で耐力限界によりＤＣ１の供給が停止しており、その後ｔ４での復電によりｔ５でＤＣ１の供給が再開され、ＣＬ＃１が再起動される。ＣＬ＃１の再起動時にＣＬ＃１は自己診断を実施して再稼動する。
【００６９】
（ｃ）ＤＣ２状態及びＣＬ＃２動作において、ｔ１からｔ２までの間のＰ２は、ＤＣ２耐力、すなわちＰＳ２Ｂの停電耐力による電源保持時間を示し、この間、ＣＬ＃２へのＤＣ２の供給が継続されている。ｔ２で耐力限界によりＤＣ２の供給が停止しており、その後ｔ４での復電によりｔ５でＤＣ２の供給が再開され、ＣＬ＃２が再起動される。ＣＬ＃２の再起動時にＣＬ＃２は自己診断を実施して再稼動する。
【００７０】
（ｄ）停電信号Ｆ＃１において、ｔ３のＤＣ１供給停止の契機で“０”（停電なし状態）から“１”（停電状態）へ変化しており、ｔ５のＤＣ１供給再開の契機で“１”から“０”へ変化している。
【００７１】
（ｅ）停電信号Ｆ＃２において、ｔ２のＤＣ２供給停止の契機で“０”から“１”へ変化しており、ｔ５のＤＣ２供給再開の契機で“１”から“０”へ変化している。
【００７２】
（ｆ）ＣＬ＃１状態において、電源に関しては、ｔ３までが稼動状態、ｔ３からｔ５までが停止状態、ｔ５以降が稼動状態である。また閉塞に関しては、通常状態である。
【００７３】
（ｇ）ＣＬ＃２状態において、電源に関しては、ｔ２までが稼動状態、ｔ２からｔ５までが停止状態、ｔ５以降が稼動状態である。また閉塞に関しては、ｔ２の直後の閉塞処理時点まで通常状態、ｔ２直後の閉塞処理時点からｔ５の直後の自動回復処理時点までが閉塞状態、ｔ５の直後の自動回復処理時点以降が通常状態である。
【００７４】
第１の制御において、停電時の制御では、停電直後において僅かの時間稼動している側のクラスタ（ＣＬ＃１）のＭＰ１０１は、僅かの時間稼動後に先に停止した相手クラスタ（ＣＬ＃２）の部位（ＭＰ１０１及びメモリ１０２）についての閉塞判定と同時に停電判断部１０３からの停電信号（Ｆ＃２）をもとに相手クラスタ（ＣＬ＃２）についての停電状態を判定する。閉塞処理の直前に停電により停電信号Ｆ（＃２）が変化している。後に停止する側のクラスタ（ＣＬ＃１）は、従来の閉塞処理に従って相手クラスタ（ＣＬ＃２）を閉塞状態へ移行させる閉塞処理を行うと共に、停電状態、すなわち電源供給停止による稼動停止である場合は、相手クラスタ（ＣＬ＃２）の停電状態を表わす停電情報を、稼動している自クラスタ（ＣＬ＃１）のＳＭ１４上に反映しておく。ほぼ同じタイミングで閉塞情報と停電情報がＳＭ１４上に記録されることになる。その後、より長く稼動していた側のクラスタ（ＣＬ＃１）も耐力限界により稼動停止する。そして、復電後に両クラスタ（ＣＬ＃１，＃２）が再起動されるが、前記停電時に閉塞処理しているために、片クラスタ（ＣＬ＃２）の部位が閉塞状態となっている。復電時の制御では、再起動されたクラスタ（ＣＬ＃１）の通常状態のＭＰ１０１は、ＳＭ１４上の停電情報を含む状態情報の参照から、相手クラスタ（ＣＬ＃２）の閉塞状態となっている部位について、それが停電による閉塞であると認識できた場合に、その部位を自動回復処理する。また停電による閉塞状態でないと判断した場合には、ハードウェア故障等による閉塞状態であるため、自動回復処理は行わない。これらにより、従来要していた保守操作の介在なしでクラスタが通常稼動へ復帰される。
【００７５】
図４中では、ｔ２の直後、稼動側のＣＬ＃１は、停止側のＣＬ＃２についての閉塞判定と、停電信号Ｆ＃２の検出によるＣＬ＃２についての停電判定とを行っている。閉塞判定では、ＣＬ＃１は、ＣＬ＃２の各部位を閉塞状態にする閉塞処理を行う。また、停電判定では、停電信号Ｆ＃２が真（“１”）であることから、「ＣＬ＃２がＤＣ２供給停止による稼動停止状態であること」を認識する。両判定から、ＣＬ＃１は、「ＣＬ＃２の閉塞状態がＤＣ２供給停止による稼動停止によること」を認識できる。ＣＬ＃１は、それらを示す閉塞情報と停電情報とをＣＬ＃１のＳＭ１４上に状態情報として書き込む。また、ｔ５での復電後、両クラスタＣＬ＃１，＃２が再起動されるが、ＣＬ＃２の部位は閉塞状態となっている。ｔ５の直後、ＣＬ＃１は、ＣＬ＃１のＳＭ１４上に保存しておいた状態情報を読み出し、前記「ＣＬ＃２の閉塞状態がＤＣ２供給停止による稼動停止によること」を認識する。これにより、ＣＬ＃１は、ＣＬ＃２の閉塞状態の部位を、自動回復処理する。回復処理では、対象部位を通常状態へ移行するようにＣＬ＃１のＳＭ１４上の閉塞情報を更新する。また、クラスタ間でメモリ１０２のデータの内容を一致させるメモリコピー処理などを行う。
【００７６】
＜閉塞／回復処理＞
次に、ディスクアレイ装置１におけるＤＫＣ１０のＣＬ１０Ａまたは１０Ｂで実行される閉塞処理及び回復処理の制御例について説明する。図５（ａ）は、クラスタの各部位の閉塞／回復の管理のために用いる情報の形式の例を示す。本例で用いる情報は、構成情報と閉塞情報である。ここで、閉塞とは、ディスクアレイ装置１のシステムからの論理的な切り離しの動作またはその状態を、回復とは、閉塞と対になる、システムへの論理的な再接合の動作またはその状態を表わす。
【００７７】
ＳＭ１４のメモリ空間には、ディスクアレイ装置１内の構成情報と各構成部位の閉塞情報とが割り当てられている。例えば、ＳＭ１４のメモリ空間のアドレス「１０」の８ｂｉｔに、ＣＭ１３とＣＨＡ１１の構成情報を有し、同アドレス「１１」の８ｂｉｔには、対応する部位についての閉塞情報を有する。構成情報及び閉塞情報において、ｂｉｔデータ“１”はアクティブ、ｂｉｔデータ“０”はノンアクティブを示す。
【００７８】
各情報のデータエリアで、各ｂｉｔ（ｂ０〜ｂ７）は、それぞれディスクアレイ装置１内のロケーションが割り当てられている。例えば、ＤＫＣ１０の各ＣＬ１０Ａ，１０Ｂにおいてメモリ１０２が接続可能なロケーションが複数用意されており、各ロケーションに対してメモリ１０２部位が実装／非実装される。ＤＫＣ１０において各部位が制御パッケージ１００等の形態で各ロケーションに対して挿抜可能に構成されている。本例では、構成情報及び閉塞情報のデータエリアにおける各ｂｉｔ（ｂ０〜ｂ７）は、順に、ｂ０：ＣＬ＃１−ＣＭ−ロケーションＡ、ｂ１：ＣＬ＃１−ＣＭ−ロケーションＢ、ｂ２：ＣＬ＃１−ＣＨＡ−ロケーションＣ、ｂ３：ＣＬ＃１−ＣＨＡ−ロケーションＤ、ｂ４：ＣＬ＃２−ＣＭ−ロケーションＡ、ｂ５：ＣＬ＃２−ＣＭ−ロケーションＢ、ｂ６：ＣＬ＃２−ＣＨＡ−ロケーションＣ、ｂ７：ＣＬ＃２−ＣＨＡ−ロケーションＤとなっている。
【００７９】
構成情報のデータエリアで、ｂｉｔデータ“１”（アクティブ）が反映されている箇所は、対応ロケーションにＣＨＡ１１やＣＭ１３等の部位が実装されている状態であることを示しており、ｂｉｔデータ“０”（ノンアクティブ）の箇所は非実装の状態であることを示している。本例では、構成情報のデータエリアの８ｂｉｔ（ｂ０〜ｂ７）のすべてが“１”であり、ＣＬ１０Ａ及びＣＬ１０ＢにおいてＣＭ１３とＣＨＡ１１がすべて実装の状態であることを示している。
【００８０】
閉塞情報のデータエリアでも、同様に、ｂｉｔデータ“１”（アクティブ）の箇所が閉塞状態、ｂｉｔデータ“０”（ノンアクティブ）の箇所が通常状態を示している。本例では、閉塞情報のデータエリアの８ｂｉｔ（ｂ０〜ｂ７）において、ＣＬ１０ＡのＣＭ１３とＣＨＡ１１では“０”すなわち通常状態であることを示している。ＣＬ１０ＢのＣＭ１３とＣＨＡ１１では“１”すなわち閉塞状態であることを示している。
【００８１】
構成情報と閉塞情報のＡＮＤ（論理積）が“１”の場合には、そのロケーションの部位で閉塞状態であることを示し、“０”の場合には、そのロケーションの部位で通常状態であることを示す。
【００８２】
本実施の形態において、対象部位についての閉塞処理とは、上記構成情報のデータエリアのｂｉｔに“１”として登録されているロケーションに対応する閉塞情報のデータエリアのｂｉｔを“０”から“１”にすることである。また回復処理とは、逆に、同ロケーションに対応する閉塞情報のデータエリアのｂｉｔを“１”から“０”にする処理である。
【００８３】
なお、本実施の形態では、簡単のため、停電時の閉塞処理で、停止したクラスタのすべてのＭＰ１０１とメモリ１０２を閉塞状態へ移行して片クラスタ全体を閉塞状態として扱うものとする。これに限らず、クラスタ内の一部の部位を対象として閉塞状態にする場合もあり得る。
【００８４】
＜停電状態の管理＞
次に、ディスクアレイ装置１における各電源部及びクラスタの停電状態についての管理について説明する。図５（ｂ）は、停電状態の管理のために用いる情報の形式の例を示す。本例で用いる情報は、停電情報である。クラスタの部位における閉塞状態の原因・契機を知るために、前記図５（ａ）に示す閉塞情報と合わせて、閉塞状態の原因・契機が停電によるものであるか否かを示す停電情報をＳＭ１４上に管理する。クラスタの各ＭＰ１０１は、停電判断部１０３からの停電信号Ｆの検出をもとに、相手クラスタの停電状態すなわちＤＣ電源供給状態を認識して、対応した停電情報をＳＭ１４上に格納する。
【００８５】
ＳＭ１４のメモリ空間に、停電情報のデータエリアを設け、このデータエリアの各ｂｉｔを、前記停電信号Ｆを検出するＭＰ１０１ごとに割り当てる。図５（ｂ）では、ＳＭ１４のメモリ空間のアドレス「０ｆ」に、停電情報のデータエリアを有する。本例では、停電情報のデータエリアの各ｂｉｔ（ｂ０〜ｂ７）において、順に、ｂ０：ＣＬ＃１−ＭＰ＃１、ｂ１：ＣＬ＃１−ＭＰ＃２、ｂ２：ＣＬ＃１−ＭＰ＃３、ｂ３：ＣＬ＃１−判定結果、ｂ４：ＣＬ＃２−ＭＰ＃１、ｂ５：ＣＬ＃２−ＭＰ＃２、ｂ６：ＣＬ＃２−ＭＰ＃３、ｂ７：ＣＬ＃２−判定結果となっている。例として各ＣＬ＃１（１０Ａ）、ＣＬ＃２（１０Ｂ）でそれぞれＭＰ＃１〜ＭＰ＃３（１０１）を有する場合である。
【００８６】
停電情報のデータエリアの各ｂｉｔ（ｂ０〜ｂ７）において、ｂｉｔデータ“１”は、そのＭＰ１０１が、相手クラスタについて「停電」すなわちＤＣ電源供給オフの状態であると判定していることを表わす。ｂｉｔデータ“０”は、そのＭＰ１０１が、相手クラスタについて「停電なし」すなわちＤＣ電源供給オンの状態であると判定していることを表わす。各クラスタにおける複数存在するＭＰ１０１が多数決で相手クラスタについて停電判定し、多数が「停電」状態であると判定した場合に、クラスタとして相手クラスタを「停電」状態と判定したものとして、上記判定結果を示すｂｉｔに、その状態を示す“１”をセットする。この判定結果の情報が、クラスタ単位の制御に用いられる停電情報となる。
【００８７】
本例では、ＣＬ１０Ａで、各ＭＰ＃１〜＃３（１０１）は、相手クラスタＣＬ１０Ｂについての停電判定でそれぞれ“１”と判定しており、それらの多数決の結果、ＣＬ１０ＡとしてのＣＬ１０Ｂについての停電判定結果として“１”、すなわち「ＣＬ＃２が停電によるＰＳ＃２からのＤＣ２供給停止による稼動停止状態である」と判断されている。
【００８８】
本実施の形態では、上記のような閉塞情報と停電情報との組み合わせがＳＭ１４上に管理されることによって、各クラスタの部位における閉塞状態の原因・契機が停電によるものであることが判定・認識される。
【００８９】
＜第１の制御のフロー＞
図６（ａ），（ｂ）は、停電パターン（１）に対応した第１の制御を行う場合の処理を示すフロー図である。前記図４に示すようにＣＬ＃２（１０Ｂ）が先に停止しＣＬ＃１（１０Ａ）が後に停止した場合に対応している。
【００９０】
図６（ａ）は、停電時の制御を示す。ステップＳ１１で、各ＣＬ１０Ａ，１０Ｂは、通常動作を行っている。通常動作の間、ステップＳ１２で、各ＣＬ１０Ａ，１０Ｂは、ＭＰ１０１間相互の通信やチェックのためのアクセス等によって、ＭＰ１０１やメモリ１０２に閉塞状態へ移行させる要因となる何らかの状態があるか、または既に閉塞状態が発生しているか等を判断している。閉塞の要因となる状態があり閉塞状態へ移行させる場合または既に発生している閉塞状態を認識した場合は（Ｓ１２−Ｙｅｓ）、次に移る。例えば、通常動作時に所定のエラーがあるかを判断して、所定のエラーがある場合には、該当部位を閉塞処理するために、次へ移る。
【００９１】
ステップＳ１３で、相手クラスタ（ＣＬ１０Ｂ）の部位について、閉塞の要因となる状態または閉塞状態の発生を認識したクラスタ（ＣＬ１０Ａ）は、停電判断部１０３からの停電信号（Ｆ＃２）を確認する。停電信号（Ｆ＃２）が真（“１”）の場合（Ｓ１３−Ｙｅｓ）、ステップＳ１４で、対象のクラスタ（ＣＬ１０Ｂ）の部位が停電状態であることを示す停電情報（“１”）を、稼動しているクラスタ（ＣＬ１０Ａ）のＳＭ１４上へ書き込む。これにより対象部位における閉塞状態と停電状態とが関連付けられる。停電信号（Ｆ＃２）が偽（“０”）の場合は（Ｓ１３−Ｎｏ）、ステップＳ１４の処理は行わずに次へ移る。
【００９２】
ステップＳ１５では、稼動側のクラスタ（ＣＬ１０Ａ）は、対象のクラスタ（ＣＬ１０Ｂ）の部位についての閉塞処理を実行する。なお既に閉塞処理済みの場合は必要ない。例えばＤＣ２電源供給停止により稼動停止した側のクラスタ（ＣＬ１０Ｂ）の部位が閉塞状態へ移行され、閉塞情報（“１”）が稼動側のクラスタ（ＣＬ１０Ａ）のＳＭ１４上へ書き込まれる。その後、耐力限界により、結果的に両クラスタ（ＣＬ１０Ａ，１０Ｂ）で稼動停止される。
【００９３】
図６（ｂ）は、復電時の制御を示す。ステップＳ２１で、復電によりＤＣ１，ＤＣ２の供給が再開され、両クラスタ（ＣＬ１０Ａ，１０Ｂ）が再起動される。ステップＳ２２で、再起動された各クラスタ（ＣＬ１０Ａ，１０Ｂ）における各ＭＰ１０１等の部位は、自己診断を行う。自己診断は、ハードウェア資源に問題がないかどうかをチェックするための通常実施される処理である。自己診断で問題がない部位は稼動開始される。稼動開始されると、前記停電時の制御によって片クラスタ（ＣＬ１０Ｂ）の部位（ＭＰ１０１、メモリ１０２）は閉塞状態となっている。
【００９４】
ステップＳ２３で、通常状態で稼動開始しているクラスタ（ＣＬ１０Ａ）におけるＭＰ１０１は、前記ＳＭ１４上に保存されている各状態情報すなわち前記閉塞情報及び停電情報などを読み、閉塞状態の部位における原因・契機が停電であるかを判断する。対象部位が停電による閉塞状態であった場合は（Ｓ２３−Ｙｅｓ）、ステップＳ２４，Ｓ２５で自動回復処理を行う。
【００９５】
ステップＳ２４では、システムを正常に動作させるための、クラスタ（ＣＬ１０Ａ，１０Ｂ）間でのメモリコピー処理を行う。稼動側のクラスタ（ＣＬ１０Ａ）のＣＭ１３及びＳＭ１４のデータ内容を、閉塞側のクラスタ（ＣＬ１０Ｂ）のＣＭ１３及びＳＭ１４上へコピーして、内容を一致させる。
【００９６】
ステップＳ２５では、対象部位における閉塞状態からの回復に合わせて、ＳＭ１４上の閉塞情報を更新する。すなわち前記閉塞情報の記録を消去する（“１”から“０”にする）。
【００９７】
ステップＳ２６で、両クラスタ（ＣＬ１０Ａ，１０Ｂ）の通常状態での起動が完了した状態となる。すなわち閉塞状態の部位が通常状態で動作再開される。
【００９８】
以上のように、停電パターン（１）に対応した第１の制御では、クラスタの電源部に関してバッテリ２１等の具備を必須としない安価なディスクアレイ装置構成において、停電時のクラスタ閉塞部位を復電時に保守操作の介在を不要で自動的に回復して通常稼動へ復帰できる。従って、クラスタ停止時間を短くしてディスクアレイ装置稼動率を向上できる。
【００９９】
（実施の形態２）
図７，８は、本発明の実施の形態２におけるディスクアレイ装置１を説明するための図である。実施の形態２では、ＤＫＣ及び電源部の二重構成において、第２の制御として、短い停電の発生時におけるＤＫＣの片クラスタ稼動停止に対応した、停電時制御と復電時制御とを行う。停電時制御では、停止しない稼動継続側のクラスタによる、停止した側のクラスタの部位を対象とした閉塞処理時に、停電判定をもとに停電状態を認識して、閉塞状態の発生と停電状態との関係が対応付けられた形で状態情報を不揮発性メモリに保存する。そして、復電時制御では、前記稼動継続側のクラスタが、前記閉塞処理後から、前記停止した側のクラスタにおける閉塞状態の部位に対する動作健全性チェックのアクセスを定期的に実施し、前記停止した側のクラスタの対象部位の動作健全性が確認されたら、その部位を自動回復処理する。第２の制御では、一方のクラスタが、前記停止した側のクラスタにおける閉塞状態の原因・契機が停電によるものであることを認識しているので、前記第１の制御における再起動後の状態情報参照の手順なしで前記チェックの結果に応じて自動回復処理する。実施の形態２における閉塞／回復の制御及び停電状態の管理などは、実施の形態１と同様である。
【０１００】
＜停電パターン（２）＞
図７は、停電パターン（２）及び停電パターン（２）に対応した第２の制御の例を示すタイムシーケンス図である。停電パターン（２）として、瞬停すなわち短い時間の停電の発生により片方のクラスタ（仮にＣＬ１０Ｂとする）が電源停止し、もう片方のクラスタ（仮にＣＬ１０Ａとする）が電源停止しないケースがある。クラスタ稼動停止タイミングの差により、閉塞処理による閉塞状態となる部位が発生する。
【０１０１】
図７で、上から、（ａ）はＡＣ１，ＡＣ２の状態、（ｂ）はＤＣ１状態及びＣＬ＃１（１０Ａ）動作、（ｃ）はＤＣ２状態及びＣＬ＃２（１０Ｂ）動作、（ｄ）は停電信号Ｆ＃１、（ｅ）は停電信号Ｆ＃２、（ｆ）はＣＬ＃１の稼動及び閉塞の状態、（ｇ）はＣＬ＃２の稼動及び閉塞の状態を示す。ｔ１等は時刻を示す。ＰＳ＃１（２Ａ）の停電耐力がＰＳ＃２（２Ｂ）の停電耐力より大きく、かつ、ＰＳ＃１の停電耐力による電源保持時間が瞬停時間よりも大きい場合である。ｓ４は、片クラスタ停止状態、ｓ５は、片クラスタ閉塞状態に対応する。
【０１０２】
（ａ）ＡＣ１，ＡＣ２の状態において、ｔ１で瞬停の発生によりＡＣ１，ＡＣ２の供給が停止している。その後ｔ３で復電によりＡＣ１，ＡＣ２の供給が再開されている。
【０１０３】
（ｂ）ＤＣ１状態及びＣＬ＃１動作において、Ｐ１で示すＤＣ１耐力がｔ１からｔ４までの間よりも長く持続するため、ＣＬ＃１へのＤＣ１の供給が継続され、ＣＬ＃１は停止しない。
【０１０４】
（ｃ）ＤＣ２状態及びＣＬ＃２動作において、ｔ１からｔ２までの間のＰ２で示すＤＣ２耐力の間、ＣＬ＃２へのＤＣ２の供給が継続されている。ｔ２で耐力限界によりＤＣ２の供給が停止しており、その後ｔ３での復電によりｔ４でＤＣ２の供給が再開され、ＣＬ＃２が再起動される。ＣＬ＃２の再起動時にＣＬ＃２は自己診断を実施して再稼動する。
【０１０５】
（ｄ）停電信号Ｆ＃１において、ＤＣ１供給が継続されるので、“０”が維持されている。
【０１０６】
（ｅ）停電信号Ｆ＃２において、ｔ２のＤＣ２供給停止の契機で“０”から“１”へ変化しており、ｔ４のＤＣ２供給再開の契機で“１”から“０”へ変化している。
【０１０７】
（ｆ）ＣＬ＃１状態において、電源に関しては稼動状態である。特に、ｔ２直後の閉塞処理後からｔ５の間において、ＣＬ＃１によるＣＬ＃２に対する動作健全性チェックのアクセスが定期的に実行されている。
【０１０８】
（ｇ）ＣＬ＃２状態において、電源に関しては、ｔ２までが稼動状態、ｔ２からｔ４までが停止状態、ｔ４以降が稼動状態である。また閉塞に関しては、ｔ２の直後の閉塞処理時点まで通常状態、ｔ２直後の閉塞処理時点からｔ５の自動回復処理時点までが閉塞状態、ｔ５の自動回復処理時点以降が通常状態である。
【０１０９】
第２の制御において、停電時の制御では、停電直後において稼動継続している側のクラスタ（ＣＬ＃１）のＭＰ１０１は、僅かの時間稼動後に停止した相手クラスタ（ＣＬ＃２）の部位（ＭＰ１０１及びメモリ１０２）についての閉塞判定と同時に停電判断部１０３からの停電信号（Ｆ＃２）をもとに相手クラスタ（ＣＬ＃２）についての停電状態を判定する。停止しない側のクラスタ（ＣＬ＃１）は、従来の閉塞処理に従って相手クラスタ（ＣＬ＃２）を閉塞状態へ移行させる閉塞処理を行うと共に、停電状態、すなわち電源供給停止による稼動停止である場合は、相手クラスタ（ＣＬ＃２）の停電状態を表わす停電情報を、自クラスタ（ＣＬ＃１）のＳＭ１４上に反映しておく。その後、復電の方が先となったことにより結果的にクラスタ（ＣＬ＃１）は稼動停止しない。
【０１１０】
そして、復電時の制御では、クラスタ（ＣＬ＃１）は、前記閉塞処理後、相手クラスタ（ＣＬ＃２）の部位が停電による閉塞状態であると認識しているので、クラスタ（ＣＬ＃１）の代表ＭＰ１０１により、クラスタ（ＣＬ＃２）の閉塞状態の部位に対して、定期的な動作健全性チェックのためのアクセスを実施する。このチェックは、対象部位で通常動作が可能かどうか、閉塞状態から回復して問題ないかどうかをチェックするものである。その後、復電によりクラスタ（ＣＬ＃２）が再起動されるが、片クラスタ（ＣＬ＃２）の部位が閉塞状態となっている。クラスタ（ＣＬ＃１）の代表ＭＰ１０１は、前記チェックにより相手クラスタ（ＣＬ＃２）の閉塞状態の部位の動作健全性を確認すると、その部位を自動回復処理する。これらにより、停電パターン（１）のケースと同様に、従来要していた保守操作の介在なしでクラスタが通常稼動へ復帰される。なお、前記チェック実施中のクラスタ（ＣＬ＃１）が電源停止した場合は、前記停電パターン（１）のケースになるので、第１の制御を行えばよい。
【０１１１】
図７中で、ｔ２の直後、稼動しているＣＬ＃１は、停止したＣＬ＃２についての閉塞判定と、停電信号（Ｆ＃２）の検出によるＣＬ＃２についての停電判定とを行っている。閉塞判定では、ＣＬ＃１は、ＣＬ＃２の各部位を閉塞状態に移行する閉塞処理を行う。また、停電判定では、停電信号（Ｆ＃２）が真（“１”）であることから、「ＣＬ＃２がＤＣ２供給停止による稼動停止状態であること」を認識する。両判定から、ＣＬ＃１は、「ＣＬ＃２の閉塞状態がＤＣ２供給停止による稼動停止によること」を認識できる。ＣＬ＃１は、それらを示す閉塞情報と停電情報をＣＬ＃１のＳＭ１４上に状態情報として書き込む。また、稼動継続しているＣＬ＃１は、前記ｔ２直後の閉塞処理後、代表ＭＰ１０１により、ＣＬ＃２の閉塞状態の部位に対して、定期的な動作健全性チェックのアクセスを実施する。前記チェックのアクセスは、通常のデータ入出力処理を阻害しない程度の頻度で実行される。前記チェックにより、ｔ４以後において、復電により再起動されたＣＬ＃２の対象部位の健全性が確認されることになる。
【０１１２】
＜第２の制御のフロー＞
図８（ａ），（ｂ）は、停電パターン（２）に対応した第２の制御を行う場合の処理を示すフロー図である。前記図７に示すようにＣＬ＃２（１０Ｂ）が先に停止しＣＬ＃１（１０Ａ）が停止しなかった場合に対応している。
【０１１３】
図８（ａ）は、停電時の制御を示す。ステップＳ３１〜Ｓ３５の処理は第１の制御の場合と同様である。異なるのは、停電直後、結果的に片クラスタ（ＣＬ１０Ｂ）のみ稼動停止することである。ステップＳ３５で、停止しない側のクラスタ（ＣＬ１０Ａ）は、停止側のクラスタ（ＣＬ１０Ｂ）の部位を閉塞処理する。
【０１１４】
図８（ｂ）は、復電時の制御を示す。ステップＳ４１で、復電によりＤＣ２の供給が再開され、停止していたクラスタ（ＣＬ１０Ｂ）が再起動される。ステップＳ４２で、再起動されたクラスタ（ＣＬ１０Ｂ）における各ＭＰ１０１等の部位は、自己診断を行う。自己診断で問題がない部位は稼動開始される。稼動開始されると、前記停電時の制御によってクラスタ（ＣＬ１０Ｂ）の部位（ＭＰ１０１、メモリ１０２）は閉塞状態となっている。
【０１１５】
ステップＳ４３で、通常状態で稼動継続しているクラスタ（ＣＬ１０Ａ）におけるＭＰ１０１は、対象のクラスタ（ＣＬ１０Ｂ）の閉塞状態の部位における閉塞の原因・契機が停電状態だったことを認識しているため、ステップＳ３５の閉塞処理後、停止側のクラスタ（ＣＬ１０Ｂ）の部位に対する動作健全性チェックのアクセスを定期的に実施している。稼動継続しているクラスタ（ＣＬ１０Ａ）は、チェックの結果がＯＫならば（Ｓ４３−Ｙｅｓ）、ステップＳ４４，Ｓ４５で、その対象部位についての自動回復処理を実行する。この自動回復処理は、第１の制御の場合と同様である。
【０１１６】
ステップＳ４６で、クラスタ（ＣＬ１０Ｂ）の通常状態での起動が完了した状態となる。すなわち閉塞状態の部位が通常状態で動作再開される。
【０１１７】
以上のように、停電パターン（２）に対応した第２の制御においても、第１の制御と同様に、安価なディスクアレイ装置構成で保守操作の介在を不要でクラスタを通常稼動へ復帰でき、稼働率を向上できるという効果を得られる。
【０１１８】
（実施の形態３）
図９（ａ），（ｂ）は、本発明の実施の形態３におけるディスクアレイ装置１を説明するための図であり、実施の形態３で停復電時の制御に係わる、電源部とクラスタの第２の構成例を示すブロック図である。図９（ａ）は、特に、停電状態を判定する手段に関する第２の構成例を示しており、図９（ｂ）は、そのうちの停電判断部１０３Ｂの詳細構成を示す。ディスクアレイ装置１内で、停電状態を判定する手段を、ＡＣ接続される停電判断部１０３Ｂの回路を中心に構成している。実施の形態３の回路構成上において、前記実施の形態１，２で示した第１、第２の制御の一方または両方を同様に実行する機能を備える。
【０１１９】
＜電源部及びクラスタ構成（２）＞
図９（ａ）において、本構成は、入力ＡＣ電源（ＡＣ１，ＡＣ２）と各ＣＬ１０Ａ，１０Ｂの間に１つの停電判断部１０３Ｂを設け、停電判断部１０３Ｂから各ＣＬ１０Ａ，１０Ｂに、相手クラスタ（ＣＬ１０Ｂ，１０Ａ）側の停電状態を示す停電信号Ｆ（＃２，＃１）を入力してＭＰ１０１に出力する構成である。
【０１２０】
停電判断部１０３Ｂは、入力ＡＣ電源（ＡＣ１，ＡＣ２）から停電状態を判断する。各ＣＬ１０Ａ，１０Ｂに入力される停電信号Ｆ＃２，＃１の意味は第１の構成例の場合と同様である。停電によりＡＣ１とＡＣ２が途絶えた場合、停電信号Ｆ＃１，＃２共に真（“１”）となる。
【０１２１】
図９（ｂ）において、停電判断部１０３Ｂは、比較器１０４、ダイオードブリッジ１０５、トランス１０６、抵抗１０７、コンデンサ１０８で構成される。ＡＣ１，ＡＣ２がそれぞれトランス１０６に入力される。各トランス１０６とダイオードブリッジ１０５が接続されている。各ダイオードブリッジ１０５でＤＣに整流化された出力が比較器１０４の一方の端子に入力される。ダイオードブリッジ１０５の出力側には、抵抗１０７とコンデンサ１０８の並列回路が接続されている。比較器１０４は、２系統のＡＣ入力をＤＣに整流化した入力を基準電圧と比較して、結果を停電信号Ｆ（＃２，＃１）として各ＣＬ１０Ａ，１０ＢのＭＰ１０１に対し出力する。
【０１２２】
本構成の場合、ＡＣ入力をもとに判定するためＤＣをもとに判定する場合より停電発生を認知するまでの時間が短い。また、ＡＣ接続であるため、第１の構成例に比べると、回路構成がやや複雑になる。
【０１２３】
＜比較例＞
本発明の発明者が本発明の実施の形態との比較のために検討した他の構成例について説明する。前述したように、ＤＫＣ１０及び電源部の多重化構成において、前記ＳＷＰＳ３１〜３４の停電耐力のばらつき等により停電発生時に各クラスタの稼動停止タイミングが異なるため、閉塞処理によってクラスタの部位における閉塞状態が発生する。このような停電時の閉塞状態発生に対処するための構成例として以下の比較例（１）〜（３）が考えられる。各比較例（１）〜（３）では、各クラスタ稼動停止タイミングの時間差の発生を回避する。
【０１２４】
比較例（１）として、各クラスタに対するＤＣ電源供給を１系統の構成にする。図１０は、比較例（１）に対応したＤＫＣ及び電源部の構成例を示す。前記図３等に示す電源境界を無くして、電源部からのＤＣ出力を１系統にして各クラスタに入力する構成である。この構成の場合、停電時におけるクラスタ稼動停止タイミングが一致するため、前記閉塞状態は発生しないことになる。
【０１２５】
しかしながら、この構成の場合、１系統のＤＣ電源供給ラインにショートが発生した場合、両クラスタ共に稼動停止してしまうため、ディスクアレイ装置としての信頼性が低い。従ってＤＣ電源供給を多系統にすることが望ましい。本実施の形態の場合、ＤＣ電源供給を多系統にしているので信頼性が確保されている。
【０１２６】
比較例（２）として、電源部とクラスタの間の各ＤＣ電源に対してバッテリを取り付けた構成とする。前記回復及び復帰のために、バッテリを保有して、停電直後に一定時間を確実に稼動させて計画的にクラスタの停止処理を行うことで、前記閉塞状態の発生を回避させる。図１１は、比較例（２）に対応したＤＫＣ及び電源部の構成例を示す。前記図９（ａ）に示す第２の構成例をベースとして、ＰＳ２Ａ，ＰＳ２ＢからのＤＣ１，ＤＣ２の供給ラインに対し、バッテリＢ１，Ｂ２が接続された構成である。これにより、停電発生によりＰＳ２Ａ，ＰＳ２ＢからのＤＣ１，ＤＣ２の供給が停止した場合でも、バッテリＢ１，Ｂ２からの電源供給によりクラスタＣＬ１０Ａ，１０Ｂの稼動がしばらく継続される。停電後も両クラスタＣＬ１０Ａ．１０Ｂの動作が継続されるので、停電判断部１０３Ｂからの停電信号による停電判断をもとに、各クラスタＣＬ１０Ａ，１０Ｂの稼動停止タイミングを合わせた確実な停止処理を行わせる。これにより、復電後の再起動時における保守操作の介在を不要にする。
【０１２７】
しかしながら、この構成の場合、バッテリＢ１，Ｂ２を搭載する必要があるため、ディスクアレイ装置が高コストとなり不利である。本実施の形態の場合、バッテリＢ１，Ｂ２を搭載する必要がないため、ディスクアレイ装置１が低コストの構成となる。
【０１２８】
比較例（３）として、電源部の構成において停電検出手段を内蔵した構成とし、各ＳＷＰＳからのＤＣ出力停止タイミングを一致させる。図１２は、比較例（３）に対応したＤＫＣ及び電源部の構成例を示す。ＳＷＰＳ３１〜３４のそれぞれに、停電検出タイマ９１を加えた構成である。ＳＷＰＳ３１〜３４において、ＡＣ入力がダイオードブリッジ１１５でＤＣに整流化された出力が力率改善部１２０に入力され、力率改善部１２０の出力がコンデンサ１１８とトランス１１６を介してＤＣ出力される。そして、ダイオードブリッジ１１５と力率改善部１２０の間に停電検出タイマ９１が接続されており、ダイオードブリッジ１１５の出力が停電検出タイマ９１に入力されて停電時間がカウントされる。各ＳＷＰＳ３１〜３４内で、停電検出タイマ９１により停電時間をカウントして、決められた時間で自ＳＷＰＳ３１〜３４のＤＣ出力を停止する。停電検出タイマ９１から力率改善部１２０に停止信号を出力して停止させる。これにより、各ＣＬ１０Ａ，１０Ｂの稼動停止タイミングを合わせる。
【０１２９】
しかしながら、この構成の場合、各ＳＷＰＳ３１〜３４の停止時間精度を良くすることは難しい。また、各ＳＷＰＳ３１〜３４に専用回路を設ける必要があるため高コストになる。また例えば各ＳＷＰＳ３１〜３４の間に停止タイミングを一致させるための専用回路を設ける構成も考えられるが、同様に電源部が複雑化し高コストになる。本実施の形態の場合、ＳＷＰＳ３１〜３４の停止時間を揃える必要はなくて済む。
【０１３０】
また、前記特許文献１記載の技術によれば、停電前に機器状態を一定期間ごとに保存しておくため、その負荷が大きい。一方、本実施の形態では、停電による対象部位への電源供給停止と閉塞状態の発生の瞬間に応じて状態情報を保存するので負荷は少ない。
【０１３１】
以上説明したように、各実施の形態によれば、停復電時に、保守員の介在を必要とせずに短時間での自動回復処理実現できる。停電時に発生した部位の閉塞状態を復電時に自動回復することで、ディスクアレイ装置稼働率が向上する。また、ＳＷＰＳ３１〜３４の停電耐力のばらつきが許容されるので安価な電源部が採用でき、低コストな構成で自動回復を実現できる。停電時電源保持用のバッテリバックアップ機能の具備によるディスクアレイ装置の高コスト構造を不要にできる。また、閉塞発生時にのみ判定・制御が行われるため、通常時にはＤＫＣ１０における状態確認や判定などのための負荷が少なく稼動できる。
【０１３２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【０１３３】
本発明は、多重化された電源部とこれら電源部から電源供給される多重化された装置部分とを有する、ディスクアレイ装置などの装置や情報処理システムに利用可能である。
【図面の簡単な説明】
【０１３４】
【図１】本発明の一実施の形態におけるディスクアレイ装置のハードウェア外観構成を示す図である。
【図２】本発明の一実施の形態におけるディスクアレイ装置の機能ブロック構成を示す図である。
【図３】（ａ）は、本発明の一実施の形態のディスクアレイ装置における停復電時の制御に係わる、電源部とＤＫＣのクラスタについての第１の構成例を示すブロック図であり、（ｂ）は、そのうちの停電判断部の詳細構成を示す図である。
【図４】本発明の実施の形態１のディスクアレイ装置における、停電パターン（１）及び停電パターン（１）に対応した第１の制御の例を示すタイムシーケンス図である。
【図５】（ａ）は、本発明の各実施の形態のディスクアレイ装置における、クラスタの各部位の閉塞／回復の管理のために用いる情報の形式の例を示し、（ｂ）は、停電状態の管理のために用いる情報の形式の例を示す説明図である。
【図６】（ａ），（ｂ）は、本発明の実施の形態１のディスクアレイ装置における、停電パターン（１）に対応した第１の制御を行う場合の処理を示すフロー図である。
【図７】本発明の実施の形態２のディスクアレイ装置における、停電パターン（２）及び停電パターン（２）に対応した第２の制御の例を示すタイムシーケンス図である。
【図８】（ａ），（ｂ）は、本発明の実施の形態２のディスクアレイ装置における、停電パターン（２）に対応した第２の制御を行う場合の処理を示すフロー図である。
【図９】（ａ）は、本発明の実施の形態３のディスクアレイ装置における、停復電時の制御に係わる、電源部とＤＫＣのクラスタについての第２の構成例を示すブロック図であり、（ｂ）は、そのうちの停電判断部の詳細構成を示す図である。
【図１０】本発明の発明者が実施の形態との比較例（１）として検討した、停電時の閉塞状態発生に対処するための構成として、１系統のＤＣ電源を有するＤＫＣ及び電源部の構成を示す説明図である。
【図１１】本発明の発明者が実施の形態との比較例（２）として検討した、停電時の閉塞状態発生に対処するための構成として、バッテリを搭載したＤＫＣ及び電源部の構成を示す説明図である。
【図１２】本発明の発明者が実施の形態との比較例（３）として検討した、停電時の閉塞状態発生に対処するための構成として、電源部に専用回路を搭載したＤＫＣ及び電源部の構成を示す説明図である。
【符号の説明】
【０１３５】
１…ディスクアレイ装置、２，２Ａ，２Ｂ…ＡＣ−ＤＣ電源部、２１，Ｂ１，Ｂ２…バッテリ、２２…ＡＣボックス、２３…ＡＣ−ＤＣ電源、４…論理ボックス、５…ファン、６…ＳＶＰ、７…パネル、８…ＨＤＤボックス、９…ファン、１０…ＤＫＣ、１０Ａ，１０Ｂ…クラスタ、１１…ＣＨＡ、１２…ＤＫＡ、１３…ＣＭ、１４…ＳＭ、３０…ＨＤＤ、３１〜３６…ＳＷＰＳ、９１…停電検出タイマ、１００…制御パッケージ、１０１…ＭＰ、１０２…メモリ、１０３，１０３Ｂ…停電判断部、１０４…比較器、１０５，１１５…ダイオードブリッジ、１０６，１１６…トランス、１０７…抵抗、１０８，１１８…コンデンサ、１２０…力率改善部、３００…ＤＫＵ、ＡＣ１，ＡＣ２…入力ＡＣ電源、ＤＣ１，ＤＣ２…ＤＣ電源。
【図１】
2006235673.tif 000003
【図２】
2006235673.tif 000004
【図３】
2006235673.tif 000005
【図４】
2006235673.tif 000006
【図５】
2006235673.tif 000007
【図６】
2006235673.tif 000008
【図７】
2006235673.tif 000009
【図８】
2006235673.tif 000010
【図９】
2006235673.tif 000011
【図１０】
2006235673.tif 000012
【図１１】
2006235673.tif 000013
【図１２】
2006235673.tif 000014