(57)【要約】計算機システムの構成が変化を示すイベントが検出された場合、必要なイベントについてのみ障害解析に用いるための情報を生成すること。  管理装置は、計算機システムの構成変化をイベントとして検出し、イベント管理表Ｔ３０に記録する。管理装置は、障害を解析するためのイベント伝播モデルを保持しており、イベント伝播モデルに対応するイベントを対象イベント管理情報Ｔ３４に記録する。管理装置は、検出されたイベントが対象イベント管理情報に登録されている場合に、障害解析処理を実行する。
2012131868.tif 000002
【特許請求の範囲】
【請求項１】
計算機システムを管理する方法であって、
前記計算機システムは、複数のノード装置と、前記複数のノード装置を管理するための管理装置とを含んでおり、
前記管理装置は、少なくとも一つの所定の解析ルールと、前記管理装置が検知しうるイベントと前記所定の解析ルールとの対応関係を管理する対象イベント管理情報とを保持しており、
前記所定の解析ルールは、障害の発生原因となる原因イベントと、前記原因イベントにより引き起こされる障害を示す関連イベントとの関係を定義しており、
前記管理装置は、
前記各ノード装置の構成変化をイベントとして検知した場合、そのイベントが前記対象イベント管理情報に登録されているか否かを判定し、
検知された前記イベントが前記対象イベント管理情報に登録されている場合に、所定の処理を実行する、
計算機システムの管理方法。
【請求項２】
前記管理装置は、前記複数のノード装置から構成情報を取得し、
前記所定の処理は、検知された前記イベントと前記対象イベント管理情報に基づいて処理すべき前記解析ルールを特定し、特定された前記解析ルールを前記構成情報に適用して、障害解析のための情報を生成する処理である、
請求項１に記載の計算機システムの管理方法。
【請求項３】
前記管理装置は、前記所定の解析ルールの内容に基づいて、前記対象イベント管理情報を作成して保持する、
請求項２に記載の計算機システムの管理方法。
【請求項４】
前記管理装置は、
前記各ノード装置間の接続関係を示すトポロジを生成するためのトポロジ生成方法を複数記憶するトポロジ生成情報を保持しており、
前記所定の解析ルールに対応する所定のトポロジ生成方法を前記トポロジ生成情報から取得し、
取得された前記所定のトポロジ生成方法に規定されているノード装置を、イベントの発生元として前記対象イベント管理情報に登録することにより、前記対象イベント管理情報を作成して保持する、
請求項３に記載の計算機システムの管理方法。
【請求項５】
前記管理装置は、
所定のタイミングで、前記対象イベント管理情報を作成して保持するようになっており、
前記所定のタイミングとは、前記管理装置が初めて起動した場合、または、新しい前記所定の解析ルールが追加された場合、または、既存の前記所定の解析ルールが削除または変更された場合、の少なくともいずれか一つの場合である、
請求項４に記載の計算機システムの管理方法。
【請求項６】
前記各ノード装置のいずれかにおいて障害が検出された場合、前記障害解析のための情報に基づいて、検出された前記障害の原因を推定する、
請求項５に記載の計算機システムの管理方法。
【請求項７】
複数のノード装置を含む計算機システムを管理するための管理装置であって、
マイクロプロセッサと、前記マイクロプロセッサにより実行される所定のコンピュータプログラム及び所定の情報を記憶する記憶装置と、前記マイクロプロセッサが前記各ノード装置と通信するための通信ポートを備え、
前記記憶装置には、少なくとも一つの所定の解析ルールと、前記管理装置が検知しうるイベントと前記所定の解析ルールとの対応関係を管理する対象イベント管理情報とが格納されており、
前記所定の解析ルールは、障害の発生原因となる原因イベントと、前記原因イベントにより引き起こされる障害を示す関連イベントとの関係を定義しており、
前記マイクロプロセッサは、前記所定のコンピュータプログラムを実行することで、
前記各ノード装置を監視し、
前記各ノード装置の構成変化をイベントとして検知した場合、そのイベントが前記対象イベント管理情報に登録されているか否かを判定し、
検知された前記イベントが前記対象イベント管理情報に登録されている場合に、所定の処理を実行する、
計算機システムの管理装置。
【請求項８】
前記記憶装置には、前記複数のノード装置から取得した構成情報が格納され、
前記所定の処理は、検知された前記イベントと前記対象イベント管理情報に基づいて処理すべき前記解析ルールを特定し、特定された前記解析ルールを前記構成情報に適用して、障害解析のための情報を生成する処理である、
請求項７に記載の計算機システムの管理装置。
【請求項９】
前記マイクロプロセッサは、前記所定の解析ルールの内容に基づいて、前記対象イベント管理情報を作成して保持する、
請求項８に記載の計算機システムの管理装置。
【請求項１０】
前記記憶装置には、さらに、前記各ノード装置間の接続関係を示すトポロジを生成するためのトポロジ生成方法を複数記憶するトポロジ生成情報が格納されており、
前記マイクロプロセッサは、
前記所定の解析ルールに対応する所定のトポロジ生成方法を前記トポロジ生成情報から取得し、
取得された前記所定のトポロジ生成方法に規定されているノード装置を、イベントの発生元として前記対象イベント管理情報に登録することにより、前記対象イベント管理情報を作成して保持する、
請求項９に記載の計算機システムの管理装置。
【請求項１１】
前記マイクロプロセッサは、
所定のタイミングで、前記対象イベント管理情報を作成して保持するようになっており、
前記所定のタイミングとは、前記管理装置が初めて起動した場合、または、新しい前記所定の解析ルールが追加された場合、または、既存の前記所定の解析ルールが削除または変更された場合、の少なくともいずれか一つの場合である、
請求項１０に記載の計算機システムの管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機システムの管理方法及び管理装置に関する。
【背景技術】
【０００２】
多数のノード装置を有する計算機システムを管理する管理ソフトウェアは、障害または障害の予兆を検出すると、それらの中から原因となる事象を推定する（特許文献１）。より具体的には、特許文献１に記載の管理ソフトウェアは、管理対象の各装置で生じる各種障害をイベント化し、イベントデータベースにイベント情報を蓄積する。管理ソフトウェアは、解析エンジンを有する。解析エンジンは、管理対象装置に発生した複数の障害イベントの因果関係を解析する。【０００３】
解析エンジンは、管理対象装置のインベントリ情報を持つ構成データベースにアクセスして、I/O（Input/Output）系路上にある装置内構成要素を「トポロジ」と呼ばれる一つのグループとして認識する。解析エンジンは、そのトポロジに障害伝播モデルを適用して、因果律行列を構築する。【０００４】
障害伝播モデルは、事前に定められた、条件文及び解析結果から構成される。因果律行列には、原因となる障害を示す原因イベントと、原因イベントにより引き起こされている障害を示す関連イベント群とが含まれる。具体的には、ルールのTHEN部に、障害の根本原因として記載されているイベントが原因イベントである。ルールのIF部に記載されているイベントのうち原因イベント以外のものが関連イベントである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第７１０７１８５号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
計算機システム内の或る装置において障害が発生すると、その障害が原因となり、障害の発生した装置に接続された他の一つまたは複数の装置でも別の障害が発生する。この結果、計算機システム内で複数の障害が発見される。【０００７】
ホストコンピュータ、ネットワーク装置、ストレージ装置のような種々のノード装置を管理する管理ソフトウェアは、障害解析機能を有する。管理ソフトウェアは、解析機能を用いて、複数の障害のうち根本原因となる障害を管理者に提示する。【０００８】
障害解析機能を実現するための障害解析エンジンは、障害解析ノウハウに基づき定義された複数のイベント伝播モデルを持つ。管理ソフトウェアは、ノード装置の構成情報から装置間のトポロジを取得し、そのトポロジにイベント伝播モデルを当てはめる。管理ソフトウェアは、装置で生じた障害イベントと、その障害の根本原因となるイベントとの対応関係を表す、因果律行列を出力する。障害解析エンジンは、因果律行列を記憶領域に保持し、障害解析に利用する。【０００９】
計算機システムは、種々の理由で、新たなノード装置が追加されたり、既存のノード装置が取り外されたり、ノード装置の設定が変更されたりする。このように、計算機システムの構成は変化する。管理ソフトウェアは、保持している構成情報の変更を検知する度に、因果律行列を破棄する。管理ソフトウェアは、最新のトポロジに基づいてイベント伝播モデルを展開し、最新の構成に対応する因果律行列を新たに作成する。以後、計算機システムの構成が変化する度に、イベント伝播モデルの展開処理が実行される。【００１０】
しかし、管理ソフトウェアが検知する構成変更の中には、イベント伝播モデルを再展開する必要のない構成変更も含まれていると考えられる。従来技術では、イベント伝播モデルの再展開が不要な構成変更であっても、イベント伝播モデルを再展開しているため、管理ソフトウェアの処理負荷が増大する。例えば、大規模なデータセンタ等のような計算機システムでは、ノード装置の数が多いため、修理又は点検、増設または減設のために、比較的頻繁に構成が変化する。【００１１】
本発明は、上記の問題に鑑みてなされたもので、管理のための処理負荷を軽減できるようにした計算機システムの管理方法及び管理装置を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一つの観点に係る計算機システムを管理する方法では、計算機システムは、複数のノード装置と、複数のノード装置を管理するための管理装置とを含んでいる。管理装置は、少なくとも一つの所定の解析ルールと、前記管理装置が検知しうるイベントと前記所定の解析ルールとの対応関係を管理する対象イベント管理情報とを保持している。所定の解析ルールは、障害の発生原因となる原因イベントと、原因イベントにより引き起こされる障害を示す関連イベントとの関係を定義している。管理装置は、各ノード装置の構成変化をイベントとして検知した場合、そのイベントが対象イベント管理情報に登録されているか否かを判定し、検知されたイベントが対象イベント管理情報に登録されている場合に、所定の処理を実行するようになっている。【００１３】
管理装置は、複数のノード装置から構成情報を取得し、所定の処理は、検知されたイベントと対象イベント管理情報に基づいて処理すべき解析ルールを特定し、特定された解析ルールを構成情報に適用して、障害解析のための情報を生成する処理であってもよい。例えば、計算機システムの具体的な構成に所定の解析ルールを当てはめて、障害を解析するための具体的な情報（例えば後述の因果律行列）を生成してもよい。【００１４】
管理装置は、所定の解析ルールの内容に基づいて、対象イベント管理情報を作成して保持してもよい。【００１５】
管理装置は、各ノード装置間の接続関係を示すトポロジを生成するためのトポロジ生成方法を複数記憶するトポロジ生成情報を保持しており、所定の解析ルールに対応する所定のトポロジ生成方法をトポロジ生成情報から取得し、取得された所定のトポロジ生成方法に規定されているノード装置を、イベントの発生元として対象イベント管理情報に登録することにより、対象イベント管理情報を作成して保持してもよい。【００１６】
管理装置は、所定のタイミングで、対象イベント管理情報を作成して保持するようになっており、所定のタイミングとは、管理装置が初めて起動した場合、または、新しい所定の解析ルールが追加された場合、または、既存の所定の解析ルールが削除または変更された場合、の少なくともいずれか一つの場合であってもよい。【００１７】
各ノード装置のいずれかにおいて障害が検出された場合、障害解析のための情報に基づいて、検出された障害の原因を推定してもよい。【００１８】
本発明は、計算機システムの管理方法、計算機システムを管理するためのコンピュータプログラムとして捉えることもできる。
【図面の簡単な説明】
【００１９】
【図１】計算機システムの物理構成例を示す図である。
【図２】ホストコンピュータの構成例を示す図である。
【図３】ストレージ装置の構成例を示す図である。
【図４】管理サーバの構成例を示す図である。
【図５】IPスイッチの構成例を示す図である。
【図６Ａ】論理ボリューム管理表の構成例を示す図である。
【図６Ｂ】論理ボリューム管理表の他の例を示す図である。
【図６Ｃ】論理ボリューム管理表のさらに他の例を示す図である。
【図７Ａ】ボリューム管理表の構成例を示す図である。
【図７Ｂ】ボリューム管理表の他の例を示す図である。
【図８Ａ】iSCSIターゲット管理表の構成例を示す図である。
【図８Ｂ】iSCSIターゲット管理表の他の例を示す図である。
【図９】I/Oポート管理表の構成例を示す図である。
【図１０】RAIDグループ管理表の構成例を示す図である。
【図１１】イベント管理表の構成例を示す図である。
【図１２Ａ】イベント伝播モデルの構成例を示す図である。
【図１２Ｂ】イベント伝播モデルの他の例を示す図である。
【図１３Ａ】因果律行列の構成例を示す図である。
【図１３Ｂ】因果律行列の他の例を示す図である。
【図１３Ｃ】因果列行列のさらに他の例を示す図である。
【図１３Ｄ】因果列行列のさらに別の例を示す図である。
【図１４Ａ】トポロジ生成方式の構成例を示す図である。
【図１４Ｂ】トポロジ生成方式の他の例を示す図である。
【図１５】比較例としての再展開要否確認処理のフローチャートである。
【図１６】比較例としてのイベント伝播モデル再展開処理のフローチャートである。
【図１７】展開対象イベント管理表の構成例を示す図である。
【図１８】展開対象イベント伝播モデル管理表の構成例を示す図である。
【図１９】再展開要否確認処理のフローチャートである。
【図２０】イベント伝播モデル再展開処理のフローチャートである。
【図２１】展開対象イベント管理表生成処理のフローチャートである。
【図２２】構成情報取得処理のフローチャートである。
【図２３】管理サーバが実施する処理の全体概念図である。
【発明を実施するための形態】
【００２０】
以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。
【００２１】
本実施形態では、構成変更イベントが発生する毎に、再展開が必要なイベント伝播モデルを特定し、再展開が必要なイベント伝播モデルについてのみ展開を行なう。展開要否の判断には、展開対象イベント管理表を用いる。展開対象イベント管理表は、例えば、構成変更イベントのうち再展開処理が必要なイベントの種別と、再展開すべきイベント伝播モデルとを対応付けて定義する。
【００２２】
本実施形態によれば、イベント伝播モデルの再展開処理が必要な構成変更イベントについてのみ、イベント伝播モデル再展開処理を実施できる。従って、システムを管理する処理の負荷を軽減できる。
【００２３】
さらに、本実施形態では、管理者がイベント伝播モデルを追加もしくは削除した場合、展開対象イベント管理表の内容は自動的に更新される。
【００２４】
なお、本明細書では、実施形態において使用される情報を、「ａａａ表」という表現で説明しているが、これに限らず、例えば、「ａａａリスト」、「ａａａデータベース」、「ａａａキュー」等の他の表現を用いてもよい。本実施形態で用いられる情報が、データ構造に依存しないことを示すために、「ａａａ情報」と呼ぶこともある。
【００２５】
本実施形態で使用される情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いることがあるが、これらは互いに置換が可能である。
【００２６】
さらに、本実施形態の処理動作の説明では、「コンピュータプログラム」または「モジュール」を動作主体（主語）として説明することがある。プログラムまたはモジュールは、マイクロプロセッサによって実行される。プログラムまたはモジュールは、定められた処理を、メモリ及び通信ポート（通信制御装置）を用いながら実行する。従って、プロセッサを動作主体（主語）として読み替えても良い。
【００２７】
プログラムまたはモジュールを主語として開示された処理は、管理サーバ等の計算機等が行う処理として読み替えてもよい。さらに、コンピュータプログラムの一部または全ては、専用ハードウェアによって実現されてもよい。コンピュータプログラムは、プログラム配布サーバまたは記憶メディアによって計算機にインストールされてもよい。
【実施例１】
【００２８】
図１〜図５は、計算機システムの全体構成および計算機システムに接続される各装置の構成を示す。図６〜図１４は、各装置の備える管理用の情報を示す。【００２９】
図１は、計算機システムの物理的構成を示す図である。計算機システムは、例えば、ホストコンピュータ１０と、ストレージ装置２０と、管理サーバ３０と、IPスイッチ４０と、ウェブサーバ５０と、を有する。各装置１０，２０，３０，４０，５０は、通信ネットワーク６０によって通信可能に接続されている。【００３０】
ホストコンピュータ１０（１），１０（２）は、例えば、図示しないクライアントコンピュータからファイルのI/O要求を受信し、そのI/O要求に基づいてストレージ装置２０（１），２０（２）にアクセスする。管理サーバ（管理計算機）３０は、計算機システム全体の運用を管理する。なお、特に区別する必要がない場合、ホストコンピュータ１０（１），１０（２）をホストコンピュータ１０と呼び、ストレージ装置２０（１），２０（２）をストレージ装置２０と呼ぶ。【００３１】
ウェブサーバ５０は、通信ネットワーク６０を介して、管理サーバ３０のGUI（Graphical
User Interface）表示処理モジュールＰ３３と通信し、WEBブラウザに各種情報を表示させる。ユーザは、ウェブサーバ５０のWEBブラウザに表示された情報を参照することで、計算機システム内の各装置１０，２０，４０を管理する。【００３２】
なお、ウェブサーバ５０に代えて、携帯電話または携帯情報端末のような携帯型の計算機を用いて、管理サーバ３０の提供する情報を参照したり、管理サーバ３０に指示を与えたりする構成でもよい。管理サーバ３０とウェブサーバ５０とを一つのサーバに設ける構成でもよい。さらに、ホストコンピュータ１０に、管理サーバ３０の機能およびウェブサーバ５０の機能のうち少なくともいずれか一方の機能を設ける構成でもよい。【００３３】
図２は、ホストコンピュータ１０の内部構成例を示す。ホストコンピュータ１０は、例えば、通信ポート１００と、プロセッサ（図中ＣＰＵ）１１０と、メモリ１２０と、を備える。これら１００，１１０，１２０は、内部バス等を介して接続される。【００３４】
通信ポート（以下、ポート）１００は、通信ネットワーク６０を介して通信するための回路である。プロセッサ１１０は、メモリ１２０に記憶された各種コンピュータプログラムを読み込んで実行する。【００３５】
メモリ１２０には、例えば、アプリケーションプログラムＰ１１と、オペレーティングシステムＰ１０と、論理ボリューム管理表Ｔ１０と、が格納される。メモリ１２０には、例えば、フラッシュメモリデバイスまたはハードディスクドライブのような記憶装置を含めてもよい。【００３６】
アプリケーションプログラムＰ１１は、オペレーティングシステムＰ１０から提供された記憶領域を使用して、その記憶領域にデータを入出力する。アプリケーションプログラム（アプリケーションと略記する場合もある）Ｐ１０は、例えば、顧客管理プログラム、売上げ管理プログラム、動画像配信プログラムなどのように構成され、図外のクライアントコンピュータにサービスを提供する。【００３７】
オペレーティングシステムＰ１０は、ホストコンピュータ１０に接続されたストレージ装置２０の論理ボリューム２３２（図３参照）を記憶領域として、アプリケーションプログラムＰ１１に認識させる。【００３８】
図２では、I/Oポートと管理ポートの両方を含むポート１００として表現しているが、I/Oポートと管理ポートとを別々に設ける構成でもよい。I/Oポートとは、ストレージ装置２０とiSCSIにより通信を行うための通信ポートである。管理ポートとは、管理サーバ３０がホストコンピュータ１０内の管理情報を取得するための通信ポートである。【００３９】
図３は、ストレージ装置２０の内部構成例を示す。ストレージ装置２０は、例えば、I/Oポート２００（１），２００（２）と、管理ポート２０１と、コントローラ２１０（１），２１０（２）と、管理メモリ２２０と、記憶装置２３０とを備える。これら２００，２０１，２１０，２２０，２３０は、内部バス等で接続される。【００４０】
I/Oポート２００（１），２００（２）は、通信ネットワーク６０を介してホストコンピュータ１０に接続するための通信ポートである。区別しない場合、I/Oポート２００と呼ぶ。管理ポート２０１は、通信ネットワーク６０を介して管理サーバ３０に接続するための通信ポートである。【００４１】
コントローラ２１０（１），２１０（２）は、ストレージ装置２０の動作を制御するための装置である。区別しない場合、コントローラ２１０（１），２１０（２）をコントローラ２１０と呼ぶ。【００４２】
各コントローラ２１０は、その内部に、ストレージ装置２０の動作を制御するためのプロセッサと、ホストコンピュータ１０との間で送受信するデータを一時的に記憶するキャッシュメモリとを備える。各コントローラ２１０は、I/Oポート２００とRAIDグループ２３１の間に介在し、両者の間でデータを受け渡す。【００４３】
コントローラ２１０は冗長構成を備えており、いずれか一方のコントローラが停止した場合でも、他方のコントローラがストレージ装置２０の制御を受け継ぐことができる。【００４４】
RAIDグループ２３１は、１つまたは複数の記憶装置２３０を含む。複数の記憶装置２３０のそれぞれ有する物理的記憶領域をRAID構成として、RAIDグループ２３１を生成することもできる。RAIDグループ２３１には、論理的な記憶領域である、論理ボリューム２３２を一つ以上設けることができる。【００４５】
論理ボリューム２３２は、１つの記憶装置２３０の持つ物理的記憶領域に基づいて生成することもできる。この場合、その物理的記憶領域は、RAID構成である必要はない。【００４６】
記憶装置２３０としては、例えば、ハードディスクデバイス、半導体メモリデバイス、光ディスクデバイス、光磁気ディスクデバイス等のデータを読み書き可能な種々の記憶装置を利用可能である。【００４７】
記憶装置２３０としてハードディスクデバイスを用いる場合、例えば、ＦＣ（Fibre Channel）ディスク、ＳＣＳＩ（Small Computer System Interface）ディスク、ＳＡＴＡディスク、ＡＴＡ（AT Attachment）ディスク、ＳＡＳ（Serial Attached SCSI）ディスク等を用いることができる。【００４８】
また、例えば、フラッシュメモリ、ＦｅＲＡＭ（Ferroelectric Random Access Memory）、ＭＲＡＭ（MagnetoresistiveRandom Access Memory）、相変化メモリ（Ovonic Unified Memory）、ＲＲＡＭ（Resistance RAM）等の種々の記憶装置を用いることもできる。さらに、例えば、フラッシュメモリデバイスとハードディスクデバイスのように、種類の異なる記憶装置を混在させる構成でもよい。【００４９】
管理メモリ２２０には、例えば、ストレージ装置を管理する管理プログラムＰ２０と、ボリューム管理表Ｔ２０と、iSCSIターゲット管理表Ｔ２１と、I/Oポート管理表Ｔ２２と、RAIDグループ管理表Ｔ２３と、が格納される。各管理表Ｔ２０，Ｔ２１，Ｔ２２，Ｔ２３の詳細は後述する。【００５０】
管理プログラムＰ２０は、管理ポート２０１を経由して管理サーバ３０と通信し、管理サーバ３０にストレージ装置２０の構成情報を提供する。【００５１】
なお、ストレージ装置２０は、図３に示す構成に限らない。ストレージ装置２０は、ストレージコントローラと、記憶装置を備えていればよい。ストレージコントローラは、例えば、ホストコンピュータ１０に論理ボリュームを提供する機能と、ホストコンピュータ１０からのアクセス要求（I/O要求）に基づいてデータを読み書きする機能と、データを一時的に記憶する機能を備えていればよい。ストレージコントローラと記憶装置とは同一筐体に設けられている必要はなく、それぞれ別々の筐体に設けられてもよい。なお、ストレージ装置２０をストレージシステムと呼び変えてもよい。【００５２】
図４は、管理サーバ３０の内部構成例を示す。管理サーバ３０は、例えば、管理ポート３００と、プロセッサ３１０と、メモリ３２０と、二次記憶領域３３０と、出力装置３４０と、入力装置３５０とを有し、これら３００−３５０が内部バス等の回路を介して相互に接続されている。【００５３】
管理ポート３００は、通信ネットワーク６０を介して管理サーバ３０と通信する回路である。プロセッサ３１０は、後述する各ソフトウェアモジュールＰ３０−Ｐ３５を読み込んで実行する。出力装置３４０は、例えば、ディスプレイ、プリンタ、スピーカー等から構成される。出力装置３４０は、後述の処理結果を出力する。入力装置３５０は、例えば、キーボード、マウス、タッチパネル、マイクロフォン等から構成される。管理者（ストレージ管理者）は、入力装置３５０を介して、管理サーバ３０に指示を与える。【００５４】
メモリ３２０には、例えば、プログラム制御モジュールＰ３０と、構成情報取得モジュールＰ３１と、状態取得モジュールＰ３２と、GUI表示処理モジュールＰ３３と、イベント解析処理モジュールＰ３４と、イベント伝播モデル展開モジュールＰ３５と、が格納されている。各モジュールの詳細は後述する。図中では、便宜上、モジュールの名称を一部省略して表示することがある。例えば、イベント解析処理モジュールＰ３４は、図中では、イベント解析モジュールとして表示されている。【００５５】
なお、図４では、各モジュールは、メモリ３２０に記憶されるソフトウェアモジュールとして提供されているが、これに代えて、各モジュールをハードウェアモジュールとして生成してもよい。さらに、各モジュールの行う処理が一つ以上のプログラムコードとして提供されても良い。さらに、モジュール間の明確な境界が存在しなくても良い。【００５６】
二次記憶領域３３０には、例えば、イベント管理表Ｔ３０と、イベント伝播モデルリポジトリＴ３１と、因果律行列Ｔ３２と、トポロジ生成方式リポジトリＴ３３と、展開対象イベント管理表Ｔ３４と、展開対象イベント伝播モデル管理表Ｔ３５と、構成データベースＴ３６と、が格納されている。説明の便宜上、イベント伝播モデルに符号Ｔ３１を付したり、トポロジ生成方式に符号Ｔ３３を付したりする場合がある。【００５７】
構成データベースＴ３６には、構成情報取得モジュールＰ３１が収集した各構成情報が記憶される。構成情報には、ホストコンピュータ１０から取得される情報と、ストレージ装置２０から取得される情報とがある。ホストコンピュータ１０から取得される情報には、論理ボリューム管理表Ｔ１０がある。ストレージ装置２０から取得される情報には、ボリューム管理表Ｔ２０と、iSCSIターゲット管理表Ｔ２１と、I/Oポート管理表Ｔ２２と、RAIDグループ管理表Ｔ２３がある。【００５８】
二次記憶領域３３０は、例えば、フラッシュメモリデバイスまたはハードディスクドライブのいずれか一つまたは両方から構成することができる。二次記憶領域３３０に代えて、各管理表Ｔ３０−Ｔ３６をメモリ３２０に記憶させてもよい。二次記憶領域３３０に記憶されている管理表Ｔ３０−Ｔ３６の一部をメモリ３２０に記憶させてもよい。【００５９】
状態取得モジュールＰ３２は、管理対象の各ノード装置（ホストコンピュータ１０，ストレージ装置２０）に定期的にアクセスし、各ノード装置内の各コンポーネントの状態を取得する。【００６０】
イベント解析処理モジュールＰ３４は、因果律行列Ｔ３２を参照し、状態取得モジュールＰ３２が取得したノード装置の異常状態の、根本原因を解析する。【００６１】
GUI表示処理モジュールＴ３３は、入力装置３５０を介した管理者からの要求に応じ、各ノード装置から取得した構成情報を、出力装置３４０を介して表示する。入力装置３５０と出力装置３４０とは別々な装置でもよいし、または、一つ以上のまとまった装置として構成されてもよい。【００６２】
なお、管理サーバ３０は、１つのコンピュータから構成してもよいし、複数のコンピュータから構成してもよい。さらに、出力装置３４０及び入力装置３５０の代わりに、管理サーバ３０に表示用計算機を接続してもよい。表示用計算機は、入力装置及び出力装置を備える。管理者は、表示用計算機を介して、管理サーバ３０から情報を取得したり、管理サーバ３０に指示を与えたりすることができる。表示用計算機と管理サーバ３０とは、例えば、無線または有線で接続される。表示用計算機は、パーソナルコンピュータ、携帯電話、携帯情報端末として構成できる。【００６３】
本明細書では、計算機システム（情報処理システム）を管理し、表示用情報を表示する一つ以上の計算機の集合を管理システムと呼ぶことがある。管理サーバが表示用情報を表示する場合は、管理サーバが管理システムである。管理サーバと表示用計算機（例えばウェブサーバ５０）の組み合わせも、管理システムである。管理処理の高速化または高信頼化のために複数の計算機で、管理サーバと同等の処理を実現してもよい。この場合は、それら複数の計算機（表示を表示用計算機が行う場合は表示用計算機も含めて）が、管理システムである。【００６４】
図５は、IPスイッチ４０の構成を示す。IPスイッチ４０は、例えば、プロセッサ４１０と、メモリ４２０と、I/Oポート４００（１），４００（２）と、管理ポート４０１とを備え、これら４１０，４２０，４００，４０１は、内部バス等を介して相互に接続されている。【００６５】
メモリ４２０には、例えば、制御プログラム及び各種管理情報（いずれも不図示）が格納される。プロセッサ４１０は、制御プログラムを実行して、IPスイッチ４０の動作を制御する。I/Oポート４００（１），４００（２）は、通信ネットワーク６０を介してホストコンピュータ１０に接続される。管理ポート４０１は、通信ネットワーク６０を介して、管理サーバ３０に接続される。【００６６】
図６Ａ、図６Ｂ及び図６Ｃは、論理ボリューム管理表Ｔ１０の構成例を示す。論理ボリューム管理表Ｔ１０は、ホストコンピュータ１０の使用する論理ボリュームを管理するための情報である。【００６７】
論理ボリューム管理表Ｔ１０は、例えば、ドライブ名Ｃ１００と、iSCSIイニシエータ名Ｃ１０１と、接続先iSCSIターゲットＣ１０２と、LUN
ID  Ｃ１０３の各フィールドを対応付けて管理する。【００６８】
ドライブ名Ｃ１００は、ホストコンピュータ１０内で各論理ボリューム２３２の識別子となるドライブ名を登録するためのフィールドである。iSCSIイニシエータ名Ｃ１０１は、iSCSIイニシエータ名を登録するフィールドである。iSCSIイニシエータは、論理ボリューム２３２の実体が存在するストレージ装置２０との通信に用いられる、ホストコンピュータ１０のI/Oポート１００の識別子である。接続先iSCSIターゲットＣ１０２は、論理ボリューム２３２の実体が存在するストレージ装置２０との通信に用いる、ストレージ装置２０のI/Oポート２００の識別子である。LUN ID  Ｃ１０３は、ストレージ装置において論理ボリューム２３２の識別子となるLUN（Logical Unit
Number） IDを登録するフィールドである。【００６９】
図６Ａは、論理ボリューム管理表Ｔ１０の具体的な値の一例を示す。図６Ａの第１行目には、ホストコンピュータ上で（E:）というドライブ名で示される論理ボリュームが記載されている。その論理ボリューム（E:）は、「com.abc.sv1」というiSCSIイニシエータ名で示されるホストコンピュータ上のポート１００と、「com.abc.sto1」というiSCSIターゲット名で示されるストレージ装置上のポート２００とを介して、ストレージ装置２０と接続されている。その論理ボリューム（E:）には、「0」というLUN IDがストレージ装置上で与えられている。【００７０】
図７Ａ及び図７Ｂは、ボリューム管理表Ｔ２０を示す図である。ボリューム管理表Ｔ２０は、ストレージ装置２０内の各論理ボリューム２３２を管理する。【００７１】
ボリューム管理表Ｔ２０は、例えば、ボリュームID  Ｃ２００と、容量Ｃ２０１と、RAIDグループID  Ｃ２０２と、ターゲットID  Ｃ２０３と、LUN ID  Ｃ２０４の各フィールドを対応付けて管理する。【００７２】
ボリュームID  Ｃ２００は、ストレージ装置２０の各論理ボリューム２３２の識別子である。  容量Ｃ２０１は、各ボリューム２３２の容量である。RAIDグループID  Ｃ２０２は、各ボリューム２３２の属するRAIDグループ２３１の識別子である。ターゲットID  Ｃ２０３は、各ボリューム２３２の属するiSCSIターゲットの識別子である。LUN ID  Ｃ２０４は、各ボリューム２３２のiSCSIターゲット内における識別子である。【００７３】
図７Ａには、ボリューム管理表Ｔ２０の具体的な値の一例が示されている。例えば、第１行目に着目すると、ボリューム２３２（VOL1）は、20GBの記憶領域を持ち、RAIDグループ２３１（RG1）に属する。さらに、そのボリューム２３２（VOL1）は、iSCSIターゲットID（TG1）で特定されるiSCSIターゲットに属し、LUN ID（0）を持つ。【００７４】
図８Ａ及び図８Ｂは、iSCSIターゲット管理表Ｔ２１を示す。iSCSIターゲット管理表Ｔ２１は、ストレージ装置２０内のiSCSIターゲットを管理する。iSCSIターゲット管理表Ｔ２１は、例えば、ターゲットID  Ｃ２１０と、iSCSIターゲット名Ｃ２１１と、接続許可iSCSIイニシエータＣ２１２の各フィールドを対応付けて管理する。【００７５】
ターゲットID  Ｃ２１０は、iSCSIターゲットの識別子である。iSCSIターゲット名C21１は、各iSCSIターゲットが持つiSCSIターゲット名である。接続許可iSCSIイニシエータＣ２１２は、iSCSIターゲットに接続が許可されたiSCSIイニシエータの名称である。つまり、フィールドＣ２１２には、iSCSIターゲットに属する論理ボリューム２３２に対してアクセスが許可された、ホストコンピュータ１０のポート１００の識別子となるiSCSIイニシエータ名が登録されている。【００７６】
図８Ａには、iSCSIターゲット管理表Ｔ２１の具体的な値の一例が示されている。第１行目に着目すると、ストレージ装置２０のiSCSIターゲット（HG1）は、「com.abc.sto1」というiSCSIターゲット名を持つ。さらに、そのiSCSIターゲット（HG1）は、iSCSIイニシエータ名が「com.abc.sv1」もしくは「com.abc.sv11」である、ホストコンピュータ１０のポート１００からのアクセスを許可している。【００７７】
図９は、I/Oポート管理表Ｔ２２の構成を示す。I/Oポート管理表Ｔ２２は、ストレージ装置２０のI/Oポート２００を管理する。I/Oポート管理表Ｔ２２は、例えば、ポートID  Ｃ２２０と、ターゲットID  Ｃ２２１との各フィールドを対応付けて管理する。【００７８】
ポートID  Ｃ２２０は、ストレージ装置２０の各ポート２００の識別子である。ターゲットID  Ｃ２２１は、ポート２００の通信ネットワーク６０上での識別子となるMACアドレスである。【００７９】
図９には、I/Oポート管理表の具体的な値の一例が示されている。第１行目に着目すると、ストレージ装置２０のポート２００（PORT1）は、TG1,TG2というiSCSIターゲットIDで特定されるiSCSIターゲットによって、使用されている。【００８０】
図１０は、RAIDグループ管理表Ｔ２３の構成を示す。RAIDグループ管理表Ｔ２３は、ストレージ装置２０内の各RAIDグループ２３１を管理する。RAIDグループ管理表Ｔ２３は、例えば、RAIDグループID  Ｃ２３０と、RAIDレベルＣ２３１と、容量Ｃ２３２の各フィールドを対応付けて管理する。【００８１】
RAIDグループID  Ｃ２３０は、各RAIDグループ２３１のストレージ装置内での識別子である。RAIDレベルＣ２３１は、RAIDグループ２３１のRAIDレベルである。RAIDレベルとしては、例えば、RAID１，RAID２，RAID３，RAID４，RAID５，RAID６などが知られている。容量Ｃ２３２は、RAIDグループ２３１の容量である。【００８２】
図１０には、RAIDグループ管理表Ｔ２３の具体的な値の一例が示されている。第１行目に着目すると、RAIDグループ２３１（RG1）は、RAIDレベルがRAID1であり、かつ、容量は100GBである。【００８３】
図１１は、イベント管理表Ｔ３０の構成例を示す図である。イベント管理表Ｔ３０は、管理サーバ３０の管理下にある各装置で発生したイベントを管理する。イベント管理表Ｔ３０は、例えば、イベントID  Ｃ３００と、装置ID  Ｃ３０１と、部位IDＣ３０２と、パラメータＣ３０３と、状態Ｃ３０４と、処理済みフラグＣ３０５と、日時Ｃ３０６の各フィールドを対応付けて管理する。【００８４】
イベントID  Ｃ３００は、イベントの識別子である。イベントの発生は、後述の通り、構成情報の変化に基づいて判断される。装置ID  Ｃ３０１は、イベントの発生した装置（機器）の識別子である。部位ID  Ｃ３０２は、装置内の、イベントの発生した部位を特定する識別子である。パラメータＣ３０３は、構成情報の変化を検知したパラメータの名称である。状態Ｃ３０４は、構成情報の変化の種別を示す。状態の種別としては、例えば、「変更」、「追加」、「削除」がある。処理済みフラグＣ３０５は、イベントが後述するイベント伝播モデル展開モジュールＰ３５によって処理済みかどうかを示す。日時Ｃ３０６は、イベントが発生した日時である。【００８５】
例えば、第１行目（１つ目のエントリ）に着目する。そこには、管理サーバ３０が、ストレージ装置２０（SYS1）のiSCSIターゲット（TG1）に接続可能なiSCSIイニシエータの変更をイベント（EV1）として検知したことが記録されている。【００８６】
図１２Ａ及び図１２Ｂは、イベント伝播モデルリポジトリＴ３１内のイベント伝播モデルの構成例を示す。イベント伝播モデルは、「所定の解析ルール」の一例である。一般的に、障害解析において根本原因を特定するためのイベント伝播モデルは、ある障害（原因）の結果発生することが予想されるイベントの組み合わせと、その根本原因とを”IF-THEN”形式で記載する。【００８７】
本実施形態では、便宜上、図１２Ａ及び図１２Ｂに示すように、２つのイベント伝播モデルを説明する。その２つに限らず、更に多くのイベント伝播モデル（ルール）が用意されてもよい。イベント伝播モデルは、例えば、モデルID  Ｃ３１０と、観測事象Ｃ３１１と、原因Ｃ３１２の各フィールドを対応付けて管理する。【００８８】
モデルID  Ｃ３１０は、イベント伝播モデルの識別子である。観測事象Ｃ３１１は、ある原因の結果として観測される、複数の関連したイベントを示す。観測事象は、”IF-THEN”形式で記載したイベント伝播モデルのIF部に相当する。原因Ｃ３１２は、観測事象のうち原因となる事象である。原因事象（原因イベント）は、”IF-THEN”形式で記載したイベント伝播モデルのTHEN部に相当する。【００８９】
結論部である原因Ｃ３１２のイベントが正常になれば、条件部である観測事象Ｃ３１１の状態も正常に戻るという関係にある。【００９０】
図１２Ａには、イベント伝播モデルの具体的な値の一例が示されている。或るイベント伝播モデル（Rule1）では、ホストコンピュータ１０上の論理ボリュームのERRORと、ストレージ装置２０におけるI/Oポート２００のERRORとを検知したとき、ストレージ装置２０のI/Oポート２００の故障が原因であると結論付ける。【００９１】
図１３Ａ、図１３Ｂ、図１３Ｃ、及び図１３Ｄは、因果律行列Ｔ３２の構成を示す。因果律行列Ｔ３２は、計算機システムの各装置で生じる障害イベントの具体的な因果関係を規定する。因果律行列Ｔ３２は、例えば、イベント伝播モデルID  Ｃ３２０と、観測事象Ｃ３２１と、原因事象Ｃ３２２と、因果関係Ｃ３２３の各フィールドを対応付けて管理する。【００９２】
イベント伝播モデルID  Ｃ３２０は、展開処理に使用したイベント伝播モデルの識別子である。観測事象Ｃ３２１には、管理サーバ３０の状態取得モジュールＰ３２が管理対象の各装置から受信しうるイベント（障害イベント）が登録される。原因事象Ｃ３２２には、障害イベントを受信した際に、イベント解析処理部Ｐ３４が障害原因として結論付ける原因事象が登録される。因果関係Ｃ３２３には、どのイベントが受信された場合に、どのイベントを根本原因であると判断するかという対応関係が登録される。【００９３】
図１３Ａには、因果律行列Ｔ３２の具体的な値の一例が示されている。例えば、ストレージ装置２０（SYS1）のボリューム（VOL1）のERRORと、ホスト１０（HOST1）の論理ボリューム（E:）のERRORという２つのイベントが検知されると、ストレージ装置２０（SYS1）のボリューム（VOL1）の故障が根本原因であると判断される。【００９４】
図１４は、トポロジ生成方式リポジトリＴ３３内のトポロジ生成方式の構成例を示す。トポロジ生成方式とは、管理対象の各装置から取得した構成情報に基づいて、管理対象の各装置間での接続関係（トポロジ）を生成する方法を定義したものである。【００９５】
トポロジ生成方式は、例えば、トポロジID  Ｃ３３０と、起点コンポーネントＣ３３１と、終点コンポーネントＣ３３２と、経由コンポーネントＣ３３３と、トポロジ生成条件Ｃ３３４の各フィールドを対応付けて管理する。【００９６】
トポロジID  Ｃ３３０は、トポロジの識別子である。起点コンポーネントＣ３３１は、トポロジの起点となる、ノード装置内のコンポーネント種別である。終点コンポーネントＣ３３２は、トポロジの終点となる、ノード装置内のコンポーネント種別である。経由コンポーネントＣ３３３は、起点コンポーネントから終点コンポーネントまでの間のトポロジ生成の際に経由する、ノード装置内のコンポーネント種別である。トポロジ生成条件Ｃ３３４は、起点コンポーネントから終点コンポーネントまでの間のトポロジを生成する方法である。【００９７】
図１４Ａには、トポロジ生成方式Ｔ３３の具体的な値の一例が示されている。図１４Ａには、ホストコンピュータ１０の論理ボリュームを起点とし、ストレージ装置２０のI/Oポート２００を終点とし、かつ、ストレージ装置２０のiSCSIターゲットを経由するトポロジが記載されている。そのトポロジは、論理ボリュームのiSCSIイニシエータ名がiSCSIターゲットの接続許可iSCSIイニシエータと等しく、かつ、I/Oポート２００内のiSCSIターゲットIDがiSCSIターゲット内のIDと等しい組み合わせを検索することにより、取得可能である。【００９８】
図２２のフローチャートを参照して、構成情報を取得する処理を説明する。構成情報取得処理は、管理サーバ３０の構成情報取得モジュールＰ３１により実施される。以下、ステップを「Ｓ」と略記することがある。【００９９】
プログラム制御モジュールＰ３０は、所定のタイミングで、構成情報取得モジュールＰ３１に対して構成情報取得処理の実行を指示する。所定のタイミングとしては、例えば、プログラム制御モジュールＰ３０の起動時、または、前回の構成情報取得処理から一定時間経過後などを挙げることができる。なお、厳密に一定期間毎に指示が出される必要は無く、構成情報取得処理が繰り返し実行されていればよい。【０１００】
構成情報取得モジュールＰ３１は、管理対象の各装置に対し、以下のＳ６１−Ｓ６６を繰り返す（Ｓ６０）。まず最初に、構成情報取得モジュールＰ３１は、管理対象の装置に対し、構成情報を送信するよう指示する（Ｓ６１）。構成情報取得モジュールＰ３１は、管理対象装置からの応答があったか否かを判定する（Ｓ６２）。【０１０１】
管理対象装置から構成情報が応答された場合（Ｓ６２：ＹＥＳ）、構成情報取得モジュールＰ３１は、取得した構成情報と構成データベースＴ３６に格納された過去の構成情報とを比較する（Ｓ６３）。管理対象装置から構成情報の応答がなかった場合（Ｓ６２：ＮＯ）、構成情報取得処理を終了する。【０１０２】
構成情報取得モジュールＰ３１は、取得した構成情報と構成データベースＴ３６に格納された過去の構成情報とに差分があるか否かを判定する（Ｓ６４）。つまり、現在の構成情報と過去の構成情報とが異なるか否か判定する。【０１０３】
現在の構成情報と過去の構成情報との間に差分がある場合（Ｓ６４：ＹＥＳ）、構成情報取得モジュールＰ３１は、差分のあった箇所をイベント化し、イベント管理表Ｔ３０に登録する（Ｓ６５）。イベント化するとは、差分の発生した構成をイベントとして取り扱うという意味である。【０１０４】
構成情報取得モジュールＰ３１は、Ｓ６２で取得した構成情報（現在の構成情報）を、構成データベースＴ３６に格納する（Ｓ６６）。【０１０５】
管理対象の全ての装置について上記の処理Ｓ６１−Ｓ６６が終了した後、構成情報取得モジュールＰ３１は、イベント伝播モデルの再展開をすべきか否かを確認するための処理を実行させる（Ｓ６７）。以上が、情報取得モジュールＰ３１が実施する構成情報取得処理である。【０１０６】
図１５を参照して、本実施形態の特徴を備えない再展開要否確認処理を、本実施形態との相違を明らかにするために説明する。すなわち、図１５のフローチャートは、比較例である。【０１０７】
再展開要否確認処理とは、イベント伝播モデルを展開して因果律行列を作成し直すか否か判断するための処理である。【０１０８】
図１５に示す比較例の場合、イベント管理表Ｔ３０に、未処理のイベントがあるか否かが判定される（Ｓ１０）。【０１０９】
未処理イベントがある場合（Ｓ１０：ＹＥＳ）、その未処理イベントの処理済みフラグＣ３０５の値は「ＹＥＳ」に変更される（Ｓ１１）。その後、図１６に示すイベント伝播モデルを再展開する処理が実行される（Ｓ１２）。【０１１０】
このように、本実施形態の特徴を備えない比較例においては、計算機システムの構成が変更されるたびに、一律に、イベント伝播モデルを再展開する処理が実行される。従って、管理サーバ３０の処理負荷が増大する。【０１１１】
図１６のフローチャートを参照して、本実施形態の特徴を備えないイベント伝播モデル再展開処理を説明する。つまり、図１６のフローチャートは、比較例である。【０１１２】
最初に、因果律行列は全て削除される（Ｓ２０）。次に、イベント伝播モデルリポジトリに定義された全てのイベント伝播モデルに対し、以下の一連の処理Ｓ２３−Ｓ２４を繰り返す（Ｓ２１）。【０１１３】
イベント伝播モデルに対応したトポロジ生成方式がトポロジ生成方式リポジトリから取得される（Ｓ２２）。対応するトポロジ生成方式が取得できると（Ｓ２３：ＹＥＳ）、そのトポロジ生成方式に基づいて構成データベースからトポロジが取得される（Ｓ２４）。さらに、その取得されたトポロジにイベント伝播モデルを展開して、因果律行列に追加する（Ｓ２４）。【０１１４】
例えば、図１２Ａに示すイベント伝播モデル（Rule1）は、観測事象として”ホストコンピュータの論理ボリュームのERROR”と、”ストレージ装置のI/OポートのERROR”とが定義されている。【０１１５】
図１４Ａに示すトポロジ生成方式を参照する。図１４Ａには、ホストコンピュータの論理ボリュームを起点コンポーネントとし、ストレージ装置のI/Oポートを終点コンポーネントとする、トポロジ生成方式（TP1）が定義されている。そこで、このトポロジ生成方式（TP1）を利用して、トポロジを取得する。【０１１６】
図６Ａに示す論理ボリューム管理表Ｔ１０を参照し、ホストコンピュータ１０（HOST1）の論理ボリューム（E:）に着目する。論理ボリューム（E:）のiSCSIイニシエータ名は”com.abc.sv1”となっている。【０１１７】
次に、図８に示すiSCSIターゲット管理表Ｔ２１を参照し、接続先iSCSIイニシエータ名が”com.abc.sv1”となっているiSCSIターゲットTG1を検索する。図９に示すI/Oポート管理表Ｔ２２を参照し、iSCSIターゲットIDがTG1となっているI/Oポート２００（PORT1）を検索する。【０１１８】
以上の処理を行った結果、ホストコンピュータの論理ボリュームとストレージ装置のI/Oポートを含むトポロジの一つとして、ホストコンピュータ１０（HOST1）の論理ボリューム（E:）と、ストレージ装置２０（SYS1）のI/Oポート２００（PORT1）の組み合わせが検出される。【０１１９】
そこで、新たな因果律行列が作成される。その因果律行列は、観測事象として”ホストコンピュータ１０（HOST1）の論理ボリューム（E:）のERROR”と”ストレージ装置２０（SYS1）のI/Oポート２００（PORT1）のERROR”とが検知された場合、”ストレージ装置２０（SYS1）のI/Oポート２００（PORT1）の故障”が原因であるとする。【０１２０】
上記の処理Ｓ２２−Ｓ２４を、論理ボリューム管理表Ｔ１０に定義された、ホストコンピュータ１０の論理ボリューム全てを起点コンポーネントとして実行する。以上が、比較例としてのイベント伝播モデル再展開処理である。【０１２１】
このように、比較例では、管理対象装置の構成変化を検知する度に、イベント伝播モデルを再展開する。従って、大規模なデータセンタ等のように、管理サーバ３０が管理する装置が多い場合、多数の構成変化が発生し、さらに、管理対象装置を管理するためのデータ量も増大する。この結果、イベント伝播モデルを再展開する処理が比較的頻繁に実行され、管理サーバ３０に生じる処理負荷が増大する。【０１２２】
そこで、本実施形態では、再展開要否確認処理とイベント伝播モデル再展開処理を、独自の思想に基づいて改善する。【０１２３】
本実施形態に特有の展開対象イベント管理表Ｔ３４を図１７に示す。さらに、本実施形態に特有の展開対象イベント伝播モデル管理表Ｔ３５を図１８に示す。さらに、本実施形態による管理サーバ３０の動作を図１９及び図２０に示す。【０１２４】
展開対象イベント管理表Ｔ３４は、管理者が手動で定義してもよいし、後述する第２実施例に示す方法により自動的に生成してもよい。【０１２５】
図１７は、「対象イベント管理情報」の一例としての展開対象イベント管理表Ｔ３４の構成例を示す。展開対象イベント管理表Ｔ３４は、イベント伝播モデルを展開する必要のあるイベントを管理する。展開対象イベント管理表Ｔ３４は、例えば、機器種別Ｃ３４０と、コンポーネント種別Ｃ３４１と、パラメータＣ３４２と、イベント種別Ｃ３４３と、イベント伝播モデルID  Ｃ３４４の各フィールドを対応付けて管理する。【０１２６】
機器種別Ｃ３４０は、構成変化イベントの発生した装置の種別である。コンポーネント種別Ｃ３４１は、構成変化イベントの発生した装置内のコンポーネントの種別である。パラメータＣ３４２は、構成情報の変化が検知されたパラメータの名称である。イベント種別Ｃ３４３は、構成情報の変化の種別である。構成情報の変化には、例えば、「追加」、「削除」、「変更」がある。それらの構成変化（追加、削除、変更）に係るイベントを、ここでは構成変化イベントと呼ぶ。イベント伝播モデルID  Ｃ３４４は、構成変化イベントに適用すべきイベント伝播モデルの識別子である。【０１２７】
図１７には、展開対象イベント管理表Ｔ３４の具体的な値の一例が示されている。例えば、ストレージ装置のiSCSIターゲットへの接続が許可されたiSCSIイニシエータの値が変更にされた場合、その構成変化イベントについて、イベント伝播モデル（Rule1）が再展開される。展開対象イベント管理表Ｔ３４に記載されていないイベントが発生した場合、イベント伝播モデルの再展開は行われない。【０１２８】
図１８は、展開対象イベント伝播モデル管理表Ｔ３５の構成例を示す。展開対象イベント管理表Ｔ３５は、展開対象となるイベント伝播モデルを定義する。展開対象イベント伝播モデル管理表Ｔ３５は、どのイベント伝播モデルが展開対象となるかを登録するフィールドを持つ。【０１２９】
図１８には、具体的な一例が示されている。或る一つのイベント伝播モデル（Rule1）と他の一つのイベント伝播モデル（Rule2）とが再展開の対象になっている。【０１３０】
図１９に、構成情報取得モジュールＰ３１が実施する、再展開要否確認処理のフローチャートを示す。【０１３１】
構成情報取得モジュールＰ３１は、イベント管理表Ｔ３０を参照し、未処理イベントがあるかどうかを確認する（Ｓ３０）。未処理イベントとは、構成変化を示すイベントであって、処理済みフラグＣ３０５に「ＮＯ」と設定されているイベントである。【０１３２】
未処理イベントがある場合（Ｓ３０：ＹＥＳ）、構成情報取得モジュールＰ３１は、その未処理イベントについて、ループ内の処理Ｓ３２−Ｓ３４を繰り返す（Ｓ３１）。【０１３３】
構成情報取得モジュールＰ３１は、未処理イベントと同種のイベントが展開対象イベント管理表Ｔ３４に登録されているかどうかを確認する（Ｓ３２）。【０１３４】
展開対象イベント管理表Ｔ３４に未処理イベントと同種のイベントが存在する場合（Ｓ３２：ＹＥＳ）、構成情報取得モジュールＰ３１は、展開対象イベント管理表Ｔ３４に定義された展開が必要なルールを、展開対象イベント伝播モデル管理表Ｔ３５に登録する（Ｓ３３）。最後に、構成情報取得モジュールＰ３１は、未処理イベントの処理済みフラグＣ３０５を「ＹＥＳ」に変更する（Ｓ３４）。【０１３５】
以上の処理が終了した後、構成情報取得モジュールＰ３１は、イベント伝播モデル展開モジュールＰ３５に対して、図２０に示すイベント伝播モデル再展開処理を行なうよう指示する。以上が、本実施形態による再展開要否確認処理である。本実施形態では、構成変化を示すイベントのうち展開対象イベント管理表Ｔ３４に登録されているイベントについてのみ、イベント伝播モデル再展開処理の対象とする。従って、管理サーバ３０の負担を軽減できる。【０１３６】
図２０に、イベント伝播モデル展開モジュールＰ３５が実施するイベント伝播モデル再展開処理のフローチャートを示す。【０１３７】
イベント伝播モデル展開モジュールＰ３５は、展開対象イベント伝播モデル管理表Ｔ３５に定義された全てのイベント伝播モデルに対し、以下の一連の処理Ｓ４１−Ｓ４４を繰り返す（Ｓ４０）。なお、展開対象イベント伝播モデル管理表Ｔ３５にIDが一つも登録されていない場合は、以下の処理Ｓ４１−Ｓ４４を行わずに、本処理を終了する。【０１３８】
以下、処理対象のイベント伝播モデルを対象イベント伝播モデルと称する。イベント伝播モデル展開モジュールＰ３５は、対象イベント伝播モデルのIDを持つ因果律行列Ｔ３２を全て削除する（Ｓ４１）。イベント伝播モデル展開モジュールＰ３５は、トポロジ生成方式リポジトリＴ３３を参照し、対象イベント伝播モデルに対応したトポロジ生成方式を、トポロジ生成方式リポジトリＴ３３から取得する（Ｓ４２）。【０１３９】
対応するトポロジ生成方式がある場合（Ｓ４３：ＹＥＳ）、イベント伝播展開モジュールＰ３５は、そのトポロジ生成方式に基づいて構成データベースＴ３６からトポロジを取得する。イベント伝播展開モジュールＰ３５は、そのトポロジにイベント伝播モデルを適用し、因果律行列Ｔ３２の列として追加する（Ｓ４４）。【０１４０】
イベント伝播展開モジュールＰ３５は、展開対象イベント伝播モデル管理表Ｔ３５に定義された全てのイベント伝播モデルに対して上記処理Ｓ４１−Ｓ４４が終了した後、展開対象イベント伝播モデル管理表Ｔ３５に定義されたIDを全て削除する（Ｓ４５）。以上が、イベント伝播モデル再展開処理である。【０１４１】
以下、構成情報取得処理の具体例を示す。処理開始当初の、イベント伝播モデルＴ３１（Rule1）に関する因果律行列Ｔ３２は図１３Ａに、イベント伝播モデルＴ３１（Rule2）に関する因果律行列Ｔ３２は図１３Ｃに、RAIDグループ管理表Ｔ２３は図１０に、iSCSIターゲット管理表Ｔ２１は図８Ａに、それぞれ示す通りであるものとする。【０１４２】
プログラム制御モジュールＰ３０は、管理者からの指示もしくはタイマーによるスケジュール設定に応じて、構成情報取得モジュールＰ３１に対し、構成情報取得処理を実行するよう指示する。構成情報取得モジュールＰ３５は、管理下の各装置に順番にログインし、装置の種別に応じた構成情報を送信するよう指示する。【０１４３】
上記の処理が終了した後、構成情報取得モジュールＰ３５は、構成データベースＴ３６に格納された過去の構成情報と、管理対象の各装置から取得した現在の構成情報とを比較し、イベント管理表Ｔ３０を更新する。【０１４４】
ここでは、図１１のイベント管理表Ｔ３０の１行目に示す通り、ストレージ装置２０（SYS1）のiSCSIターゲット（TG1）に接続を許可されたiSCSIイニシエータが変更されたケースを想定する。なお、変更後のiSCSIターゲット管理表Ｔ２１を図８Ｂに示す。【０１４５】
構成情報取得モジュールＰ３１は、イベント管理表Ｔ３０に定義されたイベントに対して、以下の処理を行う。まず最初に、構成情報取得モジュールＰ３１は、展開対象イベント管理表Ｔ３４を参照し、イベント管理表Ｔ３０に登録されたイベントと同種のイベントが定義されているかどうかを確認する。【０１４６】
ここでいう同種とは、装置種別、装置内のコンポーネント種別、パラメータの名称、状態変化の種別の全てが等しいことを表す。展開対象イベント管理表Ｔ３４に同種イベントが存在する場合、構成情報取得モジュールＰ３１は、展開対象イベント管理表Ｔ３４のイベント伝播モデルID  Ｃ３４４に定義されたルール（イベント伝播モデル）を、展開対象イベント伝播モデル管理表Ｔ３５に登録する。【０１４７】
例えば、図１７に示す展開対象イベント管理表Ｔ３４には、再展開が必要なイベントの種別の一つとして、”ストレージ装置のiSCSIターゲットに接続が許可されたiSCSIイニシエータの変更”が定義されている。構成情報取得モジュールＰ３１は、そのイベント種別に対応するイベント伝播モデルのID（Rule1）を、展開対象イベント伝播モデル管理表Ｔ３５に登録する。【０１４８】
上記の処理が終了した後、構成情報取得モジュールＰ３１は、イベント伝播モデル展開モジュールＰ３５に対し、イベント伝播モデル再展開処理を行なうよう指示する。イベント伝播モデル展開モジュールＰ３５は、展開対象イベント伝播モデル管理表Ｔ３５を参照し、展開対象イベント伝播モデル管理表Ｔ３５に登録されたRule1について、再展開処理を行う。【０１４９】
すなわち、イベント伝播モデル展開モジュールＰ３５は、イベント伝播モデルIDがRule1となっている列を、因果律行列Ｔ３２から削除する。次に、イベント伝播展開モジュールＰ３５は、イベント伝播モデル（Rule1）を展開し、因果律行列Ｔ３２に追加する。展開の方法は、図２０で述べた方法と同じである。【０１５０】
以上の処理により、イベント伝播モデル（Rule1）に関する因果律行列Ｔ３２が更新され、図１３Ａに示す状態から図１３Ｂに示す状態に変化する。【０１５１】
次に、図１１のイベント管理表Ｔ３０の２行目に示す通り、ストレージ装置２０（SYS1）の、ボリューム２３２（VOL1）の属するRAIDグループ２３１のIDが変更されたケースを想定する。変更後のボリューム管理表Ｔ２０を図７Ｂに示す。【０１５２】
イベント管理表Ｔ３０に定義された構成変化に係るイベントに対して、以下の処理が実行される。展開対象イベント管理表Ｔ３４が参照され、イベント管理表Ｔ３０に定義されたイベントと同種のイベントが管理表Ｔ３４に定義されているか否か確認される。【０１５３】
展開対象イベント管理表Ｔ３４に同種イベントが定義されている場合、展開対象イベント管理表Ｔ３４のイベント伝播モデルID  Ｃ３４４に定義されたイベント伝播モデル（ルール）は、展開対象イベント伝播モデル管理表Ｔ３５に登録される。【０１５４】
例えば、図１７に示す展開対象イベント管理表Ｔ３４には、再展開が必要なイベントの種別として、”ストレージ装置のボリュームに関するRAIDグループIDの変更”が定義されている。構成情報取得モジュールＰ３１は、そのイベント種別に対応するイベント伝播モデルIDであるRule2を、展開対象イベント伝播モデル管理表Ｔ３５に登録する。【０１５５】
上記の処理が終了した後、構成情報取得モジュールＰ３１は、イベント伝播モデル展開モジュールＰ３５に対し、イベント伝播モデル再展開処理を行なうよう指示する。イベント伝播モデル展開モジュールＰ３５は、展開対象イベント伝播モデル管理表Ｔ３５を参照し、展開対象イベント伝播モデル管理表Ｔ３５に登録されたRule2について、再展開処理を行う。【０１５６】
すなわち、イベント伝播モデルIDがRule2となっている列は、因果律行列Ｔ３２から削除される。次に、イベント伝播モデル（Rule2）が展開され、因果律行列Ｔ３２に追加される。展開の方法は、図２０で述べた方法と同じである。【０１５７】
以上の処理により、イベント伝播モデル（Rule2）に関する因果律行列Ｔ３２が更新され、図１３Ｃに示す状態から図１３Ｄに示す状態に変化する。【０１５８】
ところで、図１１のイベント管理表Ｔ３０の３行目に示す通り、ストレージ装置２０（SYS1）のボリューム２３２（VOL5）の容量が変更されたケースを想定する。容量変更イベントと同種のイベントは、展開対象イベント管理表Ｔ３４に定義されていない。従って、構成情報取得モジュールＰ３１は、イベント伝播モデル展開モジュールＰ３５に対して、イベント伝播モデル再展開処理を指示しない。そのため、因果律行列Ｔ３２は更新されない。【０１５９】
本実施形態によれば、管理対象の装置に関する構成変更イベントが検知された場合に、構成変更イベント毎に再展開が必要なイベント伝播モデルを特定し、再展開が必要なイベント伝播モデルについてのみ展開を行なう。従って、本実施形態では、無駄な再展開処理を抑制して、管理サーバ３０の処理負荷を軽減することができる。
【実施例２】
【０１６０】
図２１及び図２３を参照して第２実施例を説明する。本実施例は、第１実施例の変形例に該当する。従って、第１実施例との相違を中心に説明する。【０１６１】
本実施形態では、イベント伝播モデル展開モジュールＰ３５が実施する、展開対象イベント管理表生成処理方法について説明する。【０１６２】
図２１のフローチャートに示すように、本実施形態では、イベント伝播モデル展開モジュールＰ３５は、展開対象イベント管理表Ｔ３４を自動的に生成する。以下、便宜上、展開モジュールＰ３５と呼ぶことがある。【０１６３】
展開対象イベント管理表Ｔ３４を生成する処理は、所定のタイミングで実行できる。所定のタイミングとしては、例えば、管理サーバ３０が初めて起動した場合、イベント伝播モデルリポジトリＴ３１に新しいイベント伝播モデルが追加された場合、イベント伝播モデルリポジトリＴ３１のイベント伝播モデルの一部が削除された場合などを挙げることができる。【０１６４】
展開モジュールＰ３５は、イベント伝播モデルリポジトリＴ３１に定義された全てのイベント伝播モデルに対し、以下の一連の処理Ｓ５１−Ｓ５３を繰り返す（Ｓ５０）。【０１６５】
展開モジュールＰ３５は、トポロジ生成方式リポジトリＴ３３を参照し、イベント伝播モデルリポジトリＴ３１を生成するためのトポロジ生成方式を取得する （Ｓ５１）。【０１６６】
展開モジュールＰ３５は、トポロジ生成方式のうち、起点コンポーネント、終点コンポーネント、および経由コンポーネントに記載されたコンポーネントを全て抽出する（Ｓ５２）。さらに、展開モジュールＰ３５は、抽出した各コンポーネントとイベント伝播モデルIDとを、展開対象イベント伝播モデル管理表Ｔ３４に追加する（Ｓ５２）。その場合、展開モジュールＰ３５は、イベント種別を「追加、削除」に設定し、かつ、パラメータは指定しない。【０１６７】
次に、展開モジュールＰ３５は、トポロジ生成条件に記載されたコンポーネントおよびパラメータを全て抽出する（Ｓ５３）。さらに、展開モジュールＰ３５は、それら各コンピュータ及び各パラメータを、イベント伝播モデルIDと一緒に、展開対象イベント伝播モデル管理表Ｔ３４に追加する（Ｓ５３）。その場合、展開モジュールＰ３５は、イベント種別を「変更」に設定する。【０１６８】
展開対象イベント管理表生成処理の具体例を以下に示す。【０１６９】
展開モジュールＰ３５は、イベント伝播モデルリポジトリＴ３１に定義されたイベント伝播モデルについて、トポロジ生成方式リポジトリＴ３３から、イベント伝播モデルの生成に利用するトポロジ生成方式を取得する。【０１７０】
展開モジュールＰ３５は、トポロジ生成方式のうち、起点コンポーネント、終点コンポーネント、および経由コンポーネントに記載されたコンポーネントを全て抽出し、展開対象イベント伝播モデル管理表Ｔ３５に追加する。【０１７１】
例えば、図１２Ａに示すように、イベント伝播モデル（Rule1）は、ホストコンピュータ１０の論理ボリュームと、ストレージ装置２０のI/Oポートとから構成される。従って、そのイベント伝播モデル（Rule1）についてのトポロジを取得するために、図１４Ａに示すトポロジ生成方式（TP1）が用いられる。【０１７２】
トポロジ生成方式（TP1）において、起点コンポーネントはホストコンピュータ１０の論理ボリュームであり、終点コンポーネントはストレージ装置２０のI/Oポートであり、経由コンポーネントはストレージ装置２０のiSCSIターゲットである。従って、図１７に示すように、それぞれのコンポーネントを展開対象イベント管理表Ｔ３４に追加する。その際、イベント種別Ｃ３４３の値には、「追加、削除」が設定される。適用ルールID（イベント伝播モデルID）Ｃ３４４の値には、「Rule1」が設定される。【０１７３】
展開モジュールＰ３５は、トポロジ生成方式のトポロジ生成条件Ｃ３３４に記載されたコンポーネントおよびパラメータを全て抽出し、展開対象イベント伝播モデル管理表Ｔ３４に追加する。【０１７４】
トポロジ生成方式（TP1）のトポロジ生成条件Ｃ３３４に記載されたコンポーネントおよびパラメータは、論理ボリュームのiSCSIイニシエータ名と、iSCSIターゲットに接続を許可されたiSCSIイニシエータと、I/Oポート２００のiSCSIターゲットIDと、iSCSIターゲットのIDである。従って、展開モジュールＰ３５は、それらを展開対象イベント管理表Ｔ３４に追加する。その際、イベント種別Ｃ３４３は「変更」に設定され、適用ルールID（イベント伝播モデルID  Ｃ３４４）はRule1に設定される。以上の処理により、展開対象イベント管理表Ｔ３４が生成されて、図１７に示す状態となる。
本実施形態も第１実施形態と同様の効果を奏する。さらに、本実施形態では、イベント伝播モデルリポジトリＴ３１に登録されたイベント伝播モデルに基づいて、展開対象イベント管理表Ｔ３４を生成することができる。【０１７５】
本実施形態では、例えば、管理者がイベント伝播モデルを追加もしくは削除した場合、展開対象イベント管理表Ｔ３４を自動的に更新することができる。従って、管理サーバ３０にかかる処理負荷を軽減しつつ、適切に因果律行列を生成できる。さらに、展開対象イベント管理表Ｔ３４を自動的に生成できるため、管理者の手間を省くことができる。【０１７６】
図２３は、本実施形態の処理及び管理情報の関係を模式的に示す全体概念図である。管理サーバ３０は、展開対象イベント管理表生成処理（図２１）において、イベント伝播モデルＴ３１とトポロジ生成方式Ｔ３３とを参照し、展開対象イベント管理表Ｔ３４を生成する。展開対象イベント管理表Ｔ３４は、図１７で説明した通り、構成変更の結果であるイベントと、イベントが発生した場合に再展開すべきイベント伝播モデルとの対応関係を管理する。【０１７７】
一方、管理サーバ３０は、再展開要否確認処理（図１９）において、イベント管理表Ｔ３０を参照し、未処理イベントの有無を確認する。管理サーバ３０は、未処理イベントがある場合、展開対象イベント管理表Ｔ３４を参照して、その未処理イベントについて再展開が必要なイベント伝播モデルを特定する。管理サーバ３０は、特定されたイベント伝播モデルについてのみ、イベント伝播モデル再展開処理を実行する。【０１７８】
なお、第１実施形態及び第２実施形態は、以下のように、コンピュータプログラムとして表現することもできる。
「コンピュータを、複数のノード装置を含む計算機システムを管理するための管理装置として機能させるためのコンピュータプログラムであって、
前記コンピュータの備える記憶装置に、少なくとも一つの所定の解析ルールと、前記管理装置が検知しうるイベントと前記所定の解析ルールとの対応関係を管理する対象イベント管理情報とを格納し、
前記所定の解析ルールは、障害の発生原因となる原因イベントと、前記原因イベントにより引き起こされる障害を示す関連イベントとの関係を定義しており、
前記各ノード装置を監視する機能と、
前記各ノード装置の構成変化をイベントとして検知した場合、そのイベントが前記対象イベント管理情報に登録されているか否かを判定する機能と、
検知された前記イベントが前記対象イベント管理情報に登録されている場合に、所定の処理を実行させる機能とを、
前記コンピュータに実現させるためのコンピュータプログラム。」
【符号の説明】
【０１７９】
１０：ホストコンピュータ、２０：ストレージ装置、３０：管理サーバ、６０：通信ネットワーク
【図１】
2012131868.tif 000003
【図２】
2012131868.tif 000004
【図３】
2012131868.tif 000005
【図４】
2012131868.tif 000006
【図５】
2012131868.tif 000007
【図６Ａ】
2012131868.tif 000008
【図６Ｂ】
2012131868.tif 000009
【図６Ｃ】
2012131868.tif 000010
【図７Ａ】
2012131868.tif 000011
【図７Ｂ】
2012131868.tif 000012
【図８Ａ】
2012131868.tif 000013
【図８Ｂ】
2012131868.tif 000014
【図９】
2012131868.tif 000015
【図１０】
2012131868.tif 000016
【図１１】
2012131868.tif 000017
【図１２Ａ】
2012131868.tif 000018
【図１２Ｂ】
2012131868.tif 000019
【図１３Ａ】
2012131868.tif 000020
【図１３Ｂ】
2012131868.tif 000021
【図１３Ｃ】
2012131868.tif 000022
【図１３Ｄ】
2012131868.tif 000023
【図１４Ａ】
2012131868.tif 000024
【図１４Ｂ】
2012131868.tif 000025
【図１５】
2012131868.tif 000026
【図１６】
2012131868.tif 000027
【図１７】
2012131868.tif 000028
【図１８】
2012131868.tif 000029
【図１９】
2012131868.tif 000030
【図２０】
2012131868.tif 000031
【図２１】
2012131868.tif 000032
【図２２】
2012131868.tif 000033
【図２３】
2012131868.tif 000034
【国際調査報告】
2012131868.tif 000035
2012131868.tif 000036
2012131868.tif 000037
2012131868.tif 000038