JP5684946B2 - イベントの根本原因の解析を支援する方法及びシステム - Google Patents

イベントの根本原因の解析を支援する方法及びシステム Download PDF

Info

Publication number
JP5684946B2
JP5684946B2 JP2014505935A JP2014505935A JP5684946B2 JP 5684946 B2 JP5684946 B2 JP 5684946B2 JP 2014505935 A JP2014505935 A JP 2014505935A JP 2014505935 A JP2014505935 A JP 2014505935A JP 5684946 B2 JP5684946 B2 JP 5684946B2
Authority
JP
Japan
Prior art keywords
event
rule
new rule
analysis
events
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014505935A
Other languages
English (en)
Other versions
JPWO2013140608A1 (ja
Inventor
名倉 正剛
正剛 名倉
崇之 永井
崇之 永井
香緒里 村瀬
香緒里 村瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Application granted granted Critical
Publication of JP5684946B2 publication Critical patent/JP5684946B2/ja
Publication of JPWO2013140608A1 publication Critical patent/JPWO2013140608A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、管理対象装置において発生した事象(障害等に関わる事象であり、以下「イベント」という)の根本原因の解析に関する。
計算機システムを管理する場合、例えば特許文献1に示されるように、システム内で検知した複数の障害もしくはその兆候の中から、原因となる事象(イベント)を検出することが行われている。具体的には、特許文献1では、管理ソフトウェアを用いて、管理対象装置における性能値の閾値超過をイベントの発生とみなし、イベントDB(データベース)にイベントの発生情報を蓄積する技術が開示されている。また、この管理ソフトウェアは、管理対象装置において発生した複数のイベントの因果関係を解析するための解析エンジンを持っている。この解析エンジンは、管理対象装置のインベントリ情報を持つ構成DBにアクセスして、I/O(入出力)経路上のパス上にある機器内構成要素を認識し、ホスト上の論理ボリュームの性能に影響を与えうる構成要素を「トポロジ」と呼ばれる一グループとして認識する。そして、解析エンジンは、イベントが発生すると各トポロジに対し、事前に定められた条件文と解析結果からなる解析ルールを適用して展開ルールを構築する。この展開ルールには、根本原因となり得る結論イベントと、結論イベントが発生した場合にそれによって引き起こされる条件イベント群が含まれる。具体的には、ルールのTHEN部に記載されているイベントが根本原因となり得る結論イベント、IF部に記載されているイベントが条件イベントである。
米国特許第7107185号明細書 特開2010−191914号公報
特許文献1に開示された障害解析システムでは、管理対象装置で発生し得るイベントの組み合わせ(条件イベント群)と、障害の原因候補(結論イベント)との対応関係をIF−THEN形式のルールとして記述しておく。障害解析システムは、ルールのIF部に記載された条件イベントの発生割合を計算することで、THEN部に記載された原因候補の確信度を算出する。算出した確信度と原因候補とは、ユーザの求めに応じGUI(Graphical User Interface)を介して表示される。これにより、ユーザは受信したイベントがどの障害に起因して発生しているものかを、知ることができる。
しかしながら、このような従来の障害解析システムにおいては、あらかじめ障害解析のためのIF−THEN形式のルールが存在しないと、ユーザにとって適切な解析結果を表示できない。すなわち、受信したイベントに対応するルールをあらかじめ用意していないと、解析が正しく実施されないことになる。このため、障害解析機能を有効に利用するためには、障害解析機能を利用しようと計画している計算機システムにおいて発生すると考えられる障害と、その障害を原因として発生すると考えられるイベントとをあらかじめ想定する必要がある。しかし、この作業は困難であり、ユーザである運用管理者のタスクを増加させることになる。
特許文献1に開示された障害解析システムでは、あらかじめルールを作成した上で障害解析を実施している。言い換えれば、事前に想定している障害についてのみしか解析を実施しない。これは発生する障害をユーザが事前にある程度想定できていることを表しており、通常は過去のイベント発生状況から運用管理者がルールを作成することになる。しかし、上述したように運用管理者の作業タスクが増加する上、ルール作成時に人為的な間違えが生じる可能性がある。
特許文献2に開示されたパターン抽出装置は、少なくとも1つのアイテムを含む集合を受け取り、その中に含まれるアイテムのパターンに特徴的な特徴パターンを抽出する。
この方法で、過去のイベントの受信状況を解析し、ルール化できるイベントの発生パターンを抽出することを考えると、まず、障害解析システムにおける障害発生を対象に分析を実施していないため、イベント発生の発生パターンを抽出しても障害解析のためのルールとしてルール化できない。また、特許文献2の方法では、パターン抽出の際に過去に抽出したパターンを利用しない。つまり、特許文献2の方法では、障害解析システムが事前に備えるべきルールを、過去の障害発生状況から自動的に作成できない。
計算機は、複数の管理対象装置のいずれかで発生し得る1以上のイベントに対応した1以上の条件イベントと前記1以上の条件イベントが発生した場合に原因となる結論イベントとの関連付けを示す、記憶デバイス内の1以上のルールに基づいて、複数の管理対象装置のいずれかで発生したイベントの根本原因を解析する。計算機は、発生したイベントの内容及び発生日時を含むイベント発生履歴に基づいて、同一の原因によって発生していると推定される複数のイベントである第1のイベント群を決定し、第1のイベント群の複数のイベントを条件イベントとし、第1のイベント群の一のイベントを結論イベントとする新規ルールを作成し、作成した新規ルールを上記記憶デバイスに記憶する。イベント発生履歴も、上記記憶デバイスに格納されていて良い。
図1は、実施例1に係る計算機システムの構成例を示す図である。 図2は、実施例1に係るホスト計算機の構成例を示す図である。 図3は、実施例1に係るストレージ装置の構成例を示す図である。 図4は、実施例1に係る管理サーバの構成例を示す図である。 図5は、実施例1に係る装置性能管理表の構成例を示す図である。 図6は、実施例1に係るボリュームトポロジ管理表の構成例を示す図である。 図7は、実施例1に係るイベント管理表の構成例を示す図である。 図8は、実施例1に係る汎用ルールの構成例を示す図である。 図9Aは、実施例1に係る展開ルールの第1の構成例を示す図である。 図9Bは、実施例1に係る展開ルールの第2の構成例を示す図である。 図9Cは、実施例1に係る展開ルールの第3の構成例を示す図である。 図9Dは、実施例1に係る展開ルールの第4の構成例を示す図である。 図10は、実施例1に係る解析結果管理表の構成例を示す図である。 図11は、実施例1に係る性能情報取得処理のフローチャートである。 図12は、実施例1に係る障害原因解析処理のフローチャートである。 図13は、実施例1に係るルール生成処理のフローチャートである。 図14は、実施例1に係るルール登録処理のフローチャートである。 図15は、実施例1に係るルール選択処理のフローチャートである。 図16は、実施例1に係る生成ルール表示画面の構成例を示す図である。 図17は、実施例2に係るルール生成処理のフローチャートである。 図18は、実施例2に係るルール登録処理のフローチャートである。 図19は、実施例2に係る生成ルール表示画面の構成例を示す図である。
実施例は、計算機システムの障害解消のための障害の原因解析とそのための解析ルールの生成に関するものである。
幾つかの実施例について、図面を参照して説明する。なお、以下に説明する実施例は特許請求の範囲にかかる発明を限定するものではなく、また実施例の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。これらの図面において、複数の図を通じて同一の符号は同一の構成要素を示している。
なお、以後の説明では「aaa表」等の表現にて本発明の情報を説明するが、これら情報はテーブル、リスト、DB、キュー、等のデータ構造以外で表現されていても良い。そのため、データ構造に依存しないことを示すために「aaa表」等について「aaa情報」と呼ぶことがある。
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID」という表現を用いるが、これらについてはお互いに置換が可能である。
さらに、以後の説明では、「プログラム」や「モジュール」を動作主体として説明を行う場合があるが、プログラムやモジュールは、プロセッサによって実行されることで、定められた処理をメモリ及び通信ポート(I/Oポート等)を用いながら行うため、プロセッサを動作主体とした説明としても良い。また、プログラムやモジュールを主語として開示された処理は、管理サーバ等の計算機が行う処理としてもよい。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。また、各種プログラムはプログラム配布サーバや記憶メディアによって各計算機にインストールされても良い。
また、本明細書で記載する実施例においては、管理対象とするシステムの規模については言及しない。しかし、管理対象のシステムが大規模になればなるほど、管理対象のシステムを小規模な単位に分割して管理をした上で障害解析を行う機会が増大する。そのため、大規模システムに本実施例を適用した場合には、本実施例の効果をより享受できる。
実施例1は、管理ソフトウェア(例えば、管理サーバに含まれる)による障害原因候補表示処理に関するものである。
<システム構成>
図1は、実施例1に係る計算機システムの構成例を示す図である。
計算機システムは、1以上のストレージ装置20000と、1以上のホスト計算機10000と、管理サーバ30000と、WEBブラウザ起動サーバ35000と、1以上のIPスイッチ40000とを有し、それらが、LAN(Local Area Network)等の通信ネットワーク(以下、単に「ネットワーク」という)45000によって接続される構成となっている。計算機システムは、例えば、NAS(Network Attached Storage)、ファイルサーバ、プリンタ等を有していても良い。
ホスト計算機10000は、例えば、接続された図示しないクライアントコンピュータからファイルのI/O要求を受信し、受信したI/O要求に基づいてストレージ装置20000へのアクセスを行う。また、管理サーバ30000は、計算機システム全体の運用を管理する。
WEBブラウザ起動サーバ35000は、ネットワーク45000を介して、管理サーバ30000の後述するGUI表示処理モジュール32400(図4参照)と通信し、WEBブラウザの画面上に各種情報を表示する。ユーザは、WEBブラウザ起動サーバ35000上のWEBブラウザの画面に表示された情報を参照することで、計算機システム内の装置を管理する。ただし、管理サーバ30000が、WEBブラウザ起動サーバ35000の機能を有していてもよい。
以下、計算機システムを構成する装置(ホスト計算機10000、ストレージ装置20000、IPスイッチ40000等)を「ノード装置」と呼ぶ場合がある。以下、管理サーバ30000が管理の対象とするノード装置を「管理対象装置」と呼ぶ場合がある。
<ホスト計算機の内部構成>
図2は、実施例1に係るホスト計算機の構成例を示す図である。
ホスト計算機10000は、ネットワーク45000に接続するためのポート11000と、プロセッサ12000と、メモリ13000とを有し、これらが内部バス等の回路を介して相互に接続される構成となっている。ホスト計算機10000は、ディスク装置を備えるようにしても良い。
メモリ13000には、業務アプリケーション13100と、オペレーティングシステム13200とが格納されている。
業務アプリケーション13100は、オペレーティングシステム13200から提供された記憶領域を使用し、当該記憶領域に対しデータの入出力(I/O)を行う。
オペレーティングシステム13200は、ネットワーク45000を介して接続されたストレージ装置20000上のボリューム24100を記憶領域として業務アプリケーション13100に認識させるための処理を実行する。
ポート11000は、ストレージ装置20000とiSCSI(Internet Small Computer System Interface)により通信を行うためのI/Oポートと、管理サーバ30000がホスト計算機10000内の管理情報を取得するための管理ポートを含む。I/Oポート及び管理ポートは、別個のデバイスであっても良い。
<ストレージ装置の内部構成>
図3は、実施例1に係るストレージ装置の構成例を示す図である。
ストレージ装置20000は、ネットワーク45000を介してホスト計算機10000に接続するための1以上のI/Oポート21000と、ネットワーク45000を介して管理サーバ30000に接続するための管理ポート21100と、各種管理情報を格納するための管理メモリ23000と、データを格納するための1以上のRAID(Redundant Arrays of Inexpensive Disks)グループ24000と、データや管理メモリ23000内の管理情報を制御するための1以上のコントローラ25000とを有し、これらが内部バス等の回路を介して相互に接続される構成となっている。なお、RAIDグループ24000が接続されているとは、より正確にはRAIDグループ24000を構成する複数の記憶デバイス(本実施例では、磁気ディスク24200)が他の構成物と接続されていることを指す。
管理メモリ23000には、ストレージ装置20000を管理するための管理プログラム23100が格納される。管理プログラム23100は、管理ポート21100を経由して管理サーバ30000と通信し、管理サーバ30000に対しストレージ装置20000の構成管理情報を提供する。
RAIDグループ24000は、1つまたは複数の磁気ディスク24200によって構成されている。RAIDグループ24000が複数の磁気ディスク24200によって構成されている場合、それらの磁気ディスク24200は、RAID構成を組んでいても良い。また、RAIDグループ24000は、論理的に複数のボリューム24100に分割されている。
なお、ボリューム24100は、1つ以上の磁気ディスク24200の記憶領域を用いて構成されるのであれば、RAID構成を組まなくても良い。さらに、ボリューム24100に対応する記憶領域を提供する記憶デバイスとして、磁気ディスク24200の代わりにフラッシュメモリなど他の記憶媒体を用いても良い。
コントローラ25000は、その内部に、ストレージ装置20000の制御を行うプロセッサや、ホスト計算機10000との間でやりとりするデータを一時的に記憶するキャッシュメモリを持っている。そして、コントローラ25000は、I/Oポート21000とRAIDグループ24000との間に介在し、両者の間でデータの受け渡しを行う。
なお、ストレージ装置20000は、何れかのホスト計算機10000に対してボリューム24100を提供し、アクセス要求(I/O要求)を受信し、受信したアクセス要求に応じて記憶デバイスへの読み書きを行うコントローラ25000と、記憶領域を提供する記憶デバイスとを含めば、本実施例以外の構成でも良く、例えば、コントローラ25000と記憶領域を提供する記憶デバイスとが別な筐体に格納されていても良い。また、図3の例では管理メモリ23000とコントローラ25000とが別個の構成として設けられているが、それらが一体となった構成としても良い。また、本実施例において、コントローラ25000及び記憶デバイスが同じ筐体に存在する場合とそれぞれが別の筐体に存在する場合とを含む表現として、ストレージ装置20000をストレージシステムと呼び変えても良い。
<管理サーバの内部構成>
図4は、実施例1に係る管理サーバの構成例を示す図である。
管理サーバ30000は、管理対象装置を管理し、管理対象装置で発生したイベントの根本原因を解析する計算機である。管理サーバ30000は、ネットワーク45000に接続するための管理ポート31000と、プロセッサ31100と、キャッシュメモリ等のメモリ32000と、HDD(ハードディスクドライブ)等の二次記憶装置(二次記憶領域)33000と、処理結果を出力するためのディスプレイ装置等の出力デバイス31200と、ストレージ管理者が指示を入力するためのキーボード等の入力デバイス31300とを有し、これらが内部バス等の回路を介して相互に接続される構成となっている。
メモリ32000には、プログラム制御モジュール32100と、構成管理情報取得モジュール32200と、装置性能取得モジュール32300と、GUI表示処理モジュール32400と、イベント解析処理モジュール32500と、ルール展開モジュール32600と、ルール生成モジュール32700とが格納される。なお、本実施例において、各モジュール32100〜32700は、ソフトウェアモジュールとして提供されているが、ハードウェアモジュールとして提供されても良い。また、各モジュール32100〜32700が行う処理が一つ以上のプログラムコードとして提供されても良く、モジュール32100〜32700間の明確な境界が存在しなくても良い。モジュールをプログラムと読み替えることができる。
二次記憶領域33000には、装置性能管理表33100と、ボリュームトポロジ管理表33200と、イベント管理表33300と、汎用ルールリポジトリ33400と、展開ルールリポジトリ33500と、解析結果管理表33600とが格納される。なお、二次記憶領域33000は、例えば、半導体メモリまたは磁気ディスクのいずれか、もしくは半導体メモリおよび磁気ディスク両方から構成される。汎用ルールリポジトリ33400は、1以上の汎用ルールを含み、展開ルールリポジトリ33500は、1以上の展開ルールを含む。
GUI表示処理モジュール32400は、入力デバイス31300を介して管理者から受け付けた要求に応じ種々の処理を行い、処理の結果や構成管理情報等を出力デバイス31200を介して表示する。なお、入力デバイス31300と出力デバイス31200は別々なデバイスでもよく、一つ以上のまとまったデバイスでも良い。
なお、管理サーバ30000は、例えば、入力デバイス31300としてキーボード、ポインタデバイス等、出力デバイス31200としてディスプレイ、プリンタ等とを有しているが、これら以外の装置であってもよい。また、入力デバイス31200および出力デバイス31300の代替としてシリアルインターフェースやイーサーネットインターフェースを用い、当該インターフェースにディスプレイ、キーボード、ポインタデバイス等を有する表示用計算機を接続し、表示用情報を表示用計算機に送信し、入力用情報を表示用計算機から受信することで、表示用計算機において表示を行い、また入力を受け付けることで入力デバイス31200および出力デバイス31300の機能を代替してもよい。
本実施例では、計算機システムを管理し、表示用情報を表示する一つ以上の計算機の集合を管理システムと呼ぶことがある。管理サーバ30000が表示用情報を表示する場合は、管理サーバ30000が管理システムであり、また、表示用計算機(例えば、WEBブラウザ起動サーバ35000)が表示用情報を表示する場合は、管理サーバ30000と表示用計算機の組み合わせが管理システムである。また、管理処理の高速化や高信頼化のために複数の計算機で管理サーバ30000と同等の処理を実現してもよく、この場合は当該複数の計算機(表示を表示用計算機が行う場合は表示用計算機も含め)が管理システムである。
<装置性能管理表の構成>
図5は、実施例1に係る装置性能管理表の構成例を示す図である。
装置性能管理表33100は、管理対象装置の識別子である装置IDを格納するフィールド33110と、管理対象装置内部のデバイス(物理的又は論理的なデバイス、例えば、コントローラ25000、ボリューム24100、ホスト計算機10000の論理ボリューム等であり、以下「管理対象デバイス」という)の識別子であるデバイスIDを格納するフィールド33120と、管理対象デバイスの性能の測定基準が何であるかを示すデータ(以下「メトリック名称」という)を格納するフィールド33130と、管理対象装置に搭載されているOS(Operating System)の種別を格納するフィールド33140と、管理対象デバイスの性能値を該当装置から取得して格納するフィールド33150と、管理対象デバイスの性能値の正常範囲の上限もしくは下限である閾値(以下「アラート実行閾値」という)を、ユーザからの入力を受けて格納するフィールド33160と、アラート実行閾値が正常値の上限であるのか下限であるのかを示す閾値種別を格納するためのフィールド33170と、管理対象デバイスのステータス、すなわち、性能値が正常値であるか異常値であるかを示すデータを格納するためのフィールド33180と、を構成項目として含んでいる。
例えば、図5の第1行目(1つ目のエントリ)からは、装置IDが「SYS1」であるストレージ装置20000内の、デバイスIDが「CTL1」であるコントローラ25000について、プロセッサの稼働率が現時点で40%であり、アラート実行閾値が20%、すなわち、稼働率が20%を超えた場合に過負荷(異常)と判断されることを示し、異常が発生していること状態であることが分かる。本実施例では、例えば、管理対象デバイスのステータスが変わること、すなわち、性能値がアラート実行閾値を超えて異常値となること又は性能値が正常値に戻ることが、イベントの発生に相当する。なお、例えば、性能値がアラート実行閾値を超えて異常値となることだけをイベントの発生としてもよい。
なお、ここでは管理サーバ30000が管理対象デバイスの性能の測定基準として単位時間当たりのI/O量、稼働率、レスポンスタイムを例として挙げたが、これら以外の測定基準を採用しても良い。
<ボリュームトポロジ管理表の構成>
図6は、実施例1に係るボリュームトポロジ管理表の構成例を示す図である。
ボリュームトポロジ管理表33200は、ストレージ装置20000の装置IDを格納するフィールド33210と、ストレージ装置20000が有するボリューム24100の識別子であるボリュームIDを格納するフィールド33220と、ホスト計算機10000がボリューム24100にアクセスする際に使用する、ボリューム24100の識別子であるLU(論理ユニット)番号を格納するフィールド33230と、ボリューム24100にアクセスする際に使用するコントローラ25000のIDを格納するフィールド32340と、ボリューム24100に接続される、すなわちボリューム24100にアクセス可能なホスト計算機10000の識別子を格納するフィールド33250と、ボリューム24100が実体となるホスト計算機10000の論理ボリュームのドライブ名を格納するフィールド33260と、を構成項目として含んでいる。つまり、ボリュームトポロジ管理表33200は、ホスト計算機10000とストレージ装置20000との接続関係、より詳細には、ホスト計算機10000の論理ボリュームと、ストレージ装置20000のコントローラ25000及びボリューム24100との接続関係を示している。
例えば、図6の第1行目(1つ目のエントリ)からは、装置IDが「SYS1」のストレージ装置が、ボリュームID「VOL1」のボリュームを、論理ユニット「LU1」として、接続先ホストIDが「HOST1」のホスト計算機に提供し、当該ボリュームが、コントローラ名が「CTL1」のコントローラを介してホスト計算機「HOST1」と接続され、ホスト計算機「HOST1」上での当該論理ボリュームのドライブ名が「/var」として認識されていることが分かる。
<イベント管理表の構成>
図7は、実施例1に係るイベント管理表の構成例を示す図である。
イベント管理表33300は、後述する障害原因解析処理、ルール生成処理において適宜参照される。イベント管理表33300は、イベント自身の識別子であるイベントIDを格納するフィールド33310と、イベントの発生元の管理対象装置の装置IDを格納するフィールド33320と、イベントの発生元の管理対象デバイス(装置部位)の識別子を格納するフィールド33330と、イベント(閾値異常)に関係するメトリック名称を格納するフィールド33340と、イベントの発生元の管理対象装置に搭載されているOSの種別を格納するフィールド33350と、イベントの発生元の管理対象デバイスのイベント発生時の状態を格納するフィールド33360と、イベントがイベント解析処理モジュール32500によって解析済みかどうかを示すデータ(以下「解析済フラグ」という)を格納するフィールド33370と、イベントが発生した日時を格納するフィールド33380と、を構成項目として含んでいる。なお、解析済フラグは、例えば、イベントがイベント解析処理モジュール32500によって解析済みの場合に「Yes」とされ、未だ解析されていない場合に「No」とされる。
例えば、図7の第1行目(1つ目のエントリ)からは、管理サーバ30000が、「SYS1」のストレージ装置における「CTL1」で示されるコントローラにおけるプロセッサ稼働率の閾値異常、つまりイベントが「2010-01-01 15:05:00」に検知され、そのイベントIDは「EV1」であり、当該イベントに対して解析済みではないことが分かる。
<汎用ルールの構成>
図8は、実施例1に係る汎用ルールの構成例を示す図である。
汎用ルール(後述の展開ルールも同様)は、計算機システムを構成するノード装置で発生し得る1つ以上のイベント(条件イベント)と、その1以上の条件イベントが発生した場合に原因となるイベント(結論イベント)との対応関係を示すものである。
一般的に、障害解析において原因を特定するためのイベント伝播モデルは、或る障害の結果、発生することが予想されるイベントの組み合わせと、その原因とを“IF−THEN”形式で記載するものとなっている。なお、汎用ルールは、図8に示したものに限られず、異なる形式のルールであっても構わない。
汎用ルールは、汎用ルールの識別子である汎用ルールIDを格納するフィールド33430と、“IF−THEN”形式で記載した汎用ルールのIF部に相当する観測事象、すなわち、条件イベントに関する情報を格納するフィールド33410と、“IF−THEN”形式で記載した汎用ルールのTHEN部に相当する原因事象、すなわち、結論イベントに関する情報を格納するためのフィールド33420と、汎用ルールを実際の計算機システムの構成に対応させて展開して展開ルールを生成する際に利用するトポロジを管理するデータの名称を格納するためのフィールド33440と、を構成項目として含んでいる。条件部33410のイベント(条件イベント)が検知された場合、結論部33420のイベント(結論イベント)が障害の原因となる。従って、結論部33420のステータスが正常になれば、条件部33410の問題も解決することが見込まれる。図8の例では、条件部33410には2つのイベントが記述されているが、イベント数は、1であっても良い、3以上であっても良い。
例えば、図8の汎用ルール「Rule1」は、観測事象として“ホスト計算機10000上の論理ボリュームのレスポンスタイムの閾値異常”と、“ストレージ装置20000におけるボリューム24100(図面では“LU”と表記)の単位時間のI/O量の閾値異常”とが検知されたときに、“ストレージ装置20000におけるボリューム24100の単位時間のI/O量のボトルネック(閾値異常)”が原因と結論付けられることを示している。また、汎用ルール「Rule1」について展開ルールを生成する際には、ボリュームトポロジ管理表33200からトポロジ情報が利用される。なお、観測事象に含まれるイベントとして、ある条件が正常であることを定義してもよい。
<展開ルールの構成>
図9Aは、実施例1に係る展開ルールの第1の構成例を示す図である。図9Bは、実施例1に係る展開ルールの第2の構成例を示す図である。図9Cは、実施例1に係る展開ルールの第3の構成例を示す図である。図9Dは、実施例1に係る展開ルールの第4の構成例を示す図である。
展開ルールは、汎用ルールを計算機システムの実構成に依存する形式に展開した情報である。図9A〜図9Dに示す展開ルールは、図8に示す汎用ルールにボリュームトポロジ管理表33200の各エントリの項目を挿入することによって生成される。
展開ルールは、展開ルールの識別子である展開ルールIDを格納するフィールド33530と、展開ルールの基となった汎用ルールの汎用ルールIDを格納するフィールド33540と、“IF−THEN”形式で記載した展開ルールのIF部に相当する観測事象、すなわち、条件イベントに関する情報を格納するフィールド33510と、“IF−THEN”形式で記載した展開ルールのTHEN部に相当する原因事象、すなわち、結論イベントに関する情報を格納するためのフィールド33520と、を構成項目として含んでいる。
展開ルールは、計算機システムの実構成(例えば、ボリュームトポロジ管理表33200が示す接続関係等)を考慮して、汎用ルールの条件イベント及び結論イベントの装置種別及び装置部位種別を、特定の管理対象装置及び管理対象デバイスに具体化することで生成される。例えば、図9Aの展開ルール「ExRule1−1」は、汎用ルール「Rule1」における装置種別及び装置部位種別に、図6のボリュームトポロジ管理表33200の一番上のエントリによって接続関係が示されているホスト計算機「HOST1」の論理ボリューム「/var」及びストレージ装置「SYS1」のボリューム「LU1」を特定する情報(フィールド33240のコントローラ名、フィールド33250のホストID、フィールド33260の接続先ドライブ名、フィールド33230のLU番号)を挿入することによって生成される。図9Aから分かるように、展開ルール「ExRule1−1」は、汎用ルール「Rule1」を基に展開され、観測事象として“ホスト計算機「HOST1」上の論理ボリューム「/var」のレスポンスタイムの閾値異常”と、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間のI/O量の閾値異常”とを検知したとき、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間のI/O量のボトルネック”が原因と結論付けられることを示している。
一方、図9Bの展開ルール「ExRule1−2」は、汎用ルール「Rule1」における装置種別及び装置部位種別に、図6のボリュームトポロジ管理表33200の上から2番目のエントリによって接続関係が示されているホスト計算機「HOST1」の論理ボリューム「/opt」及びストレージ装置「SYS1」のボリューム「LU1」を特定する情報を挿入することによって生成される。図9Bから分かるように、展開ルール「ExRule1−2」は、“ホスト計算機「HOST1」上の論理ボリューム「/opt」のレスポンスタイムの閾値異常”と、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間のI/O量の閾値異常”とを検知したとき、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間のI/O量のボトルネック”が原因と結論付けられることを示している。また、図9Cの展開ルール「ExRule1−3」は、汎用ルール「Rule1」における装置種別及び装置部位種別に、図6のボリュームトポロジ管理表33200の上から3番目のエントリによって接続関係が示されているホスト計算機「HOST2」の論理ボリューム「E:」及びストレージ装置「SYS1」のボリューム「LU2」を特定する情報を挿入することによって生成される。図9Cから分かるように、展開ルール「ExRule1−3」は、“ホスト計算機「HOST2」上の論理ボリューム「E:」のレスポンスタイムの閾値異常”と、“ストレージ装置「SYS1」におけるボリューム「LU2」の単位時間のI/O量の閾値異常”とを検知したとき、“ストレージ装置「SYS1」におけるボリューム「LU2」の単位時間のI/O量のボトルネック”が原因と結論付けられることを示している。また、図9Dの展開ルール「ExRule1−4」は、汎用ルール「Rule1」における装置種別及び装置部位種別に、図6のボリュームトポロジ管理表33200の上から4番目のエントリによって接続関係が示されているホスト計算機「HOST3」の論理ボリューム「E:」及びストレージ装置「SYS1」のボリューム「LU3」を特定する情報を挿入することによって生成される。図9Dから分かるように、展開ルール「ExRule1−4」は、“ホスト計算機「HOST3」上の論理ボリューム「E:」のレスポンスタイムの閾値異常”と、“ストレージ装置「SYS1」におけるボリューム「LU3」の単位時間のI/O量の閾値異常”とを検知したとき、“ストレージ装置「SYS1」におけるボリューム「LU3」の単位時間のI/O量のボトルネック”が原因と結論付けられることを示している。
<解析結果管理表の構成>
図10は、実施例1に係る解析結果管理表の構成例を示す図である。
解析結果管理表33600は、障害原因解析処理において障害の原因と判断されたイベントの発生元の管理対象装置の装置IDを格納するフィールド33610と、イベントの発生元の管理対象デバイスの識別子を格納するフィールド33620と、イベント(閾値異常)に関係するメトリック名称を格納するフィールド33630と、解析結果の確からしさを示す指標値(以下「確信度」という。本実施例では、条件イベントの発生割合である。)を格納するフィールド33640と、イベントを障害の原因と判断した根拠となる展開ルールの展開ルールIDを格納するフィールド33650と、展開ルールの条件イベントのうち、実際に受信したイベントのIDを格納するフィールド33660と、該解析結果を基にユーザである管理者が実際に障害対応を行ったかどうかを示す対応済みフラグを格納するフィールド33670と、イベント発生に伴う障害解析処理を開始した日時(解析実行日時)を格納するフィールド33680と、を構成項目として含んでいる。
例えば、図10の第1段目(1つ目のエントリ)からは、展開ルール「ExRule1−1」に基づき、管理サーバ30000が“ストレージ装置「SYS1」のボリューム「LU1」における単位時間I/O量”の閾値異常を障害原因として判断し、その根拠としてイベント「EV3」および「EV6」を受信し、条件イベントの確信度(発生割合)が「2/2」であり、解析を実行した日時が「2010-01-01 15:05:00」であることが分かる。
次に、本実施例に係る計算機システムにおける処理を説明する。
<構成管理情報の取得処理及び、ボリュームトポロジ管理表の更新処理>
管理サーバ30000のプログラム制御モジュール32100は、例えばポーリング処理によって、構成管理情報取得モジュール32200に対し、計算機システム内の管理対象装置(本実施例では、ストレージ装置20000、ホスト計算機10000およびIPスイッチ40000)から、構成管理情報を定期的に取得するよう指示する。なお、構成管理情報とは、管理対象装置の構成を示す情報であり、具体的には、管理対象装置がどんなデバイスを有しているか、どの管理対象装置又はどのデバイスと接続関係を有しているか等を示す情報である。
構成管理情報取得モジュール32200は、管理対象装置(本実施例では、ストレージ装置20000およびホスト計算機10000およびIPスイッチ40000)から構成管理情報を取得し、ボリュームトポロジ管理表33200を更新する。
<装置性能情報取得処理及びイベント解析処理>
図11は、実施例1に係る装置性能情報取得処理のフローチャートである。
管理サーバ30000のプログラム制御モジュール32100は、プログラムの起動時、もしくは前回の装置性能情報取得処理から一定時間経過するたびに、装置性能取得モジュール32300に対し、装置性能情報取得処理を実行するよう指示する。なお、当該実行指示を繰り返し出す場合は厳密に一定期間毎である必要は無く、繰り返しさえしていればよい。
装置性能情報取得モジュール32300は、管理対象装置に対し、以下の一連の処理を繰り返す。
装置性能情報取得モジュール32300は、まず、管理対象装置に対し、管理対象デバイスの性能値(装置性能管理表33100のメトリック33130に対応した性能値)を示す情報(以下「装置性能情報」という)を送信するよう指示する(ステップ61010)。この指示を受け取った、各管理対象装置は、自身における管理対象デバイスの装置性能情報を応答として管理サーバ30000に送信することとなる。
装置性能情報取得モジュール32300は、管理対象装置から応答があったか否か、すなわち装置性能情報を受信したか否かを判断し(ステップ61020)、管理対象装置からの応答があれば(ステップ61020でYes)、受信した装置性能情報に基づいて装置性能管理表33100のフィールド33150の値(性能値)を更新し(ステップ61030)、処理をステップ61040に進める。一方、管理対象装置から応答がなかった場合(ステップ61020でNoの場合)、装置性能情報取得モジュール32300は、装置性能情報取得処理を終了する。
ステップ61040に進むと、装置性能取得モジュール32300は、装置性能管理表33100のフィールド33150を参照し、各管理対象デバイスの性能値に対してステップ61050からステップ61070の処理を繰り返す。すなわち、装置性能取得モジュール32300は、性能値がアラート実行閾値を超過しているかを確認し、装置性能管理表33100のフィールド33180の値(ステータス)を更新する(ステップ61050)。そして、装置性能取得モジュール32300は、ステータスが正常から閾値異常に、或いは閾値異常から正常に変化したか否か判断し(ステップ61060)、ステータスが変化した場合(ステップ61060でYes)、イベント管理表33700にイベントを登録する(ステップ61070)。ステータスが変化していない場合(ステップ61060でNo)、全ての管理対象デバイスの性能値に対するステータス確認処理が終わっていなければ、装置性能取得モジュール32300は、処理をステップ61040に進める。
全ての管理対象デバイスの性能値に対する上記の処理(ステップ61040からステップ61070)が終了した後、装置性能取得モジュール32300は、新規に登録した追加イベントがあるか否か判断し(ステップ61080)、追加イベントがあれば(例えば、処理中に新たな異常が発生したような場合)(ステップ61080)、イベント解析処理モジュール32500に対し、障害原因解析処理(図12参照)を行なうよう指示する(ステップ61090)。一方、追加イベントがない場合(ステップS61080でNO)、装置性能情報取得処理を終了する。 以上が、装置性能取得モジュール32300が実施する装置性能情報取得処理である。
<障害原因解析処理(ステップ61090)の詳細>
図12は、実施例1に係る障害原因解析処理のフローチャートである。
管理サーバ30000のイベント解析処理モジュール32500は、イベント管理表33300より、解析処理済みでないイベント、すなわち、解析済フラグが「No」のイベントを取得する(ステップ62010)。
次に、イベント解析処理モジュール32500は、展開ルールリポジトリ33500内の各展開ルールに対し、ステップ62020からステップ62040の間の処理を繰り返す。すなわち、イベント解析処理モジュール32500は、展開ルールに記載された条件イベントのうち、過去一定期間内に発生した条件イベントの数(条件イベントの発生件数)を集計する(ステップ62030)。
そして、展開ルールリポジトリ33500内の全ての展開ルールに対する処理が終了した後に、イベント解析処理モジュール32500は、条件イベントの発生割合、すなわち、展開ルールのすべての条件イベントの数に対する、ステップ62030で集計した条件イベントの発生件数の割合が、一定の比率を超過したか否か判断し、超過している場合にはGUI表示処理モジュール32400に対し、障害の原因になるイベント、すなわち、展開ルールの結論イベントの内容を、条件イベントの発生割合と共に表示するよう指示する(ステップ62050)。その後、イベント管理表33300における、ステップ62010で取得したイベントに関するフィールド33370の値(解析済フラグ)を「Yes」に設定する(ステップ62060)。
その後、イベント解析処理モジュール32500は、展開ルールリポジトリ33500内の各展開ルールのうち、確信度(すなわち、条件イベントの発生割合)が0でない展開ルールに関する解析結果を解析結果管理表33600に書き出す(ステップ62070)。
ここで、障害原因解析処理を具体的な例を挙げて説明する。例えば、図9Aに示す展開ルール「ExRule1−1」には、条件部に“ホスト計算機「HOST1」における論理ボリューム「/var」のレスポンスタイムの閾値異常”と、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間I/O量の閾値異常”が定義されている。
そして、図7に示すイベント管理表33300に、“ストレージ装置「SYS1」におけるボリューム「LU1」の単位時間I/O量の閾値異常”(発生日時:2010−01−01 15:05:00)が登録されると、イベント解析処理モジュール32500は、一定時間待機した後にイベント管理表33300を参照し、過去一定期間に発生したイベントを取得する(ステップ62010)。
次に、イベント解析処理モジュール32500は、展開ルールリポジトリ33500の展開ルール「ExRule1−1」に記載された条件イベントの過去一定期間内の発生件数を算出する(ステップ62030)。その結果、“ホスト計算機「HOST1」における論理ボリューム「/var」のレスポンスタイムの閾値異常”も過去一定期間に発生していることから、展開ルール「ExRule1−1」に記載された条件イベントの過去一定期間の発生件数が2となり、条件イベントの発生割合は2/2となる。
以上のようにして算出された条件イベントの発生割合が一定値を超過した場合、イベント解析処理モジュール32500は、GUI表示処理モジュール32400に対し、障害原因となるイベントを、条件イベント発生割合と共に表示するよう指示する(ステップ62050)。ここでいう一定値を例えば30%とした場合、展開ルール「ExRule1−1」の条件イベントの発生割合が2/2、すなわち100%であるので、解析結果がGUIを介して表示されることになる。
イベント解析処理モジュール32500は、上記の処理を、展開ルールリポジトリ33500に定義された全ての展開ルールに対し実行する。
以上が、イベント解析処理モジュール32500が実施する障害原因解析処理である。
通常、障害原因解析処理を実施するためには、あらかじめ汎用ルールリポジトリ33400内に原因解析を実施したい障害イベントの発生パターンに対応するルールが、汎用ルールとして登録されていないとならない。例えば、上記の障害イベント群(“ホスト計算機10000における論理ボリュームのレスポンスタイムの閾値異常”と“ストレージ装置20000におけるボリューム24100の単位時間I/O量の閾値異常”)が発生した時にその障害原因を解析するためには、図8に示すような汎用ルール「Rule1」があらかじめ汎用ルールリポジトリ33400内に存在しないとならない。このため、ユーザは導入時に管理対象の計算機システムで発生しそうな障害のパターンをルール化する必要がある。通常は過去のイベント発生状況を参考にすれば発生しそうな障害イベントのパターンと障害原因を推測することができるため、ユーザは過去のイベント発生状況からルールを作成することになる。具体的には、障害解析システムのユーザである運用管理者は、あらかじめイベント管理表33300を参照して、ルール化できそうな発生パターンを抽出してルール化し、汎用ルールリポジトリ33400に登録する。しかしながら、計算機システムに含まれる各装置は、色々な種類のイベントメッセージを発行する上、管理対象の計算機システムの規模が大きくなるとイベントメッセージの発行元の装置数も多くなるので、ルールの作成は運用管理者にとって大きな作業タスクになる。さらに、ルール作成の作業は、障害解析システムの導入時に多く実施されるはずであるものの、導入時には運用管理者のスキルが高くないことが容易に想像でき、人為的な間違えを生じる可能性が非常に高い。
そこで、実施例1では、イベント管理表33300に記録されているイベントの発生履歴と、解析結果管理表33600に記録されている解析結果の履歴を利用して、ルール化できそうなイベントの発生パターンを抽出し、解析に利用したルールに対してイベントを追加することで新たなルール(新規ルール)を生成し、生成したルールをユーザに提示して以後の解析に利用するか否かを問い合わせる。
<ルール生成処理の内容>
従来技術における課題を解決するため、実施例1では管理サーバ30000におけるルール生成処理が追加され、それを実施するルール生成モジュール327000を追加している。以下、当該ルール生成処理の詳細について説明する。
<実施例1に係るルール生成処理の詳細>
図13は、実施例1に係るルール生成処理のフローチャートである。
管理サーバ30000のプログラム制御モジュール32100は、管理サーバ30000のセットアップ時、もしくは前回のルール生成処理から一定時間経過するたびに、ルール生成モジュール32700に対し、ルール生成処理を実行するように指示する。なお、当該実行指示を繰り返し出す場合は厳密に一定期間毎である必要は無く、繰り返しさえしていればよい。
ルール生成モジュール32700は、イベント管理表33300を用いて過去のイベントの発生履歴を検査する。そして、一定回数以上発生していて、解析済みフラグ(フィールド33370の値)が「Yes」になっているイベントを取得する(ステップ63010)。
ルール生成モジュール32700は、各イベントに対して、ステップ63020からステップ63040の間の処理を繰り返す。解析結果管理表33600を利用して、ステップ63010で取得したイベントに対して、対応する展開ルールIDを取得する(ステップ63030)。
そして、すべてのイベントに対して対応する展開ルールIDを取得した後、ルール生成モジュール32700は、取得した展開ルールIDが示す展開ルールのそれぞれに対して、ステップ63050からステップ63160までの間の処理を繰り返し実施する。ここで、ステップ63030で取得した展開ルールIDが示す展開ルールのうちの処理対象となる一つを図13の説明において「対象展開ルール」という。
まず、ルール生成モジュール32700は、対象展開ルールに含まれるいずれかの条件イベントの発生の前後一定間隔以内に発生(すなわち、条件イベントと共起)しているイベントのうち、対象展開ルールに含まれないイベント(以下「共起イベント候補」という)を、イベント管理表33300から取得する(ステップ63060)。
次に、ルール生成モジュール32700は、ステップ63060で取得した各共起イベント候補に対して、ステップ63070からステップ63090の間の処理を繰り返し実行する。ルール生成モジュール32700は、共起イベント候補と対象展開ルールの条件イベントとの発生回数及び共起回数に基づいて、対象展開ルールに含まれる条件イベントと共起する確率(以下「共起確率」という)を算出する(ステップ63080)。この際、例えば、対象展開ルールに含まれる条件イベントのうちの少なくとも一つと共起している場合に、共起しているとみなして共起確率の算出を実施する。
そして、ステップ63060で取得したすべての共起イベント候補に対して、ステップ63080の処理を実施した後に、ルール生成モジュール32700は、共起イベント候補のうち共起確率が一定値以上のイベントを取得する(ステップ63100)。ここで、共起イベント候補のうち共起確率が一定値以上のイベントは、対象展開ルールの条件イベントと同一の原因によって発生していると推定されるイベントであり、以下「共起イベント」という。
次に、ルール生成モジュール32700は、取得した1以上の共起イベントに対して、少なくとも一つ以上の共起イベントが含まれる全組み合わせを導出する(ステップ63110)。このステップ63110で導出したイベントの組み合わせは、対象展開ルールに対して共起するイベント群(以下「共起イベント群」という:第2のイベント群)である。例えば、2つの共起イベントA、Bが得られた場合、共起イベント群は、共起イベントAだけを含む共起イベント群、共起イベントBだけを含む共起イベント群、及び、共起イベントAと共起イベントBとを含む共起イベント群の3つとなる。ルール生成モジュール32700は、導出した共起イベント群のそれぞれに対して、ステップ63120からステップ63150の処理を繰り返し実行する。ここで、導出した共起イベント群のうちの処理対象となる一つを図13の説明において「対象共起イベント群」という
次に、ルール生成モジュール32700は、対象共起イベント群と対象展開ルールに含まれる条件イベント群とが、同一トポロジに含まれる装置、すなわち、相互に接続関係を有する装置から発生したものであるかどうかを、ボリュームトポロジ管理表33200を利用して確認する(ステップ63130)。
この結果、同一トポロジに含まれる装置から発生したものである場合(ステップ63130でYes)、ルール生成モジュール32700は、対象共起イベント群及び対象展開ルールについて、ルール登録処理を実施し、ルールを登録する(ステップ63140)。一方、同一トポロジに含まれる装置から発生したものでない場合(ステップ63130でNo)、ルール生成モジュール32700は、何もしないで、ステップS63150に処理を進める。
そして、ステップ63100で導出した共起イベント群のそれぞれに対して処理(ステップ63120からステップ63150)を終えた後、ルール生成モジュール32700は、処理をステップ63160に進める。これにより、ステップ63030で取得した展開ルールIDが示す展開ルールのすべてについて処理(ステップ63050から63160)を行っていない場合には、ルール生成モジュール32700は、ステップS63050に処理を進める。
一方、ステップ63030で取得した展開ルールIDが示す展開ルールのすべてについて処理(ステップ63050から63160)を終えた後、ルール生成モジュール32700は、ルール生成処理を終了する。
<ルール登録処理の詳細>
図14は、実施例1に係るルール登録処理のフローチャートである。
ルール登録処理は、図13のステップ63140に対応する処理である。以下、図14の説明において、ルール登録処理の対象となる共起イベント群を「対象共起イベント群」といい、ルール登録処理の対象となる展開ルールを「対象展開ルール」という。
まず、ルール生成モジュール32700は、対象共起イベント群と対象展開ルールに含まれる条件イベント群とのすべてのイベントを含みイベント群(第1のイベント群)の各イベントを条件イベントとする条件部を構築する(ステップ64010)。
次に、ルール生成モジュール32700は、ステップ64010で構築した条件部に対して、対象展開ルールの結論部を結合し、新たな展開ルールを導出する(ステップ64020)。
そして、ルール生成モジュール32700は、ステップ64020で導出した新たな展開ルールに基づいて、条件イベント及び結論イベントの発生元の管理対象装置及び管理対象デバイスを装置種別及び装置部位種別を用いて抽象化することにより、汎用ルール(第1の新規ルール)を作成する(ステップ64030)。以下、新たな展開ルールから作成した新たな汎用ルールを「新ルール」(新規ルール)と呼ぶことがある。
ルール生成モジュール32700は、ステップ64030で作成した新ルールに対して、汎用ルールリポジトリ33400に対する既登録の有無のチェックを実施したのちに、新ルールをユーザに提示しユーザの選択に応じて汎用ルールリポジトリ33400に登録するルール選択処理を行う(ステップ64040)。
次に、ルール生成モジュール32700は、対象共起イベント群に含まれるイベント(共起イベント)のそれぞれに対して、ステップ64050からステップ64090までの処理を繰り返し実行する。ここで、対象共起イベント群に含まれる共起イベントのうちの処理対象の一つを図14の説明において「対象共起イベント」という。
まず、ルール生成モジュール32700は、ステップ64010で構築した条件部に対して、対象共起イベントを結論部に含む新たな展開ルールを導出する(ステップ64060)。
そして、ルール生成モジュール32700は、ステップ64060で導出した新たな展開ルールに基づいて、条件イベント及び結論イベントの発生元の管理対象装置及び管理対象デバイスを装置種別及び装置部位種別を用いて抽象化することにより、汎用ルール(第2の新規ルール)を作成する(ステップ64070)。
ルール生成モジュール32700は、ステップ64070で作成した新ルールに対して、汎用ルールリポジトリ33400に対する既登録の有無のチェックを実施したのちに、新ルールをユーザに提示しユーザの選択に応じて汎用ルールリポジトリ33400に登録するルール選択処理を行い(ステップ64080)、対象共起イベント群の全てのイベントに対して処理(ステップ64050からステップ64090)を実行していない場合には、処理をステップ64050に進める。
一方、対象共起イベント群に含まれる共起イベントのすべてについて処理(ステップ64050からステップ64090)を終えた場合には、ルール生成モジュール32700は、ルール登録処理を終了する。
図15は、実施例1に係るルール選択処理のフローチャートである。
ルール選択処理は、図14のステップ64040、ステップ64080に対応する処理である。ルール選択処理は、新ルールについて既登録の有無をチェックし、新ルールを原因解析に利用するか否かをユーザに選択させる処理である。
まず、ルール生成モジュール32700は、新ルールが既に汎用ルールリポジトリ33400に存在するかどうかチェックする(ステップ65010)。
まだ登録されていない場合は、ルール生成モジュール32700は、新ルールを出力デバイス31200又はWEBブラウザ起動サーバ35000に表示する。本実施例でのルール生成方式は、イベント間の共起確率に基づいてルール化できる可能性のあるイベントをイベントの発生履歴から取得した上で、取得したイベントの組み合わせに基づいて生成するものであり、結論部に記述したイベントが本当に結論として正しいのかどうかは、実際に運用管理担当者が判断しないとならない。そこで、新ルールの内容と、それを判断するに至った(新ルール作成の根拠となった)実際に発生したイベント群の発生履歴情報とを出力デバイス31200又はWEBブラウザ起動サーバ35000に表示する(ステップ65020)。ルール生成モジュール32700は、例えば、後述する生成ルール表示画面(図16参照)を出力デバイス31200又はWEBブラウザ起動サーバ35000に表示する。
ユーザが追加すべきルールとして選択した場合、すなわち、新ルールを以降の原因解析に利用することを示す入力を受け付けた場合には(ステップ65030でYes)、ルール生成モジュール32700は、新ルールを汎用ルールリポジトリ33400に登録する(ステップ65040)。
一方、ユーザが追加すべきルールとして選択しなかった場合、すなわち、新ルールを以降の原因解析に利用しないことを示す入力を受け付けた場合には(ステップ65030でNo)、ルール生成モジュール32700は、新ルールを汎用ルールリポジトリ33400に登録せずに、ルール選択処理を終了する。
なお、ルール生成モジュール32700は、例えば、作成した新ルールについて、その新ルールの内容とその新ルールに対するユーザの選択内容(追加すべきルールとして選択したか否かを示す内容)とを含むユーザ選択の履歴(根本原因の解析に利用しないことを示す情報を含む)を、例えばメモリ32000に記憶しても良い。また、ルール生成モジュール32700は、例えば、以降、ルール選択処理を行う場合、ユーザ選択の履歴を参照し、作成された新ルール(第4の新規ルール)が、ユーザが以前登録を拒否したルール(第3の新規ルール)であるか否かを判定し、ユーザが以前登録を拒否したルールについては、ステップ65020の表示処理を行わないようにしても良い。このようにすると、以前登録を拒否されたルールが、再度ユーザに表示されることを適切に防止することができ、汎用ルールリポジトリ33400に当該ルールを登録しないようにすることができる。
以上が実施例1によるルール生成処理である。
<生成ルール表示画面の構成>
図16は、実施例1に係る生成ルール表示画面の構成例を示す図である。
生成ルール表示画面71000は、生成した新ルールの内容と、それを判断するに至った(新ルール作成の根拠となった)実際に発生したイベント群の発生履歴情報とを表示する。
生成ルール表示画面71000中の生成ルール表示テーブル71010には、生成した汎用ルール(新ルール)の内容と、共起関係を分析するために利用したイベントの発生履歴情報とが表示される。同図では、もともと汎用ルールリポジトリ33400に存在していた図8の汎用ルール「Rule1」に対して、汎用ルール「Rule1」に含まれる条件イベントと“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”との共起関係をイベント管理表33300の解析により抽出し、その共起関係に基づいて作成した新ルールを表示している。作成した新ルールは、“ホスト計算機10000上の論理ボリュームのレスポンスタイムの閾値異常”と、“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”と、“ストレージ装置20000におけるボリューム24100の単位時間のI/O量の閾値異常”とを検知したときに、“ストレージ装置20000のコントローラ25000のプロセッサ使用率のボトルネック(閾値異常)”が原因となるというルールである。汎用ルール「Rule1」に対して“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”が追加されており、そのことが分かるような形態で表示されている。すなわち、本実施例では、追加されたイベントに「(New)」と表示されている。そして、生成ルール表示画面71000は、ユーザがこの新ルールを汎用ルールリポジトリ33400に追加して良いかどうかを判断した上で追加するかどうかを入力するためのインターフェース(本実施例では、ボタン71020およびボタン71030)を有する。
なお、本実施例では図14で示すように新ルールの作成のたびにルール選択処理を呼び出しており、その結果として図16に示す生成ルール表示画面71000には生成された一つの新ルールのみが表示されている。しかし、図14のルール登録処理において、新ルールの作成の都度随時ルール選択処理を呼び出すのではなく、作成した新ルールをメモリに保持しておき、一連のルール生成処理の終了ののちにまとめてユーザに作成した新ルール群を表示しても良い。その場合には、図16に示す生成ルール表示画面71000に生成ルール表示テーブル71010を新ルールごとに複数個表示し、それぞれの表示テーブル71010ごとに汎用ルールリポジトリ33400に追加する必要があるかどうかを選択できるようなチェックボックスを配置するようにすれば良い。
<ルール生成処理の効果>
以上、実施例1によれば、管理サーバ30000の管理ソフトウェアは、管理ソフトウェアの起動時、または一定時間経過するたびに図13〜図15に示すルール生成処理を実施する。実施例1によるルール生成処理では、汎用ルールリポジトリ33400に存在し、以前に障害原因解析処理に利用されたルール(既存ルール)に対して、そのルールの条件イベントと同一の原因によって発生すると推測できる共起確率が一定値以上のイベント(共起イベント)を追加した新ルールを、イベント管理表33300に記録されたイベントの発生状況より共起イベントを取得した上で構築し、ユーザに提示する。このように、障害発生の履歴と発生した障害に対する障害原因解析の履歴を利用するが、例えば擬似的に障害を発生させて、それに対して原因解析処理を実施した結果を利用してルールを作成しても良い。従来は、ユーザがイベント管理表33300に記録されたイベントの発生状況を基に障害原因解析パターンを抽出したり、あるいは実際の運用管理現場でどのように障害が発生しているかを運用管理担当者からヒアリングを実施したりした結果をもとに、ルールを作成する必要があった。これに対して本実施例によれば、ルール作成を自動化することにより、適切なルールを作成することができるとともに、作業工数を減らすことができ、また、人為的なオペレーションミスを軽減できる。
また、実施例1によって作成した新ルール(図16の生成ルール表示テーブル71010に表示されたルール)は、従来はユーザが気づいていなかった“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”というイベントを結論イベントとして含んでいる。すなわち汎用ルール「Rule1」に含まれる障害イベントの原因がこのイベントであるということは、ユーザが容易には発見できなかったが、ユーザの手順を追加することなく自動的に分析して表示している。この例では、ボリューム24100に障害が生じてその結果ホスト計算機10000のドライブに障害が生じていることはルール化されていたが、その原因がストレージ20000のコントローラ25000にあることをユーザは認識していなかった。そのため、ユーザはボリューム24100を作成し直すことにより障害に対応し、根本の原因であるコントローラ25000の異常を解決できていなかった可能性が高い。このような場合に、今までのいわば「見かけの原因」ではなく、根本の原因であるコントローラ25000の異常を、ユーザに提示できる。
さらに、実施例1に係るルール生成処理は、障害原因解析のためのルール作成処理であるが、これを障害原因解析以外に利用しても良い。例えば、発生した障害のグループ化のために利用することにより、障害対応後に以前に発生していた障害に既に対応済みかどうか、一つ一つの障害の発生状況を再確認しなくてもある程度ユーザが推測できるようになる。
このように、本実施例によれば、システム運用管理者がルール作成及び障害対応に要する負荷を軽減することができる。
実施例1では、汎用ルールリポジトリ33400に存在し、以前に障害原因解析処理に利用された既存ルールに対して、そのルールの条件イベントと同一の原因によって発生すると推測できる共起確率が一定値以上のイベント(共起イベント)を追加した新ルールを、イベント管理表に記録されたイベントの発生状況より共起イベントを取得した上で構築し、ユーザに提示している。このように実施例1では既存の汎用ルールを基に共起イベントを追加することで新ルールを作成している。実施例2に係るルール生成処理は、そのような既存ルールを利用せずに、イベント管理表に記録されたイベントの発生状況のパターンのみから新ルールを構築する。なお、システム構成や各装置の構成のうち、実施例1と実質的に同じものについては説明を省略する。
<ルール生成処理の内容>
実施例2に係る管理サーバ30000に追加されたルール生成モジュール327000におけるルール生成処理の動作の詳細について説明する。
<実施例2に係るルール生成処理の詳細>
図17は、実施例2に係るルール生成処理のフローチャートである。
管理サーバ30000のプログラム制御モジュール32100は、管理サーバ30000のセットアップ時、もしくは前回のルール生成処理から一定時間経過するたびに、ルール生成モジュール32700に対し、ルール生成処理を実行するように指示する。なお、当該実行指示を繰り返し出す場合は厳密に一定期間毎である必要は無く、繰り返しさえしていればよい。
ルール生成モジュール32700は、イベント管理表33300を用いて過去のイベントの発生履歴を検査する。そして、一定回数以上発生しているイベントを取得する(ステップ66010)。
ルール生成モジュール32700は、ステップ66010で取得した各イベントに対して、ステップ66020からステップ66130までの処理を繰り返し実行する。ここでステップ66010で取得したイベントのうちの処理対象の一つを図17の説明において「対象イベント」という。
まず、ルール生成モジュール32700は、イベント管理表33300を用いて、対象イベントの発生の前後一定間隔以内に発生(すなわち、対象イベントと共起)しているイベント(以下、実施例2において「共起イベント候補」という)を抽出する(ステップ66030)。
次に、ルール生成モジュール32700は、ステップ66030で取得した各共起イベント候補に対して、ステップ66040からステップ66060までの処理を繰り返し実行する。ルール生成モジュール32700は、当該共起イベント候補と対象イベントとの発生回数及び共起回数に基づいて、対象イベントとの共起確率を算出する(ステップ66050)。
そして、全ての共起イベント候補に対して処理(ステップ66040からステップ66060)を終了した後に、そして、ルール生成モジュール32700は、共起イベント候補のうち共起確率が一定値以上のイベント(以下、実施例2において「共起イベント」という)を取得する(ステップ66070)。
ルール生成モジュール32700は、ステップ66070で取得した1以上の共起イベントの全組み合わせを導出する(ステップ66080)。ステップ66080で導出された組合せのそれぞれが、実施例2における共起イベント群である。ルール生成モジュール32700は、導出した共起イベント群のそれぞれに対して、ステップ66090からステップ66120の処理を実施する。ここで、導出した共起イベント群のうちの処理対象とする一つを図17の説明において「対象共起イベント群」という。
ルール生成モジュール32700は、対象共起イベント群に含まれるイベントが同一トポロジに含まれる装置、すなわち、相互に接続関係を有する装置から発生したものであるかどうかを、ボリュームトポロジ管理表33200を利用して確認する(ステップ66100)。
同一トポロジに含まれる装置から発生したものである場合(ステップ66100でYesの場合)、ルール生成モジュール32700は、対象共起イベント群について、ルール登録処理を実施し、ルールを登録する(ステップ66110)。一方、同一トポロジに含まれる装置から発生したものでない場合(ステップ66100でNo)、ルール生成モジュール32700は、何もしないで、ステップS66120に処理を進める。これにより、ステップ66010で取得したイベントのすべてについて処理(ステップ66020からステップ66130)を行っていない場合には、ルール生成モジュール32700は、ステップS66020に処理を進める。
一方、ステップ66010で取得したイベントのすべてに対して処理(ステップ66020からステップ66120)を終えた後、ルール生成モジュール32700は、ルール生成処理を終了する。
<ルール登録処理の詳細>
図18は、実施例2に係るルール登録処理のフローチャートである。
ルール登録処理は、ルール生成処理(図17)のステップ66110に対応する処理である。図18の説明において、ルール登録処理の対象となる共起イベント群を「対象共起イベント群」という。
まず、ルール生成モジュール32700は、対象共起イベント群(第1のイベント群)のすべてを条件イベントとする条件部を構築する(ステップ67010)。
次に、ルール生成モジュール32700は、対象共起イベント群に含まれるイベント(共起イベント)のそれぞれに対して、ステップ67020からステップ67060までの処理を繰り返し実行する。ここで、対象共起イベント群に含まれる共起イベントのうちの処理対象の一つを図18の説明において「対象共起イベント」という。
まず、ルール生成モジュール32700は、ステップ67010で構築した条件部に対して、対象共起イベントを結論部に含む新たな展開ルールを導出する(ステップ67030)。
そして、ルール生成モジュール32700は、導出した新たな展開ルールに基づいて、条件イベント及び結論イベントの発生元の管理対象装置及び管理対象デバイスを装置種別及び装置部位種別を用いて抽象化することにより、汎用ルール(新規ルール)を作成する(ステップ67040)。
ルール生成モジュール32700は、作成した汎用ルール(すなわち、新ルール)に対して、汎用ルールリポジトリ33400に対する既登録の有無のチェックを実施したのちに、新ルールをユーザに提示しユーザの選択に応じて汎用ルールリポジトリ33400に登録するルール選択処理を行う(ステップ67050)。このステップ67050のルール選択処理は、実施例1における図15で記載したルール選択処理と実質的に同じである。なお、実施例2においては、図15のルール選択処理のステップ65020において、図19に示す生成ルール表示画面が表示される。
以上が実施例2によるルール生成処理である。
<生成ルール表示画面の構成>
図19は、実施例2に係る生成ルール表示画面の構成例を示す図である。
実施例2に係る生成ルール表示画面72000は、実施例1に係る生成ルール表示画面71000と同様に、生成した新ルールの内容とそれを判断するに至った実際に発生したイベント群の発生履歴情報とを表示する。
生成ルール表示画面72000中の生成ルール表示テーブル72010には、生成した汎用ルール(新ルール)の内容と、共起関係を分析するために利用したイベントの発生履歴情報とが表示される。この図では、“ホスト計算機10000における論理ボリュームのレスポンスタイムの閾値異常”と、“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”と、“ストレージ装置20000におけるボリューム24100の単位時間I/O量の閾値異常”との共起関係をイベント管理表33300の解析により抽出し、その共起関係に基づいて作成したルールを表示している。作成した新ルールは、“ホスト計算機10000上の論理ボリュームのレスポンスタイムの閾値異常”と、“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”と、“ストレージ装置20000におけるボリューム24100の単位時間のI/O量の閾値異常”とを検知したときに、“ストレージ装置20000のコントローラ25000のプロセッサ使用率のボトルネック(閾値異常)”が原因となるというルールである。実施例2では、既存の汎用ルールを利用せずにルール生成を行っている。図16では“ストレージ装置20000におけるコントローラ25000のプロセッサ使用率の閾値異常”を既存のルールに対して追加していることが理解できるような形式で表示を行っていた。実施例2では、既存のルールのイベントと追加したイベントとの差分を表示する必要はないものの、図19では実施例1での表示とそろえるために、すべてのイベントに対して、既存ルールを利用して導出したイベントではないことを示す情報(すなわち、「(New)」という表示)を、表示している。さらに、生成ルール表示画面72000は、図16と同様に、ユーザがこの新ルールを汎用ルールリポジトリ33400に追加して良いかどうかを判断した上で追加するかどうかを入力するためのインターフェース(本実施例では、ボタン72020およびボタン72030)を有する。
なお、本実施例でも図14と同様に、図18で示すように新ルールの作成のたびにルール選択処理を呼び出しており、その結果として図19に示す生成ルール表示画面72000には生成された一つの新ルールのみが表示されている。しかし、図18のルール登録処理において、新ルール作成の都度随時ルール選択処理を呼び出すのではなく、作成した新ルールをメモリに保持しておき、一連のルール生成処理の終了ののちにまとめてユーザに作成した新ルール群を表示しても良い。その場合には、図19に示す生成ルール表示画面72000に生成ルール表示テーブル72010を新ルールごとに複数個表示し、それぞれの表示テーブル72010ごとに汎用ルールリポジトリ33400に追加する必要があるかどうかを選択できるようなチェックボックスを配置するようにすれば良い。
<ルール生成処理の効果>
以上、実施例2によれば、管理サーバ30000の管理ソフトウェアは、管理ソフトウェアの起動時、または一定時間経過するたびに図17、図18および図15に示すルール生成処理を実施する。実施例2によるルール生成処理では、イベント管理表33300を分析し、発生したイベントと共起している別のイベントを追加した新ルールを構築し、ユーザに提示する。このように、障害発生の履歴を利用するが、例えば擬似的に障害を発生させて障害発生の履歴を蓄積し、その障害発生の履歴を利用してルールを作成しても良い。従来は、ユーザがイベント管理表33300に記録されたイベントの発生状況を基に障害原因解析パターンを抽出したり、あるいは実際の運用管理現場でどのように障害が発生しているかを運用管理担当者からヒアリングを実施したりした結果をもとに、ルールを作成する必要があった。これに対して、本実施例によれば、ルール作成を自動化することにより、適切なルールを作成することができるとともに、作業工数を減らすことができ、人為的なオペレーションミスを軽減できる。
さらに、実施例2に係るルール生成処理は、障害原因解析のためのルール作成の処理であるが、これを障害原因解析以外に利用してもよい。例えば、発生した障害のグループ化のために利用することにより、障害対応後に以前に発生していた障害に既に対応済みかどうか、一つ一つの障害の発生状況を再確認しなくてもある程度ユーザが推測できるようになる。
このように、本実施例によれば、適切なルールを作成することができ、システム運用管理者がルール作成及び障害対応に要する負荷を軽減することができる。
以上、幾つかの実施例について説明したが、上述したように、実施例に係る管理サーバ30000は、計算機システムで発生したイベントを蓄積しておき、一定時間ごとのイベント発生パターンを解析することにより、ルール化できるイベントの発生パターンを抽出する。そして、抽出した発生パターンに基づいて新ルールを作成し、管理サーバ30000のユーザに提示する。
特許文献1に開示された障害解析システムでは、障害原因解析時には、管理対象装置で発生し得る条件イベントの組み合わせ(条件イベント群)と、障害の原因候補(結論イベント)との対応関係を示すIF−THEN形式のルールに、検知したイベントを適用することによって、障害原因を推論する。その際に、それぞれの原因候補に対して確信度を算出する。
本実施例では、障害原因解析の実施有無にかかわらず、計算機システムで発生したイベントを管理サーバ30000に蓄積しておき、さらに障害原因解析を実施した場合は、解析結果の履歴を蓄積する。さらに、ユーザが障害原因解析により管理システムにより示された原因候補のうちのどの候補を利用してどのように対処したかという操作ログをも蓄積してもよい。そして、或る特定期間内に発生している障害パターンや、それによって管理システムによって示された原因候補の発生に関連性があった場合、それらをルール化できる可能性のあるイベントや原因候補としてグループ化する。そして、グループごとに導出できるIF−THEN形式のルールを生成して管理システムのユーザに提示する。操作ログを蓄積している場合は、原因候補を提示した後でのユーザの障害回復操作をも、ルールに含めてもよい。
さらに、本実施例における管理サーバ30000は、上記グループ化処理によって作成した新ルールの表示を行う。この際、既に存在する既存ルールをベースに新ルールを作成した場合は、既存ルールからの距離を基に優先度を合わせて表示する。さらに、グループ化処理の際に操作ログを利用した場合は、新ルールに対してどのような手順で操作を実施したのかの手順を新ルールに含めて表示する。
なお、ルールを作成する際にイベントをどのようにグループ化するかについては、様々な方法が考えられる。本実施例では、一例として、イベントの共起関係を用いてグループ化を行っている。
障害解析においてユーザがイベントの発生状況を基に障害原因解析パターンをルール化する際の手順は、主に管理システム導入時に発生するため、ユーザにとって不慣れな作業である。本実施例によれば、これを自動化することにより、作業工数を減らし、人為的なオペレーションミスを減らすことができる。
実施例1では、計算機システムにおけるイベントの発生と管理ソフトウェアが障害原因を分析した結果を利用して、障害原因分析のための解析ルールを作成し、管理者に提示する。また、実施例2では、計算機システムにおけるイベントの発生状況のみを利用して、障害原因分析のための解析ルールを作成し、管理者に提示する。障害原因を自動分析するためには、管理ソフトウェア導入時に管理者は導入対象の計算機システムで発生しうるイベントとその原因とをあらかじめルール化しておく必要がある。実施例2によれば、ルール作成作業を自動化することができ、ユーザは作成されたルールを障害原因分析のためのルールとして利用して良いかどうかを選択するだけですむようになる。これにより、作業工数を減らし、人為的なオペレーションミスをも軽減でき、障害対応に要する負荷を軽減することができる。
なお、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
また、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はCD−RW、CD−R等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ(又はCPUやMPU)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
以上、実施例を説明したが、本発明は、この実施例に限定されるものでなく、その趣旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
10000…ホスト計算機、20000…ストレージ装置、30000…管理サーバ、35000…WEBブラウザ起動サーバ、40000…IPスイッチ、45000…通信ネットワーク

Claims (15)

  1. 複数の管理対象装置のいずれかで発生し得る1以上のイベントに対応した1以上の条件イベントと前記1以上の条件イベントが発生した場合に原因となる結論イベントとの関連付けを示す、記憶デバイス内の1以上のルールに基づいて、複数の管理対象装置のいずれかで発生したイベントの根本原因の解析を支援する方法であって、
    発生したイベントの内容及び発生日時を含むイベント発生履歴に基づいて、同一の原因によって発生していると推定される複数のイベントである第1のイベント群を決定し、
    前記第1のイベント群の複数のイベントを前記条件イベントとし、前記第1のイベント群の一のイベントを結論イベントとする新規ルールを作成し、
    前記作成した新規ルールを前記記憶デバイスに記憶する
    方法。
  2. 前記記憶デバイスは、前記複数の管理対象装置のいずれかで発生し得る1以上のイベントに対応した1以上の条件イベントと当該1以上の条件イベントが発生した場合に原因となる結論イベントとの関連付けを示す1以上の既存ルールと、根本原因の解析に利用された既存ルールを特定する情報を含む解析履歴と、を記憶しており、
    前記イベント発生履歴及び前記解析履歴に基づいて、前記根本原因の解析に利用された既存ルールについて、当該既存ルールの条件イベントが発生した場合に発生する可能性が高い、当該既存ルールの条件イベント以外の1以上のイベントである第2のイベント群を決定し、当該既存ルールの1以上の条件イベントのイベントと前記第2のイベント群のイベントとの組み合わせを前記第1のイベント群と決定する
    請求項1に記載の方法。
  3. 前記第1のイベント群の各イベントの発生元の管理対象装置が相互に接続関係を有している場合に、前記新規ルールを作成する
    請求項2に記載の方法。
  4. 前記新規ルールとして、前記根本原因に利用された前記既存ルールの結論イベントを結論イベントとする第1の新規ルールと、前記第2のイベント群の一のイベントを結論イベントとする第2の新規ルールとを作成する
    請求項3に記載の方法。
  5. 作成した前記新規ルールの内容を所定の表示装置に表示し、
    前記新規ルールを根本原因の解析に利用するか否かを示す入力をユーザから受け付け、
    前記新規ルールを根本原因の解析に利用する旨を示す入力を受け付けた場合に、以降において、作成した前記新規ルールを根本原因の解析に利用する
    請求項4に記載の方法。
  6. 表示した第3の新規ルールについて、根本原因の解析に利用しない旨を示す入力をユーザから受け付けた場合、前記第3の新規ルールについて根本原因の解析に利用しない旨を示す情報を前記記憶デバイスに記憶し、
    以降において新たに作成した第4の新規ルールが前記第3の新規ルールと同じである場合、前記第4の新規ルールの内容を前記所定の表示装置に表示させないようにする
    請求項5に記載の方法。
  7. 前記第1のイベント群の各イベントの発生元の管理対象装置が相互に接続関係を有している場合に、前記新規ルールを作成する
    請求項1に記載の方法。
  8. 作成した前記新規ルールの内容を所定の表示装置に表示し、
    前記新規ルールを根本原因の解析に利用するか否かを示す入力をユーザから受け付け、
    前記新規ルールを根本原因の解析に利用する旨を示す入力を受け付けた場合に、以降において、作成した前記新規ルールを根本原因の解析に利用する
    請求項7に記載の方法。
  9. 複数の管理対象装置のいずれかで発生し得る1以上のイベントに対応した1以上の条件イベントと前記1以上の条件イベントが発生した場合に原因となる結論イベントとの関連付けを示す、記憶デバイス内の1以上のルールに基づいて、複数の管理対象装置のいずれかで発生したイベントの根本原因の解析を支援するシステムであって、
    前記記憶デバイスと、
    前記記憶デバイスに接続された制御デバイスと
    を有し、
    前記記憶デバイスは、発生したイベントの内容及び発生日時を含むイベント発生履歴を記憶し、
    前記制御デバイスは、
    前記イベント発生履歴に基づいて、同一の原因によって発生していると推定される複数のイベントである第1のイベント群を決定し、
    前記第1のイベント群の複数のイベントを前記条件イベントとし、前記第1のイベント群の一のイベントを結論イベントとする新規ルールを作成する、
    システム。
  10. 前記記憶デバイスは、前記複数の管理対象装置のいずれかで発生し得る1以上のイベントに対応した1以上の条件イベントと当該1以上の条件イベントが発生した場合に原因となる結論イベントとの関連付けを示す1以上の既存ルールと、根本原因の解析に利用された既存ルールを特定する情報を含む解析履歴と、を記憶し、
    前記制御デバイスは、
    前記イベント発生履歴及び前記解析履歴に基づいて、前記根本原因の解析に利用された既存ルールについて、当該既存ルールの条件イベントが発生した場合に発生する可能性が高い、当該既存ルールの条件イベント以外の1以上のイベントである第2のイベント群を決定し、当該既存ルールの1以上の条件イベントのイベントと前記第2のイベント群のイベントとの組み合わせを前記第1のイベント群と決定する
    請求項9に記載のシステム。
  11. 前記制御デバイスは、
    前記第1のイベント群の各イベントの発生元の管理対象装置が相互に接続関係を有している場合に、前記新規ルールを作成する
    請求項10に記載のシステム。
  12. 前記制御デバイスは、
    前記新規ルールとして、前記根本原因に利用された前記既存ルールの結論イベントを結論イベントとする第1の新規ルールと、前記第2のイベント群の一のイベントを結論イベントとする第2の新規ルールとを作成する、
    請求項11に記載のシステム。
  13. 前記制御デバイスは、
    前記作成した新規ルールの内容を所定の表示装置に表示し、
    前記新規ルールを根本原因の解析に利用するか否かを示す入力をユーザから受け付け、
    前記新規ルールを根本原因の解析に利用する旨を示す入力を受け付けた場合に、以降において、作成した前記新規ルールを根本原因の解析に利用する
    請求項12に記載のシステム。
  14. 前記制御デバイスは、
    表示した第3の新規ルールについて、根本原因の解析に利用しない旨を示す入力をユーザから受け付けた場合、前記第3の新規ルールを根本原因の解析に利用しないことを示す情報を前記記憶デバイスに記憶し、
    以降において作成した第4の新規ルールが前記第3の新規ルールと同じである場合、前記第4の新規ルールの内容を表示させないようにする
    請求項13に記載のシステム。
  15. 前記制御デバイスは、
    前記第1のイベント群の各イベントの発生元の管理対象装置が相互に接続関係を有している場合に、前記新規ルールを作成する
    請求項9に記載のシステム。
JP2014505935A 2012-03-23 2012-03-23 イベントの根本原因の解析を支援する方法及びシステム Expired - Fee Related JP5684946B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/057548 WO2013140608A1 (ja) 2012-03-23 2012-03-23 イベントの根本原因の解析を支援する方法及びシステム

Publications (2)

Publication Number Publication Date
JP5684946B2 true JP5684946B2 (ja) 2015-03-18
JPWO2013140608A1 JPWO2013140608A1 (ja) 2015-08-03

Family

ID=49222102

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014505935A Expired - Fee Related JP5684946B2 (ja) 2012-03-23 2012-03-23 イベントの根本原因の解析を支援する方法及びシステム

Country Status (3)

Country Link
US (1) US9354961B2 (ja)
JP (1) JP5684946B2 (ja)
WO (1) WO2013140608A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017078067A1 (ja) * 2015-11-02 2017-05-11 株式会社東芝 要因解析装置、要因解析方法、及びプログラム

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9413685B1 (en) 2012-06-28 2016-08-09 Emc Corporation Method and apparatus for cross domain and cross-layer event correlation
US9298582B1 (en) 2012-06-28 2016-03-29 Emc Corporation Method and apparatus for performance data transformation in a cloud computing system
US9053000B1 (en) * 2012-09-27 2015-06-09 Emc Corporation Method and apparatus for event correlation based on causality equivalence
DE112013006475T5 (de) * 2013-11-29 2015-10-08 Hitachi, Ltd. Verwaltungssystem und Verfahren zur Unterstützung einer Analyse in Bezug auf eine Hauptursache eines Ereignisses
US9992090B2 (en) * 2014-01-08 2018-06-05 Bank Of America Corporation Data metrics analytics
WO2016125294A1 (ja) * 2015-02-06 2016-08-11 株式会社日立製作所 計算機システム、管理装置及び方法
CN106464541B (zh) * 2015-03-19 2019-09-20 华为技术有限公司 基于网络功能虚拟化的故障处理方法及设备
WO2017094820A1 (ja) 2015-12-02 2017-06-08 日本電気株式会社 支援装置、支援方法および記録媒体
WO2017110720A1 (ja) * 2015-12-25 2017-06-29 日本電気株式会社 ログ分析システム、ログ分析方法及びプログラムを格納した記録媒体
US10176034B2 (en) 2016-02-16 2019-01-08 International Business Machines Corporation Event relationship analysis in fault management
US10467083B2 (en) 2017-06-08 2019-11-05 International Business Machines Corporation Event relationship analysis in fault management
CN108009040B (zh) * 2017-12-12 2021-05-04 杭州时趣信息技术有限公司 一种确定故障根因的方法、***和计算机可读存储介质
US10977154B2 (en) * 2018-08-03 2021-04-13 Dynatrace Llc Method and system for automatic real-time causality analysis of end user impacting system anomalies using causality rules and topological understanding of the system to effectively filter relevant monitoring data
US11132356B2 (en) * 2018-08-31 2021-09-28 International Business Machines Corporation Optimizing data entries in a log
US11243835B1 (en) 2020-12-03 2022-02-08 International Business Machines Corporation Message-based problem diagnosis and root cause analysis
US11403326B2 (en) 2020-12-03 2022-08-02 International Business Machines Corporation Message-based event grouping for a computing operation
US11797538B2 (en) 2020-12-03 2023-10-24 International Business Machines Corporation Message correlation extraction for mainframe operation
US11599404B2 (en) 2020-12-03 2023-03-07 International Business Machines Corporation Correlation-based multi-source problem diagnosis
US11474892B2 (en) 2020-12-03 2022-10-18 International Business Machines Corporation Graph-based log sequence anomaly detection and problem diagnosis
US11995562B2 (en) 2020-12-03 2024-05-28 International Business Machines Corporation Integrating documentation knowledge with log mining for system diagnosis
US11513930B2 (en) 2020-12-03 2022-11-29 International Business Machines Corporation Log-based status modeling and problem diagnosis for distributed applications
JP7235346B2 (ja) * 2021-03-10 2023-03-08 Necプラットフォームズ株式会社 システム、および制御方法
WO2023047523A1 (ja) * 2021-09-24 2023-03-30 日本電信電話株式会社 ルール作成装置、ルール作成方法、およびルール作成プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010016239A1 (ja) * 2008-08-04 2010-02-11 日本電気株式会社 障害解析装置
JP2011209908A (ja) * 2010-03-29 2011-10-20 Hitachi Solutions Ltd 障害原因解析システムにおけるルール生成装置及びそのプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107185B1 (en) 1994-05-25 2006-09-12 Emc Corporation Apparatus and method for event correlation and problem reporting
US7631058B2 (en) * 2001-10-12 2009-12-08 International Business Machines Corporation Systems and methods for validation, completion and construction of event relationship networks
DE602004001356T2 (de) * 2003-03-17 2007-06-21 Tyco Telecommunications (Us) Inc. System und Verfahren zur Fehlerdiagnose mittels verteilter Alarmkorrelation
US7349826B2 (en) * 2006-05-23 2008-03-25 International Business Machines Corporation Causal ladder mechanism for proactive problem determination, avoidance and recovery
WO2008000290A1 (en) * 2006-06-30 2008-01-03 Telecom Italia S.P.A. Fault location in telecommunications networks using bayesian networks
US8484336B2 (en) * 2006-11-15 2013-07-09 Cisco Technology, Inc. Root cause analysis in a communication network
US8180718B2 (en) * 2008-01-14 2012-05-15 Hewlett-Packard Development Company, L.P. Engine for performing root cause and effect analysis
US7877636B2 (en) * 2008-08-28 2011-01-25 Honeywell International Inc. System and method for detecting temporal relationships uniquely associated with an underlying root cause
JP5237034B2 (ja) * 2008-09-30 2013-07-17 株式会社日立製作所 イベント情報取得外のit装置を対象とする根本原因解析方法、装置、プログラム。
US8166351B2 (en) * 2008-10-21 2012-04-24 At&T Intellectual Property I, L.P. Filtering redundant events based on a statistical correlation between events
JP2010191914A (ja) 2009-02-20 2010-09-02 Toshiba Corp 特徴パターン抽出装置、特徴パターン抽出方法、分類支援装置および分類支援方法
CN102473129B (zh) * 2009-07-16 2015-12-02 株式会社日立制作所 输出表示与故障的根本原因对应的恢复方法的信息的管理***
US9917741B2 (en) * 2009-08-27 2018-03-13 Entit Software Llc Method and system for processing network activity data
US8411577B2 (en) * 2010-03-19 2013-04-02 At&T Intellectual Property I, L.P. Methods, apparatus and articles of manufacture to perform root cause analysis for network events
US8429455B2 (en) * 2010-07-16 2013-04-23 Hitachi, Ltd. Computer system management method and management system
WO2012053104A1 (ja) * 2010-10-22 2012-04-26 株式会社日立製作所 管理システム、及び管理方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010016239A1 (ja) * 2008-08-04 2010-02-11 日本電気株式会社 障害解析装置
JP2011209908A (ja) * 2010-03-29 2011-10-20 Hitachi Solutions Ltd 障害原因解析システムにおけるルール生成装置及びそのプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6010027032; 工藤裕 外3名: '障害原因解析のためのルール記述方法とその実行方式' 電気学会情報システム研究会資料 Vol.IS-09, No.71-82, 20091211, p.1-6 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017078067A1 (ja) * 2015-11-02 2017-05-11 株式会社東芝 要因解析装置、要因解析方法、及びプログラム
JP2017090982A (ja) * 2015-11-02 2017-05-25 株式会社東芝 要因解析装置、要因解析方法、及びプログラム
CN108292380A (zh) * 2015-11-02 2018-07-17 株式会社东芝 要因分析装置、要因分析方法以及程序
CN108292380B (zh) * 2015-11-02 2023-04-18 株式会社东芝 要因分析装置、要因分析方法以及记录介质

Also Published As

Publication number Publication date
JPWO2013140608A1 (ja) 2015-08-03
US20140237297A1 (en) 2014-08-21
US9354961B2 (en) 2016-05-31
WO2013140608A1 (ja) 2013-09-26

Similar Documents

Publication Publication Date Title
JP5684946B2 (ja) イベントの根本原因の解析を支援する方法及びシステム
US9294338B2 (en) Management computer and method for root cause analysis
US9619314B2 (en) Management system and management program
US8819220B2 (en) Management method of computer system and management system
JP5432867B2 (ja) 計算機システムの管理方法、及び管理システム
US8812911B2 (en) Distributed testing of a software platform
EP2523115A1 (en) Operation management device, operation management method, and program storage medium
JP4598065B2 (ja) 監視シミュレーション装置,方法およびそのプログラム
US8429455B2 (en) Computer system management method and management system
JP5222876B2 (ja) 計算機システムにおけるシステム管理方法、及び管理システム
JP6009089B2 (ja) 計算機システムを管理する管理システム及びその管理方法
US20120317259A1 (en) Operation managing device and operation management method
JP6561212B2 (ja) 問合せ対応システム及び方法
US9021078B2 (en) Management method and management system
JP5419819B2 (ja) 計算機システムの管理方法、及び管理システム
WO2015019488A1 (ja) 管理システム及びその管理システムによるイベント解析方法
JP2019009726A (ja) 障害切り分け方法および管理サーバ
JP6926646B2 (ja) 事業者間一括サービス管理装置および事業者間一括サービス管理方法
JP2015172948A (ja) 根本原因を解析する管理計算機、方法及び計算機システム
JP2016206757A (ja) 分散処理プログラム、分散処理方法および情報処理装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150115

R150 Certificate of patent or registration of utility model

Ref document number: 5684946

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees