(57)【特許請求の範囲】
【請求項１】
複数の制御装置をそなえるシステムにおける第１の制御装置であって、
前記第１の制御装置が管理する第１の管理情報と、前記第１の管理情報の更新の状況を示す第１の変化情報と、前記複数の制御装置における前記第１の制御装置とは異なる第２の制御装置が管理する第２の管理情報と、前記第２の管理情報の更新の状況を示す第２の変化情報と、を記憶する記憶部をそなえ、
前記記憶部が記憶する前記第２の管理情報及び前記第２の変化情報は、前記第２の制御装置が記憶する第２の管理情報及び第２の変化情報の変更に応じて前記第２の制御装置から送信される情報に基づき変更され、
前記第１の制御装置はさらに、
前記第２の制御装置から、前記第１の制御装置が管理する前記第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する前記第１の変化情報とを比較する比較部と、
前記比較部による比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知して、前記第２の制御装置が記憶する前記第１の管理情報及び前記第１の変化情報を更新させる通知部と、をそなえる
ことを特徴とする、制御装置。
【請求項２】
前記第１の管理情報の変更に応じて前記第１の変化情報を変更させる変更部をさらにそなえ、
前記通知部は、変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２の制御装置へ通知し、
前記通知部は、前記システムにおける第３の制御装置が管理する第３の管理情報を前記第１の制御装置が利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３の制御装置へ送信し、
前記変更部は、前記第３の制御装置から前記第３の制御装置が記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
前記変更部が更新した前記第３の管理情報を利用する、
ことを特徴とする、請求項１記載の制御装置。
【請求項３】
複数の制御装置をそなえるシステムにおける第１の制御装置であって、
前記複数の制御装置がそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを記憶する記憶部と、
前記システムにおける第２の制御装置から、前記第１の制御装置が管理する第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する第１の変化情報とを比較する比較部と、
前記比較部による比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知して、前記第２の制御装置が記憶する前記第１の管理情報及び前記第１の変化情報を更新させる通知部と、
前記第１の管理情報の変更に応じて前記第１の変化情報を変更させる変更部と、をそなえ、
前記通知部は、変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２の制御装置へ通知し、
前記通知部は、前記システムにおける第３の制御装置が管理する第３の管理情報を前記第１の制御装置が利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３の制御装置へ送信し、
前記変更部は、前記第３の制御装置から前記第３の制御装置が記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
前記変更部が更新した前記第３の管理情報を利用する、
ことを特徴とする、制御装置。
【請求項４】
第１及び第２の制御装置を含む複数の制御装置をそなえ、
前記第１及び第２の制御装置は、
前記第１の制御装置が管理する第１の管理情報と、前記第１の管理情報の更新の状況を示す第１の変化情報と、前記第２の制御装置が管理する第２の管理情報と、前記第２の管理情報の更新の状況を示す第２の変化情報と、を記憶する記憶部をそれぞれそなえ、
前記第１の制御装置の前記記憶部が記憶する前記第２の管理情報及び前記第２の変化情報は、前記第２の制御装置の前記記憶部が記憶する第２の管理情報及び第２の変化情報の変更に応じて前記第２の制御装置から送信される情報に基づき変更され、
前記第２の制御装置は、前記第１の制御装置が管理する前記第１の管理情報を利用する場合、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報に対応する第１の変化情報を前記第１の制御装置へ送信し、
前記第１の制御装置は、
前記第２の制御装置から受信した前記第１の変化情報と、前記第１の制御装置の前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記第１の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知し、
前記第２の制御装置は、前記第１の制御装置から受信した前記応答に基づき、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報を更新して、更新後の前記第１の管理情報を利用する、
ことを特徴とする、情報処理システム。
【請求項５】
複数のコンピュータをそなえるシステムにおける第１のコンピュータに、
記憶部が記憶する、前記第１のコンピュータが管理する第１の管理情報と、前記第１の管理情報の更新の状況を示す第１の変化情報と、前記複数のコンピュータにおける前記第１のコンピュータとは異なる第２のコンピュータが管理する第２の管理情報と、前記第２の管理情報の更新の状況を示す第２の変化情報と、を管理し、
前記記憶部が記憶する前記第２の管理情報及び前記第２の変化情報は、前記第２のコンピュータが記憶する第２の管理情報及び第２の変化情報の変更に応じて前記第２のコンピュータから送信される情報に基づき変更され、
前記第２のコンピュータから、前記第１のコンピュータが管理する前記第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する前記第１の変化情報とを比較し、
比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２のコンピュータへ通知して、前記第２のコンピュータが記憶する前記第１の管理情報及び前記第１の変化情報を更新させる、
処理を実行させることを特徴とする、制御プログラム。
【請求項６】
第１及び第２の制御装置を含む複数の制御装置をそなえ、
前記複数の制御装置の各々が、
前記複数の制御装置がそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを記憶する記憶部をそなえ、
前記第２の制御装置は、前記第１の制御装置が管理する第１の管理情報を利用する場合、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報に対応する第１の変化情報を前記第１の制御装置へ送信し、
前記第１の制御装置は、
前記第２の制御装置から受信した前記第１の変化情報と、前記第１の制御装置の前記記憶部が記憶する第１の変化情報とが異なる場合、前記第１の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知し、
前記第２の制御装置は、前記第１の制御装置から受信した前記応答に基づき、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報を更新して、更新後の前記第１の管理情報を利用し、
前記第１の制御装置は、さらに、
前記第１の管理情報の変更に応じて前記第１の変化情報を変更し、
変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２の制御装置へ通知し、
前記複数の制御装置における第３の制御装置が管理する第３の管理情報を前記第１の制御装置が利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３の制御装置へ送信し、
前記第３の制御装置から前記第３の制御装置が記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
前記更新した前記第３の管理情報を利用する、
ことを特徴とする、情報処理システム。
【請求項７】
複数のコンピュータをそなえるシステムにおける第１のコンピュータに、
記憶部が記憶する、前記複数のコンピュータがそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを管理し、
前記システムにおける第２のコンピュータから、前記第１のコンピュータが管理する第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する第１の変化情報とを比較し、
比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２のコンピュータへ通知して、前記第２のコンピュータが記憶する前記第１の管理情報及び前記第１の変化情報を更新させ、
前記第１の管理情報の変更に応じて前記第１の変化情報を変更し、
変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２のコンピュータへ通知し、
前記システムにおける第３のコンピュータが管理する第３の管理情報を前記第１のコンピュータが利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３のコンピュータへ送信し、
前記第３のコンピュータから前記第３のコンピュータが記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
前記更新した前記第３の管理情報を利用する、
処理を実行させることを特徴とする、制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、情報処理システム、及び制御プログラムに関する。
【背景技術】
【０００２】
近年、ストレージ装置の運用形態として、ストレージ装置の記憶容量の拡大又はストレージ装置の持つデータの個別管理の他に、複数のストレージ装置を纏めて、あたかも１台のストレージ装置（システム）としてデータを管理及び運用する形態が注目されている。
【０００３】
このような運用形態を実現するためには、ストレージ装置間で自装置が管理している資源の情報、例えば記憶装置の状態、記憶装置へのアクセス可否情報、ストレージ装置間の接続経路及び接続可否情報等を相互に、定常的に交換することが好ましい。
【０００４】
例えばストレージ装置では、資源管理情報の更新があった場合、更新個所を含む全ての資源管理情報を他のストレージ装置との間で通信することで、ストレージ装置間で自身及び他のストレージ装置の資源管理情報の共有を行なうことができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１２０４１７号公報
【特許文献２】特公昭６２−３６５７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ストレージ装置において資源管理情報の変更が発生してから、システム内の全ストレージ装置へ変更後の資源管理情報が配信されるまでにはタイムラグが存在する。従って、ストレージ装置が他のストレージ装置の資源管理情報を参照するタイミングによっては、変更前の資源管理情報を参照してしまう場合がある。この場合、ストレージ装置は、現在の他のストレージ装置の構成とは異なる資源管理情報に基づく処理を行なってしまい、結果としてシステムの運用に支障をきたす虞もある。
【０００７】
変更前の資源管理情報を参照してしまうことを回避するために、例えばストレージ装置が他のストレージ装置の資源管理情報を参照する際に、当該資源管理情報を他のストレージ装置へ送信して更新の有無を問い合わせることも考えられる。資源管理情報が更新されている場合、ストレージ装置は、他のストレージ装置から変更後の資源管理情報を取得して参照することができる。
【０００８】
しかしながら、資源管理情報は比較的サイズが大きいため、ストレージ装置が他のストレージ装置の資源管理情報を利用する都度、資源管理情報の送信を行なうと通信データ量が増加し、システムの性能が低下する虞もある。
【０００９】
なお、上述した不都合の発生はストレージシステムに限定されるものではない。例えば上述した不都合は、複数の監視装置が各々の監視対象の監視情報を交換して管理するシステムのような、複数の制御装置の各々が管理情報を共有する種々の情報処理システムにおいても同様に生じ得る。
【００１０】
１つの側面では、本発明は、制御装置間での管理情報の通信に起因するシステムの性能低下を抑制することを目的とする。
【課題を解決するための手段】
【００１１】
１つの態様では、本件の制御装置は、複数の制御装置をそなえるシステムにおける第１の制御装置であって、記憶部と、比較部と、通知部とをそなえる。前記記憶部は、前記第１の制御装置が管理する第１の管理情報と、前記第１の管理情報の更新の状況を示す第１の変化情報と、前記複数の制御装置における前記第１の制御装置とは異なる第２の制御装置が管理する第２の管理情報と、前記第２の管理情報の更新の状況を示す第２の変化情報と、を記憶する。前記記憶部が記憶する前記第２の管理情報及び前記第２の変化情報は、前記第２の制御装置が記憶する第２の管理情報及び第２の変化情報の変更に応じて前記第２の制御装置から送信される情報に基づき変更される。また、前記比較部は、前記第２の制御装置から、前記第１の制御装置が管理する前記第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する前記第１の変化情報とを比較する。さらに、前記通知部は、前記比較部による比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知して、前記第２の制御装置が記憶する前記第１の管理情報及び前記第１の変化情報を更新させる。
【発明の効果】
【００１２】
１つの側面では、制御装置間での管理情報の通信に起因するシステムの性能低下を抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態の一例としてのストレージシステムの構成例を示す図である。
【図２】ＣＭのハードウェア構成例を示す図である。
【図３】ＣＭの機能構成例を示す図である。
【図４】資源情報のデータ構造の一例を示す図である。
【図５】装置起動又は組込の際の動作例を示すシーケンス図である。
【図６】図５の説明における資源管理情報の状態例を示す図である。
【図７】図５の説明における資源管理情報の状態例を示す図である。
【図８】図５の説明における資源管理情報の状態例を示す図である。
【図９】図５の説明における資源管理情報の状態例を示す図である。
【図１０】図５の説明における資源管理情報の状態例を示す図である。
【図１１】図５の説明における資源管理情報の状態例を示す図である。
【図１２】装置起動又は組込の際の動作例を示すシーケンス図である。
【図１３】図１２の説明における資源管理情報の状態例を示す図である。
【図１４】図１２の説明における資源管理情報の状態例を示す図である。
【図１５】図１２の説明における資源管理情報の状態例を示す図である。
【図１６】図１２の説明における資源管理情報の状態例を示す図である。
【図１７】図１２の説明における資源管理情報の状態例を示す図である。
【図１８】図１２の説明における資源管理情報の状態例を示す図である。
【図１９】図１２の説明における資源管理情報の状態例を示す図である。
【図２０】資源管理情報が更新される場合の動作例を示すシーケンス図である。
【図２１】図２０の説明における資源管理情報の状態例を示す図である。
【図２２】図２０の説明における資源管理情報の状態例を示す図である。
【図２３】資源管理情報の参照前の動作例を示すシーケンス図である。
【図２４】図２３の説明における資源管理情報の状態例を示す図である。
【図２５】図２３の説明における資源管理情報の状態例を示す図である。
【図２６】図２３の説明における資源管理情報の状態例を示す図である。
【図２７】資源管理情報の配信処理の動作例を説明するフローチャートである。
【図２８】資源管理情報の取得依頼処理の動作例を説明するフローチャートである。
【図２９】取得依頼要求に対する応答処理の動作例を説明するフローチャートである。
【図３０】応答受信処理の動作例を説明するフローチャートである。
【図３１】資源管理情報の参照前の取得依頼処理の動作例を説明するフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下実施形態で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【００１５】
〔１〕一実施形態
〔１−１〕ストレージシステムの構成例
図１は一実施形態の一例としてのストレージシステム１の構成例を示す図である。図１に示すように、ストレージシステム１は、例示的に、中継装置２、複数（図１では２つ）のController Enclosure（ＣＥ）３−１及び３−２、及び複数（図１では２つ）のDrive Enclosure（ＤＥ）５−１及び５−２をそなえる。なお、以下の説明において複数の装置を区別しない場合には、符号のハイフン“−”以降の数字を省略して表記する場合がある。例えばＣＥ３−１及び３−２を区別しない場合には単にＣＥ３と表記する。
【００１６】
ストレージシステム１は、ＤＥ５に複数の記憶装置５１を搭載し、ホスト装置６に対して記憶装置５１の記憶領域を提供することができる。例えばストレージシステム１は、Redundant Arrays of Inexpensive Disks（ＲＡＩＤ）を用いて複数の記憶装置５１にデータを分散又は冗長化した状態で保存することができる。なお、ＣＥ３が記憶装置５１をそなえてもよい。
【００１７】
図１の例において、ＣＥ３−１（ＣＥ＃０）にはＤＥ５−１（ＤＥ＃００）が、ＣＥ３−２（ＣＥ＃１）にはＤＥ５−２（ＤＥ＃１０）がそれぞれ接続されている。以下、ＣＥ３−１及びＣＥ３−１に接続されたＤＥ５−１をストレージ装置１０−１と表記し、ＣＥ３−２及びＣＥ３−２に接続されたＤＥ５−２をストレージ装置１０−２と表記する場合がある。一実施形態においては、ストレージ装置１０−１及び１０−２を纏めて、あたかも１台のストレージ装置（ストレージシステム１）としてデータを管理及び運用する形態を例に挙げて説明する。
【００１８】
なお、図１の例では、ＣＥ３にそれぞれ１つのＤＥ５が接続されるものとしたが、これに限定されるものではない。ＣＥ３の各々には、複数のＤＥ５が並列に接続されてもよく、また、ＣＥ３に接続されたＤＥ５に、さらに１以上のＤＥ５がカスケード状に接続（縦列接続）されてもよい。
【００１９】
ＣＥ３は、中継装置２及びＤＥ５とそれぞれ接続され、種々の制御を行なう制御筐体の一例である。ＣＥ３は１以上のController Module（ＣＭ）４をそなえることができる。図１では、ＣＥ３−１（ＣＥ＃０）が２つのＣＭ４−１（ＣＭ＃０）及びＣＭ４−２（ＣＭ＃１）をそなえ、ＣＥ３−２（ＣＥ＃１）が２つのＣＭ４−３（ＣＭ＃２）及びＣＭ４−４（ＣＭ＃３）をそなえる例を示している。
【００２０】
ＣＭ４は、ホスト装置６から発行されるＤＥ５へのアクセス要求に対する制御を行なう制御装置の一例である。ＣＭ４としてはコンピュータ、例えばサーバやPersonal Computer（ＰＣ）等の情報処理装置が挙げられる。
【００２１】
図１に例示するように、ＣＭ４は、ＣＥ３内の他のＣＭ４との間で冗長化（例えば二重化）されている。ＣＥ３内のＣＭ４のうちの１つのＣＭ４（図１ではＣＭ４−１及び４−３）は、ＣＥ３内で主にストレージ装置１０を制御するマスタＣＭ４としての役割を持つ。また、ＣＥ３内のＣＭ４のうちのマスタＣＭ４以外のＣＭ４（図１ではＣＭ４−２及び４−４）は、マスタＣＭ４に異常が発生したときや切り離されたときにマスタに切り替わるスレーブＣＭ４としての役割を持つ。マスタ及びスレーブは、ストレージ装置１０が起動するときに決定されてもよい。
【００２２】
中継装置２は、複数のＣＭ４の各々を相互に通信可能に接続し、複数のＣＭ４の各々が相互に送受信する情報を中継する装置の一例である。中継装置２としては、例えばFront End Router（ＦＲＴ）等のルータが挙げられる。中継装置２は、例えばPeripheral Component Interconnect (PCI) Express（ＰＣＩｅ）に準拠したアダプタを複数そなえ、複数のＣＭ４の各々とＰＣＩｅに対応したケーブル等によって接続されてもよい。なお、異なるＣＥ３内のＣＭ４同士は中継装置２を介して通信を行なう一方、１つのＣＥ３内のＣＭ４同士は、ＣＭ４間を接続するケーブル、例えばＳＡＳケーブルを介して通信を行なってもよい。ＳＡＳはSerial Attached SCSI (Small Computer System Interface)の略称である。
【００２３】
また、ストレージシステム１における複数のＣＭ４は、相互に情報の通信を行なうことで、ストレージシステム１の制御や複数の記憶装置５１へのアクセス等に関する情報の共有（同期）又は通知等を行なうことができる。一例として、ＣＭ４は、ストレージシステム１の資源（リソース）の管理に用いられる資源情報７（図１参照）を相互に通信する。換言すれば、ストレージシステム１は、複数の制御装置の各々が管理情報を共有する情報処理システムの一例である。
【００２４】
なお、ＣＥ３−１及び３−２はそれぞれ同様の構成とすることができ、ＣＭ４−１〜４−４についてもそれぞれ同様の構成とすることができるため、以下、任意のＣＭ４を例に挙げて説明する。ＣＭ４の詳細については後述する。
【００２５】
ＤＥ５は、複数（図１では３つ）の記憶装置５１（記憶装置＃０〜＃２）をそなえ、ＣＭ４からの要求に応じて記憶装置５１に対するデータ等の書き込み又は読み出し等の種々のアクセスを行なう装置（デバイス）の一例である。
【００２６】
また、ＤＥ５は、配下の記憶装置５１へのアクセスの制御や生存確認等を行なう制御部の一例としての１以上（図１では２つ）のInput Output Module（ＩＯＭ）５２をそなえることができる。ＩＯＭ５２は、ＤＥ５を統括的に制御することができるとともに、自身のＤＥ５に接続されたＣＭ４（例えば図１のＤＥ５−１の場合はＣＭ４−１及び４−２）と記憶装置５１との間でデータを中継するスイッチ装置としての処理を実行することができる。このようなスイッチ装置の一例として、ＳＡＳエクスパンダが挙げられる。また、ＩＯＭ５２は、他のＤＥ５のＩＯＭ５２と接続することも可能である。
【００２７】
記憶装置５１は、種々のデータやプログラム等を格納するハードウェアの一例である。記憶装置５１としては、例えばHard Disk Drive（ＨＤＤ）等の磁気ディスク装置や、Solid State Drive（ＳＳＤ）等の半導体ドライブ装置等の各種記憶装置が挙げられる。
【００２８】
ＣＥ３内の各ＣＭ４は、それぞれＣＥ３に対応するＤＥ５の各々に直接的に又は間接的に接続されてよく、アクセス経路の冗長化を図ることができる。一例として、図１においては、ＣＥ３−１内のＣＭ４−１及び４−２が、それぞれＤＥ５−１の２つのＩＯＭ５２の各々とＳＡＳ等のケーブルにより接続されてもよい。
【００２９】
ホスト装置６は、複数のＣＭ４に接続された上位装置の一例である。ホスト装置６は、複数のＤＥ５（記憶装置５１）に対して種々のアクセスを行なうためのアクセス要求を発行することができる。
【００３０】
なお、図１の例では図示を省略しているが、ホスト装置６は、ホスト装置６と複数のＣＭ４との間の経路を切り替えるスイッチや、Local Area Network（ＬＡＮ）やインターネット等のネットワーク等を介して複数のＣＭ４と接続されてもよい。
【００３１】
なお、ストレージシステム１は、上述した中継装置２、ＣＥ３、及びＤＥ５を搭載するために、例えばラック（図示省略）をそなえ、このラック内に中継装置２、ＣＥ３、及びＤＥ５を抜き挿し可能に搭載することができる。
【００３２】
以下、ストレージシステム１におけるＣＭ４の詳細について説明する。
【００３３】
〔１−２〕ＣＭのハードウェア構成例
まず、図１及び図２を参照して、図１に示すＣＭ４のハードウェア構成例について説明する。図２はＣＭ４のハードウェア構成例を示す図である。図２に示すように、ＣＭ４は、例示的に、Central Processing Unit（ＣＰＵ）４ａ、メモリ４ｂ、記憶部４ｃ、インタフェース部４ｄ、及び入出力部４ｅをそなえることができる。
【００３４】
ＣＰＵ４ａは、種々の制御や演算を行なう演算処理装置（プロセッサ）の一例である。ＣＰＵ４ａは、ＣＭ４内の各ブロックとバスで相互に通信可能に接続されてもよい。なお、演算処理装置としては、ＣＰＵ４ａに代えて、電子回路、例えばMicro Processing Unit（ＭＰＵ）、Application Specific Integrated Circuit（ＡＳＩＣ）、Field Programmable Gate Array（ＦＰＧＡ）等の集積回路（ＩＣ）が用いられてもよい。
【００３５】
メモリ４ｂは、種々のデータやプログラムを格納するハードウェアの一例である。メモリ４ｂは、図１に示す資源情報７を記憶する記憶領域を有してもよく、ＤＥ５に対するアクセス等に用いられるデータやプログラムを一時的に記憶するキャッシュメモリとしても用いられてもよい。メモリ４ｂとしては、例えばRandom Access Memory（ＲＡＭ）等の揮発性メモリが挙げられる。
【００３６】
記憶部４ｃは、種々のデータやプログラム等を格納するハードウェアの一例である。記憶部４ｃとしては、例えばＨＤＤ等の磁気ディスク装置、ＳＳＤ等の半導体ドライブ装置、フラッシュメモリやRead Only Memory（ＲＯＭ）等の不揮発性メモリ等の各種記憶装置が挙げられる。
【００３７】
例えば記憶部４ｃは、ＣＭ４の各種機能の全部若しくは一部を実現する制御プログラム４０を格納することができる。ＣＰＵ４ａは、例えば記憶部４ｃに格納された制御プログラム４０をメモリ４ｂに展開して実行することにより、ＣＭ４の機能を実現することができる。
【００３８】
インタフェース部４ｄは、ホスト装置６、ＤＥ５、他のＣＥ３内のＣＭ４（中継装置２経由）、ＣＥ３内の他のＣＭ４、並びに作業者の作業端末等との間の接続及び通信の制御等を行なう通信インタフェースの一例である。例えばインタフェース部４ｄは、図１に示すＩＦ４ｄ−１〜４ｄ−３や、作業端末を接続するためのアダプタ（ポート）等をそなえてもよい。なお、制御プログラム４０は、図示しないネットワークからインタフェース部４ｄを介してＣＭ４にダウンロードされてもよい。
【００３９】
図１に示す例において、ＩＦ４ｄ−１は、中継装置２との間の接続及び通信の制御等を行なう通信インタフェースの一例である。ＩＦ４ｄ−１としては、例えばＰＣＩｅ等に準拠したアダプタをそなえる１以上のNon Transparent Bridge（ＮＴＢ）が挙げられる。
【００４０】
ＩＦ４ｄ−２は、ホスト装置６との間の接続及び通信の制御等を行なう通信インタフェース（ホストインタフェース）の一例である。ＩＦ４ｄ−２としては、例えばＬＡＮ、ＳＡＳ、Fibre Channel（ＦＣ）、InfiniBand（インフィニバンド）等に準拠したアダプタをそなえる１以上のChannel Adapter（ＣＡ）が挙げられる。ＩＦ４ｄ−２は、これらに準拠したケーブル等によってホスト装置６と接続されてもよい。
【００４１】
ＩＦ４ｄ−３は、ＤＥ５（記憶装置５１）との間の接続及び通信の制御等を行なう通信インタフェースの一例である。ＩＦ４ｄ−３は、例えば複数（図１の例では２つ）のＩＯＣ４ｇと、Expander（ＥＸＰ）４ｈとをそなえることができる。
【００４２】
ＩＯＣ４ｇは、ＤＥ５へのアクセス（Ｉ／Ｏ）を制御するＩ／Ｏ制御部の一例である。また、ＥＸＰ４ｈは、ＣＭ４配下に接続（例えばＳＡＳ接続）可能なデバイス数の拡張を行なうためのモジュールの一例である。ＥＸＰ４ｈは、ＳＡＳに対応したケーブル等によってＤＥ５と接続されてもよい。なお、図１の例では、複数のＩＯＣ４ｇがそれぞれ自身のＣＭ４のＥＸＰ４ｈとＣＥ３内の他のＣＭ４のＥＸＰ４ｈとに接続され、これらのＥＸＰ４ｈはそれぞれＣＥ３に対応するＤＥ５のＩＯＭ５２に接続されている。
【００４３】
図２の説明に戻り、インタフェース部４ｄは、記録媒体４ｆに記録されたデータやプログラムを読み出す読取部をそなえてもよい。読取部は、コンピュータ読取可能な記録媒体４ｆを接続又は挿入可能な接続端子又は装置を含んでよい。読取部としては、例えばUniversal Serial Bus（ＵＳＢ）等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、ＳＤカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体４ｆには制御プログラム４０が格納されてもよい。
【００４４】
入出力部４ｅは、マウス、キーボード、操作ボタン等の入力部、並びにディスプレイ等の出力部の少なくとも一部を含むことができる。例えば入力部は、使用者又はオペレータ等による設定の登録や変更、システムのモード選択（切替）等の各種操作やデータの入力等の作業に用いられてもよく、出力部は、作業者等による設定の確認や各種通知等の出力に用いられてもよい。
【００４５】
上述したＣＭ４のハードウェア構成は例示である。従って、ＣＥ３内の他のＣＭ４間、又は、ＣＭ４内でのハードウェアの増減（例えば任意のブロックの追加や省略）、分割、任意の組み合わせでの統合、バスの追加又は省略等は適宜行なわれてもよい。
【００４６】
〔１−３〕ＣＭの機能構成例
次に、図３を参照して、一実施形態に係るＣＭ４の機能構成例について説明する。図３は図１に示すＣＭ４の機能構成例を示す図である。なお、図３の例では、図１に示すストレージシステム１における一部の装置やケーブル等を省略して示している。
【００４７】
図３に示すように、ＣＭ４は、例示的に、メモリ部４１、更新処理部４２、通信部４３、及び更新判定部４４をそなえる。なお、図３の例では、ＣＥ３−１のマスタＣＭ４であるＣＭ４−１の機能構成例について示しているが、スレーブＣＭ４であるＣＭ４−２、他のＣＥ３−２のＣＭ４−３及び４−４もＣＭ４−１と同様の機能構成をそなえることができる。
【００４８】
メモリ部４１は、資源情報７の情報を記憶する記憶領域を有するものであり、例えば図２に示すメモリ４ｂの少なくとも一部の記憶領域により実現されてもよい。
【００４９】
資源情報７には、図３及び図４に例示するように、ストレージシステム１を構成するストレージ装置１０−１及び１０−２の各々の資源を管理する資源管理情報８ａ及び８ｂが含まれる。以下の説明において、資源管理情報８ａ及び８ｂを区別しない場合には単に資源管理情報８と表記する。
【００５０】
資源管理情報８ａ及び８ｂは、それぞれＣＥ３−１（ＣＥ＃０）及びＣＥ３−２（ＣＥ＃１）の各々が管理する対象の資源に関する情報の一例であり、それぞれ対応するＣＥ３内のＣＭ４によって管理される。ストレージシステム１内の複数のＣＭ４−１〜４−４の各々は、資源管理情報８ａ及び８ｂを含む資源情報７を記憶し、更新及び参照を行なうことでストレージシステム１（ＣＥ３）の制御を行なうことができる。なお、各ＣＭ４が持つ資源管理情報８のデータ構造は全て同一であり、全て同様の手法で管理されるものとする。
【００５１】
図４に示すように、資源管理情報８には、例示的に、ＣＥ３内の各ＣＭ４の状態“CM#x
status”、及び、ＣＥ３に対応するＤＥ５の各ＩＯＭ５２の状態“DE#y IOM#i status”が設定される。また、資源管理情報８には、例示的に、ＣＥ３に対応するＤＥ５の各記憶装置５１の状態及びアクセス可否“DE#y Disk#j status/アクセス可否”、並びに、ＣＥ３内の接続経路の状態及び接続可否“接続経路#z status/接続可否”がさらに設定される。接続経路としては、例えば図１に示すＣＭ４とＤＥ５との間の“＃０”〜“＃３”で示す経路が挙げられる。なお、x、y、z、i、jは、それぞれ対応するＣＥ３内における装置又は経路を特定する任意の値（図１参照）である。
【００５２】
ＣＭ４の状態には、例えば休止“０”、稼働“１”、又は故障“２”等のステートが設定される。ＤＥ５のＩＯＭ５２の状態及び記憶装置５１の状態にも、ＣＭ４の状態と同様のステートが設定され得る。接続経路の状態には、例えばオンライン“０”、又はオフライン（切断）“１”等のステートが設定される。記憶装置５１のアクセス可否及び接続経路の接続可否には、例えばアクセス／接続可能“０”、又はアクセス／接続不可能“１”等のステートが設定される。
【００５３】
また、一実施形態に係る資源管理情報８には、上述した情報に加えてカウンタ値９が設定される。カウンタ値９は、資源管理情報８ごと、換言すればＣＥ３ごとに設けられる情報であり、資源管理情報８の変化を示す情報の一例である。以下、資源管理情報８ａに対応するカウンタ値９をカウンタ値９ａと表記し、資源管理情報８ｂに対応するカウンタ値９をカウンタ値９ｂと表記する場合がある。
【００５４】
図４には、カウンタ値９が資源管理情報８に含まれる情報であるものとして例示しているが、これに限定されるものではない。例えばカウンタ値９は、資源管理情報８とは別の態様で管理される情報であってもよい。一例として、カウンタ値９は、メモリ部４１において資源管理情報８とは異なる記憶領域に記憶されてもよく、或いはＣＭ４がそなえるレジスタ等に格納されてもよい。以下の説明では、図４に示すようにカウンタ値９が資源管理情報８に含まれるものとする。
【００５５】
以上のように、資源情報７に含まれる複数の資源管理情報８は、複数のＣＭ４がそれぞれ管理する複数の管理情報の一例であり、資源管理情報８に対応するカウンタ値９は、複数の管理情報の各々の更新の状況を示す複数の変化情報の一例である。また、メモリ部４１は、複数の資源管理情報８と複数のカウンタ値９とを記憶する記憶部の一例である。
【００５６】
なお、一実施形態において、資源管理情報８は資源情報７の更新の最小単位である。換言すれば、ＣＭ４は、自身のＣＭ４のＣＥ３に関する資源管理情報８を更新するときや、他のＣＥ３に関する更新された資源管理情報８を当該他のＣＥ３のＣＭ４から取得したとき、当該更新に係る資源管理情報８を上書きすることで、資源情報７を最新の状態に更新することができる。
【００５７】
更新処理部４２は資源情報７の更新を行なう。更新処理部４２による資源情報７の更新には、自身のＣＥ３に対応する資源管理情報８の更新と、他のＣＥ３のＣＭ４から取得した情報に基づく当該他のＣＥ３に対応する資源管理情報８の更新とが含まれる。
【００５８】
例えば自身のＣＥ３に対応する資源管理情報８の更新では、更新処理部４２は、自身のＣＥ３に関する資源管理情報８の少なくとも一部を変更する際に、当該資源管理情報８のカウンタ値９を変更することで、資源情報７を更新することができる。一例として、ＣＥ３−１内の更新処理部４２は、ＣＥ３−１における管理対象の資源の状態変化に応じて、ＣＥ３−１に係る資源管理情報８ａを更新するとともに、カウンタ値９ａを増加させる（例えば１を加算する）。なお、カウンタ値９は、ＣＥ３の初期状態（電源投入後）では初期値、例えば“０”である。
【００５９】
一方、他のＣＥ３のＣＭ４から取得した情報に基づく当該他のＣＥ３に対応する資源管理情報８の更新では、更新処理部４２は、通信部４３が当該他のＣＥ３のＣＭ４から取得した情報に基づき資源情報７を更新することができる。例えば更新処理部４２は、通信部４３が取得したカウンタ値９を含む資源管理情報８そのものを自身のＣＭ４が記憶する資源管理情報８に上書きする。換言すれば、更新処理部４２は、資源管理情報８の変更に応じてカウンタ値９を変更させる変更部の一例である。
【００６０】
このように、資源管理情報８は、それぞれ異なるタイミングで更新され、また、異なるＣＥ３のＣＭ４で管理される資源管理情報８のカウンタ値９は、異なるＣＥ３のＣＭ４間において異なるタイミングで更新される。
【００６１】
通信部４３は、他のＣＭ４との間で資源情報７に関する情報の通信を行なう。一例として、通信部４３による通信には、自身のＣＭ４が持つ他のＣＥ３が管理する資源管理情報８の更新の有無の問い合わせ、他のＣＭ４からの問い合わせに対する応答、自身のＣＥ３が管理する資源管理情報８の他のＣＭ４への配信、並びに他のＣＭ４から配信された当該他のＣＭ４のＣＥ３が管理する資源管理情報８の取得、が含まれる。
【００６２】
一例として、他のＣＥ３に係る資源管理情報８の更新の有無の問い合わせでは、通信部４３は、自身のＣＭ４が持つ当該他のＣＥ３に係る資源管理情報８のカウンタ値９を、当該他のＣＥ３に送信する。
【００６３】
また、他の例として、他のＣＭ４からの問い合わせに対する応答では、通信部４３は、当該問い合わせに対する更新判定部４４の判定結果に応じた応答を行なう。
【００６４】
さらに、他の例として、資源管理情報８の配信では、通信部４３は、自身のＣＥ３が管理する資源について変化があったとき、換言すれば更新処理部４２により資源管理情報８が更新されたときに、カウンタ値９を含む当該資源管理情報８を他のＣＭ４に対して配信する。
【００６５】
なお、資源管理情報８の配信及び取得は、既知の種々の手法により実現することができる。例えば資源管理情報８の配信及び取得は、Direct Memory Access（ＤＭＡ）によって行なわれてもよい。一例として、資源管理情報８の配信では、通信部４３は、配信する資源管理情報８が格納されているメモリ部４１、例えばメモリ４ｂのアドレス等の情報を配信先の他のＣＭ４へ通知してもよい。また、資源管理情報８の取得では、他のＣＭ４から通知されたメモリ部４１のアドレスに対してＤＭＡを行ない、他のＣＭ４から配信される資源管理情報８を取得してもよい。
【００６６】
或いは、各ＣＭ４は予め又は配信の際に、配信先のＣＭ４における資源管理情報８の格納アドレスを把握し、資源管理情報８の配信において、通信部４３は、配信する資源管理情報８を配信先のＣＭ４のアドレスへＤＭＡによって書き込んでもよい。
【００６７】
更新判定部４４は、資源情報７の更新の有無を判定する。この判定には、他のＣＭ４からの問い合わせに応じた自身のＣＥ３に係る資源管理情報８の更新の有無の判定と、他のＣＥ３に係る資源管理情報８の更新の有無の判定とが含まれる。
【００６８】
一例として、自身のＣＥ３に係る資源管理情報８の更新有無の判定では、更新判定部４４は、他のＣＭ４からの問い合わせに含まれるカウンタ値９と、自身のＣＭ４が記憶する自身のＣＥ３に係る資源管理情報８のカウンタ値９とを比較する。そして、両者のカウンタ値９が一致する（比較結果に差異がない）場合、更新判定部４４は、他のＣＭ４が記憶する資源管理情報８が更新されていないことを示す応答を通信部４３に行なわせる。更新されていないことを示す応答には、例えば更新なしを示す情報（一例として“０”）が含まれる。一方、両者のカウンタ値９が異なる（比較結果に差異がある）場合、更新判定部４４は、自身のＣＥ３に係る資源管理情報８の情報、例えば格納アドレスを、通信部４３に応答させる。
【００６９】
また、他の例として、更新判定部４４は、他のＣＥ３に係る資源管理情報８を利用する際に、資源管理情報８のカウンタ値９に基づき当該資源管理情報８の資源を管理するＣＥ３のＣＭ４に対して問い合わせを行なう。そして、更新判定部４４は、応答結果に基づき資源管理情報８の更新の有無を判定する。
【００７０】
例えば更新判定部４４は、他のＣＥ３が管理する資源の資源管理情報８を利用する際に、当該資源管理情報８が最新であるか否かを確認する場合、通信部４３を介して当該資源管理情報８のカウンタ値９を当該他のＣＥ３へ通知する。そして、更新判定部４４は、他のＣＥ３からの応答結果が更新なし（カウンタ値９の差異なし）を示す場合には、自身のＣＭ４が持つ当該資源管理情報８が最新であると判定する。この場合、更新処理部４２は当該資源管理情報８の更新を抑止し、ＣＭ４が当該資源管理情報８を利用する。
【００７１】
一方、更新判定部４４は、他のＣＥ３からの応答結果に最新の資源管理情報８の情報、例えば格納アドレスが含まれる場合には、自身のＣＭ４が持つ当該資源管理情報８が最新ではないと判定する。この場合、更新判定部４４は、受信したアドレスを通信部４３に通知し、最新の資源管理情報８を取得させる。
【００７２】
なお、応答結果に最新の資源管理情報８の情報が含まれる場合、換言すれば他のＣＭ４の更新判定部４４による判定で両者のカウンタ値９が異なると判定された場合としては、以下の状況が挙げられる。例えば他のＣＭ４のＣＥ３において資源管理情報８の更新が行なわれてから配信が行なわれる（取得する）までの間に、自身のＣＭ４において当該資源管理情報８（配信前）の参照が発生した場合等である。
【００７３】
また、ＣＭ４が他のＣＥ３に係る資源管理情報８を利用する場合としては、以下の状況が挙げられる。例えば、負荷分散のために、ＣＭ４が他のＣＥ３に接続されたＤＥ５へのアクセスを制御する場合や、ストレージシステム１の全体を管理するマスタとして機能するＣＭ４がストレージシステム１全体の資源の状態を把握する場合等である。
【００７４】
以上のように、更新判定部４４は、他のＣＭ４から、自ＣＭ４が管理する資源管理情報８に対応するカウンタ値９を受信すると、受信したカウンタ値９と、メモリ部４１が記憶するカウンタ値９とを比較する比較部の一例である。
【００７５】
また、通信部４３は、更新判定部４４による比較の結果、受信したカウンタ値９とメモリ部４１が記憶するカウンタ値９とが異なる場合、メモリ部４１が記憶する資源管理情報８及びカウンタ値９に関する情報を含む応答を他のＣＭ４へ通知して、他のＣＭ４が記憶する資源管理情報８及びカウンタ値９を更新させる通知部の一例である。この通知部の実施例としての通信部４３は、受信したカウンタ値９とメモリ部４１が記憶するカウンタ値９とが一致する場合には、上記応答の通知を抑止することができる。
【００７６】
〔１−４〕ストレージシステムの動作例
次に、上述の如く構成されたストレージシステム１の動作例について、ストレージシステム１における資源管理情報８の複数の配信パターンを例に挙げて説明する。なお、以下の説明において、各ＣＥ３に係る最新の資源管理情報８は当該ＣＥ３のマスタＣＭ４が保持しているものとする。例えば図１に示すように、ＣＥ３−１（ＣＥ＃０）の最新の資源管理情報８ａはマスタＣＭ４−１（ＣＭ＃０）が保持し、ＣＥ３−２（ＣＥ＃１）の最新の資源管理情報８ｂはマスタＣＭ４−３（ＣＭ＃２）が保持する。
【００７７】
〔１−４−１〕ストレージ装置の起動又は組込の際の動作例１
はじめに、図５〜図１１及び図２７〜図３０を参照して、マスタＣＭ４におけるストレージ装置１０の起動又は組込の際の動作例について説明する。
【００７８】
なお、以下、ＣＥ＃０のマスタＣＭ＃０の処理について説明するが、他のＣＥ３（例えばＣＥ＃１）のマスタＣＭ４（例えばＣＭ＃２）においても同様の処理が行なわれてもよい。
【００７９】
まず、図５に示すように、ストレージ装置１０の起動又は組込が行なわれる（処理Ｔ１）。このとき、図６に示すように、各ＣＭ４が保持する資源管理情報８には値が設定されておらず、カウンタ値９も初期値、例えば“０”に初期化されている。
【００８０】
次いで、マスタＣＭ＃０の更新処理部４２が自身のＣＥ＃０内の情報を収集し、資源管理情報８ａを作成してカウンタ値９ａを増加させる（処理Ｔ２）。このとき、図７に示すように、マスタＣＭ＃０の資源管理情報８ａのカウンタ値９ａは“１”に更新される。なお、図７では、マスタＣＭ＃２において同様の処理が行なわれた場合の資源管理情報８の状態例も示している。図８〜図１１についても同様である。
【００８１】
そして、マスタＣＭ＃０の通信部４３は、作成した資源管理情報８ａをカウンタ値９ａごと他のＣＭ４、例えばＣＭ＃１〜ＣＭ＃３へ配信する（処理Ｔ３、図２７参照）。他のＣＭ４の更新処理部４２はそれぞれ、取得した資源管理情報８ａで自身のＣＭ４が保持する資源管理情報８ａを更新する（処理Ｔ４〜Ｔ６）。マスタＣＭ＃２においても資源管理情報８ｂについて同様の処理が行なわれることで、図８に示すように、各々のＣＭ４においてストレージ装置１０の起動を完了させるのに用いる資源情報７が揃う。
【００８２】
ここで、処理Ｔ３における資源管理情報８の配信処理について説明する。配信処理では、図２７に示すように、通信部４３がストレージシステム１内の全てのＣＭ４から未選択のＣＭ４を１つ選択し（ステップＳ１）、選択したＣＭ４が自身のＣＭ４であるか否かを判定する（ステップＳ２）。選択したＣＭ４が自身のＣＭ４である場合（ステップＳ２のＹｅｓルート）、処理がステップＳ１に移行する。
【００８３】
一方、選択したＣＭ４が自身のＣＭ４ではない場合（ステップＳ２のＮｏルート）、通信部４３は、選択したＣＭ４が稼働中であるか否かを判定する（ステップＳ３）。なお、この判定は、選択したＣＭ４に係る資源管理情報８の参照、又は当該ＣＭ４に対するポーリング等の生存確認等、既知の種々の手法により行なうことが可能であり、その詳細な説明は省略する。
【００８４】
選択したＣＭ４が稼働中ではない場合（ステップＳ３のＮｏルート）、処理がステップＳ１に移行する。一方、選択したＣＭ４が稼働中の場合（ステップＳ３のＹｅｓルート）、通信部４３は、更新処理部４２が作成した自身のＣＥ３に係る資源管理情報８を、選択したＣＭ４へ配信する（ステップＳ４）。なお、この配信は、選択したＣＭ４へ資源管理情報８の格納アドレス等の情報を送信し、当該選択したＣＭ４が格納アドレスへＤＭＡを行なうこと等により実現される。
【００８５】
次いで、通信部４３は、全てのＣＭ４を選択したか否かを判定し（ステップＳ５）、未選択のＣＭ４が存在すれば（ステップＳ５のＮｏルート）、処理がステップＳ１に移行する。一方、全てのＣＭ４を選択した場合（ステップＳ５のＹｅｓルート）、配信処理が終了する。
【００８６】
図５の説明に戻り、仮に、マスタＣＭ＃２による資源管理情報８ｂの作成又は配信が遅延している場合、マスタＣＭ＃０の更新判定部４４は、他のＣＥ＃１の資源管理情報８ｂのカウンタ値９ｂが初期値“０”であり、未だ資源管理情報８ｂを取得していないと判定することもできる。この場合、マスタＣＭ＃０の通信部４３は、当該資源管理情報８ｂを持つマスタＣＭ＃２に対して、更新判定依頼、換言すれば最新の資源管理情報８ｂの取得依頼を通信部４３を介して送信する（処理Ｔ７、図９参照）。なお、この取得依頼には、資源管理情報８ｂのカウンタ値９ｂ、この場合“０”が含まれる。
【００８７】
なお、マスタＣＭ＃０の更新判定部４４は、処理Ｔ７において他のＣＥ＃１の資源管理情報８ｂのカウンタ値９ｂが初期値ではない場合であっても、通信部４３に取得依頼を行なわせてもよい。
【００８８】
ここで、処理Ｔ７における資源管理情報８の取得依頼処理について説明する。取得依頼処理では、図２８に示すように、通信部４３が全ての資源管理情報８から未選択の資源管理情報８を１つ選択し（ステップＳ１１）、選択した資源管理情報８を管理するマスタＣＭ４、換言すれば取得依頼先のＣＭ４が稼働中であるか否かを判定する（ステップＳ１２）。
【００８９】
取得依頼先ＣＭ４が稼働中ではない場合（ステップＳ１２のＮｏルート）、処理がステップＳ１１に移行する。一方、取得依頼先ＣＭ４が稼働中の場合（ステップＳ１２のＹｅｓルート）、通信部４３は、最新の資源管理情報８を持つ取得依頼先ＣＭ４へ、自身のＣＭ４が持つ取得対象の資源管理情報８のカウンタ値９を送信する（ステップＳ１３）。
【００９０】
次いで、通信部４３は、全ての資源管理情報８を選択したか否かを判定し（ステップＳ１４）、未選択の資源管理情報８が存在すれば（ステップＳ１４のＮｏルート）、処理がステップＳ１１に移行する。一方、全ての資源管理情報８を選択した場合（ステップＳ１４のＹｅｓルート）、取得依頼処理が終了する。
【００９１】
図５の説明に戻り、マスタＣＭ＃０から取得依頼を受信したマスタＣＭ＃２は、図２９に例示するように、取得依頼に基づく応答処理を行なう（処理Ｔ８）。
【００９２】
処理Ｔ８における応答処理では、図２９に示すように、マスタＣＭ＃２の更新判定部４４が取得依頼に含まれるカウンタ値９ｂと自身のＣＭ４が保持する資源管理情報８ｂのカウンタ値９ｂとを比較し、両者のカウンタ値９ｂに差異があるか否かを判定する（ステップＳ２１）。比較の結果、両者のカウンタ値９ｂに差異がある場合（ステップＳ２１のＹｅｓルート）、更新判定部４４は、自身のＣＭ４が持つ最新の資源管理情報８ｂの情報、例えば格納アドレスを通信部４３に応答させ（ステップＳ２２）、応答処理が終了する。
【００９３】
一方、両者のカウンタ値９ｂに差異がない場合（ステップＳ２１のＮｏルート）、更新判定部４４は、資源管理情報８ｂが更新されていない旨、例えば“０”を通信部４３に応答させ（ステップＳ２３）、応答処理が終了する。なお、この場合、資源管理情報８ｂは未だ作成されていない又は作成中であり、マスタＣＭ＃２において資源管理情報８ｂの作成が完了次第、処理Ｔ３〜Ｔ６と同様の処理により最新の資源管理情報８ｂが配信される。
【００９４】
図５の説明に戻り、マスタＣＭ＃０は、マスタＣＭ＃２からの応答結果に基づき、図３０に例示する応答受信処理を行なう（処理Ｔ９）。
【００９５】
処理Ｔ９における応答受信処理では、図３０に示すように、マスタＣＭ＃０の更新判定部４４が受信した応答が“０”であるか否か、換言すれば資源管理情報８ｂが最新であるか否かを判定する（ステップＳ３１）。受信した応答が“０”ではない、換言すれば資源管理情報８ｂが最新でない場合（ステップＳ３１のＮｏルート）、応答されたマスタＣＭ＃２のアドレスから最新の資源管理情報８ｂを取得し、自身のＣＭ４が保持する資源管理情報８ｂを更新し（ステップＳ３２、図１１参照）、応答受信処理が終了する。
【００９６】
一方、受信した応答が“０”である場合（ステップＳ３１のＹｅｓルート）、資源管理情報８ｂが最新であるため、更新判定部４４は資源管理情報８ｂの更新を行なわず（図１０参照）、応答受信処理が終了する。
【００９７】
以上により、マスタＣＭ４におけるストレージ装置１０の起動又は組込の際の処理が終了する。
【００９８】
〔１−４−２〕ストレージ装置の起動又は組込の際の動作例２
次に、図１２〜図１９を参照して、スレーブＣＭ４におけるストレージ装置１０の起動又は組込の際の動作例について説明する。
【００９９】
なお、以下、ＣＥ＃０のスレーブＣＭ＃１の処理について説明するが、他のＣＥ３（例えばＣＥ＃１）のスレーブＣＭ４（例えばＣＭ＃３）においても同様の処理が行なわれてもよい。
【０１００】
まず、図１２に示すように、ストレージ装置１０の起動又は組込が行なわれる（処理Ｔ１１）。このとき、図１３に示すように、各ＣＭ４が保持する資源管理情報８には値が設定されておらず、カウンタ値９も初期値、例えば“０”に初期化されている。
【０１０１】
次いで、組み込まれたスレーブＣＭ＃１の更新処理部４２がマスタＣＭ＃０に対して資源管理情報８ａの更新依頼を送信する（処理Ｔ１２、図１４参照）。なお、図１４では、スレーブＣＭ＃３において同様の処理が行なわれる様子も示している。図１５〜図１９についても同様である。
【０１０２】
スレーブＣＭ＃１から更新依頼を受信すると、マスタＣＭ＃０の更新処理部４２は、図５の処理Ｔ３と同様にＣＥ＃０の資源管理情報８ａを作成し、カウンタ値９ａを増加させる（処理Ｔ１３、図１５参照）。
【０１０３】
また、マスタＣＭ＃０の通信部４３は、図５の処理Ｔ４と同様に、作成した資源管理情報８ａをカウンタ値９ａごと他のＣＭ４、例えばＣＭ＃１〜ＣＭ＃３へ配信する（処理Ｔ１４、図１６及び図２７参照）。他のＣＭ４の更新処理部４２はそれぞれ、取得した資源管理情報８ａで自身のＣＭ４が保持する資源管理情報８ａを更新する（処理Ｔ１５〜Ｔ１７）。
【０１０４】
ここで、仮に、マスタＣＭ＃２による資源管理情報８ｂの作成又は配信が遅延している場合、スレーブＣＭ＃１の更新判定部４４は、他のＣＥ＃１の資源管理情報８ｂのカウンタ値９ｂが初期値“０”であり、最新の資源管理情報８ｂを取得できていないと判定することもできる。この場合、スレーブＣＭ＃１の通信部４３は、当該資源管理情報８ｂを持つマスタＣＭ＃２に対して、資源管理情報８ｂのカウンタ値９ｂ（この場合“０”）を含む取得依頼を通信部４３を介して送信する（処理Ｔ１８、図１７及び図２８参照）。
【０１０５】
なお、スレーブＣＭ＃１の更新判定部４４は、処理Ｔ１８において他のＣＥ＃１の資源管理情報８ｂのカウンタ値９ｂが初期値ではない場合であっても、通信部４３に取得依頼を行なわせてもよい。
【０１０６】
スレーブＣＭ＃１から取得依頼を受信したマスタＣＭ＃２は、取得依頼に基づき図２９に例示する応答処理を行なう（処理Ｔ１９）。スレーブＣＭ＃１は、マスタＣＭ＃２からの応答結果に基づき、図３０に例示する応答受信処理を行なう（処理Ｔ２０）。
【０１０７】
なお、応答受信処理では、スレーブＣＭ＃１の更新判定部４４は、上述のように、応答が“０”であれば、自身のＣＭ４が持つ資源管理情報８ｂが最新であるため、資源管理情報８ｂの更新を行なわない（図１８参照）。一方、応答が“０”でなければ、自身のＣＭ４が持つ資源管理情報８ｂが最新ではないため、更新判定部４４は、応答されたマスタＣＭ＃２のアドレスから最新の資源管理情報８ｂを取得して、自身のＣＭ４が保持する資源管理情報８ｂを更新する（図１９参照）。
【０１０８】
以上により、スレーブＣＭ４におけるストレージ装置１０の起動又は組込の際の処理が終了する。
【０１０９】
なお、図５に示す例では、マスタＣＭ＃０は、ストレージ装置１０の起動又は組込の際に自発的に資源管理情報８ａの作成及び配信を行なう（図５の処理Ｔ２及びＴ３参照）。一方、図１２に示す例では、マスタＣＭ＃０は、スレーブＣＭ＃１からの更新依頼に応じて資源管理情報８ａの作成及び配信を行なう（図１２の処理Ｔ１３及びＴ１４参照）。
【０１１０】
仮に、マスタＣＭ＃０による自発的な資源管理情報８ａの作成（図５の処理Ｔ２）及び配信の実施前後に、スレーブＣＭ＃１から更新依頼が発行されると、マスタＣＭ＃０は、以下のように処理してもよい。
【０１１１】
・自発的な資源管理情報８ａの作成（図５の処理Ｔ２）が未実施の場合。
マスタＣＭ＃０は、スレーブＣＭ＃１からの更新依頼に基づき図１２の処理Ｔ１３（資源管理情報８ａの作成及びカウンタ値９ａの“１”への更新）並びにＴ１４（資源管理情報８ａの配信）を実施し、その後、図５の処理Ｔ７及びＴ９を実施する。なお、マスタＣＭ＃０は、処理Ｔ１３及びＴ１４の実施後に、図５の処理Ｔ２及びＴ３を実施してもよい。
【０１１２】
・自発的な資源管理情報８ａの作成（図５の処理Ｔ２）が実施中、又は、作成が実施済且つ配信（図５の処理Ｔ３）が未実施の場合。
マスタＣＭ＃０は、図５の処理Ｔ２（資源管理情報８ａの作成及びカウンタ値９ａの“１”への更新）を完了させてから、スレーブＣＭ＃１からの更新依頼に基づき図１２の処理Ｔ１４（資源管理情報８ａの配信）を実施し、その後、図５の処理Ｔ７及びＴ９を実施する。なお、マスタＣＭ＃０は、処理Ｔ１４の実施後に、改めて図５の処理Ｔ２及びＴ３を実施してもよい。
【０１１３】
或いは、マスタＣＭ＃０は、図５の処理Ｔ２（資源管理情報８ａの作成及びカウンタ値９ａの“１”への更新）並びに処理Ｔ３（資源管理情報８ａの配信）を完了させてもよい。そして、マスタＣＭ＃０は、スレーブＣＭ＃１からの更新依頼に基づき図１２の処理Ｔ１３（資源管理情報８ａの更新及びカウンタ値９ａの“２”への更新）並びに処理Ｔ１４（資源管理情報８ａの配信）を実施し、その後、図５の処理Ｔ７及びＴ９を実施する。
【０１１４】
・自発的な資源管理情報８ａの配信（図５の処理Ｔ３）が実施中又は実施済の場合。
マスタＣＭ＃０は、スレーブＣＭ＃１からの更新依頼に基づき図１２の処理Ｔ１３（資源管理情報８ａの更新及びカウンタ値９ａの“２”への更新）並びに処理Ｔ１４（資源管理情報８ａの配信）を実施し、その後、図５の処理Ｔ７及びＴ９を実施する。
【０１１５】
以上のように、マスタＣＭ４は、スレーブＣＭ４から更新依頼を受信すると、自発的な資源管理情報８の作成又は配信の有無にかかわらず、更新依頼に対して処理を行なうことが好ましい。これにより、スレーブＣＭ４が更新前の資源管理情報８を利用してしまうリスクを低減させることができる。
【０１１６】
〔１−４−３〕資源管理情報が更新される場合の動作例
次に、図２０〜図２２を参照して、資源管理情報８が更新される場合の動作例について説明する。
【０１１７】
なお、以下、ストレージシステム１では同じＣＥ３内のＣＭ４同士がポーリングにより定期的に相互に生存確認を行なっているものとする。また、以下、ＣＥ＃０のスレーブＣＭ＃１が切り離されたことにより資源管理情報８ａが更新される場合の動作例について説明するが、マスタＣＭ４（例えばＣＥ＃０）が切り離された場合には、スレーブＣＭ４（例えばＣＭ＃１）が新たなマスタに昇格し、新たなマスタＣＭ＃１により同様の処理が行なわれてもよい。
【０１１８】
図２０に示すように、スレーブＣＭ＃１が故障等によりストレージ装置１０−１から切り離された後（処理Ｔ２１）、マスタＣＭ＃０は、スレーブＣＭ＃１に対する定期的な生存確認を行なう（処理Ｔ２２）。
【０１１９】
スレーブＣＭ＃１が切り離されているため、マスタＣＭ＃０は生存確認においてＣＭ＃１の切り離しを検出し、更新処理部４２が資源管理情報８ａを更新し、カウンタ値９ａを増加させる（処理Ｔ２３）。例えば図２１に示すように、資源管理情報８ａのカウンタ値９ａが“１０”である場合にマスタＣＭ＃０がスレーブＣＭ＃１の切り離しを検出すると、更新処理部４２は資源管理情報８ａのスレーブＣＭ＃１のＣＭ４の状態を更新するとともに、カウンタ値９ａを増加させ“１１”に更新する。
【０１２０】
次いで、マスタＣＭ＃０の通信部４３は、図５の処理Ｔ４と同様に、更新した資源管理情報８ａをカウンタ値９ａごと他のＣＭ４、例えばＣＭ＃２及びＣＭ＃３へ配信する（処理Ｔ２４、図２７参照）。他のＣＭ４の更新処理部４２はそれぞれ、取得した資源管理情報８ａで自身のＣＭ４が保持する資源管理情報８ａを更新する（処理Ｔ２５及びＴ２６、図２２参照）。
【０１２１】
なお、処理Ｔ２４では、図２７のステップＳ３における選択したＣＭ４が稼働中か否かの判定により、切り離されたスレーブＣＭ＃１に対する資源管理情報８ａの配信は抑止される（ステップＳ３のＮｏルート）。
【０１２２】
以上により、ＣＭ４の切り離し等によって管理対象の資源に変更が生じ、資源管理情報８が更新される場合の処理が終了する。
【０１２３】
〔１−４−４〕資源管理情報の参照前の動作例
次に、図２３〜図２６及び図３１を参照して、ＣＭ４による資源管理情報８の参照前の動作例について説明する。
【０１２４】
上述のように、ＣＥ３が管理するストレージ装置１０の構成に変更が発生してから、当該変更に基づく最新の資源管理情報８が他のＣＥ３に配信されるまでに、若干のタイムラグが生じる。従って、他のＣＥ３が当該資源管理情報８を参照するタイミングによっては、古い（更新前の）資源管理情報８を参照してしまう可能性がある。
【０１２５】
そこで、ＣＭ４は、他のＣＥ３に係る資源管理情報８を参照する前に、当該資源管理情報８が最新か否かを確認してもよい。
【０１２６】
例えば、図２３に示すように、ＣＥ＃１においてストレージ装置１０−２の構成に変更が発生した場合、マスタＣＭ＃２の更新処理部４２は、ＣＥ＃１の資源管理情報８ｂを更新する（処理Ｔ３１）。また、マスタＣＭ＃２は、当該資源管理情報８ｂのカウンタ値９ｂを増加させる（処理Ｔ３２）。
【０１２７】
ここで、マスタＣＭ＃２が更新したＣＥ＃１の資源管理情報８ｂを他のＣＭ４、例えばＣＭ＃０、ＣＭ＃１、及びＣＭ＃３に配信する前に、ＣＥ＃０のスレーブＣＭ＃１がＣＥ＃１の資源管理情報８ｂの参照が発生したとする（処理Ｔ３３）。
【０１２８】
この場合、スレーブＣＭ＃１の更新判定部４４は、参照しようとする資源管理情報８ｂについて、ＣＥ＃１のマスタＣＭ＃２へ取得依頼（更新判定依頼）を行なう（処理Ｔ３４、図２４及び図３１参照）。
【０１２９】
ここで、処理Ｔ３４における資源管理情報８の参照前の取得依頼処理について説明する。取得依頼（参照前）処理では、図３１に示すように、通信部４３が参照しようとする資源管理情報８を管理するマスタＣＭ４、換言すれば取得依頼先のＣＭ４が稼働中であるか否かを判定する（ステップＳ４１）。
【０１３０】
取得依頼先ＣＭ４が稼働中ではない場合（ステップＳ４１のＮｏルート）、取得依頼処理が終了する。この場合、ＣＭ４（例えばスレーブＣＭ＃１）は管理者の管理端末等へエラーを通知してもよい。なお、取得依頼先ＣＭ４が稼働中ではない場合には同じＣＥ３内の他のＣＭ４がマスタＣＭ４として稼働している可能性が高い。そこで、ＣＭ４は、資源管理情報８を参照して取得依頼先ＣＭ４のＣＥ３内の他のＣＭ４を取得依頼先ＣＭ４として、ステップＳ４１の処理を再度実行してもよい。
【０１３１】
一方、取得依頼先ＣＭ４が稼働中の場合（ステップＳ４１のＹｅｓルート）、通信部４３は、最新の資源管理情報８を持つ取得依頼先ＣＭ４へ、自身のＣＭ４が持つ取得を依頼する資源管理情報８のカウンタ値９を送信し（ステップＳ４２）、取得依頼処理が終了する。
【０１３２】
図２３の説明に戻り、スレーブＣＭ＃１から取得依頼を受信したマスタＣＭ＃２は、取得依頼に基づき図２９に例示する応答処理を行なう（処理Ｔ３５）。
【０１３３】
なお、応答処理では、例えばマスタＣＭ＃２の更新判定部４４は、取得依頼に含まれるカウンタ値９ｂと自身のＣＭ＃２が保持する資源管理情報８ｂのカウンタ値９ｂとが異なる場合には（図２５参照）、自身のＣＭ＃２が保持する資源管理情報８ｂのアドレスを通信部４３に応答させる。一方、両者のカウンタ値９ｂが一致する場合には、更新判定部４４は通信部４３に“０”を応答させる。
【０１３４】
また、スレーブＣＭ＃１は、マスタＣＭ＃２からの応答結果に基づき、図３０に例示する応答受信処理を行なう（処理Ｔ３６）。
【０１３５】
なお、応答受信処理では、スレーブＣＭ＃１の更新判定部４４は、上述のように、応答が“０”であれば、自身のＣＭ４が持つ資源管理情報８ｂが最新であるため、資源管理情報８ｂの更新を行なわない。一方、応答が“０”でなければ、自身のＣＭ４が持つ資源管理情報８ｂが最新ではないため、更新判定部４４は、応答されたマスタＣＭ＃２のアドレスから最新の資源管理情報８ｂを取得して、自身のＣＭ４が保持する資源管理情報８ｂを更新する（図２６参照）。
【０１３６】
そして、スレーブＣＭ＃１は、ＣＥ＃１の資源管理情報８ｂを参照する（処理Ｔ３７）。以上により、ＣＭ４による資源管理情報８の参照前の処理が終了する。
【０１３７】
なお、資源管理情報８内の全ての情報について、ＣＭ４がこれらを参照する前に最新の資源管理情報８であるか否かを確認しようとすると、通信データ量が増加してしまう。そこで、一実施形態において、ＣＭ４が参照する資源管理情報８の項目のうち、項目の参照前に資源管理情報８の取得依頼（更新判定依頼）処理を行なうこととする項目を制限してもよい。
【０１３８】
一例として、他のＣＭ４の生存確認を行なう等のストレージシステム１の運用に関わる比較的重要な項目、例えばＣＭ４の状態等の項目については、当該項目の参照前に資源管理情報８の取得依頼処理を行なうこととしてもよい。
【０１３９】
このように、取得依頼処理を行なうこととする項目を制限することにより、資源管理情報８の更新の有無の確認に起因する通信データ量を、一実施形態に係る手法よりもさらに削減することができ、ストレージシステム１の性能低下をさらに抑制することができる。
【０１４０】
以上のように、一実施形態に係るストレージシステム１によれば、各ＣＭ４において資源管理情報８の管理用のカウンタが設けられ、資源の管理対象の状況変化に応じてカウントアップが行なわれる。そして、カウントアップが行なわれたときに他のＣＭ４に対して変化のあった当該資源の資源管理情報８及びカウンタ値９が通知される。また、各ＣＭ４は、他のＣＭ４の資源管理情報８が最新版であるか否かを対応するカウンタ値９を送信することで他のＣＭ４に問い合わせ、最新の資源管理情報８が他のＣＭ４に存在する場合に当該資源管理情報８を取り寄せる。
【０１４１】
資源管理情報８のように纏まったデータサイズの情報を、他のＣＭ４が管理する資源管理情報８を利用する都度、資源情報７を送信して問い合わせると、通信データ量が膨大になってしまう。これに対し、上述したストレージシステム１によれば、各ＣＭ４が持つ最小単位の資源管理情報８に対して、ＣＭ４間の情報交換を少ない通信データ量で効率的に実施することができ、ＣＭ４間での管理情報の通信に起因するストレージシステム１の性能低下を抑制することができる。
【０１４２】
なお、上述したように、ストレージシステム１の処理性能の低下や資源管理情報８の配信のタイムラグの影響を許容できるのであれば、各ＣＭ４が資源管理情報８を定期的に交換するだけでも、資源管理情報８の共有を達成することができる。しかし、ストレージシステム１のような処理性能及び正確性が要求されるシステムにおいては、これらの不都合を許容することは難しい。
【０１４３】
例えば多くのＣＥ３、例えば１６台等のＣＥ３をそなえる大規模なストレージシステム１においては、資源管理情報８及びカウンタ値９の配信先のＣＭ４の数も増加する。この場合、上述した例と比較して、配信元のＣＭ４の処理遅延や伝送経路の輻輳等が生じる可能性が高くなるため、配信元のＣＭ４で資源管理情報８及びカウンタ値９が更新されてから配信先のＣＭ４が最新の情報を取得するまでのタイムラグも大きくなり得る。
【０１４４】
一実施形態に係る手法によれば、他のＣＥ３に係る資源管理情報８の更新のタイムラグが大きい場合であっても、ＣＭ４は当該資源管理情報８の利用前に更新有無を問い合わせることで、誤った（古い）資源管理情報８を参照するリスクを低下させることができる。
【０１４５】
また、問い合わせの結果、参照しようとする資源管理情報８が最新である場合には、他のＣＭ４による資源管理情報８の送信が抑制されるため、通信データ量の増加を抑止し、伝送経路の輻輳が生じる可能性を低減させることができる。
【０１４６】
このように、一実施形態に係る手法は、処理性能及び正確性が要求されるストレージシステム１、特に大規模なストレージシステム１を含むシステムに用いて好適であるといえる。
【０１４７】
また、一実施形態において、資源管理情報８に付加される当該資源管理情報８の変更の状況を示す情報としてカウンタ値９が用いられる。
【０１４８】
このように、フラグではなくカウンタ値９が用いられることで、資源管理情報８の変更とカウンタ値９とを対応付ける、換言すれば資源管理情報８の変更に追従させてカウンタ値９を変化させることが可能となる。従って、例えばストレージシステム１における障害発生時のデバッグや調査等において、個々の資源管理情報８がどの時点までの変化を反映したものであるのかを遡って解析及び追跡することも可能となる。
【０１４９】
また、時刻情報ではなく数値としてカウンタ値９が定義されるため、例えば資源管理情報８に時刻情報が付加される場合に想定されるＣＭ４間での時刻同期の機能を実装せずに済み、ストレージシステム１を簡素な構成で実現することができる。また、ＣＭ４間での時刻同期に伴う時刻のずれ、例えば時刻の進み又は戻しの対策も不要とすることができる。
【０１５０】
〔２〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
【０１５１】
例えば、図３に示すＣＭ４の各機能ブロックは、それぞれ任意の組み合わせで併合してもよく、分割してもよい。
【０１５２】
また、ストレージシステム１が２つのＣＥ３をそなえるものとしたが、これに限定されるものではなく、ストレージシステム１には、Ｎ個（Ｎは任意の自然数）のＣＥ３がそなえられてもよい。この場合、メモリ部４１には、ストレージシステム１を構成するストレージ装置１０（ＣＥ３）の数（Ｎ）と同数の資源管理情報８及びカウンタ値９が含まれてよい。
【０１５３】
さらに、資源管理情報８及びカウンタ値９の配信を行なうＣＭ４は、自身が持つ資源情報７のうちの自身のＣＥ３に対応する資源管理情報８及びカウンタ値９を他のＣＭ４へ配信するものとして説明したが、これに限定されるものではない。例えば配信を行なうＣＭ４は、自身が持つ資源情報７のうちの、自身のＣＥ３に対応する資源管理情報８及びカウンタ値９を含む少なくとも一部、一例として資源情報７全体を他のＣＭ４へ配信してもよい。
【０１５４】
また、一実施形態においては、複数のＣＭ４がそれぞれ資源管理情報８及びカウンタ値９の配信及び取得を行なう機能をそなえるものとして説明したが、これに限定されるものではない。例えば、一部のＣＭ４は資源管理情報８の配信を行ない、他のＣＭ４は資源管理情報８の取得を行なうようにしてもよい。この場合、各ＣＭ４には、機能（役割）ごとに分割した制御プログラム４０、例えば更新処理部４２、通信部４３、及び更新判定部４４の機能をそれぞれ配信及び取得の機能に分割したものを設定し実行させてもよい。
【０１５５】
なお、一実施形態においては、複数の制御装置の各々が管理情報を共有する情報処理システムとしてストレージシステム１を例に挙げたが、これに限定されるものではない。
【０１５６】
上述した情報処理システムの他の例として、複数の周辺装置が接続されたコンピュータシステム、例えば複数のサーバと、複数のサーバの制御及び監視を行なう複数のサービスプロセッサとをそなえる情報処理システムが挙げられる。このような情報処理システムにおいても、制御装置の一例としてのサービスプロセッサ間で複数のサービスプロセッサの各々の監視情報を共有する場合に一実施形態に係る手法を用いることができる。この場合、例えば管理情報の一例としての監視情報に、監視情報の取得及び配信の要否を判断するためのカウンタ値が対応付けられればよい。
【０１５７】
このように、一実施形態に係る情報処理システムとしては、個々の制御装置が管理する資源を体系化し、定型化した管理体系があって、複数の制御装置が管理する資源の状態を表現可能なデータ記述体系が実現できていることが好ましく、このような情報処理システムであれば一実施形態に係る手法を容易に適用することができる。
【０１５８】
〔３〕付記
以上の実施形態に関し、更に以下の付記を開示する。
【０１５９】
（付記１）
複数の制御装置をそなえるシステムにおける第１の制御装置であって、
前記複数の制御装置がそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを記憶する記憶部と、
前記システムにおける第２の制御装置から、前記第１の制御装置が管理する第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する前記第１の変化情報とを比較する比較部と、
前記比較部による比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知して、前記第２の制御装置が記憶する前記第１の管理情報及び前記第１の変化情報を更新させる通知部と、をそなえる
ことを特徴とする、制御装置。
【０１６０】
（付記２）
前記通知部は、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが一致する場合、前記第２の制御装置が記憶する前記第１の管理情報が更新されていないことを示す応答を通知することを特徴とする、付記１記載の制御装置。
【０１６１】
（付記３）
前記第１の管理情報の変更に応じて前記第１の変化情報を変更させる変更部をさらにそなえ、
前記通知部は、変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２の制御装置へ通知する、
ことを特徴とする、付記１又は付記２記載の制御装置。
【０１６２】
（付記４）
前記第１の変化情報は、前記第１の管理情報の変更に応じて前記変更部により値が変更されるカウンタ値であることを特徴とする、付記３記載の制御装置。
【０１６３】
（付記５）
前記通知部は、前記システムにおける第３の制御装置が管理する第３の管理情報を前記第１の制御装置が利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３の制御装置へ送信し、
前記変更部は、前記第３の制御装置から前記第３の制御装置が記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
前記変更部が更新した前記第３の管理情報を利用する、
ことを特徴とする、付記３又は付記４記載の制御装置。
【０１６４】
（付記６）
前記第３の制御装置から前記記憶部が記憶する前記第３の管理情報が更新されていないことを示す応答を受信すると、前記記憶部が記憶する前記第３の管理情報を利用することを特徴とする、付記５記載の制御装置。
【０１６５】
（付記７）
第１及び第２の制御装置を含む複数の制御装置をそなえ、
前記複数の制御装置の各々が、
前記複数の制御装置がそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを記憶する記憶部をそなえ、
前記第２の制御装置は、前記第１の制御装置が管理する第１の管理情報を利用する場合、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報に対応する第１の変化情報を前記第１の制御装置へ送信し、
前記第１の制御装置は、
前記第２の制御装置から受信した前記第１の変化情報と、前記第１の制御装置の前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記第１の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２の制御装置へ通知し、
前記第２の制御装置は、前記第２の制御装置から受信した前記応答に基づき、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報を更新して、更新後の前記第１の管理情報を利用する、
ことを特徴とする、情報処理システム。
【０１６６】
（付記８）
前記第１の制御装置は、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが一致する場合、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報が更新されていないことを示す応答を通知し、
前記第２の制御装置は、前記第１の管理情報が更新されていないことを示す応答を受信すると、前記第２の制御装置の前記記憶部が記憶する前記第１の管理情報を利用する、
ことを特徴とする、付記７記載の情報処理システム。
【０１６７】
（付記９）
前記第１の制御装置は、
前記第１の管理情報の変更に応じて前記第１の変化情報を変更させ、
変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２の制御装置へ通知する、
ことを特徴とする、付記７又は付記８記載の情報処理システム。
【０１６８】
（付記１０）
前記第１の変化情報は、前記第１の管理情報の変更に応じて前記第１の制御装置により値が変更されるカウンタ値であることを特徴とする、付記９記載の情報処理システム。
【０１６９】
（付記１１）
複数のコンピュータをそなえるシステムにおける第１のコンピュータに、
記憶部が記憶する、前記複数のコンピュータがそれぞれ管理する複数の管理情報と、前記複数の管理情報の各々の更新の状況を示す複数の変化情報とを管理し、
前記システムにおける第２のコンピュータから、前記第１のコンピュータが管理する第１の管理情報に対応する第１の変化情報を受信すると、受信した前記第１の変化情報と、前記記憶部が記憶する前記第１の変化情報とを比較し、
比較の結果、受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが異なる場合、前記記憶部が記憶する前記第１の管理情報及び前記第１の変化情報に関する情報を含む応答を前記第２のコンピュータへ通知して、前記第２のコンピュータが記憶する前記第１の管理情報及び前記第１の変化情報を更新させる、
処理を実行させることを特徴とする、制御プログラム。
【０１７０】
（付記１２）
前記コンピュータに、
受信した前記第１の変化情報と前記記憶部が記憶する前記第１の変化情報とが一致する場合、前記第２の制御装置が記憶する前記第１の管理情報が更新されていないことを示す応答を通知する、
処理を実行させることを特徴とする、付記１１記載の制御プログラム。
【０１７１】
（付記１３）
前記コンピュータに、
前記第１の管理情報の変更に応じて前記第１の変化情報を変更させ、
変更後の前記第１の管理情報及び前記第１の変化情報に関する情報を前記第２のコンピュータへ通知する、
処理を実行させることを特徴とする、付記１１又は付記１２記載の制御プログラム。
【０１７２】
（付記１４）
前記第１の変化情報は、前記第１の管理情報の変更に応じて前記変更部により値が変更されるカウンタ値であることを特徴とする、付記１３記載の制御プログラム。
【０１７３】
（付記１５）
前記コンピュータに、
前記システムにおける第３のコンピュータが管理する第３の管理情報を前記第１のコンピュータが利用する場合、前記記憶部が記憶する前記第３の管理情報に対応する第３の変化情報を前記第３の制御装置へ送信し、
前記第３のコンピュータから前記第３のコンピュータが記憶する前記第３の管理情報及び前記第３の変化情報に関する情報を含む応答を受信すると、受信した応答に基づいて、前記記憶部が記憶する前記第３の管理情報及び前記第３の変化情報を更新し、
更新した前記第３の管理情報を利用可能と判断する、
処理を実行させることを特徴とする、付記１３又は付記１４記載の制御プログラム。
【０１７４】
（付記１６）
前記コンピュータに、
前記第３のコンピュータから前記記憶部が記憶する前記第３の管理情報が更新されていないことを示す応答を受信すると、前記記憶部が記憶する前記第３の管理情報を利用可能と判断する、
処理を実行させることを特徴とする、付記１５記載の制御プログラム。
【符号の説明】
【０１７５】
１    ストレージシステム
１０、１０−１、１０−２    ストレージ装置
２    中継装置
３、３−１、３−２    コントローラエンクロージャ
４、４−１〜４−４    コントローラモジュール
４ａ    ＣＰＵ
４ｂ    メモリ
４ｃ    記憶部
４ｄ    インタフェース部
４ｄ−１〜４ｄ−３    インタフェース
４ｅ    入出力部
４ｆ    記録媒体
４ｇ    ＩＯコントローラ
４ｈ    エクスパンダ
４０    制御プログラム
４１    メモリ部
４２    更新処理部
４３    通信部
４４    更新判定部
５、５−１、５−２    ドライブエンクロージャ
５１    記憶装置
５２    ＩＯモジュール
６    ホスト装置
７    資源情報
８、８ａ、８ｂ    資源管理情報
９、９ａ、９ｂ    カウンタ値
【図１】
0006641813.tif 000002
【図２】
0006641813.tif 000003
【図３】
0006641813.tif 000004
【図４】
0006641813.tif 000005
【図５】
0006641813.tif 000006
【図６】
0006641813.tif 000007
【図７】
0006641813.tif 000008
【図８】
0006641813.tif 000009
【図９】
0006641813.tif 000010
【図１０】
0006641813.tif 000011
【図１１】
0006641813.tif 000012
【図１２】
0006641813.tif 000013
【図１３】
0006641813.tif 000014
【図１４】
0006641813.tif 000015
【図１５】
0006641813.tif 000016
【図１６】
0006641813.tif 000017
【図１７】
0006641813.tif 000018
【図１８】
0006641813.tif 000019
【図１９】
0006641813.tif 000020
【図２０】
0006641813.tif 000021
【図２１】
0006641813.tif 000022
【図２２】
0006641813.tif 000023
【図２３】
0006641813.tif 000024
【図２４】
0006641813.tif 000025
【図２５】
0006641813.tif 000026
【図２６】
0006641813.tif 000027
【図２７】
0006641813.tif 000028
【図２８】
0006641813.tif 000029
【図２９】
0006641813.tif 000030
【図３０】
0006641813.tif 000031
【図３１】
0006641813.tif 000032