(57)【要約】      （修正有）【課題】サービスの稼働状態を監視できる監視装置、監視プログラムおよび監視方法を提供する。【解決手段】ポートスキャン部３１は、ポートスキャナ３０を用いて、監視対象のサービスを提供するサーバに対してＵＤＰによりポートスキャンを行う。判定部３２は、ログファイル４０に記録されたログに基づいて、ポートスキャンに対してサーバからの応答が無い場合、サービスが稼働状態と判定し、サーバからClosedの応答が得られた場合、サービスが停止状態と判定する。【選択図】図２
2016177371.tif 000002
【特許請求の範囲】
【請求項１】
監視対象のサービスを提供するサーバに対してＵＤＰ（User  Datagram  Protocol）によりポートスキャンを行うポートスキャン部と、
前記ポートスキャン部によるポートスキャンに対して前記サーバからの応答が無い場合、前記サービスが稼働状態と判定し、前記サーバからClosedの応答が得られた場合、前記サービスが停止状態と判定する判定部と
を有することを特徴とする監視装置。
【請求項２】
前記ポートスキャン部は、前記サーバのＯＳ（Operating  System）の動作状態をさらに監視し、
前記判定部は、前記サーバのＯＳが動作状態とされ、ポートスキャンに対する前記サーバからの応答が無い場合、前記サービスが稼働状態と判定する
ことを特徴とする請求項１に記載の監視装置。
【請求項３】
前記ポートスキャン部は、前記サーバに対してポートスキャンを所定回行い、
前記判定部は、前記サーバからClosedの応答が前記所定回得られた場合、前記サービスが停止状態と判定する
ことを特徴とする請求項１また２に記載の監視装置。
【請求項４】
監視対象のサービスは、ＵＤＰを用いるサービスとする
ことを特徴とする請求項１〜３の何れか１つに記載の監視装置。
【請求項５】
監視対象のサービスは、ＤＨＣＰ（Dynamic  Host  Configuration  Protocol）のサービスとし、
前記ポートスキャン部は、ポート番号が６７のポートスキャンを行う
ことを特徴とする請求項１〜４の何れか１つに記載の監視装置。
【請求項６】
コンピュータに、
監視対象のサービスを提供するサーバに対してＵＤＰによりポートスキャンを行い、
ポートスキャンに対して前記サーバからの応答が無い場合、前記サービスが稼働状態と判定し、前記サーバからClosedの応答が得られた場合、前記サービスが停止状態と判定する
処理を実行させることを特徴とする監視プログラム。
【請求項７】
コンピュータが、
監視対象のサービスを提供するサーバに対してＵＤＰ（User  Datagram  Protocol）によりポートスキャンを行い、
ポートスキャンに対して前記サーバからの応答が無い場合、前記サービスが稼働状態と判定し、前記サーバからClosedの応答が得られた場合、前記サービスが停止状態と判定する
処理を実行することを特徴とする監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視装置、監視プログラムおよび監視方法に関する。
【背景技術】
【０００２】
従来から、ネットワークを介してサーバから各種のサービスが提供されている。このサービスとは、サーバにより提供される機能である。サービスとしては、例えば、ＤＨＣＰ（Dynamic  Host  Configuration  Protocol）やＤＮＳ（Domain  Name  System）、ＳＮＭＰ（Simple  Network  Management  Protocol）などがある。このようなサービスは、安定稼働が求められており、サービスの稼働状態を監視する技術が提案されている。例えば、サーバに監視エージェントをインストールし、監視エージェントによりサーバのログ等を解析することにより、サービスの稼働状態を監視する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２５７０８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術は、サービスを提供するサーバに監視エージェントをインストールしなければ、サービスの稼働状態を監視できない。クラウド環境などでは、サーバが複数の企業で共用される場合があり、サーバに監視エージェントをインストールできない場合がある。このような場合、サービスの稼働状態を監視できない場合がある。
【０００５】
一つの側面では、サービスの稼働状態を監視できる監視装置、監視プログラムおよび監視方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一側面によれば、監視装置は、ポートスキャン部と、判定部とを有する。ポートスキャン部は、監視対象のサービスを提供するサーバに対してＵＤＰ（User  Datagram  Protocol）によりポートスキャンを行う。判定部は、ポートスキャン部によるポートスキャンに対してサーバからの応答が無い場合、サービスが稼働状態と判定し、前記サーバからClosedの応答が得られた場合、サービスが停止状態と判定する。
【発明の効果】
【０００７】
本発明の一側面によれば、サービスの状態を監視できるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、監視システムの全体の概略構成の一例を示す図である。
【図２】図２は、監視装置の機能的な構成の一例を示す図である。
【図３】図３は、応答の一例を示す図である。
【図４】図４は、応答の他の一例を示す図である。
【図５】図５は、ログファイルに記録されるログの一例を示す図である。
【図６】図６は、ＯＳおよびＤＨＣＰが稼働状態の場合に記録されるログの一例を示す図である。
【図７】図７は、ＯＳが稼働状態かつＤＨＣＰが停止状態の場合に記録されるログの一例を示す図である。
【図８】図８は、通信が不可の場合に記録されるログの一例を示す図である。
【図９】図９は、１回の監視で記録されるログの一例を示す図である。
【図１０】図１０は、ＤＨＣＰの状態を監視する全体的な流れの一例を示すフローチャートである。
【図１１】図１１は、監視処理の手順の一例を示すフローチャートである。
【図１２】図１２は、監視プログラムを実行するコンピュータの構成の一例を示す説明図である。
【発明を実施するための形態】
【０００９】
以下に、本願の開示する監視装置、監視プログラムおよび監視方法の実施例を図面に基づいて詳細に説明する。なお、本実施例により、開示技術が限定されるものではない。また、以下に示す実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【実施例１】
【００１０】
［システムの構成］
実施例１に係る監視システムについて説明する。図１は、監視システムの全体の概略構成の一例を示す図である。監視システム１０は、サーバが提供するサービスの状態を監視するシステムである。本実施例では、例えば、データセンタに設けられたサーバが提供するサービスの状態を監視装置で監視する場合を例に説明する。
【００１１】
図１に示すように、実施例１に係る監視システム１０は、データセンタ１１を有する。データセンタ１１は、複数のサーバ装置１２が設けられている。サーバ装置１２は、データセンタ１１内の内部ネットワーク１３に接続され、各種の情報を交換することが可能とされている。内部ネットワーク１３としては、ＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）などの有線の通信網が挙げられる。内部ネットワーク１３には、ファイアウォール１４が設けられており、ファイアウォール１４を介して外部ネットワーク１５と接続されている。外部ネットワーク１５としては、有線または無線を問わず、携帯電話などの移動体通信、インターネット（Internet）、ＬＡＮやＶＰＮなどの任意の種類の通信網を採用できる。本実施例では、外部ネットワーク１５を専用線あるいはＶＰＮにより接続された顧客のネットワークとする。外部ネットワーク１５には、端末装置１６が通信可能に接続されている。なお、図１の例では、サーバ装置１２を３つ図示したが、サーバ装置１２は任意の台数とすることができる。また、図１の例では、端末装置１６を１つ図示したが、端末装置１６は任意の台数とすることができる。
【００１２】
サーバ装置１２は、各種のサービスを提供する物理サーバであり、例えば、サーバコンピュータである。サーバ装置１２は、顧客に応じたアプリケーションプログラムを動作させることにより、顧客のシステムを動作させる。また、サーバ装置１２は、各種のサービスのプログラムを動作させることにより、顧客に対してサービスを提供する。サーバ装置１２は、１台で、顧客のシステムおよびサービスの一方または両方が複数動作してもよい。本実施例では、サーバ装置１２ＡがＤＨＣＰのサービスを提供する。なお、顧客のシステムやサービスは、コンピュータを仮想化した仮想マシン上で動作してもよい。例えば、サーバ装置１２は、サーバ仮想化プログラムを実行することによって、ハイパーバイザー上で複数の仮想マシンを動作させ、仮想マシン上で顧客のシステムやサービスを動作させてもよい。
【００１３】
端末装置１６は、顧客側のユーザが使用するコンピュータである。端末装置１６は、例えば、スマートフォン、デスクトップ型ＰＣ（パーソナルコンピュータ）、タブレット型ＰＣ、ノート型ＰＣなどの情報処理装置等である。端末装置１６は、外部ネットワーク１５および内部ネットワーク１３を介してサーバ装置１２にアクセスし、顧客のシステムや各種のサービスを利用する。例えば、端末装置１６は、外部ネットワーク１５に接続した際にサーバ装置１２Ａが提供するＤＨＣＰのサービスにより、ＩＰアドレス（Internet  Protocol  Address）の割り当てを受け付ける。
【００１４】
ファイアウォール１４は、外部ネットワーク１５からのアクセスの監視やパケットのフィルタリング等を行って、正当な通信のみを通過させ、不正な通信を遮断することで、不正なアクセスから内部ネットワーク１３を保護する。
【００１５】
また、実施例１に係る監視システム１０は、監視センタ１７を有する。監視センタ１７は、監視装置１８が設けられている。データセンタ１１の内部ネットワーク１３は、ネットワーク１９と接続されている。ネットワーク１９としては、ＬＡＮやＶＰＮ（Virtual  Private  Network）などの有線の通信網が挙げられる。監視装置１８は、ネットワーク１９に接続され、ネットワーク１９および内部ネットワーク１３を介してデータセンタ１１内のサーバ装置１２にアクセス可能とされている。なお、監視センタ１７は、データセンタ１１内に設けられ、内部ネットワーク１３に監視装置１８が接続されていてもよい。
【００１６】
監視装置１８は、稼働状態を監視する装置である。監視装置１８は、例えば、パーソナルコンピュータやサーバコンピュータなどのコンピュータなどである。監視装置１８は、１台のコンピュータとして実装してもよく、また、複数台のコンピュータにより実装してもよい。例えば、監視装置１８は、稼働状態を監視するサーバコンピュータと、サーバコンピュータを操作するクライアントコンピュータとにより構成してもよい。なお、本実施例では、監視装置１８を１台のコンピュータとした場合を例として説明する。監視装置１８は、顧客からの依頼により、サーバ装置１２の稼働状態や、サーバ装置１２が提供するサービスの稼働状態を監視する。本実施例では、監視装置１８は、サーバ装置１２Ａが提供するＤＨＣＰのサービスの稼働状態を監視する。
【００１７】
［監視装置の構成］
次に、実施例１に係る監視装置１８について説明する。図２は、監視装置の機能的な構成の一例を示す図である。図２に示すように、監視装置１８は、通信Ｉ／Ｆ（インタフェース）部２０と、表示部２１と、入力部２２と、記憶部２３と、制御部２４とを有する。
【００１８】
通信Ｉ／Ｆ部２０は、他の装置との間で通信制御を行うインタフェースである。通信Ｉ／Ｆ部２０は、ネットワーク１９に接続され、他の装置と各種情報を送受信する。例えば、通信Ｉ／Ｆ部２０は、監視対象のサービスを提供するサーバ装置１２に対して、監視用のパケットを送信する。例えば、通信Ｉ／Ｆ部２０は、ＤＨＣＰのサービスを提供するサーバ装置１２Ａに対して、ＤＨＣＰの監視用のパケットを送信する。また、通信Ｉ／Ｆ部２０は、送信したパケットに対応する応答を受信する。かかる通信Ｉ／Ｆ部２０の一態様としては、ＬＡＮカードなどのネットワークインタフェースカードを採用できる。
【００１９】
表示部２１は、各種情報を表示する表示デバイスである。表示部２１としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスが挙げられる。表示部２１は、各種情報を表示する。例えば、表示部２１は、監視対象のサービスに異常が検出された場合、警告を表示する。
【００２０】
入力部２２は、各種の情報を入力する入力デバイスである。入力部２２としては、マウスやキーボードなどの操作の入力を受け付ける入力デバイスが挙げられる。入力部２２は、各種の情報の入力を受付ける。例えば、入力部２２は、稼働状態の監視に関する各種の操作の入力を受け付ける。入力部２２は、管理者からの操作入力を受け付け、受け付けた操作内容を示す操作情報を制御部２４に入力する。
【００２１】
記憶部２３は、ハードディスク、ＳＳＤ（Solid  State  Drive）、光ディスクなどの記憶装置である。なお、記憶部２３は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ、ＮＶＳＲＡＭ（Non  Volatile  Static  Random  Access  Memory）などのデータを書き換え可能な半導体メモリであってもよい。
【００２２】
記憶部２３は、制御部２４で実行されるＯＳ（Operating  System）や各種プログラムを記憶する。さらに、記憶部２３は、制御部２４で実行されるプログラムで用いられる各種データを記憶する。例えば、記憶部２３は、ログファイル４０を有する。ログファイル４０は、後述するポートスキャナ３０が処理を実行した結果に応じた各種の情報がログとして記録されたデータである。ログファイル４０の詳細は、後述する。
【００２３】
制御部２４は、監視装置１８を制御するデバイスである。例えば、制御部２４としては、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路や、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路を採用できる。
【００２４】
制御部２４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部２４は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部２４は、ポートスキャナ３０と、ポートスキャン部３１と、判定部３２と、警告部３３と、スケジューリング部３４と、受付部３５とを有する。
【００２５】
ポートスキャナ３０は、ポートスキャンに用いるツールのプログラムである。本実施例では、ポートスキャナ３０を用いてポートスキャンを実行する。ポートスキャナ３０は、指定されたホストやネットワークに対し、ポートスキャンを実施し、開いているポートやバージョン、ＯＳの種類を調査する。例えば、ポートスキャナ３０は、指定されたホストやネットワークに対して、通信Ｉ／Ｆ部２０から監視用のパケットを送信し、応答の状態に応じた結果をログに出力する。このようなポートスキャナ３０としては、例えば、ｎｍａｐが挙げられる。
【００２６】
ポートスキャン部３１は、監視対象のサービスの監視を行う。例えば、ポートスキャン部３１は、監視対象のサービスを提供するサーバに対してポートスキャンを行う。例えば、ポートスキャン部３１は、ポートスキャナ３０に対してコマンドを実行してポートスキャナ３０を制御し、ポートスキャンを実行させる。例えば、ポートスキャン部３１は、監視対象のサービスを提供するサーバに対してＵＤＰ（User  Datagram  Protocol）によりポートスキャンを行う。例えば、サーバ装置１２Ａが提供するＤＨＣＰのサービスの稼働状態を監視する場合、ポートスキャン部３１は、ポートスキャナ３０を制御して、サーバ装置１２Ａに対して、ポート番号が６７のＵＤＰによりポートスキャンを実施する。これにより、ポートスキャナ３０は、ＵＤＰによりポート番号が６７のＩＣＭＰ（Internet  Control  Message  Protocol）パケットを通信Ｉ／Ｆ部２０からサーバ装置１２Ａへ送信させる。
【００２７】
また、ポートスキャン部３１は、監視対象のサービスを提供するサーバのＯＳの動作状態をさらに監視する。例えば、ポートスキャン部３１は、監視対象のサービスを提供するサーバに対してＰｉｎｇ（Packet  Internet  Groper）を送信する。ポートスキャン部３１は、ポートスキャナ３０に対してコマンドを実行してポートスキャナ３０を制御し、監視対象のサービスを提供するサーバに対してＰｉｎｇを送信させる。
【００２８】
サーバ装置１２Ａは、パケットを受信した場合、ＯＳおよびＤＨＣＰの稼働状況に応じて応答が変化する。
【００２９】
図３は、応答の一例を示す図である。図３の例では、サーバ装置１２Ａでは、ＯＳと、ＤＨＣＰが共に稼働状態とする。サーバ装置１２ＡのＯＳは、Microsoft（登録商標）社のWindows（登録商標）やLinux（登録商標）など何れであってもよい。本実施例では、サーバ装置１２ＡのＯＳは、Windows（登録商標）  Serverとする。
【００３０】
サーバ装置１２Ａが提供するＤＨＣＰのサービスの稼働状態を監視する場合、監視装置１８は、サーバ装置１２ＡへユニキャストでＢＯＯＴＰのパケットを送信する。サーバ装置１２Ａでは、ＯＳおよびＤＨＣＰが稼働している。この場合、サーバ装置１２Ａでは、ＤＨＣＰがパケットを受信するが、特に応答しない。すなわち、サーバ装置１２Ａは、ＯＳおよびＤＨＣＰが共に稼働状態の場合、応答しない。
【００３１】
図４は、応答の他の一例を示す図である。図４の例では、サーバ装置１２Ａでは、ＯＳが稼働状態で、ＤＨＣＰが停止状態とする。
【００３２】
サーバ装置１２Ａが提供するＤＨＣＰのサービスの稼働状態を監視する場合、監視装置１８は、サーバ装置１２ＡへユニキャストでＢＯＯＴＰのパケットを送信する。サーバ装置１２Ａは、ＯＳが稼働し、ＤＨＣＰが停止している。この場合、サーバ装置１２Ａは、受信したパケットに対応してＯＳが、ポートがClosedであることを応答する。例えば、サーバ装置１２Ａは、ユニキャストのＩＣＭＰでDestination  unreachable(Port  unreachable)を応答する。
【００３３】
ポートスキャナ３０は、パケットの応答を所定の許容期間待ち、応答の状態に応じた結果をログとしてログファイル４０に出力する。この許容期間は、例えば、数秒程度など、応答が無いことを判定可能な期間に設定されている。
【００３４】
図５は、ログファイルに記録されるログの一例を示す図である。ログファイル４０には、ポート番号が６７のＩＣＭＰ（Internet  Control  Message  Protocol）パケットの応答結果のログ４１と、Ｐｉｎｇの応答結果のログ４２が記録されている。
【００３５】
ログ４１には、ポート番号が６７のＩＣＭＰ（Internet  Control  Message  Protocol）パケットの応答結果に応じた各種の情報が記録されている。例えば、ログ４１には、符号４１Ａに実行日時が記録され、符号４１ＢにＰｏｒｔステータスが記憶される。ログ４２には、Ｐｉｎｇの応答結果に応じた各種の情報が記録されている。例えば、ログ４２には、符号４２ＡにＰｉｎｇステータスが記憶される。この符号４１ＢのＰｏｒｔステータスおよび符号４２ＡのＰｉｎｇステータスからＯＳおよびＤＨＣＰの稼働を判定できる。
【００３６】
図６は、ＯＳおよびＤＨＣＰが稼働状態の場合に記録されるログの一例を示す図である。ＯＳおよびＤＨＣＰが稼働状態の場合、符号４１Ｂに示すＰｏｒｔステータスには、「open|filtered」が記録されている。また、符号４２Ａに示すＰｉｎｇステータスには、応答が得られた旨と応答期間を示す「1  IP  address  (1  host  up)  scanned  in  0.47  seconds」が記録されている。ここで、ポート番号が６７のＩＣＭＰ（Internet  Control  Message  Protocol）パケットの応答が得られないケースには、例えば、ＯＳおよびＤＨＣＰが稼働状態の場合と、パケットがフィルタリングにより破棄される場合とがある。このため、Ｐｏｒｔステータスには、ＤＨＣＰが稼働状態であることを示す「open」と、フィルタリングにより破棄されたことを示す「filtered」を記録している。一般的に、データセンタ１１の内部ネットワーク１３では、サーバ装置１２などの監視のため、監視装置１８からの監視用のパケットに対してフィルタリングが行われない。このため、Ｐｏｒｔステータスが「open|filtered」の場合、ＤＨＣＰが稼働状態であると判定できる。
【００３７】
図７は、ＯＳが稼働状態かつＤＨＣＰが停止状態の場合に記録されるログの一例を示す図である。ＯＳが稼働状態かつＤＨＣＰが停止状態の場合、符号４１Ｂに示すＰｏｒｔステータスには、「closed」が記録されている。また、符号４２Ａに示すＰｉｎｇステータスには、応答が得られた旨と応答期間を示す「1  IP  address  (1  host  up)  scanned  in  0.22  seconds」が記録されている。このように、Ｐｏｒｔステータスには、「closed」が記録されている場合、ＤＨＣＰが停止状態であると判定できる。
【００３８】
図８は、通信が不可の場合に記録されるログの一例を示す図である。監視対象であるサーバ装置１２Ａとの通信が不可の場合、ログ４１には、指定されたホストがダウンしていると思われる旨のメッセージが記録されている。また、符号４２Ａに示すＰｉｎｇステータスには、応答が得られなかった旨と応答期間を示す「1  IP  address  (0  host  up)  scanned  in  2.45  seconds」が記録されている。
【００３９】
判定部３２は、ログファイル４０に記録されたログに基づいて、サーバ装置１２Ａの状態を判定する。例えば、判定部３２は、サーバ装置１２ＡのＯＳが動作状態とされ、ポートスキャンに対するサーバ装置１２Ａからの応答が無い場合、サービスが稼働状態と判定する。例えば、１回の監視によりログファイル４０に記録されたログに、図６に示すように、Ｐｏｒｔステータスに「open|filtered」が記録され、Ｐｉｎｇステータスには、応答が得られた旨が記録されている場合、判定部３２は、ＤＨＣＰのサービスが稼働状態と判定する。なお、判定部３２は、Ｐｏｒｔステータスに「open|filtered」が記録されていることから、ＤＨＣＰのサービスが稼働状態と判定してもよい。
【００４０】
また、例えば、判定部３２は、サーバ装置１２ＡのＯＳが動作状態とされ、ポートスキャンに対するサーバ装置１２ＡからClosedの応答が得られた場合、サービスが停止状態と判定する。例えば、１回の監視によりログファイル４０に記録されたログに、図７に示すように、Ｐｏｒｔステータスに「closed」が記録され、Ｐｉｎｇステータスには、応答が得られた旨が記録されている場合、判定部３２は、ＤＨＣＰのサービスが停止状態と判定する。なお、判定部３２は、Ｐｏｒｔステータスに「closed」が記録されていることから、ＤＨＣＰのサービスが停止状態と判定してもよい。
【００４１】
また、例えば、判定部３２は、Ｐｉｎｇの応答が得られない場合、サーバ装置１２ＡのＯＳが停止状態と判定する。例えば、１回の監視によりログファイル４０に記録されたログに、図８に示すように、Ｐｉｎｇステータスには、応答が得られなかった旨のメッセージが記録されている場合、判定部３２は、サーバ装置１２ＡのＯＳが停止状態と判定する。
【００４２】
ここで、ネットワークでは、パケットの遅延やロス等が発生する場合がある。例えば、監視装置１８がポートスキャンおよびＰｉｎｇのパケットをサーバ装置１２Ａに１回送信してサーバ装置１２Ａの状態を判定した場合、パケットの遅延やロス等の影響により、サーバ装置１２Ａの状態を精度よく判定できない場合がある。
【００４３】
そこで、ポートスキャン部３１は、ポートスキャナ３０を制御して、１回の監視で、ポートスキャンおよびＰｉｎｇによる状態の確認を所定回実行させてもよい。例えば、所定回を３回とする。なお、ポートスキャン部３１は、ポートスキャンおよびＰｉｎｇを１回行ってサーバ装置１２ＡからClosedの応答が得られた場合、ポートスキャンおよびＰｉｎｇをさらに所定回行うものとしてもよい。
【００４４】
図９は、１回の監視で記録されるログの一例を示す図である。ポートスキャン部３１が監視対象のサービスの監視を１回行った場合、ログファイル４０には、図９に示すように、ポートスキャンおよびＰｉｎｇのパケットを３回送信した３回分のログが記憶される。
【００４５】
この場合、判定部３２は、１回の監視での所定回のポートスキャンおよびＰｉｎｇのログからサーバ装置１２Ａの状態を判定する。例えば、判定部３２は、何れの１回、Ｐｏｒｔステータスに「open|filtered」が記録されている場合、判定部３２は、ＤＨＣＰのサービスが稼働状態と判定する。また、例えば、判定部３２は、所定回の全てでClosedの応答が得られた場合、サービスが停止状態と判定する。また、例えば、判定部３２は、所定回の全てでＰｉｎｇの応答が得られない場合、サーバ装置１２ＡのＯＳが停止状態と判定する。また、例えば、判定部３２は、Closedの応答と、Ｐｉｎｇの応答が得られない場合とが混在する場合、原因不明の異常が発生している判定する。原因不明の異常が発生したと判定した場合は、監視を再度実行させてもよい。なお、上記の複数回分のログでのサーバ装置１２Ａの状態の判定基準は、一例であり、他の判定基準を用いてもよい。例えば、所定回の全てで「open|filtered」が記録されている場合、判定部３２は、ＤＨＣＰのサービスが稼働状態と判定してもよい。
【００４６】
警告部３３は、判定部３２による判定結果、異常が発生したと判定された場合、警告を出力する。例えば、警告部３３は、判定部３２により、サービスが停止状態およびサーバ装置１２ＡのＯＳが停止状態が発生したと判定された場合、表示部２１に警告を出力する。なお、監視装置１８が、スピーカーや警告ランプなど警告機器を備える場合、警告部３３は、警告機器により警告を行ってもよい。また、警告部３３は、異常が発生した旨のメッセージを管理者等へ送信して警告を行ってもよい。
【００４７】
スケジューリング部３４は、所定のスケジュールに従い、ポートスキャン部３１に監視対象のサービスの監視を実行させる。例えば、スケジューリング部３４は、所定の周期でポートスキャン部３１に監視対象のサービスの監視を実行させる。この所定の周期は、顧客からの要望によって定める。例えば、スケジューリング部３４は、１５分の周期でポートスキャン部３１に監視対象のサービスの監視を実行させる。
【００４８】
受付部３５は、管理者からの各種の指示を受け付ける。例えば、受付部３５は、操作画面を表示部２１に表示させ、入力部２２から監視の実行指示を受け付ける。受付部３５は、監視の実行指示を受け付けると、ポートスキャン部３１に監視対象のサービスの監視を実行させる。
【００４９】
［処理の流れ］
最初に、管理者が、監視装置１８を用いて、ＤＨＣＰの状態を監視する全体的な流れを説明する。図１０は、ＤＨＣＰの状態を監視する全体的な流れの一例を示すフローチャートである。
【００５０】
図１０に示すように、監視装置１８では、スケジューリング部３４が、前回の監視から所定の周期分の期間を経過したか否かを判定する（Ｓ１０）。所定の周期分の期間を経過していない場合（Ｓ１０否定）、再度Ｓ１０へ移行する。所定の周期分の期間を経過した場合（Ｓ１０肯定）、監視装置１８は、監視処理を実行する（Ｓ１１）。監視処理の詳細は、後述する。異常が発生した場合、監視装置１８は、警告を出力する。監視装置１８に警告が出力されない場合（Ｓ１２否定）、上述のＳ１０へ移行して周期的な監視が継続される。
【００５１】
一方、監視装置１８に警告が出力された場合（Ｓ１２肯定）、管理者は、監視装置１８を操作して操作画面から監視の実行を指示し、確認のため手動で監視処理を実行させる（Ｓ１３）。
【００５２】
管理者は、監視装置１８のログを確認し、ＤＨＣＰが停止しているか否かを判定する（Ｓ１４）。例えば、図７に示すように、Ｐｏｒｔステータスに「closed」が記録されている場合、管理者は、ＤＨＣＰが停止していると判定する。ＤＨＣＰが停止している場合（Ｓ１４肯定）、管理者は、ＤＨＣＰ停止への対応を行う（Ｓ１５）。例えば、サーバ装置１２Ａにリモートアクセスして、システムログ等の情報を収集し、原因を分析する。
【００５３】
一方、ＤＨＣＰが停止していない場合（Ｓ１４否定）、管理者は、監視装置１８のログからサーバ装置１２Ａとの通信が不可な状態であるか否かを判定する（Ｓ１６）。例えば、図８に示すように、指定されたホストがダウンしていると思われる旨のメッセージが記録されている場合、管理者は、サーバ装置１２Ａとの通信が不可な状態と判定する。サーバ装置１２Ａとの通信が不可な状態である場合（Ｓ１６肯定）、管理者は、別な手法により、サーバ装置１２Ａと疎通確認を行う（Ｓ１７）。例えば、管理者は、監視装置１８からＥｘｐｉｎｇなどの別な監視ツールを用いて、サーバ装置１２Ａと疎通確認を行う。管理者は、疎通確認によりサーバ装置１２Ａと通信に異常があるか否かを判定する（Ｓ１８）。異常がある場合（Ｓ１８肯定）、管理者は、データセンタ１１の担当者に連絡する（Ｓ１９）。一方、異常がない場合（Ｓ１８否定）、管理者は、監視装置１８の異常として対応する（Ｓ２０）。
【００５４】
一方、サーバ装置１２Ａとの通信が可能な状態である場合（Ｓ１６否定）、管理者は、監視装置１８のログからＤＨＣＰが稼働状態であるか否かを判定する（Ｓ２１）。例えば、図６に示すように、Ｐｏｒｔステータスに「open|filtered」が記録されている場合、管理者は、ＤＨＣＰが稼働状態と判定する。ＤＨＣＰが稼働状態である場合（Ｓ２１肯定）、管理者は、一時的な負荷の増加などによって異常が検出されたものとして記録を残し、対応を完了する。ＤＨＣＰが稼働状態ではない場合（Ｓ２１否定）、管理者は、データセンタ１１の担当者に連絡する（Ｓ１９）。
【００５５】
次に、実施例１に係る監視装置１８が実行する監視処理について説明する。図１１は、監視処理の手順の一例を示すフローチャートである。この監視処理は、所定のタイミング、例えば、スケジューリング部３４により所定の周期ごと、あるいは、受付部３５により監視の実行指示を受け付けたタイミングで実行される。
【００５６】
図１１に示すように、ポートスキャン部３１は、ポートスキャナ３０を制御し、サーバ装置１２ＡへのＵＤＰによりポート番号が６７のＩＣＭＰ（Internet  Control  Message  Protocol）パケットの送信およびＰｉｎｇの送信を所定回実行させる（Ｓ５０）。
【００５７】
判定部３２は、Ｓ５０の処理の結果、ログファイル４０に記録されたログからサーバ装置１２ＡのＯＳが停止状態であるか否かを判定する（Ｓ５１）。応答が得られなかった旨のメッセージがログに記録されている場合、判定部３２は、サーバ装置１２ＡのＯＳが停止状態と判定し（Ｓ５１肯定）、後述のＳ５４へ移行する。
【００５８】
サーバ装置１２ＡのＯＳが停止状態ではない場合（Ｓ５１否定）、判定部３２は、Ｓ５０の処理の結果、ログファイル４０に記録されたログからＤＨＣＰが停止状態であるか否かを判定する（Ｓ５２）。ログのＰｏｒｔステータスに「closed」が記録されている場合、判定部３２は、サーバ装置１２Ａのサービスが停止状態と判定し（Ｓ５２肯定）、後述のＳ５４へ移行する。
【００５９】
サーバ装置１２ＡのＤＨＣＰが停止状態ではない場合（Ｓ５２否定）、判定部３２は、Ｓ５０の処理の結果、ログファイル４０に記録されたログからＤＨＣＰが稼働状態であるか否かを判定する（Ｓ５３）。ログのＰｏｒｔステータスに「open|filtered」が記録され、Ｐｉｎｇステータスには、応答が得られた旨が記録されている場合、判定部３２は、サーバ装置１２ＡのＤＨＣＰが稼働状態と判定し（Ｓ５３肯定）、処理を終了する。一方、サーバ装置１２ＡのＤＨＣＰが稼働状態ではない場合（Ｓ５３否定）、ログからサーバ装置１２Ａの状態を判定できないため、後述のＳ５４へ移行する。
【００６０】
警告部３３は、表示部２１に警告を出力し（Ｓ５４）、処理を終了する。
【００６１】
［効果］
上述してきたように、本実施例に係る監視装置１８は、サーバ装置１２Ａに対してＵＤＰによりポートスキャンを行う。監視装置１８は、ポートスキャンに対してサーバ装置１２Ａからの応答が無い場合、サービスが稼働状態と判定し、サーバ装置１２ＡからClosedの応答が得られた場合、サービスが停止状態と判定する。これにより、監視装置１８は、サービスの稼働状態を監視できる。また、監視装置１８は、監視対象であるサーバ装置１２Ａに監視エージェントをインストールすることなく、外部からのアクセスにより、サービスの稼働状態を監視できる。このように、監視装置１８は、サーバ装置１２Ａに監視エージェントをインストールすることなくサーバ装置１２Ａを監視できるため、監視エージェントを導入するコストを削減できる。
【００６２】
また、本実施例に係る監視装置１８は、サーバ装置１２ＡのＯＳの動作状態をさらに監視する。本実施例に係る監視装置１８は、サーバ装置１２ＡのＯＳが動作状態とされ、ポートスキャンに対するサーバ装置１２Ａからの応答が無い場合、サービスが稼働状態と判定する。これにより、監視装置１８は、サーバ装置１２ＡＯＳがダウンして応答が無いケースと、サービスが稼働していて応答が無いケースを判別できる。
【００６３】
また、本実施例に係る監視装置１８は、監視対象のサービスをＵＤＰを用いるサービスとする。これにより、監視装置１８は、ＵＤＰを用いるサービスの稼働状態を監視できる。
【００６４】
また、本実施例に係る監視装置１８は、監視対象のサービスをＤＨＣＰのサービスとし、ポート番号が６７のポートスキャンを行う。これにより、監視装置１８は、ＤＨＣＰの稼働状態を監視できる。また、監視装置１８は、ＤＨＣＰからＩＰアドレスの割り当てを受けることなく、ＤＨＣＰの稼働状態を監視できるため、監視のために無駄なＩＰアドレスが使用されることを抑制できる。
【実施例２】
【００６５】
さて、これまで開示の装置に関する実施例について説明したが、開示の技術は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００６６】
例えば、上記実施例では、ポートスキャン部３１が、ポートスキャナ３０を制御して、ＩＣＭＰやＰｉｎｇなどの監視用のパケットを生成する場合を例示した。しかしながら、これらに限定されるものではない。ポートスキャン部３１が監視用のパケットを生成してもよい。すなわち、ポートスキャン部３１がポートスキャナ３０の機能を有してもよい。
【００６７】
また、上記実施例では、監視対象のサービスをＤＨＣＰとした場合を例示した。しかしながら、これらに限定されるものではない。監視対象のサービスは、ＵＤＰを用いるサービスであれば何れであってもよい。例えば、監視装置１８は、監視対象のサービスに対応したポート番号にＵＤＰによりパケットを送信し、応答状態から監視対象のサービスの稼働状態を判定できる。例えば、監視装置１８は、ＤＮＳ、ＳＮＭＰの稼働状態の監視にも適用できる。
【００６８】
また、上記実施例では、監視装置１８は、監視用のパケットとして、ＵＤＰによりＩＣＭＰパケットを送信する場合を例示した。しかしながら、これらに限定されるものではない。監視用のパケットは、サービスが稼働状態の場合に応答が無く、サービスが停止状態の場合にＯＳが応答するものであれば何れの形式でもよい。例えば、サービスが受信可能なパケットの一部を改変して、サービスが稼働状態の場合に応答しないパケットを監視用のパケットとして使用してもよい。
【００６９】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、上記のポートスキャナ３０、ポートスキャン部３１、判定部３２、警告部３３、スケジューリング部３４および受付部３５の各処理部が適宜統合されても良い。さらに、各処理部にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７０】
［監視プログラム］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。最初に、ドライバに対する注意喚起の制御を行う監視プログラムについて説明する。図１２は、監視プログラムを実行するコンピュータの構成の一例を示す説明図である。
【００７１】
図１２に示すように、コンピュータ４００は、ＣＰＵ（Central  Processing  Unit）４１０、ＨＤＤ（Hard  Disk  Drive）４２０、ＲＡＭ（Random  Access  Memory）４４０を有する。これら４００〜４４０の各部は、バス５００を介して接続される。
【００７２】
ＨＤＤ４２０には上記のポートスキャナ３０、ポートスキャン部３１、判定部３２、警告部３３、スケジューリング部３４および受付部３５と同様の機能を発揮する監視プログラム４２０ａが予め記憶される。なお、監視プログラム４２０ａについては、適宜分離しても良い。
【００７３】
また、ＨＤＤ４２０は、各種情報を記憶する。例えば、ＨＤＤ４２０は、ＯＳや発注量の決定に用いる各種データを記憶する。
【００７４】
そして、ＣＰＵ４１０が、監視プログラム４２０ａをＨＤＤ４２０から読み出して実行することで、実施例の各処理部と同様の動作を実行する。すなわち、監視プログラム４２０ａは、ポートスキャナ３０、ポートスキャン部３１、判定部３２、警告部３３、スケジューリング部３４および受付部３５と同様の動作を実行する。
【００７５】
なお、上記した監視プログラム４２０ａについては、必ずしも最初からＨＤＤ４２０に記憶させることを要しない。
【００７６】
また、例えば、監視プログラム４２０ａは、コンピュータ４００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に記憶させても良い。そして、コンピュータ４００がこれらからプログラムを読み出して実行するようにしても良い。
【００７７】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ４００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ４００がこれらからプログラムを読み出して実行するようにしても良い。
【符号の説明】
【００７８】
１０  監視システム
１１  データセンタ
１２、１２Ａ  サーバ装置
１７  監視センタ
１８  監視装置
２０  通信Ｉ／Ｆ部
２１  表示部
２２  入力部
２３  記憶部
２４  制御部
３０  ポートスキャナ
３１  ポートスキャン部
３２  判定部
３３  警告部
３４  スケジューリング部
３５  受付部
４０  ログファイル
４１  ログ
４２  ログ
【図１】
2016177371.tif 000003
【図２】
2016177371.tif 000004
【図３】
2016177371.tif 000005
【図４】
2016177371.tif 000006
【図５】
2016177371.tif 000007
【図６】
2016177371.tif 000008
【図７】
2016177371.tif 000009
【図８】
2016177371.tif 000010
【図９】
2016177371.tif 000011
【図１０】
2016177371.tif 000012
【図１１】
2016177371.tif 000013
【図１２】
2016177371.tif 000014