JP5682502B2 - 情報処理プログラムおよび情報処理装置 - Google Patents

情報処理プログラムおよび情報処理装置 Download PDF

Info

Publication number
JP5682502B2
JP5682502B2 JP2011175703A JP2011175703A JP5682502B2 JP 5682502 B2 JP5682502 B2 JP 5682502B2 JP 2011175703 A JP2011175703 A JP 2011175703A JP 2011175703 A JP2011175703 A JP 2011175703A JP 5682502 B2 JP5682502 B2 JP 5682502B2
Authority
JP
Japan
Prior art keywords
monitoring
information processing
processing apparatus
item
server
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
JP2011175703A
Other languages
English (en)
Other versions
JP2013037655A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011175703A priority Critical patent/JP5682502B2/ja
Priority to US13/489,727 priority patent/US9075888B2/en
Publication of JP2013037655A publication Critical patent/JP2013037655A/ja
Application granted granted Critical
Publication of JP5682502B2 publication Critical patent/JP5682502B2/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/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

本件は装置の運用管理を行うための情報処理プログラムおよび情報処理装置に関する。
従来、種々の情報処理システムが利用されている。情報処理システムでは、安定稼働のための運用管理が行われる。例えば、運用管理を行う装置が、情報処理システムに含まれる装置やプログラムの動作状況を監視する。監視により、異常箇所を早期に発見し対処できる。
情報処理システムでは、監視対象を容易に管理する方法が考えられている。例えば、クライアントモジュールが監視対象項目、監視間隔および監視指示などをモニタモジュールに与え、モニタモジュールが当該指示などに基づいて管理対象のモジュールを監視することで、監視対象などの追加に容易に対応する方法が提案されている。
また、例えば、監視や制御に関する処理を行うための機能処理部のうち、予め決められた代表機能処理部が、他の機能処理部を代表して配信処理部との送受信データの受け渡しを行うことで、配信処理部における負荷の軽減を図る方法が提案されている。
更に、例えば、被監視マシンが、該被監視マシン上の監視対象のエージェントの起動に伴って、該エージェントに割り当てられたポート番号を監視マシンに送信することで、被監視マシンのポート番号の変更に対応する方法が提案されている。監視マシンは、受信したポート番号に基づいて、該エージェントとポート番号との対応関係を更新して、被監視マシンの監視を行う。
特開平11−243389号公報 特開2001−67334号公報 特開2006−139649号公報
ところで、複数の監視元装置(監視する側)が1つの監視先装置(監視される側)に対して、同じ項目を監視することがある。例えば、各監視元装置で異なった目的がある場合には、各監視元装置が、同じ項目の監視結果を監視先装置から別個に取得することがある。また、例えば、各監視元装置上の各アプリケーションが、各アプリケーションの処理のために、同じ項目の監視結果を監視先装置から別個に取得することがある。
しかしながら、1つの監視先装置の同じ項目について重複して監視が行われると効率が悪いという問題がある。例えば、監視のための要求がある期間に集中して監視先装置に送出され、ネットワークや監視先装置の負荷が高まるおそれがある。
本発明はこのような点に鑑みてなされたものであり、効率的に装置の監視を行えるようにした情報処理プログラムおよび情報処理装置を提供することを目的とする。
情報処理プログラムが提供される。この情報処理プログラムは、第1の情報処理装置から監視対象の項目に対する監視のための要求を受信すると、該項目の監視を行う条件を第1の情報処理装置に問い合わせるとともに、他の情報処理装置の識別情報に対応付けて他の情報処理装置による監視対象項目と監視を行う条件とを記憶する記憶部を参照して、自身に対して該項目と同じ項目の監視を行う第2の情報処理装置が存在するか確認し、第2の情報処理装置が存在する場合、第1の情報処理装置および第2の情報処理装置の何れか1つの情報処理装置に、該1つの情報処理装置以外の情報処理装置が該項目の監視を行う条件で、該項目の監視を行うよう指示するとともに、該1つの情報処理装置以外の情報処理装置に該項目に対する監視のための要求を送信しないよう指示する、処理をコンピュータに実行させる。
また、情報処理プログラムが提供される。この情報処理プログラムは、自身が監視する第1の情報処理装置から、自身が監視する項目と同じ項目に対して監視を行う条件と第2の情報処理装置の識別情報とを受信して記憶部に格納し、記憶部に格納された該条件に基づいて、第1の情報処理装置の該項目の監視を行い、該監視の結果を第2の情報処理装置に送信する、処理をコンピュータに実行させる。
また、制御部と指示部とを有する情報処理装置が提供される。制御部は、第1の情報処理装置から監視対象の項目に対する監視のための要求を受信すると、該項目の監視を行う条件を第1の情報処理装置に問い合わせるとともに、他の情報処理装置の識別情報に対応付けて他の情報処理装置による監視対象項目と監視を行う条件とを記憶する記憶部を参照して、自身に対して該項目と同じ項目の監視を行う第2の情報処理装置が存在するか確認する。指示部は、第2の情報処理装置が存在する場合、第1の情報処理装置および第2の情報処理装置の何れか1つの情報処理装置に、該1つの情報処理装置以外の情報処理装置が該項目の監視を行う条件で、該項目の監視を行うよう指示するとともに、該1つの情報処理装置以外の情報処理装置に該項目に対する監視のための要求を送信しないよう指示する。
また、監視実行部と送信部とを有する情報処理装置が提供される。監視実行部は、自身が監視する第1の情報処理装置から、自身が監視する項目と同じ項目に対して監視を行う条件と第2の情報処理装置の識別情報とを受信して記憶部に格納し、記憶部に格納された該条件に基づいて、第1の情報処理装置の項目の監視を行う。送信部は、該監視の結果を第2の情報処理装置に送信する。
効率的に装置の監視を行える。
第1の実施の形態の情報処理システムを示す図である。 第2の実施の形態の情報処理システムを示す図である。 サーバ装置のハードウェア例を示す図である。 第2の実施の形態のサーバ装置の機能を示すブロック図である。 アクセス記録テーブルのデータ構造例を示す図である。 監視先装置の処理を示すフローチャートである。 監視元装置の処理を示すフローチャートである。 監視代行依頼の処理を示すシーケンス図である。 監視代行の処理を示すシーケンス図である。 スケジュールの調整例を示す図である。 監視処理例を示す図である。 第3の実施の形態のサーバ装置の機能を示すブロック図である。
以下、本実施の形態を図面を参照して説明する。
[第1の実施の形態]
図1は、第1の実施の形態の情報処理システムを示す図である。この情報処理システムでは、情報処理装置1,2,3それぞれがネットワークを介して通信可能に接続されている。情報処理装置2,3は、情報処理装置1を監視する。例えば、情報処理装置2,3は、情報処理装置1上の所定の機能の死活監視、情報処理装置1上の所定のデバイス・プログラムの動作や状態の監視などを行う。情報処理装置1は、記憶部1a、制御部1bおよび指示部1cを有する。
記憶部1aは、情報処理装置の識別情報に対応付けて該情報処理装置による監視対象項目と監視を行う条件(以下、監視条件ということがある)とを記憶する。
情報処理装置の識別情報は、情報処理システム内で各情報処理装置を一意に特定するための情報である。例えば、情報処理装置の識別情報は、IP(Internet Protocol)アドレスである。情報処理装置の識別情報は、所定のプログラム(例えば、OS(Operating System)やアプリケーションのプログラム)が情報処理装置に付与した識別情報でもよい。
監視対象項目は、監視対象の項目である(以下、監視項目ということがある)。例えば、監視対象となり得る項目としては、所定の機能の死活監視や、所定のデバイスの状態監視などがある。例えば、通信機能の死活監視は、ICMP(Internet Control Message Protocol)により行える。また、例えば、デバイスの状態監視は、SNMP(Simple Network Management Protocol)により行える。
記憶部1aは、RAM(Random Access Memory)やHDD(Hard Disk Drive)として実装してもよい。
制御部1bは、情報処理装置3から監視対象の項目に対する監視のための要求(以下、監視要求ということがある)を受信すると、該項目の監視条件を情報処理装置3に問い合わせる。また、制御部1bは、記憶部1aを参照し、自身に対して該項目と同じ項目の監視を行う情報処理装置2が存在するか確認する。
指示部1cは、情報処理装置2が存在する場合、情報処理装置2,3のうちの1つの情報処理装置に、該1つの情報処理装置以外の情報処理装置による該項目の監視条件で、該項目の監視を行うよう指示する。例えば、指示部1cは、情報処理装置2に対して、情報処理装置3が監視を行う条件での該項目の監視を指示する。このとき、指示部1cは、情報処理装置2,3の性能や能力などを示す指標に基づいて何れかを選択し、該指示を行うようにしてもよい。例えば、応答時間の短い方を選択してもよい。
また、指示部1cは、該1つの情報処理装置以外の情報処理装置に対して、該項目の監視要求を送信しないように指示する。例えば、指示部1cは、情報処理装置2に対して監視の指示を行った場合、情報処理装置3に対して、該項目の監視要求を送信しないように指示する。
ここで、制御部1bおよび指示部1cは、CPU(Central Processing Unit)とRAMを用いて実行されるプログラムとして実装してもよい。
情報処理装置1によれば、制御部1bにより、情報処理装置3から監視対象の項目に対する監視のための要求が受信されると、情報処理装置3に該項目の監視を行う条件の問い合わせが行われるとともに、記憶部1aが参照されて、自身に対して該項目と同じ項目の監視を行う情報処理装置2が存在するか確認される。情報処理装置2が存在する場合、指示部1cにより、情報処理装置2,3のうちの1つの情報処理装置に、該1つの情報処理装置以外の情報処理装置が該項目の監視を行う条件で、該項目の監視を行うよう指示されるとともに、該1つの情報処理装置以外の情報処理装置に該項目の監視要求を送信しないよう指示される。
これにより、効率的に監視を行える。具体的には、情報処理装置1に対し同じ項目について監視を行う情報処理装置2,3が存在するとき、情報処理装置1が情報処理装置2に情報処理装置3の分の監視を依頼することで、該項目の監視元を情報処理装置2に集約できる。監視元を集約すれば、情報処理装置1は情報処理装置3からの監視要求に応答しなくてもよくなる。また、情報処理装置3に監視要求を送信しないように指示することで、余分な監視要求の送出を抑制できる。よって、ネットワークの負荷や監視先である情報処理装置1の負荷を軽減できる。
このとき、監視元を情報処理装置2,3の何れに集約するかを、情報処理装置2,3に関する性能などの指標に基づいて選択すれば、より高速に監視を行える監視元装置を容易に選択可能となる。
[第2の実施の形態]
図2は、第2の実施の形態の情報処理システムを示す図である。この情報処理システムは、サーバ装置100,200,300を有する。サーバ装置100,200,300は、ネットワーク10を介して、相互にデータ通信可能に接続されている。サーバ装置100,200,300は、所定のサービスを提供する機能を備えた情報処理装置である。
サーバ装置100は、業務アプリケーションのプログラムを実行する。
サーバ装置200,300は、サーバ装置100上のデバイスの動作状況およびOSやアプリケーションのプログラムの実行状況などを監視する。サーバ装置200,300は、サーバ装置100上の同じ項目を監視対象にしている。
ここで、サーバ装置100は、サーバ装置200,300により監視される監視先装置である。サーバ装置200,300は、サーバ装置100を監視する監視元装置である。
図3は、サーバ装置のハードウェア例を示す図である。サーバ装置100は、CPU101、ROM(Read Only Memory)102、RAM103、HDD104、グラフィック処理装置105、入力インタフェース106、ディスクドライブ107および通信インタフェース108を有する。
CPU101は、OSやアプリケーションのプログラムを実行して、サーバ装置100全体を制御する。
ROM102は、サーバ装置100の起動時に実行されるBIOS(Basic Input / Output System)プログラムなどの所定のプログラムを記憶する。ROM102は、書き換え可能な不揮発性メモリであってもよい。
RAM103は、CPU101が実行するOSやアプリケーションのプログラムの少なくとも一部を一時的に記憶する。また、RAM103は、CPU101の処理に用いられるデータの少なくとも一部を一時的に記憶する。
HDD104は、OSプログラムやアプリケーションプログラムを記憶する。また、HDD104は、CPU101の処理に用いられるデータを記憶する。なお、HDD104に代えて(または、HDD104と併せて)、SSD(Solid State Drive)など他の種類の不揮発性の記憶装置を用いてもよい。
グラフィック処理装置105は、モニタ11に接続される。グラフィック処理装置105は、CPU101からの命令に従って、画像をモニタ11に表示させる。
入力インタフェース106は、キーボード12やマウス13などの入力デバイスに接続される。入力インタフェース106は、入力デバイスから送られる入力信号をCPU101に出力する。
ディスクドライブ107は、記録媒体14に格納されたデータを読み取る読取装置である。記録媒体14には、例えば、サーバ装置100に実行させるプログラムが記録されている。サーバ装置100は、例えば、記録媒体14に記録されたプログラムを実行することで、後述するような機能を実現できる。すなわち、当該プログラムはコンピュータ読み取り可能な記録媒体14に記録して配布可能である。
記録媒体14としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリを使用できる。磁気記録装置には、HDD、フレキシブルディスク(FD)、磁気テープなどがある。光ディスクには、CD(Compact Disc)、CD−R(Recordable)/RW(ReWritable)、DVD(Digital Versatile Disc)、DVD−R/RW/RAMなどがある。光磁気記録媒体には、MO(Magneto-Optical disk)などがある。半導体メモリには、USB(Universal Serial Bus)メモリなどのフラッシュメモリがある。
通信インタフェース108は、ネットワーク10に接続される。通信インタフェース108は、ネットワーク10を介してサーバ装置200,300とデータ通信を行える。
なお、サーバ装置200,300もサーバ装置100と同様のハードウェア構成により実現できる。
図4は、第2の実施の形態のサーバ装置の機能を示すブロック図である。サーバ装置100は、記憶部110および監視制御部120を有する。サーバ装置100の構成要素の機能は、例えばCPU101が所定のプログラムを実行することにより、サーバ装置100上に実現される。サーバ装置100の構成要素の機能の全部または一部を専用のハードウェアで実装してもよい。
記憶部110は、アクセス記録テーブルを記憶する。アクセス記録テーブルは、1つの監視先装置に対する監視元装置を管理するためのデータである。アクセス記録テーブルには、各監視元装置の識別情報(例えば、IPアドレス)、監視項目および監視条件などが設定される。アクセス記録テーブルは、監視先装置ごとに設けられる。第2の実施の形態では、監視先装置としてサーバ装置100が存在する。このため、記憶部110は、サーバ装置100を監視する監視元装置を管理するためのアクセス記録テーブルを記憶する。ここで、以下では、アクセス記録テーブルに設定される識別情報、監視項目および監視条件などの情報を監視情報ということがある。
監視制御部120は、サーバ装置200,300から監視要求を受信する。監視制御部120は、記憶部110に記憶されたアクセス記録テーブルを参照して、自身に対し、当該監視要求に係る項目と同じ項目の監視を行う他のサーバ装置が存在するか確認する。同じ項目の監視を行う他のサーバ装置が存在する場合には、何れかのサーバ装置に該項目の監視を集約する。
例えば、サーバ装置300から監視要求を受信したとき、該監視要求に係る項目と同じ項目の監視を行うサーバ装置200が存在する場合、監視制御部120は、サーバ装置300の条件で該項目の監視を代行するようサーバ装置200に依頼する。監視代行の依頼には、サーバ装置300による該項目の監視についての監視情報が含まれる。
監視代行の依頼先を決定するとき、監視制御部120は、サーバ装置200,300の性能や能力を示す指標(例えば、通信の応答時間)に基づいて、依頼先を選択する。監視制御部120は、監視の代行を依頼しなかった方のサーバ装置に対し、監視要求の送信を停止するよう指示する。監視制御部120は、第1の実施の形態で説明した制御部1bおよび指示部1cの機能を含む。
サーバ装置200は、記憶部210、監視実行部230および通知処理部240を有する。サーバ装置200の構成要素の機能は、例えばサーバ装置200が備えるCPUが所定のプログラムを実行することにより、サーバ装置200上に実現される。サーバ装置200の構成要素の機能の全部または一部を専用のハードウェアで実装してもよい。
記憶部210は、アクセス記録テーブルを記憶する。アクセス記録テーブルは、上述したように1つの監視先装置に対する監視元装置を管理するためのデータである。アクセス記録テーブルは、監視先装置ごとに設けられる。第2の実施の形態では、監視先装置としてサーバ装置100が存在する。このため、記憶部210は、サーバ装置100を監視する監視元装置を管理するためのアクセス記録テーブルを記憶する。
例えば、アクセス記録テーブルには、管理者がサーバ装置200に入力した所定の監視情報が予め設定される。サーバ装置200は、そのような操作入力を受け付けるためのGUI(Graphical User Interface)をサーバ装置200に接続されたモニタ(あるいは、他の情報処理装置に接続されたモニタ)に表示させてもよい。例えば、管理者は、該GUIに沿ってサーバ装置200(あるいは、他の情報処理装置)に接続された入力装置を操作し、所望の監視情報をサーバ装置200に入力できる。
監視実行部230は、記憶部210に記憶されたアクセス記録テーブル上の監視情報を参照して、監視のためのスケジュールを決定し、サーバ装置100の監視を行う。具体的には、監視実行部230は、監視情報に含まれる監視項目につき該項目を監視する条件が成立したときに、サーバ装置100に対して、監視要求を送信する。サーバ装置100では、該要求に応じて監視制御部120により、該項目の観測が行われる。そして、監視実行部230は、サーバ装置100から観測により得られた情報(以下、監視結果という)を受信する。監視実行部230は、監視結果に基づいて、サーバ装置100の異常の有無を確認する。監視実行部230は、異常を検知したときは、該異常に対処するための所定の処理(以下、異常時処理ということがある)を実行する。あるいは、異常時処理の実行を他の処理部に依頼してもよい。
監視実行部230は、サーバ装置300による該項目の監視代行を、監視制御部120から依頼されることがある。このとき、監視実行部230は、その依頼とともに、サーバ装置300の監視情報を受信し、アクセス記録テーブルに記録する。監視実行部230は、アクセス記録テーブルに記録された監視情報に基づいて、監視のためのスケジュールを決定し、該項目の監視を行う。監視実行部230は、自身の監視条件とサーバ装置300の監視条件と併せて該スケジュールを決定する。
また、監視実行部230は、ある項目に対する監視要求の送信を停止するよう監視制御部120から指示されると、該項目に対する監視要求の送信を停止する。この場合、監視実行部230は、サーバ装置300から取得した該項目の監視結果に基づいて、サーバ装置100の異常を検知する。
通知処理部240は、監視実行部230がサーバ装置300による監視を代行したとき、その監視結果をサーバ装置300に通知する。また、サーバ装置300がサーバ装置200による監視を代行するとき、通知処理部240は、サーバ装置300から該項目に関する監視結果を受信する。その場合、通知処理部240は、監視実行部230に該監視結果を出力する。
サーバ装置300は、記憶部310、監視実行部330および通知処理部340を有する。サーバ装置300の構成要素の機能は、例えばサーバ装置300が備えるCPUが所定のプログラムを実行することにより、サーバ装置300上に実現される。ただし、サーバ装置300の構成要素の機能の全部または一部を専用のハードウェアで実装してもよい。
ここで、記憶部310、監視実行部330および通知処理部340は、それぞれ記憶部210、監視実行部230および通知処理部240と同様の機能を実現する。ただし、サーバ装置200,300の一方が他方の監視を代行して行うことがある。その場合には、代行する側のサーバ装置と代行される側のサーバ装置とでは、同じ機能を有する構成要素であっても、実行する処理が異なる。
例えば、代行する側がサーバ装置200であり、代行される側がサーバ装置300である場合、次のようになる。
監視実行部230は、監視実行部330による監視を代行する。通知処理部240は、監視実行部230が監視実行部330の監視を代行すると、監視結果を通知処理部340に送信する。
通知処理部340は、通知処理部240が送信した監視結果を監視実行部330に出力する。監視実行部330は、通知処理部340を介して取得した監視結果に基づいて、サーバ装置100の異常を検知する。
代行する側がサーバ装置300であり、代行される側がサーバ装置200である場合には、監視実行部230,330の役割を入れ替え、通知処理部240,340の役割を入れ替えればよい。
以下では代行する側がサーバ装置200であり、代行される側がサーバ装置300である場合を想定する。次に、記憶部110,210,310に記憶されたアクセス記録テーブルを説明する。
図5は、アクセス記録テーブルのデータ構造例を示す図である。図5(A)は、アクセス記録テーブル111を示している。アクセス記録テーブル111は、記憶部110に格納される。図5(B)は、アクセス記録テーブル211を示している。アクセス記録テーブル211は、記憶部210に格納される。図5(C)は、アクセス記録テーブル311を示している。アクセス記録テーブル311は、記憶部310に格納される。アクセス記録テーブル111,211,311は、監視先装置ごとに設けられる。アクセス記録テーブル111,211,311は、サーバ装置100が監視先装置である場合のテーブルである。他のサーバ装置が監視先装置として存在する場合、当該他のサーバ装置に対応するアクセス記録テーブルが記憶部110,210,310に格納される。
ここで、アクセス記録テーブル111,211,311のデータ構造は同一である。以下では、アクセス記録テーブル111のデータ構造を説明するが、アクセス記録テーブル211,311も同様である。
アクセス記録テーブル111には、アクセスID(IDentifier)、監視項目、監視条件および通知条件の項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、1つの監視元装置の情報を示す。
アクセスIDの項目には、監視元装置を識別するための識別情報が設定される。該識別情報は、例えばIPアドレスである。ここで、サーバ装置100のIPアドレスは“192.168.0.1”とする。サーバ装置200のIPアドレスは“192.168.0.2”とする。サーバ装置300のIPアドレスは“192.168.0.3”とする。
監視項目の項目には、監視対象の項目が設定される。監視条件の項目には、該項目の監視を実行するタイミングを示す情報が設定される。通知条件の項目には、監視先装置での監視結果が正常か異常かを判断するための条件が設定される。
例えば、アクセス記録テーブル111には、アクセスIDが“192.168.0.2”、監視項目が“死活監視”、監視条件が“監視周期:10(msec(millisecond))”、通知条件が“応答遅延が10(msec)以内:正常、それ以外:異常”という情報が設定される。
これは、サーバ装置100に対する監視元装置として、サーバ装置200(IPアドレス“192.168.0.2”)が存在していることを示す。サーバ装置200により監視対象とされている項目が“死活監視”(ここでは、通信機能の死活監視とする)であることを示す。通信機能の死活監視は、例えばpingコマンドの実行(ICMPのエコー要求の送信およびエコー応答の受信)により行える。また、該項目の監視を実行するタイミングが、10ミリ秒ごとの周期であることを示す。また、エコー要求に対するエコー応答の応答遅延が10ミリ秒以内であれば、正常とみなし、該応答遅延がそれ以外(10ミリ秒よりも大きい)であれば、異常とみなすことを示す。
ここで、アクセス記録テーブル111には、監視元装置であるサーバ装置200の情報が設定されている。監視先装置であるサーバ装置100は、自身に対して“死活監視”を行うサーバ装置200の情報を管理する。
アクセス記録テーブル211には、監視元装置であるサーバ装置200,300の情報が設定されている。サーバ装置200は、サーバ装置300の監視情報も管理することで、サーバ装置300の監視を代行する。
アクセス記録テーブル311には、監視元装置であるサーバ装置300の情報が設定されている。サーバ装置300は、サーバ装置200から監視結果を取得するので、デフォルトの(自身についての)監視情報を管理する。
なお、アクセスIDはサーバ装置を一意に識別できれば、IPアドレス以外としてもよい。例えば、OSや所定のアプリケーションが付与した各サーバ装置の所定の識別情報としてもよい。
また、アクセス記録テーブル111,211,311では、監視項目として死活監視を例示したが、他の項目を監視対象としてもよい。例えば、CPUやディスクの利用率などのシステムリソースの利用状況、ネットワークトラフィックなどのネットワークの利用状況、所定のアプリケーションのサービスなどの稼働状況およびシステムログのメッセージなどを監視項目としてもよい。これら以外の項目を監視対象としてもよい。これらの項目は、例えば、SNMPにより監視できる。具体的には、監視実行部230はSNMPのマネージャとして機能し、該監視項目に関する観測結果をサーバ装置100に要求する。監視制御部120はSNMPのエージェントとして機能し、該要求に応じた観測結果を監視実行部230に応答する。また、通知条件の項目には、該監視項目に応じ、CPUなどの利用率が閾値割合を超えた場合、所定のサービスが停止している場合、所定のメッセージがシステムログに出力された場合、の各場合に異常とするなどの条件を設定してもよい。
次に、以上の構成の情報処理システムの処理手順を説明する。
図6は、監視先装置の処理を示すフローチャートである。以下、図6に示す処理をステップ番号に沿って説明する。
[ステップS11]監視制御部120は、監視要求を受信する。監視要求には、監視元装置のアクセスIDや監視項目の情報が含まれる。例えば、通信の死活監視であれば、ICMPのエコー要求が監視要求に対応する。
[ステップS12]監視制御部120は、記憶部110に記憶されたアクセス記録テーブル111を参照して、該監視要求に含まれるアクセスIDと同じアクセスID(IPアドレス)に対応付けて該監視要求に含まれる監視項目と同じ監視項目が記録済か判定する。記録済の場合、処理をステップS16に進める。記録済でない場合、処理をステップS13に進める。
[ステップS13]監視制御部120は、監視要求を送信した監視元装置に該監視要求に関する監視情報を問い合わせる。監視制御部120は、該監視元装置から監視情報を受信する。
[ステップS14]監視制御部120は、アクセス記録テーブル111を参照して、ステップS11で要求された監視項目と同じ項目を監視する他の監視元装置が存在するか否かを判定する。存在する場合、処理をステップS17に進める。存在しない場合、処理をステップS15に進める。
[ステップS15]監視制御部120は、ステップS13で受信した監視情報をアクセス記録テーブル111に記録する。
[ステップS16]監視制御部120は、ステップS12の監視要求に対して結果を応答する。例えば、通信機能の死活監視であれば、ICMPのエコー応答が該結果の応答に対応する。その後、処理を終了する。
[ステップS17]監視制御部120は、ステップS12の監視要求に対して結果を応答する。具体例は、ステップS16と同様である。
[ステップS18]監視制御部120は、監視の代行を依頼する監視元装置を選択する。具体的には、監視制御部120は、アクセス記録テーブル111に設定された該項目の監視を行っている監視元装置と、ステップS11の監視要求の送信元の監視元装置との何れかのうち、通信の応答時間の短い方を代行依頼先として選択する。例えば、監視制御部120は、pingコマンドを各監視元装置に対して実行して各々の応答時間を取得することで、通信の応答時間を比較できる。
[ステップS19]監視制御部120は、ステップS18で代行依頼先としなかった方の監視元装置に対し、該監視項目につき、監視要求を送信しないよう指示する。
[ステップS20]監視制御部120は、ステップS17で代行依頼先として選択した監視元装置に監視代行を依頼する。このとき、監視制御部120は、他の監視元装置の監視情報を、依頼先の監視元装置に送信する。
このようにして、サーバ装置100は、監視要求を受け付けたとき、同じ項目について監視する他の監視元装置を検知する。サーバ装置100は、同じ項目を監視する複数の監視元装置のうちの1つに、他の監視元装置の分の監視を代行するよう依頼する。これにより、同じ項目を監視する監視元装置を、1つの監視元装置に集約する。
例えば、サーバ装置300による監視をサーバ装置200に代行させることで、該項目を監視する監視元装置をサーバ装置200に集約できる。
なお、例えばSNMPによりサーバ装置100の監視を行う場合には、サーバ装置100は監視要求としてSNMPによる要求を受信する(ステップS11)。サーバ装置100は、該要求に対してSNMPによる応答を監視元装置に送信する(ステップS16)。
図7は、監視元装置の処理を示すフローチャートである。以下、図7に示す処理をステップ番号に沿って説明する。なお、以下では、サーバ装置200を例示して説明するが、サーバ装置300も同様の手順となる。
[ステップS21]監視実行部230は、記憶部210に記憶されたアクセス記録テーブル211を参照して、監視中の項目で、監視条件が成立したか否かを判定する。監視条件が成立した場合、処理をステップS22に進める。監視条件が成立していない場合、処理をステップS23に進める。
[ステップS22]監視実行部230は、アクセス記録テーブル211を参照して、該監視条件に対応する監視要求をサーバ装置100(監視先装置)に送信する。
[ステップS23]監視実行部230は、サーバ装置100から監視情報の問い合わせ(監視項目を指定する情報を含む)を受けたか否かを判定する。監視情報の問い合わせを受けた場合、処理をステップS24に進める。監視情報の問い合わせを受けていない場合、処理をステップS25に進める。
[ステップS24]監視実行部230は、監視情報の問い合わせに応じ、アクセス記録テーブル211を参照して、指定された監視項目についての監視情報をサーバ装置100に送信する。
[ステップS25]監視実行部230は、サーバ装置100から監視要求に対する応答(監視結果)を受信したか否かを判定する。監視要求に対する応答を受信した場合、処理をステップS26に進める。監視要求に対する応答を受信していない場合、処理をステップS28に進める。
[ステップS26]監視実行部230は、アクセス記録テーブル211に設定された通知条件と監視結果とを比較して、異常の有無を判定する。異常ありの場合、処理をステップS27に進める。異常なしの場合、処理をステップS28に進める。
[ステップS27]監視実行部230は、先にサーバ装置100に送信した監視要求が自身の監視条件によって送信されたものである場合、所定の異常時処理を実行する。例えば監視実行部230は、管理者に異常を通知する、所定の異常時処理を実行する、などが考えられる。通知処理部240は、先にサーバ装置100に送信した監視要求が他の監視元装置(サーバ装置300)の監視条件によって送信されたものである場合、監視実行部230から監視結果を取得して、該監視元装置(サーバ装置300)に通知する。
[ステップS28]監視実行部230は、サーバ装置100からある項目に対する監視要求の停止指示を受信したか否かを判定する。停止指示を受信した場合、処理をステップS29に進める。停止指示を受信していない場合、処理をステップS30に進める。
[ステップS29]監視実行部230は、指示を受けた項目につき監視要求の送信を停止する。この場合、該項目の監視が他の監視元装置(サーバ装置300)に代行依頼されたことを意味する。すなわち、以後、該項目の監視結果は該他の監視元装置(サーバ装置300)から通知される。
[ステップS30]監視実行部230は、他の監視元装置(サーバ装置300)から監視結果の通知を受信したか否かを判定する。監視結果の通知を受信した場合、処理をステップS26に進める。監視結果の通知を受信していない場合、処理をステップS31に進める。
[ステップS31]監視実行部230は、サーバ装置100から監視代行依頼を受信したか否かを判定する。監視代行依頼を受信した場合、処理をステップS32に進める。監視代行依頼を受信していない場合、処理をステップS34に進める。
[ステップS32]監視実行部230は、監視代行依頼とともに受信した監視情報をアクセス記録テーブル211に記録する。
[ステップS33]監視実行部230は、アクセス記録テーブル211を参照し、同じ項目を監視する他の監視元装置の監視条件に基づいて、監視スケジュールを調整する。監視スケジュールの調整方法は後述する。
[ステップS34]監視実行部230は、自身の監視機能が停止されたか否かを判定する。停止された場合、処理を終了する。停止されていない場合、処理をステップS21に進める。
このようにして、サーバ装置200は、サーバ装置100の監視を行う。サーバ装置300では、監視実行部330が監視実行部230の処理を行い、通知処理部340が通知処理部240の処理を行う。
なお、ステップS13,S14は順序を逆にしてもよい。すなわち、ステップS14の処理の後、ステップS15,S17の直前にステップS13を実行してもよい。
更に、ステップS19,S20は順序を逆にしてもよい。
次に、監視処理全体の具体的な流れを説明する。
図8は、監視代行依頼の処理を示すシーケンス図である。以下、図8に示す処理をステップ番号に沿って説明する。なお、ステップST101の直前において、アクセス記録テーブル111には、何れの監視元装置も設定されていないとする(サーバ装置100は監視されていない状態)。ステップST101の直前において、アクセス記録テーブル211にはサーバ装置200の監視情報が設定されており、アクセス記録テーブル311にはサーバ装置300の監視情報が設定されているとする。
[ステップST101]サーバ装置200は、サーバ装置100に監視要求を送信する。該監視要求は、通信機能の死活監視を行うためのものであるとする(例えば、ICMPのエコー要求)。サーバ装置100は、該監視要求を受信する。
[ステップST102]サーバ装置100は、監視要求の内容に基づき、該監視要求を送信したサーバ装置200のアクセスID(IPアドレス)および要求された監視項目を対応付けた状態で、アクセス記録テーブル111に設定済であるかを確認する。サーバ装置100は、該IPアドレスおよび監視項目がアクセス記録テーブル111に未設定であると判断する。すると、サーバ装置100は、サーバ装置200に対して、監視情報を問い合わせる。
[ステップST103]サーバ装置200は、問い合わせに応じて、監視情報をサーバ装置100に送信する。サーバ装置100は、該監視情報を受信する。
[ステップST104]サーバ装置100は、サーバ装置200の監視情報をアクセス記録テーブル111に記録する。
[ステップST105]サーバ装置100は、ステップST101で受信した監視要求に対して応答する(例えば、ICMPのエコー応答)。サーバ装置200は、該応答を受信する。サーバ装置200は、アクセス記録テーブル211を参照して、自身の該監視項目の通知条件に基づき、監視結果が異常であるか判断する。サーバ装置200は、異常を検知した場合には、所定の異常時処理を実行する。
[ステップST106]サーバ装置300は、サーバ装置100に監視要求を送信する。該監視要求は、通信機能の死活監視を行うためのものであるとする(例えば、ICMPエコー要求)。サーバ装置100は、該監視要求を受信する。
[ステップST107]サーバ装置100は、監視要求の内容に基づき、該監視要求を送信したサーバ装置300のアクセスID(IPアドレス)および要求された監視項目を対応付けた状態で、アクセス記録テーブル111に設定済であるかを確認する。サーバ装置100は、該IPアドレスおよび監視項目がアクセス記録テーブル111に未設定であると判断する。すると、サーバ装置100は、サーバ装置300に対して、監視情報を問い合わせる。
[ステップST108]サーバ装置300は、問い合わせに応じて、監視情報をサーバ装置100に送信する。サーバ装置100は、該監視情報を受信する。
[ステップST109]サーバ装置100は、アクセス記録テーブル111を参照して、サーバ装置300から受信した監視要求により要求された監視項目(通信機能の死活監視)と同じ項目が他の監視元装置により監視されているか確認する。サーバ装置100は、同じ項目がサーバ装置200からも監視されていることを検知する。
[ステップST110]サーバ装置100は、ステップST106で受信した監視要求に対して応答する(例えば、ICMPのエコー応答)。サーバ装置300は、該応答を受信する。サーバ装置300は、アクセス記録テーブル311を参照して、自身の該監視項目の通知条件に基づき、監視結果が異常であるか判断する。サーバ装置300は、異常を検知した場合には、所定の異常時処理を実行する。
[ステップST111]サーバ装置100は、サーバ装置300の応答時間を測定する。例えば、サーバ装置100は、サーバ装置300に対してpingコマンドを実行し、ICMPのエコー要求を送信する。サーバ装置100は、サーバ装置300からICMPのエコー応答を受信する。サーバ装置100は、エコー要求からエコー応答までの時間を計測して応答時間を測定する。
[ステップST112]サーバ装置100は、サーバ装置200の応答時間を測定する。測定方法の具体例は、ステップST111と同様である。
[ステップST113]サーバ装置100は、ステップST111,ST112の計測結果に基づいて、代行依頼先の監視元装置を選択する。具体的には、応答時間の短い方を代行依頼先として選択する。ここでは、サーバ装置200の応答時間の方が、サーバ装置300の応答時間よりも、短かったとする。サーバ装置100は、サーバ装置200を代行依頼先として選択する。
[ステップST114]サーバ装置100は、ステップST106で受信した監視要求に係る項目につき監視要求の停止を、サーバ装置300に指示する。サーバ装置300は、この指示を受けた後、該項目につきサーバ装置100への監視要求の送信を停止する。
[ステップST115]サーバ装置100は、ステップST108で受信した監視情報をサーバ装置200に送信して監視代行を依頼する。サーバ装置200は、監視情報を受信し、アクセス記録テーブル211に記録する。これにより、アクセス記録テーブル211に、サーバ装置300の監視情報が設定される。
このようにして、サーバ装置100は、サーバ装置300による監視を代行するようサーバ装置200に依頼する。このとき、応答時間の短い方を代行依頼先として選択するので、情報処理システムにおける監視のための処理時間を短縮できる。
なお、ステップST111,ST112は、逆の順で行ってもよいし、並行して行ってもよい。ステップST114,ST115は、逆の順で行ってもよいし、並行して行ってもよい。
また、ステップST111,ST112では、応答時間以外の指標を監視元装置から取得してもよい。ステップST113では、該応答時間以外の指標に基づいて代行依頼先を選択してもよい。例えば、応答時間以外の指標として、サーバ装置200,300の負荷を示す情報(例えば、CPU利用率やRAM利用率など)を取得してもよい。例えば、負荷の小さい方を代行依頼先として選択すれば、サーバ装置200,300の負荷を分散できる。
また、ステップST111〜ST115において、サーバ装置200よりもサーバ装置300の応答時間の方が、サーバ装置200の応答時間よりも、短いこともある。その場合は、次のような流れとなる。サーバ装置100は、サーバ装置300を代行依頼先として選択する。サーバ装置100は、該監視項目につき監視要求の停止をサーバ装置200に指示する。サーバ装置100は、ステップST106で受信した監視要求に係る監視項目についての監視情報を、サーバ装置200に問い合わせる。このとき、サーバ装置200が自身以外の他の監視元装置の監視を代行していれば、該他の監視元装置の監視情報もサーバ装置100に送信する。サーバ装置100は、サーバ装置200から取得した監視情報をサーバ装置300に送信する(監視代行依頼)。サーバ装置300は、該監視情報をアクセス記録テーブル311に記録する。
更に、ステップST108において、サーバ装置100は、サーバ装置300から受信した監視情報をアクセス記録テーブル111に記録しておいてもよい。このように、監視情報の問い合わせを行った場合に、受信した監視情報を全てアクセス記録テーブル111に記録しておけば、例えば、何れの監視元装置が他の何れの監視元装置の監視を代行しているかサーバ装置100側で管理できる。したがって、代行依頼先を現在監視代行を行っている監視元装置と異なる監視元装置とする場合に、サーバ装置100はアクセス記録テーブル111を参照して監視情報を取得し、監視代行依頼を行える。よって、現在監視代行を行っている監視元装置に監視情報を問い合わせる処理を省け、手順を簡略化できる。
上記ステップST115の後、サーバ装置200は、サーバ装置300の監視を代行する。具体的には、サーバ装置200は、アクセス記録テーブル211を参照して、自身の監視条件が成立したとき、または、サーバ装置300の監視条件が成立したときに、対応する項目の監視要求をサーバ装置300に送信する。次に、その流れを説明する。
図9は、監視代行の処理を示すシーケンス図である。以下、図9に示す処理をステップ番号に沿って説明する。
[ステップST121]サーバ装置200は、アクセス記録テーブル211を参照して、自身のアクセスIDに対応する監視条件が成立したことを検知する。ここで、通信機能の死活監視を行うための条件が成立したとする。
[ステップST122]サーバ装置200は、サーバ装置100に該監視項目(通信機能の死活監視)についての監視要求(例えば、ICMPのエコー要求)をサーバ装置100に送信する。サーバ装置100は、該監視要求を受信する。
[ステップST123]サーバ装置100は、アクセス記録テーブル111を参照して、サーバ装置100のアクセスIDに対応付けて該要求に係る監視項目が設定されていることを確認する。すると、サーバ装置100は、ステップST122で受信した監視要求に対する応答(例えば、ICMPのエコー応答)をサーバ装置200に送信する。サーバ装置200は、該応答を受信する。サーバ装置200は、アクセス記録テーブル211を参照して、自身の該監視項目の通知条件に基づき、監視結果が異常であるか判断する。サーバ装置200は、異常を検知した場合には、所定の異常時処理を実行する。
[ステップST124]サーバ装置200は、アクセス記録テーブル211を参照して、サーバ装置300のアクセスIDに対応する監視条件が成立したことを検知する。ここで、通信機能の死活監視を行うための条件が成立したとする。
[ステップST125]サーバ装置200は、サーバ装置100に該監視項目(通信機能の死活監視)についての監視要求(例えば、ICMPのエコー要求)をサーバ装置100に送信する。サーバ装置100は、該監視要求を受信する。
[ステップST126]サーバ装置100は、アクセス記録テーブル111を参照して、サーバ装置100のアクセスIDに対応付けて該要求に係る監視項目が設定されていることを確認する。すると、サーバ装置100は、ステップST125で受信した監視要求に対する応答(例えば、ICMPのエコー応答)をサーバ装置200に送信する。サーバ装置200は、該応答を受信する。
[ステップST127]サーバ装置200は、アクセス記録テーブル211を参照して、サーバ装置300の該監視項目の通知条件に基づき、監視結果が異常であるか判断する。サーバ装置200は、サーバ装置300の通知条件により異常を検知したとする。すると、サーバ装置200は、監視結果をサーバ装置300に通知する。サーバ装置300は、該監視結果を異常と判断し、所定の異常時処理を実行する。
このようにして、サーバ装置200は、サーバ装置300の監視を代行する。
ここで、ステップST121では、サーバ装置200自身の監視条件が成立していると同時に、サーバ装置300の監視条件が成立していることもある。その場合、ステップST123において、サーバ装置200は、サーバ装置300の通知条件による異常検知も行う。サーバ装置300の通知条件で異常が検知されれば、サーバ装置200は、サーバ装置300に監視結果を通知する。同様に、ステップST124では、サーバ装置300の監視条件が成立していると同時に、サーバ装置200自身の監視条件が成立していることもある。その場合、ステップST127において、サーバ装置200は、自身の通知条件による異常検知も行う。自身の通知条件で異常が検知されれば、サーバ装置200は、所定の異常時処理を実行する。
なお、ステップST127では、サーバ装置200がサーバ装置300の通知条件により異常と判断したときにサーバ装置300に監視結果を通知するものとした。一方、通知条件により正常と判断したときにもサーバ装置300に監視結果を通知してもよい。
あるいは、サーバ装置200が自身の通知条件で異常が発生したと判断したとき、サーバ装置300の通知条件では異常でなくても、サーバ装置300に監視結果を通知してもよい。また、サーバ装置200が自身の通知条件で異常が発生したと判断したとき、サーバ装置300の監視条件が成立していなくても、サーバ装置300に監視結果を通知してもよい。
ところで、サーバ装置200は、監視スケジュールを調整して、より効率的に監視を行える。次に、その具体例を説明する。
図10は、スケジュールの調整例を示す図である。監視スケジュールAは、サーバ装置200自身の監視条件に基づく監視スケジュールである。監視スケジュールBは、サーバ装置300の監視条件に基づく監視スケジュールの第1の例である。監視スケジュールCは、サーバ装置300の監視条件に基づく監視スケジュールの第2の例である。
まず、監視スケジュールAに対する監視スケジュールBの調整例を説明する。
監視スケジュールAは、タイミングT11,T12,T13,T14,T15,T16でサーバ装置100の通信機能の死活監視を行うことを示す。各タイミングの周期は、例えば10ミリ秒である。
監視スケジュールBは、タイミングT21,T22,T23でサーバ装置100の通信機能の死活監視を行うことを示す。各タイミングの周期は、例えば20ミリ秒である。
監視実行部230が監視制御部120から監視の代行依頼を受けたとき、新たに監視スケジュールBを生成して監視を行うとする。すると、監視実行部230は、タイミングT11〜T16,T21〜T23の各タイミングで監視制御部120に監視要求を送信する。しかし、これらの各タイミングで監視要求を送信すると、サーバ装置100およびネットワークの負荷に影響を及ぼし得る。
そこで、監視実行部230は、監視スケジュールBを監視スケジュールAに集約する。具体的には、タイミングT21,T22,T23を、タイミングT21a,T22a,T23aにずらし、タイミングT12,T14,T16の各タイミングで1回ずつの死活監視を行うようにする。タイミングT12,T14,T16で送信した監視要求に対して応答を受けた場合、監視実行部230は、自身およびサーバ装置300の両方の通知条件で異常を検知する。
このように、1つの監視要求に対する監視結果により、複数の監視元装置の通知条件による異常検知を行えば、サーバ装置100に集中する監視要求の数やネットワークを流れる監視要求のパケット量を低減できる。よって、サーバ装置100やネットワークの負荷を一層低減でき、監視の効率化を図れる。
次に、監視スケジュールAに対する監視スケジュールCの調整例を説明する。
監視スケジュールCは、タイミングT31,T32,T33でサーバ装置100の通信機能の死活監視を行うことを示す。各タイミングの周期は、例えば、25ミリ秒である。ここで、タイミングT31,T33は、タイミングT11,T16に同期している。よって、タイミングT31,T33は、監視スケジュールBと同様に監視スケジュールAに集約できる。しかし、タイミングT32は、監視スケジュールAの何れのタイミングとも同期していない。そこで、監視実行部230は、該タイミングT32については、監視スケジュールAにおける直前のタイミングT13からの差分としてスケジュールを管理する。例えば、タイミングT32をタイミングT13から5ミリ秒後として管理する。このように、監視スケジュールCの一部を監視スケジュールAに集約し、他の一部を監視スケジュールAからの差分として管理することで、サーバ装置100やネットワークの負荷を低減できる。併せて、監視実行部230は、監視スケジュールCに含まれる各監視タイミングを適切にカバーして監視代行を行える。
また、監視スケジュールを集約すれば、サーバ装置200は複数の監視スケジュールを管理しなくてよくなる。よって、サーバ装置200の監視処理に伴う負荷も軽減できる。
図11は、監視処理例を示す図である。第2の実施の形態の情報処理システムは、サーバ装置100,200,300を含むとしたが、更に多数のサーバ装置を含み得る。例えば、監視先装置としてサーバ装置100aを、監視元装置としてサーバ装置300aを含むとする。サーバ装置100aは、サーバ装置100と同様の構成により実現できる。サーバ装置300aは、サーバ装置300と同様の構成により実現できる。サーバ装置300,300aは、ネットワーク10に配置されたネットワーク装置30,20を介してサーバ装置100,100a,200と接続されている。
サーバ装置200,300,300aは、サーバ装置100,100aに対して通信機能の死活監視を行っている。このとき、サーバ装置200は、次のようにしてサーバ装置300,300aの監視を代行する。図11(A)は、サーバ装置200が監視代行する前の情報処理システムを示す。
図11(A)において、サーバ装置100は、監視元装置であるサーバ装置200,300のうち、通信の応答時間の短い方を選択して、通信機能の監視代行を依頼する。ここでは、サーバ装置300,300aは、ネットワーク装置30,20を介してサーバ装置100と接続している。このため、サーバ装置100,100aに対する応答時間は、サーバ装置200よりもサーバ装置300,300aの方が長くなる可能性が高い。サーバ装置100は、サーバ装置200の方がサーバ装置300よりも応答時間が短いと判断すると、サーバ装置200にサーバ装置300の監視の代行を依頼する。サーバ装置100aは、サーバ装置200の方がサーバ装置300aよりも応答時間が短いと判断すると、サーバ装置200にサーバ装置300aの監視の代行を依頼する。
図11(B)は、サーバ装置200が監視代行しているときの情報処理システムを示す。サーバ装置200は、サーバ装置300,300aの監視を代行する。その場合、サーバ装置200は、サーバ装置300の監視条件で、サーバ装置100の監視を行う。その結果が、サーバ装置300の通知条件に照らして異常であれば、サーバ装置300に監視結果を通知する。同様に、サーバ装置200は、サーバ装置300aの監視条件で、サーバ装置100aの監視を行う。その結果が、サーバ装置300aの通知条件に照らして異常であれば、サーバ装置300aに監視結果を通知する。
このように、サーバ装置200は、複数の監視元装置の監視を代行することもできる。
以上で説明したように第2の実施の形態では、情報処理システムに含まれる装置の監視を効率的に行える。
具体的には、ある監視先装置に対して、同じ項目の監視を行う複数の監視元装置が存在する場合、そのうちの1つの監視元装置に、他の監視元装置の監視を代行させる。このため、例えば、監視先装置では、該1つの監視元装置に対して応答すればよくなる。また、監視先装置は、該1つの監視元装置以外の監視元装置には、該項目につき監視要求の停止を指示することで、ネットワーク上への余分な監視要求の送出を抑制できる。このため、監視先装置やネットワークの負荷を軽減できる。
また、監視先装置は、複数の監視元装置のうち、各監視元装置の性能や能力などを示す指標に基づいて、代行依頼先を選択する。このため、情報処理システムにおける監視に係る処理の高速化を図れる。
また、代行依頼を受けた監視元装置は、他の監視元装置の監視条件に基づいて、監視スケジュールを調整する。具体的には、複数の監視スケジュールを集約して、監視先装置に対する監視要求の送出の低減を図る。このため、監視元装置、監視先装置およびネットワークの負荷を一層軽減できる。
[第3の実施の形態]
次に、第3の実施の形態を説明する。前述の第2の実施の形態との相違点を主に説明し、同様の事項は説明を省略する。
第2の実施の形態では、サーバ装置100を監視先装置(監視される側)、サーバ装置200,300を監視元装置(監視する側)として説明した。これに対し、サーバ装置100,200,300が相互に監視を行い合う場合も考え得る。すなわち、サーバ装置100,200,300の何れもが、監視先装置および監視元装置の両方または何れか一方となり得る。第3の実施の形態では、このような情報処理システムを想定する。
ここで、第3の実施の形態の情報処理システムの全体構成は、図2で説明した第2の実施の形態の情報処理システムの全体構成と同一であるため説明を省略する。第3の実施の形態の情報処理システムに含まれるサーバ装置を、便宜的に第2の実施の形態と同一の符号を付して説明する。第3の実施の形態のサーバ装置100,200,300のハードウェア例は、図3で説明した第2の実施の形態のサーバ装置100のハードウェア例と同一であるため説明を省略する。
図12は、第3の実施の形態のサーバ装置の機能を示すブロック図である。サーバ装置100は、記憶部110、監視制御部120、監視実行部130および通知処理部140を有する。
ここで、記憶部110および監視制御部120は、図4で同一の符号・名称を付して説明した構成要素と同一である。監視実行部130は、図4で説明した監視実行部230,330と同じ機能を有する。通知処理部140は、図4で説明した通知処理部240,340と同じ機能を有する。
サーバ装置200は、記憶部210、監視制御部220、監視実行部230および通知処理部240を有する。
ここで、記憶部210、監視実行部230および通知処理部240は、図4で同一の符号・名称を付して説明した構成要素と同一である。監視制御部220は、図4で説明した監視制御部120と同じ機能を有する。
サーバ装置300は、記憶部310、監視制御部320、監視実行部330および通知処理部340を有する。
ここで、記憶部310、監視実行部330および通知処理部340は、図4で同一の符号・名称を付して説明した構成要素と同一である。監視制御部320は、図4で説明した監視制御部120と同じ機能を有する。
このように、サーバ装置100,200,300に監視先装置および監視元装置の両方の機能を担う構成要素を設ける。これにより、サーバ装置100,200,300それぞれが相互に監視可能とする。サーバ装置100は、監視元装置として機能する場合、図7で示した処理手順により、監視先装置の監視を行う。サーバ装置200,300は、監視先装置として機能する場合、図6で示した処理手順により、監視元装置に監視の代行依頼を行う。
これにより、サーバ装置100,200,300が相互に監視を行う情報処理システムにおいても、第2の実施の形態と同様の効果を得られる。すなわち、情報処理システムに含まれる装置の監視を効率的に行える。
具体的には、同じ監視先装置の同じ項目を監視する複数の監視元が存在する場合、そのうちの1つの監視元装置に、他の監視元装置の監視を代行させる。また、監視先装置は、該1つの監視元装置以外の監視元装置には、該項目につき監視要求の停止を指示する。これにより、監視先装置に監視要求が集中するのを抑制し、監視先装置の負荷を軽減できる。また、ネットワーク上への余分な監視要求の送出を抑制でき、ネットワークの負荷を軽減できる。
第3の実施の形態の情報処理システムでは、サーバ装置100,200,300の何れもが監視元装置となり得る。このため、監視要求の送出数が過大となる可能性がある。したがって、余分な監視要求の送出を抑えて監視先装置やネットワークの負荷を軽減する利点は、特に有用である。
また、監視先装置は、複数の監視元装置のうち、各監視元装置の性能や能力などを示す指標に基づいて、代行依頼先を選択する。このため、情報処理システムにおける監視に係る処理の高速化を図れる。
また、代行依頼を受けた監視元装置は、他の監視元装置の監視条件に基づいて、監視スケジュールを調整する。具体的には、複数の監視スケジュールを集約して、監視先装置に対する監視要求の送出の低減を図る。このため、監視元装置、監視先装置およびネットワークの負荷を一層軽減できる。
なお、第3の実施の形態のサーバ装置100,200,300の構成要素の機能は、第2の実施の形態で説明したように、例えば各サーバ装置が備えるCPUが所定のプログラムを実行することで各サーバ装置上に実現される。各サーバ装置の構成要素の機能を、専用のハードウェアによって実現してもよい。
また、第2,第3の実施の形態では、サーバ装置が監視先装置および監視元装置となる場合を例示したがサーバ装置に限られない。例えば、ネットワーク装置を監視元装置としてもよい。より具体的には、例えばサーバ装置の死活監視を行って、処理要求を分散する負荷分散装置を監視元装置としてもよい。また、ネットワーク装置、複数の記録媒体を管理するライブラリ装置、サーバ装置のデータを格納する外部記憶装置およびパーソナルコンピュータなどを監視先装置としてもよい。
1,2,3 情報処理装置
1a 記憶部
1b 制御部
1c 指示部

