(57)【要約】【課題】膨大な種類のサービス監視エージェントを手動で管理し、監視対象機器にインストールすることは、監視者にとって大きな負担であった。【解決手段】サービス監視エージェントが監視対象機器上で稼動するサービスの稼動情報を監視するサービス監視システムにおいて、サービス監視エージェントは、サービス監視エージェントが正確に監視対象機器上で稼動するサービスの稼動情報を収集できるかどうか判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部を備えており、上記適合性検査部を利用してサービス監視エージェントをインストールもしくはアップデートするかどうか決定する。【選択図】図３
2010257083.tif 000002
【特許請求の範囲】
【請求項１】
サービス監視エージェントが、監視対象機器上で稼動するサービスの稼動情報を、監視するサービス監視システムにおける監視対象機器へのサービス監視エージェントのインストール方法において、
上記サービス監視エージェントは、上記サービス監視エージェントが正確に監視対象機器上で稼動するサービスの稼動情報を、収集できるかどうか判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部とを備えており、
上記適合性検査部を利用して、上記サービス監視エージェントをインストールするかどうか決定することを特徴とするサービス監視エージェントのインストール方法。
【請求項２】
サービス監視エージェントが、監視対象機器上で稼動するサービスの稼動情報を、監視するサービス監視システムにおけるサービス監視エージェントのアップデート方法において、
上記サービス監視エージェントは、上記サービス監視エージェントが正確に監視対象機器上で稼動するサービスの稼動情報を、収集できるかどうか判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部を備えており、
上記適合性検査部を利用して、上記サービス監視エージェントをアップデートするかどうか決定することを特徴とするサービス監視エージェントのアップデート方法。
【請求項３】
請求項１に記載のサービス監視エージェントのインストール方法において、
上記サービス監視エージェントが監視サーバに保持され、上記サービス監視エージェントが監視対象機器に対して適合性検査を実施する場合、サービス監視エージェントに付随して適合性検査部を上記監視サーバから監視対象機器へ送信して上記監視対象機器上で適合性検査を実施することを特徴とする監視対象機器へのサービス監視エージェントのインストール方法。
【請求項４】
請求項１に記載のサービス監視エージェントのインストール方法において、
上記サービス監視エージェントが監視サーバに保持され、上記サービス監視エージェントが監視対象機器に対して適合性検査を実施する場合、サービス監視部を含むサービス監視エージェントと適合性検査部を分離し、サービス監視部を含むサービス監視エージェントを監視対象機器に送信し、送信した上記サービス監視エージェントに対応する上記適合性検査部は、監視サーバ上で適合性検査を実施することを特徴とする監視対象機器へのサービス監視エージェントのインストール方法。
【請求項５】
請求項３に記載のサービス監視エージェントのインストール方法において、
上記適合性検査の際に、監視対象機器上で稼動するサービスプログラムのディレクトリ構造を、上記適合性検査部が保持するディレクトリ構造と比較し、ディレクトリ構造が合致したときにインストールが可能と、判断することを特徴とするサービス監視エージェントのインストール方法。
【請求項６】
請求項３に記載のサービス監視エージェントのインストール方法において、
上記適合性検査の際に、監視対象機器上で稼動するサービスの実行ファイルのチェックサム値を、上記適合性検査部が保持するチェックサム値と比較し、値が合致したときにインストールが可能と、判断することを特徴とするサービス監視エージェントのインストール方法。
【請求項７】
請求項３に記載のサービス監視エージェントのインストール方法において、
上記適合性検査の際に、監視対象機器上で稼動するサービスのバージョン番号を、上記適合性検査部が保持するサービスのバージョン番号一覧と比較し、バージョン番号が合致したときにインストールが可能と、判断することを特徴とするサービス監視エージェントのインストール方法。
【請求項８】
請求項３に記載のサービス監視エージェントのインストール方法において、
上記適合性検査の際に、監視対象機器上で稼動するサービスが出力するログのフォーマットを、上記適合性検査部が保持するログフォーマットと比較し、ログフォーマットが合致したときにインストールが可能と、判断することを特徴とするサービス監視エージェントのインストール方法。
【請求項９】
サービス監視エージェントが、監視対象機器上で稼動するサービスの稼動情報を監視するサービス監視システムの監視サーバにおいて、
上記サービス監視エージェントは、上記サービス監視エージェントが正確に監視対象機器上で稼動するサービスの稼動情報を収集できるかどうかを判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部とを備えており、
上記適合性検査部を利用してサービス監視エージェントをインストールするかどうか決定することを特徴とする監視サーバ。
【請求項１０】
サービス監視エージェントが、監視対象機器上で稼動するサービスの稼動情報を監視するサービス監視システムにおいて、
上記サービス監視エージェントは、上記サービス監視エージェントが正確に監視対象機器上で稼動するサービスの稼動情報を収集できるかどうかを判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部とを備えており、
上記適合性検査部を利用してサービス監視エージェントをインストールするかどうか決定することを特徴とするサービス監視システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスが提供されているネットワークに接続されている計算機において、サービスが正常に作動しているかどうかを監視するサービス監視方法に関する。
【背景技術】
【０００２】
昨今のインターネット、イントラネットでは利用者にとって、サーバにより提供されるサービスが、停止することなく２４時間安定して提供されることは当然のこととなっている。しかし、実際にはサービスは不安定なものであるため、サービスの状態を定常的に確認し、サービスの異常を早急に察知して対処することが必要不可欠となっている。
【０００３】
サービスの状態は、ログを解析することで確認することができる。例えば、特許文献１では、監視対象のサービスが稼動する機器上に、サービスが出力するログを収集・解析する監視スクリプトを置き、サービスの状態を確認している。この方法では、サービス監視者が監視スクリプトを変更することにより様々なサービスの種類やバージョンに対応することが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−４７９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、ログの解析方法がサービスごとに異なるため、複数の監視スクリプトを用意しているが、ログの収集・解析方法はサービスの種類だけでなく、バージョンの違いによっても異なるため、監視スクリプトの種類は膨大なものとなり、そのため、サービス監視エージェントを手動で管理することは、サービス監視者にとって大きな負担であった。
【０００６】
また、従来の監視方法では監視したいサービスのバージョン情報を自動的に知る手段がなかったため、サービス監視者が監視したいサービスのバージョンを手動で確認する必要があり、サービス監視者の負担が大きいという問題があった。
【０００７】
さらに、大規模なネットワークでは、システム構築者とサービス監視者が異なる場合が多いため、システム構築者がサービスのバージョンアップをする毎に、サービス監視者がサービス監視エージェントを手動で更新する必要があり、サービス監視者にとって大きな負担であった。
【０００８】
また、サービスの状態監視は、ログの監視だけでは十分でなく、サービスが使用するプロセスの稼動情報（使用ＣＰＵ、使用メモリ、稼働時間）や使用ディスク量など、ログ情報からは分からない各種情報も監視する必要があった。
【０００９】
さらに、例えば、異なるベンタのＷｅｂサーバａ、ｂを混在して運用している場合、サービス監視者がどちらのベンダのＷｅｂサーバか確認してから、サービス監視エージェントをインストールする必要があった。
【課題を解決するための手段】
【００１０】
本発明では、サービス監視エージェントが、監視対象機器上で稼動するサービスの稼動情報を監視するサービス監視対象システムにおいて、監視するサービス監視エージェントは、サービス監視エージェントが正確に監視対象機器上で、稼動するサービスの稼動情報を収集できるかどうか判定する適合性検査部と、監視対象機器上で稼動するサービスの稼動情報を収集するサービス監視部とを備えており、上記適合性検査部を利用して、サービス監視エージェントをインストールもしくはアップデートするかどうか決定する。
【００１１】
上記に加え、本発明では、監視サーバに保持されるサービス監視エージェントが監視対象機器に対して適合性検査を実施する場合、サービス監視エージェントを監視サーバから監視対象機器へ送信し、上記監視対象機器上で上記サービス監視エージェントが備える適合性検査部によって適合性検査を実施する。
【００１２】
さらに、本発明の別の形態では、監視サーバに保持されるサービス監視エージェントが監視対象機器に対して適合性検査を実施する場合、サービス監視部を含むサービス監視エージェントと、適合性検査部を分離し、サービス監視部を含むサービス監視エージェントを、監視対象機器に送信して、上記サービス監視エージェントに対応する上記適合性検査部は、監視サーバ上から適合性検査を実施する。
【００１３】
本発明では、適合性検査部は監視対象機器上で稼動するサービスプログラムのディレクトリ構造を、適合性検査部が保持するディレクトリ構造と比較し、ディレクトリ構造が合致したときにインストールが可能と判断する。
【００１４】
また、本発明では、適合性検査部は監視対象機器上で稼動するサービスの実行ファイルのチェックサム値を、適合性検査部が保持するチェックサム値と比較し、値が合致したときにインストールが可能と判断する。
【００１５】
さらに、本発明では、適合性検査部は監視対象機器上で稼動するサービスのバージョン番号を、上記適合性検査部が保持するサービスのバージョン番号一覧と比較して、バージョン番号が合致したときにインストールが可能と判断する。
【００１６】
さらに、本発明では、適合性検査部は監視対象機器上で稼動するサービスが出力するログのフォーマットを、適合性検査部が保持するログフォーマットと比較し、ログフォーマットが合致したときにインストールが可能と判断する。
【発明の効果】
【００１７】
本発明によれば、サービスのバージョンの違いによって発生する膨大な種類の監視スクリプトを自動で管理することができる。具体的には、サービスのバージョンをサービス監視者が意識することなく、サービスのバージョンにあったサービス監視エージェントを自動でインストールすることができるため、サービス監視者の負担を軽減できるという利点がある。
【００１８】
さらに、サービスのバージョンアップに伴うサービス監視エージェントのアップデートを自動で実行できるため、サービス監視者の負担を軽減でき、また、収集する稼動情報をサービスの種類に応じて容易に変更することができるため、サービスの監視に必要な情報だけを容易に収集することができるという利点がある。
【図面の簡単な説明】
【００１９】
【図１】図１は、本発明の実施例１のサービス監視システムの構成図である。
【図２】図２は、本発明のコンピュータのハードウェア構成図である。
【図３】図３は、本発明の実施例１のソフトウェア構成図である。
【図４】図４は、監視対象機器にインストール済みのエージェント管理テーブルである。
【図５】図５は、サービスに対応するサービス監視エージェント管理テーブルである。
【図６】図６は、本発明の実施例１のインストール方法を説明したフローチャートである。
【図７】図７は、本発明の実施例１のインストール方法を説明したシーケンス図である。
【図８】図８は、更新された監視対象機器にインストール済みのエージェント管理テーブルである。
【図９】図９は、本発明の実施例１のアップデート方法を説明したフローチャートである。
【図１０】図１０は、本発明の実施例１のアップデート方法を説明したシーケンス図である。
【図１１】図１１は、本発明の実施例２のサービス監視システムの構成図である。
【図１２】図１２は、本発明の実施例２のソフトウェア構成図である。
【図１３】図１３は、サービス監視エージェントとそれに対応する適合性検査部を管理するテーブルである。
【図１４】図１４は、本発明の実施例２のインストール方法を説明したフローチャートである。
【図１５】図１５は、本発明の実施例２のインストール方法を説明したシーケンス図である。
【図１６】図１６は、本発明の実施例２のアップデート方法を説明したフローチャートである。
【図１７】図１７は、本発明の実施例２のアップデート方法を説明したシーケンス図である。
【図１８】図１８は、本発明の実施例３の遠隔監視センターを追加したシステム構成図である。
【図１９】図１９は、本発明の実施例４の遠隔監視サーバと中継サーバを備えたサービス監視システムの構成図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態について、図面を用いて説明する。
【実施例１】
【００２１】
［構成］
以下、図面を用いて本発明の実施例について説明する。図１は本発明の実施例１に係わるサービス監視システムの構成を示す図である。サービス監視システムは、監視サーバ１００と複数の監視対象機器２００、３００、４００がＬＡＮ５０によって接続されたネットワークシステムからなる。
【００２２】
監視サーバ１００と各監視対象機器２００、３００、４００はサービスを監視するためのサービス監視エージェント１０を備えており、各監視対象機器のサービス監視エージェント１０は、サービス監視エージェント１０が監視したいサービスに対して正確に稼動情報を収集できるかどうかを判定する適合性検査部１１と監視したいサービスに応じた稼働情報を収集するサービス監視部１２を備えている。
【００２３】
図２は監視サーバ１００と各監視対象機器２００、３００、４００のハードウェア構成を示す図である。コンピュータ１は互いに接続関係にあるＣＰＵ２とメモリ３、ＨＤＤ４、ＲＯＭ５、ネットワークカード６、入出力Ｉ／Ｆ７から構成されており、ネットワークカード６を通じてＬＡＮ５０に接続されている。ユーザインタフェースであるディスプレイ８、キーボード９、マウス１０は入出力Ｉ／Ｆ７を通じてコンピュータ内部に接続されている。ＨＤＤ４あるいはＲＯＭ５に格納されたサービスを監視するためのプログラムがメモリ３に読み出されＣＰＵ２により監視プログラムを実行する。
【００２４】
図３は、本発明の実施例１のネットワークサービス監視システムのソフトウェア構成を示す図である。監視サーバ１００は、エージェント管理部１１０、エージェントリポジトリ１３０、ポートスキャナー１６０、収集データ１４０から構成されており、これらは互いに連携して動作する。
【００２５】
エージェントリポジトリ１３０にはサービスａを監視するためのサービス監視エージェントα１０、α２０及び、サービスｂを監視するためのサービス監視エージェントβ１０、β２０などが保存されている。監視対象機器２００は、ＯＳ２２０、サービスａ、サービスａの稼動ログａ１、サービスｂ、ＯＳ２２０が出力するＳｙｓログ２５０から構成されている。
【００２６】
また、ＯＳ２２０の各種稼動情報、サービスｂの稼動情報は、それぞれ稼動情報収集コマンド群ｃｃ１、稼動情報収集コマンド群ｂ２によって収集可能である。監視対象機器２００には、更に、エージェント管理部２１０、サービス監視エージェントα１０、β２０がインストールされており、これらは監視対象機器２００上で動作するサービスａ、ｂを監視する。
【００２７】
監視サーバ１００上で動作するエージェント管理部１１０は、監視対象機器２００上で動作するエージェント管理部２１０と互いに連携しており、通信することができる。α１０、α２０、β１０、β２０などの各サービス監視エージェントは、監視対象機器上で稼動するサービスを監視するサービス監視エージェントであり、それぞれ適合性検査部１１とサービス監視部１２を持つ。
【００２８】
適合性検査部１１は、サービス監視エージェントが監視したいサービスに対して正確に稼動情報を収集できるかどうかを検査するプログラムである。適合性検査には、サービスプログラムのディレクトリ構造のチェックやチェックサムによるファイル検査、バージョン番号の確認、ログフォーマットの確認がある。この他の方法でもサービス監視エージェントが監視したいサービスに対して正確に稼動情報を収集できるかどうかを検査できる方法であれば良い。
【００２９】
サービス監視部１２は、監視したいサービスに応じた稼動情報を収集するプログラムであり、サービス監視エージェントの種類によってサービス監視部１２が持っている機能は異なる。例えば、サービス監視エージェントα１０の場合は、適合性検査部α１１とサービス監視部α１２を持っており、サービス監視部α１２はサービスａの稼動ログａ１、ＯＳ２２０が出力するＳｙｓログ２５０を収集する機能と、稼動情報収集コマンド群ｃｃ１を実行してＯＳ２２０の各種稼動情報を収集する機能を持つ。
【００３０】
また、サービス監視エージェントβ２０の場合は、適合性検査部β２１とサービス監視部β２２を持っており、サービス監視部β２２はサービスｂの稼動情報収集コマンド群ｂ２を実行して、サービスｂの稼動情報を収集する機能を持つ。このように、各サービス監視エージェントα１０、α２０、β１０、β２０などは、サービスの種類に応じた機能を持つ。エージェント管理部２１０は各サービス監視エージェントを管理する機能を持つ。
【００３１】
図４は、監視対象機器２００にインストール済みのサービス監視エージェントを表したインストール済みエージェント管理テーブルＴ１００を示す図であり、監視サーバ１００上で動作するエージェント管理部１１０と監視対象機器２００上で動作するエージェント管理部２１０で管理されている。このデータベースは監視対象機器名Ｔ１０１、監視対象機器上で動作するサービス名Ｔ１０２、監視対象機器上で動作するサービスａ、ｂ、ｃを監視するサービス監視エージェント名Ｔ１０３から構成される。
【００３２】
例えば、図４は、監視対象機器１上でサービスａ、ｂ、ｃが稼動しており、それぞれのサービスに対してサービス監視エージェントα１０、β４０、γ２０がインストールされていることを示している。
【００３３】
図５は、サービスとそれに対応するサービス監視エージェントを表した対応エージェント管理テーブルＴ２００を示す図であり、監視サーバ１００上で動作するエージェント管理部１１０で管理されている。このデータベースはサービス名Ｔ２０１、各サービスに対応するサービス監視エージェント名Ｔ２０２から構成される。例えば、図５は、サービスａに対応するサービス監視エージェントとしてα１０、α２０、α３０があることを示している。
【００３４】
［サービス監視開始時の動作］
上記構成を有するサービス監視システムにおける、エージェント管理部とサービス監視エージェントの監視対象機器へのインストール手順について説明する。エージェント管理部は予め監視対象機器へ手動でインストールしておく。
【００３５】
図６は、サービス監視エージェントの監視対象機器へのインストール手順を示すフローチャートである。また、図７は、サービス監視エージェントの監視対象機器へのインストール手順を示すシーケンス図である。
【００３６】
図６のフローチャート及び図７のシーケンス図において、ステップＳ１００でスタートした後に、ステップＳ１０１（１１０１）で監視サーバがネットワーク上に存在する監視対象機器に対してポートスキャナーの機能を利用してポートスキャンを実行する。例えば図３では、監視サーバ１００がポートスキャナー１６０の機能を利用して監視対象機器２００をポートスキャンする。
【００３７】
ステップＳ１０２（１１０２）で、監視サーバ上のエージェント管理部が、ステップＳ１０１（１１０１）で実行したポートスキャンによって、監視対象機器上で開いているＵＤＰ、ＴＣＰポートを検知し、稼動しているサービス名を推定する。
【００３８】
例えば、図３では、監視対象機器２００上で稼動するサービスａ、ｂのサービス名を監視サーバ１００上のエージェント管理部１１０が取得する。また、ポートの開閉に関係なく動作するサービスに対しては、予めサービス監視エージェントをインストールしておき、情報を収集する方法もある。つまり、ポートスキャン以外でもサービス名が分かる方法であれば良い。
【００３９】
ステップＳ１０３で、画面に出力されたポートスキャンの結果に対して、サービス監視者が監視したいサービス名が取得できたかどうか確認する。情報が取得できない場合は、ステップＳ１０４でサービス監視者が手動にて監視したいサービスの情報を入力する。
【００４０】
サービス監視者はさらにステップＳ１０５（１１０３）で監視対象とするサービスを複数選択する。ステップＳ１０６（１１０４）で監視サーバ上のエージェント管理部が、ステップＳ１０５（１１０３）で複数選択されたサービスのうち、サービス監視エージェントがインストールされていないサービスを一つ選択する。
【００４１】
ステップＳ１０７（１１０５）で監視サーバ上のエージェント管理部が、ステップＳ１０６（１００４）で選択したサービスに、対応する全てのサービス監視エージェントを監視対象機器に送信する。例えば、図３では、ステップＳ１０６（１１０４）で選択したサービスがサービスａの場合、サービスａに対応する全てのサービス監視エージェントα１０、α２０などを監視対象機器２００に送信する。
【００４２】
ステップＳ１０８（１１０６）で、監視対象機器上のエージェント管理部は、ステップＳ１０７（１１０５）で送信したサービス監視エージェントのうち、適合性検査を実施していないサービス監視エージェントに適合性検査を実施させる。
【００４３】
適合性検査項目には以下の四種類がある。
一つ目は、サービスプログラムのディレクトリ構造のチェックである。サービスプログラムのディレクトリ構造のチェックでは、ログなどの稼動情報が出力されるディレクトリ構造と、実行ファイルが置かれているサービスプログラムのディレクトリ構造を、適合性検査部が保持する正しいディレクトリ構造と比較し、サービス監視エージェントが正確に稼動情報を収集できるかどうかチェックする。
【００４４】
ただし、サービスプログラムのディレクトリ構造のチェックでは、情報収集に必要なファイルが想定する場所に存在すれば良く、想定しないファイルがそのディレクトリ中に存在していても無視するものとする。
【００４５】
二つ目は、チェックサムによるファイル検査である。チェックサムによるファイル検査では、サービスの実行ファイルなどサービスのバージョンによって変更されるファイルのチェックサム値を、適合性検査部が保持する正しい値と比較し、サービス監視エージェントが正確に稼動情報を収集できるかどうかチェックする。
【００４６】
三つ目は、バージョン番号のチェックである。バージョン番号のチェックでは、設定ファイルなどに記述された各サービスのバージョン番号を、適合性検査部が保持するバージョン番号一覧と比較し、サービス監視エージェントが正確に稼動情報を収集できるかどうかチェックする。
【００４７】
四つ目は、ログフォーマットのチェックである。ログフォーマットのチェックでは、サービスが出力するログのフォーマットを、適合性検査部が保持する正しいフォーマットと比較し、サービス監視エージェントが正確に稼動情報を収集できるかどうかチェックする。
適合性検査の内容について説明する。
【００４８】
適合性検査では、これらの適合性検査項目を組合わせてサービス監視エージェントごとに必要な適合性検査を実施する。例えば、図３では、適合性検査を実施していないサービス監視エージェントをα１０とした場合、まず監視対象機器２００上のエージェント管理部２１０がサービス監視エージェントα１０に適合性検査を実施するように命令する。
【００４９】
次に、命令を受けたサービス監視エージェントα１０は、サービスのバージョン番号を収集し、適合性検査部α１１の保持する値と比較して、サービス監視部α１２が正確に稼動情報を収集できるかどうかチェックする。
【００５０】
バージョン番号を収集できなかった場合は、サービスプログラムのディレクトリ構造、サービス実行ファイルのチェックサム値、ログフォーマットなどの情報を収集して、それらを適合性検査部α１１が保持するディレクトリ構造、チェックサム値、ログフォーマットと比較してサービス監視部α１２が正確に稼動情報を収集できるかどうかチェックする。ただし、適合性検査の項目や実施する順番については、サービス監視エージェントによって異なる。
【００５１】
ステップＳ１０９で監視対象機器上のエージェント管理部は、ステップＳ１０８で実施した適合性検査の結果を確認し、適合性検査の結果が不合格であればステップＳ１０８に戻り、合格であればステップＳ１１０に進む。ここで、全てのサービス監視エージェントに適合性がないという結果が出た場合、上記エージェント管理部はサービス監視者に利用可能なサービス監視エージェントがないことを通報する。
【００５２】
ステップＳ１１０（１１０７）で、監視対象機器上のエージェント管理部が適合性検査に合格したサービス監視エージェントを、監視対象機器にインストールする。
【００５３】
ステップＳ１１１（１１０８）で、監視対象機器上のエージェント管理部が、監視対象機器にインストールされたサービス監視エージェントの情報を監視サーバに送信する。例えば、図３では、サービス監視エージェントα１０が監視対象機器２００にインストールされた場合、サービス監視エージェントα１０が監視対象機器２００にインストールされたという情報を、監視サーバ１００に送る。
【００５４】
ステップＳ１１２（１１０９）で監視サーバと監視対象機器のエージェント管理部がそれぞれ管理するインストール済みエージェント管理テーブルＴ１００を更新する。例えば図３のように監視対象機器２００にサービス監視エージェントα１０、β２０がインストールされた場合、図８に示すようにテーブルが更新される。
【００５５】
ステップＳ１１３で監視サーバ上のエージェント管理部は、監視対象としたいサービスの監視エージェントが、全てインストール済みかどうか確認して、全てインストール済みであればステップＳ１１４で終了し、全てインストール済みでなければステップＳ１０６に戻る。
【００５６】
［監視サービスのアップデート時の動作］
次に、上記構成を有するサービス監視システムにおける、監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順について説明する。図９は監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順を示すフローチャートである。また、図１０は監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順を示すシーケンス図である。
【００５７】
ステップＳ２００でスタートした後に、ステップＳ２０１（１２０１）で監視対象機器上のエージェント管理部が監視サービスのバージョンアップを検知する。
【００５８】
監視サービスのバージョンアップを検知する方法には、例えば、サービス監視部が監視対象機器の稼動情報の収集に失敗した場合や、ログ解析に失敗した場合に監視サービスのバージョンがバージョンアップしたとみなす方法がある。また、監視サービスのバージョンアップをシステム管理者が実行した際に、手動で監視対象機器上のエージェント管理部に監視サービスのバージョンアップを通知する方法もある。さらに、定期的にサービス監視エージェントの適合性検査を実施することで、サービス監視エージェントが監視に利用可能かどうかを判定する方法もある。
【００５９】
ステップＳ２０２（１２０２）でアップデートされたサービスに対して、監視を行っているサービス監視エージェントが適合性検査を実施する。例えば、図３では、監視対象機器２００上で稼動するサービスａがアップデートされた場合、それを監視するサービス監視エージェントα１０が、適合性検査部α１１の機能を利用して適合性検査を実施する。
【００６０】
ステップＳ２０３で、監視対象機器上のエージェント管理部は、適合性検査の結果を確認して、適合性があればステップＳ２１１で終了し、適合性がなければ現在インストールされているサービス監視エージェントを、アンインストールしてステップＳ２０４に進む。
【００６１】
ステップＳ２０４（１２０３）で、監視対象機器上のエージェント管理部が、監視サーバにサービスがアップデートされたという情報を、監視サーバ上のエージェント管理部に送信する。
【００６２】
ステップＳ２０５（１２０４）で、監視サーバ上のエージェント管理部が、アップデートされたサービスに対応する全てのサービス監視エージェントを、監視対象機器に送信する。
ステップＳ２０６（１２０５）で、監視対象機器上のエージェント管理部が、適合性検査を実施していないサービス監視エージェントを、一つ選択して適合性検査を実施する。例えば、図３では、適合性検査を実施していないサービス監視エージェントをα１０とした場合、適合性検査部α１１が監視対象機器２００に対して適合性検査を実施する。適合性検査の内容については、インストール時と同様である。
【００６３】
ステップＳ２０７で、監視対象機器上のエージェント管理部は、ステップＳ２０６（１２０５）で実施した適合性検査の結果を確認して、適合性がなければステップＳ２０６に戻り、適合性があればステップＳ２０８に進む。
【００６４】
ステップＳ２０８（１２０６）で、監視対象機器上のエージェント管理部が、適合性検査に合格したサービス監視エージェントを、監視対象機器にインストールする。
ステップＳ２０９（１２０７）で、監視対象機器上のエージェント管理部が、監視対象機器にインストールされたサービス監視エージェントの情報を、監視サーバに送信する。
【００６５】
例えば、図３では、サービス監視エージェントα１０が監視対象機器２００にインストールされた場合、サービス監視エージェントα１０が監視対象機器２００にインストールされたという情報が監視サーバ１００に送られる。
【００６６】
ステップＳ２１０（１２０８）で、図４に示す監視サーバと監視対象機器のエージェント管理部が、管理するインストール済みエージェント管理テーブルＴ１００を更新して、ステップＳ２１１で終了する。例えば、図３のように監視対象機器２００にサービス監視エージェントα１０、β２０がインストールされた場合、図８に示すように更新される。
【実施例２】
【００６７】
［構成］
図１１は、本発明の実施例２のサービス監視システムの構成図である。ネットワークシステム、ハードウェア構成は実施例１と同様であり、サービス監視システムは、監視サーバ１００と複数の監視対象機器２００、３００、４００がＬＡＮ５０によって接続されたネットワークシステムからなる。
【００６８】
監視サーバ１００と各監視対象機器２００、３００、４００はサービスを監視するためのサービス監視エージェント１０を備えており、監視サーバ１００のサービス監視エージェント１０はサービス監視エージェント１０が監視したいサービスに対して正確に稼動情報を収集できるかどうかを判定する適合性検査部１１を備えており、各監視対象機器のサービス監視エージェント１０は、監視したいサービスに応じた稼働情報を収集するサービス監視部１２を備えている。
【００６９】
図１２は、本発明の実施例２のネットワークサービス監視システムのソフトウェア構成を示す図である。実施例１のソフトウェア構成を示す。図３と比較して、サービス監視エージェントα１０、α２０、β１０、β２０の構成が異なる。
【００７０】
図３では、サービス監視エージェントは内部に適合性検査部α１１、α２１、β１１、β２１を持っていたが、図１２では適合性検査部を外部に持つ。そのため、実施例１では、適合性検査部１１はサービス監視エージェント１０とともに、監視対象機器２００、３００、４００にインストールされるが、実施例２では、監視対象機器にインストールせず、監視サーバ上で適合性検査部１１を使用する。他の構成については、実施例１の図３と同様である。
【００７１】
図４に示す監視対象機器２００にインストール済みのエージェントを表した管理テーブルＴ１００は実施例１と同様である。
【００７２】
図１３はサービス監視エージェントα１０、α２０、α３０と、それぞれのサービス監視エージェントに対応する適合性検査部α１１、α２１、α３１を表した、対応適合性検査部バージョン管理テーブルＴ３００を示す図であり、エージェント管理部１１０、２１０で管理されている。このデータベースは、サービス監視エージェント名Ｔ３０１、対応する適合性検査部名Ｔ３０２から構成される。例えば、図１３は、サービス監視エージェントα１０、α２０、α３０に対して、適合性検査部α１１、α２１、α３１がそれぞれ対応していることを示している。
【００７３】
［サービス監視開始時の動作］
上記構成を有するサービス監視システムにおける、エージェント管理部とサービス監視エージェントの監視対象機器へのインストール手順について説明する。エージェント管理部は予め監視対象機器へ手動でインストールしておく。
【００７４】
図１４は、サービス監視エージェントの監視対象機器へのインストール手順を示すフローチャートである。また、図１５は、サービス監視エージェントの監視対象機器へのインストール手順を示すシーケンス図である。ステップＳ３００からＳ３０６、１３０１から１３０４までの動作は、実施例１の場合と同様である。
【００７５】
ステップＳ３０７で、監視サーバ上のエージェント管理部が、ステップＳ３０６（１００４）で選択したサービスに対応するサービス監視エージェントを一つ選択する。
【００７６】
ステップＳ３０８（１３０５）で、監視サーバ上のエージェント管理部は、ステップＳ３０７で選択したサービス監視エージェントに対応する適合性検査部を、図１３に示す対応適合性検査部バージョン管理テーブルで検索し、発見した適合性検査部に適合性検査を実施させる。
【００７７】
適合性検査の内容について説明する。適合性検査では、実施例１と同様に、適合性検査項目を組合わせて、サービス監視エージェントごとに必要な適合性検査を実施する。例えば、図１２では、適合性検査を実施していないサービス監視エージェントをα１０とした場合、まず監視サーバ１００上のエージェント管理部１１０が適合性検査部α１１に適合性検査を実施するように命令する。
【００７８】
次に、命令を受けた適合性検査部α１１は、監視対象機器２００上のエージェント管理部２１０に対して、サービスのバージョン番号が記述されたファイルを送信するように要求する。
【００７９】
適合性検査部α１１は、受け取ったファイルからサービスのバージョン番号を解析して、自分が保持する値と比較し、サービス監視部α１２が正確に稼動情報を収集できるかどうかチェックする。バージョン番号を収集できなかった場合は、サービスプログラムのディレクトリ構造、サービス実行ファイルのチェックサム値、ログフファイルを送信するよう要求して、それらトを適合性検査部α１１が保持するディレクトリ構造、チェックサム値、ログフォーマットと比較し、サービス監視部α１２が正確に稼動情報を収集できるかどうかチェックする。ただし、適合性検査の項目や実施する順番については、サービス監視エージェントによって異なる。
【００８０】
ステップＳ３０９で、監視サーバ上のエージェント管理部は、ステップＳ３０８で実施した適合性検査の結果を確認し、適合性検査の結果が不合格であればステップＳ３０７に戻り、合格であればステップＳ３１０に進む。
【００８１】
ステップＳ３１０（１３０６）で、監視サーバ上のエージェント管理部が、適合性検査に合格したサービス監視エージェントを監視対象機器に送信する。例えば、図１２では、ステップＳ３０８（１３０５）の適合性検査でサービス監視エージェントα１０が合格した場合、サービス監視エージェントα１０を監視対象機器２００に送信する。
【００８２】
ステップＳ３１１（１３０７）で、監視対象機器上のエージェント管理部が、受け取ったサービス監視エージェントを監視対象機器にインストールする。ステップＳ３１２（１３０８）以降の動作は、実施例１の場合と同様である。
【００８３】
［監視サービスのアップデート時の動作］
次に、上記構成を有するサービス監視システムにおける、監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順について説明する。
【００８４】
図１６は、監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順を示すフローチャートである。また、図１７は、監視サービスのバージョンアップ時のサービス監視エージェントのアップデート手順を示すシーケンス図である。
【００８５】
ステップＳ４００からＳ４０４（１４０１から１４０３）までの動作は、実施例１の場合と同様である。ステップＳ４０５で、監視サーバ上のエージェント管理部が、アップデートされたサービスに対応するサービス監視エージェントを一つ選択する。
【００８６】
ステップＳ４０６（１４０４）で、監視サーバ上のエージェント管理部は、ステップＳ４０５で選択したサービス監視エージェントに対応する適合性検査部を、図１３に示す対応適合性検査部バージョン管理テーブルＴ３００で検索し、発見した適合性検査部に監視対象機器に対して適合性検査を実施させる。そして、適合性検査部が得た適合性検査の結果は、監視サーバ上のエージェント管理部に送信される。
【００８７】
例えば、図１２では、ステップＳ４０５で選択したサービス監視エージェントをα１０とした場合、適合性検査部α１１が監視対象機器２００に対して適合性検査を実施する。適合性検査の内容については、実施例１の場合と同様である。
【００８８】
ステップＳ４０７で監視サーバ上のエージェント管理部は、ステップＳ４０６（１４０４）で実施した適合性検査の結果を確認して、適合性がなければステップＳ４０５に戻り、適合性があればステップＳ４０８に進む。
【００８９】
ステップＳ４０８（１４０５）で、監視サーバ上のエージェント管理部が、適合性検査に合格したサービス監視エージェントを監視対象機器に送信する。例えば、図１２では、ステップＳ４０７（１４０４）の適合性検査でサービス監視エージェントα１０が合格した場合、サービス監視エージェントα１０を監視対象機器２００に送信する。
【００９０】
ステップＳ４０９（１４０６）で、監視対象機器上のエージェント管理部が、適合性検査に合格したサービス監視エージェントを監視対象機器にインストールする。ステップＳ４１０（１４０７）以降の動作は、実施例１の場合と同様である。
【実施例３】
【００９１】
以上、本発明の実施例の形態について説明したが、本発明は上記の実施例に限定されず、発明の要旨の範囲内で数々の変形が可能である。例えば、監視サーバの外部に大型、かつ最新のエージェントリポジトリを保持する遠隔監視センターを設置する形態がある。
【００９２】
図１８は、本発明の実施例１に監視サーバと互いに通信する遠隔監視センターを設置した本発明の実施例３のサービス監視システムの構成を示す図である。他の構成については図１と同様である。上記実施例３では、監視対象のサービスに対して、監視サーバ１００が保持する全てのサービス監視エージェントが適合性を持たなかった場合、監視サーバ１００が遠隔監視センター５００に問い合わせをして、最新のサービス監視エージェントを入手する。
【００９３】
上記実施例３では、サービス監視エージェント開発者が新しく開発したサービス監視エージェントを遠隔監視センター５００に設置すれば、監視サーバ１００は必要に応じて最新のサービス監視エージェントを自動で入手することができるようになり、サービス監視エージェントの保守業務の負担が軽減するという利点がある。
【実施例４】
【００９４】
また、例えば、インターネット越しに設置した遠隔監視サーバ６００から監視対象機器２００、３００、４００のサービスを監視する形態がある。図１９は、本発明の実施例１に、中継サーバ７００と互いに通信する遠隔監視サーバ６００を設置した本発明の実施例４のサービス監視システムの構成を示す図である。
【００９５】
遠隔監視サーバ６００をインターネット越しに設置する場合、ファイヤウォールによって遠隔監視サーバ６００と監視対象機器２００、３００、４００は、直接通信することができない。そのため図１９のサービス監視システムでは、遠隔監視サーバ６００はｈｔｔｐなどの特定のプロトコルを使用して中継サーバ７００と通信し、中継サーバ７００を中継点として、監視対象機器２００、３００、４００とサービス監視エージェントやデータのやり取りをする。
【００９６】
さらに、例えば、実施例１の変形例として、ステップＳ１０７で対応する全てのサービス監視エージェントを監視対象機器に一度に送らずに一つだけ送り、ステップＳ１０９の適合性検査で不合格だった場合にのみ、別のバージョンの監視エージェントを送るという動作も可能である。
【００９７】
本発明の実装形態は、本発明の要旨の範囲内で数々の形態が可能である。例えば、図３では、α１０、α２０、β１０、β２０などのサービス監視エージェントは独立したものとなっており、エージェント管理部２１０と全てのサービス監視エージェントがそれぞれプロセスを持つ形態として実装可能である。また、エージェント管理部２１０と全てのサービス監視エージェントが一つのプロセスとして実行する形態でも良い。また、例えば、上記サービス監視エージェントはスクリプトとしてエージェント管理部２１０が実行する形態でも良いし、ネイティブプログラムとして実装しても良い。
【符号の説明】
【００９８】
１  コンピュータ
２  ＣＰＵ
３  メモリ
４  ＨＤＤ
５  ＲＯＭ
６  ネットワークカード
７  入出力Ｉ／Ｆ
８  ディスプレイ
９  キーボード
１０  サービス監視エージェント
１１  適合性検査部
１２  サービス監視部
５０  ＬＡＮ
１００  監視サーバ
１１０  監視サーバ上のエージェント管理部
１３０  エージェントリポジトリ
１４０  収集データ
１６０  ポートスキャナー
２００  監視対象機器
２１０  監視対象機器上のエージェント管理部
２１１  稼働情報収集部
２２０  ＯＳ
２５０  Ｓｙｓログ
３００  監視対象機器
４００  監視対象機器
５００  遠隔監視センター
６００  遠隔監視サーバ
７００  中継サーバ
ａ１  サービスａの稼働ログ
ｂ２  サービスｂの稼働情報収集コマンド群
ｃｃ１  稼働情報収集コマンド群
α１０  サービス監視エージェント
α１１  適合性検査部
α１２  サービス監視部
α２０  サービス監視エージェント
α２１  適合性検査部
α２２  サービス監視部
β１０  サービス監視エージェント
β１１  適合性検査部
β２０  サービス監視エージェント
β２１  適合性検査部
β２２  サービス監視部
【図１】
2010257083.tif 000003
【図２】
2010257083.tif 000004
【図３】
2010257083.tif 000005
【図４】
2010257083.tif 000006
【図５】
2010257083.tif 000007
【図６】
2010257083.tif 000008
【図７】
2010257083.tif 000009
【図８】
2010257083.tif 000010
【図９】
2010257083.tif 000011
【図１０】
2010257083.tif 000012
【図１１】
2010257083.tif 000013
【図１２】
2010257083.tif 000014
【図１３】
2010257083.tif 000015
【図１４】
2010257083.tif 000016
【図１５】
2010257083.tif 000017
【図１６】
2010257083.tif 000018
【図１７】
2010257083.tif 000019
【図１８】
2010257083.tif 000020
【図１９】
2010257083.tif 000021