(57)【要約】【課題】最適な障害解析データを採取するために障害発生時点の状況を判断し、採取データを決定する障害解析データ採取装置およびその方法を得る。【解決手段】障害解析データ採取装置１００は、監視対象ノード１，２，３、ネットワーク５、監視対象リソース１０、障害監視手段１１、データ採取制御手段１２、データ採取手段１３ａ，１３ｂ，１３ｃ、採取対象特定手段１４、データ記録手段２３ａ，２３ｂ，２３ｃを備えて構成される。障害発生時の解析データの採取処理で、各プログラムが通常時から記録しておいた採取処理に関するログやトレースを保存するだけにとどまらず、障害解析に有効な詳細データを、発生時の状況に応じて動的に選択して追加採取することができる。これにより障害発生時の解析に必要なデータが揃いやすく、障害解析の迅速化を可能とする【選択図】        図１
2005004513.tif 000002
【特許請求の範囲】
【請求項１】
分散コンピュータシステムで構成された障害解析データ採取装置において、
障害の発生を監視し検知する障害監視手段と、
障害発生時点の状況を調査し、採取すべきノードと障害解析データを特定する採取対象特定手段と、
前記障害解析データを採取するデータ採取手段と、
前記障害解析データの採取処理を制御するデータ採取制御手段と
を備えることを特徴とする障害解析データ採取装置。
【請求項２】
複数のノード間の情報交換をするためのノード間連携手段を設けたことを特徴とする請求項１記載の障害解析データ採取装置。
【請求項３】
自ノードのコネクション状況を調査するコネクション状況調査手段を設けたことを特徴とする請求項２記載の障害解析データ採取装置。
【請求項４】
分散システム内にネットワーク全体のコネクション状況を監視するコネクション状況モニタ手段を設けたことを特徴とする請求項２記載の障害解析データ採取装置。
【請求項５】
あるべきコネクション状態を登録するコネクション状態登録手段を設けたことを特徴とする請求項４記載の障害解析データ採取装置。
【請求項６】
ネットワーク全体のトラフィックを監視するトラフィックモニタ手段を設けたことを特徴とする請求項２記載の障害解析データ採取装置。
【請求項７】
夫々のノードで発生した処理履歴を記録する処理フローモニタ手段を設けたことを特徴とする請求項２記載の障害解析データ採取装置。
【請求項８】
分散コンピュータシステムにより障害解析データを採取する障害解析データ採取方法において、障害の発生を監視および検知し、障害発生時点の状況を調査して、採取すべきノードと障害解析データを判断し、さらに前記障害解析データを採取すると共に、当該障害解析データの採取処理を行うことを特徴とする障害解析データ採取方法。
【請求項９】
複数のノード間で情報の交換を行うことを特徴とする請求項８記載の障害解析データ採取方法。
【請求項１０】
自ノードのコネクション状況を調査することを特徴とする請求項８記載の障害解析データ採取方法。
【請求項１１】
ネットワーク全体のコネクション状況を監視することを特徴とする請求項８記載の障害解析データ採取方法。
【請求項１２】
さらに、あるべきコネクション状態を登録することを特徴とする請求項１１記載の障害解析データ採取方法。
【請求項１３】
ネットワーク全体のトラフィックを監視することを特徴とする請求項８記載の障害解析データ採取方法。
【請求項１４】
夫々のノードで発生した処理履歴を記録することを特徴とする請求項８記載の障害解析データ採取方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コンピュータシステムの障害解析用データ採取装置およびその方法に関するものである。
【０００２】
【従来の技術】
従来の障害解析用データ採取装置として、クライアント側ワークステーションとサーバ側ワークステーションとがネットワークを介して接続されていて、クライアント側ワークステーションには、アプリケーションプログラム、通信管理プログラム、アプリケーションプログラムの関連プログラム名称をテーブル化した関連プログラム一覧テーブル、保守情報管理部、メッセージ通信エリア、管理テーブル等が備わるものがある。関連プログラム一覧テーブルと管理テーブルはシステム導入時に作成されるものであり、関連プログラム一覧テーブルには、サーバアクセス時に関連するクライアントの通信管理プログラムとサーバの通信管理プログラムおよびアプリケーションプログラムが登録されている。また、サーバ側ワークステーションにもシステム導入時に、管理テーブルを作成しておくものである。
【０００３】
上述したような装置でクライアント側ワークステーションからサーバ側ワークステーションにアクセスをして障害が発生した場合、自身の保守情報取得停止を行い、それまでメモリに記録していた情報をディスクに書き込む。続いて、関連プログラム一覧テーブルを参照し、クライアント側ワークステーションおよびサーバ側ワークステーション上の関連プログラムを特定し、保守情報管理部およびメッセージ通信エリアを経由して、それぞれのプログラムの保守情報取得停止を行う。この処理により、障害が発生したプログラムだけでなく、関連するクライアント側ワークステーションおよびサーバ側ワークステーション上のプログラムの保守情報取得停止を実施し、採取してきた保守情報をディスクに記録するものである（例えば、特許文献１参照）。
【０００４】
【特許文献１】
特開平６−２６６６８６号公報
【０００５】
【発明が解決しようとする課題】
従来の障害解析データ採取装置では、ディスクに記録した保守情報は、各プログラムがメモリ上に記憶していた情報に関しているだけであり、障害原因究明のためには障害発生時、または、障害発生時前後の、より詳しい障害情報を追加採取することが望まれるが採取する機能を備えてはいない。また、追加情報が必要ないように通常時から詳細情報を採取しようとすると、コンピュータの処理やメモリあるいはディスク等のリソースに過大な負荷をかけてしまうという問題がある。
【０００６】
また、障害情報を採取する対象をテーブルに登録できるが固定的であり、障害発生時の状況から判断して取得する保守情報を追加したり削除したり採取内容を変更したりすることができない。さらに関係するプログラムを固定的に登録し、障害発生時は常に、登録されたプログラムのみから、或いは登録されたプログラムの全てから保守情報を取得するのでは、最適な保守情報を得ることは困難である。
【０００７】
この発明は上記のような課題を解決するためになされたもので、障害発生時に、障害解析データ（保守情報）を追加で採取する方法、および最適な障害解析データを採取するために、障害発生時点の状況を判断し、採取データを決定する障害解析データ採取装置およびその方法を得ることを目的とする。
【０００８】
【課題を解決するための手段】
この発明に係る障害解析データ採取装置は、分散コンピュータシステムで構成された障害解析データ採取装置において、障害の発生を監視し検知する障害監視手段と、障害発生時点の状況を調査し、採取すべきノードと障害解析データを特定する採取対象特定手段と、障害解析データを採取するデータ採取手段と、障害解析データの採取処理を制御するデータ採取制御手段とを備えるものである。
【０００９】
この発明に係る障害解析データ採取方法は、分散コンピュータシステムにより障害解析データを採取する障害解析データ採取方法において、障害の発生を監視および検知し、障害発生時点の状況を調査して、採取すべきノードと障害解析データを判断し、さらに障害解析データを採取すると共に、障害解析データの採取処理を行うものである。
【００１０】
【発明の実施の形態】
以下、この発明の実施の一形態について説明する。
実施の形態１．
この発明に係る実施の形態１について図１を参照して説明する。なお、図１は実施の形態１に係る障害解析データ採取装置１００の構成を示すブロック図である。
【００１１】
障害解析データ採取装置１００は、監視対象ノード１，２，３と、ネットワーク５と、監視対象リソース１０と、障害監視手段１１と、データ採取制御手段１２と、データ採取手段１３ａ，１３ｂ，１３ｃと、採取対象特定手段１４と、データ記録手段２３ａ，２３ｂ，２３ｃとを備えて構成される。
尚、監視対象ノードは３つに限ることはなく、さらに多数のノードがネットワークに接続されていてもよいものである。
【００１２】
監視対象ノード１，２，３は、分散コンピュータシステム内のサーバやネットワーク機器等の監視対象となるノードであり、ネットワーク５は分散している夫々の監視対象ノード１，２，３を接続する。監視対象リソース１０は監視対象ノード内のメモリ、プロセッサ、プログラムおよびディスク等の監視対象となるリソースであり、障害監視手段１１は監視対象の障害、異常を監視、検知する。
【００１３】
データ採取制御手段１２は、データ採取手段１３ａ，１３ｂ，１３ｃと採取対象特定手段１４を利用して障害解析データを収集する処理の制御を行う。データ採取手段１３ａ，１３ｂ，１３ｃは、新たに詳細な障害解析データを採取し、また採取対象特定手段１４は、現在のシステム状況等を調査し、障害解析データとして、どこからどのような障害解析データを採取すべきかを判断する。データ記録手段２３ａ，２３ｂ，２３ｃは過去の障害情報を含めて記録されていて、データ採取手段１３ａ，１３ｂ，１３ｃにより記録され、また、必要な情報が読み出される。
【００１４】
次に障害解析データ採取装置１００の動作について説明する。
障害監視手段１１は、障害発生を監視し（図１の▲１▼の処理）、検知した場合その内容をデータ採取制御手段１２に通知する（図１の▲２▼の処理）。データ採取制御手段１２は採取対象特定手段１４に問い合わせを行い、現在のシステム状況から、どのノードからどのような障害解析データを採取するべきかの情報を得る（図１の▲３▼の処理）。
【００１５】
データ採取制御手段１２は採取対象特定手段１４から得た情報をもとに、複数あるデータ採取手段１３ａ，１３ｂ，１３ｃの中からデータ記録手段２３ａ，２３ｂ，２３ｃに記録されている情報に基づき、必要な手段を選び（たとえば１３ａと１３ｃを選び）、さらにそれぞれの手段に対して、データ採取範囲を限定するような付加情報を付与して、障害解析データ採取処理を行う（図１の▲４▼の処理）。
【００１６】
以上説明したように、障害発生時の解析データの採取処理において、各プログラムが通常時から記録しておいたログやトレースを保存するだけにとどまらず、障害解析に有効な詳細データを、発生時の状況に応じて選択し、追加採取することができる。これにより障害発生時の解析に必要なデータが揃いやすく、障害解析の迅速化を可能とするものである。
【００１７】
実施の形態２．
この発明に係る実施の形態２について図２を参照して説明する。なお、図２は実施の形態２に係る障害解析データ採取装置２００の構成を示すブロック図である。
【００１８】
障害解析データ採取装置２００の構成は、上述した実施の形態１の障害解析データ採取装置１００に、分散システム内の他のノードの障害解析データも採取できるよう、ノード間連携手段１５を追加した構成である。その他の構成要素とそれらの動作は実施の形態１で説明したことと同様であり、ここでの説明は省略する。
【００１９】
障害解析情報は、障害発生ノード内からのみの採取では不十分な場合があり、他ノードからの採取が望まれる場合がある。これに備え、ノード間連携手段１５は、他ノードへのデータ採取要求を行うとともに、他からのデータ採取要求に応え、データ採取制御手段１２を介して、データ採取手段１３ａ，１３ｂ，１３ｃを利用して障害解析データを採取する。図２の中の監視対象ノード２および監視対象ノード３の内部構成は監視対象ノード１と同様であり、互いに連携することができる（図２の▲５▼および▲６▼の処理）。また、連携方式は特に限定はなく、ノード間で直接連携する方式でも、マネージャ機能等の全体の連携を制御する機能を介して要求することでもよい。特にクライアントサーバ形式に限定するものではない。
【００２０】
実施の形態３．
この発明に係る実施の形態３について図３および図４を参照して説明する。なお、図３は実施の形態３に係る障害解析データ採取装置３００の構成を示すブロック図であり、図４は障害解析データ採取装置３００のコネクション情報を示すテーブルである。
【００２１】
障害解析データ採取装置３００の構成は、上述した実施の形態２の障害解析データ採取装置２００に、採取対象特定のために、自ノードのネットワークコネクション状態を調査する、コネクション状況調査手段１６を加えた構成である。その他の構成要素とその動作は実施の形態１および実施の形態２で説明したことと同様であり、ここでの説明は省略する。
【００２２】
分散システムで発生する障害は、通信相手、あるいは通信相手との通信処理過程に原因が存在する場合があり、発生時のコネクション状況から、実施の形態３において備えたコネクション状況調査手段１６により、関連があると思われるノードを推測し、障害解析データを採取しておくことが可能となる。
【００２３】
図４に示すようにコネクション情報は、例えばプロトコルの種類、自ノードのポート番号、通信状態、相手ノードの番号、相手ポートの番号があり、所定の条件下で採取判断がなされる。採取対象特定手段１４では、コネクション状況調査手段１６に要求し取得した障害発生時のコネクション状態の情報と、予め決めておく障害データ採取を行うコネクションを特定する条件とを利用して、障害解析データ対象を特定する。条件として例えば「接続状態のｔｃｐプロトコルのコネクションで、自ノード、相手ノードともポート番号が１０００番以上」であれば、自ノードのポート番号が２０００番と１５００番の場合が選択される。このようにして障害解析に有効なデータを採取することが可能となる。
【００２４】
実施の形態４．
この発明に係る実施の形態４について図５を参照して説明する。なお、図５は実施の形態４に係る障害解析データ採取装置４００の構成を示すブロック図である。
【００２５】
障害解析データ採取装置４００の構成は、上述した実施の形態２である障害解析データ採取装置２００に、採取対象特定のために、分散システム全体のネットワークコネクション状態を記録するコネクション状況モニタ手段１７を加えた構成である。その他の構成要素とその動作は実施の形態１、および実施の形態２で説明したことと同様であり、ここでの説明は省略する。
【００２６】
コネクション状況モニタ手段１７は、専らネットワークのコネクション状態を監視し、他の機能を有さない手段であり、刻々と変化するネットワーク状況を詳細にモニタし続けることができる。実施の形態３では障害発生時直後のネットワークコネクション情報を活用する方式であったが、実施の形態４では障害発生時、或いはその前後の情報をも活用する方式であり、より効果的である。また、障害が発生したノード自身で採取できる状況の情報だけでなく、外部の装置から客観的に情報が採取され、抜けや認識誤りも発生しにくく、情報としてより正確になる。
【００２７】
また、採取データ内容は実施の形態３と同様であるが、タイミングとして障害発生時および、その前後の情報を扱えることで、必要な採取データの選定の正確性が増大する。
【００２８】
実施の形態５．
この発明に係る実施の形態５について図６および図７を参照して説明する。なお、図６は実施の形態５に係る障害解析データ採取装置５００の構成を示すブロック図であり、図７は障害解析データ採取装置５００のコネクション情報を示すテーブルである。
【００２９】
障害解析データ採取装置５００の構成は、上述した実施の形態４である障害解析データ採取装置４００に、あるべきコネクション状態を登録するコネクション状態登録手段１８を加えた構成である。その他の構成要素とその動作は実施の形態１、実施の形態２、および実施の形態４で説明したことと同様であり、ここでの説明は省略する。
【００３０】
コネクション状態登録手段１８は、そのノードでの正常時にあるべきネットワークコネクションの状態を登録しておくことができる手段である。障害発生時にコネクション状況モニタ手段１７から得たコネクション状態の情報と、コネクション状態登録手段１８に登録してある、あるべきコネクション状態に相違がある場合に、その相違に関連する部分に障害の原因や、障害原因を特定するための情報がある確率が高いと考えられ、関連する部分から、より詳細の障害解析データを採取する判断ができることになる。
【００３１】
図７は、コネクション状況モニタ手段１７で採取した障害発生時の情報〔図７（ａ）〕と、コネクション状態登録手段１８に登録しておいたあるべきネットワークコネクション状態の情報〔図７（ｂ）〕の例である。これら情報の比較から、自ポート２０００とのコネクションが存在するはずであるにも関わらず不在になっているノード３からの障害解析情報の採取が望まれることが判断できる。
【００３２】
障害発生ノード上では正常時に、どのようなコネクションが確立されているべきかの情報を登録することができ、障害が発生した時点の実際のコネクション状況と比較し、相違部分があれば、その相違に関係するノードから詳細の障害解析データを追加採取することで、より有効な障害解析データの採取が可能となる。
【００３３】
実施形態６．
この発明に係る実施の形態６について図８を参照して説明する。なお、図８は実施の形態６に係る障害解析データ採取装置６００の構成を示すブロック図である。
【００３４】
障害解析データ採取装置６００の構成は、上述した実施の形態２である障害解析データ採取装置２００に、採取対象特定のために、分散システム全体のネットワークトラフィック状態を記録するトラフィック状況モニタ手段１９を加えた構成である。その他の構成要素とその動作は実施の形態１、および実施の形態２で説明したことと同様であり、ここでの説明は省略する。
【００３５】
トラフィックモニタ手段１９は、専らネットワークのトラフィック監視のみを行う手段であり、刻々と変化するネットワーク状況を詳細にモニタし続けることができる。障害はネットワークトラフィック異常に起因して発生している場合もあり、障害発生時に、あらかじめ規定した異常と判断するトラフィック量を超えるトラフィックを検出していた場合に、その異常トラフィックに関わるノードからの詳細な障害解析情報を追加で採取することが可能となる。例えば、ノード２とノード３の間で異常トラフィックが発生していた場合、ノード２とノード３とその中継経路上のネットワーク装置から障害解析情報を採取する。
【００３６】
分散システムで発生する障害は、ネットワーク上のトラフィック異常により発生することもあり、分散システム内にネットワークのトラフィックをモニタする手段を設け、トラフィック情報を蓄積し、障害発生時には、該当ノードからの問い合わせにより、その情報を提供することができるので、異常ネットワークトラフィックに関係しているノードから、詳細障害解析データを追加採取することで有効な情報を採取できる。
【００３７】
実施の形態７．
この発明に係る実施の形態７について図９および図１０を参照して説明する。なお、図９は実施の形態７に係る障害解析データ採取装置７００の構成を示すブロック図であり、図１０は障害解析データ採取装置７００の処理履歴を示すテーブルである。
【００３８】
障害解析データ採取装置７００の構成は、上述した実施の形態２である障害解析データ採取装置２００に、採取対象特定のために処理フローモニタ手段２０を加えた構成である。その他の構成要素とその動作は実施の形態１および実施の形態２で説明したことと同様であり、ここでの説明は省略する。
【００３９】
分散システム上の処理は、ワークフロー処理や、ジョブ制御機能により、複数のノードを渡り処理が進むものがある。処理は必ずしも同じ経路をたどらず、処理内容等により、経路が異なったり、省略されたりするため、固定的ではない。このような処理の場合、障害が発生したノードではなく、それ以前の処理を行ったノードに問題があったことも予測される。これに備えた障害解析データを採取するために、該当処理がどのような処理履歴をたどったかをモニタする手段を加え、関連したノードやプログラムを特定することができる。
【００４０】
図１０に示すように処理フローモニタ手段２０が記録した処理履歴のデータとして、例えば処理ＩＤ、実施順、処理ノード、処理プログラム、開始日時、終了日時等が記録されている。データは一覧の処理に付与される処理ＩＤ毎に、その処理の履歴として記録される。ある処理（ＩＤ＝Ｘ１１）がノード１で障害になり、処理停止になった場合、処理フローモニタ手段２０に問い合わせを行うと、過去の処理履歴を得ることができる。このデータを元に過去に経由してきた処理ノードのそれぞれのプログラムに関する障害解析データを追加採取することが可能となる。
【００４１】
【発明の効果】
以上のように、この発明によれば、障害発生時の解析データの採取処理において、各プログラムが通常時から記録しておいた採取処理に関するログやトレースを保存するだけにとどまらず、障害解析に有効な詳細データを、発生時の状況に応じて、動的に選択して追加採取することができる。これにより障害発生時の解析に必要なデータが揃いやすく、障害解析の迅速化を可能とする効果がある。
【図面の簡単な説明】
【図１】この発明の実施の形態１に係る障害解析データ採取装置の構成を示すブロック図である。
【図２】この発明の実施の形態２に係る障害解析データ採取装置の構成を示すブロック図である。
【図３】この発明の実施の形態３に係る障害解析データ採取装置の構成を示すブロック図である。
【図４】実施の形態３を説明するためのコネクション情報を示すテーブルである。
【図５】この発明の実施の形態４に係る障害解析データ採取装置の構成を示すブロック図である。
【図６】この発明の実施の形態５に係る障害解析データ採取装置の構成を示すブロック図である。
【図７】実施の形態５を説明するためのコネクション情報を示すテーブルである。
【図８】この発明の実施の形態６に係る障害解析データ採取装置の構成を示すブロック図である。
【図９】この発明の実施の形態７に係る障害解析データ採取装置の構成を示すブロック図である。
【図１０】実施の形態７を説明するための処理履歴を示すテーブルである。
【符号の説明】
１，２，３  監視対象ノード、５  ネットワーク、１０  監視対象リソース、１１  障害監視手段、１２  データ採取制御手段、１３ａ，１３ｂ，１３ｃ  データ採取手段、１４  採取対象特定手段、１５  ノード間連携手段、１６  コネクション状況調査手段、１７  コネクション状況モニタ手段、１８  コネクション状態登録手段、１９  トラフィックモニタ手段、２０  処理フローモニタ手段、２３ａ，２３ｂ，２３ｃ  データ記録手段。
【図１】
2005004513.tif 000003
【図２】
2005004513.tif 000004
【図３】
2005004513.tif 000005
【図４】
2005004513.tif 000006
【図５】
2005004513.tif 000007
【図６】
2005004513.tif 000008
【図７】
2005004513.tif 000009
【図８】
2005004513.tif 000010
【図９】
2005004513.tif 000011
【図１０】
2005004513.tif 000012