(57)【要約】【課題】本発明によるストレージ装置は、データ処理基板に電源異常が発生した場合、データ処理基板の主要機能を停止させてから、電源異常に関する情報をメモリに保存させることができる。【解決手段】ストレージ装置１に取り付けられるデータ処理基板２の電源コントローラ２Ａは、電圧検出回路２Ｄからの検出信号に基づいて、基板２上に搭載されているDC/DC電源２Ｂの作動状態を監視している。電源異常が検出された場合、電源コントローラ２Ａは、直ちに全てのDC/DC電源２Ｂの作動を停止させる。DC/DC電源２Ｂの停止によって、データ処理基板２の主要な機能は停止する。そして、電源コントローラ２Ａは、電源異常に関する情報をメモリ２Ｆに記憶させ、補助電源２Ｅを停止させる。メモリ２Ｆに保存された情報は、他のデータ処理基板等である中継装置４を介して、管理装置５に転送することができる。【選択図】図１
2007286937.tif 000002
【特許請求の範囲】
【請求項１】
上位装置に記憶領域を提供するストレージ装置であって、
少なくとも一つ以上のデータ処理基板を備えており、
前記データ処理基板は、
負荷に電力を供給する少なくとも一つ以上の電源部と、
前記電源部の作動状態を検出して信号を出力する検出部と、
前記検出部からの信号に基づいて前記電源部の作動を制御する少なくとも一つ以上の電源制御部と、
監視結果を記憶するための記憶部と、
前記電源部の作動が停止した場合でも、前記記憶部への情報書込みを可能とするための補助電源部と、
を備えており、
前記電源制御部は、前記電源部の作動状態を監視して、この監視結果を前記記憶部に記憶させ、かつ、前記電源部に障害が検出された場合は当該電源部の作動を停止させるようになっているストレージ装置。
【請求項２】
前記記憶部に記憶された前記監視結果を前記データ処理基板の外部に出力するためのインターフェース部を備えた請求項１に記載のストレージ装置。
【請求項３】
前記データ処理基板は、それぞれ異なる電源部の作動を制御するための複数の電源制御部を備えており、
前記各電源制御部は、それぞれの制御下にある前記電源部の作動状態を所定の場合に監視し、この監視結果を前記記憶部にそれぞれ記憶させる請求項１に記載のストレージ装置。
【請求項４】
前記データ処理基板は複数設けられており、
前記各データ処理基板のうち一方のデータ処理基板の前記電源制御部によって電源障害が検出された場合には、前記一方のデータ処理基板から前記他方のデータ処理基板に前記電源障害の発生を通知する請求項１に記載のストレージ装置。
【請求項５】
前記他方のデータ処理基板は、前記一方のデータ処理基板から前記通知を受領した場合、前記上位装置に前記電源障害の発生を通知する請求項４に記載のストレージ装置。
【請求項６】
前記データ処理基板は複数設けられており、
前記各データ処理基板のうち一方のデータ処理基板の前記記憶部に記憶されている前記状態検出情報に、前記他方のデータ処理基板からアクセス可能である請求項１に記載のストレージ装置。
【請求項７】
前記電源制御部は、前記検出部からの前記信号に基づいて前記電源部に障害が発生したと判定した場合には、前記障害の発生した電源部に関する前記監視結果を前記記憶部に記憶させる請求項１に記載のストレージ装置。
【請求項８】
前記電源制御部は、前記電源部の作動を停止させた後で、前記監視結果を前記記憶部に記憶させる請求項７に記載のストレージ装置。
【請求項９】
前記電源制御部は、定期的に前記電源部の作動状態を監視し、この監視結果を前記記憶部に記憶させる請求項１に記載のストレージ装置。
【請求項１０】
前記電源制御部は、予め設定された所定の条件が検出された場合に、前記電源部の作動状態を監視し、この監視結果及び前記検出された所定の条件とを対応付けて前記記憶部に記憶させる請求項１に記載のストレージ装置。
【請求項１１】
前記記憶部に記憶されている前記監視結果のうち所定の情報のみが選択して読み出される請求項１に記載のストレージ装置。
【請求項１２】
前記電源制御部は、前記電源部の障害発生を検出した場合、この障害発生が検出されたときの監視結果を前記記憶部に記憶させた後、前記補助電源の作動を停止させる請求項１に記載のストレージ装置。
【請求項１３】
上位装置と記憶デバイスとの間のデータ授受を制御するストレージ装置と、このストレージ装置に接続された管理装置とを有するストレージシステムであって、
（１）前記ストレージ装置は、前記上位装置及び／または前記記憶デバイスとの間のデータ授受をそれぞれ処理するための第１データ処理基板及び第２データ処理基板を備えており、
（２）前記第１データ処理基板及び前記第２データ処理基板は、互いに通信可能に接続されており、かつ、
第１基板と、
前記第１基板に一体的に設けられる複数の第２基板とを含んでそれぞれ構成され、
（３）前記第１基板は、
データ転送を行うためのデータ転送回路と、
前記データ転送回路に電源を供給するための複数の第１電源部と、
前記各第１電源部の出力電圧をそれぞれ検出して信号を出力する第１電圧検出部と、
前記第１電圧検出部からの信号に基づいて前記各第１電源部の作動をそれぞれ制御する第１電源制御部と、
記憶部と、
前記記憶部に記憶された情報を出力するためのインターフェース部と、
を備えて構成され、
（４）前記各第２基板は、
マイクロプロセッサ回路と、
前記マイクロプロセッサ回路に電源を供給するための複数の第２電源部と、
前記各第２電源部の出力電圧をそれぞれ検出して信号を出力する第２電圧検出部と、
前記第２電圧検出部からの信号に基づいて前記各第２電源部の作動をそれぞれ制御する第２電源制御部と、
を備えて構成され、
（５）前記第１電源制御部は、所定の場合に、前記各第１電源部の作動状態の監視結果を前記記憶部に記憶させ、
前記第２電源制御部は、前記所定の場合に、前記各第２電源部の作動状態の監視結果を前記記憶部に記憶させ、
（６）前記第１データ処理基板の前記マイクロプロセッサ回路及び前記第２データ処理基板の前記マイクロプロセッサ回路は、前記第１データ処理基板の前記記憶部及び前記第２データ処理基板の前記記憶部にそれぞれアクセス可能であり、前記記憶部に記憶された前記監視結果を前記管理装置に出力可能となっており、
（７）前記第１データ処理基板の前記マイクロプロセッサ回路及び前記第２データ処理基板の前記マイクロプロセッサ回路は、前記記憶部に記憶された前記監視結果のうち一部の情報のみを取得可能となっている、ストレージ装置。
【請求項１４】
複数のデータ処理基板を有するストレージ装置の電源障害を管理するための方法であって、
前記各データ処理基板は、負荷に電力を供給する複数の電源部をそれぞれ備え、
前記各電源部の作動状態をそれぞれ検出するステップと、
前記検出された作動状態に基づいて前記各電源部に障害が発生しているか否かを判定するステップと、
前記各電源部のいずれかに前記障害が発生していると判定された場合には、前記各電源部の作動を全て停止させるステップと、
前記障害の検出された電源部に関する情報を記憶部に記憶させるステップと、
前記記憶部に記憶された前記情報を読み出すステップと、
前記読み出された情報を解析するステップと、
をそれぞれ実行するストレージ装置の電源障害管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置及びストレージ装置の電源障害管理方法に関する。
【背景技術】
【０００２】
ストレージ装置は、多数のハードディスクドライブをアレイ状に接続した記憶部を備えており、サーバ等のホストコンピュータ（以下「ホスト」）に、論理的な記憶領域（論理ボリューム）を提供する。
【０００３】
信頼性や高可用性を高めるために、ストレージ装置では、RAID（Redundant Array of Independent Disks）に基づく冗長化された記憶領域をホストに提供する。このようなストレージ装置は、少なくとも一つ以上の制御基板を備えている。この制御基板は、ホストとの間のデータ授受及びハードディスクドライブとの間のデータ授受を制御する。
【０００４】
制御基板に何らかの障害が発生した場合、この障害の生じた制御基板のみを閉塞処理させることにより、ストレージ装置の動作を停止させずに、障害の生じた制御基板を交換できるようにした技術は知られている（特許文献１）。
【０００５】
制御基板に障害が発生した場合、制御基板の有する複数の機能のそれぞれについて、個別に電源供給を制御できるようにした技術も知られている（特許文献２）。
【０００６】
電子計算機システム内で生じた障害に関する情報を収集し、この障害情報を不揮発メモリに格納させることにより、システムの保守性を向上させる技術も知られている（特許文献３）。
【特許文献１】特開２００３−３６１２７号公報
【特許文献２】特開２００６−３１６３０号公報
【特許文献３】特開平５−３２４３６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
制御基板は電源電圧を監視しており、電源電圧の異常を検出した場合、直ちに制御基板内の全ての電源供給を停止させる。電源電圧の異常によって電子回路が誤動作すると、この誤動作によって不正なデータの読み書きが行われる可能性等があるためである。例えば、複数種類の電源電圧を用いるLSI（Large Scale Integration）等では、そのうちの一種類の電源電圧が停止した状態で長時間動作を続けると、素子破壊を招く可能性もある。そこで、制御基板は、安全性及び信頼性を維持するために、いずれか一つの電源電圧に異常が生じた場合でも、直ちに全ての電源電圧を停止させる。
【０００８】
その後、電源異常の検出された制御基板は、保守員によってストレージ装置から取り外されて、ベンダの修理センタ等に送付される。しかし、制御基板のどの電源電圧に異常が生じたかを示す情報は存在しないため、修理センタの作業者は、電源異常の生じた制御基板を試験用のストレージ装置に装着して、電源異常の再現を試みる。作業者は、制御基板上の多くの箇所の電圧波形を観測しながら、原因を究明する。従って、故障した部位の特定や原因の究明のために長い時間を必要とし、検査作業や解析作業の作業性が低い。
【０００９】
本発明は、上記の問題点に鑑みてなされたもので、その目的は、電源障害に関する情報をデータ処理基板に保持させることにより、障害解析作業等の作業性を向上させることができるようにしたストレージ装置及びストレージ装置の電源障害管理方法を提供することにある。本発明の他の目的は、障害の検出された電源部を直ちに停止させた後で、電源障害に関する情報を補助電源の電源電圧を用いて記憶部に書き込ませることにより、信頼性の確保及び保守性の向上を実現できるようにしたストレージ装置及びストレージ装置の電源障害管理方法を提供することにある。本発明のさらなる目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【００１０】
上記課題を解決すべく、本発明の一つの観点に従うストレージ装置は、上位装置に記憶領域を提供するストレージ装置であって、少なくとも一つ以上のデータ処理基板を備えており、データ処理基板は、負荷に電力を供給する少なくとも一つ以上の電源部と、電源部の作動状態を検出して信号を出力する検出部と、検出部からの信号に基づいて電源部の作動を制御する少なくとも一つ以上の電源制御部と、監視結果を記憶するための記憶部と、電源部の作動が停止した場合でも、記憶部への情報書込みを可能とするための補助電源部と、を備えており、電源制御部は、電源部の作動状態を監視して、この監視結果を記憶部に記憶させ、かつ、電源部に障害が検出された場合は当該電源部の作動を停止させるようになっている。
【００１１】
本発明の実施形態では、記憶部に記憶された監視結果をデータ処理基板の外部に出力するためのインターフェース部を備える。
【００１２】
本発明の実施形態では、データ処理基板は、それぞれ異なる電源部の作動を制御するための複数の電源制御部を備えており、各電源制御部は、それぞれの制御下にある電源部の作動状態を所定の場合に監視し、この監視結果を記憶部にそれぞれ記憶させる。
【００１３】
本発明の実施形態では、データ処理基板は複数設けられており、各データ処理基板のうち一方のデータ処理基板の電源制御部によって電源障害が検出された場合には、一方のデータ処理基板から他方のデータ処理基板に電源障害の発生を通知する。
【００１４】
本発明の実施形態では、他方のデータ処理基板は、一方のデータ処理基板から通知を受領した場合、上位装置に電源障害の発生を通知する。
【００１５】
本発明の実施形態では、データ処理基板は複数設けられており、各データ処理基板のうち一方のデータ処理基板の記憶部に記憶されている状態検出情報に、他方のデータ処理基板からアクセス可能である。
【００１６】
本発明の実施形態では、電源制御部は、検出部からの信号に基づいて電源部に障害が発生したと判定した場合には、障害の発生した電源部に関する監視結果を記憶部に記憶させる。
【００１７】
本発明の実施形態では、電源制御部は、電源部の作動を停止させた後で、監視結果を記憶部に記憶させる。
【００１８】
本発明の実施形態では、電源制御部は、定期的に電源部の作動状態を監視し、この監視結果を記憶部に記憶させる。
【００１９】
本発明の実施形態では、電源制御部は、予め設定された所定の条件が検出された場合に、電源部の作動状態を監視し、この監視結果及び検出された所定の条件とを対応付けて記憶部に記憶させる。所定の条件としては、例えば、電源電圧の異常が検出された場合、前回の監視時から所定の時間が経過した場合、予め設定された所定の状態変更（動作）が検出された場合等を挙げることができる。所定の状態変更としては、例えば、新規インストール、リプレース、増設、減設、稼働停止等を挙げることができる。
【００２０】
本発明の実施形態では、記憶部に記憶されている監視結果のうち所定の情報のみが選択して読み出される。
【００２１】
本発明の実施形態では、電源制御部は、電源部の障害発生を検出した場合、この障害発生が検出されたときの監視結果を記憶部に記憶させた後、補助電源の作動を停止させるようになっている。
【００２２】
本発明の他の観点に従うストレージシステムは、上位装置と記憶デバイスとの間のデータ授受を制御するストレージ装置と、このストレージ装置に接続された管理装置とを有するストレージシステムであって、（１）ストレージ装置は、上位装置及び／または記憶デバイスとの間のデータ授受をそれぞれ処理するための第１データ処理基板及び第２データ処理基板を備えており、（２）第１データ処理基板及び第２データ処理基板は、互いに通信可能に接続されており、かつ、第１基板と、第１基板に一体的に設けられる複数の第２基板とを含んでそれぞれ構成される。（３）第１基板は、データ転送を行うためのデータ転送回路と、データ転送回路に電源を供給するための複数の第１電源部と、各第１電源部の出力電圧をそれぞれ検出して信号を出力する第１電圧検出部と、第１電圧検出部からの信号に基づいて各第１電源部の作動をそれぞれ制御する第１電源制御部と、記憶部と、記憶部に記憶された情報を出力するためのインターフェース部と、を備えて構成される。（４）各第２基板は、マイクロプロセッサ回路と、マイクロプロセッサ回路に電源を供給するための複数の第２電源部と、各第２電源部の出力電圧をそれぞれ検出して信号を出力する第２電圧検出部と、第２電圧検出部からの信号に基づいて各第２電源部の作動をそれぞれ制御する第２電源制御部と、を備えて構成される。（５）第１電源制御部は、所定の場合に、各第１電源部の作動状態の監視結果を記憶部に記憶させ、第２電源制御部は、所定の場合に、各第２電源部の作動状態の監視結果を記憶部に記憶させ、（６）第１データ処理基板のマイクロプロセッサ回路及び第２データ処理基板のマイクロプロセッサ回路は、第１データ処理基板の記憶部及び第２データ処理基板の記憶部にそれぞれアクセス可能であり、記憶部に記憶された監視結果を管理装置に出力可能となっており、（７）第１データ処理基板のマイクロプロセッサ回路及び第２データ処理基板のマイクロプロセッサ回路は、記憶部に記憶された監視結果のうち一部の情報のみを取得可能となっている。
【００２３】
本発明のさらに別の観点に従うストレージ装置の電源障害管理方法は、複数のデータ処理基板を有するストレージ装置の電源障害を管理するための方法であって、各データ処理基板は、負荷に電力を供給する複数の電源部をそれぞれ備え、各電源部の作動状態をそれぞれ検出するステップと、検出された作動状態に基づいて各電源部に障害が発生しているか否かを判定するステップと、各電源部のいずれかに障害が発生していると判定された場合には、各電源部の作動を全て停止させるステップと、障害の検出された電源部に関する情報を記憶部に記憶させるステップと、記憶部に記憶された情報を読み出すステップと、読み出された情報を解析するステップと、をそれぞれ実行する。
【発明を実施するための最良の形態】
【００２４】
以下、図面に基づき、本発明の実施の形態を説明する。本実施形態では、以下に述べるように、制御パッケージ内で生じた電源障害に関する情報を、その制御パッケージ内に保持させる。そして、その制御パッケージに保持された電源障害に関する情報にアクセスするための手段を提供する。
【００２５】
図１は、本実施形態によるストレージ装置１の全体概要を示す構成説明図である。ストレージ装置１は、例えば、複数の制御パッケージ２と、制御パッケージ２に電源を供給するためのメイン電源３とを備えている。制御パッケージ２は、「データ処理基板」に該当する。
【００２６】
制御パッケージ２は、例えば、「電源制御部」としての電源コントローラ２Ａと、「電源部」としてのDC/DC電源２Ｂと、「負荷」としての複数の回路２Ｃと、「検出部」としての電圧検出回路２Ｄと、「補助電源部」としての補助電源２Ｅと、「記憶部」としてのメモリ２Ｆと、「インターフェース部」としてのインターフェース（図中「I/F」）２Ｇとを備えて構成される。
【００２７】
電源コントローラ２Ａは、各DC/DC電源２Ｂの作動を制御する。電源コントローラ２Ａは、例えば、予め設定されている所定の立ち上げシーケンスに従って、各DC/DC電源２Ｂを所定の順番で作動させる。また、電源コントローラ２Ａは、いずれかのDC/DC電源２Ｂから出力される電源電圧に異常が検出された場合、直ちに全てのDC/DC電源２Ｂの作動を停止させる。
【００２８】
さらに、電源コントローラ２Ａは、全てのDC/DC電源２Ｂの作動を停止させた後で、電源電圧の異常に関する情報をメモリ２Ｆに書込む。そして、電源コントローラ２Ａは、電源電圧の異常に関する情報（電源障害情報）を書き込んだ後、補助電源２Ｅの作動を停止させる。
【００２９】
DC/DC電源２Ｂは、電源コントローラ２Ａによって制御されるもので、メイン電源３から供給された交流または直流の電源電圧を、所定の直流電源に変換して出力させるものである。各DC/DC電源２Ｂは、例えば、３．３ボルトや１．５ボルト等のように、それぞれ異なる値の電源電圧を出力する。各DC/DC電源２Ｂから出力される電源電圧は、所定の回路２Ｃにそれぞれ供給される。
【００３０】
回路２Ｃは、例えば、データ転送を行うための専用LSIや、マイクロプロセッサ、その他の電子回路等として構成される。例えば、ある回路２Ｃは一種類の電源電圧のみで動作し、他の回路２Ｃは、複数種類の電源電圧を用いて動作する。
【００３１】
電圧検出回路２Ｄは、各DC/DC電源２Ｂから出力される電源電圧をそれぞれ検出し、検出された電源電圧を電源コントローラ２Ａに出力する。電源コントローラ２Ａは、電圧検出回路２Ｄからの検出信号に基づいて、DC/DC電源２Ｂから出力される電源電圧に異常が生じたか否かを判定する。
【００３２】
補助電源２Ｅは、各DC/DC電源２Ｂと独立して設けられており、メイン電源３から供給される電源電圧を所定の直流電圧に変換して、電源コントローラ２Ａ及びメモリ２Ｆの情報書込み部にそれぞれ供給する。電源コントローラ２Ａは、各DC/DC電源２Ｂの作動が停止した場合でも、補助電源２Ｅから供給される電源電圧を用いて、電源障害に関する情報をメモリ２Ｆに書き込むことができる。
【００３３】
メモリ２Ｆは、電源障害に関する情報を記憶するための記憶デバイスであって、例えば、フラッシュメモリやFeRAM （Ferroelectric Random Access Memory）等の不揮発メモリから構成される。バックアップ電源が不要で、データの追加記録が可能な記憶デバイスであれば、メモリ２Ｆとして好適に用いることができる。不揮発メモリの場合は、バックアップ電源が不要なため、構成を簡素化することができる。但し、これに限らず、例えば、SRAM（Static Random Access Memory）等のようなバックアップ電源を必要とする他の記憶デバイスを用いる構成でもよい。
【００３４】
インターフェース２Ｇは、メモリ２Ｆに記憶されている電源障害情報を外部に出力するためのものである。このインターフェース２Ｇには、中継装置４を介して、管理装置５が接続されている。中継装置４としては、例えば、別のデータ処理基板が用いられる。即ち、ストレージ装置１の備える複数のデータ処理基板２は、互いに相手方のデータ処理基板２から電源障害に関する情報を読み出すことができる。異なるデータ処理基板（中継装置４）によって読み出された電源障害に関する情報は、管理装置５に伝達される。管理装置５は、電源障害に関する情報を画面に表示等することにより、保守員やユーザに、電源障害の発生等を通知する。
【００３５】
上述のように、電源障害が発生した場合、そのデータ処理基板２では、全てのDC/DC電源２Ｂの作動が直ちに停止され、その後に、電源障害に関する情報がメモリ２Ｆに書き込まれる。ストレージ装置１は、電源障害の生じたデータ処理基板２について閉塞処理を行い、ストレージ装置１から取り外せる状態にする。なお、電源障害の生じたデータ処理基板２で担当していたデータアクセス処理等は、他の正常なデータ処理基板２によって肩代わりされる。
【００３６】
ストレージ装置１から取り外されたデータ処理基板２は、ストレージ装置１のベンダによって運営される修理センタ等に送られる。修理センタでは、電源障害の生じたデータ処理基板２のメモリ２Ｆから電源障害に関する情報を読出して、どのDC/DC電源２Ｂに異常が生じたのかを確認する。また、修理センタでは、電源障害の生じたデータ処理基板２を別のストレージ装置１に取り付けて、電源障害の再現を試みる。このような障害解析作業によって得られたデータや知見は、例えば、障害情報データベースに蓄積され、ストレージ装置１の改善等に用いられる。
【００３７】
本実施形態は、上述のように構成されるため、以下の効果を奏する。本実施形態では、データ処理基板２上に電源障害に関する情報を保持させるため、障害の解析作業や保守作業の作業性を向上させることができる。
【００３８】
また、本実施形態では、全てのDC/DC電源２Ｂの作動を停止させてから、電源障害に関する情報をメモリ２Ｆに書き込むため、回路２Ｃの誤動作等を防止して信頼性を維持しつつ、保守作業等の効率を改善できる。
【００３９】
さらに、本実施形態では、メモリ２Ｆから電源障害に関する情報を読み出すためのインターフェース２Ｇを設け、他のデータ処理基板２（中継装置４）を介して、電源障害に関する情報を外部に取り出すことができる。これにより、電源障害の生じたストレージ装置１においても、障害の生じたデータ処理基板２から電源障害に関する情報をその場で直ちに取得することができ、かつ、電源障害の生じたストレージ装置１と物理的に離れた修理センタ等においても、その障害の生じたデータ処理基板２から電源障害に関する情報を読み出すことができ、保守作業における使い勝手が向上する。以下、本実施形態を詳細に説明する。
【実施例１】
【００４０】
図２は、ストレージ装置を含むストレージシステムの全体構成を模式的に示す説明図である。このストレージシステムは、例えば、ストレージ装置１０と、管理端末２０と、ホスト３０と、管理サーバ４０とを備えることができる。
【００４１】
ストレージ装置１０の詳細はさらに後述する。管理端末２０は、例えば、パーソナルコンピュータや携帯情報端末等のようなコンピュータ装置として構成されており、例えば、LAN等の通信ネットワークCN２（図３参照）を介して、ストレージ装置１０の制御パッケージ１４２に接続されている。また、管理端末２０は、LANやインターネット等の通信ネットワークCN３を介して、管理サーバ４０に接続することもできる。管理サーバ４０は、複数の管理端末２０に接続可能であり、例えば、各管理端末２０により収集された電源障害情報を統計解析等することもできる。
【００４２】
管理端末２０は、管理用のユーザインターフェース（図中「UI」と略記）２１を備えている（図３参照）。ユーザは、管理用ユーザインターフェース２１を用いて、ストレージ装置１０の構成を変更等したり、ストレージ装置１０から各種の情報（性能情報、環境情報等）を取得することができる。また、管理用ユーザインターフェース２１には、後述のように、制御パッケージ１４２内で生じた電源障害に関する情報が表示される。なお、ユーザインターフェース２１は、文字や画像等による画面出力に限らず、合成音声メッセージ等によって各種の通知を行うこともできる。
【００４３】
ホスト３０は、例えば、サーバコンピュータ、メインフレームマシン等のようなコンピュータ装置として構成される。ホスト３０は、例えば、LAN（Local Area Network）やSAN（Storage Area Network）等の通信ネットワークCN１を介して、ストレージ装置１０の制御パッケージ１４２に接続される。ホスト３０は、ストレージ装置１０内に設けられたボリューム１３３（図３参照）に、データを読み書きする。
【００４４】
なお、管理端末２０がストレージ装置１０の電源障害の状態を管理する場合を例に挙げるが、これに限らず、ホスト３０にストレージ管理プログラムを設け、ホスト３０がストレージ装置１０の電源障害を管理する構成でもよい。
【００４５】
ストレージ装置１０の構成を説明する。ストレージ装置１０は、例えば、基本筐体１１と、増設筐体１２とを備えて構成されており、基本筐体１１と増設筐体１２とは、SAN等の通信経路１７を介して接続されている。基本筐体１１は、ストレージ装置１０の動作を制御等するための基本的な機能を集約した筐体であり、増設筐体１２は、ユーザの希望等によって任意に追加されるオプション筐体である。
【００４６】
基本筐体１１には、例えば、ハードディスクボックス１３と、コントローラ１４と、AC/DC電源（以下「メイン電源」）１５と、バッテリ部１６とが設けられる。増設筐体１２には、例えば、ハードディスクボックス１３と、メイン電源１５と、バッテリ部１６とが設けられている。
【００４７】
コントローラ１４は、複数の制御パッケージ１４１，１４２等から構成される。一つの制御パッケージ１４１はホスト３０とのデータ授受を制御するためのチャネルアダプタパッケージであり、他の一つの制御パッケージ１４２は、ディスクドライブ１３１とのデータ授受を制御するためのディスクアダプタパッケージである。なお、これら以外に、メモリパッケージ等もコントローラ１４に設けられる。
【００４８】
図３を用いて、ストレージ装置１０の構成を説明する。ストレージ装置１０のコントローラ１４は、例えば、複数のチャネルアダプタ１４１と、複数のディスクアダプタ１４２と、キャッシュメモリ１４３と、共有メモリ１４４と、接続制御部１４５と、サービスプロセッサ１４６とを備えて構成することができる。なお、以下の説明では、チャネルアダプタ１４１をCHA１４１と、ディスクアダプタ１４２をDKA１４２と、サービスプロセッサ１４６をSVP１４６と、それぞれ略記する。
【００４９】
CHA１４１は、ホスト３０との間のデータ転送を制御するもので、複数の通信ポート２８１を備えている。ストレージ装置１０には、複数のCHA１４１を設けることができる。CHA１４１は、例えば、オープン系サーバ用CHA、メインフレーム系用CHA等のように、ホスト３０の種類に応じて用意される。各CHA１４１は、それぞれに接続されたホスト３０から、データの読み書きを要求するコマンドを受信し、ホスト３０から受信したコマンドに従って動作する。
【００５０】
DKA１４２は、ストレージ装置１０内に複数個設けることができる。各DKA１４２は、各ディスクドライブ１３１との間のデータ通信を制御する。各DKA１４２と各ディスクドライブ１３１とは、ファイバチャネルプロトコルに従ってブロック単位のデータ転送を行う。各DKA１４２は、ディスクドライブ１３１の状態を随時監視しており、この監視結果は、ネットワークCN５を介して、SVP１４６に送信される。
【００５１】
なお、各CHA１４１及び各DKA１４２をそれぞれ別々の制御回路基板として構成することもできるし、一つの制御回路基板にCHA機能及びDKA機能をそれぞれ設けることもできる。
【００５２】
キャッシュメモリ１４３は、例えば、ホスト３０から読み出されたデータやホスト３０から書き込まれたデータ等を記憶する。共有メモリ（あるいは制御メモリ）１４４は、ストレージ装置１０の作動を制御するための各種制御情報や管理情報等を記憶する。
【００５３】
なお、キャッシュメモリ１４３と共有メモリ１４４とを別々のメモリ回路基板として構成してもよいし、一つのメモリ回路基板内にキャッシュメモリ１４３及び共有メモリ１４４を実装してもよい。また、キャッシュメモリの一部を制御情報を格納するための制御領域として使用し、他の部分をデータを記憶するためのキャッシュ領域として使用する構成でもよい。
【００５４】
接続制御部１４５は、各CHA１４１と、各DKA１４２と、キャッシュメモリ１４３と、共有メモリ１４４とをそれぞれ接続するものである。これにより、全てのCHA１４１，DKA１４２は、キャッシュメモリ１４３及び共有メモリ１４４にそれぞれアクセス可能である。接続制御部１４５は、例えば、クロスバスイッチ等として構成される。
【００５５】
SVP１４６は、内部ネットワークCN５を介して、各CHA１４１にそれぞれ接続されている。SVP１４６は、例えば、共有メモリ１４４やCHA１４１を介して、各DKA１４２の状態をそれぞれ取得することもできる。SVP１４６は、ストレージ装置１０内の各種状態に関する情報をそれぞれ取得し、これらの情報を管理端末２０に提供する。また、SVP１４６は、管理端末２０からの指示に基づいて、ストレージ装置１０の構成変更を行うこともできる。
【００５６】
次に、ストレージ装置１０の記憶構造について説明する。ストレージ装置１０は、複数のディスクドライブ１３１を備えることができる。ディスクドライブ１３１としては、例えば、ハードディスクドライブ、半導体メモリドライブ、光ディスクドライブ、光磁気ディスクドライブ、磁気テープドライブ等を挙げることができる。また、ディスクドライブ１３１をハードディスクドライブとして構成する場合、例えば、SATA（Serial AT Attachment）ディスクや、FC（Fibre Channel）ディスク等を挙げることができる。異なる種類のハードディスクドライブを混在させることもできる。
【００５７】
ディスクドライブ１３１の記憶領域を用いて、一つまたは複数の論理ボリューム（図中「LU」と略記）１３３を生成することができる。この論理ボリューム１３３は、論理的記憶デバイスとも呼ばれる。例えば、一つのディスクドライブ１３１の記憶領域に、一つまたは複数の論理ボリューム１３３を作成することができる。または、複数のディスクドライブ１３１の記憶領域をグループ化して、一つまたは複数の論理ボリューム１３３を設けることもできる。このようなグループ１３２は、パリティグループまたはRAIDグループと呼ばれる。管理端末２０は、ホスト３０と論理ボリューム１３３との間のアクセスパスを設定し、ホスト３０に論理ボリューム１３３を提供する。ホスト３０は、この論理ボリューム１３３にアクセスすることにより、データの読み書きを行う。
【００５８】
次に、コントローラ１４によるデータ入出力処理を先に説明する。CHA１４１は、ホスト３０から受信したリードコマンドを共有メモリ１４４に記憶させる。DKA１４２は、共有メモリ１４４を随時参照しており、未処理のリードコマンドを発見すると、ディスクドライブ１３１からデータを読み出して、キャッシュメモリ１４３に記憶させる。CHA１４１は、キャッシュメモリ１４３にコピーされたデータを読み出し、ホスト３０に送信する。
【００５９】
CHA１４１は、ホスト３０からライトコマンドを受信すると、ライトコマンドを共有メモリ１４４に記憶させる。CHA１４１は、受信したライトデータをキャッシュメモリ１４３に記憶させる。CHA１４１は、キャッシュメモリ１４３にライトデータを記憶させた後、ホスト３０に書込み完了を報告する。DKA１４２は、共有メモリ１４４に記憶されたライトコマンドに従って、キャッシュメモリ１４３に記憶されたライトデータを読出す。DKA１４２は、書込み先として指定された論理ボリューム１３３を構成するディスクドライブ１３１に、ライトデータを記憶させる。なお、ライトデータをディスクドライブ１３１に書き込んだ後で、ホスト３０に書込み完了を報告する構成でもよい。
【００６０】
以下、「データ処理基板」に対応する制御パッケージの例として、CHA１４１のパッケージを例に挙げて説明する。なお、DKA１４２等の他のパッケージについても、本発明の電源障害管理方法は有効に機能する。
【００６１】
図４は、CHA１４１の概略構成を示す回路図である。CHA１４１は、例えば、電源コントローラ２１０と、DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃと、各種の電子回路２３０Ａ，２３０Ｂ，２３０Ｃと、電圧検出回路２４０と、補助電源２５０と、メモリ２６０と、インターフェース２７０とを備えている。
【００６２】
電源コントローラ２１０は、各DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃの作動をそれぞれ制御する。また、電源コントローラ２１０は、電源障害が発生した場合等に、各DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃの作動を直ちに停止させた後で、電源障害に関する情報（電源障害情報）をメモリ２６０に書き込む。
【００６３】
DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃは、メイン電源１５から入力される電源電圧を変換して出力する。DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃは、それぞれ異なる種類の電源電圧を回路２３０Ａ，２３０Ｂ，２３０Ｃに供給する。なお、以下の説明では、特に区別する必要がない場合は、「DC/DC電源２２０」と略記する場合がある。
【００６４】
電子回路２３０Ａ，２３０Ｂ，２３０Ｃは、例えば、データ転送用LSIやマイクロプロセッサ、その他の電子回路のように構成される。本実施例では、説明の便宜上、例えば、電子回路２３０Ａが、データ転送回路及びマイクロプロセッサの機能をそれぞれ実現するものとする。後述の実施例では、データ転送を行う回路とマイクロプロセッサとを区別して説明する。なお、各電子回路を特に区別する必要がない場合、「電子回路２３０」と略記する場合がある。
【００６５】
電圧検出回路２４０は、各DC/DC電源２２０から出力される電源電圧の値を監視しており、検出された電圧値を電源コントローラ２１０に入力する。図中、電圧検出回路２４０から各DC/DC電源２２０毎にそれぞれ出力される検出信号に、SENS１，SENS２，SENS３の符号を付す。
【００６６】
補助電源２５０は、各DC/DC電源２２０とは別に設けられており、メイン電源１５から入力される電源電圧を所定の直流電圧に変換して、電源コントローラ２１０及びメモリ２６０にそれぞれ供給する。詳細は後述するが、補助電源２５０は、各DC/DC電源２２０の作動が停止した後も、所定の比較的短い時間の間だけ、電源コントローラ２１０及びメモリ２６０に電力を供給し続ける。そして、電源コントローラ２１０がメモリ２６０に電源障害情報を書き込んだ後、補助電源２５０の作動は停止される。これにより、CHA１４１の全機能が停止する。
【００６７】
メモリ２６０は、例えば、不揮発メモリとして構成される。メモリ２６０には、電源コントローラ２１０によって、電源障害情報（後述のステータス情報またはステータス履歴情報）が書き込まれる。
【００６８】
メモリ２６０には、インターフェース２７０が接続されており、このインターフェース２７０を介して、メモリ２６０に記憶された情報をCHA１４１の外部に読み出すことができるようになっている。例えば、インターフェース２７０には、図３中の接続制御部１４５を介して、別のCHA１４１が接続されている。この別のCHA１４１は、SVP１４６を介して管理端末２０に接続されている。これにより、管理端末２０は、SVP１４６等を介して、メモリ２６０内に記憶された電源障害情報を読出し、ユーザや保守員に障害の発生等を通知することができる。
【００６９】
次に、各DC/DC電源２２０が正常状態であるか異常状態であるかを判別するための方法を説明する。図５は、各DC/DC電源２２０を作動させる場合の立ち上げシーケンスを示す説明図である。
【００７０】
図中「ST」は、ステータス期間を示す。一つの例として、正常な立ち上げシーケンスでは、最初に第１期間ST１において第１DC/DC電源２２０Ａを作動させ、次に第２期間ST２において第２DC/DC電源２２０Ｂを作動させ、最後に、第３期間ST３において第３DC/DC電源２２０Ｃを作動させる。電源コントローラ２１０が、所定の順番（第１DC/DC電源→第２DC/DC電源→第３DC/DC電源）で、各DC/DC電源２２０をそれぞれ作動させることにより、回路２３０が正常に起動する。
【００７１】
第１DC/DC電源２２０Ａが作動を開始すると、電圧検出回路２４０は、第１DC/DC電源２２０Ａの出力電圧を検出し、検出信号（SENS１）を電源コントローラ２１０に出力する。これにより、電源コントローラ２１０は、第１DC/DC電源２２０Ａが正常に起動したことを確認する。正常に起動した場合、第１DC/DC電源２２０Ａのステータスは、”０”から”１”に変化する。ステータス”０”は停止状態を示し、ステータス”１”は作動状態を示す。
【００７２】
以下同様に、第２DC/DC電源２２０Ｂ，第３DC/DC電源２２０Ｃが作動を開始すると、そのステータスは”０”から”１”に変化する。上述のように、電源コントローラ２１０は、所定の順番で各DC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃを作動させる。
【００７３】
従って、最初の第１期間ST１では、第１DC/DC電源２２０Ａのステータスのみが”１”となり、第２DC/DC電源２２０Ｂ及び第３DC/DC電源２２０Ｃのステータスはそれぞれ”０”となる。次の第２期間ＳＴ２では、第１DC/DC電源２２０Ａ及び第２DC/DC電源２２０Ｂのステータスがそれぞれ”１”となり、第３DC/DC電源２２０Ｃのステータスのみが”０”となる。最後の第３期間ＳＴ３では、全てのDC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃのステータスは、全て”１”となる。
【００７４】
図６は、ステータス情報フォーマット３００の例を示す説明図である。このフォーマット３００を参照することにより、各DC/DC電源２２０が正常に動作しているか否かを容易に判別することができる。
【００７５】
第１期間ST１では、第１DC/DC電源２２０Ａのステータスのみが”１”となり、他の第２DC/DC電源２２０Ｂ及び第３DC/DC電源２２０Ｃのステータスはそれぞれ”０”となる場合のみが、正常状態（OK）を示す。これ以外の場合は、全て異常状態（NG）を示すことになる。正常状態におけるステータスの組合せを白い矢印で示す。
【００７６】
同様に、第２期間ＳＴ２では、第１DC/DC電源２２０Ａ及び第２DC/DC電源２２０Ｂのステータスがそれぞれ”１”で、第３DC/DC電源２２０Ｃのステータスのみが”０”となった場合のみが、正常状態を示す。これ以外の場合は、全て異常状態となる。
【００７７】
同様に、第３期間ＳＴ３では、全てのDC/DC電源２２０Ａ，２２０Ｂ，２２０Ｃのステータスが全て”１”となったばあいのみが正常状態を示す。これ以外の場合は、全て異常状態となる。
【００７８】
図６の下側に示すように、電源コントローラ２１０は、所定の場合に、ステータス履歴情報３１０を作成し、このステータス履歴情報３１０をメモリ２６０に記憶させる。所定の場合とは、例えば、各DC/DC電源２２０のいずれかに異常が検出された場合等であるが、後述のように、これ以外の場合でも、電源コントローラ２１０は、ステータス履歴情報３１０を作成することができる。
【００７９】
ステータス履歴情報３１０とは、電源障害に関する情報であり、例えば、連続番号と、ステータス情報とを対応付けることにより、構成される。連続番号は、各ステータス履歴情報３１０をそれぞれ識別するための番号であり、例えば３ビットが割り当てられる。ステータス情報は、ある期間STにおける各DC/DC電源２２０のステータスの組合せを示す情報であり、例えば５ビットが割り当てられる。
【００８０】
ステータス情報の最初の２ビットは、期間STの区別に使用される。第１期間ST１は”０１”、第２期間ST２は”１０”、第３期間ST３は”１１”となる。ステータス情報の残りの３ビットは、ステータスの組合せを示す。この３ビットは、各DC/DC電源２２０のステータスをそれぞれ示す。最初の１ビットは、第１DC/DC電源２２０Ａのステータスを示し、次の１ビットは第２DC/DC電源２２０Ｂのステータスを示し、最後の１ビットは第３DC/DC電源２２０Ｃのステータスを示す。例えば、”０００”は全てのDC/DC電源２２０の作動が停止していることを示し、”１１１”は全てのDC/DC電源２２０が作動していることを示す。また、”１００”は第１DC/DC電源２２０のみが作動していることを示す。つまり、期間を区別する２ビットとステータスの組合せを示す３ビットとによって、どのDC/DC電源２２０に異常が生じたかを判別することができる。このように、ステータス履歴情報３１０は、合計８ビットのデータとして構成可能である。
【００８１】
なお、図６に示すステータス履歴情報３１０の構成は一例であり、本発明はこれに限定されない。例えば、後述の実施例で明らかになるように、ストレージ装置１０の構成変更等に関する情報や時刻情報等を含めることもできる。また、どのCHA１４１に関する情報であるかを示すために、CHA１４１を特定するための識別情報を含めてもよい。さらに、どのストレージ装置１０で使用されていたかを示すために、ストレージ装置１０の装置番号等を含めることもできる。
【００８２】
図７は、電源異常（電源障害）を監視するための処理と電源異常を解析するための処理とを示すフローチャートである。なお、以下の各フローチャートも同様であるが、各フローチャートは、本発明の理解及び実施に必要な範囲で処理の概要を示しており、実際のプログラムと相違する場合がある。
【００８３】
まず、図７中の左側に示すように、電源コントローラ２１０は、電圧検出回路２４０からの信号（SENS１〜SENS３）をそれぞれ読込み（Ｓ１１）、図５に示す正常な電源シーケンスを確認し（Ｓ１２）、電源異常の有無を判定する（Ｓ１３）。
【００８４】
電源異常が生じた場合（S13:YES）、電源コントローラ２１０は、直ちに全てのDC/DC電源２２０の作動を停止させる（Ｓ１４）。これにより、各電子回路２３０の作動もそれぞれ停止する。しかし、電源コントローラ２１０及びメモリ２６０だけは、補助電源２５０によってバックアップされている。
【００８５】
CHA１４１の主要なデータ処理機能（電子回路２３０で実現される機能）のみを停止させた後、電源コントローラ２１０は、電源異常が検出されたときにおける各DC/DC電源２２０のステータスに基づいてステータス履歴情報３１０を作成し、この作成したステータス履歴情報３１０をメモリ２６０に記憶させる（Ｓ１５）。なお、本実施例では、電源異常が検出された場合にのみステータス履歴情報３１０を作成するため、ステータス履歴情報という名称に代えて、ステータス管理情報等と呼び変えることもできる。
【００８６】
電源コントローラ２１０は、ステータス履歴情報３１０をメモリ２６０に書き込んだ後、補助電源２５０の作動を停止させる（Ｓ１６）。これにより、障害の検出されたCHA１４１は、機能を停止する。
【００８７】
管理端末２０は、電源障害（電源異常）の検出されたCHA１４１のメモリ２６０に、別の正常なCHA１４１を介してアクセスし、ステータス履歴情報３１０を読み出すことができる（Ｓ１７）。そして、ユーザや保守員は、メモリ２６０から読み出したステータス履歴情報３１０を管理端末２０の画面に表示等させることにより、ステータス履歴情報３１０の内容を解析することができる（Ｓ１８）。この解析結果は、例えば、管理サーバ４０によって一元管理されている障害情報データベースに保存される（Ｓ１９）。
【００８８】
なお、上記の説明では、ストレージ装置１０の設置されている場所で、電源障害を解析する場合を述べたが、これに限らず、例えば、修理工場や研究所等において、CHA１４１のメモリ２６０からステータス履歴情報３１０を読み出して、障害の解析等を行うこともできる。
【００８９】
本実施例は、上述のように構成されるため、以下の効果を奏する。本実施例では、ＣＨＡ１４１等のパッケージ内に電源障害に関する情報（ステータス履歴情報３１０）を保持させるため、障害の解析作業や保守作業の作業性を向上させることができる。
【００９０】
本実施例では、補助電源２５０によってステータス履歴情報３１０の生成及び保存に関する部分のみを部分的にバックアップする構成とした。これにより、全てのDC/DC電源２２０の作動を停止させてから、ステータス履歴情報３１０をメモリ２６０に書き込むことができる。従って、電子回路２３０の誤動作等を防止して信頼性を維持することができ、かつ、保守作業等の作業性を向上させることができる。
【００９１】
つまり、本実施例では、電源異常が発生した場合、この電源異常によって直接的な影響を受けうる主要機能（データ処理機能、データ転送機能）を直ちに停止させ、電源異常に関する情報を保存する機能だけをバックアップする。これにより、電源異常の発生時に、データ処理またはデータ転送に関する不具合が生じるのを未然に防止しつつ、電源異常に関する情報を保存して、障害の通知や解析処理に役立たせることができる。
【００９２】
本実施例では、メモリ２６０からステータス履歴情報３１０を読み出すためのインターフェース２７０を設けるため、管理端末２０は、他のCHA１４１を介して、ステータス履歴情報３１０を取得することができる。これにより、電源障害の生じたストレージ装置１０においても、障害の生じたCHA１４１から電源障害に関する情報をその場で直ちに取得して、ある程度の調査を行うことができる。また、修理センタ等においても、その電源障害の生じたCHA１４１のメモリ２６０からステータス履歴情報３１０を読み出すことができ、保守作業における使い勝手が向上する。
【実施例２】
【００９３】
図８〜図１１に基づいて、本発明の第２実施例を説明する。本実施例を含む以下の各実施例は、第１実施例の変形例に該当する。以下の説明では、第１実施例との相違点を中心に説明する。本実施例では、データ処理基板の一例であるCHA１４１を複数の基板２０１，２０２から２階建てで構成し、複数の基板２０２で検出された電源障害に関する情報を共通のメモリ２６１に記憶させる。
【００９４】
図８は、CHA１４１の基板構造を模式的に示す説明図である。図８（ａ）の斜視図に示すように、このCHA１４１は、例えば、ベース基板２０１と、ベース基板２０１の一方の側に搭載された複数のMP基板２０２とから、構成されている。ベース基板２０１は「第１基板」に該当し、MP基板２０２は「第２基板」に該当する。図８（ｂ）の平面図にも示すように、ベース基板（図中「ベースPCB」）２０１には、例えば、４個のMP基板（図中「MP-PCB」）２０２が設けられており、両基板２０１，２０２はコネクタ等で接続されている。
【００９５】
図９は、ベース基板２０１の回路構成を示す回路図である。ベース基板２０１は、各MP基板２０２によって共通に利用される各種回路が搭載されている。ベース基板２０１は、例えば、電源コントローラ２１１と、複数のDC/DC電源２２１Ａ，２２１Ｂ，２２１Ｃと、データ転送回路２３１Ａと、電圧検出回路２４１と、補助電源２５１と、メモリ２６１と、ホスト３０と接続するための通信ポート２８１と、SVP１４６と接続するためのポート２８２とを備えて構成される。なお、DC/DC電源２２１Ａ，２２１Ｂ，２２１Ｃを特に区別する必要がない場合、DC/DC電源２２１と略記する。
【００９６】
電源コントローラ２１１，DC/DC電源２２１，電圧検出回路２４１，補助電源２５１，メモリ２６１は、上述した電源コントローラ２１０，DC/DC電源２２０，電圧検出回路２４１，補助電源２５０及びメモリ２６０と同様の機能を発揮する。従って、詳細な説明は割愛する。
【００９７】
データ転送回路２３１Ａは、ホスト３０から受信したデータをキャッシュメモリ１４３に格納させたり、キャッシュメモリ１４３に記憶されたデータをホスト３０に転送するための回路である。
【００９８】
複数のDC/DC電源２２０のうち第１DC/DC電源２２１Ａは、ベース基板２０１上の各MP基板２０２にもそれぞれ電力を供給する。各MP基板２０２は、ベース基板２０１上のメモリ２６１とデータ転送回路２３１Ａ及びポート２８２にそれぞれ接続されている。
【００９９】
図１０は、一つのMP基板２０２の構成に着目した回路図である。図１０では、紙面の都合上、ベース基板２０１の構成を簡略化して示す。図１０中の上側に示すように、MP基板２０１は、例えば、電源コントローラ２１２と、複数のDC/DC電源２２２Ａ，２２２Ｂ，２２２Ｃと、複数の電子回路２３２Ａ，２３２Ｂ，２３２Ｃと、電圧検出回路２４２と、補助電源２５２とを備えて構成される。電子回路２３１Ａは、CHA１４１の動作を制御するためのマイクロプロセッサである。
【０１００】
ベース基板２０１の構成とMP基板２０２の構成とを比較するとわかるように、メモリ２６１は、ベース基板２０１にのみ設けられている。つまり、本実施例では、ベース基板２０１及び各MP基板２０２のそれぞれにおいて電源障害の有無を監視し、ベース基板２０１に設けられた共通のメモリ２６１に、各基板２０１，２０２で作成されたステータス履歴情報をそれぞれ記憶させるようになっている。
【０１０１】
図１０に示すように、もしも第１のMP基板２０１の第２DC/DC電源２２２Ｂの電圧出力に異常が検出された場合、MP基板２０１の電源コントローラ２１２は、全てのDC/DC電源２２２Ａ〜２２２Ｃの作動を停止させる。その後、電源コントローラ２１２は、ステータス履歴情報３１０を作成し、このステータス履歴情報３１０をベース基板２０１上のメモリ２６１に記憶させる。
【０１０２】
ユーザや保守員等は、管理端末２０からSVP１４６を介して、正常に稼働しているいずれかのマイクロプロセッサ２３２Ａにアクセスし、このマイクロプロセッサ２３２Ａを介してメモリ２６１からステータス履歴情報３１０を読み出す。
【０１０３】
図１１は、本実施例による電源異常管理処理及び電源異常解析処理を示すフローチャートである。電源異常（電源障害）は、ベース基板２０１及び各MP基板２０２のいずれにおいても発生しうるが、ここでは、MP基板２０２で電源障害が発生した場合を例に挙げて説明する。なお、ベース基板２０１で電源障害が生じた場合の例は、別の実施例で説明する。
【０１０４】
MP基板２０２の電源コントローラ２１２は、電圧検出回路２４２からの検出信号を読込み（Ｓ２１）、正常な電源シーケンスと比較することにより（Ｓ２２）、電源異常が発生したか否かを判定する（Ｓ２３）。
【０１０５】
電源異常が発生したと判定された場合（S23:YES）、電源コントローラ２１２は、直ちに全てのDC/DC電源２２２の作動を停止させる（Ｓ２４）。電源コントローラ２１２は、電源異常の検出されたDC/DC電源２２２に関するステータス履歴情報３１０を作成して、このステータス履歴情報３１０をベース基板２０１上のメモリ２６１に記憶させる（Ｓ２５）。そして、電源コントローラ２１２は、補助電源２５２の作動を停止させて、本処理を終了する（Ｓ２６）。
【０１０６】
ここで、本実施例では、それぞれ異なる電源コントローラ２１１，２１２で作成されたステータス履歴情報３１０を、共通のメモリ２６１に記憶させる。従って、ステータス履歴情報３１０には、どの電源コントローラ２１１，２１２で作成された情報であるかを示すための識別情報を追加することができる。この識別情報の例として、図１１中では、「基板番号」を挙げている。これに代えて、「連続番号」の中に、どの電源コントローラ２１１，２１２で作成された情報であるかを示す情報を含める構成でもよい。または、メモリ２６１の記憶領域を予め分割しておき、各電源コントローラ２１１，２１２の使用する記憶領域を予め決定しておく構成でもよい。
【０１０７】
ユーザや保守員等は、電源異常の検出されたCHA１４１内に設けられている他の正常なMP基板２０２上のマイクロプロセッサ２３２Ａを介して、メモリ２６１内のステータス履歴情報３１０を読み出すことができる。読み出されたステータス履歴情報３１０は、SVP１４６から管理端末２０に転送される。以下、第１実施例と同様に、ユーザ等は、ステータス履歴情報３１０を解析し（Ｓ２８）、解析結果を障害情報データベースに保存させる（Ｓ２９）。
【０１０８】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、ベース基板２０１と複数のMP基板２０２との２階建て構成でCHA１４１を構成する場合に、ベース基板２０１にのみメモリ２６１を設けるため、構成を簡素化することができる。即ち、ベース基板２０１の電源コントローラ２１１及び各MP基板２０２の電源コントローラ２１２は、それぞれのステータス履歴情報３１０を共通のメモリ２６１に記憶させることができる。そして、メモリ２６１に記憶されたステータス履歴情報３１０は、正常に稼働しているマイクロプロセッサ２３２Ａを介して読み出すことができる。
【実施例３】
【０１０９】
図１２，図１３，図１４に基づいて第３実施例を説明する。本実施例では、複数のCHA１４１によってクラスタを構成しており、いずれか一方のCHA１４１のベース基板２０１で電源異常が検出された場合は、他方のクラスタのCHA１４１を介して、電源障害の発生をホスト３０に通知する。
【０１１０】
図１２は、本実施例のストレージ装置１０の主要構成を模式的に示す説明図である。本実施例では、２つのCHA１４１によってクラスタを構成している。図１２の左側に示すように、一方のCHA１４１のベース基板２０１で電源異常が発生すると、ベース基板２０１の電源コントローラ２１１は、全てのDC/DC電源２２１の作動を停止させる。これにより、データ転送回路２３１Ａは機能を停止する。電源コントローラ２１１は、他系のCHA１４１（クラスタを構成する相手方のCHA１４１であり、図１２中の右側に示すCHAである）に、電源異常の発生を通知する。また、電源コントローラ２１１は、ステータス履歴情報３１０をメモリ２６１に保存させる。
【０１１１】
ベース基板２０１で電源異常が発生した場合、ベース基板２０１の機能が停止されるため、このCHA１４１の機能も停止する。従って、ホスト３０は、この電源障害の生じたCHA１４１を用いてデータアクセスを行うことはできない。
【０１１２】
そこで、クラスタを構成する他方のCHA１４１は、一方のCHA１４１の電源コントローラ２１１からの通知に基づいて、ホスト３０に電源障害の発生を通知する。これにより、ホスト３０は、正常に作動しているCHA１４１を用いて、ボリューム１３３へのデータアクセスを行う。
【０１１３】
メモリ２６１に記憶されたステータス履歴情報３１０は、他方のCHA１４１のいずれかのマイクロプロセッサ２３２Ａを用いて読み出すことができる。
【０１１４】
図１３は、本実施例による電源異常監視処理等を示すフローチャートである。以下の説明では、ホスト３０が使用しているクラスタ１に電源障害が発生した場合を例に挙げて説明する。
【０１１５】
まず、クラスタ１のCHA１４１に搭載されている電源コントローラ２１１は、電圧検出回路２４１からの検出信号を読込み（Ｓ３１）、正常な電源シーケンスと比較することにより（Ｓ３２）、電源異常が発生したか否かを判定する（Ｓ３３）。
【０１１６】
電源異常が発生したと判定した場合（S33:YES）、クラスタ１の電源コントローラ２１１は、その管理下にある全てのDC/DC電源２２１の作動を直ちに停止させ（Ｓ３４）、ステータス履歴情報３１０をメモリ２６１に記憶させる（Ｓ３５）。そして、クラスタ１の電源コントローラ２１１は、電源異常が発生した旨をクラスタ２のCHA１４１に通知した後（Ｓ３６）、補助電源２５１の作動を停止させる（Ｓ３７）。
【０１１７】
クラスタ２のCHA１４１に搭載されているいずれかのマイクロプロセッサ２３２Ａは、クラスタ１の電源コントローラ２１１から障害の発生を知らせる通知を受領すると（Ｓ３８）、電源障害が発生した旨をホスト３０に通知する（Ｓ３９）。
【０１１８】
ホスト３０は、クラスタ２のCHA１４１からの通知を受領すると（Ｓ４０）、ストレージ装置１０へのアクセスパスをクラスタ１からクラスタ２に切り替えて、ライトデータを再転送する（Ｓ４１）。なお、ホスト３０がライトアクセスする場合を例に挙げて説明するが、リードアクセスの場合も同様である。クラスタ１に障害が発生した場合、ホスト３０は、クラスタ２のCHA１４１を用いて、所望のデータを読み出す。
【０１１９】
一方、電源異常の解析を行う場合、ユーザや保守員等は、管理端末２０からSVP１４６を介して、クラスタ２のいずれかのマイクロプロセッサ２３２Ａにアクセスし、このマイクロプロセッサ２３２Ａを介して、メモリ２６１内のステータス履歴情報３１０を読み出す（Ｓ４２）。そして、ユーザ等は、クラスタ１のステータス履歴情報３１０を解析し（Ｓ４３）、この解析結果を障害情報データベースに保存させる（Ｓ４４）。
【０１２０】
図１４は、複数のホスト３０がストレージ装置１０に接続されている場合に、どのホスト３０に電源障害の発生を通知すべきか決定する方法を示す説明図である。例えば、ストレージ装置１０の共有メモリ１４４には、ホスト管理情報Ｔ１が記憶されている。
【０１２１】
ホスト管理情報Ｔ１は、例えば、各ホスト３０をそれぞれ識別するためのホスト識別情報と、そのホスト３０が使用しているポートを識別するためのポート識別情報とを多io付けて管理している。識別情報としては、例えば、IP（Internet Protocol）アドレスやWWN（World Wide Name）等を用いることができる。このようなホスト管理情報Ｔ１を参照することにより、クラスタ２のCHA１４１は、いずれのホスト３０に電源障害の発生を通知すべきかを決定することができる。
【０１２２】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、クラスタ構成の場合に、一方のクラスタで生じた電源障害を他方のクラスタからホスト３０に通知する。従って、ホスト３０は、タイムアウトエラーの検出を待たずに、正常なクラスタに切り替えて、データアクセスを行うことができ、ユーザの使い勝手が向上する。
【実施例４】
【０１２３】
図１５，図１６を用いて第４実施例を説明する。本実施例では、MP基板２０２上で電源異常が検出された場合の処理方法を開示する。図１５は、本実施例によるストレージ装置１０の主要構成を模式的に示す説明図である。
【０１２４】
例えば、クラスタ１のCHA１４１に搭載されているいずれかのMP基板２０２で電源異常が検出された場合、このMP基板２０２の電源コントローラ２１２は、全てのDC/DC電源２２２の作動を直ちに停止させ、そして、ステータス履歴情報３１０をメモリ２６１に記憶させる。なお、図１５中では、紙面の都合上、ステータス履歴情報３１０を「ST情報」と略記している。
【０１２５】
ベース基板２０１で電源異常が生じた場合とは異なり、いずれかのMP基板２０２で電源異常が生じた場合は、同一のベース基板２０１に設けられている別のMP基板２０２を介して、ホスト３０のアクセスを処理することができる。つまり、クラスタ１の第２MP基板（図中「MP2-PCB」）で電源異常が生じた場合、クラスタ１の第１MP基板（MP1-PCB）、第３MP基板（MP3-PCB）または第４MP基板（MP4-PCB）のいずれか一つを用いることにより、ホスト３０からのアクセス要求を処理可能である。
【０１２６】
そこで、この場合は、いずれか一つの正常なMP基板２０２のマイクロプロセッサ２３２Ａから、ホスト３０に電源障害の発生を通知し、同一のクラスタ１内で、ホスト３０からのアクセス要求を処理する。
【０１２７】
図１６は、本実施例による電源異常監視処理等を示すフローチャートである。クラスタ１のMP基板２０２（例えば、図１５中のMP2-PCB）は、電圧検出回路２４２からの信号を読込み（Ｓ５１）、正常な電源シーケンスと比較して（Ｓ５２）、電源異常が生じたか否かを判定する（Ｓ５３）。
【０１２８】
電源異常の発生が検出されると（S53:YES）、電源コントローラ２１２は、直ちに全てのDC/DC電源２２２の作動を停止させ（Ｓ５４）、ステータス履歴情報３１０をメモリ２６１に記憶させる（Ｓ５５）。
【０１２９】
そして、クラスタ１のいずれか一つの正常なMP基板２０２上のマイクロプロセッサ２３２Ａは、電源異常の発生を通知した後（Ｓ５６）、補助電源２５２の作動を停止させる（Ｓ５７）。
【０１３０】
ホスト３０は、クラスタ１のCHA１４１から電源障害の発生を知らせる通知を受領すると（Ｓ５８）、クラスタ１の正常なマイクロプロセッサ２３２Ａを一つ選択し、この選択されたマイクロプロセッサ２３２Ａにデータを再転送する（Ｓ５９）。ホスト３０は、電源障害の発生を通知してきたマイクロプロセッサ２３２Ａを選択可能である。
【０１３１】
一方、電源異常の解析を行う場合は、ユーザ等は、管理端末２０からSVP１４６を介して、クラスタ１のいずれか正常なマイクロプロセッサ２３２Ａにアクセスし、このマイクロプロセッサ２３２Ａを介して、メモリ２６１内のステータス履歴情報３１０を読み出す（Ｓ６０）。ユーザ等は、クラスタ１のステータス履歴情報３１０を解析し（Ｓ６１）、この解析結果を障害情報データベースに保存させる（Ｓ６２）。
【０１３２】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、MP基板２０２で電源異常が生じた場合、同一のベース基板２０１上に設けられている別の正常なMP基板２０２を用いて、ホスト３０からのアクセス要求を処理することができる。
【実施例５】
【０１３３】
図１７，図１８に基づいて第５実施例を説明する。本実施例では、クラスタ構成を備える場合に、一方のクラスタで電源障害の発生が検出された場合でも、その電源障害の発生をホスト３０に通知しない。
【０１３４】
本実施例は、第３実施例と共通の構成を多く備えるため、第３実施例との相違点を中心に説明する。図１７は、本実施例によるストレージ装置１０の主要構成を模式的に示す説明図である。本実施例でも前記第３実施例と同様に、一方のクラスタ１で電源異常が検出された場合、この電源異常の発生は他方のクラスタ２に通知される。しかし、本実施例では、クラスタ２のCHA１４１は、電源異常の発生をホスト３０に通知しない。ホスト３０は、クラスタ１へのアクセス要求の応答が所定時間内に返ってこない場合に、エラーの発生を検知し、アクセスパスをクラスタ２に切り替える。
【０１３５】
図１８は、電源異常監視処理等を示すフローチャートである。図１８中のＳ７１〜Ｓ７７は、図１３中のＳ３１〜Ｓ３７と同一であり、図１８中のＳ８１〜Ｓ８３は、図１３中のＳ４２〜Ｓ４４と同一である。従って、Ｓ７１〜Ｓ７７，Ｓ８１〜Ｓ８３の説明を省略し、その他のステップを中心に説明する。
【０１３６】
クラスタ２のCHA１４１は、クラスタ１のベース基板２０１に搭載されている電源コントローラ２１１から電源障害の発生を知らせる通知を受領した場合でも（Ｓ７８）、ホスト３０への通知は行わない。
【０１３７】
従って、ホスト３０は、クラスタ１のCHA１４１に向けて発行したアクセス要求がタイムアウトエラーになった場合に（S79:YES）、クラスタ１で何らかの障害が発生したことを知る。そこで、ホスト３０は、クラスタ２のCHA１４１にアクセスパスを切り替えて、再びデータを転送する（Ｓ８０）。
【０１３８】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、電源障害の発生をホスト３０に通知しないため、第３実施例に比較して制御構成を簡素化することができる。
【実施例６】
【０１３９】
図１９〜図２１に基づいて第６実施例を説明する。本実施例では、所定のアクションが検出された場合に、ステータス履歴情報３１０を生成してメモリ２６１に保存させるようになっている。
【０１４０】
図１９は、本実施例によるストレージ装置１０のうち、ベース基板２０１を中心に示す構成説明図である。例えば、電源コントローラ２１１は、ステータス履歴情報３３０をメモリ２６１に記憶させるためのトリガを検知する機能２１１Ａと、ステータス履歴情報３３０をメモリ２６１に記憶させるための機能２１１Ｂとを備える。
【０１４１】
図２０は、本実施例によるステータス履歴情報３３０の構成を示す説明図である。メモリ２６１には、複数のステータス履歴情報３３０を記憶させることができる。ポインタ３２０は、最新のステータス履歴情報３３０の格納先アドレスを示す。メモリ２６１には、その先頭アドレスから順番に、ステータス履歴情報３３０が順番に保存されていく。メモリ２６１の空き容量が無くなるか、または所定値以下に低下すると、ポインタ３２０の値はクリアされ、再びメモリ２６１の先頭アドレスを指し示す。このようにして、メモリ２６１は繰り返し使用される。従って、メモリ２６１の記憶容量が少ない場合でも、常時、最新の一定数のステータス履歴情報３３０を効率よく保存することができる。
【０１４２】
本実施例のステータス履歴情報３３０は、例えば、連続番号と、年月日と、アクション種別と、ステータス情報とを対応付けることにより構成される。これら以外に、ステータス履歴情報３３０を作成した電源コントローラを識別する情報等を加えてもよい。
【０１４３】
「年月日」とは、そのステータス履歴情報３３０が作成された年月日を示す時刻情報である。月日に限らず、時分秒の情報を含めてもよい。「アクション種別」とは、そのステータス履歴情報３３０が作成される原因となったトリガ（アクション）の種類を示す情報である。
【０１４４】
アクションの種類としては、例えば、新規インストール、リプレース、増設、減設、稼働中、休止中等を挙げることができる。新規インストールとは、ストレージ装置１０に何らかの新しい構成要素（基板や装置あるいはソフトウェア）が設けられた場合である。リプレースとは、ストレージ装置１０の既存の構成要素が新たな構成要素に変更された場合である。増設とは、ストレージ装置１０の既存の構成要素が追加された場合であり、減設とは、ストレージ装置１０の既存の構成要素が取り外された場合である。稼働中とは、ストレージ装置１０が正常に稼働している場合である。休止中とは、ストレージ装置１０が作動を停止している場合である。「稼働中」の場合、例えば、予め設定された所定の周期で、ステータス履歴情報３３０が作成される。
【０１４５】
これらの予め設定されたアクションが検出されると、CHA１４１内の各電源コントローラ２１１，２１２は、それぞれの管理下にあるDC/DC電源２２１，２２２について、ステータス履歴情報３３０を作成し、メモリ２６１に記憶させる。
【０１４６】
図２１は、電源異常監視処理等を示すフローチャートである。ここでは、説明の便宜上、各電源コントローラ２１１，２１２のうち、電源コントローラ２１１を例に挙げて説明する。電源コントローラ２１１は、電圧検出回路２４１の信号を読込み（Ｓ９１）、正常な電源シーケンスと比較することにより（Ｓ９２）、電源異常が生じたか否かを判定する（Ｓ９３）。
【０１４７】
電源異常が生じた場合（S93:YES）、電源コントローラ２１１は、全てのDC/DC電源２２１の作動を直ちに停止させ（Ｓ９４）、ステータス履歴情報３３０を作成してメモリ２６１に記憶させる（Ｓ９５）。そして、電源コントローラ２１１は、補助電源２５１の作動を停止させる（Ｓ９６）。
【０１４８】
電源が正常である場合（S93:NO）、電源コントローラ２１１は、所定のアクションが発生したか否かを判定する（Ｓ９７）。上述の通り、電源コントローラ２１１は、新規インストールや増設等のアクションが検出された場合、または、所定の時間が経過した場合のように、所定のアクションが発生すると（S97:YES）、ステータス履歴情報３３０を作成してメモリ２６１に記憶させる（Ｓ９８）。
【０１４９】
電源異常の解析処理Ｓ９９〜Ｓ１０１は、第１実施例で述べた図７中のＳ１７〜Ｓ１９と同様であるため、説明を省略する。なお、ベース基板２０１の電源コントローラ２１１を例に挙げて説明したが、各MP基板２０２の電源コントローラ２１２も、上記同様に、電源異常の発生が検出された場合、及び所定のアクションが発生した場合に、ステータス履歴情報３３０を作成してメモリ２６１に記憶させる。
【０１５０】
このように構成される本実施例も前記第１実施例と同様の効果を奏する。これに加えて、本実施例では、電源障害が発生する前から、ステータス履歴情報３３０を作成して保存することができる。従って、障害の予兆に関する情報を収集することができ、この予兆情報を利用して、電源障害の解析作業を行うことができる。
【０１５１】
本実施例では、所定のアクションが発生した場合に、ステータス履歴情報３３０を作成するため、電源障害の発生しやすいアクションが何であるか等を比較的容易に究明することができ、解析作業の効率を高めることができる。
【実施例７】
【０１５２】
図２２，図２３に基づいて第７実施例を説明する。本実施例では、ステータス履歴情報３３０を選別して転送可能となっている。図２２は、本実施例によるストレージ装置の主要構成の概略を模式的に示す説明図である。
【０１５３】
本実施例でも、説明の便宜上、電源コントローラ２１１を例に挙げて説明する。電源コントローラ２１１は、前記第６実施例で述べたように、所定の時間が経過した場合や所定のアクションが発生した場合に、ステータス履歴情報３３０を作成して、メモリ２６１に記憶させる。従って、メモリ２６１には、複数のステータス履歴情報３３０がそれぞれ記憶されることになる。メモリ２６１に記憶される各ステータス履歴情報３３０の全体をＤ１とする。
【０１５４】
電源異常が発生した場合、他系（例えば、クラスタ２）のマイクロプロセッサ２３２Ａは、全てのステータス履歴情報３３０（Ｄ１）のうち、電源異常時のステータス履歴情報３３０のみを読み出す。この電源異常時のステータス履歴情報３３０をＤ２とする。他系のマイクロプロセッサ２３２Ａは、ストレージ装置１０の信頼性維持の観点から、クラスタ１における電源異常の発生のみを知れば足りるためである。
【０１５５】
SVP１４６は、電源異常時のステータス履歴情報３３０（Ｄ２）のうち、例えば、どのDC/DC電源２２１で電源異常が生じたかの情報（Ｄ３）のみを、他系のマイクロプロセッサ２３２Ａから取得する。故障したパッケージ（ここでは、クラスタ１のCHA１４１）を特定できれば足りるためである。
【０１５６】
また、他系のマイクロプロセッサ２３２Ａは、クラスタ１で電源障害が生じた旨をホスト３０に通知する。この電源障害の発生通知をＤ４とする。
【０１５７】
このように、本実施例では、全てのステータス履歴情報３３０（Ｄ１）→電源異常時のステータス履歴情報３３０（Ｄ２）→SVP１４６への通知（Ｄ３）→ホスト３０への通知（Ｄ４）の順番で、伝達される情報が選別され、情報量が減少していく。
【０１５８】
図２３は、電源異常監視処理等を示すフローチャートである。説明の便宜上、クラスタ１のベース基板２０１で電源異常が生じた場合を説明する。前記第６実施例と同様に、ベース基板２０１の電源コントローラ２１１は、電圧検出回路２４１の信号を読込み（Ｓ１１１）、正常な電源シーケンスと比較することにより（Ｓ１１２）、電源異常が生じたか否かを判定する（Ｓ１１３）。
【０１５９】
電源異常が生じた場合（S113:YES）、電源コントローラ２１１は、全てのDC/DC電源２２１の作動を直ちに停止させ（Ｓ１１４）、ステータス履歴情報３３０を作成してメモリ２６１に記憶させる（Ｓ１１５）。そして、電源コントローラ２１１は、電源異常の発生をクラスタ２に通知した後（Ｓ１１６）、補助電源２５１の作動を停止させる（Ｓ１１７）。
【０１６０】
電源が正常である場合（S113:NO）、電源コントローラ２１１は、所定のアクションが発生したか否かを判定する（Ｓ１１８）。電源コントローラ２１１は、所定のアクションが発生すると（S118:YES）、ステータス履歴情報３３０を作成してメモリ２６１に記憶させる（Ｓ１１９）。従って、メモリ２６１には、電源異常が発生する前のステータス履歴情報３３０が蓄積されていく。
【０１６１】
クラスタ２のマイクロプロセッサ２３２Ａは、クラスタ１からの通知を受領すると（Ｓ１２０）、クラスタ１のメモリ２６１にアクセスして、電源異常時のステータス履歴情報３３０（Ｄ２）を読み出す（Ｓ１２１）。そして、クラスタ２のマイクロプロセッサ２３２Ａは、電源障害が発生した旨をホスト３０に通知する（Ｓ１２２）。ホスト３０に通知される情報はＤ４であり、この情報Ｄ４には、クラスタ１で電源障害が発生した旨の情報が含まれている。
【０１６２】
また、クラスタ２のマイクロプロセッサ２３２Ａは、クラスタ１のどのパッケージ（この例ではCHA１４１）が故障したのかを、SVP１４６に通知する（Ｓ１２３）。SVP１４６に通知される情報はＤ３であり、この情報Ｄ３には電源障害の発生したパッケージを特定する情報が含まれている。
【０１６３】
ホスト３０は、クラスタ２からの通知を受領すると（Ｓ１２４）、クラスタ２のいずれかのCHA１４１にデータを再度転送する（Ｓ１２５）。SVP１４６は、クラスタ２からの通知を受領すると（Ｓ１２６）、管理端末２０のユーザインターフェース２１に故障箇所及び交換指示を表示させる（Ｓ１２７）。
【０１６４】
なお、紙面の都合上、電源異常の解析処理は省略する。しかし、本実施例においても、前記第６実施例のＳ９９〜Ｓ１０１と同様に、クラスタ１のCHA１４１で発生した電源異常を解析することができる。解析処理を行う場合は、メモリ２６１に記憶されている全てのステータス履歴情報３３０（Ｄ１）を読み出す。
【０１６５】
このように構成される本実施例も前記第６実施例と同様の効果を奏する。これに加えて、本実施例では、メモリ２６１に記憶される全てのステータス履歴情報３３０（Ｄ１）をそのまま転送するのではなく、転送の各段階毎に、必要な範囲の情報を選別して転送する構成とした。従って、転送される情報の量を必要最低限に抑制することができる。
【０１６６】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、各実施例を適宜組み合わせることができる。
【０１６７】
また、上記各実施例では、データ処理基板としてCHA１４１を例に挙げて説明したが、本発明はこれに限らず、例えば、DKA１４２等にも適用可能である。
【図面の簡単な説明】
【０１６８】
【図１】本発明の実施形態の概念を示す説明図である。
【図２】ストレージ装置を含むストレージシステムの全体構成を示す説明図である。
【図３】ストレージ装置のブロック図である。
【図４】データ処理基板としてのCHAの構成を示す説明図である。
【図５】DC/DC電源の正常な立ち上げシーケンスを示す説明図である。
【図６】ステータス情報フォーマットを示す説明図である。
【図７】電源異常監視処理及び電源異常解析処理を示すフローチャートである。
【図８】第２実施例に係るストレージ装置に使用されるデータ処理基板の基板構造を模式的に示す説明図である。
【図９】ベース基板の構成に着目したブロック図である。
【図１０】一つのMP基板の構成に着目したブロック図である。
【図１１】電源異常監視処理等を示すフローチャートである。
【図１２】第３実施例に係るストレージ装置の要部を模式的に示す説明図である。
【図１３】電源異常監視処理等を示すフローチャートである。
【図１４】ホストとポートとの対応関係を管理する方法を示す説明図である。
【図１５】第４実施例に係るストレージ装置の要部を模式的に示す説明図である。
【図１６】電源異常監視処理等を示すフローチャートである。
【図１７】第５実施例に係るストレージ装置の要部を模式的に示す説明図である。
【図１８】電源異常監視処理等を示すフローチャートである。
【図１９】第６実施例に係るストレージ装置に用いられるデータ処理基板としてのCHAの構成を示すブロック図である。
【図２０】ステータス履歴情報の構成及び管理方法を示す説明図である。
【図２１】電源異常監視処理等を示すフローチャートである。
【図２２】第７実施例に係るストレージ装置の要部を模式的に示す説明図である。
【図２３】電源異常監視処理等を示すフローチャートである。
【符号の説明】
【０１６９】
１…ストレージ装置、２…データ処理基板、２Ａ…電源コントローラ、２Ｂ…DC/DC電源、２Ｃ…電子回路、２Ｄ…電圧検出回路、２Ｅ…補助電源、２Ｆ…メモリ、２Ｇ…インターフェース、３…メイン電源、４…中継装置、５…管理装置、１０…ストレージ装置、１１…基本筐体、１２…増設筐体、１３…ハードディスクボックス、１４…コントローラ、１５…メイン電源、１６…バッテリ部、１７…通信経路、２０…管理端末、２１…管理用ユーザインターフェース、３０…ホスト、４０…管理サーバ、１３１…ディスクドライブ、１３２…パリティグループ、１３３…論理ボリューム、１４１…チャネルアダプタ（CHA）、１４２…ディスクアダプタ（DKA）、１４３…キャッシュメモリ、１４４…共有メモリ、１４５…接続制御部、１４６…サービスプロセッサ（SVP）、２０１…ベース基板、２０２…MP基板、２１０、２１１，２１２…電源コントローラ、２２０，２２０Ａ，２２０Ｂ，２２０Ｃ，２２１，２２１Ａ，２２１Ｂ，２２１Ｃ，２２２，２２２Ａ，２２２Ｂ，２２２Ｃ…DC/DC電源、２３０，２３０Ａ，２３０Ｂ，２３０Ｃ…電子回路、２３１Ａ…データ転送回路、２３２Ａ…マイクロプロセッサ、２４０，２４１，２４２…電圧検出回路、２５０、２５１，２５２…補助電源、２６０，２６１…メモリ、２７０…インターフェース、２８１，２８２…通信ポート、３１０，３３０…ステータス履歴情報
【図１】
2007286937.tif 000003
【図２】
2007286937.tif 000004
【図３】
2007286937.tif 000005
【図４】
2007286937.tif 000006
【図５】
2007286937.tif 000007
【図６】
2007286937.tif 000008
【図７】
2007286937.tif 000009
【図８】
2007286937.tif 000010
【図９】
2007286937.tif 000011
【図１０】
2007286937.tif 000012
【図１１】
2007286937.tif 000013
【図１２】
2007286937.tif 000014
【図１３】
2007286937.tif 000015
【図１４】
2007286937.tif 000016
【図１５】
2007286937.tif 000017
【図１６】
2007286937.tif 000018
【図１７】
2007286937.tif 000019
【図１８】
2007286937.tif 000020
【図１９】
2007286937.tif 000021
【図２０】
2007286937.tif 000022
【図２１】
2007286937.tif 000023
【図２２】
2007286937.tif 000024
【図２３】
2007286937.tif 000025