(57)【要約】【課題】  複数のノードにより構成されたディスクアレイ装置の、起動、停止時の信頼性の向上をはかる。【解決手段】  複数のノードにより構成されたディスクアレイ装置であって、ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行う制御手段を含む。【選択図】  図１
2010157024.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードにより構成されたディスクアレイ装置であって、
前記ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、前記ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行う制御手段、
を備えたことを特徴とするディスクアレイ装置。
【請求項２】
前記制御手段は、
前記複数のノードのそれぞれに、スイッチ操作に基づく構成情報の設定により基本ノードもしくは拡張ノードを割り付け、前記ノード間通信により、前記基本ノードと拡張ノードとの間の通信確立を契機に、前記基本ノードに設定された電源制御情報に基づき前記拡張ノードの電源制御を行うことを特徴とする請求項１に記載のディスクアレイ装置。
【請求項３】
前記それぞれのノードは、
複数の磁気ディスクが格納されたディスクアレイ、および前記ディスクアレイに格納された磁気ディスクのリードライトを制御するアレイコントーラで構成されるディスクアレイ装置本体と、
前記ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、前記ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行う前記制御手段を含むスイッチモジュールと、を有し、
前記制御手段は、
ＡＣ電源の投入を検知して、前記ディスクアレイ装置本体を除くスイッチモジュールに通電を開始することを特徴とする請求項１または請求項２に記載のディスクアレイ装置。
【請求項４】
前記制御手段は、
前記通電が開始されることにより実行される前記ノード間通信により前記拡張ノードとの間の接続状態を判定し、接続状態にある拡張ノードに対して前記ディスクアレイ装置本体への装置電源投入処理の実行を指示する電源制御情報を送信し、
前記電源制御情報を受信して自身のディスクアレイ装置本体への装置電源投入処理を実行した前記拡張ノードから前記電源制御情報の受信確認情報を取得し、自身のディスクアレイ装置本体への装置電源投入処理を実行することを特徴とする請求項１から請求項３の何れか１項に記載のディスクアレイ装置。
【請求項５】
前記制御手段は、
前記複数のノードにネットワーク経由で接続される外部装置から送信される電源制御情報に基づき、前記それぞれのノードの電源制御を行うことを特徴とする請求項１に記載のディスクアレイ装置。
【請求項６】
前記制御手段は、
前記通電が開始された後、前記基本ノードに実装された電源スイッチの電源投入操作入力を待って前記ディスクアレイ装置本体への装置電源投入処理を行う第１のモードと、前記複数のノードにネットワーク経由で接続される外部装置の設定により、前記通電の開始と連動して前記ディスクアレイ装置への装置電源投入処理を実行する第２のモードとを切り替えて制御することを特徴とする請求項１または請求項５に記載のディスクアレイ装置。
【請求項７】
前記制御手段は、
既に装置電源投入済みのディスクアレイ装置に対して増設ノードを接続する際、前記ノード間通信により他の拡張ノードとの接続状態を判定し、接続状態にある拡張ノードから電源制御情報を受信して前記増設ノードのディスクアレイ装置への装置電源の投入処理を実行することを特徴とする請求項１から請求項３の何れか１項に記載のディスクアレイ装置。
【請求項８】
前記制御手段は、
電源スイッチによる電源切断操作入力がなされた場合、前記ディスクアレイ装置本体に対し電源切断要求を発行し、前記ディスクアレイ装置本体のキャッシュメモリのデータの退避が完了したことを認識して拡張ノードにノード間通信により電源切断許可通知を送信し、電源切断許可通知を受信した前記拡張ノードから送信される電源切断許可通知の受信応答を取得して自身の装置電源の切断処理を実行することを特徴とする請求項１から請求項３の何れか１項に記載のディスクアレイ装置
【請求項９】
前記制御手段は、
前記各ノードに実装されるスイッチモジュールが冗長構成を採る場合、前記冗長スイッチモジュール間を接続する共通信号線を介して行われる通信により前記拡張ノードの接続状態の整合性を判定し、当該整合性の判定にしたがい接続が確立した拡張ノードに対して前記電源制御情報を送信することを特徴とする請求項１から請求項８の何れか１項に記載のディスクアレイ装置。
【請求項１０】
複数のノードで構成されるディスクアレイ装置における電源制御方法であって、
前記各ノードを接続する共通信号線を介して行われるノード間通信により、前記ノード間の通信確立を検知する第１のステップと、
前記ノードの１つに設定された電源制御情報に基づき前記拡張ノードの電源制御を行う第２のステップと、
を有することを特徴とするディスクアレイ装置における電源制御方法。
【請求項１１】
前記第２のステップは、
スイッチ操作に基づく構成情報の設定により、基本ノード、もしくは拡張ノードを割り付けるサブステップと、
前記ノード間通信により、前記基本ノードと拡張ノードとの間の通信確立を契機に、前記基本ノードに設定された電源制御情報に基づき前記拡張ノードの電源制御を行うサブステップと、
を有することを特徴とする請求項１０に記載のディスクアレイ装置における電源制御方法。
【請求項１２】
前記第２のステップは、
ＡＣ電源の投入を検知して、複数の磁気ディスクが格納されたディスクアレイ、および前記ディスクアレイに格納された磁気ディスクのリードライトを制御するアレイコントーラで構成されたディスクアレイ装置本体を除く、前記電源制御を行うスイッチモジュールに通電を開始するサブステップ、
を有することを特徴とする請求項１０または請求項１１に記載のディスクアレイ装置における電源制御方法。
【請求項１３】
前記第２のステップは、
前記通電が開始されることにより実行される前記ノード間通信により前記拡張ノードとの接続状態を判定し、接続状態にある拡張ノードに対して前記ディスクアレイ装置本体への電源の投入処理実行を指示する電源制御情報を送信するサブステップと、
前記電源制御情報を受信して自身のディスクアレイ装置本体への装置電源投入処理を実行した前記拡張ノードから前記電源制御情報の受信確認情報を取得し、自身のディスクアレイ装置本体への装置電源投入処理を実行するサブステップと、
を有することを特徴とする請求項１０から請求項１２の何れか１項に記載のディスクアレイ装置における電源制御方法。
【請求項１４】
前記第２のステップは、
前記複数のノードにネットワーク経由で接続される外部装置から送信される電源制御情報に基づき、前記それぞれのノードの電源制御を行うサブステップ、
を有することを特徴とする請求項１０に記載のディスクアレイ装置。
【請求項１５】
前記第２のステップは、
前記通電が開始された後、前記基本ノードに実装された電源スイッチの電源投入操作入力を待って前記ディスクアレイ装置本体への装置電源の投入処理を行う第１のモードと、前記複数のノードにネットワーク経由で接続される外部装置の設定により、前記通電の開始と連動して前記ディスクアレイ装置への装置電源投入処理を実行する第２のモードとを切り替えて制御するサブステップ、
を有することを特徴とする請求項１０または請求項１４に記載のディスクアレイ装置における電源制御方法。
【請求項１６】
前記第２のステップは、
既に装置電源投入済みのディスクアレイ装置に対し増設ノードを接続する際、前記ノード間通信により他の拡張ノードとの接続状態を判定するサブステップと、
接続状態にある拡張ノードから電源制御情報を受信して前記増設ノードのディスクアレイ装置本体への装置電源の投入処理を実行するサブテップと、
を有することを特徴とする請求項１１から請求項１３の何れか１項に記載のディスクアレイ装置における電源制御方法。
【請求項１７】
前記第２のステップは、
電源スイッチによる電源切断操作入力がなされた場合、前記ディスクアレイ装置本体に対し電源切断要求を発行するサブステップと、
前記ディスクアレイ装置本体のキャッシュメモリのデータの退避が完了したことを認識して拡張ノードにノード間通信により電源切断許可通知を送信するサブステップと、
電源切断許可通知を受信した前記拡張ノードから送信される電源切断許可通知の受信応答を取得して自身の装置電源の切断処理を実行するサブステップと、
を有することを特徴とする請求項１１から請求項１３の何れか１項に記載のディスクアレイ装置における電源制御方法。
【請求項１８】
前記第２のステップは、
前記各ノードに実装されるスイッチモジュールが冗長構成を採る場合、前記冗長スイッチモジュール間を接続する共通信号線を介して行われる通信により前記拡張ノードの接続状態の整合性を判定するサブステップと、
前記整合性の判定にしたがい接続が確立した拡張ノードに対して前記電源制御情報を送信するサブステップと、
を有することを特徴とする請求項１１から請求項１７の何れか１項に記載のディスクアレイ装置における電源制御方法。
【請求項１９】
複数のノードで構成されるディスクアレイ装置上で実行される電源制御プログラムであって、
前記各ノードを接続する共通信号線を介して行われるノード間通信により、前記ノード間の通信確立を検知する第１の処理と、
前記ノードの１つに設定された電源制御情報に基づき前記拡張ノードの電源制御を行う第２の処理と、
を前記ディスクアレイ装置を構成するコンピュータに実行させることを特徴とする電源制御プログラム。
【請求項２０】
前記第２の処理は、
スイッチ操作に基づく構成情報の設定により、基本ノード、もしくは拡張ノードを割り付け、前記ノード間通信により、前記基本ノードと拡張ノードとの間の通信確立を契機に、前記基本ノードに設定された電源制御情報に基づき前記拡張ノードの電源制御を行う、
ことを特徴とする請求項１９に記載の電源制御プログラム。
【請求項２１】
前記第２の処理は、
ＡＣ電源の投入を検知して、複数の磁気ディスクが格納されたディスクアレイ、および前記ディスクアレイに格納された磁気ディスクのリードライトを制御するアレイコントーラで構成されたディスクアレイ装置本体を除く、前記電源制御を行うスイッチモジュールに通電を開始する、
ことを特徴とする請求項１９または請求項２０に記載の電源制御プログラム。
【請求項２２】
前記第２の処理は、
前記通電が開始されることにより実行される前記ノード間通信により前記拡張ノードとの接続状態を判定し、接続状態にある拡張ノードに対して前記ディスクアレイ装置本体への装置電源投入処理実行を指示する電源制御情報を送信し、
前記電源制御情報を受信して自身のディスクアレイ装置本体への電源投入処理を実行した前記拡張ノードから前記電源制御情報の受信確認情報を取得し、自身のディスクアレイ装置本体への装置電源投入処理を実行する、
ことを特徴とする請求項１９から請求項２１の何れか１項に記載の電源制御プログラム。
【請求項２３】
前記第２の処理は、
前記複数のノードにネットワーク経由で接続される外部装置から送信される電源制御情報に基づき、前記それぞれのノードの電源制御を実行する、
ことを特徴とする請求項１９または請求項２２に記載の電源制御プログラム。
【請求項２４】
前記第２の処理は、
前記通電が開始された後、前記基本ノードに実装された電源スイッチの電源投入操作入力を待って前記ディスクアレイ装置本体への装置電源投入処理を行う第１のモードと、前記複数のノードにネットワーク経由で接続される外部装置の設定により、前記通電の開始と連動して前記ディスクアレイ装置への装置電源投入処理を実行する第２のモードとを切り替えて制御する、
ことを特徴とする請求項１９または請求項２３に記載の電源制御プログラム。
【請求項２５】
前記第２の処理は、
既に装置電源投入済みのディスクアレイ装置に対して増設ノードを接続する際、前記ノード間通信により他の拡張ノードとの接続状態を判定し、接続状態にある拡張ノードから電源制御情報を受信して前記増設ノードのディスクアレイ装置本体への装置電源の投入処理を実行する、
ことを特徴とする請求項１９から請求項２１の何れか１項に記載の電源制御プログラム。
【請求項２６】
前記第２の処理は、
電源スイッチによる電源切断操作入力がなされた場合、前記ディスクアレイ装置本体に対し電源切断要求を発行し、前記ディスクアレイ装置本体のキャッシュメモリのデータの退避が完了したことを認識して拡張ノードにノード間通信により電源切断許可通知を送信し、電源切断許可通知を受信した前記拡張ノードから送信される電源切断許可通知の受信応答を取得して自身の装置電源の切断処理を実行する、
ことを特徴とする請求項１９から請求項２１の何れか１項に記載の電源制御プログラム。
【請求項２７】
前記第２の処理は、
前記各ノードに実装されるスイッチモジュールが冗長構成を採る場合、前記冗長スイッチモジュール間を接続する共通信号線を介して行われる通信により前記拡張ノードの接続状態の整合性を判定し、前記整合性の判定にしたがい接続が確立した拡張ノードに対して前記電源制御情報を送信する、
ことを特徴とする請求項１９から請求項２６の何れか１項に記載の電源制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のノードにより構成されたディスクアレイ装置、および同装置における電源制御方法ならびに電源制御プログラムに関するものである。
【背景技術】
【０００２】
ディスクアレイ装置は、通常、複数の磁気ディスクが格納されるディスクアレイと、このディスクアレイに格納された磁気ディスクのリードライトを行うアレイコントローラと、により構成される。しかしながらこの装置構成によれば、ネットワークを介してホストから参照されるストレージシステムとして利用する場合の拡張性に乏しい欠点があるため、最近では、アレイコントローラとディスクアレイとを纏めてノード単位で管理し、これらノードを複数接続することで拡張性に優れたディスクアレイ装置が頻繁に使用されるようになった。
【０００３】
上記した複数のノードにより構成されるディスクアレイ装置では、ノード間の立ち上げ順序によっては初期化処理が正常に行われず、起動できなくなってしまうことが多々ある。また、電源切断時にも同様、切断の順序によっては正常に停止できない場合がある。すなわち、複数のノードにより構成されたディスクアレイ装置によれば、電源投入や切断の順序によるタイミングの違いによりディスクアレイ装置が正常に起動し、あるいは停止できなくなることがあり、信頼性の面で、あるいはデータの保全性の面で課題があった。
【０００４】
このため、例えば、特開２００２−１０８５７３号公報（特許文献１）に開示されているように、ディスクエラー発生時、本来正常なディスクをも縮退運転させてしまうことを回避するために、異常発生ディスクへの電源投入、切断、再投入を行うディスクアレイ装置が知られている。また、特開２００７−１４１２６４号公報（特許文献２）に開示されているように、ホスト装置とストレージ装置との間にスイッチ装置を設け、ストレージ装置の構成を管理する管理情報にしたがいストレージの拡張性および信頼性の向上を実現するストレージシステムも知られている。
【特許文献１】特開２００２−１０８５７３号公報
【特許文献２】特開２００７−１４１２６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に開示された技術は、ディスクドライブ単体としての電源制御に関するものであり、複数のノードにより構成されたディスクアレイ装置において、アレイコントローラを含む全ての構成の電源制御を行うものではない。
【０００６】
また、特許文献２に開示された技術によれば、スイッチ装置は、イーサネット（登録商標）のハブの役割を担い、ホストインターフェースとディスクアレイを有する上位アダプタとの間に介挿されるものであり、上記した電源投入や切断の順序によるタイミングの違いにより、正常に起動し、もしくは停止しなくなることがある複数のノードにより構成されたディスクアレイ装置の課題を解決するものではない。
【０００７】
（発明の目的）
本発明の目的は、複数のノードにより構成されたディスクアレイ装置において、起動、停止時の信頼性の向上をはかったディスクアレイ装置、ディスクアレイ装置における電源制御方法及び電源制御プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
本発明のディスクアレイ装置によれば、複数のノードにより構成されたディスクアレイ装置であって、ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行う制御手段を含む。
【０００９】
本発明のディスクアレイ装置における電源制御方法によれば、複数のノードで構成されるディスクアレイ装置における電源制御方法であって、各ノードを接続する共通信号線を介して行われるノード間通信により、ノード間の通信確立を検知する第１のステップと、ノードの１つに設定された電源制御情報に基づき拡張ノードの電源制御を行う第２のステップとを含む。
【００１０】
本発明の電源制御プログラムによれば、複数のノードで構成されるディスクアレイ装置上で実行される電源制御プログラムであって、各ノードを接続する共通信号線を介して行われるノード間通信により、ノード間の通信確立を検知する第１の処理と、ノードの１つに設定された電源制御情報に基づき拡張ノードの電源制御を行う第２の処理と、をディスクアレイ装置を構成するコンピュータに実行させる。
【発明の効果】
【００１１】
本発明によれば、複数のノードにより構成されたディスクアレイ装置において、起動、停止時の信頼性の向上をはかったディスクアレイ装置を提供することができる。
【００１２】
その理由は、制御手段が、ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行うことにより、ノード間で同期をとって起動、停止させることができるためである。
【発明を実施するための最良の形態】
【００１３】
（第１の実施の形態）
次に、本発明の第１の実施の形態について図面を参照しながら詳細に説明する。
【００１４】
（第１の実施の形態の構成）
図１、図２を用いて、本実施の形態によるディスクアレイ装置の構成を説明する。
【００１５】
図１は、本実施の形態による複数のノードにより構成されたディスクアレイ装置の構成を示すブロック図、図２は、本実施の形態によるディスクアレイ装置の詳細な内部構成を示すブロック図である。
【００１６】
図１に示されるように、本実施の形態によるディスクアレイ装置は、例えば、ファイバチャネルを介し、複数のホスト１５と、基本ノードとして割り当てられたディスクアレイ装置１０と、拡張ノードとして割り当てられたディスクアレイ装置１２とがネットワーク１９により接続されたＳＡＮ（Storage Are Network）のシステム構成を採り、複数ホスト１５間でデータを統合し、あるいは共有する意図で用いられる。
【００１７】
ここでは、ファイバチャネルを含めた伝送路を抽象化してリンクと呼び、このリンクに接続されたディスクアレイ装置１０、１２を抽象化してノードと呼ぶことにする。
【００１８】
基本ノードのディスクアレイ装置１は、アレイコントローラ４０と、ディスクアレイ５０で構成されるディスクアレイ装置本体に、スイッチモジュール１１が付加される。
【００１９】
アレイコントローラ４０は、ネットワーク１９を介して接続された複数のホスト１５とのインターフェースを担い、ホスト１５から発行されるコマンドにしたがいディスクアレイ５０に格納された磁気ディスクのリードライト制御を行う。
【００２０】
スイッチモジュール１１は、スイッチモジュール間接続ケーブル１４（共通信号線）を介して接続される拡張ノードのディスクアレイ装置１２に実装されたスイッチモジュール１３との間で行われるノード間通信により、電源の投入や切断の電源制御を行う。
【００２１】
なお、ネットワーク１９には、運用管理サーバ１６が接続されている。運用管理サーバ１６は、ここでは後述する外部装置として、電源スイッチによる電源投入操作入力の代わりに電源制御情報（電源投入・電源切断）の設定入力を行う。
【００２２】
また、拡張ノードのディスクアレイ装置１２も上記した基本ノードのディスクアレイ装置１０同様、アレイコントローラ４０とディスクアレイ５０から構成されるディスクアレイ装置本体と、スイッチモジュール１３とにより構成される。
【００２３】
拡張ノードのディスクアレイ装置１２に実装されるスイッチモジュール１３は、スイッチモジュール間接続ケーブル１４を介して基本ノードのディスクアレイ装置１０のスイッチモジュール１１に接続される。
【００２４】
なお、本実施の形態によるディスクアレイ装置には、必要に応じて増設ノードとしてのディスクアレイ装置１７が接続される場合もある。
【００２５】
増設ノードのディスクアレイ装置１７も上記した基本ノードのディスクアレイ装置１０同様、アレイコントローラ４０とディスクアレイ５０から構成されるディスクアレイ装置本体と、スイッチモジュール１８とにより構成される。増設ノードのディスクアレイ装置１７に実装されたスイッチモジュール１８は、スイッチモジュール間接続ケーブル１４を介して基本ノードのディスクアレイ装置１０のスイッチモジュール１１、ならびに増設ノードのディスクアレイ装置１２のスイッチモジュール１３に接続される。
【００２６】
基本ノードのディスクアレイ装置１０の内部構成の詳細が図２に示されている。ディスクアレイ装置１０は、アレイコントローラ４０およびディスクアレイ５０からなるディスクアレイ装置本体と、スイッチモジュール１１とにより構成されることは上記したとおりである。
【００２７】
図２に示されるように、スイッチモジュール１１は、スイッチプロセッサ２０と、他ノード接続制御部２１と、フラッシュＲＯＭ（ＦＲＯＭ２２）と、電源制御部２４と、構成設定スイッチ（ＳＷ２７）と、ＲＡＭ２８と、メモリ２９と、により構成される。
【００２８】
スイッチプロセッサ２０は、スイッチモジュールの制御中枢となる。スイッチプロセッサ２０は、メモリ２９に記録されたプログラムにしたがいＲＡＭ２８を使用して他ノード接続制御部２１を制御し、スイッチモジュール間接続ケーブル１４を介して他ノードスイッチモジュール１３との間でノード間通信を行う。
【００２９】
スイッチプロセッサ２０はまた、電源制御部２４を介して接続される電源スイッチ２５によるディスクアレイ装置本体への装置電源の投入もしくは切断操作入力を取り込み、更にはＡＣ電源３０投入による通電開始を契機に電源制御部１３２を制御し、ディスクアレイ装置本体への装置電源の投入、もしくは切断のための電源制御を行う。
【００３０】
スイッチプロセッサ２０は、上記したスイッチモジュール間接続ケーブル１４を介して行われるノード間通信により、ノードの一つ（基本ノードのディスクアレイ装置１０）に設定された電源制御情報に基づき、他のノード（拡張ノードのディスクアレイ装置１２）の電源制御を行う制御手段として機能する。
【００３１】
スイッチプロセッサ２０はまた、内部通信バス２６により後述するアレイコントローラ４０に実装されるマイクロプロセッサ４３との間でプロセッサ間通信を行い、双方向の情報交換を行う。
【００３２】
なお、構成設定スイッチ（ＳＷ２７）は、システム管理者による設定操作により、スイップロセッサ２０による制御の下でディスクアレイ装置１０を基本ノードとして割り当て、もしくは拡張ノードとして割り当てることができる。なお、構成情報の設定は、ディスクアレイ装置１０、ディスクアレイ装置１２に対してＡＣ電源３０の供給開始前に行うものとし、ここで設定された構成情報は、ＦＲＯＭ２２に記憶されるものとする。
【００３３】
なお、上記したスイッチモジュール１１は、高い信頼性を得るために冗長に実装される。冗長実装時、他の冗長スイッチモジュールとの間で接続される冗長スイッチモジュール間接続ケーブル３１（共通信号線）を介して冗長スイッチモジュール間通信を行うことにより情報のやりとりを行う。ここでやりとりされる情報は、他ノードの接続状況と電源制御情報（電源投入・電源切断）である。
【００３４】
アレイコントーラ４０は、ホストインターフェース４１と、キャッシュメモリ４２と、マイクロプロセッサ４３と、上位装置制御部４４と、磁気ディスク制御部４５と、フラッシュＲＯＭ（ＦＲＯＭ４６）と、ＲＡＭ４７と、メモリ４８と、により構成される。
【００３５】
ホストインターフェース４１は、ネットワーク１９経由で接続されるホスト１５とのインターフェースを担う。キャッシュメモリ４２には、ディスクアレイ５０に格納された磁気ディスク上の使用頻度の高いデータが記憶される。
【００３６】
マイクロプロセッサ４３は、アレイコントローラ４０の制御中枢となり、ホスト１５から到来するリードライトコマンドを、メモリ４８に記録されたプログラムにしたがいＲＡＭ４７を使用して実行する。マイクロプロセッサ４３が、ホスト１５から、例えば、ライトコマンドを受信した場合、上位装置制御部４４は、キャッシュメモリ４２の空き領域の有無を判定し、未使用のキャッシュページが無い場合は、キャッシュメモリ４２に記憶されているデータを掃き出し、磁気ディスク制御部４５経由でディスクアレイ５０の磁気ディスクに書き込み未使用のキャッシュページを作成する。そして未使用のキャッシュページを獲得し、ホスト１５から受信したデータをキャッシュメモリ４４に書き込む。
【００３７】
上記の書き込みが完了したら上位装置制御部４４は、キャッシュページを開放してホストインターフェース４１を介してホスト１５に応答を送信する。磁気ディスク制御部４５は、ホスト１５からのライトコマンド実行とは非同期にキャッシュメモリ４４上のディスク未書き込みデータをディスクアレイ５０の磁気ディスクに書き込む。
【００３８】
上位装置制御部４４は、キャッシュメモリ４２に未使用のキャッシュページがある場合未使用のキャッシュページを獲得し、ホスト１５から受信したデータをキャッシュメモリ４４に書き込む。書き込みが完了したらキャッシュページを開放してホストインターフェース４１を介してホスト１５に終了応答を送信する。
【００３９】
なお、上記説明は、基本ノードとして設定されたディスクアレイ装置１０の内部構成のみ示したが、拡張ノードとして設定されたディスクアレイ装置１２も同様の構成を有するものとする。
【００４０】
（第１の実施の形態の動作）
次に、上記のように構成される本実施の形態によるディスクアレイ装置の動作について図３に示すフローチャートを用いて説明する。ここでは、基本ノードのディスクアレイ装置１０のスイッチプロセッサ２０による電源投入処理が示されている。
【００４１】
図３のフローチャートに示されるように、本実施の形態によるディスクアレイ装置にＡＣ電源３０が投入されると、スイッチモジュール１１、１３の電源制御部２４はこれを検知し（ステップＳ３０１“Ｙｅｓ”）、スイッチモジュール１１、１３にのみ通電を開始する（ステップＳ３０２）。このとき、各ノードのディスクアレイ装置１０、２０に実装されるアレイコントローラ４０とディスクアレイ５０からなるディスクアレイ装置本体には通電されない。
【００４２】
各ノードのディスクアレイ装置１０、１２のスイッチモジュール１１、１３への通電が開始されることによりそれぞれに実装されるスイッチプロセッサ２０が起動すると、スイッチプロセッサ２０は、他ノード接続制御部２１を制御して他ノードスイッチモジュール１３との間でノード間通信が可能か否かを判定する（ステップＳ３０３）。
【００４３】
このとき、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３は、上記したノード間通信の可否に関わらず、基本ノードのディスクアレイ装置１０のスイッチモジュール１１から送信される電源制御情報の待ち状態に入り、基本ノードのディスクアレイ装置１０のスイッチモジュール１１からの電源制御情報（電源投入）の受信なしには電源制御を行うことはできない。
【００４４】
各ノードのディスクアレイ装置１０、１２に実装されるスイッチモジュール１１、１３は、高い信頼性を得るために冗長に実装されることは上記したとおりである。冗長実装時、スイッチモジュール１１、１３は、それぞれ冗長スイッチモジュール接続ケーブル３１を介して冗長スイッチモジュール間通信を行い情報のやりとりを行う。ここでやりとりされる情報は、他ノードの接続状況と電源制御情報（電源投入・電源切断）である。ここでは、電源スイッチ２５の電源投入操作入力により、以下に説明するディスクアレイ装置本体への装置電源投入処理が開始される。
【００４５】
なお、電源スイッチ２５は、全てのノードに実装されるが、基本ノードのディスクアレイ装置１０に実装される電源スイッチ２５の操作のみを電源制御のために有効な情報として用い、拡張ノードのディスクアレイ装置１２に実装された電源スイッチ２５の操作は電源制御情報としては無効として扱う。
【００４６】
基本ノードのディスクアレイ装置１０のスイッチモジュール１１の電源制御部２４に電源スイッチ２５による電源投入操作入力情報（電源投入）が入力されると（ステップＳ３０４“Ｙｅｓ”）、スイッチプロセッサ２０は、冗長スイッチモジュール間通信接続ケーブル３１を介して冗長スイッチモジュール間通信により他ノードの接続状況と電源制御情報（電源投入・電源切断）とを取得する（ステップＳ３０５）。冗長スイッチモジュール間で拡張ノードの接続数が異なる場合、スイッチプロセッサ２０は、少ない接続数をディスクアレイ装置としての接続数と判定する。また、電源制御情報（電源投入・電源切断）が異なる場合、スイッチプロセッサ２０は、電源投入と判定する（ステップＳ３０６）。
【００４７】
上記判定により、基本ノードのディスクアレイ装置１０のスイッチモジュール１１の拡張ノード接続数と電源制御情報（電源投入）が決定すると、スイッチプロセッサ２０は、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３へ、他ノード接続制御部２１、スイッチモジュール間接続ケーブル１４を介したノード間通信により電源投入を示す電源制御情報を送信する（ステップＳ３０７）。
【００４８】
拡張ノードのディスクアレイ装置１２のスイッチモジュール１３は、この電源制御情報を受信すると、ノード間通信により受信確認情報を基本ノードのディスクアレイ装置１０のスイッチモジュール１１へ送信する。拡張ノードのディスクアレイ装置１２のスイッチモジュール１３は、上記の受信確認情報を送信できない場合、自身のディスクアレイ装置本体への装置電源の投入は開始せず、受信確認情報を送信できた時点で自身のディスクアレイ装置本体への装置電源の投入処理を開始する。
【００４９】
一方、基本ノードのディスクアレイ装置１０のスイッチモジュール１１は、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３からノード間通信により受信確認情報を取得して（ステップＳ３０８“Ｙｅｓ”）、はじめて自身のディスクアレイ装置本体への装置電源投入処理を開始することができる（ステップＳ３０９）。
【００５０】
（第１の実施の形態の効果）
以上説明したように、本実施の形態によれば、ディスクアレイ装置の起動時に、複数ノード間で同期を取りながら電源投入を行うことで、起動時の初期化処理を正常に実施することができる。
【００５１】
その理由は、基本ノードのディスクアレイ装置１０に実装されたスイッチモジュール１１が、ＡＣ電源の投入により通電が開始されたことを契機に実行されるノード間通信により拡張ノードとの接続状態を判定し、電源スイッチ２５による電源投入操作入力を待って接続状態にある拡張ノードに対してディスクアレイ装置本体への電源の投入処理実行を指示する電源制御情報を送信し、当該電源制御情報を受信して自身のディスクアレイ装置本体への電源投入処理を実行した拡張ノードから電源制御情報の受信確認情報を取得し、自身のディスクアレイ装置本体への電源の投入処理を実行するからである。このため、複数のノードにより構成されたディスクアレイ装置において、電源投入によるタイミングの違いにより正常に起動しなくなる課題を解決することができる。
【００５２】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。
【００５３】
上記した第１の実施の形態によるディスクアレイ装置は、ＡＣ電源投入後に、電源スイッチ２５による電源投入操作入力を待って装置電源の投入処理を行うものである。
【００５４】
ところが、運用の形態によっては装置電源投入の際に電源スイッチ２５を常に操作できない場合もある。このような場合、運用管理サーバ１６や不図示の保守端末により、ＡＣ電源投入と連動して装置電源の投入も実施するように設定すれば、同じく対応が可能である。この場合、設定情報は、冗長スイッチモジュール間接続ケーブル３１を介した冗長スイッチモジュール間通信を使用し、冗長スイッチモジュール間で同様の設定情報をＦＲＯＭ１３４に書込むことになる。
【００５５】
（第２の実施の形態の動作）
以下に、ＡＣ電源投入と連動して装置電源を投入するディスクアレイ装置を第２の実施の形態とし、図４に示すフローチャートを用いてその処理手順について詳細に説明する。
【００５６】
以下に説明する第２の実施の形態によるディスクアレイ装置の構成は、上記した第１の実施の形態によるディスクアレイ装置の構成と同様であるため重複を回避する意味でここでの説明を省略する。
【００５７】
第２の実施の形態２によるディスクアレイ装置においても上記した第１の実施の形態同様、ＡＣ電源投入前に、各ノードのスイッチモジュール１１、１３に実装される構成設定スイッチ（ＳＷ２７）により、ディスクアレイ装置１０、１２毎に、基本ノード、もしくは拡張ノードの構成が予め設定されているものとする。
【００５８】
図４のフローチャートに示されるように、本実施の形態にるディスクアレイ装置は、ＡＣ電源の投入が行われると（ステップＳ４０１“Ｙｅｓ”）、電源制御部２４による制御の下、各ノードのスイッチモジュール１１、１３にのみ通電が開始され（ステップＳ４０２）、このことによりスイッチモジュール１１、１３に実装されたそれぞれのスイッチプロセッサ２０が動作する。
【００５９】
このとき、基本ノードのディスクアレイ装置１０のスイッチモジュール１１に実装されたスイッチプロセッサ２０は、ＦＲＯＭ２２に予め設定済みの電源制御情報を読み出し（ステップＳ４０３）、冗長スイッチモジュール間接続ケーブル３１を用いた冗長スイッチモジュール間通信により、他系冗長スイッチモジュールのＦＲＯＭの設定情報との整合性判定を行う（ステップＳ４０４）。スイッチプロセッサ２０は、ＡＣ電源投入時、ＦＲＯＭ２２に装置電源投入を示す電源制御情報が冗長スイッチモジュールの何れかで設定されていた場合に（ステップＳ４０５“Ｙｅｓ”）、以下に説明する電源投入処理の実行を開始する。
【００６０】
すなわち、スイッチプロセッサ２０は、他ノード接続制御部２１を制御して他ノードスイッチモジュール１３との間でノード間通信が可能か否かを判定する（ステップＳ４０６）。このとき、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３は、上記したノード間通信の可否に関わらず、基本ノードのディスクアレイ装置１０のスイッチモジュール１１からの電源制御情報の待ち状態に入り、基本ノードのディスクアレイ装置１０のスイッチモジュール１１からの電源制御情報（電源投入）なしには電源制御は行わない。
【００６１】
ところで、スイッチモジュール１１、１３は、高い信頼性を得るために冗長に実装されることは上記したとおりである。冗長実装時、スイッチモジュール１１、１３内の冗長スイッチモジュールは、冗長スイッチモジュール接続ケーブル３１を介して冗長スイッチモジュール間通信を行い情報のやりとりを行う（ステップＳ４０７）。
【００６２】
ここでやりとりされる情報は、他ノードの接続状況である。スイッチプロセッサ２０は、冗長スイッチモジュール間で拡張ノードの接続数が異なる場合は、少ない接続数をディスクアレイ装置としての接続数と判定する（ステップＳ４０８）。
【００６３】
上記判定により、基本ノードのスイッチモジュール１１の拡張ノード接続数が決定すると、スイッチプロセッサ２０は、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３へ、先にＦＲＯＭ２２から読み出した電源投入を示す電源制御情報を送信する（ステップＳ４０９）。
【００６４】
拡張ノードのディスクアレイ装置１２のスイッチモジュール１３（のスイッチプロセッサ２０）は、この電源制御情報を受信すると、ノード間通信により受信確認情報を基本ノードのディスクアレイ装置１０のスイッチモジュール１１へ送信する。受信確認情報を送信できない場合、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３（のスイッチプロセッサ２０）は、拡張ノードとしての自身のディスクアレイ装置本体への装置電源の投入は開始せず、受信確認情報を送信できた時点で自身のディスクアレイ装置本体への装置電源の投入処理を開始する。
【００６５】
一方、基本ノードのディスクアレイ装置１０のスイッチモジュール１１は、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３から受信確認情報を取得して（ステップＳ４１０“Ｙｅｓ”）はじめて自身のディスクアレイ装置本体への装置電源投入処理を開始することができる（ステップＳ４１１）。
【００６６】
（第２の実施の形態の効果）
以上説明したように、本実施の形態によれば、起動時、ＡＣ電源の供給に連動して複数ノード間で同期を取りながら装置電源の投入を行うことができる。
【００６７】
その理由は、基本ノードのディスクアレイ装置１０のスイッチモジュール１１に実装されたスイッチプロセッサ２０が、ＡＣ電源の投入により通電が開始されることにより実行されるノード間通信により拡張ノードとの接続状態を判定し、接続状態にある拡張ノードに対してディスクアレイ装置本体への電源の投入処理実行を指示する電源制御情報を送信し、電源制御情報を受信して自身のディスクアレイ装置本体への電源投入処理を実行した拡張ノードから電源制御情報の受信確認情報を取得し、自身のディスクアレイ装置本体への電源の投入処理を実行するからである。したがって、複数のノードにより構成されるディスクアレイ装置において、電源投入によるタイミングの違いにより正常に起動しなくなる課題を解決することができる。
【００６８】
なお、本実施の形態によれば、外部装置としての運用管理サーバ１８、もしくは不図示の保守端末が、ＡＣ電源投入時に装置電源投入も同時に実施するように設定することで電源スイッチ２５による電源投入操作入力なしにＡＣ電源投入と連動して装置電源の投入処理を実行するものとして説明したが、スイッチプロセッサ２０は、この装置電源投入モード（第２のモード）と、第１の実施の形態で説明したように、基本ノードのディスクアレイ装置１０のスイッチモジュール１１に実装された電源スイッチ２５の電源投入操作入力を待ってディスクアレイ装置本体への電源の投入処理を行う装置電源投入モード（第１のモード）と、を切り替え制御することで、複数のノードにより構成されるディスクアレイ装置の運用の形態に沿った柔軟な電源制御が可能になる。
【００６９】
（第３の実施の形態）
次に、本発明の第３の実施の形態について説明する。
【００７０】
以下に説明する第３の実施の形態によるディスクアレイ装置の構成は、上記した第１、第２の実施の形態によるディスクアレイ装置の構成と同様であるため重複を回避する意味で説明を省略する。
【００７１】
（第３の実施の形態の動作）
以下、図５に示すフローチャートを参照しながら、既に、装置電源投入済みのディスクアレイ装置に対してノードを増設する場合の処理について説明する。ここでは増設するノードは拡張ノードに限定されるものとし、増設されたノードのディスクアレイ装置１７に実装されたスイッチモジュール１８の処理手順を示す。
【００７２】
まず、本実施の形態のディスクアレイ装置にＡＣ電源が投入される前に、システム管理者は、増設ノードのディスクアレイ装置１７のスイッチモジュール１８に実装された構成設定スイッチ（ＳＷ２７）を操作することにより構成情報の設定入力を行い、増設するディスクアレイ装置１７を拡張ノードに設定する。そしてそのディスクアレイ装置１７のスイッチモジュール１８をスイッチモジュール間接続ケーブル１４に接続してＡＣ電源を投入する。
【００７３】
図５のフローチャートに示されるように、ＡＣ電源の投入が検知され通電が開始されると（ステップＳ５０１“Ｙｅｓ”）、増設ノードを含む拡張ノードのディスクアレイ装置１２、１７に実装されたスイッチモジュール１３、１８のみ通電され、スイッチモジュール１８に実装されたスイッチプロセッサ２０が動作する。このときスイッチプロセッサ２０は、他ノード接続制御部２１を制御し、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３との間でノード間通信が可能か否かを判定する（ステップＳ５０２）。
【００７４】
ここで、拡張ノードのディスクアレイ装置１２と通信が可能と判定された場合（ステップＳ５０３“Ｙｅｓ”）、増設ノードのディスクアレイ装置１７のスイッチモジュール１８（スイッチプロセッサ２０）は、スイッチモジュール間接続ケーブル１４を介したノード間通信により拡張ノードのディスクアレイ装置１２のスイッチモジュール１３から電源制御情報を取得する（ステップＳ５０４）。
【００７５】
上記のノード間通信により電源制御情報を取得した後、増設ノードのディスクアレイ装置１７のスイッチモジュール１８（スイッチプロセッサ２０）は、冗長スイッチモジュール間接続ケーブル３１を介して冗長スイッチモジュール間通信を行い、情報交換を行う（ステップＳ５０５）。ここで交換される情報は電源制御情報である。スイッチプロセッサ２０は、冗長スイッチモジュール間で電源制御情報が電源投入を示していた場合にのみ（ステップＳ５０６“Ｙｅｓ”）、自身の装置電源の電源投入処理を開始する（ステップＳ５０７）。
【００７６】
（第３の実施の形態の効果）
以上説明のように本実施の形態によれば、稼働中ノードの電源投入状態に沿った電源投入を行うことができ、複数のノードにより構成されたディスクアレイ装置において、電源投入によるタイミングの違いにより正常に起動しなくなる課題を解決することができる。
【００７７】
その理由は、増設ノードのディスクアレイ装置１７のスイッチモジュール１８（スイッチプロセッサ２０）が、ＡＣ電源の投入により通電が開始されることにより実行されるノード間通信により他の拡張ノードとの接続状態を判定し、接続状態にある拡張ノードから電源制御情報を受信して自身のディスクアレイ装置本体への電源の投入処理を実行するからである。
【００７８】
（第４の実施の形態）
次に、本発明の第４の実施の形態について説明する。
【００７９】
以下に説明する第４の実施の形態によるディスクアレイ装置の構成は、上記した第１、第２、第３の実施の形態によるディスクアレイ装置の構成と同様であるため、ここでは重複を回避する意味で説明を省略する。
【００８０】
（第４の実施の形態の動作）
以下、図６に示すフローチャートを参照しながら、基本ノードのディスクアレイ装置１０に実装された電源スイッチ２５により電源切断操作入力があった場合の電源切断処理について説明する。ここでは電源制御情報は電源投入状態にあることが前提条件である。
【００８１】
図６のフローチャートに示されるように、基本ノードのディスクアレイ装置１０のスイッチモジュール１１に実装されたスイッチプロセッサ２０は、電源スイッチ２５の操作により、以下に説明する電源切断処理の実行を開始する。
【００８２】
すなわち、電源スイッチ２５による電源切断操作入力を受けて電源切断指示を認識したスイッチプロセッサ１３０は（ステップＳ６０１“Ｙｅｓ”）、電源切要求を生成して内部通信バス２６を介しアレイコントローラ４０のマイクロプロセッサ４３とプロセッサ間通信を行い、アレイコントローラ４０のマイクロプロセッサ４３に対して電源切断要求を発行する（ステップＳ６０２）。
【００８３】
電源切断要求を受信したアレイコントローラ４０のマイクロプロセッサ４３は、ホストインターフェース４１の処理を停止し、キャッシュメモリ４２上のデータを、磁気ディスク制御部４５によりディスクアレイ５０に格納された磁気ディスクに書込む処理を開始する。このとき、スイッチモジュール１１に実装されたスイッチプロセッサ２０は、内部通信バス２６を介したプロセッサ間通信により、キャッシュメモリ４２上のデータの磁気ディスクへの退避（書き込み）が完了するまで定期的に確認する。そして、この書込み完了を認識した場合（ステップＳ４０３“Ｙｅｓ”）、スイッチプロセッサ２０は、拡張ノードのスイッチモジュール１３に対して電源切断許可通知を、スイッチモジュール間接続ケーブル１４を介したノード間通信を用いて送信する（ステップＳ６０４）。
【００８４】
拡張ノードのディスクアレイ装置１１のスイッチモジュール１３（スイッチプロセッサ２０）は、プロセッサ間通信により、自身のキャッシュメモリ４２上のデータをディスクアレイ５０に格納された磁気ディスクへの退避（書き込み）を認識して電源切断許可通知に対する受信確認情報を通知した時点で自身の装置電源の切断処理を実行する。
【００８５】
一方、基本ノードのディスクアレイ装置１０のスイッチモジュール１１（スイッチプロセッサ２０）は、拡張ノードのディスクアレイ装置１２のスイッチモジュール１３（スイッチプロセッサ２０）から電源切断許可通知に対する応答である受信確認情報の到来を待って（ステップＳ６０５“Ｙｅｓ”）、自身のディスクアレイ装置本体に対する装置電源の切断処理を実行する（ステップＳ６０６）。
【００８６】
（第４の実施の形態の効果）
以上説明のように本実施の形態によれば、電源立ち下げ時に複数ノード間で同期を取りながら電源切断を行うことができる。
【００８７】
その理由は、基本ノードのディスクアレイ装置１０のスイッチモジュール１１が、電源スイッチ２５により電源切断操作入力がなされた場合にアレイコントローラ４０に対し電源切断要求を発行し、アレイコントローラ４０が有するキャッシュメモリ４２のデータの退避が完了したことを認識して拡張ノードのディスクアレイ装置１２のスイッチモジュール１３にノード間通信により電源切断許可通知を送信し、電源切断許可通知を受信した拡張ノードのディスクアレイ装置１２のスイッチモジュール１３から送信される電源切断許可通知の受信確認情報を取得して自身の装置電源の切断処理を実行するためである。このように、装置電源切断時にノード間で同期をとって電源切断処理を行うことにより、データの破壊が無く、より安全な電源切断を行うことができる。
【００８８】
なお、複数のノードにより構成されたディスクアレイ装置の一括活性化の同期処理においても上記した電源切断処理を装置一括活性化要求に代替することで同様に対応が可能であり、この場合、電源の投入切断制御のみならず、装置一括の再起動処理も安全に行うことができる。
【００８９】
なお、図１、図２に示す、スイッチモジュール１１、１３、１８が有する機能は、全てをソフトウェアによって実現しても、あるいはその少なくとも一部をハードウェアで実現してもよい。例えば、スイッチプロセッサ２０が、ノードのそれぞれを接続する共通信号線を介して行われるノード間通信により、ノードの一つに設定された電源制御情報に基づき他のノードの電源制御を行うデータ処理は、１または複数のプログラムによりコンピュータ上で実現してもよく、また、その少なくとも一部をハードウェアで実現してもよい。
【００９０】
また、上記した本実施の形態によれば、基本ノードに実装された電源スイッチ２５により、電源投入、切断処理を行う構成を主に説明したが、基本ノードに実装された電源スイッチ２５によらず、ネットワーク１９にスイッチモジュール１１と運用管理サーバ１６（外部装置）とを接続し、運用管理サーバ１６から発行される命令（電源制御情報）により、各ノードのディスクアレイ装置１０、１２、１７の電源投入や切断等の電源制御を実行する構成としてもよい。
【００９１】
この場合、運用管理サーバ１６によるディスクアレイ装置の遠隔操作による電源制御が可能となり、使い勝手が向上し、柔軟性の高いシステム構築が可能になる。
【００９２】
以上、好ましい複数の実施の形態をあげて本発明を説明したが、本発明は必ずしも上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図面の簡単な説明】
【００９３】
【図１】本発明の第１の実施の形態による複数のノードにより構成されたディスクアレイ装置の構成を示すブロック図である。
【図２】本発明の第１の実施の形態によるディスクアレイ装置の内部構成の詳細を示すブロック図である。
【図３】本発明の第１の実施の形態によるディスクアレイ装置の動作を示したフローチャートである。
【図４】本発明の第２の実施の形態によるディスクアレイ装置の動作を示したフローチャートである。
【図５】本発明の第３の実施の形態によるディスクアレイ装置の動作を示したフローチャートである。
【図６】本発明の第４の実施の形態によるディスクアレイ装置の動作を示したフローチャートである。
【符号の説明】
【００９４】
１０：基本ノードのディスクアレイ装置
１１：基本ノードのスイッチモジュール
１２：拡張ノードのディスクアレイ装置
１３：拡張ノードのスイッチモジュール
１４：スイッチモジュール間接続ケーブル
１５：ホスト
１６：運用管理サーバ
１７：増設ノードのディスクアレイ装置
１８：増設ノードのスイッチモジュール
１９：ネットワーク
２０：スイッチプロセッサ
２１：他ノード接続制御部
２２：フラッシュＲＯＭ（ＦＲＯＭ）
２４：電源制御部
２５：電源スイッチ
２６：内部通信バス
２７：構成設定スイッチ（ＳＷ）
２８：ＲＡＭ
２９：メモリ
３０：ＡＣ電源
３１：冗長スイッチモジュール間接続ケーブル
４０：アレイコントローラ
４１：ホストインターフェース
４２：キャッシュメモリ
４３：マイクロプロセッサ
４４：上位装置制御部
４５：磁気ディスク制御部
４６：フラッシュＲＯＭ（ＦＲＯＭ）
４７：ＲＡＭ
４８：メモリ
５０：ディスクアレイ
【図１】
2010157024.tif 000003
【図２】
2010157024.tif 000004
【図３】
2010157024.tif 000005
【図４】
2010157024.tif 000006
【図５】
2010157024.tif 000007
【図６】
2010157024.tif 000008