Claims (10)

  1. 第1の情報処理装置から監視対象の項目に対する監視のための要求を受信すると、前記項目の監視を行う条件を前記第1の情報処理装置に問い合わせるとともに、他の情報処理装置の識別情報に対応付けて前記他の情報処理装置による監視対象項目と監視を行う条件とを記憶する記憶部を参照して、自身に対して前記項目と同じ項目の監視を行う第2の情報処理装置が存在するか確認し、
    前記第2の情報処理装置が存在する場合、前記第1の情報処理装置および前記第2の情報処理装置の何れか1つの情報処理装置に、前記1つの情報処理装置以外の情報処理装置が前記項目の監視を行う条件で、前記項目の監視を行うよう指示するとともに、前記1つの情報処理装置以外の情報処理装置に前記項目に対する監視のための要求を送信しないよう指示する、
    処理をコンピュータに実行させる情報処理プログラム。
  2. 前記第1の情報処理装置および前記第2の情報処理装置に関する所定の指標に基づいて、前記1つの情報処理装置を選択する、処理をコンピュータに実行させる請求項1記載の情報処理プログラム。
  3. 前記指標は、前記第1の情報処理装置と前記第2の情報処理装置それぞれとの間の通信の応答速度である、請求項2記載の情報処理プログラム。
  4. 前記1つの情報処理装置以外の情報処理装置の識別情報を前記1つの情報処理装置に通知する、処理をコンピュータに実行させる請求項1乃至3の何れか一項に記載の情報処理プログラム。
  5. 自身が監視する第1の情報処理装置から、自身が監視する項目と同じ項目に対して監視を行う条件と第2の情報処理装置の識別情報とを受信して記憶部に格納し、
    前記記憶部に格納された前記条件に基づいて、前記第1の情報処理装置の前記項目の監視を行い、
    前記監視の結果を前記第2の情報処理装置に送信する、
    処理をコンピュータに実行させる情報処理プログラム。
  6. 前記記憶部に格納された前記項目の監視を行う自身の条件および前記第1の情報処理装置から受信した前記条件に基づいて、前記監視を行う監視スケジュールを決定する、処理をコンピュータに実行させる請求項5記載の情報処理プログラム。
  7. 前記自身の条件が第1の周期で監視を行うことを示し、前記第1の情報処理装置から受信した前記条件が第2の周期で監視を行うことを示すとき、第1の周期による監視タイミングと第2の周期による監視タイミングとが合うように前記監視スケジュールを決定する、処理をコンピュータに実行させる請求項6記載の情報処理プログラム。
  8. 前記第1の情報処理装置から、前記第2の情報処理装置が前記項目の監視結果につき異常と判断するための通知条件を受信して、記憶部に格納し、
    前記記憶部に格納された前記通知条件に基づいて、前記監視の結果が異常と判断されたときに、前記監視の結果を前記第2の情報処理装置に送信する、
    処理をコンピュータに実行させる請求項5乃至7の何れか一項に記載の情報処理プログラム。
  9. 第1の情報処理装置から監視対象の項目に対する監視のための要求を受信すると、前記項目の監視を行う条件を前記第1の情報処理装置に問い合わせるとともに、他の情報処理装置の識別情報に対応付けて前記他の情報処理装置による監視対象項目と監視を行う条件とを記憶する記憶部を参照して、自身に対して前記項目と同じ項目の監視を行う第2の情報処理装置が存在するか確認する制御部と、
    前記第2の情報処理装置が存在する場合、前記第1の情報処理装置および前記第2の情報処理装置の何れか1つの情報処理装置に、前記1つの情報処理装置以外の情報処理装置が前記項目の監視を行う条件で、前記項目の監視を行うよう指示するとともに、前記1つの情報処理装置以外の情報処理装置に前記項目に対する監視のための要求を送信しないよう指示する指示部と、
    を有する情報処理装置。
  10. 自身が監視する第1の情報処理装置から、自身が監視する項目と同じ項目に対して監視を行う条件と第2の情報処理装置の識別情報とを受信して記憶部に格納し、前記記憶部に格納された前記条件に基づいて、前記第1の情報処理装置の前記項目の監視を行う監視実行部と、
    前記監視の結果を前記第2の情報処理装置に送信する送信部と、
    を有する情報処理装置。
