(57)【要約】【課題】データ送受信の高速化及び信頼性を向上させ得るストレージ装置を提案する。【解決手段】ホスト装置から送信されるデータを格納するディスク装置に接続される複数のエクスパンダと、前記エクスパンダを制御するコントローラ部とを備え、前記コントローラ部は、所定の端末から前記エクスパンダのファームウェアを更新するためのダウンロードデータを受信すると、前記エクスパンダが前記ダウンロードデータをダウンロードした後に当該エクスパンダを初期化する必要があるか否かを判定する判定部と、前記判定部により判定された初期化判定情報を前記端末に送信する送信部と、前記送信部により送信された前記初期化判定情報に基づいて前記端末により決定される前記ファームウェアを更新するタイミングで、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する更新指示部とを備える。【選択図】図１
2010061288.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置から送信されるデータを格納するディスク装置に接続される複数のエクスパンダと、
前記エクスパンダを制御するコントローラ部と
を備え、
前記コントローラ部は、
所定の端末から前記エクスパンダのファームウェアを更新するためのダウンロードデータを受信すると、前記エクスパンダが前記ダウンロードデータをダウンロードした後に当該エクスパンダを初期化する必要があるか否かを判定する判定部と、
前記判定部により判定された初期化判定情報を前記端末に送信する送信部と、
前記送信部により送信された前記初期化判定情報に基づいて前記端末により決定される前記ファームウェアを更新するタイミングで、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する更新指示部と
を備えることを特徴とするストレージ装置。
【請求項２】
前記更新指示部は、
前記判定部により前記エクスパンダを初期化する必要がないと判定されたときであって、前記端末から前記ファームウェアを更新するよう指示された場合には、即時に前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項３】
前記更新指示部は、
前記判定部により前記エクスパンダを初期化する必要があると判定されたときであって、前記端末から即時に前記ファームウェアを更新するよう指示された場合には、即時に前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項４】
前記更新指示部は、
前記判定部により前記エクスパンダを初期化する必要があると判定されたときであって、前記端末から所定の時間に前記ファームウェアを更新するよう指示された場合には、指示された前記時間に、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項５】
前記更新指示部は、
前記判定部により前記エクスパンダを初期化する必要があると判定されたときであって、前記端末から前記エクスパンダが所定の前記データの送受信の頻度以下のときに前記ファームウェアを更新するよう指示された場合には、指示された前記データの送受信の頻度以下のときに、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項６】
前記更新指示部は、
前記判定部により前記エクスパンダを初期化する必要があると判定されたときであって、前記端末から前記エクスパンダに接続された前記ディスク装置の電源を切るときに前記ファームウェアを更新するよう指示された場合には、当該ディスク装置の電源を切るときに、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項７】
前記エクスパンダは、
前記判定部により前記エクスパンダを初期化する必要がないと判定されたときであって、前記ファームウェアを更新した前後で自己のエクスパンダの接続状態に変化がある場合には、前記コントローラ部にその旨を通知する通知部
を備え、
前記コントローラ部は、
前記通知部により接続状態に変化があることが通知された場合には、前記エクスパンダの接続状態を取得して、管理情報を更新する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項８】
ホスト装置から送信されるデータを格納するディスク装置に接続される複数のエクスパンダと、
前記エクスパンダを制御するコントローラ部と
を備え、
所定の端末から前記エクスパンダのファームウェアを更新するためのダウンロードデータを受信すると、前記エクスパンダが前記ダウンロードデータをダウンロードした後に当該エクスパンダを初期化する必要があるか否かを判定する第１のステップと、
前記第１のステップにおいて判定した初期化判定情報を前記端末に送信する第２のステップと、
前記第２のステップにおいて送信した前記初期化判定情報に基づいて前記端末により決定される前記ファームウェアを更新するタイミングで、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する第３のステップと
を備えることを特徴とするファームウェア更新指示方法。
【請求項９】
前記第３のステップでは、
前記第１のステップにおいて前記エクスパンダを初期化する必要がないと判定したときであって、前記端末から前記ファームウェアを更新するよう指示された場合には、即時に前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項８に記載のファームウェア更新指示方法。
【請求項１０】
前記第３のステップでは、
前記第１のステップにおいて前記エクスパンダを初期化する必要があると判定したときであって、前記端末から即時に前記ファームウェアを更新するよう指示された場合には、即時に前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項８に記載のファームウェア更新指示方法。
【請求項１１】
前記第３のステップでは、
前記第１のステップにおいて前記エクスパンダを初期化する必要があると判定したときであって、前記端末から所定の時間に前記ファームウェアを更新するよう指示された場合には、指示された前記時間に、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項８に記載のファームウェア更新指示方法。
【請求項１２】
前記第３のステップでは、
前記第１のステップにおいて前記エクスパンダを初期化する必要があると判定したときであって、前記端末から前記エクスパンダが所定の前記データの送受信の頻度以下のときに前記ファームウェアを更新するよう指示された場合には、指示された前記データの送受信の頻度以下のときに、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項８に記載のファームウェア更新指示方法。
【請求項１３】
前記第３のステップでは、
前記第１のステップにおいて前記エクスパンダを初期化する必要があると判定したときであって、前記端末から前記エクスパンダに接続された前記ディスク装置の電源を切るときに前記ファームウェアを更新するよう指示された場合には、当該ディスク装置の電源を切るときに、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する
ことを特徴とする請求項８に記載のファームウェア更新指示方法。
【請求項１４】
前記第１のステップにおいて前記エクスパンダを初期化する必要がないと判定したときであって、前記ファームウェアを更新した前後で自己のエクスパンダの接続状態に変化がある場合には、前記コントローラ部にその旨を通知する第４のステップと、
前記第４のステップにおいて接続状態に変化があることを通知した場合には、前記エクスパンダの接続状態を取得して、管理情報を更新する第５のステップと
を備えることを特徴とする請求項８に記載のファームウェア更新指示方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置及びファームウェア更新指示方法に関し、例えば、エクスパンダのファームウェアの更新を指示するストレージ装置に適用して好適なものである。
【背景技術】
【０００２】
従来、ストレージ装置のドライブＩ／Ｆ（Interface）であるエクスパンダにおいては、ファームウェアを更新した後に、当該エクスパンダを再起動して初期化する必要がある。
【０００３】
例えば、特許文献１では、ファームウェアの更新による影響を受けないメモリの異なる領域に状態及び構成情報を保存し、ファームウェア更新中に変化する可能性があり、不変を維持する必要がある情報を、ファームウェアの更新により影響を受けないメモリの異なる領域に記憶する。
【０００４】
また、特許文献２では、ホスト装置からファームウェアの更新要求を受けた際に、ホスト装置から転送された新ファームウェアを受信してバッファメモリに格納した時点でホスト装置に更新終了の通知をし、更新終了の通知後に、ホスト装置が発行したコマンドの処理空き時間を使用するバックグラウンド処理として、新ファームウェアを不揮発メモリ等に書き込んで更新する。
【特許文献１】特開２０００−１４８４６５号公報
【特許文献２】特開２００８−０４６７９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、ファームウェアのダウンロードデータをダウンロードした後の所定の時間の間には、冗長性がないストレージ装置では、Ｉ／Ｏ（Input/Output）データの送受信が停止することとなり、冗長性があるストレージ装置では、Ｉ／Ｏデータの送受信の性能が１／２になったり、冗長性がなくなったりする等、Ｉ／Ｏデータの送受信を一時的に実行することができなくなったり、Ｉ／Ｏデータの送受信の性能が低下するというおそれがある。
【０００６】
本発明は以上の点を考慮してなされたもので、データ送受信の高速化及び信頼性を向上させ得るストレージ装置及びファームウェア更新指示方法を提案するものである。
【課題を解決するための手段】
【０００７】
かかる課題を解決するために本発明においては、ストレージ装置であって、ホスト装置から送信されるデータを格納するディスク装置に接続される複数のエクスパンダと、前記エクスパンダを制御するコントローラ部とを備え、前記コントローラ部は、所定の端末から前記エクスパンダのファームウェアを更新するためのダウンロードデータを受信すると、前記エクスパンダが前記ダウンロードデータをダウンロードした後に当該エクスパンダを初期化する必要があるか否かを判定する判定部と、前記判定部により判定された初期化判定情報を前記端末に送信する送信部と、前記送信部により送信された前記初期化判定情報に基づいて前記端末により決定される前記ファームウェアを更新するタイミングで、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する更新指示部とを備える。
【０００８】
また、本発明においては、ファームウェア更新指示方法であって、ホスト装置から送信されるデータを格納するディスク装置に接続される複数のエクスパンダと、前記エクスパンダを制御するコントローラ部とを備え、所定の端末から前記エクスパンダのファームウェアを更新するためのダウンロードデータを受信すると、前記エクスパンダが前記ダウンロードデータをダウンロードした後に当該エクスパンダを初期化する必要があるか否かを判定する第１のステップと、前記第１のステップにおいて判定した初期化判定情報を前記端末に送信する第２のステップと、前記第２のステップにおいて送信した前記初期化判定情報に基づいて前記端末により決定される前記ファームウェアを更新するタイミングで、前記ダウンロードデータを該当する前記エクスパンダに送信して、前記ファームウェアの更新を該当する前記エクスパンダに指示する第３のステップとを備える。
【０００９】
従って、管理者の指定するタイミングでファームウェアを更新することができるため、データの送受信を一時的に実行することができなくなるということを未然かつ有効に防止することができ、又はデータの送受信の性能の低下を減少させることができる。
【発明の効果】
【００１０】
本発明によれば、データ送受信の高速化及び信頼性を向上させ得るストレージ装置及びファームウェア更新指示方法を実現することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の一実施の形態を、図面を参照して詳細に説明する。なお、これにより本発明が限定されるものではない。
【００１２】
図１は、本実施の形態によるストレージシステム１の構成の一例を示している。ストレージシステム１は、ホスト装置２、ディスクアレイ装置３及び管理端末４を備えて構成されている。ストレージシステム１は、ホスト装置２及びディスクアレイ装置３がＳＡＮ（Storage Area Network）等のネットワーク６を介して接続されている。また、ストレージシステム１は、ディスクアレイ装置３及び管理端末４がＬＡＮ（Local Area Network）等のネットワーク７を介して接続されている。
【００１３】
ホスト装置２は、例えば、ＣＰＵ（Central Processing Unit）やメモリ等の情報処理資源を備えたコンピュータ装置であり、例えば、パーソナルコンピュータ、ワークステーション、メインフレーム等により構成されている。また、ホスト装置２は、例えば、キーボードやポインティングデバイス、マイクロフォン等の情報入力装置（図示せず）や、例えば、モニタディスプレイやスピーカ等の情報出力装置（図示せず）を備えて構成されている。さらに、ホスト装置２は、例えば、ディスクアレイ装置３が提供する記憶領域を使用してデータの送受信を制御するアプリケーションプログラムや、ディスクアレイ装置３のボリューム４６（後述）のバックアップを実施するバックアッププログラム、ネットワーク６を介してディスクアレイ装置３にアクセスするためのアダプタ（図示せず）等を備えて構成されている。
【００１４】
ディスクアレイ装置３は、基本筐体１１及び増設筐体１２を備えて構成されている。ディスクアレイ装置３は、基本筐体１１及び増設筐体１２や増設筐体１２同士がＳＡＳ（Serial Attached SCSI）やＳＡＮ、ＷＡＮ（World Area Network）等のネットワーク１３を介して接続されている。
【００１５】
基本筐体１１は、第１のコントローラ部２１、第２のコントローラ部２２及び記憶部２３を備えて構成されている。基本筐体１１は、コントローラ部を最低１つ備えている必要がある。本実施の形態では、信頼性向上のため、冗長度を有するように同一のディスク装置４５（後述）に対して第１のコントローラ部２１、第２のコントローラ部２２の２つのコントローラ部を備えている。第１のコントローラ部２１、第２のコントローラ部２２は、ディスクアレイ装置３全体を制御して、ホスト装置２と記憶部２３又は増設筐体１２との間でデータの送受信を行う。記憶部２３は、第１のコントローラ部２１、第２のコントローラ部２２から送信されるデータを格納するディスク装置４５（後述）から構成されている。
【００１６】
増設筐体１２は、第１のエンクロージャ（ＥＮＣ）３１、第２のエンクロージャ３２及び記憶部３３を備えて構成されている。増設筐体１２は、エンクロージャを最低１つ備えている必要がある。本実施の形態では、信頼性向上のため、冗長度を有するように同一のディスク装置４５（後述）に対して第１のエンクロージャ３１、第２のエンクロージャ３２の２つのエンクロージャを備えている。第１のエンクロージャ３１、第２のエンクロージャ３２は、増設筐体１２全体を制御して、第１のコントローラ部１１、第２のコントローラ部１２と自己の増設筐体１２の記憶部３３又は他の増設筐体１２との間でデータの送受信を行う。記憶部３３は、第１のエンクロージャ３１、第２のエンクロージャ３２から送信されるデータを格納するディスク装置４５（後述）から構成されている。
【００１７】
管理端末４は、例えば、ノート型のパーソナルコンピュータなどから構成されている。なお、管理端末４の詳細な構成については、後述する。管理端末４は、基本筐体１１及び増設筐体１２のファームウェア９９（後述）を更新するためのダウンロードデータを基本筐体１１に送信し、当該ファームウェア９９（後述）を更新するタイミングを決定する等のディスクアレイ装置３の管理を行う。
【００１８】
図２は、基本筐体１１の構成の一例を示している。なお、第２のコントローラ部２２については、第１のコントローラ部２１と同様の構成であるため、図２では記載していない。第１のコントローラ部２１は、ホストＩ／Ｆ４１、ＲＡＩＤ（Redundant Arrays of Independent Disks）制御部４２、管理Ｉ／Ｆ４３及びバックエンドＩ／Ｆ４４を備えて構成されている。また、記憶部２３は、ファイバチャネル、ＳＡＳ、ＳＡＴＡ（Serial ATA）等のディスク装置４５を備えて構成されている。
【００１９】
ホストＩ／Ｆ４１は、ホスト装置２とネットワーク５を介して接続され、ホスト装置２から送信される各種コマンドやデータの送受信を制御する。ホストＩ／Ｆ４１は、ネットワーク５の種類に応じた種々のインタフェースを用いることができる。
【００２０】
ＲＡＩＤ制御部４２は、ＣＰＵ５１、キャッシュメモリ５２、タイマ５３及びローカルメモリ５４を備えて構成されている。
【００２１】
ＣＰＵ５１は、コントローラ部ごとに１つ備えられる。ＣＰＵ５１は、各種のプログラムを実行することにより、第１のコントローラ部２１全体を制御し、例えば、ホストＩ／Ｆ４１から送信されたコマンドを解釈して、各構成要素に指示を送信する。また、ＣＰＵ５１は、ディスク装置４５に対して、ＲＡＩＤ制御を行うことにより、ディスクアレイ装置３の信頼性、可用性及び性能を向上させることができる。
【００２２】
この場合、ＣＰＵ５１は、ディスク装置４５をＲＡＩＤ方式で運用する。ＣＰＵ５１は、１又は複数のディスク装置４５により提供される物理的な記憶領域（ＲＡＩＤグループ）上に、１又は複数の論理的なボリューム４６（以下、これをボリューム（LU :Logical Unit）と呼ぶ）を設定する。そして、データは、このボリューム内に所定の大きさのブロック（以下、これを論理ブロックと呼ぶ）単位で記憶される。
【００２３】
各ボリューム４６には、それぞれ固有の識別子（以下、これをＬＵＮ（Logical Unit number）と呼ぶ）が付与される。本実施の形態の場合、データの入出力は、このＬＵＮと、各論理ブロックにそれぞれ付与されるその論理ブロックに固有の番号（LBA :Logical Block Address）とを組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
【００２４】
キャッシュメモリ５２は、ホスト装置２から受信したデータを一時的に格納したり、ディスクアレイ装置３内部で使用する各種テーブルを格納する。この場合、キャッシュメモリ５２の一部は、第２のコントローラ部２２との共有メモリとして使用されており、一方のコントローラ部が閉塞（故障）した場合に、正常な別のコントローラ部に情報を引き継ぐ。
【００２５】
タイマ５３は、第１のコントローラ部２１内部のクロックを管理するためのタイマである。ローカルメモリ５４は、第１のコントローラ部２１内部で使用する各種プログラムや、各種テーブルを格納する。
【００２６】
ローカルメモリ５４には、ＲＡＩＤ制御プログラム６１、デバイスコマンド発行プログラム６２、管理端末通信プログラム６３、ＥＮＣマイクロダウンロード制御プログラム６４、デバイス管理プログラム６５、省電力制御プログラム６６、デバイス管理テーブル６７、電源停止予定情報６８及び統計情報６９が格納されている。
【００２７】
ＲＡＩＤ制御プログラム６１は、上述のように、ディスク装置４５に対してＲＡＩＤ制御を行うプログラムである。デバイスコマンド発行プログラム６２は、バックエンドＩ／Ｆ４４や増設筐体１２にコマンドを発行するプログラムである。管理端末通信プログラム６３は、管理端末４と通信するプログラムである。ＥＮＣマイクロダウンロード制御プログラム６４は、エクスパンダ７３（後述）内のファームウェア９９（後述）の更新を制御するプログラムである。デバイス管理プログラム６５は、ディスカバリ制御プログラム７０及びＰＨＹ制御プログラム７１を備えて構成されている。ディスカバリ制御プログラム７０は、ディスカバリコマンドに対する制御を行うプログラムである。ＰＨＹ制御プログラム７１は、エクスパンダ７３内のＰＨＹ１００（後述）を制御するプログラムである。デバイス管理テーブル６７は、エクスパンダ７３やディスク装置４５、ボリューム４６を管理するためのテーブルである。電源停止予定情報６８は、省電力のためディスク装置４５の電源を切る省電力モードに切り替わるディスク装置４５の予定である。統計情報６９は、所定時間におけるデータの送受信（Ｉ／Ｏ（Input/Output））を統計する情報である。なお、ローカルメモリ５４には、この他、所定時間ごとに各エクスパンダ７３のＩ／Ｏを統計する情報統計プログラム等の各種のプログラムが格納されている。
【００２８】
管理Ｉ／Ｆ４３は、管理端末４とネットワーク６を介して接続され、管理端末４から送信される各種コマンドやデータの送受信を制御する。管理Ｉ／Ｆ４３は、ネットワーク６の種類に応じた種々のインタフェースを用いることができる。
【００２９】
バックエンドＩ／Ｆ４４は、ＳＡＳコントローラ７２及びエクスパンダ７３を備えて構成されている。バックエンドＩ／Ｆ４４は、記憶部２３のディスク装置４５又は増設筐体１２と接続され、ホスト装置２から送信されるデータの送受信を制御する。バックエンドＩ／Ｆ４４は、ＳＡＳの他、ファイバチャネル、ＳＡＴＡ（Serial ATA）等の種類に応じた種々のインタフェースを用いることができる。ＳＡＳコントローラ７２は、バックエンドＩ／Ｆ４４全体を制御すると共に、ディスク装置４５へのデータの書込みやディスク装置４５からのデータの読出しを制御する。
【００３０】
図３は、エクスパンダ７３の構成の一例を示している。エクスパンダ７３は、プロセッサ８１、スイッチ部８２、メモリ８３、不揮発メモリ８４、デバイスＩ／Ｆ８５を備えて構成されている。
【００３１】
プロセッサ８１は、エクスパンダ７３ごとに１つ備えられる。プロセッサ８１は、各種のプログラムを実行することにより、エクスパンダ７３全体を制御し、例えば、第１のコントローラ部２１、第２のコントローラ部２２から送信されたコマンドを解釈して、各構成要素に指示を送信する。スイッチ部８２は、プロセッサ８１の制御のもと、デバイスＩ／Ｆ８５のＰＨＹ１００（後述）をスイッチング制御する。
【００３２】
メモリ８３には、制御プログラム９１、デバイスＩ／Ｆ監視プログラム９２、ブロードキャスト発行プログラム９４、管理コマンド処理プログラム９５及びデバイスＩ／Ｆ接続状態情報９６が格納されている。また、メモリ８３は、引継ぎ情報領域９７を備える。
【００３３】
制御プログラム９１は、エクスパンダ７３全体を制御するプログラムである。デバイスＩ／Ｆ監視プログラム９２は、デバイスＩ／Ｆ８５のＰＨＹ１００のＩ／Ｏ等を監視するプログラムである。ブロードキャスト発行プログラム９４は、ブロードキャストコマンドを発行するプログラムである。管理コマンド処理プログラム９５は、第１のコントローラ部２１、第２のコントローラ部２２から送信される管理コマンドを処理するプログラムである。デバイスＩ／Ｆ接続状態情報９６は、デバイスＩ／Ｆ８５のＰＨＹ１００と第１のコントローラ部２１、第２のコントローラ部２２や増設筐体１２のＰＨＹ１００（後述）、記憶部２３のディスク装置４５との接続状態の情報である。引継ぎ情報領域９７には、エクスパンダ７３を初期化するときの各種の引継ぎ情報が格納される。
【００３４】
不揮発メモリ８４は、プログラム格納領域９８を備える。プログラム格納領域９８には、エクスパンダ７３のファームウェア９９が格納されている。ファームウェア９９は、ダウンロードデータ１０９（後述）がダウンロードされることにより、更新される。
【００３５】
デバイスＩ／Ｆ８５は、複数のＰＨＹ１００を備えて構成されている。ＰＨＹ１００は、第１のコントローラ部２１、第２のコントローラ部２２や増設筐体１２のＰＨＹ１００（後述）、記憶部２３のディスク装置４５と接続され、データの送受信を行う。
【００３６】
なお、増設筐体１２の第１のエンクロージャ３１、第２のエンクロージャ３２は、図３と同様のエクスパンダ７３を備えて構成されている。この場合、増設筐体１２のＰＨＹ１００は、基本筐体１１のＰＨＹ１００や増設筐体１２のＰＨＹ１００、記憶部３３のディスク装置４５と接続され、データの送受信を行う。
【００３７】
図４は、管理端末４の構成の一例を示している。管理端末４は、ネットワーク６を介してディスクアレイ装置３に接続するための管理ポート１０１と、プロセッサ１０２と、メモリ１０３と、ディスク装置（HDD: Hard Disk Drive）１０４と、後述するファームウェア９９の更新タイミングを決定する画面を表示するためのディスプレイ装置等の出力部１０５と、管理者が指示を入力するためのキーボード等の入力部１０６とを有し、これらが内部バス等の回路を介して相互に接続される。
【００３８】
メモリ１０３には、ディスクアレイ装置３を管理する装置管理プログラム１０７、ディスクアレイ装置３の構成を管理する装置構成管理表１０８及び管理者がファームウェア９９を更新するタイミングを指定するスケジュールデータ１０９が格納されている。装置管理プログラム１０７は、例えば、ディスクアレイ装置３から、構成情報を管理者からの要求に応じて取得し、出力部１０５を介してユーザに表示する。また、装置管理プログラム１０７は、取得した構成情報を装置構成管理表１０８に格納する。
【００３９】
ディスク装置１０４には、エクスパンダ７３のファームウェア９９を更新するためのダウンロードデータ１１０が格納されている。なお、ダウンロードデータ１１０は、所定の記録媒体等に格納されており、ディスクアレイ装置３に送信するときに、管理端末４に読み込むようにしても良い。
【００４０】
図５は、統計情報６９の構成の一例を示している。統計情報６９は、管理端末４の管理者がファームウェア９９を更新するタイミングを決定するために参照する情報である。統計情報６９は、時間欄６９Ａ、パス欄６９Ｂ、ドライブ欄６９Ｃ、ＩＯＰＳ（Input/Output Per Second）（１秒あたりのデータ送受信の頻度）欄６９Ｄを備えて構成されている。時間欄６９Ａは、データがディスク装置４５に格納された時間を管理する。パス欄６９Ｂは、データがディスク装置４５に格納されるときに通過したパス（複数のＰＨＹ１００を束ねたもの）を管理する。ドライブ欄６９Ｃは、データが格納されるドライブ（ディスク装置４５）を管理する。ＩＯＰＳ欄６９Ｄは、ドライブ欄６９Ｃに格納されたディスク装置４５のＩＯＰＳを管理する。
【００４１】
図６は、スケジュールデータ１０９の構成の一例を示している。スケジュールデータ１０９は、ファームウェア９９を更新するエクスパンダ７３ごとに、エクスパンダ７３のユニット番号欄、エンクロージャ番号欄、種別欄、機能欄、日付欄、ＩＯＰＳ欄、継続時間欄、期限（日付）欄、期限（tick）欄、省電力モード欄等を備えて構成されている。例えば、所定の日付欄に「２００８／０７／２２  ０５：００」が格納されている場合、当該日付欄に対応するエクスパンダ７３は、２００８年７月２２日５：００にファームウェア９９が更新される。また、所定のＩＯＰＳ欄に「１００以下」が格納されている場合、当該日付欄に対応するエクスパンダ７３は、当該エクスパンダ７３のＩＯＰＳが１００以下のときにファームウェア９９が更新される。また、所定の省電力モード欄に「オン」が格納されている場合、当該省電力モード欄に対応するエクスパンダ７３は、当該エクスパンダ７３のディスク装置４５が省電力モードに移行するときにファームウェア９９が更新される。
【００４２】
図７は、ダウンロードデータ１１０の構成の一例を示している。ダウンロードデータ１１０は、当該ダウンロードデータ１１０を制御する情報である制御情報１１０Ａ及びファームウェア９９を更新する実質的なデータであるプログラムデータ１１０Ｂを備えて構成されている。制御情報１１０Ａは、制御データの他、ファームウェア９９を更新した際にエクスパンダ７３の初期化をするか否かの判定情報である初期化判定情報１１０Ｃを備えて構成されている。
【００４３】
図８は、ディスクアレイ装置３がダウンロードデータ１１０を受信して、エクスパンダ７３のファームウェア９９を更新する流れの一例を示している。なお、以下の説明において、プログラムが主語になる処理は、実際には、そのプログラムを実行するＣＰＵ５１が行う処理である。
【００４４】
まず、管理端末通信プログラム６３は、所定のタイミングで、管理端末４からダウンロードデータ１１０を受信して（図８（１））、ＥＮＣマイクロダウンロード制御プログラム６４を起動する（図８（２））。続いて、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末通信プログラム６３からダウンロードデータ１１０を受信すると（図８（２））、ファームウェア９９を更新するタイミングで、デバイスコマンド発行プログラム６２を起動する（図８（３））。そして、デバイスコマンド発行プログラム６２は、ダウンロードデータ１１０を該当するエクスパンダ７３に送信する（図８（４））。そして、ダウンロードデータ１１０を受信したエクスパンダ７３は、ダウンロードデータ１１０をダウンロードして、ファームウェア９９を更新する。
【００４５】
図９は、このストレージシステム１におけるディスクアレイ装置３のファームウェア更新指示処理に関する、ディスクアレイ装置３のＣＰＵ５１の具体的な処理手順を示したフローチャートの一例である。
【００４６】
ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末通信プログラム６３を介して、管理端末４からダウンロードデータ１１０を受信すると、図９に示すファームウェア更新指示処理手順ＲＴ１に従って、ダウンロードデータ１１０の初期化要否情報１１０Ｃを参照することにより、エクスパンダ７３がダウンロードデータ１１０をダウンロードしてファームウェア９９を更新した後に、エクスパンダ７３の初期化が必要であるか否かをチェックする（ＳＰ１）。なお、エクスパンダ７３の初期化が必要であるか否かをチェックは、管理端末４が行うようにしても良い。
【００４７】
そして、ＥＮＣマイクロダウンロード制御プログラム６４は、ダウンロードデータ１１０が初期化が必要でない情報であり、ファームウェア９９を更新した後にエクスパンダ７３の初期化が必要でない場合（ＳＰ１：ＮＯ）には、管理端末通信プログラム６３を介して、エクスパンダ７３の初期化が不要である旨を管理端末４に通知する（ＳＰ２）。
【００４８】
続いて、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から初期化不要のファームウェア９９の更新を指示されるのを待機モードで待ち受ける（ＳＰ３）。そして、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から初期化不要のファームウェア９９の更新を指示されると（ＳＰ３：ＹＥＳ）、該当するエクスパンダ７３にダウンロードデータ１１０を送信し、初期化不要のファームウェア９９の更新を指示し（ＳＰ４）、この後、図９に示すファームウェア更新指示処理手順ＲＴ１を終了する（ＳＰ６）。
【００４９】
これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、ダウンロードデータ１１０が初期化が必要であるデータであり、ファームウェア９９を更新した後にエクスパンダ７３の初期化が必要である場合（ＳＰ１：ＹＥＳ）には、電源停止予定情報６８及び統計情報６９を管理端末４に送信し、エクスパンダ７３の初期化が必要である旨を管理端末４に通知する（ＳＰ５）。
【００５０】
続いて、ＥＮＣマイクロダウンロード制御プログラム６４は、初期化が必要な場合のファームウェア更新指示処理を実施する（ＲＴ２）。やがて、ＥＮＣマイクロダウンロード制御プログラム６４は、この後、図９に示すファームウェア更新指示処理手順ＲＴ１を終了する（ＳＰ６）。なお、初期化が必要な場合のファームウェア更新指示処理の詳細については、後述する。
【００５１】
図１０は、このストレージシステム１におけるディスクアレイ装置３の初期化が必要な場合のファームウェア更新指示処理に関する、ディスクアレイ装置３のＣＰＵ５１の具体的な処理手順を示したフローチャートの一例である。
【００５２】
ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末通信プログラム６３を介して、エクスパンダ７３の初期化が必要である旨を管理端末４に通知すると（ＳＰ５）、図１０に示す初期化が必要な場合のファームウェア更新指示処理手順ＲＴ２に従って、管理端末４から即時にファームウェア９９を更新するように指示されたか否かをチェックする（ＳＰ１１）。
【００５３】
この場合、管理端末４は、ディスクアレイ装置３からエクスパンダ７３の初期化が必要である旨を通知されると、図１１に示す選択画面１１１を出力部１０５の表示画面に表示する。
【００５４】
図１１は、管理端末４の出力部１０５の表示画面に表示される、ダウンロードデータ１１０のダウンロード方法を選択する選択画面１１１の構成の一例を示している。選択画面１１１は、例えば、「省電力機能により電源を切る際にダウンロードを実行します。」、「冗長度がなくなることを承知で即座にダウンロードを実行します。」及び「性能への影響を考慮してダウンロードを実施します。」の３つの選択肢を管理者が選択することができるように表示されている。
【００５５】
そして、管理端末４は、管理者の操作により、「冗長度がなくなることを承知で即座にダウンロードを実行します。」のチェックボックスがチェックされ、その後、図示しない決定ボタンが押下されると、即時にファームウェア９９を更新するようにディスクアレイ装置３に指示する。
【００５６】
そして、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から即時にファームウェア９９を更新するように指示された場合（ＳＰ１１：ＹＥＳ）には、ステップＳＰ１８に進む。これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から即時にファームウェア９９を更新するように指示されていない場合（ＳＰ１１：ＮＯ）には、スケジュールデータ１０９を受信し、管理端末４から所定の時間にファームウェア９９を更新するように指示されたか否かをチェックする（ＳＰ１２）。
【００５７】
この場合、管理端末４は、ディスクアレイ装置３からエクスパンダ７３の初期化が必要である旨を通知されると、選択画面１１１を出力部１０５の表示画面に表示する。続いて、管理端末４は、管理者の操作により、「性能への影響を考慮してダウンロードを実施します。」のチェックボックスがチェックされ、その後、「次へ」のボタンが押下されると、図１２に示す選択画面１１２を出力部１０５の表示画面に表示する。
【００５８】
図１２は、管理端末４の出力部１０５の表示画面に表示される、ダウンロードデータ１１０の性能への影響を考慮してダウンロード方法を選択する選択画面１１２の構成の一例を示している。選択画面１１２は、例えば、「スケジューリングにより、Ｉ／Ｏが少ないときにダウンロードを実施します。」、「指定した時間にダウンロードを実行します。」及び「ダウンロードを即座に実施します。」の３つの選択肢を管理者が選択することができるように表示されている。
【００５９】
続いて、管理端末４は、例えば、管理者の操作により、「指定した時間にダウンロードを実行します。」のチェックボックスがチェックされ、その後、「次へ」のボタンが押下されると、図１３に示すスケジュールデータ１０９の作成画面１１３を出力部１０５の表示画面に表示する。
【００６０】
図１３は、管理端末４の出力部１０５の表示画面に表示される、スケジュールデータ１０９を作成する作成画面１１３の構成の一例を示している。作成画面１１３は、第１のコントローラ部２１、第２のコントローラ部２２、第１のエンクロージャ３１、第２のエンクロージャ３２を選択することができるように表示されている。また、作成画面１１３は、第１のコントローラ部２１、第２のコントローラ部２２、第１のエンクロージャ３１、第２のエンクロージャ３２ごとのスケジュール等が表示されている。
【００６１】
続いて、管理端末４は、例えば、管理者の操作により、第１のコントローラ部２１（Controller 0(ENC0)）が選択され、その後、「変更」ボタンが押下されると、図１４に示すスケジュールデータ１０９の作成画面１１４を出力部１０５の表示画面に表示する。
【００６２】
図１４は、管理端末４の出力部１０５の表示画面に表示される、スケジュールデータ１０９を作成する作成画面１１４の構成の一例を示している。作成画面１１４は、例えば、「性能への影響を考慮したダウンロード方法」として、「ファームウェア９９を更新する時間」や「ファームウェア９９を更新するＩＯＰＳ」、「省電力モード移行に連動してファームウェア９９を更新する」を管理者が選択することができるように表示されている。また、作成画面１１４は、電源停止予定情報６８及び統計情報６９に基づいて、対象のコントローラ部又はエンクロージャの電源停止予定情報やＩ／Ｏの履歴情報等が表示されている。
【００６３】
続いて、管理端末４は、例えば、管理者の操作により、「性能への影響を考慮したダウンロード方法」として「指定時間」が選択され、「ファームウェア９９を更新する時間」として「２００８／０７／２２  ０５：００」が選択されて、「スケジュールの決定」ボタンが押下されると、第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが決定し、図１３に示す作成画面１１３に戻ると共に、決定された第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが図１３に示す作成画面１１３に反映される。
【００６４】
一方、管理端末４は、図１３において、例えば、管理者の操作により、いずれのコントローラ部又はエンクロージャも選択されずに、「次へ」のボタンが押下されると、図１５に示すスケジュールデータ１０９の作成の確認画面１１５を出力部１０５の表示画面に表示する。
【００６５】
図１５は、管理端末４の出力部１０５の表示画面に表示される、スケジュールデータ１０９の作成の確認画面１１５の構成の一例を示している。確認画面１１５は、第１のコントローラ部２１、第２のコントローラ部２２、第１のエンクロージャ３１、第２のエンクロージャ３２のスケジュール等が表示されている。
【００６６】
そして、管理端末４は、例えば、管理者の操作により、「次へ」のボタンが押下され、その後、図示しない決定ボタンが押下されると、例えば、２００８年７月２２日５：００に第１のコントローラ部２１（Controller 0(ENC0)）のファームウェア９９を更新する等、図１５に表示される確認画面１１５でスケジュールデータ１０９を作成し、当該スケジュールデータ１０９を管理端末４に送信する。
【００６７】
図１０に戻り、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から所定の時間にファームウェア９９を更新するように指示された場合（ＳＰ１２：ＹＥＳ）には、該当するエクスパンダ７３がファームウェア９９を更新する時間となるのを待機モードで待ち受ける（ＳＰ１３）。そして、ＥＮＣマイクロダウンロード制御プログラム６４は、該当するエクスパンダ７３がファームウェア９９を更新する時間となると（ＳＰ１３：ＹＥＳ）、ステップＳＰ１８に進む。
【００６８】
これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から所定の時間にファームウェア９９を更新するように指示されていない場合（ＳＰ１２：ＮＯ）には、スケジュールデータ１０９を受信し、管理端末４から指定ＩＯＰＳ以下のときに、ファームウェア９９を更新するように指示されたか否かをチェックする（ＳＰ１４）。
【００６９】
この場合、管理端末４は、図１２において、管理者の操作により、「スケジューリングにより、Ｉ／Ｏが少ないときにダウンロードを実施します。」のチェックボックスがチェックされ、その後、「次へ」のボタンが押下されると、図１３に示すスケジュールデータ１０９の作成画面１１３を出力部１０５の表示画面に表示する。
【００７０】
続いて、管理端末４は、例えば、管理者の操作により、第１のコントローラ部２１（Controller 0(ENC0)）が選択され、その後、「変更」ボタンが押下されると、図１４に示すスケジュールデータ１０９の作成画面１１４を出力部１０５の表示画面に表示する。
【００７１】
続いて、管理端末４は、例えば、管理者の操作により、「性能への影響を考慮したダウンロード方法」として「ＩＯＰＳ」が選択され、「ファームウェア９９を更新するＩＯＰＳ」として「１００以下」が選択されて、「スケジュールの決定」ボタンが押下されると、第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが決定し、図１３に示す作成画面１１３に戻ると共に、決定された第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが図１３に示す作成画面１１３に反映される。
【００７２】
一方、管理端末４は、図１３において、例えば、管理者の操作により、いずれのコントローラ部又はエンクロージャも選択されずに、「次へ」のボタンが押下されると、図１５に示すスケジュールデータ１０９の作成の確認画面１１５を出力部１０５の表示画面に表示する。
【００７３】
そして、管理端末４は、例えば、管理者の操作により、「次へ」のボタンが押下され、その後、図示しない決定ボタンが押下されると、例えば、該当するエクスパンダ７３のディスク装置４５のＩＯＰＳが１００以下のときに第１のコントローラ部２１（Controller 0(ENC0)）のファームウェア９９を更新する等、図１５に表示される確認画面１１５でスケジュールデータ１０９を作成し、当該スケジュールデータ１０９をディスクアレイ装置３に送信する。
【００７４】
図１０に戻り、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から指定ＩＯＰＳ以下のときに、ファームウェア９９を更新するように指示された場合（ＳＰ１４：ＹＥＳ）には、該当するエクスパンダ７３のディスク装置４５が指定ＩＯＰＳ以下となるのを待機モードで待ち受ける（ＳＰ１５）。そして、ＥＮＣマイクロダウンロード制御プログラム６４は、該当するエクスパンダ７３のディスク装置４５が指定ＩＯＰＳ以下となると（ＳＰ１５：ＹＥＳ）、ステップＳＰ１８に進む。
【００７５】
これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から指定ＩＯＰＳ以下のときにファームウェア９９を更新するように指示されていない場合（ＳＰ１５：ＮＯ）には、スケジュールデータ１０９を受信し、管理端末４から省電力モードに移行するときに、ファームウェア９９を更新するように指示されたか否かをチェックする（ＳＰ１６）。
【００７６】
この場合、管理端末４は、図１１において、管理者の操作により、「省電力機能により電源を切る際にダウンロードを実行します。」のチェックボックスがチェックされ、その後、「次へ」のボタンが押下されると、図１３に示すスケジュールデータ１０９の作成画面１１３を出力部１０５の表示画面に表示する。
【００７７】
続いて、管理端末４は、例えば、管理者の操作により、第１のコントローラ部２１（Controller 0(ENC0)）が選択され、その後、「変更」ボタンが押下されると、図１４に示すスケジュールデータ１０９の作成画面１１４を出力部１０５の表示画面に表示する。
【００７８】
続いて、管理端末４は、例えば、管理者の操作により、「性能への影響を考慮したダウンロード方法」として「省電力に連動」が選択されて、「スケジュールの決定」ボタンが押下されると、第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが決定し、図１３に示す作成画面１１３に戻ると共に、決定された第１のコントローラ部２１（Controller 0(ENC0)）のスケジュールが図１３に示す作成画面１１３に反映される。
【００７９】
一方、管理端末４は、図１３において、例えば、管理者の操作により、いずれのコントローラ部又はエンクロージャも選択されずに、「次へ」のボタンが押下されると、図１５に示すスケジュールデータ１０９の作成の確認画面１１５を出力部１０５の表示画面に表示する。
【００８０】
そして、管理端末４は、例えば、管理者の操作により、「次へ」のボタンが押下され、その後、図示しない決定ボタンが押下されると、例えば、該当するエクスパンダ７３のディスク装置４５が省電力モードに移行するときに第１のコントローラ部２１（Controller 0(ENC0)）のファームウェア９９を更新する等、図１５に表示される確認画面１１５でスケジュールデータ１０９を作成し、当該スケジュールデータ１０９をディスクアレイ装置３に送信する。
【００８１】
図１０に戻り、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から省電力モードに移行するときに、ファームウェア９９を更新するように指示された場合（ＳＰ１６：ＹＥＳ）には、該当するエクスパンダ７３のディスク装置４５が省電力モードとなるのを待機モードで待ち受ける（ＳＰ１７）。そして、ＥＮＣマイクロダウンロード制御プログラム６４は、該当するエクスパンダ７３のディスク装置４５が省電力モードとなると（ＳＰ１７：ＹＥＳ）、ステップＳＰ１８に進む。
【００８２】
これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、管理端末４から所定の時間にファームウェア９９を更新するように指示されていない場合（ＳＰ１７：ＮＯ）には、ステップＳＰ１９に進む。
【００８３】
一方、ＥＮＣマイクロダウンロード制御プログラム６４は、ステップＳＰ１１、ＳＰ１３、ＳＰ１５、ＳＰ１７において「ＹＥＳ」の場合には、該当するエクスパンダ７３にダウンロードデータ１１０を送信し、初期化が必要なファームウェア９９の更新を指示する（ＳＰ１８）。なお、ＥＮＣマイクロダウンロード制御プログラム６４は、省電力モードに移行するときに、ファームウェア９９を更新するように指示する場合には、省電力制御プログラム６６を介して、あわせて該当するディスク装置４５のスピンダウンが完了していることを確認する。
【００８４】
続いて、ＥＮＣマイクロダウンロード制御プログラム６４は、他にファームウェア９９を更新するスケジュールのエクスパンダ７３が存在するか否かをチェックする（ＳＰ１９）。
【００８５】
そして、ＥＮＣマイクロダウンロード制御プログラム６４は、他にファームウェア９９を更新するスケジュールのエクスパンダ７３が存在する場合（ＳＰ１９：ＹＥＳ）には、ステップＳＰ１２に戻り、再び、管理端末４から所定の時間にファームウェア９９を更新するように指示されたか否かをチェックし（ＳＰ１２）、その後、ステップＳＰ１２〜ステップＳＰ１９を繰り返す。
【００８６】
これに対して、ＥＮＣマイクロダウンロード制御プログラム６４は、他にファームウェア９９を更新するスケジュールのエクスパンダ７３が存在しない場合（ＳＰ１９：ＮＯ）には、その後、図１０に示す初期化が必要な場合のファームウェア更新指示処理手順ＲＴ２を終了する（ＳＰ２０）。
【００８７】
図１６は、このストレージシステム１におけるディスクアレイ装置３のエクスパンダ７３のファームウェア更新処理に関する、ディスクアレイ装置３のエクスパンダ７３のプロセッサ８１の具体的な処理手順を示したフローチャートの一例である。なお、以下の説明において、プログラムが主語になる処理は、実際には、そのプログラムを実行するプロセッサ８１が行う処理である。
【００８８】
制御プログラム９１は、第１のコントローラ部２１、第２のコントローラ部２２からダウンロードデータを受信し、ファームウェア９９の更新の指示を受信すると、図１６に示すファームウェア更新処理手順ＲＴ３に従って、ダウンロードデータ１１０の初期化判定情報１１０Ｃ及びデバイスＩ／Ｆ接続状態情報９６を引継ぎ情報領域９７に格納する（ＳＰ２１）。
【００８９】
続いて、制御プログラム９１は、ダウンロードデータ１１０をプログラム格納領域９８のファームウェア９９にダウンロードしてファームウェア９９を更新し、エクスパンダ７３の再起動を実施する（ＳＰ２２）。続いて、制御プログラム９１は、引継ぎ情報領域９７に格納された期化判定情報１１０Ｃを参照することにより、エクスパンダ７３のデバイスＩ／Ｆ８５の初期化が必要であるか否かをチェックする（ＳＰ２３）。
【００９０】
そして、制御プログラム９１は、エクスパンダ７３のデバイスＩ／Ｆ８５の初期化が必要である場合（ＳＰ２３：ＹＥＳ）には、メモリ８３に格納されているデバイスＩ／Ｆ接続状態情報９６を初期化する（ＳＰ２４）。続いて、制御プログラム９１は、スイッチ部８２及びデバイスＩ／Ｆ８５の各ＰＨＹ１００を初期化する（ＳＰ２５）。
【００９１】
これに対して、制御プログラム９１は、エクスパンダ７３のデバイスＩ／Ｆ８５の初期化が必要でない場合（ＳＰ２３：ＮＯ）には、新たにデバイスＩ／Ｆ８５の接続状態を取得し、メモリ８３に格納する（ＳＰ２８）。続いて、制御プログラム９１は、引継ぎ情報領域９８に格納されているデバイスＩ／Ｆ接続状態情報９６と新たにメモリ８３に格納されたデバイスＩ／Ｆ接続状態情報９６とを比較し、再起動前のデバイスＩ／Ｆの接続状態と差があるか否かをチェックする（ＳＰ２９）。
【００９２】
そして、制御プログラム９１は、再起動前のデバイスＩ／Ｆの接続状態と差がない場合（ＳＰ２９：ＮＯ）には、例えば、自己のエクスパンダ７３より下位の増設筐体１２のエクスパンダ７３等の、他のエクスパンダ７３からブロードキャストコマンドを受信したか否かをチェックする（ＳＰ３０）。そして、制御プログラム９１は、他のエクスパンダ７３からブロードキャストコマンドを受信した場合（ＳＰ３０：ＹＥＳ）には、ステップＳＰ３１に進む。これに対して、制御プログラム９１は、他のエクスパンダ７３からブロードキャストコマンドを受信していない場合（ＳＰ３０：ＮＯ）には、この後、図１６に示すファームウェア更新処理手順ＲＴ３を終了する（ＳＰ３２）。
【００９３】
一方、制御プログラム９１は、ステップＳＰ２６、ＳＰ２７の後、又はステップＳＰ２９、ＳＰ３０において「ＹＥＳ」の場合には、ブロードキャスト発行プログラム９４を介して、第１のコントローラ部２１又は第２のコントローラ部２２にブロードキャストコマンドを発行し（ＳＰ３１）、この後、図１６に示すファームウェア更新処理手順ＲＴ３を終了する（ＳＰ３２）。
【００９４】
図１７は、このストレージシステム１におけるディスクアレイ装置３のブロードキャストコマンド受信時の処理に関する、ディスクアレイ装置３のＣＰＵ５１の具体的な処理手順を示したフローチャートの一例である。
【００９５】
デバイス管理プログラム６５は、エクスパンダ７３からデバイスコマンド発行プログラム６２を介して、ブロードキャストコマンドを受信すると、図１７に示すブロードキャストコマンド受信時の処理手順ＲＴ４に従って、ブロードキャストコマンドの種類を判別し、エクスパンダ７３からブロードキャスト（CHANGE）を受信したか否かをチェックする（ＳＰ４１）。
【００９６】
そして、デバイス管理プログラム６５は、エクスパンダ７３からブロードキャスト（CHANGE）を受信した場合（ＳＰ４１：ＹＥＳ）には、ディスカバリ制御プログラム７０、ＰＨＹ制御プログラム７１を介して、ディスカバリ処理を実施する（ＳＰ４２〜ＳＰ４５）。
【００９７】
すなわち、デバイス管理プログラム６５は、所定のエクスパンダ７３を選択し（ＳＰ４２）、管理コマンドにより当該エクスパンダ７３のデバイスＩ／Ｆ８５内のＰＨＹ１００の接続状態を取得して（ＳＰ４３）、デバイス管理テーブル６７を更新する（ＳＰ４４）。
【００９８】
続いて、デバイス管理プログラム６５は、未だ選択されていないエクスパンダが存在するか否かをチェックする（ＳＰ４５）。そして、デバイス管理プログラム６５は、未だ選択されていないエクスパンダが存在する場合（ＳＰ４５：ＹＥＳ）には、ステップＳＰ４２に戻り、再び、所定のエクスパンダ７３を選択し、その後、ステップＳＰ４２〜ＳＰ４５を繰り返す。
【００９９】
これに対して、デバイス管理プログラム６５は、未だ選択されていないエクスパンダが存在する場合（ＳＰ４５：ＹＥＳ）、又はエクスパンダ７３からブロードキャスト（CHANGE）を受信していない場合（ＳＰ４１：ＮＯ）には、エクスパンダ７３からブロードキャスト（SES）を受信したか否かをチェックする（ＳＰ４６）。そして、デバイス管理プログラム６５は、エクスパンダ７３からブロードキャスト（SES）を受信した場合（ＳＰ４６：ＹＥＳ）には、ＳＥＳ取得処理を実施する（ＳＰ４７）。これに対して、デバイス管理プログラム６５は、エクスパンダ７３からブロードキャスト（SES）を受信していない場合（ＳＰ４６：ＮＯ）には、該当するブロードキャスト処理を実施する（ＳＰ４８）。
【０１００】
やがて、デバイス管理プログラム６５は、この後、図１７に示すブロードキャストコマンド受信時の処理手順ＲＴ４を終了する（ＳＰ４９）。
【０１０１】
このようにして、本実施の形態におけるストレージシステム１では、管理端末４からダウンロードデータ１１０を受信すると、エクスパンダ７３がダウンロードデータ１１０をダウンロードした後に当該エクスパンダ７３を初期化する必要があるか否かを判定し、判定結果を管理端末４に送信して、判定結果に基づいて管理端末４により決定されるファームウェア９９を更新するタイミングで、ダウンロードデータ１１０を該当するエクスパンダ７３に送信して、ファームウェア９９の更新を該当するエクスパンダ７３に指示する。
【０１０２】
従って、管理者の指定するタイミングでファームウェア９９を更新することができるため、データの送受信を一時的に実行することができなくなるということを未然かつ有効に防止することができ、又はデータの送受信の性能の低下を減少させることができ、かくして、データ送受信の高速化及び信頼性を向上させることができる。
【０１０３】
また、ストレージシステム１では、エクスパンダ７３を初期化する必要がないと判定されたときであって、管理端末４からファームウェア９９を更新するよう指示された場合には、即時にダウンロードデータ１１０を該当するエクスパンダ７３に送信して、ファームウェア９９の更新を該当するエクスパンダ７３に指示することにより、エクスパンダ７３の初期化の必要がないため、データの送受信を一時的に停止することなくファームウェア９９を更新することができる。
【０１０４】
さらに、ストレージシステム１では、エクスパンダ７３を初期化する必要があると判定されたときであって、管理端末４から所定の時間にファームウェア９９を更新するよう指示された場合には、指示された時間に、ダウンロードデータ１１０を該当するエクスパンダ７３に送信して、ファームウェア９９の更新を該当するエクスパンダ７３に指示することにより、データの送受信が閑散となる時間帯を指定してファームウェア９９を更新することができる。
【０１０５】
さらに、ストレージシステム１では、エクスパンダ７３を初期化する必要があると判定されたときであって、管理端末４から指定ＩＯＰＳ以下のときにファームウェア９９を更新するよう指示された場合には、指定ＩＯＰＳ以下のときに、ダウンロードデータ１１０を該当するエクスパンダ７３に送信して、ファームウェア９９の更新を該当するエクスパンダ７３に指示することにより、データの送受信が閑散となるときにファームウェア９９を更新することができる。
【０１０６】
さらに、ストレージシステム１では、エクスパンダ７３を初期化する必要があると判定されたときであって、管理端末４からディスク装置４５が省電力モードに移行するときにファームウェア９９を更新するよう指示された場合には、ディスク装置４５が省電力モードに移行するときに、ダウンロードデータ１１０を該当するエクスパンダ７３に送信して、ファームウェア９９の更新を該当するエクスパンダ７３に指示することにより、データの送受信が停止するときにファームウェア９９を更新することができる。
【産業上の利用可能性】
【０１０７】
本発明は、エクスパンダのファームウェアの更新を指示するストレージ装置に広く適用することができる。
【図面の簡単な説明】
【０１０８】
【図１】本実施の形態によるストレージシステムの構成を示すブロック図である。
【図２】基本筐体の構成を示すブロック図である。
【図３】エクスパンダの構成を示すブロック図である。
【図４】管理端末の構成を示すブロック図である。
【図５】統計情報の構成の説明に供する概念図である。
【図６】スケジュールデータの構成の説明に供する概念図である。
【図７】ダウンロードデータの構成の説明に供する概念図である。
【図８】ファームウェアを更新する流れの説明に供する概念図である。
【図９】ファームウェア更新指示処理手順を示すフローチャートである。
【図１０】初期化が必要な場合のファームウェア更新指示処理手順を示すフローチャートである。
【図１１】選択画面の構成の説明に供する概念図である。
【図１２】選択画面の構成の説明に供する概念図である。
【図１３】作成画面の構成の説明に供する概念図である。
【図１４】作成画面の構成の説明に供する概念図である。
【図１５】確認画面の構成の説明に供する概念図である。
【図１６】ファームウェア更新処理手順を示すフローチャートである。
【図１７】ブロードキャストコマンド受信時の処理手順を示すフローチャートである。
【符号の説明】
【０１０９】
１……ストレージシステム、２……ホスト装置、３……ディスクアレイ装置、４……管理端末、１１……基本筐体、１２……増設筐体、２１……第１のコントローラ部、２２……第２のコントローラ部、２３、３３……記憶部、３１……第１のエンクロージャ、３２……第２のエンクロージャ、４２……ＲＡＩＤ制御部、４４……バックエンドＩ／Ｆ、４５……ディスク装置、５１……ＣＰＵ、６４……ＥＮＣマイクロダウンロード制御プログラム、６５……デバイス管理プログラム、６８……統計情報、７３……エクスパンダ、８１……プロセッサ、８５……デバイスＩ／Ｆ、９１……制御プログラム、９９……ファームウェア、１００……ＰＨＹ、１０９……スケジュールデータ、１１０……ダウンロードデータ
【図１】
2010061288.tif 000003
【図２】
2010061288.tif 000004
【図３】
2010061288.tif 000005
【図４】
2010061288.tif 000006
【図５】
2010061288.tif 000007
【図６】
2010061288.tif 000008
【図７】
2010061288.tif 000009
【図８】
2010061288.tif 000010
【図９】
2010061288.tif 000011
【図１０】
2010061288.tif 000012
【図１１】
2010061288.tif 000013
【図１２】
2010061288.tif 000014
【図１３】
2010061288.tif 000015
【図１４】
2010061288.tif 000016
【図１５】
2010061288.tif 000017
【図１６】
2010061288.tif 000018
【図１７】
2010061288.tif 000019