以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
図1は、第1の実施の形態に係るシステムの構成例を示す図である。第1の実施の形態に係るシステムには、情報収集装置1と、複数の情報提供装置2−1,・・・,2−i,2−j,・・・,2−nが含まれる。
情報収集装置1は、情報提供装置が提供する情報を収集する。情報収集装置1は、情報収集を実現するため、グルーピング手段1a、送信手段1b、格納手段1c、および記憶手段1dを有する。
グルーピング手段1aは、定期的に、複数の情報提供装置2−1〜2−nを複数の情報提供装置群にグループ分けする。図1の例では、1つの情報提供装置群を1グループとして、複数のグループが生成されている。例えば1回目のグループ分けでは、情報提供装置2−1〜2−iを含むグループ3−1と、情報提供装置2−j〜2−nを含むグループ3−2とが生成されている。また2回目のグループ分けでは、情報提供装置2−1,・・・を含むグループ4−1と、情報提供装置2−i〜2−nを含むグループ4−2とが生成されている。
送信手段1bは、グループ分けが行われると、各グループ3−1,3−2,4−1,4−2内の1台の情報提供装置に、その情報提供装置が属するグループ内の情報提供装置を巡回先として指定した、情報採取要求を送信する。例えば1回目のグループ分けが行われると、グループ3−1内の情報提供装置2−1とグループ3−2内の情報提供装置2−jとに情報採取要求が送信される。また2回目のグループ分けが行われると、グループ4−1内の情報提供装置2−1とグループ4−2内の情報提供装置2−iとに情報採取要求が送信される。
格納手段1cは、グループ内の情報提供装置間を巡回した情報採取要求を受信すると、受信した情報採取要求から、情報提供装置の情報を抽出して、記憶手段1dに格納する。
記憶手段1dは、情報提供装置から収集した情報を記憶する。
情報提供装置2−iは、採取手段2a、計算手段2b、判断手段2c、および送信手段2dを有する。なお、図1では、代表的に情報提供装置2−iの機能を示しているが、複数の情報提供装置2−j〜2−nは同じ機能の要素を有している。
採取手段2aは、情報採取要求を受信すると、自己の情報を採取する。例えば採取手段2aは、情報提供装置2−iの電源電圧などの状態に関する情報を採取する。そして採取手段2aは、採取した情報を情報採取要求に追加する。
計算手段2bは、1回目のグルーピング時に送信された第1の情報採取要求の、他の装置への送信前に、2回目のグルーピング時に送信された第2の情報採取要求を受信すると、グループ3−1とグループ4−2との情報提供装置の一致度を計算する。例えば計算手段2bは、グループ3−1とグループ4−2との両方に属する情報提供装置の数を、グループ3−1とグループ4−2と少なくともいずれか一方に属する情報提要装置の数で除算した結果を、一致度とする。
判断手段2cは、一致度に基づいて、第1の情報採取要求と第2の情報採取要求とのいずれか一方を破棄するか否かを判断する。例えば判断手段2cは、一致度が所定の閾値よりも大きい場合、一方の情報採取要求を破棄するものと判断する。例えば判断手段2cは、例えば100%未満の任意の値を閾値とし、一致度が閾値を超えていれば、一方の情報採取要求を破棄し、一致度が閾値以下であれば情報採取要求を破棄しないと判断する。
送信手段2dは、第1の情報採取要求に応じた情報採取中に第2の情報採取要求を受信しなければ、第1の情報採取要求を巡回させる第1のグループ3−1内の情報未採取の情報提供装置または情報収集装置1に、第1の情報採取要求を送信する。例えば送信手段2dは、第1のグループ3−1内に情報未採取の情報提供装置があれば、その情報処理装置のうちの1台に第1の情報採取要求を送信する。また送信手段2dは、第1のグループ3−1内に情報未採取の情報提供装置がなければ、情報収集装置1に第1の情報採取要求を送信する。
なお送信手段2dは、第1の情報採取要求に応じた情報採取中に第2の情報採取要求を受信した場合、判断手段2cの判断結果に応じた情報採取要求の送信を行う。例えば送信手段2dは、判断手段2cが一方の情報採取要求を破棄すると判断した場合、第1の情報採取要求と第2の情報採取要求との一方を破棄する。また送信手段2dは、破棄していない情報提供装置を、グループ3−1とグループ4−2とのうちの情報未採取の情報提供装置または情報収集装置1に送信する。
この際、送信手段2dは、破棄した情報提供装置に追加されている、他の情報提供装置で採取した情報を、送信する情報提供層装置に追加してもよい。これにより、一方の情報採取要求を破棄したとしても、採取済みの情報については情報収集装置1に送ることができる。
また送信手段2dは、破棄する情報採取要求に示されるグループ内の情報提供装置のうち、情報未採取の情報提供装置を、送信する情報提供装置の巡回先のグループに追加してもよい。これにより、一方の情報採取要求を破棄しても、破棄した情報採取要求の巡回先として設定されていたすべての情報提供装置から、情報を収集することができる。
判断手段2cが情報採取要求を破棄しないと判断した場合、送信手段2dは、グループ3−1内の情報未採取の情報提供装置、または情報収集装置1に、第1の情報採取要求を送信する。また情報採取要求を破棄しない場合、送信手段2dは、グループ4−2内の情報未採取の情報提供装置、または情報収集装置1に、第2の情報採取要求を送信する。
このようなシステムにおいて繰り返し巡回型ポーリングが行われる。ここで、1日目の巡回型ポーリングにおいて、グループ3−1内での情報採取要求の巡回が遅延したものとする。送信手段1bは、グループ3−1内の情報提供装置2−1に情報採取要求を送信し、その情報採取要求が、グループ3−1内の情報提供装置間で巡回する。そして、情報提供装置2−iは、グループ3−1内での情報採取要求の巡回順が最後であるものとする。
2回目の巡回型ポーリングでは、情報提供装置2−iは、グループ4−2に属している。そして、情報提供装置2−iは、2回目の巡回型ポーリングにおける、グループ4−2内での巡回順が最初であるものとする。すると、2回目の巡回型ポーリングの実施タイミングになると、情報収集装置1の送信手段1bから情報提供装置2−iに、情報採取要求が送信される。
ここで、2回目の巡回型ポーリングによる情報採取要求を情報提供装置2−iが受信したとき、情報提供装置2−iは、1回目の巡回型ポーリングによる情報採取要求に基づく情報採取中であるものとする。この場合、情報提供装置2−iでは、計算手段2bによりグループ3−1とグループ4−2との情報提供装置の一致度が計算される。図1の例では、グループ3−1とグループ4−2とのそれぞれに属する情報提供装置のうち、一致しているのは情報提供装置2−iのみである。そのため、一致度は非常に小さい値となる。
一致度が計算されると、判断手段2cによって、一致度に基づいて、重複して受信した情報採取要求のいずれか一方を破棄するか否かが判断される。例えばグループ3−1内の情報提供装置を巡回する情報採取要求を破棄してしまうと、グループ3−1内の情報提供装置2−i以外の情報提供装置から既に採取した情報が破棄されてしまう。そこで判断手段2cでは、例えば、一致度が所定の閾値より低いため、情報採取要求の破棄はしないと判断する。
情報採取要求を破棄するか否かの判断結果に基づき、送信手段2dによって、破棄しない情報採取要求が、他の情報提供装置または情報収集装置に送信される。例えば情報提供装置2−iは、グループ3−1内での情報採取要求の巡回順が最後である。そのため送信手段2dは、グループ3−1内を巡回してきた情報採取要求を、情報収集装置1に送信する。また情報提供装置2−iは、グループ4−2内での情報採取要求の巡回順が最初である。そのため送信手段2dは、グループ4−2内を巡回してきた情報採取要求を、グループ4−2内での巡回順が次の情報提供装置に送信する。
巡回型ポーリングにより情報提供装置間を巡回した情報採取要求は、巡回した情報提供装置から採取した情報が追加された後、情報収集装置1に送り返される。情報収集装置1では、格納手段1cにより、情報採取要求から、情報提供装置が採取した情報が抽出され、記憶手段1dに格納される。
上記の例では、情報採取要求を破棄しないものとしたが、例えば、2回目の巡回型ポーリング時においてグループ構成が変更されず、グループ3−1,3−2に2回目の巡回型ポーリングが行われる場合もある。このような場合、情報提供装置2−iにおいて情報採取要求が重複すると、2回の巡回型ポーリングそれぞれのグループに属する情報提供装置の一致度が100%となる。一致度が100%であるなら、一方の情報採取要求を破棄しても、情報を採取する情報提供装置に漏れがでることはない。また一致度が100%でなくても、例えば90%程度と高い値であれば、重複した情報採取を行うことによる処理効率の低下の影響が大きいため、一方の情報採取要求を破棄するのが適切である。そこで、一致度が閾値より高ければ、判断手段2cにおいて、一方の情報採取要求を破棄すると判断される。その場合、送信手段2dは、例えば、巡回型ポーリングの開始時刻が早い方の情報採取要求を破棄し、遅い方の情報採取要求を送信する。
このようにして、各情報提供装置2−1〜2−nは、先に受信した情報採取要求に応じた処理中に、次の情報採取要求を受信すると、各情報採取要求を巡回させるグループ内の情報提供装置の一致度に基づいて、情報採取要求の破棄の有無を判断する。その結果、情報採取要求の巡回が遅延した場合に生じる冗長な情報採取処理が抑止され、巡回型ポーリングの処理効率を向上させることができる。その一方で、不適切な情報採取要求の破棄を抑止し、有用な情報の収集漏れの発生が抑止されている。すなわち、第1の実施の形態によれば、情報採取要求を破棄するかどうかについて、適切な判断が行われている。
なお、計算手段2bによる一致度の計算では、情報採取要求を巡回させるグループに属する情報提供装置のうち、情報未採取の情報提供装置の一致度を計算するようにしてもよい。情報未採取の情報提供装置の一致度は、一方の情報採取要求を破棄した場合に、情報が採取されなくなる情報提供装置の数量を換算するのに有用である。
また、計算手段2bによる一致度の計算では、情報採取要求を巡回させるグループに属する情報提供装置のうち、情報採取済みの情報提供装置の一致度を計算するようにしてもよい。情報採取済みの情報提供装置の一致度は、一方の情報採取要求を破棄した場合に、同時に破棄される情報の量を換算するのに有用である。
さらに、計算手段2bによる一致度の計算において、情報採取要求を巡回させるグループに属する情報提供装置のうち、情報未採取の情報提供装置の一致度と、情報採取済みの情報提供装置の一致度との両方を計算してもよい。その場合、計算手段2bは、両方の一致度を組み合わせた値(判定値)を計算し、判断手段2cは、判定値に基づいて、一方の情報採取要求を破棄するかどうかを判断する。
なお、一方の情報採取要求を破棄するかどうかについて、情報採取の進捗度合いを考慮してもよい。例えば、重複して情報採取要求を受信した情報提供装置が、それぞれの情報採取要求の巡回順の最後に近ければ、重複した情報採取を行っても、冗長な処理はそれほど多くはならない。そこで、各情報提供装置の計算手段2bに、情報採取の進捗度合いを計算させてもよい。例えば、重複して受信した情報採取要求それぞれを巡回させるグループ内の情報提供装置のうちの、情報未済種の情報提供装置の割合を、進捗度合いとする。進捗度合いを計算した場合、判断手段2cは、例えば、一致度と進捗度合いとに基づいて、一方の情報採取要求を破棄するか否かを判断する。これにより、一方の情報採取要求を破棄するか否かの判断の適格性を向上させることができる。
なお、情報収集装置1のグルーピング手段1aは、例えば、各グループにおける巡回型ポーリングが同程度の時間で完了できるように、グルーピングを行う。そのために、例えば複数の情報提供装置(2−1〜2−n)それぞれにおいて、自己の情報の採取に要した時間を、情報採取要求に追加するようにしてもよい。この場合、グルーピング手段1aは、各情報提供装置が情報の採取に要した時間に基づいて、各情報提供装置群の情報採取時間の合計が、情報提供装置群の間で平均化されるように、グループ分けを行う。これにより、各グループでの巡回型ポーリングの所要時間を揃えることができる。
なお、図1に示した情報収集装置1の要素のうち、グルーピング手段1a、送信手段1b、および格納手段1cは、例えば情報収集装置1が有するプロセッサにより実現することができる。また、記憶手段1dは、例えば情報収集装置1が有するメモリにより実現することができる。さらに、図1に示した情報提供装置2−i内の採取手段2a、計算手段2b、判断手段2c、および送信手段2dは、例えば情報収集装置1が有するプロセッサにより実現することができる。
また、図1に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、複数のサーバから、それらのサーバの情報を巡回ポーリングによって採取するものである。
図2は、第2の実施の形態のシステム構成例を示す図である。管理サーバ100は、管理ネットワーク31を介して複数の管理対象サーバ200,200a,200b,・・・に節即されている。管理サーバ100は、巡回ポーリングによって、複数の管理対象サーバ200,200a,200b,・・・から情報を採取する。なお管理サーバ100は、複数の管理対象サーバ200,200a,200b,・・・を複数のグループに分け、グループごとに巡回ポーリングを行う。また管理サーバ100は、巡回ポーリングのグループの構成を、適宜変更する。例えば管理サーバ100は、グループごとの巡回ポーリングの所要時間の差が所定値以上の場合、所要時間が長いグループに属する管理対象サーバの一部を、所要時間が短いグループに移動する。
複数の管理対象サーバ200,200a,200b,・・・は、業務ネットワーク32を介して、端末装置41,42,・・・に接続されている。管理対象サーバ200,200a,200b,・・・は、例えば端末装置41,42,・・・からの要求に応じて、業務に関する処理を実行する。また管理対象サーバ200,200a,200b,・・・は、巡回ポーリングによる情報採取要求を受信すると、自己の内部の情報を収集し、情報採取要求に付加する。そして、管理対象サーバ200,200a,200b,・・・は、情報採取要求を、自身と同じグループ内の他の管理対象サーバに送信する。なお管理対象サーバ200,200a,200b,・・・は、同じグループ内のすべての管理対象サーバの情報が情報採取要求に追加された場合、その情報採取要求を管理サーバ100に送信する。
なお、図2に示した管理サーバ100は、図1に示した情報収集装置1の一例である。図2に示した管理対象サーバ200,200a,200b,・・・は、図1に示した情報提供装置2−1〜2−nの一例である。
図3は、管理対象サーバのハードウェアの一構成例を示す図である。管理サーバ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101の機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、管理サーバ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に必要な各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、HDD(Hard Disk Drive)103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108a,108bがある。
HDD103は、内蔵したディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。HDD103は、管理サーバ100の補助記憶装置として使用される。HDD103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、補助記憶装置としては、フラッシュメモリなどの不揮発性の半導体記憶装置を使用することもできる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、管理サーバ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25やメモリリーダライタ26を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。
ネットワークインタフェース108aは、管理ネットワーク31に接続されている。ネットワークインタフェース108aは、管理ネットワーク31を介して、管理サーバ100や他の管理対象サーバ200a,200b,・・・との間でデータの送受信を行う。
ネットワークインタフェース108bは、業務ネットワーク32に接続されている。ネットワークインタフェース108bは、業務ネットワーク32を介して、端末装置41,42,・・・との間でデータの送受信を行う。
以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお管理対象サーバ200,200a,200b,・・・、および端末装置41,42,・・・も、管理サーバ100と同様のハードウェア構成で実現できる。また、第1の実施の形態に示した情報収集装置も、図3に示した管理サーバ100と同様のハードウェアにより実現することができる。
管理サーバ100または管理対象サーバ200a,200b,・・・は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。管理サーバ100または管理対象サーバ200a,200b,・・・に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、管理サーバ100または管理対象サーバ200a,200b,・・・に実行させるプログラムをHDD103に格納しておくことができる。プロセッサ101は、HDD103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。また管理サーバ100または管理対象サーバ200a,200b,・・・に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、HDD103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
図4は、管理サーバと管理対象サーバとの機能を示すブロック図である。管理サーバ100は、記憶部110、ポーリングリスト作成部120、および情報収集部130を有している。
記憶部110は、サーバ管理情報111、ポーリングパラメータ112、および採取情報113を記憶する。サーバ管理情報111は、管理対象サーバ200,200a,200b,・・・の所属グループなどの管理情報である。ポーリングパラメータ112は、巡回型ポーリングを実施する際に使用する各種パラメータである。採取情報113は、巡回型ポーリングによって管理対象サーバ200,200a,200b,・・・から採取した情報である。
ポーリングリスト作成部120は、巡回型ポーリングの実施タイミングになると、グループ間でのポーリング時間が均一になるように、グルーピングを行う。そして、ポーリングリスト作成部120は、作成したグループに属する管理対象サーバのリスト(ポーリングリスト)を作成する。またポーリングリスト作成部120は、各管理対象サーバが属するグループを、記憶部110内のサーバ管理情報111に格納する。
情報収集部130は、巡回型ポーリングにより、管理対象サーバ200,200a,200b,・・・から情報を収集する。例えば情報収集部130は、管理対象サーバのグループ内の1台の管理対象サーバへ、ポーリングリストを含む情報収集要求を送信する。情報収集部130は、そのグループ内の他の管理対象サーバから情報収集要求が戻されると、戻された情報収集要求に含まれている管理対象サーバの情報を取得する。そして情報収集部130は、取得した情報を、採取情報113として記憶部110に格納する。
管理対象サーバ200は、情報提供部210と再スケジューリング部220とを有している。
情報提供部210は、情報採取要求に応じて、管理対象サーバ200の動作状況を示す情報を収集する。そして情報提供部210は、収集した情報を情報採取要求に追加する。情報提供部210は、情報の収集が完了すると、管理対象サーバ200と同じグループに属する別の管理対象サーバに情報採取要求を送信する。例えば情報提供部210は、情報採取要求に含まれるポーリングリストを参照し、ポーリングリストにおいて、自己の次に登録されている管理対象サーバへ、情報採取要求を送信する。
再スケジューリング部220は、情報提供部210で情報採取要求に応じた情報採取中に、次の情報採取要求を受信した場合に、2つの情報採取要求に応じた情報採取のスケジュールを再作成(再スケジューリング)する。例えば再スケジューリング部220は、2つの情報採取要求のポーリングリストに登録されている管理対象サーバの一致度や、ポーリングリストに含まれている管理対象サーバからの情報採取の進捗度合いに基づいて、再スケジューリングを行う。
管理対象サーバ200aも、情報提供部210aと再スケジューリング部220aとを有している。情報提供部210aと再スケジューリング部220aとは、管理対象サーバ200内の同名の要素と同じ機能を有している。なお図示していない他の管理対象サーバ200b,・・・も、管理対象サーバ200と同様の機能を有している。
なお、図4に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また図4に示すポーリングリスト作成部120は、図1に示した情報収集装置1のグルーピング手段1aの一例である。図4に示す情報収集部130は、図1に示した情報収集装置1の送信手段1bと格納手段1cとを合わせた要素の一例である。図4に示す情報提供部210,210aは、図1に示した採取手段2aと送信手段2dとを合わせた要素の一例である。図4に示す再スケジューリング部220,220aは、図1に示した計算手段2bと判断手段2cとを合わせた要素の一例である。
次に、管理サーバ100の記憶部110に格納される、巡回型ポーリングに用いる情報について詳細に説明する。
図5は、サーバ管理情報の一例を示す図である。サーバ管理情報111には、管理対象サーバごとのサーバ情報111a,111b,111c,・・・が含まれている。サーバ情報111aには、サーバ名、IPアドレス、所属グループ、前回ポーリング時間、前回ポーリング識別子、エラーフラグなどの情報が含まれる。サーバ名は、システム内で管理対象サーバを識別する名称である。IPアドレスは、管理対象サーバの管理ネットワーク上でのアドレスである。所属グループは、管理対処サーバが属するグループの識別情報である。前回ポーリング時間は、前回の巡回型ポーリングにおいて該当管理対象サーバが情報の採取に要した時間である。前回ポーリング識別子は、前回実行した巡回型ポーリングの識別子である。エラーフラグは、前回の巡回型ポーリングでエラーが発生したか否かを示すフラグである。
図6は、ポーリングパラメータの一例を示す図である。図6の例では、ポーリングパラメータ112として、予定ポーリング時間、最大ポーリング時間、および閾値がある。予定ポーリング時間は、1回の巡回型ポーリングに要する想定時間である。最大ポーリング時間は、1回の巡回型ポーリングに要する最大の時間である。最大ポーリング時間は、予定ポーリング時間よりも大きな値である。例えば予定ポーリング時間が2分30秒のとき、最大ポーリング時間は3分となる。閾値は、再スケジューリング処理内での判定(図18参照)に使用する閾値である。なお管理サーバ100は、例えばシステムの運用開始時に、閾値を、すべての管理対象サーバに通知する。
このようなサーバ管理情報111やポーリングパラメータ112に基づいて、巡回型ポーリングが定期的(例えば3分間隔)で実行される。
図7は、巡回型ポーリングの一例を示す図である。図7の例では、4台の管理対象サーバ200,200a,200b,200cで1つのグループが構成されている。管理サーバ100は、巡回型ポーリングの実行タイミングになると、ポーリングリスト51を含む情報採取要求50を、ポーリングリストの先頭に示されている管理対象サーバ200に送信する。
情報採取要求50を受信した管理対象サーバ200は、自己の情報(採取情報52)を採取し、情報採取要求50に追加する。そして管理対象サーバ200は、ポーリングリスト51において管理対象サーバ200の次に示されている管理対象サーバ200aに、採取情報52が追加された情報採取要求50を送信する。
情報採取要求50を受信した管理対象サーバ200aは、自己の情報(採取情報53)を採取し、情報採取要求50に追加する。そして管理対象サーバ200aは、ポーリングリスト51において管理対象サーバ200aの次に示されている管理対象サーバ200bに、採取情報53が追加された情報採取要求50を送信する。
情報採取要求50を受信した管理対象サーバ200bは、自己の情報(採取情報54)を採取し、情報採取要求50に追加する。そして管理対象サーバ200bは、ポーリングリスト51において管理対象サーバ200bの次に示されている管理対象サーバ200cに、採取情報54が追加された情報採取要求50を送信する。
情報採取要求50を受信した管理対象サーバ200cは、自己の情報(採取情報55)を採取し、情報採取要求50に追加する。その後、管理対象サーバ200cは、ポーリングリスト51において管理対象サーバ200cが最後であることを認識する。そして管理対象サーバ200cは、管理サーバ100に、採取情報55が追加された情報採取要求50を送信する。
このような手順で、管理サーバ100に各管理対象サーバ200,200a,200b,200cの採取情報が送られる。管理サーバ100は、受信した採取情報52〜55を記憶部110に格納する。
図8は、情報採取要求の一例を示す図である。情報採取要求50には、ポーリングID、開始時刻、終了時刻、および管理対象サーバごとのサーバ情報が含まれる。
ポーリングIDは、実行された巡回型ポーリングの識別子である。開始時刻は、巡回型ポーリングを開始した時刻である。例えば、管理サーバ100から情報採取要求50を送信した時刻が、開始時刻となる。終了時刻は、巡回型ポーリングを終了させる時刻である。例えば開始時刻から、最大ポーリング時間経過後の時刻が、終了時刻となる。
サーバ情報は、情報採取要求を巡回させる管理対象サーバの順番に応じて、ソートされている。すなわち、情報採取要求50を送信する順番が早い管理対象サーバに関するサーバ情報ほど上位に設定されている。
サーバ情報には、IPアドレス、結果、結果詳細、時間、タイムスタンプが含まれる。IPアドレスは、管理対象サーバのIPアドレスである。複数のサーバ情報それぞれのIPアドレスを並べたものが、ポーリングリスト51である。結果は、情報採取結果である。例えば、情報採取が成功した場合、結果は「success」と設定される。また情報採取が失敗した場合、結果は「error」と設定される。情報採取が未実施の場合、結果は空欄である。結果詳細は、採取した情報である。時間は、管理対象サーバが情報採取に要した時間である。この時間が、管理サーバ100におけるサーバ管理情報111の前回ポーリング時間に設定される。タイムスタンプは、管理対象サーバが情報を採取した時刻である。例えば情報採取の完了時刻が、タイムスタンプとして設定される。
なおサーバ情報のうち、結果、結果詳細、時間、およびタイムスタンプについては、IPアドレスで示される管理対象サーバによって、情報採取時に設定される情報である。すなわち管理サーバ100から情報採取要求50が送信される時点では、各サーバ情報には、IPアドレスのみが設定されている。
ここで、管理対象サーバで障害は発生した場合を想定する。障害としては、例えば、管理対象サーバの電源の停止、OSのハングアップ、通信経路の異常などが考えられる。管理対象サーバで障害が発生すると、巡回型ポーリングにおいて、障害が発生した管理対象サーバに対する情報採取要求の送信に失敗する。
図9は、障害発生時の巡回型ポーリングの一例を示す図である。図9の例では、管理対象サーバ200aに障害が発生したものとする。
管理サーバ100から管理対象サーバ200に情報採取要求50が送信されると、管理対象サーバ200は、情報採取後、情報採取要求50を管理対象サーバ200aに送信する。このとき管理対象サーバ200aに障害が発生しているため、情報採取要求50を受け取ることができない。情報採取要求50を送信した管理対象サーバ200は、管理対象サーバ200aからの受信確認を受け取ることができないことから、情報採取要求50の送信に失敗したことを認識する。すると管理対象サーバ200は、例えば、所定回数、情報採取要求50の送信をリトライする。
リトライしても情報採取要求の受信確認を管理対象サーバ200aから受け取れない場合、管理対象サーバ200は、管理サーバ100にエラー通知60を送信する。エラー通知60には、例えば障害が発生している管理対象サーバ200aのIPアドレスが含められる。エラー通知60を受信した管理サーバ100は、サーバ管理情報111内の管理対象サーバ200aに対応するポーリング結果に、エラー発生を示すエラーフラグを設定する。
また管理対象サーバ200は、巡回の順番が、障害が発生している管理対象サーバ200aの次である管理対象サーバ200bに、情報採取要求50を送信する。なお管理対象サーバ200bに送信される情報採取要求50における、障害が発生した管理対象サーバ200aのサーバ情報には、結果「error」が設定される。情報採取要求を受信した管理対象サーバ200bは、情報を採取し、情報採取要求を、次の管理対象サーバ200cに送信する。情報採取要求を受信した管理対象サーバ200cは、情報を採取し、情報採取要求を、管理サーバ100に送信する。
このように、巡回型ポーリングを行う管理対象サーバに障害があると、その管理対象サーバへの情報採取要求のリトライなどの余分な処理が発生する。その結果、障害が発生していない場合に比べ、巡回型ポーリング1回当たりの所要時間が長くなる。しかも、管理対象サーバの台数が増加すると、数十台単位でのサーバ停止や、サービスの休止が発生する場合もあり得る。
管理対象サーバに障害が発生すると、巡回型ポーリングによる情報採取要求50が特定の管理対象サーバに到達する時間が大幅に遅れる可能性がある。情報採取要求50の到達の遅延により、以下のような問題が発生する。
・グループごとに巡回型ポーリングが完了するまでの時間にばらつきが出てくる。
・通信できない管理対象サーバにおける情報採取要求の受信確認のタイムアウトが発生した場合、情報採取要求が同時刻に1つの管理対象サーバで重複し、重複した情報採取が行われてしまう。
図10は、同じグループ内で複数の管理対象サーバに障害が発生した例を示す図である。図10の例では、複数のグループに同時に巡回ポーリングを実施している。ここで、「グループ#1」に属する2台の管理対象サーバ200a,200bに障害が発生したものとする。
管理サーバ100は、1回目の巡回ポーリングにおいて、「グループ#1」の属する管理対象サーバ200と、「グループ#2」に属する管理対象サーバ200dとのそれぞれに、情報採取要求を送信する。
「グループ#1」では、管理対象サーバ200が、自己の情報を収集後、情報採取要求の管理対象サーバ200aへの送信を試みる。しかし管理対象サーバ200aに障害が発生しており、情報採取要求の送信に失敗する。そこで管理対象サーバ200は、情報採取要求の管理対象サーバ200bへの送信を試みる。しかし管理対象サーバ200bにも障害が発生しており、情報採取要求の送信に失敗する。図10の例では、管理対象サーバ200による情報採取要求の送信が成功しないうちに、次の巡回型ポーリングの実施タイミングとなり、管理サーバ100から管理対象サーバ200へ、2回目の情報採取要求が送信されている。すなわち、管理対象サーバ200に情報採取要求が集中してしまっている。
「グループ#2」では、1回目の巡回型ポーリングにおいて、管理対象サーバ200dから順に情報採取が滞りなく行われ、各サーバのサーバ情報を追加した情報採取要求が、管理サーバ100に送られている。その後、2回目の巡回型ポーリングの実施タイミングとなり、管理サーバ100から管理対象サーバ200dへ情報採取要求が送信されている。その結果、1回目の巡回型ポーリングの完了時刻が、グループ間で大きくずれてしまっている。巡回型ポーリングの完了時刻のばらつきが大きいと、収集した情報を解析する際に、同じ時刻における各管理対象サーバの動作状況を比較しようとしたときに、解析の信頼性が低下してしまう。
第2の実施の形態では、このような巡回型ポーリングの完了時間のばらつきが抑止されるように、管理サーバ100が、巡回型ポーリングの実施時に管理対象サーバのグルーピングを行う。また第2の実施の形態では、特定の管理対象サーバにおける、同時刻での重複した情報採取を抑止するため、各管理対象サーバが、2つの情報取得要求を1つに纏める処理を行う。
次に、巡回型ポーリングを実現するための、管理サーバ100と管理対象サーバ200,200a,200b,・・・との処理手順について詳細に説明する。
図11は、管理サーバにおける巡回型ポーリング処理手順の一例を示すフローチャートである。管理サーバ100は、例えば所定周期で巡回型ポーリング処理を開始する。
[ステップS101]ポーリングリスト作成部120は、ポーリングリストを作成する。そしてポーリングリスト作成部120は、作成したポーリングリストを情報収集部130に送信する。なお、ポーリングリスト作成処理の詳細は後述する(図12参照)。
[ステップS102]情報収集部130は、ポーリングリスト作成処理によって生成されたグループごとに、ステップS103の処理を行う。
[ステップS103]情報収集部130は、ポーリングリストにおいて最初に示されている管理対象サーバに、情報採取要求を送信する。
[ステップS104]情報収集部130は、すべてのグループに対してステップS103の処理が完了した場合、処理をステップS105に進める。
[ステップS105]情報収集部130は、採取情報を待ち受ける。すなわち情報収集部130は、ステップS103で送信した情報採取要求が巡回して、管理サーバ100に返されるのを待つ。
[ステップS106]情報収集部130は、情報採取要求の送信から、ポーリングパラメータ112に設定されている最大ポーリング時間が経過したか否かを判断する。最大ポーリング時間が経過した場合、処理が終了する。最大ポーリング時間が経過していなければ、処理がステップS107に進められる。
[ステップS107]情報収集部130は、採取情報を受け取ったか否かを判断する。採取情報を受け取った場合、処理がステップS108に進められる。採取情報を受け取っていない場合、処理がステップS105に進められ、再度、採取情報の待ち受けが行われる。
[ステップS108]情報収集部130は、取得した採取情報を記憶部110に格納する。例えば情報収集部130は、巡回後に送り返された情報採取要求から、各管理対象サーバの採取情報を抽出し、採取情報113として格納する。また情報収集部130は、取得した採取情報に基づいて、サーバ管理情報111を更新する。例えば、情報収集部130は、巡回型ポーリングに使用した情報採取要求のポーリングIDを取得すると共に、その情報採取要求の開始時刻から現在までの経過時間を算出する。そして、情報収集部130は、取得した採取情報の採取元の管理対象サーバに対応するポーリング結果(図5参照)のうち、前回ポーリング時間として算出した経過時間を設定し、前回ポーリング識別子として取得したポーリングIDを設定する。
[ステップS109]情報収集部130は、すべてのグループからの情報採取が完了したか否かを判断する。すべてのグループからの情報採取が完了した場合、処理が終了する。情報採取が完了していないグループがあれば、処理がステップS105に進められ、再度、採取情報の待ち受けが行われる。
このようにして、巡回型ポーリングにより、各管理対象サーバの採取情報が収集される。次に、ポーリングリスト作成処理について、詳細に説明する。
図12は、ポーリングリスト作成処理の手順の一例を示すフローチャートである。
[ステップS111]ポーリングリスト作成部120は、エラーフラグのない管理対象サーバを、サーバ管理情報111から検索する。
[ステップS112]ポーリングリスト作成部120は、前回ポーリング時間に基づいて、今回の巡回型ポーリングにおけるグループ数を計算する。例えばポーリングリスト作成部120は、検索により該当した管理対象サーバのポーリング時間の合計を、予定ポーリング時間で除算する。除算では、例えば小数点以下が四捨五入される。この除算の商が、今回の巡回型ポーリングにおけるグループ数となる。
[ステップS113]ポーリングリスト作成部120は、前回のグループ数と今回のグループ数とが同じか否かを判断する。グループ数が等しければ、処理がステップS115に進められる。グループ数が異なっていれば、処理がステップS114に進められる。
[ステップS114]ポーリングリスト作成部120は、グループに属する管理対象サーバの前回ポーリング時間の合計が、グループ間で均一となるように、グルーピングを行う。例えばポーリングリスト作成部120は、前回ポーリング時間が長い管理対象サーバから順に、既にグループに属している管理対象サーバの前回ポーリング時間の合計が短いグループに振り分けていく。グループ数を変更する場合のグルーピング(ステップS114)が完了すると、処理がステップS120に進められる。
[ステップS115]グループ数が変更される場合、ポーリングリスト作成部120は、前回のグループごとにステップS116〜S118の処理を実行する。
[ステップS116]ポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバのうち、エラーフラグのある管理対象サーバを、そのグループから除外する。例えばポーリングリスト作成部120は、サーバ管理情報111から、エラーフラグのある管理対象サーバの所属グループを削除する。
[ステップS117]ポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバの前回ポーリング時間の合計が、平均時間以下か否かを判断する。合計時間が平均時間以下の場合、処理がステップS119に進められる。合計時間が平均時間を超えている場合、処理がステップS118に進められる。
[ステップS118]ポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバのうちの一部の管理対象サーバを、属する管理対象サーバの前回ポーリング時間の合計が平均時間以下のグループに移動する。
[ステップS119]ポーリングリスト作成部120は、前回の巡回型ポーリング時に用いられたすべてのグループについてステップS116〜S119の処理が完了した場合、処理をステップS120に進める。
[ステップS120]ポーリングリスト作成部120は、前回の巡回型ポーリングが実施されていない管理対象サーバを、グループに追加する。例えばポーリングリスト作成部120は、前回の巡回型ポーリングが実施されていない管理対象サーバを順番に選択する。例えばサーバ管理情報111において所属グループが設定されていない管理対象サーバは、前回の巡回型ポーリングが実施されていない。ポーリングリスト作成部120は、属する管理対象サーバの前回ポーリング時間の合計が少ないグループから順に、選択した管理対象サーバを振り分ける。
図13は、グループ数を変更する場合のグルーピング例を示す図である。図13の左側には、前回ポーリング時間が長い管理対象サーバから順に選択してグループに振り分けた場合(第2の実施の形態に適用)の例が示されている。また図13の右側には、前回ポーリング時間が短い管理対象サーバから順に選択してグループに振り分けた場合の例が示されている。図13における矩形が、グループに振り分けられた管理対象サーバを表している。矩形の縦の長さが、管理対象サーバの前回ポーリング時間を表している。また矩形内に示された丸付きの数字は、管理対象サーバの選択順である。
前回ポーリング時間が長い順に管理対象サーバの振り分けを行った場合、前回ポーリング時間の合計が最も長くなるグループと最も短くなるグループとの間の、前回ポーリング時間の合計の差は、t1である。前回ポーリング時間が短い順に管理対象サーバの振り分けを行った場合、前回ポーリング時間の合計が最も長くなるグループと最も短くなるグループとの間の、前回ポーリング時間の合計の差は、t2である。図13からも分かるように、t1はt2よりも小さな値となる。すなわち、前回ポーリング時間が長い順に管理対象サーバの振り分けを行うことで、前回ポーリング時間の合計の、グループ間での均一化が図られている。
図14は、グループ数を変更しない場合のグルーピング例を示す第1の図である。現在、グループ「4」が処理対象であるものとする。グループ「4」は、属する管理対象サーバの前回ポーリング時間の合計が、平均時間を超えている。そこで、グループ「4」に属する管理対象サーバの中から、所属グループを移行する候補となる管理対象サーバが選択される。
例えばポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバの台数(8台)と、全グループにおける属する管理対象サーバの台数の平均(5台)との差分(3台の超過)を求める。そしてポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバの台数が、平均よりも多ければ、差分に相当する台数の管理対象サーバを、移行候補として選択する。またポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバの台数が、平均以下であれば、1台の管理対象サーバを、移行候補として選択する。このようにして、移行後の、処理対象のグループに属する管理対象サーバ数が、平均台数近くになるように調整される。グループの管理対象サーバ数を平均化することで、情報採取要求を巡回させる際の通信時間の誤差によるポーリング時間のばらつきを抑止することができる。
移行候補の選択基準としては、例えば、各グループに属する管理対象サーバの前回ポーリング時間の合計時間の、グループ間での平均時間を用いることができる。例えばポーリングリスト作成部120は、処理対象のグループ(グループ「4」)に属する管理対象サーバ前回ポーリング時間の合計時間の、平均時間との差分時間を求める。次にポーリングリスト作成部120は、処理対象のグループに属する管理対象サーバのうち、前回ポーリング時間が差分時間に最も近い管理対象サーバと、その管理対象サーバよりも前回ポーリング時間が短い管理対象サーバとを選択対象とする。そしてポーリングリスト作成部120は、選択対象の管理対象サーバの中から、移行候補の台数分(3台)の管理対象サーバを選択する。このときポーリングリスト作成部120は、選択対象の管理対象サーバの移行候補台数分の組み合わせの中から、選択した管理対象サーバの前回ポーリング時間の合計が、差分時間に最も近くなる組み合わせを検出する。そしてポーリングリスト作成部120は、検出した組み合わせに含まれる管理対象サーバを、移行候補として選択する。図14の例では、図中、網掛けの矩形で示された管理対象サーバが、移行候補として選択されている。
図15は、グループ数を変更しない場合のグルーピング例を示す第2の図である。ポーリングリスト作成部120は、処理対象のグループから、移行候補の管理対象サーバを除外する。そしてポーリングリスト作成部120は、移行候補の管理対象サーバを、属する管理対象サーバの前回ポーリング時間の合計時間が平均時間に満たないグループに追加する。例えばポーリングリスト作成部120は、移行候補の管理対象サーバから、前回ポーリング時間の長い順に選択する。そしてポーリングリスト作成部120は、属する管理対象サーバの前回ポーリング時間の合計時間が平均時間に満たないグループのうち、合計時間と平均時間との差が大きいグループに、選択した管理対象サーバを追加する。
図16は、グループ数を変更しない場合のグルーピング例を示す第3の図である。移行候補の管理対象サーバを別のグループに移動した結果、すべてのグループにおいて、属する管理対象サーバの前回ポーリング時間の合計時間が、平均時間付近となっている。これにより、特定のグループからの情報採取だけが遅れるという事態が抑止され、巡回型ポーリングを効率的に行うことができる。また各グループに属する管理対象サーバの台数が平均化されるため、通信にかかる時間のばらつきが抑止される。
以上の用にして、管理サーバ100において巡回型ポーリングを実施する際に、その都度、適切なグループが作成される。そして、作成されたグループごとに、巡回型ポーリングが実施される。巡回型ポーリングでは、情報採取要求が、グループ内の管理対象サーバ間で転送される。
以下、情報採取情報を受信した管理対象サーバにおける情報採取処理の手順について詳細に説明する。
図17は、管理対象サーバでの情報採取処理の手順の一例を示すフローチャートである。
[ステップS201]情報提供部210は、情報採取要求を受信する。
[ステップS202]情報提供部210は、情報採取要求に示されている終了時刻が、現在の時刻より以前か否か判断する。既に終了時刻に達している場合、情報採取を行わずに処理を終了する。この場合、情報採取要求の他の管理対象サーバまたは管理サーバ100への送信も行われず、情報採取要求は破棄される。終了時刻に達していなければ、処理がステップS203に進められる。
[ステップS203]情報提供部210は、管理対象サーバ200自身の情報を採取する。情報提供部210は、採取した情報を、情報採取要求に追加する。
[ステップS204]情報提供部210は、情報採取処理が完了する前に、新しい情報採取要求を受信したか否かを判断する。新たな情報採取要求を受信した場合、処理がステップS205に進められる。新たな情報採取要求を受信していなければ、処理がステップS206に進められる。
[ステップS205]再スケジューリング部220は、情報採取要求の巡回経路の再スケジューリングを行う。この処理の詳細は後述する(図18参照)。
[ステップS206]情報提供部210は、ポーリングリストに示される巡回順が次の管理対象サーバに、情報採取要求を送信する。なお管理対象サーバ200がグループ内の巡回順の最後の場合、情報提供部210は管理サーバ100に情報採取要求を送信する。
[ステップS207]情報提供部210は、情報採取要求が送信できたか否かを判断する。送信できた場合、処理が終了する。送信できなかった場合、処理がステップS204に進められる。
次に、再スケジューリング処理について詳細に説明する。
図18は、再スケジューリング処理の手順の一例を示すフローチャートである。
[ステップS211]再スケジューリング部220は、先に受信した情報採取要求と、後に取得した情報採取要求とを比較して、情報を採取済みの管理対象サーバの一致率を求める。採取済みの管理対象サーバは、例えば情報の採取に成功した管理対象サーバである。情報を採取済みかどうかは、管理対象サーバの採取情報が情報採取要求に追加されているかどうかによって判断できる。この一致率は、例えば、2つの情報採取要求の両方において情報採取済みの管理対象サーバの数を、2つの情報採取要求の少なくとも一方において情報採取済みの管理対象サーバの数で除算した値である。再スケジューリング部220は、求めた一致率を変数Aに設定する。
[ステップS212]再スケジューリング部220は、2つの情報採取要求を比較して、情報未採取の管理対象サーバの一致率を求める。情報未採取の管理対象サーバには、例えば管理対象サーバ200よりも情報採取要求の巡回順が後の管理対象サーバと、障害などにより情報採取要求を渡すことができなかった管理対象サーバとを含む。この一致率は、例えば、2つの情報採取要求の両方において情報未採取の管理対象サーバの数を、2つの情報採取要求の少なくとも一方において情報未採取の管理対象サーバの数で除算した値である。再スケジューリング部220は、求めた一致率を変数Bに設定する。
[ステップS213]再スケジューリング部220は、同一グループ内の管理対象サーバのうち、実施済み管理対象サーバの割合を求める。実施済み管理対象サーバは、例えば、管理対象サーバ200自身と、管理対象サーバ200よりも巡回順が前の管理対象サーバである。例えば再スケジューリング部220は、2つの情報採取要求それぞれでの実施済み管理対象サーバの数の合計を、2つの情報採取要求それぞれのポーリングリストに含まれる管理対象サーバの数の合計で除算する。その除算結果が、実施済み管理対象サーバの割合となる。再スケジューリング部220は、求めた割合を変数Cに設定する。
[ステップS214]再スケジューリング部220は、同一グループ内の管理対象サーバのうち、情報を採取していない、残りの管理対象サーバの割合を求める。残りの管理対象サーバは、例えば、管理対象サーバ200よりも情報採取要求の巡回順が後の管理対象サーバである。例えば再スケジューリング部220は、2つの情報採取要求それぞれにおける残りの管理対象サーバの数の合計を、2つの情報採取要求それぞれのポーリングリストに含まれる管理対象サーバの数の合計で除算する。その除算結果が、残りの管理対象サーバの割合となる。再スケジューリング部220は、求めた割合を変数Dに設定する。
[ステップS215]再スケジューリング部220は、ステップS211〜S224で求めた値に基づいて、2回分のポーリングを統合するかどうかの判定値を計算する。例えば再スケジューリング部220は、「A×C×D+B×D」の計算結果を、判定値とする。この例では、残りの管理対象サーバの割合が多いほど(Dが大きいほど)、判定値が大きくなる。また一致率(A、B)が大きいほど、判定値が大きくなる。残りの管理対象サーバの割合は、巡回型ポーリングの進捗率を表しており、Dが大きいほど、進捗率が低い(巡回型ポーリングの進行度合いが低い)ことを表している。「A×C」にさらにDを乗算することで、巡回型ポーリングの進捗率を反映させた判定値が得られる。すなわち、残りのサーバの割合が多いほど、情報採取要求の統合による効率化の効果が高いため、残りのサーバの割合が多いほど判定値が高くなるように、判定値の計算式が定義されている。
[ステップS216]再スケジューリング部220は、判定値が、予め設定されている閾値以上か否かを判断する。判定値が閾値以上であれば、情報採取要求を統合するものと判断され、処理がステップS218に進められる。また判定値が閾値未満であれば、情報採取要求を統合しないものと判断され、処理がステップS217に進められる。
このように、閾値と判定値との比較により、情報採取要求を統合するかどうかが判断される。その結果、情報採取要求の過度な統合を抑止し、統合処理の頻発による処理の増加を抑止できる。
[ステップS217]再スケジューリング部220は、2つの情報採取要求を送信対象として、再スケジューリング処理を終了する。これにより、ステップS206(図17参照)において、2つの情報採取要求が、それぞれのポーリングリスト上で巡回順が次の管理対象サーバに送信される。
[ステップS218]再スケジューリング部220は、2つの情報採取要求に含まれる採取情報のうち、同じ管理対象サーバから採取された採取情報のタイムスタンプを比較し、古い方の採取情報を破棄する。
[ステップS219]再スケジューリング部220は、2つの情報採取要求を統合し、情報を未採取の管理対象サーバの重複を取り除く。例えば再スケジューリング部220は、開始時刻が新しい情報採取要求に、開始時刻が古い情報採取要求における未採取の管理対象サーバのサーバ情報(図8参照)を追加する。そして再スケジューリング部220は、情報採取要求内に同じ管理対象サーバのサーバ情報が、情報未採取の状態で複数存在する場合、一方のサーバ情報を削除する。なお情報採取要求内に同じ管理対象サーバのサーバ情報が複数存在する場合において、一方のサーバ情報については情報採取済みであれば、採取情報が含まれていないサーバ情報を削除する。その後、開始時刻が古い情報採取要求は破棄される。
このような統合を行えば、破棄された情報採取要求における情報未採取の管理対象サーバについては、統合後の情報採取要求を巡回させ、情報の採取漏れの発生が抑止される。ただし、このような統合を行う場合であっても、情報未採取の管理対象サーバの一致率が低いと、統合後の情報採取要求の巡回先が増えすぎ、巡回型ポーリングの完了に時間がかかり過ぎてしまう。そのため、未採取管理対象サーバの一致率が低い場合には、ステップS216で「NO」と判断し、2つの情報採取要求を送信対象とすることが適切である。すなわち、巡回先を統合するからといって、常に一方の情報採取要求を破棄するのが適切な判断になるとは限らない。
[ステップS220]再スケジューリング部220は、2つの情報採取要求を統合した1つの情報採取要求を送信対象とする。これにより、ステップS206(図17参照)において、1つの情報採取要求が、次の管理対象サーバに送信される。
このような再スケジューリングによれば、情報採取が未実施の管理対象サーバの割合が多い(巡回ポーリングの進捗度が低い)ほど、情報採取要求が統合される可能性が高くなる。すなわち、巡回ポーリングの初期段階であれば、既に採取した情報の一部が破棄されても、採取情報を用いた解析などに与える影響は少ないため、処理の効率化を優先して情報採取要求が統合される。
また採取済みの管理対象サーバや未採取の管理対象サーバの一致率が高いほど、情報採取要求が統合される可能性が高くなる。すなわち、第2の実施の形態では、管理サーバ100において巡回型ポーリングのたびにグループの最適化(ポーリングリスト作成)が行われる。すると重複して受信した2つの情報採取要求それぞれで、情報採取の対象としているグループの管理対象サーバの組み合わせが異なることがある。グループに属する管理対象サーバの一致率が低い場合に情報採取要求を統合してしまうと、統合後に情報採取する管理対象サーバ数が多量となり、巡回型ポーリングの完了までの時間が長期化してしまう。これは、情報採取に要する時間を短期化しようとする、グルーピングの目的に反しており、不適切である。第2の実施の形態では、採取済みの管理対象サーバや未採取の管理対象サーバの一致率が高い場合に情報採取要求を統合するようにしているため、統合したことによる巡回型ポーリングの所長時間の長期化も抑止される。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。