JP2011175703A 2011-08-11 2011-08-11 情報処理プログラムおよび情報処理装置 Expired - Fee Related JP5682502B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011175703A JP5682502B2 (ja) 2011-08-11 2011-08-11 情報処理プログラムおよび情報処理装置
US13/489,727 US9075888B2 (en) 2011-08-11 2012-06-06 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011175703A JP5682502B2 (ja) 2011-08-11 2011-08-11 情報処理プログラムおよび情報処理装置

Publications (2)

Publication Number Publication Date
JP2013037655A JP2013037655A (ja) 2013-02-21
JP5682502B2 true JP5682502B2 (ja) 2015-03-11

Family

ID=47678348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011175703A Expired - Fee Related JP5682502B2 (ja) 2011-08-11 2011-08-11 情報処理プログラムおよび情報処理装置

Country Status (2)

Country Link
US (1) US9075888B2 (ja)
JP (1) JP5682502B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9280440B2 (en) * 2013-03-18 2016-03-08 Hitachi, Ltd. Monitoring target apparatus, agent program, and monitoring system
JP6440986B2 (ja) * 2014-08-01 2018-12-19 ローム株式会社 給電装置およびそのコントローラ、制御方法、それを用いた電子機器
JP2016103144A (ja) * 2014-11-28 2016-06-02 富士通株式会社 仮想マシン配備方法、仮想マシン配備プログラム及び仮想マシン配備システム
JP2017130152A (ja) * 2016-01-22 2017-07-27 セイコーエプソン株式会社 ネットワークシステム、印刷装置、及び、印刷装置の制御方法
JP7307536B2 (ja) * 2018-11-08 2023-07-12 シャープ株式会社 デバイス情報監視装置及びデバイス情報監視方法
JP7474168B2 (ja) 2020-09-25 2024-04-24 株式会社日立製作所 監視システムおよび障害監視方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11243389A (ja) 1998-02-26 1999-09-07 Nippon Telegr & Teleph Corp <Ntt> ネットワーク監視方法及びその装置
US20040205414A1 (en) * 1999-07-26 2004-10-14 Roselli Drew Schaffer Fault-tolerance framework for an extendable computer architecture
JP4299928B2 (ja) 1999-08-30 2009-07-22 株式会社東芝 分散監視制御システム及び方法並びに分散監視制御用ソフトウェアを記録した記録媒体
JP4491167B2 (ja) * 2001-04-27 2010-06-30 富士通株式会社 通信システムにおける管理装置のバックアップシステム
JP2003051822A (ja) * 2001-08-06 2003-02-21 Nec Commun Syst Ltd ネットワーク監視システム、ネットワーク監視方法、およびそのプログラム
JP2004062441A (ja) * 2002-07-26 2004-02-26 Ntt Docomo Inc サービス管理システム、サービス管理方法、サーバ管理装置、通信端末及びサーバ装置
JP2006139649A (ja) 2004-11-15 2006-06-01 Hitachi Ltd 被監視マシンとエージェントのポート番号変更方法およびシステム
US20100299455A1 (en) * 2009-05-21 2010-11-25 Motorola, Inc. Mobile Computing Device and Method with Enhanced Poling Management

Also Published As

Publication number Publication date
US9075888B2 (en) 2015-07-07
US20130042243A1 (en) 2013-02-14
JP2013037655A (ja) 2013-02-21

Similar Documents

Publication Publication Date Title
JP5682502B2 (ja) 情報処理プログラムおよび情報処理装置
US10509680B2 (en) Methods, systems and apparatus to perform a workflow in a software defined data center
JP5123955B2 (ja) 分散型ネットワーク管理システムおよび方法
US10511480B2 (en) Message flow management for virtual networks
US8578379B2 (en) Managing memory overload of java virtual machines in web application server systems
CN117176711A (zh) 用于监视服务的方法、设备和存储介质
US20090328027A1 (en) Cluster system, process for updating software, service provision node, and computer-readable medium storing service provision program
JP5982842B2 (ja) コンピュータ障害監視プログラム、方法、及び装置
US8266301B2 (en) Deployment of asynchronous agentless agent functionality in clustered environments
TW201447745A (zh) 用於虛擬化儲存單元的儲存單元選擇
CN105978721B (zh) 一种集群系统中监控服务运行状态的方法、装置和系统
WO2018214887A1 (zh) 数据存储方法、存储服务器、存储介质及系统
US9210059B2 (en) Cluster system
KR101211207B1 (ko) 캐시 클라우드 구조를 이용한 캐시 시스템 및 캐싱 서비스 제공 방법
CN111342986A (zh) 分布式节点管理方法及装置、分布式系统、存储介质
CN112527519A (zh) 一种高性能本地缓存方法、系统、设备及介质
JP2010039661A (ja) サーバ負荷分散装置,方法およびプログラム
US10855521B2 (en) Efficient replacement of clients running large scale applications
JP2006285453A (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP4863984B2 (ja) 監視処理プログラム、方法及び装置
CN111737028A (zh) Dubbo服务检测方法及装置
JP5006302B2 (ja) 監視プログラム、監視方法および情報処理装置
JP2009086758A (ja) コンピュータ・システム及びシステム管理プログラム
US11178256B2 (en) Business service providing system, business service recovery method, and business service recovery program
JP5764090B2 (ja) 端末状態検知装置および端末状態検知方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141211

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: 20141216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141229

R150 Certificate of patent or registration of utility model

Ref document number: 5682502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees