以下、本発明の実施形態による情報処理システムの実施形態を、図面に基づいて詳細に説明する。
図1は、本発明の実施形態による情報処理システムの構成を示す機能ブロック図である。
図2は、本発明の実施形態による情報処理システムのうち、性能監視エージェント13及び性能監視マネージャー12の詳細な構成を示す機能ブロック図である。
本発明の実施形態による情報処理システムは、性能監視マネージャーホスト40、性能監視エージェントホスト41、監視端末A43a及び監視端末B43bを備える計算機システムである。
性能監視マネージャーホスト40、性能監視エージェントホスト41、監視端末A43a、監視端末B43b及び監視対象16は、相互にネットワーク49を介して接続されている。
監視対象16は、性能監視エージェント13によって性能を監視される情報処理システムのリソースである。監視対象16は、例えば、計算機のハードウェア、オペレーティングシステム(OS)、ミドルウェア、ソフトウェアアプリケーション、サーバ仮想化環境のハイパーバイザ、ファームウェア又はデータベース管理システム(DBMS)などのように計算機上に実現するリソースであってもよいし、ルータ、スイッチングハブ、リピータハブ又はファイアーウォールなどのようにネットワークに直接接続される機器であってもよい。
性能監視マネージャーホスト40は、性能監視マネージャー12及び送受信部44を備える。
性能監視マネージャー12は、性能監視エージェント13の状態を管理したり、性能監視エージェント13から発行されたイベントを中継して統合コンソール15又は監視コンソール14に通知したり、といった処理を行うミドルウェアである。
性能監視マネージャー12は、イベント発行部17、ポリシ設定配布部18、ポリシ設定管理部19及び記憶部20を備える。
イベント発行部17は、後述するイベント発行部26から発行されたイベントを受信し、イベントの通知先情報に基づいて統合コンソール15又は監視コンソール14にイベントを通知(すなわち送信)する。
ポリシ設定配布部18は、ポリシ変更を特定する情報、及び、ポリシを変更する性能監視エージェント13を特定する情報を、後述するポリシ設定管理部19から受信し、送受信部44を介して、ネットワーク49経由で当該特定された性能監視エージェント13のポリシ設定管理部28に通知する。
ポリシ設定管理部19は、性能監視マネージャー12によって管理される性能監視エージェント13によるリソースの監視に適用されるポリシを一元的に管理する。ポリシ設定管理部19は、送受信部44を介して監視端末A43a及び監視端末B43bから所定の情報を受信し、後述する記憶部20から必要な情報を取得し、記憶部20に必要な情報を書き込む。ポリシ設定管理部19は、記憶部20に必要な情報を書き込んだとき、記憶部20への書き込み処理に関連する所定の情報をポリシ設定配布部18に通知する。そして、ポリシ設定管理部19は、送受信部44を介して、監視端末A43a及び監視端末B43bに処理の結果を通知する。
具体的には、ポリシ設定管理部19は、送受信部44を介して、監視端末A43aからポリシ変更要求メッセージ、ポリシ変更確定メッセージ又はポリシ変更破棄メッセージを受信すると、受信したメッセージに応じた処理を実行する。
ポリシ変更要求メッセージは、変更に係るエージェント名、変更されるポリシのポリシ名及びポリシの変更内容を特定する情報を含む。
ポリシ変更要求メッセージを受信したポリシ設定管理部19は、特定されたポリシ名に対応するポリシを複製し、複製されたポリシの内容に、特定されたポリシの変更内容を適用することによって新たなポリシを生成する。
さらに、ポリシ設定管理部19は、その新たなポリシによって特定されたアラームの通知先を書き換える。さらに、ポリシ設定管理部19は、変更内容を適用する前後のポリシ(すなわち、複製元のポリシと、複製され内容を変更された新たなポリシと)を関連付ける処理を実行する。
その後、ポリシ設定管理部19は、特定されたエージェント名に対応する性能監視エージェント13に対して新たに生成したポリシの情報を通知するようポリシ設定配布部18に通知する。そして、ポリシ設定管理部19は、送受信部44を介して監視端末A43aに処理結果を返信する。
ポリシ変更確定メッセージは、ポリシ変更要求メッセージに従って作成された調査用ポリシを、新たな本番環境用ポリシとして確定させることを要求するメッセージである。ポリシ変更確定メッセージは、これから新たな本番環境用ポリシとして確定されるポリシのポリシ名、及び、そのポリシが適用される性能監視エージェント13のエージェント名を特定する情報を含む。
ポリシ変更確定メッセージを受信したポリシ設定管理部19は、特定されたポリシ名に対応するポリシを参照し、その参照されたポリシに関連付けられたポリシ(すなわち、それまで本番環境用ポリシであったポリシ)を破棄し、当該参照されたポリシの内容を書き換える。
さらに、ポリシ設定管理部19は、特定されたエージェント名に対応する性能監視エージェント13に対して当該破棄処理の内容と、当該書き換え処理の内容と、を通知するようポリシ設定配布部18に通知する。そして、ポリシ設定管理部19は、送受信部44を介して監視端末A43aにその処理結果を返信する。ここで実行されるポリシの内容を書き換える処理は、例えば、アラームの通知先を書き換える処理である。
ポリシ変更破棄メッセージは、ポリシ変更要求メッセージに従って作成された調査用ポリシを、新たな本番環境用ポリシとして確定させることなく、破棄することを要求するメッセージである。ポリシ変更破棄メッセージは、破棄されるポリシのポリシ名と、そのポリシが適用されている性能監視エージェント13のエージェント名と、を特定する情報を含む。
ポリシ変更破棄メッセージを受信したポリシ設定管理部19は、特定されたポリシ名に対応するポリシ(ここでは第2ポリシと記載する)を参照し、当該第2ポリシに関連付けられているポリシ変更要求メッセージ送信前の第1ポリシを参照し、ポリシ変更破棄メッセージで特定された第2ポリシを破棄する。さらに、ポリシ設定管理部19は、特定された性能監視エージェント名に対応する性能監視エージェント13に対して当該第2ポリシの破棄処理内容を通知するようポリシ設定配布部18に通知する。そして、ポリシ設定管理部19は、送受信部44を介して監視端末A43aに第1ポリシの内容を特定して破棄処理結果を返信する。
記憶部20は、バインドテーブル記憶領域23、ポリシ変更テーブル記憶領域24及びポリシ管理テーブル記憶領域25を含む。
バインドテーブル記憶領域23は、ポリシ管理テーブル記憶領域25で管理されるポリシ情報と、そのポリシを用いて監視している性能監視エージェント13(言い換えると、そのポリシが適用されている性能監視エージェント13)とを関連付ける情報を記憶する。バインドテーブル記憶領域23に関連付け情報があることは、当該関連付け情報に記載された性能監視エージェント13が、当該関連付け情報に記載されたポリシに基づく監視を実行していることを表している。逆に、ある性能監視エージェント13と、あるポリシとを関連付ける情報がバインドテーブル記憶領域23に記憶されていないことは、その性能監視エージェント13が、そのポリシを用いたアラーム監視を実行してないことを示している。
例えば、バインドテーブル記憶領域23には、バインドテーブル230が記憶されている。
図3は、本発明の実施形態のバインドテーブル230の説明図である。
図示されているように、バインドテーブル230は、ポリシID欄230a、エージェント欄230b及びインスタンス欄230cを含む。
ポリシID欄230aには、ポリシを一意に識別するための識別情報が記憶される。この識別情報は、後述するポリシ管理テーブル記憶領域25のポリシID欄250a(図5参照)に記憶された情報に対応する。すなわち、本実施形態において、ポリシID欄230aには、ポリシ管理テーブル記憶領域25に記憶されたポリシ管理テーブル250のポリシID欄250aに登録されたポリシの名称(例えば、「ポリシ1」)が記憶される。
エージェント欄230bには、性能監視エージェント13を一意に識別する識別情報が記憶される。識別情報として、例えば、性能監視エージェント13のURI(Uniform Resource Identifier)が記憶されてもよい。本実施形態において、エージェント欄230bには、エージェントの名称が記憶される。
インスタンス欄230cには、エージェントが管理するインスタンスを一意に識別する情報が記憶される。性能監視エージェント13が複数のインスタンスを監視している場合にはこの欄に値が記憶される。一方、性能監視エージェント13が単一のインスタンスのみを監視している場合には、バインドテーブル230にインスタンス欄230cを設けなくてもよいし、あるいは、インスタンス欄230cを未定義とし、例えば、「N/A」が記憶されてもよい。インスタンスとは、例えば、監視対象がデータベースであったとき、データベースインスタンスである。
ポリシ変更テーブル記憶領域24は、ポリシ管理テーブル記憶領域25で管理しているポリシどうしを関連付ける関連付け情報を記憶している。例えば、ここでは、本番環境用のポリシをコピーすることによって調査用のポリシを生成した場合、当該本番環境用のポリシと、そのポリシをコピーすることによって生成された当該調査用のポリシとを関連付ける情報が記憶される。
例えば、ポリシ変更テーブル記憶領域24には、ポリシ変更テーブル240が記憶されている。
図4は、本発明の実施形態のポリシ変更テーブル240の説明図である。
図示するように、ポリシ変更テーブル240は、変更前ポリシID欄240a及び変更後ポリシID欄240bを含む。ポリシ変更テーブル240の各レコード(すなわち、図4に示す各行)に、変更前ポリシID欄240aに記憶された内容に対応するポリシが、変更後ポリシID欄240bに記憶された内容に対応するポリシに変更されたことが記憶される。
変更前ポリシID欄240a及び変更後ポリシID欄240bには、ポリシを一意に識別する識別情報が記憶される。これらの識別情報は、後述するポリシ管理テーブル250のポリシID欄250aに記憶された内容に対応する。本実施形態において、変更前ポリシID欄240a及び変更後ポリシID欄240bには、ポリシの名称(例えば、「ポリシ1」、「ポリシ2」等)が記憶される。
図4の例では、ポリシ変更テーブル240の最初のレコードの変更前ポリシID欄240a及び変更後ポリシID欄240bに、それぞれ、「ポリシ1」及び「ポリシ2」が記憶されている。これは、「ポリシ1」によって識別されるポリシ(例えば第1ポリシ)と、「ポリシ2」によって識別されるポリシ(例えば第2ポリシ)とが関連付けられていることを示す。第1ポリシと第2ポリシとが関連付けられていることは、例えば、第1ポリシが本番環境用のポリシであり、第2ポリシが、第1ポリシから派生した調査用のポリシであることを意味してもよい。本番環境用のポリシと調査用のポリシとの関係については後述する。
ポリシ管理テーブル記憶領域25は、性能監視マネージャー12が一元的に管理するポリシに関するポリシ定義情報を記憶している。
例えば、ポリシ管理テーブル記憶領域25には、ポリシ管理テーブル250が記憶される。
図5は、本発明の実施形態のポリシ管理テーブル250の説明図である。
ポリシ管理テーブル250は、本実施形態の性能監視エージェント13によるリソースのメトリック値の性能監視に適用されるポリシを記憶する。
図示するように、ポリシ管理テーブル250は、ポリシID欄250a、アラーム条件欄250b、判定頻度欄250c、イベント内容欄250d及びイベント通知先欄250eを含む。
ポリシID欄250aには、ポリシ管理テーブル250が管理する各ポリシを一意に識別する識別情報が記憶される。本実施形態においては、識別情報としてポリシの名称が登録される。
アラーム条件欄250bには、ポリシの監視条件判定式、すなわち、そのポリシに基づく監視において、イベントを発行するか否かを判定するために使用される判定式が記憶される。具体的には、アラーム条件欄250bには、性能監視メトリックと、その性能監視メトリックに関する閾値と、性能監視メトリックと閾値との関係を示す条件式が記憶されている。性能監視メトリックと閾値とが条件式に従って比較され、その比較の結果に基づいて、後述するイベント内容欄250dに定義されたイベントが発行される。
例えば、性能監視メトリックである「CPU使用率」と、閾値である「80%」と、条件式である「>」とを定義すると、判定式は「CPU使用率>80%」となる。これは、監視対象16のCPU使用率が80%を超過した場合にイベントを発行する、というアラーム条件を定義する。
性能監視メトリックは、OSやDBMSなどが管理する一般的な性能情報である。例えば、「CPU使用率」の他に、メモリ合計サイズ中のメモリ使用サイズの割合を示す「メモリ使用率」、「ディスク容量使用率」、「単位時間あたりのページング発行数」、「単位時間あたりのI/O要求数」が性能監視メトリックに該当する。あるいは、性能情報ではなく、プログラム名又はサンプリング時刻などが性能監視メトリックとして特定されてもよい。
条件式は、「=」、「<」、「>=」又は「<=」等を含む論理式であってもよいし、文字列の完全一致又は部分一致といった正規表現を用いた判定式であってもよい。
また、アラーム条件は、複合的な条件式を定義することもできる。例えば、「(CPU使用率>80%) AND (2007/08/27 10:00:00 < サンプリング時刻 < 2007/08/27 12:00:00 )」といったような条件式が定義されてもよい。この例の場合、2007年8月27日10時0分から12時0分までの間に80%を超えるCPU使用率が検出された場合、イベントが発行される。
判定頻度欄250cには、監視条件判定を行う頻度が記憶される。例えば、性能監視エージェント13の収集部29は、監視対象16から性能情報を一定間隔のサンプリング間隔で取得する場合、3回の連続したサンプリングをして閾値条件を判定して、2回以上閾値を超過した場合にアラームを発行してもよい。この場合、判定頻度欄250cには、3回中2回(「2回/3回」)という情報が判定頻度欄250cに定義される。判定頻度を定義することによって、一時的に負荷が上昇しただけで、対処の必要のないアラームが発行されることを防止することができる。
イベント内容欄250dには、アラーム条件欄250b及び判定頻度欄250cによって定義された条件が満たされた場合に発行されるイベントの内容が記憶される。このイベントは、アラーム条件欄250bによって定義された監視条件に基づくメトリック値と閾値との比較の結果の送信又は表示を含んでもよい。例えば、イベント内容として、イベントメッセージの送信、メールの送信、異常パトランプ又は警告パトランプの点灯、コマンドの実行又はログの出力などが特定されてもよい。ここで、パトランプとは、例えば、後述する監視コンソール14又は統合コンソール15に表示され、正常時の表示と異常時又は警告時の表示が変化するアイコンであってもよい。
イベント通知先欄250eには、アラームのイベント通知先が記憶される。通知先として、例えば、監視コンソール14のURI、統合コンソール15のURI、あるホストのイベント実行エンジンのURI、又は、メール通知先のメールアドレスが登録される。本実施形態では、統合コンソールのURI及び監視コンソールのURIが記憶される。
以上に記載したとおり、本実施形態においては、ポリシ管理テーブル記憶領域25に記憶されたポリシ管理テーブル250と、バインドテーブル記憶領域23に記憶されたバインドテーブル230と、が存在する。ポリシ管理テーブル250は、ポリシの定義情報を、そのポリシがどの性能監視エージェント13に適用されるかにかかわらず、記憶する。バインドテーブル230は、性能監視エージェント13とポリシ管理テーブル250に定義したポリシとの関連付け情報を記憶する。
これによって、ポリシ管理テーブル250で定義したポリシを再利用することができる。例えば、複数の性能監視エージェント13に共通するポリシは、ポリシ管理テーブル250に一つのポリシとして定義され、その定義されたポリシをそれぞれの性能監視エージェント13に適用させることができる。
なお、本実施形態における記憶領域の構成には限定されず、バインドテーブル記憶領域23及びポリシ管理テーブル記憶領域25が一つの記憶領域として実現されてもよい。例えば、バインドテーブル230及びポリシ管理テーブル250が、ポリシID欄、アラーム条件欄、判定頻度欄、イベント内容欄、イベント通知先欄、性能監視エージェント欄及びインスタンス欄と、を有する一つのテーブルによって置き換えられてもよい。このような構成であっても、本実施形態と同様の効果がある。
送受信部44は、ネットワーク49を介して情報を送受信する装置である。
以上のように構成される性能監視マネージャーホスト40に係る各構成要素の情報処理は、ハードウェア資源によって具体的に実現される。
図6は、本発明の実施形態の情報処理システムを構成する計算機のハードウェア構成を示すブロック図である。
性能監視マネージャーホスト40は、図6に示す計算機1601によって実現することができる。計算機1601は、CPU1602、主記憶装置1603、外部記憶装置1604、外部記憶装置1604に接続するための外部記憶インターフェース1605、及び、ネットワーク49に接続するための通信インターフェース1606を備える。計算機1601は、さらに、入力装置1607及び出力装置1608を備えてもよい。入力装置1607は、例えば、マウス又はキーボードである。出力装置1608は、例えば、モニタ(画像表示装置)である。
送受信部44は、例えばNIC(Network Interface Card)のような通信インターフェース1606によって実現可能である。記憶部20は、外部記憶装置によって実現可能である。外部記憶装置1604とは、例えば、ハードディスク装置又はその他の種類の記憶装置である。
イベント発行部17、ポリシ設定配布部18及びポリシ設定管理部19は、外部記憶装置1604に記憶された所定のプログラムを主記憶装置1603上にコピーし、それをCPU1602が実行することによって実現される。主記憶装置1603とは、例えば、半導体メモリまたはその他の種類の記憶装置である。
再び図1及び図2を参照して、性能監視エージェントホスト41について説明する。
性能監視エージェントホスト41は、性能監視エージェント13、監視対象16及び送受信部45を備える。
性能監視エージェント13は、監視対象16の性能情報を監視するミドルウェアである。性能監視エージェント13は、例えば、監視対象16が出力する性能情報を定期的に収集したり、収集した性能情報を記憶して、記憶した性能情報を要求に応じて応答したり、収集した性能情報をあらかじめポリシに設定された監視条件に基づいて判定し、監視条件を満たす場合にポリシに設定されたイベントを発行したりする。
性能監視エージェントが収集する性能情報とは、監視対象16が提供する監視情報である。例えば、性能情報は、オペレーティングシステムが出力するCPU使用率又は単位時間あたりのI/O処理件数、サービス利用者の動作を擬似的に実行するエージェントが測定したウェブサーバ等のサービスレスポンス時間、DBのアクセス処理件数、又は、バッチ処理件数、仮想サーバに対するある時刻におけるリソース割当量などである。この性能情報は、ポリシ管理テーブル310におけるアラーム条件欄310bのメトリック情報に対応する。
性能監視エージェント13は、性能監視マネージャー12によって管理される。性能監視マネージャー12は1以上の性能監視エージェント13を管理する。
性能監視エージェント13は、イベント発行部26、アラーム判定部27、ポリシ設定管理部28、収集部29及び記憶部30を備える。
イベント発行部26は、後述するアラーム判定部27からの通知に基づき、ポリシで定義されているイベントを発行する。例えば、イベント発行部26は、アラーム判定部27から、イベントメッセージを監視コンソール14に通知するというイベント内容が通知されると、イベントメッセージを性能監視マネージャーのイベント発行部17に通知する。
アラーム判定部27は、後述する収集レコードテーブル320に登録されている性能情報と、後述するポリシ管理テーブル310に登録されているアラーム定義の条件とを取得して、当該性能情報が当該アラーム定義の条件を満たしているか判定し、アラーム定義に記述されたイベント内容をイベント発行部26に通知して、通知した内容のイベントを発行するよう問い合わせる。
具体的には、例えば、アラーム判定部27は、ポリシ管理テーブル記憶領域31からポリシ管理テーブル310を読み出し、収集レコードテーブル記憶領域32から収集レコードテーブル320を読み出す。アラーム判定部27は、ポリシ管理テーブル310の各行を順に読み出し、以下のアラーム判定操作を繰り返す。
アラーム判定部27は、読み出したポリシ管理テーブル310の行の判定頻度欄310cに記憶された判定回数を参照する。そして、アラーム判定部27は、収集レコードテーブル320に登録されている行のうち、時刻欄320aの値が最新のものから順に、判定回数分の連続する行を読み出す。例えば、判定頻度欄310cの値が「2回/3回」(すなわち、「3回中2回」)である場合、3行が読み出される。
次に、アラーム判定部27は、収集レコードテーブル320から読み出したそれぞれの行について、メトリック欄320c及びメトリック値欄320dの値がポリシ管理テーブル310のアラーム条件欄310bに合致するか否かを判定する。合致した回数が、ポリシ管理テーブル310の判定頻度欄310cに記憶された合致回数以上である場合、アラーム判定部27は、ポリシ管理テーブル310で定義されたアラーム条件が満たされたと判定する。ここで、合致回数とは、判定頻度欄310cの値が「2回/3回」の場合、「2回」である。アラーム条件が満たされた場合、アラーム判定部27は、イベント内容欄310dに記憶された内容のアラームを、イベント通知先欄310eに記憶された通知先に通知するようイベント発行部26に通知する。
ポリシ設定管理部28は、性能監視エージェント13が監視対象16をアラーム監視するときに用いるポリシを管理する。ポリシ設定管理部28は、ポリシ設定配布部18からポリシの変更内容を通知されると、通知内容に従って、ポリシ管理テーブル記憶領域31に記憶されたポリシ管理テーブル310の内容を変更する。
収集部29は、監視対象16から性能情報を収集し、収集した性能情報を後述する収集レコードテーブル320に登録する。
記憶部30は、ポリシ管理テーブル記憶領域31と、収集レコードテーブル記憶領域32と、を備えている。
例えば、ポリシ管理テーブル記憶領域31には、ポリシ管理テーブル310が記憶される。
図7は、本発明の実施形態のポリシ管理テーブル310の説明図である。
ポリシ管理テーブル310は、ポリシID欄310a、アラーム条件欄310b、判定頻度欄310c、イベント内容欄310d及びイベント通知先欄310eを含む。これらの各欄は、それぞれ、ポリシ管理テーブル250のポリシID欄250a、アラーム条件欄250b、判定頻度欄250c、イベント内容欄250d及びイベント通知先欄250eと同じであるため、これらについての説明は省略する。
図5に示すポリシ管理テーブル250は、性能監視マネージャー12によって記憶される。このポリシ管理テーブル250は、図1に示す情報処理システムにおいて設定されている全てのポリシの設定情報を含む。ここで、設定されているポリシには、いずれかの性能監視エージェント13に適用されているポリシだけでなく、いずれの性能監視エージェント13にも適用されていないポリシ(例えば、これから適用される可能性があるポリシ)が含まれてもよい。一方、図7に示すポリシ管理テーブル310は、各性能監視エージェント13によって記憶される。このポリシ管理テーブル310は、それを記憶する性能監視エージェント13に適用されるポリシの設定情報のみを含む。
例えば、図3に示すように、「エージェント1」によって識別される性能監視エージェント13に、「ポリシ1」及び「ポリシ2」によって識別される二つのポリシが適用されている場合、ポリシ管理テーブル310は、ポリシ管理テーブル250に記憶されている情報のうち、「ポリシ1」及び「ポリシ2」によって識別される二つのポリシに関する情報が記憶される。
後述するように、ポリシ管理テーブル250の内容が変更されると、その変更の内容が性能監視エージェント13に通知される。性能監視エージェント13は、その通知に基づいて、変更をポリシ管理テーブル310に反映させる。
なお、各性能監視エージェント13には、一つのポリシのみが適用されてもよいが、図7に示すように、複数のポリシが適用されてもよい。複数のポリシが適用された性能監視エージェント13は、それぞれのポリシに従って監視対象16を監視し、イベントを発行する。
収集レコードテーブル記憶領域32には、収集部29が監視対象16から収集した性能情報が記憶される。
例えば、収集レコードテーブル記憶領域32には、収集レコードテーブル320が記憶される。
図8は、本発明の実施形態の収集レコードテーブル320の説明図である。
図示するように、収集レコードテーブル320は、時刻欄320a、リソースID欄320b、メトリック欄320c及びメトリック値欄320dを含む。
メトリック値欄320dには、性能監視のために収集されたメトリック値が記憶される。
メトリック欄320cには、メトリック値欄320dに記憶されたメトリックを特定する情報が記憶される。例えば、メトリックの名称が記憶されている。
リソースID欄320bには、メトリック値欄320dに記憶されたメトリック値が取得されたリソースを識別する情報が記憶される。
時刻欄320aには、メトリック値欄320dに記憶されたメトリック値が取得された時刻が記憶される。
例えば、図8に示す収集レコードテーブル320の先頭の行は、2007年9月1日10時0分0秒に、「CPU#1」によって識別されるリソースから、メトリック値として、CPU使用率「80%」が取得されたことを示す。
送受信部45は、ネットワーク49を介して情報を送受信する。
以上のように構成される性能監視エージェントホスト41に係る各構成要素の情報処理は、ハードウェア資源によって具体的に実現可能である。性能監視エージェントホスト41は、計算機1601によって実現可能である(図6参照)。計算機1601の構成については、既に図6を参照して説明されているため、ここでは説明を省略する。
送受信部45は、いわゆるNICのような通信インターフェース1606によって実現可能である。記憶部30は、外部記憶装置1604によって実現可能である。イベント発行部26、アラーム判定部27、ポリシ設定管理部28及び収集部29は、外部記憶装置1604に記憶した所定のプログラムを主記憶装置1603上にコピーし、それをCPU1602が実行することによって実現可能である。
図1に示す本実施形態の情報処理システムは、複数の性能監視エージェントホスト41及び複数の監視対象16を備える。複数の性能監視エージェントホスト41のうちいくつかは、監視対象16を含んでいる。例えば、監視対象16が計算機1601のCPU1602又は主記憶装置1603等である場合、そのCPU1602又は主記憶装置1603等を含む計算機1601自体が性能監視エージェントホスト41として動作してもよい。この場合、監視対象16は性能監視エージェントホスト41に含まれる。一方、例えば、監視対象16がネットワーク49を構成する機器のポート等である場合、性能監視エージェントホスト41は、その監視対象16にネットワーク49を介して接続された計算機1601によって実現されてもよい。
システム管理者10は、システム構成を変更したり、ポリシの内容を変更したりする権限を有する役割である。一般に、システム管理者10は、監視対象の情報処理システムについて深い知識を有する。監視対象である情報処理システムにおいてハードウェアの増設又はシステム構成の変更などがあった場合、システム管理者10は、ポリシの設定を見直す。
オペレータ11は、情報処理システムの統合コンソール15をモニタリングし、異常パトランプが点灯したら、システム管理者に通知する権限を有する役割である。一般に、オペレータ11は、監視対象の情報処理システムについては深い知識を有しておらず、事前に配布された運用マニュアルに従って行動する。例えば、情報処理システムの統合コンソール15をモニタリング結果に異常パトランプが表示された場合、オペレータ11は、システム管理者に電話をすることによって、システム管理者10に異常パトランプが表示されたことを通知する。
なお、システム管理者10及びオペレータ11はそれぞれ役割である。このため、システム管理者10及びオペレータ11は、異なる人物であってもよいし、同一人物であってもよい。システム管理者10とオペレータ11の役割が異なるため、システム管理者の権限を有する者とオペレータの権限を有する者とを別の人間が担うことが一般的である。しかし、本実施形態はこのような分担に限定されない。
例えば、監視コンソール14と、統合コンソール15とが同一監視画面プログラムで実現される場合、あらかじめログインIDと、システム管理者10の権限又はオペレータ11の権限を表す情報とを関連付けておいてもよい。この場合、当該監視画面へのログイン時に入力されるログインIDに基づいて、ログインした者がシステム管理者10又はオペレータ11のいずれであるかを判定することができる。そして、その判定の結果に従って、ログイン後の当該監視画面に、システム管理者10用の監視画面内容又はオペレータ11用の監視画面の一方表示することができる。
監視端末A43aは、監視対象のアラーム監視及びポリシの定義変更等のポリシ管理を行うための監視端末である。監視端末A43aは、システム管理者10から所定の情報の入力を後述する入力部46aから受け付け、その所定の情報から必要なメッセージを生成して、後述する送受信部48aを介して性能監視マネージャー12に送信する。さらに、監視端末A43aは、送受信部48aを介して性能監視マネージャー12から所定の情報を受信すると、その所定の情報から必要な情報を処理して、後述する出力部47aから必要な情報をシステム管理者10に出力する。
必要なメッセージとは、具体的には、例えば、アラーム監視要求メッセージ、ポリシ作成要求メッセージ、ポリシ変更要求メッセージ、ポリシ変更確定メッセージ及びポリシバインド要求メッセージである。
アラーム監視要求メッセージは、性能監視エージェント識別情報及びポリシ識別情報を特定する情報を含む。ポリシ作成要求メッセージ及びポリシ変更要求メッセージは、アラーム定義内容を特定する情報を含む。アラーム定義内容を特定する情報は、例えば、ポリシ識別情報、アラーム条件式、イベント内容、イベント通知先及び判定頻度を含む。ポリシ変更確定メッセージは、性能監視エージェント識別情報及びポリシ識別情報を特定する情報を含む。ポリシバインド要求メッセージは、性能監視エージェント識別情報及びポリシ識別情報を特定する情報を含む。
監視端末A43aは、入力部46a、出力部47a、送受信部48a及び監視コンソール14を備える。
入力部46aは、システム管理者10から入力を受け付ける入力装置である。
出力部47aは、システム管理者10に所定の情報を通知するための出力装置である。
送受信部48aは、ネットワーク49を介して情報を送受信する装置である。
監視コンソール14は、性能監視をするためのコンソール画面である。監視コンソール14は、例えば、本実施形態の情報処理システムが管理するポリシの管理画面を備えてもよいし、アラーム監視結果を表示する監視画面を備えてもよいし、収集した性能情報をリアルタイムに表やグラフにして表示する監視画面を備えてもよいし、収集した性能情報の履歴情報を時系列の表やグラフにして表示する監視画面を備えてもよい。
システム管理者10は、ポリシの管理画面を用いて、例えば、ポリシの新規定義、編集によるポリシの変更、及び、ポリシの性能監視エージェントへの適用を実行することができる。
システム管理者10は、ポリシの監視画面を参照して、各性能監視エージェントについて適用したポリシに基づく監視結果を見ることができる。ポリシの監視結果は、例えば、性能監視エージェントに障害が発生したことを表す異常パトランプ又は警告パトランプの点灯、異常イベントメッセージ又は警告イベントメッセージの表示などである。
システム管理者10は、監視コンソール14を用いて、監視対象16を監視対象としたポリシの設定を見直す。監視コンソール14の表示形式はどのようなものであってもよい。すなわち、監視コンソール14によって表示される画面は、GUIの表示画面であってもよいし、CUIの表示画面であってもよい。
以上のような監視端末A43aの各構成要素の情報処理は、ハードウェア資源によって具体的に実現可能である。具体的には、監視端末A43aは、計算機1601によって実現可能である。計算機1601の構成については、既に図6を参照して説明されているため、ここでは説明を省略する。
入力部46aは、マウス又はキーボードのような入力装置1607によって実現可能である。出力部47aは、モニタのような出力装置1608によって実現可能である。送受信部48aは、いわゆるNICのような通信インターフェース1606によって実現可能である。監視コンソール14は、外部記憶装置1604に記憶した所定のプログラムを主記憶装置1603上に呼び出し、それをCPU1602が実行することによって実現可能である。
監視端末B43bは、監視対象のアラーム監視を行うための監視端末である。監視端末B43bは、オペレータ11から後述する入力部46bを介して所定の情報の入力を受け付け、その所定の情報から必要なメッセージを生成して、後述する送受信部48bを介して性能監視マネージャー12に送信する。さらに、監視端末B43bは、送受信部48bを介して性能監視マネージャー12から所定の情報を受信し、その所定の情報を処理して、必要な情報を後述する出力部47bからオペレータ11に出力する。
所定の情報とは、具体的には、性能監視エージェント情報又はポリシ情報を特定した、ポリシ変更要求メッセージ、ポリシ変更確定メッセージ又はポリシ変更破棄メッセージなどである。
必要な情報とは、具体的には、ポリシ変更要求メッセージ、ポリシ変更確定メッセージ又はポリシ変更破棄メッセージなどに対する処理結果である。
監視端末B43bは、統合コンソール15、入力部46b、出力部47b及び送受信部48bを備える。
統合コンソール15は、運用管理をするためのコンソール画面であり、イベント監視及びアラーム監視などの性能監視に用いることができる。例えば、統合コンソール15は、性能監視エージェント13などの各種の運用管理を行うエージェントプログラムから発行されたイベントを表示し、一元的に監視するための監視画面を備えてもよいし、各メトリックに設定した閾値を超過した場合に異常パトランプが点灯するような監視画面を備えてもよい。
統合コンソール15を用いて、オペレータ11は監視対象16を監視対象とした本番環境の性能監視を行う。統合コンソール15の表示形式はどのようなものであってもよい。すなわち、統合コンソール15によって表示される画面は、GUIの表示画面であってもよいし、CUIの表示画面であってもよい。
入力部46bは、オペレータ11から入力を受け付ける入力装置である。
出力部47bは、オペレータ11に所定の情報を通知するための出力装置である。
送受信部48bは、ネットワーク49を介して情報を送受信する装置である。
以上のような監視端末B43bの各構成要素の情報処理は、ハードウェア資源によって具体的に実現可能である。具体的には、監視端末B43bは、計算機1601によって実現可能である。計算機1601の構成については、既に図6を参照して説明されているため、ここでは説明を省略する。
入力部46bは、マウス又はキーボードのような入力装置1607によって実現可能である。出力部47bは、モニタのような出力装置1608によって実現可能である。送受信部48bは、いわゆるNICのような通信インターフェース1606によって実現可能である。統合コンソール15は、外部記憶装置1604に記憶した所定のプログラムを主記憶装置1603上に呼び出し、それをCPU1602が実行することによって実現可能である。
図9は、本発明の実施形態による情報処理システムの全体処理を表すシーケンス図である。
システム管理者10は、監視端末A43aの監視コンソール14から、変更するポリシ、ポリシの変更内容及び性能監視エージェントを特定したポリシ変更要求メッセージを送信する(ステップ801)。
ここで、システム管理者10によって送信されるポリシ変更要求メッセージについて説明する。
情報処理システムが稼動している間、性能監視エージェント13は、その性能監視エージェント13に適用されたポリシに基づいて、監視対象16のメトリック値を監視し、監視結果に基づいて所定のイベントを発行する(具体的には、例えば、監視結果を統合コンソール15に送信する)。統合コンソール11を参照するオペレータ11は、このイベントに基づいて、情報処理システムを管理することができる。このように、情報処理システムの管理のためにオペレータ11に提供されるイベントを発行するために適用されるポリシは、本番環境用ポリシとも記載される。
しかし、本番環境用ポリシが適切でないために、適切なイベントが発行されない場合がある。適切なイベントが発行されない場合とは、例えば、監視対象16に異常が発生しているにもかかわらず、その異常を通知するためのイベントが発行されない場合、又は、監視対象16に異常が発生していないにもかかわらず、異常を通知するためのイベントが発行される場合、などである。
このような場合、システム管理者10は、本番環境用ポリシを適切なものにするために、本番環境用ポリシを変更することができる。ポリシ変更要求メッセージは、このような場合にポリシを変更するために送信される。
後述するように、変更対象として本番環境用ポリシ、及び、その本番環境用ポリシに対する変更内容が特定されたポリシ変更要求メッセージが発行された場合、その本番環境用ポリシに関連付けられた調査用ポリシが生成される。調査用ポリシとは、その本番環境用ポリシに、ポリシ変更要求メッセージによって特定された変更内容を反映することによって生成されたポリシである。言い換えると、調査用ポリシは、それに関連付けられた本番環境用ポリシの変更後のポリシの候補である。調査用ポリシは、本番環境用ポリシの変更内容が適切であるか否かを調査するために使用される。
図9の例において、第1ポリシが本番環境用ポリシ、第2ポリシが調査用ポリシである。ただし、ポリシ変更確定メッセージが発行されると、その結果、第2ポリシは、第1ポリシに代わる新たな本番環境用ポリシとして性能監視エージェント13に適用される。
ポリシの変更内容の例を次に列挙する。ただし、変更内容はこれらに限定されない。
第1の例は、「CPU使用率>80%」という監視条件を「CPU使用率>90%」という監視条件に変更するような、閾値を増加させる変更である。あるいは、逆に、閾値を減少させる変更であってもよい。
第2の例は、「CPU使用率>80%」という監視条件を「メモリ空きサイズ>50MB」という監視条件に変更するような、監視メトリックの変更である。
第3の例は、「CPU使用率>80%」という監視条件を「CPU使用率>80% AND メモリ空きサイズ>50MB」に変更するような、ポリシの監視条件式の変更である。あるいは、「CPU使用率>80%」という監視条件のポリシのみで監視していた場合に、「メモリ空きサイズ>50MB」という監視条件のポリシを新たに追加するという変更であってもよい。ポリシが追加されると、それぞれのポリシの監視条件で判定される。あるいは、逆に、ポリシを削除するという変更であってもよい。
第4の例は、異常閾値を超過した場合に発行されるイベントを、「オペレータにメールで通知する」から、「コマンドを実行する」に変更するようなアラームのイベント内容の変更である。
第5の例は、アラーム判定頻度を「3回中2回閾値を超過した場合にアラームを発行する」から「1回中1回閾値を超過した場合にアラームを発行する」に変えるという変更である。
ポリシ変更要求メッセージを受信した性能監視マネージャー12は、第1ポリシをコピーすることによって新たな第2ポリシを生成し、第2ポリシにステップ801で特定されたポリシの変更内容を適用する(ステップ802)。なお、第1ポリシは、ポリシ変更要求メッセージによって変更対象として特定されたポリシである。
さらに、性能監視マネージャー12は、第2ポリシのイベント通知先を「監視コンソール14」に変更する。
具体的には、ステップ802において、性能監視マネージャー12は、ポリシ管理テーブル250に新たな行を追加する。そして、性能監視マネージャー12は、第1ポリシに対応する行に既に記憶されている内容と同一の内容を、追加された行に新たに登録する。そして、性能監視マネージャー12は、追加された行のポリシID欄250aの内容を、第2ポリシを一意に識別する値に変更する。さらに、性能監視マネージャー12は、追加された行の内容(例えば、アラーム条件欄250b及び判定頻度欄250cなどの内容)を、ポリシ変更要求メッセージによって特定された内容に変更する。さらに、性能監視マネージャー12は、追加された行のイベント通知先欄250eの内容を「監視コンソール14」に変更する。これらの処理については、図10を参照して後述する。
その結果、新たに生成された第2ポリシの内容は、ステップ802において変更された部分を除いて、第1ポリシの内容と同一である。
さらに、性能監視マネージャー12は、第1ポリシから第2ポリシを生成したことを示す情報(すなわち、第1ポリシと第2ポリシとを関連付ける情報)を記憶する(ステップ803)。具体的には、ポリシ変更テーブル240の一つの行の変更前ポリシID欄240a及び変更後ポリシID欄240bに、それぞれ、第1ポリシの識別子及び第2ポリシの識別子が記憶される。
次に、性能監視マネージャー12は、性能監視エージェント13にステップ802におけるポリシの変更内容の処理結果を通知する(ステップ804)。
変更内容を通知された性能監視エージェント13は、変更内容に基づいて性能監視エージェント13が監視に用いるポリシに関する情報を変更し、変更後の当該情報に基づいて監視対象16をアラーム監視する。
具体的には、ステップ804の通知を受信した性能監視エージェント13は、第1ポリシ及び第2ポリシに基づくアラーム監視を実行する。すなわち、性能監視エージェント13は、第1ポリシによって定義された監視条件が満たされる場合、第1ポリシによって定義されたイベントを統合コンソール15に対して発行する。さらに、性能監視エージェント13は、第2ポリシによって定義された監視条件が満たされる場合、第2ポリシによって定義されたイベントを監視コンソール14に対して発行する。
システム管理者10は、第2ポリシに基づいて発行されたイベントを参照して、第2ポリシが適切であるか否かを判定することができる。システム管理者10は、第2ポリシが適切であると判定した場合、第2ポリシが確定の対象として特定されたポリシ変更確定メッセージを送信する(ステップ805)。システム管理者10は、第2ポリシが適切でないと判定した場合、第2ポリシが破棄の対象として特定されたポリシ変更破棄メッセージを送信する(図12参照)。あるいは、システム管理者10は、第1ポリシ又は第2ポリシを対象とするさらなるポリシ変更要求メッセージを送信してもよい(図14A及び図14B参照)。
その後、システム管理者10は、監視端末A43aの監視コンソール14から、第2ポリシの変更確定メッセージを性能監視マネージャー12に送信する(ステップ805)。
システム管理者10から第2ポリシの変更確定メッセージを受信したことをきっかけにして、性能監視マネージャー12は、変更の反映処理を実行する。
なお、変更の反映処理は、上記のようにシステム管理者10が送信したポリシ変更確定メッセージを受信したことを契機として実行されてもよいが、その他のイベントを契機として実行されてもよい。例えば、タイマを用いて、変更要求メッセージを受信してポリシをコピーする処理を実行してから所定の時間が経過したか否かを定期的に判定し、経過したと判断した場合にポリシの変更反映処理が実行されてもよい。
次に、性能監視マネージャー12は、ステップ803で記憶した関連付け情報を参照して、第2ポリシに関連付けられたポリシである第1ポリシを検索する(ステップ806)。
次に、性能監視マネージャー12は、調査用のポリシである第2ポリシの内容を本番環境用のポリシである第1ポリシに反映させる。具体的には、性能監視マネージャー12は、例えば次のステップ807以降の処理を実行する。
性能監視マネージャー12は、第1ポリシにおいて設定されたイベント通知先情報(すなわち、第1ポリシに対応するイベント通知先欄250e)を参照する(ステップ807)。
次に、性能監視マネージャー12は、第2ポリシのイベント通知先情報の内容を第1ポリシのイベント通知先情報の内容に変更する(ステップ808)。例えば、第1ポリシ及び第2ポリシのイベント通知先がそれぞれ「統合コンソール15」及び「監視コンソール14」である場合、ステップ808において、第2ポリシのイベント通知先が「統合コンソール15」に変更される。
次に、性能監視マネージャー12は、第1ポリシを破棄し、さらに、ステップ803において記憶した第1ポリシと第2ポリシの関連付け情報を破棄する(ステップ809)。具体的には、性能監視マネージャー12は、ポリシ管理テーブル250から、第1ポリシを定義する行を削除する。さらに、性能監視マネージャー12は、ポリシ変更テーブル240から、ステップ803において記憶された行を削除する。
そして、性能監視マネージャー12は、ポリシの変更内容を性能監視エージェント13に通知する(ステップ810)。この通知を受信した性能監視エージェント13は、通知された変更内容をポリシ管理テーブル310に反映させる。その結果、例えば、第1ポリシを定義する行がポリシ管理テーブル310から削除される。
上記のように、本実施形態では、第2ポリシのイベント通知先情報の内容を「統合コンソール15」に書き換え、第1ポリシを破棄することによって、調査用ポリシが新たな本番環境用ポリシとして使用される。その結果、本番環境用ポリシへの変更が反映される。しかし、例えば、第1ポリシの内容のうち、イベント通知先情報以外の内容を、第2ポリシと同様の内容に書き換え、第2ポリシを破棄することによって、本番環境用ポリシへの変更が反映されてもよい。
以上のような処理動作を行うことによって、ポリシの変更が反映される前に発行された第1ポリシに基づくイベントは、統合コンソール15に通知され、オペレータ11によって参照される。
また、第1ポリシの変更をするために変更要求メッセージを送信して第2ポリシを生成した場合、ポリシ変更要求メッセージを送信してからポリシ変更確定メッセージを送信するまでの間に発行された第2ポリシに基づくイベントは、監視コンソール14の監視画面に通知され、システム管理者10によって参照される。また、このとき発行された第1ポリシに基づくイベントは、統合コンソール15に通知され、オペレータ11によって参照される。
ポリシの変更反映後に発行された第2ポリシに基づくイベントは、統合コンソール15に通知され、オペレータ11によって参照される。ポリシ変更反映後は、第1ポリシは破棄されるため、第1ポリシに基づくイベントが発行されることはない。
このように、システム管理者10が第1ポリシを変更するための調査をしている間、第1ポリシのコピーに変更を加えることによって作成された第2ポリシのイベントが監視コンソール14に通知される。このため、システム管理者10は、第2ポリシを用いて、第1ポリシの内容の設定の変更に関する調査(すなわち、その変更が適切であるか否かを判断するための調査)を行うことができる。
一方、オペレータ11は、ポリシ変更確定メッセージが発行されるまでは、第1ポリシを用いて本番環境を監視することができ、ポリシ変更確定メッセージが発行された後は、第2ポリシを用いて本番環境を監視することができる。
ポリシ変更確定メッセージが発行されるまでの間、第2ポリシは、第1ポリシの内容の変更が適切であるか否かを判定するための調査用のポリシである。システム管理者10が第2ポリシに設定した監視条件が厳しすぎた場合、本来なら発行される必要がないイベントまで発行されてしまう場合がある。具体的には、例えば、実際には監視対象16で障害が発生していないにもかかわらず、障害発生に関するイベントが発行される場合がある。反対に、システム管理者10が第2ポリシに設定した監視条件を緩和しすぎた場合、本来発行される必要があるイベントが発行されない場合がある。具体的には、実際には監視対象16で障害が発生しているにもかかわらず、必要なイベントが発行されない場合がある。したがって、このような第2ポリシに基づくイベントをオペレータ11が受信する場合、障害の誤検出又は見逃しが発生するおそれがある。
しかし、図9において説明したように、システム管理者10が第2ポリシの監視条件が適切であることを確認して、ポリシ変更確定メッセージを送信しない限り、第2ポリシに基づいて発行されたイベントは、オペレータ11に通知されない。このため、本実施形態によれば、オペレータ11による障害の誤検出及び見逃しを減らすことができる。
以上に示した本実施形態においては、上記のステップ802において第1ポリシのイベント通知先は変更されなくてもよいし、第1ポリシのイベント通知先に監視コンソール14が追加されてもよい。
第1ポリシのイベント通知先に監視コンソール14が追加された場合、システム管理者10は、ポリシ変更要求メッセージを送信してからポリシ変更確定メッセージを送信するまでの間、監視端末A43aの監視コンソール14を通して、第1ポリシに基づくイベントと、第2ポリシに基づくイベントの双方のイベントを監視することができる。このため、変更要求の対象となった元のポリシを用いた監視結果と、変更要求に基づいて変更されたポリシを用いた監視結果とを比較することによって、ポリシの変更に関する調査をすることができる。
以上に記述した本実施形態では、ステップ801においてポリシ変更要求メッセージが送信され、ステップ805においてポリシ変更確定メッセージが送信される。しかし、その代わりに、オペレータ11が監視端末A43aの監視コンソール14からポリシ識別子を特定してポリシ変更破棄メッセージを送信し、ポリシ変更破棄メッセージを受信した性能監視マネージャーがポリシ変更破棄メッセージで特定されたポリシ識別子に関するポリシを破棄し、破棄したポリシに関連付けられたポリシの情報を監視コンソール14に応答してもよい。
それによって、例えば、システム管理者10が、本番環境用の第1ポリシの変更調整のため第1ポリシから生成した調査用の第2ポリシの閾値の内容を変更した後、変更調整が必要ないと判断し、本番環境用のアラームを第2ポリシに変更することを中止することができる。
また、以上に記述した本実施形態におけるステップ805の代わりに、システム管理者がポリシの変更要求をリセットする要求メッセージを送信したとき、記憶したポリシ間の関連付け情報を利用して、第2ポリシの内容を第1ポリシの内容に戻してもよい。
それによって、例えば、システム管理者10が、本番環境用の第1ポリシの変更調整のため第1ポリシから生成した調査用の第2ポリシの閾値の内容を変更した後、調査用の第2ポリシの閾値の値を本番環境用の第1ポリシに設定されている閾値の値に戻すことができる。また、システム管理者は調査用の第2ポリシを第1ポリシに設定されていた値に戻しさらに調査することができる。
この処理の詳細な説明は、図12を用いて後述する。
以上に示した本実施形態においては、ステップ801のポリシ変更要求メッセージにおいてシステム管理者が性能監視エージェント13を特定し、ステップ804で当該特定した性能監視エージェント13に対してポリシの変更を通知している。しかし、ステップ801においてポリシ変更要求メッセージが性能監視エージェント13を特定しなくてもよい。その場合、性能監視マネージャー12は、ステップ804を実行する前に、バインドテーブル230を参照し、ポリシ変更要求メッセージによって特定されたポリシ適用されている性能監視エージェント13を特定する。特定されたポリシが複数の性能監視エージェント13に適用されている場合、それら全ての性能監視エージェント13が特定される。
そして、性能監視マネージャー12は、ステップ804において、特定された全ての性能監視エージェント13に対してポリシの変更を通知し、ステップ805において、変更後のポリシを特定してポリシ変更確定メッセージを送信する。そして、性能監視マネージャー12は、ステップ806において特定したポリシの変更前のポリシを参照した後、当該変更前のポリシに関連付けられている全ての性能監視エージェント13を参照し、ステップ808とステップ809を処理し、ステップ810において当該全ての性能監視エージェントに対してその処理結果を通知する。
それによって、複数の性能監視エージェントについてまとめてポリシの変更の調整ができるため、システム管理者は、複数の監視対象16を監視するポリシの調査をそれぞれの監視対象16毎に並行して行うことができる。
以上に示した本実施形態では、ステップ801においてポリシ変更要求メッセージが送信され、ステップ805においてポリシ変更確定メッセージが送信される。しかし、システム管理者10は、ステップ805が実行される前に、さらに、監視端末A43aの監視コンソール14を通して、第2ポリシを特定してポリシ変更要求メッセージを送信してもよい。この場合、性能監視マネージャー12は、再びステップ802を実行して、第2ポリシをコピーし、コピーされた新たなポリシをポリシ変更要求メッセージに従って変更することによって、第3ポリシを生成する。そして、性能監視マネージャー12は、ステップ803において第2ポリシと第3ポリシとを関連付ける情報をポリシ変更テーブル240に記憶して、ステップ804において第3ポリシを追加することを性能監視エージェント13に通知する。
これによって、ポリシ変更確定メッセージを送信する前に、システム管理者10が複数回の変更要求メッセージを送信することができる。
また、これによって、第2ポリシに基づくイベント、及び、第3ポリシに基づくイベントの両方が、システム管理者10の監視する監視コンソール14に通知される。このため、第2ポリシと第3ポリシの内容を同時に調査することができる。
さらに、性能監視マネージャー12は、ステップ805においてポリシを特定するポリシ変更確定メッセージを受信し、ステップ806において当該特定したポリシに関連する全てのポリシを参照し、ステップ809において当該参照したポリシのうち当該特定したポリシ以外のポリシ、及び、当該特定したポリシ以外のポリシに関する関連付け情報を破棄し、ステップ810においてその処理結果をエージェントに通知してもよい。
この処理の詳細については、図14A及び図14Bを参照してとして後述する。
この処理のステップ809において、性能監視マネージャー12は、当該参照したポリシのうち当該特定したポリシ以外のポリシ、及び、当該特定したポリシ以外のポリシに関する記憶した関連付け情報を破棄しなくてもよい。
その場合、ポリシ変更確定メッセージが送信された後であっても、システム管理者10は、ポリシ変更要求メッセージ送信前のポリシ情報を参照することができ、さらに、ポリシ変更確定メッセージ送信後のポリシの内容を当該ポリシ変更要求メッセージ送信前のポリシ情報に戻すことができる。
以上に示した本実施形態において、性能監視マネージャー12は、ポリシ変更要求メッセージ及びポリシ変更確定メッセージの発行履歴情報、ならびに、ポリシ変更要求メッセージ及びポリシ変更確定メッセージを発行した者を識別する発行者情報を、ログ情報として記憶しておくこともできる。例えば、ステップ805において、性能監視マネージャー12は、変更を確定する際に、ポリシ変更確定処理の内容と、ポリシ変更確定メッセージを発行した者を識別する発行者情報を、それらの要求が発行された時刻と対応付けて、ログとして記憶してもよい。
それによって、ポリシの変更履歴を過去の情報に遡って調査することができる。その調査結果は、例えば、ポリシの変更ミスの調査に利用されてもよいし、監査の際の提出情報として利用されてもよい。複数のシステム管理者10が同時に同じポリシを変更処理した場合、ポリシ変更要求メッセージ及びポリシ変更確定メッセージの発行タイミングによって、あるシステム管理者10による変更の内容が破棄されてしまうおそれがある。しかし、ポリシ変更処理履歴情報と変更処理発行者情報のログ情報を利用することによって、排他的に変更処理を許可して同時にポリシを変更することを未然に防止したり、変更反映時に警告を示したり、意図しないで破棄されたポリシを回復して遡及的に変更を適用したりできる。
図10は、本発明の実施形態において、システム管理者10からポリシ変更要求メッセージが発行された場合に実行される処理を示すフローチャートである。
図10に示すフローチャートは、図9に示す処理のステップ801からステップ804を詳細に説明するものである。
ポリシ設定管理部19は、システム管理者10が監視端末A43aから送信したポリシ変更要求メッセージを、送受信部45を介して受信する。ポリシ設定管理部19は、ポリシ変更要求メッセージで特定された性能監視エージェント13、インスタンス、ポリシ、ポリシ変更内容をそれぞれ変数X1、X2、B1、Yに代入する(ステップ901)。すなわち、変数B1は、図9の例に示す第1ポリシの識別子であり、変数X1は、第1ポリシが適用される性能監視エージェントの識別子である。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索し、ポリシID欄250aが変数B1と一致する行を変数Bとして抽出する(ステップ902)。ここで抽出された行は、ポリシ変更要求メッセージで特定されたポリシ(すなわち第1ポリシ)の内容を含んでいる。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250に新たな行を追加する。追加した行を変数Aとする。さらに、ポリシ設定管理部19は、ポリシ管理テーブル250のポリシID欄250aにまだ登録されていないポリシ識別子を変数A1として生成し、追加された行のポリシID欄250aに変数A1を代入する。この変数A1は、図9の例における第2ポリシを一意に識別する識別子である。そして、ポリシ設定管理部19は、追加された行のうち、変数Yの変更内容に対応する欄に、変数Yの変更内容を代入する。それ以外の欄には、変数Bの対応する各欄の値を代入する(ステップ903)。
これによって、変数Aには、新たに第2ポリシの内容が記憶される。第2ポリシの内容は、第1ポリシの内容に、ポリシ変更要求メッセージによって特定された変更内容を反映することによって生成されたものである。
次に、ポリシ設定管理部19は、バインドテーブル230に新たな行を追加する。追加した新たな行を変数Jとする。ポリシ設定管理部19は、追加された行のポリシID欄230aに変数A1、エージェント欄230bに変数X1、インスタンス欄230cに変数Y1の値を代入する(ステップ904)。これによって、第1ポリシが既に適用されている性能監視エージェント13と、新たに生成された第2ポリシとを関連付ける情報が記憶される。第1ポリシが既に適用されている性能監視エージェント13に、新たに生成された第2ポリシがさらに適用される。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240に新たな行を追加する。追加した新たな行を変数Kとする。ポリシ設定管理部19は、追加された行の変更前ポリシID欄240aに変数B1を代入し、変更後ポリシID欄240bに変数A1を代入する(ステップ905)。これによって、第1ポリシ(すなわち、現時点の本番環境用ポリシ)と、第1ポリシから派生した第2ポリシ(すなわち、現時点の調査用ポリシ)とを関連付ける情報がポリシ変更テーブル240に記憶される。
次に、ポリシ設定管理部19は、ポリシ設定配布部18に対して変数X1、変数X2、変数A及びポリシの変更処理を通知する。通知を受けたポリシ設定配布部18は、変数X1及び変数X2に対応する性能監視エージェント13のポリシ設定管理部28に対して、変数Aの内容を特定するポリシ追加要求メッセージを通知する(ステップ906)。
ポリシ追加要求メッセージを受けた性能監視エージェント13のポリシ設定管理部28は、ポリシ管理テーブル310に新たな行を追加して、その新たな行に、変数Aで特定された内容を代入する(ステップ907)。その結果、性能監視エージェント13には、第1ポリシに加えて、第2ポリシがさらに適用される。
アラーム判定部27は、収集レコードテーブル320に記憶された性能情報が、ポリシ管理テーブル310中の変数Aに対応するポリシのアラーム条件欄310bに記憶された条件式を満たすか否かを判定する。この条件式が満たされると判定した場合、アラーム判定部27は、イベント発行部26を介して、イベント内容欄310dに記憶されたイベント内容を実行し、イベント通知先欄310eに記憶されたイベント通知先に通知する。
図11は、本発明の実施形態において、システム管理者10からポリシ変更確定メッセージが発行された場合に実行される処理を示すフローチャートである。
図11に示すフローチャートは、図9に示す処理のステップ805からステップ810を詳細に説明したものである。
ポリシ設定管理部19は、システム管理者10からポリシ変更確定メッセージを受信すると、そのポリシ変更確定メッセージで特定された、ポリシ、性能監視エージェント13、インスタンスをそれぞれ変数I、変数X1、変数X2に代入する(ステップ1001)。ここで変数Iによって特定されるポリシは、図9の例における第2ポリシである。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更後ポリシID欄240bに記憶された値が変数Iの値と一致する行を変数Aとして抽出する。そして、ポリシ設定管理部19は、変数Aの変更前ポリシID欄240aに記憶された値を変数Jに代入する(ステップ1002)。ここで、変数Jによって特定されるポリシは、図9の例における第1ポリシである。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240から、ステップ1002で抽出された行を削除する(ステップ1003)。ここで、削除された行は、図9の例における第1ポリシと第2ポリシとの関連情報を記憶しているレコードである。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索して、ポリシID欄250aに記憶された値が変数Jの値と一致する行を抽出し、その行を変数Bに代入する(ステップ1004)。変数Bは、図9の例における第1ポリシのポリシ定義内容が記憶されているレコードである。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250から、ステップ1004で抽出された行を削除する(ステップ1005)。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索して、ポリシID欄250aに記憶された値が変数Bの値と一致する行を変数Cとして抽出する。そして、ポリシ設定管理部19は、変数Bのイベント通知先欄250eの内容を、変数Cのイベント通知先欄250eに代入する(ステップ1006)。例えば、図9の第2ポリシに対応するイベント通知先欄250eに「監視コンソール14」が、第1ポリシに対応するイベント通知先欄250eに「統合コンソール14」が記憶されていた場合、ステップ1006において、第2ポリシに対応するイベント通知先欄250eの内容が「統合コンソール14」に変更される。
次に、ポリシ設定管理部19は、バインドテーブル230を検索し、ポリシID欄230aに記憶された値が変数Bの値と一致し、エージェント欄230bに記憶された値が変数X1の値と一致し、かつ、インスタンス欄230cに記憶された値が変数X2の値と一致する行を抽出する。そして、ポリシ設定管理部19は、バインドテーブル230から、当該抽出した行を削除する(ステップ1007)。ここで、削除された行は、第1ポリシと性能監視エージェント13との関係情報が記憶されたレコードである。
次に、ポリシ設定配布部18は、変数X1及び変数X2によって特定される性能監視エージェント13に対して、変数Cのアラーム通知先の変更と、変数Bのポリシの削除と、を要求するメッセージを通知する(ステップ1008)。
性能監視エージェント13のポリシ設定管理部28は、ポリシ管理テーブル記憶領域31から読み出したポリシ管理テーブル310に新たな行を追加して、その行に変数Cの内容を反映する。さらに、ポリシ設定管理部28は、ポリシ管理テーブル310を検索して、ポリシID欄310aが変数Bと一致する行を削除する(ステップ1009)。ここでは、第1ポリシを削除して、第2ポリシの通知先を書き換える処理が性能監視マネージャー12から性能監視エージェント13に通知される。
この第1ポリシの削除の結果、性能監視エージェント13による、第1ポリシに基づく監視対象16のメトリック値の監視、及び、その監視結果の送信が停止される。
以後、性能監視エージェント13は、第2ポリシに基づいて監視対象16を監視し、その監視結果に基づくイベントを統合コンソール15に送信する。
これによって、システム管理者10は、変更前のポリシがどのポリシであるかを意識することなく、ポリシ変更要求メッセージとポリシ変更確定メッセージを送信するだけで、オペレータ11がアラーム監視をしている最中であっても、ポリシの変更処理とポリシの適用処理(すなわち変更を確定する処理)を実行することができる。一方、オペレータ11は、システム管理者10のポリシ変更処理を意識することなく、アラーム監視をすることができる。
なお、ステップ1003と、ステップ1005の処理は必須の処理ではない。すなわち、これらのステップを実行しないことによって、変更履歴を保持してもよい。これにより、システム管理者10は、オペレータ11による監視に使用されるポリシの変更が確定された後、そのポリシをポリシ変更確定前のポリシに戻すことができる。
図12は、本発明の実施形態において、ポリシの変更を破棄する要求が発行された場合に実行される処理を示すフローチャートである。
具体的には、図12は、第1ポリシについての変更要求が発行された後、変更調査のため生成された第2ポリシについて変更を破棄する要求が発行された場合に実行される処理を示す。
ポリシ設定管理部19は、システム管理者10からポリシ変更破棄メッセージを受信する。ポリシ変更破棄メッセージは、破棄することを要求されたポリシを特定するポリシIDを含む。ポリシ設定管理部19は、ポリシ変更破棄メッセージで特定されたポリシIDを変数Iに、そのポリシが適用されるエージェント及びインスタンスのエージェント名及びインスタンス名を、それぞれ、変数X1及び変数X2に代入する(ステップ1101)。例えば、変数Iは、第2ポリシの識別子である。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索して、ポリシID欄250aの値が変数Iと一致する行を抽出し、その行を削除する(ステップ1102)。これによって、例えば、第2ポリシの内容を定義する情報がポリシ管理テーブル250から削除される。
次に、ポリシ設定管理部19は、バインドテーブル230を検索して、ポリシID欄230aの値が変数Iと一致し、エージェント欄230bの値が変数X1と一致し、かつ、インスタンス欄230cの値が変数X2と一致する行を抽出する。そして、ポリシ設定管理部19は、抽出された行をバインドテーブル230から削除する(ステップ1103)。これによって、例えば、第2ポリシと、第2ポリシが適用される性能監視エージェント13とを関連付ける情報がバインドテーブル230から削除される。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更後ポリシID欄240bの値が変数X1と一致する行を抽出する。そして、ポリシ設定管理部19は、抽出された行をポリシ変更テーブル240から削除する(ステップ1104)。これによって、例えば、第2ポリシと第1ポリシとを関連付ける情報がポリシ変更テーブル240から削除される。
次に、ポリシ設定配布部18は、性能監視エージェント13に対して、変数Iによって識別されるポリシの削除を通知する(ステップ1105)。
性能監視エージェント13は、ポリシ管理テーブル310を検索し、ポリシID欄310aの値が変数Iと一致する行を抽出し、その行を削除する(ステップ1106)。
以上のように、本実施形態において、システム管理者10は、変更調査したポリシの内容を、変更前のポリシの内容に戻すことができる。本情報処理システムにおいてポリシ変更要求に基づいて第1ポリシから第2ポリシが生成されていた場合、システム管理者10は、第2ポリシについてポリシ変更破棄メッセージを送信することによって、第2ポリシの内容を調査変更前の第1ポリシの内容に戻すことができる。
図13A及び図13Bは、本発明の実施形態において、ポリシの変更を複数の性能監視エージェント13に反映させるために実行される処理を示すフローチャートである。
具体的には、図13A及び図13Bは、複数の性能監視エージェント13に適用されている第1ポリシについて変更要求を受信した後、あるエージェントについて第1ポリシの設定変更調査(すなわち変更が適切であるか否かの調査)を行い、変更した内容を、第1ポリシが適用される他のエージェントについても反映させるために実行される処理を示す。
ポリシ設定管理部19は、システム管理者からポリシバインドエージェント取得要求を受信する。ポリシ設定管理部19は、ポリシバインドエージェント取得要求によって特定されたポリシIDを変数Iに代入する(ステップ1201)。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更後ポリシID欄240bの値が変数Iと一致する行を抽出し、抽出された行を変数Aとして記憶する。ポリシ設定管理部19は、変数Aの変更前ポリシID欄240aの値を変数Jに代入する(ステップ1202)。変数Jによって、ポリシバインドエージェント取得要求によって特定されたポリシに関連付けられたポリシが特定される。
次に、ポリシ設定管理部19は、バインドテーブル230を検索して、ポリシID欄230aの値が変数Jと一致する行をすべて抽出し、抽出された行を変数Bとして記憶する(ステップ1203)。変数Bのエージェント欄230bによって、ポリシバインドエージェント取得要求によって特定されたポリシに関連付けられたポリシが適用されているすべての性能監視エージェント13が特定される。
次に、ポリシ設定管理部19は、変数Bの要素の一つを選択し、選択された要素を変数B1として記憶する(ステップ1204)。
次に、ポリシ設定管理部19は、変数B1のエージェント欄230bの値を変数B3、インスタンス欄230cの値を変数B4に代入する。ポリシ設定管理部19は、変数B3及び変数B4をシステム管理者に通知する(ステップ1205)。
次に、ポリシ設定管理部19は、変数Bに次の要素(すなわち、まだ変数B1として取り出されていない要素)があるか否かを判定する(ステップ1206)。ステップ1206の判定の結果、次の要素がある場合、処理はステップ1204に戻る。ステップ1206の判定の結果、次の要素がない場合、処理はステップ1207に進む。
ポリシバインドエージェント取得要求によって特定されたポリシに関連付けられたポリシが複数の性能監視エージェント13に適用されている場合、ステップ1206までの処理によって、それらのすべての性能監視エージェント13の識別情報がシステム管理者10に通知される。
次に、ポリシ設定管理部19は、ポリシ変更要求を受信する。ポリシ設定管理部19は、ポリシ変更要求で特定されたポリシIDを変数Jに、変数B3と変数B4の組み合わせを変数Cに代入する(ステップ1207)。
次に、ポリシ設定管理部19は、変数Cの要素の一つを選択して、変数C1とする。ポリシ設定管理部19は、変数C1のエージェント欄の値を変数D1に、変数C1のインスタンス欄の値を変数D2に代入する(ステップ1208)。これによって、ポリシ変更要求によって特定されたポリシが適用される複数の性能監視エージェント13のうち一つが選択される。
次に、ポリシ設定管理部19は、バインドテーブル230を検索して、ポリシID欄230aの値が変数Jと一致し、エージェント欄230bの値が変数D1と一致し、インスタンス欄230cの値が変数D2と一致する行を抽出する。ポリシ設定管理部19は、抽出した行のポリシID欄230aの値を変数Iに代入する(ステップ1209)。これによって、ステップ1208で選択された性能監視エージェント13に対応するバインドテーブル230の行が特定される。
次に、ポリシ設定管理部19は、変数Cに次の要素(すなわち、まだ変数C1として選択されていない要素)があるか否かを判定する(ステップ1210)。ステップ1210の判定の結果、次の要素がある場合、処理はステップ1208に戻る。ステップ1210の判定の結果、次の要素がない場合、ポリシ変更要求によって特定されたポリシが適用される複数の性能監視エージェント13に対応するバインドテーブル230の行がすべて特定された。この場合、処理はステップ1211に進む。
次に、ポリシ設定管理部19は、バインドテーブル230の各行を検索し、ポリシID欄230aの値が変数Jと一致する行があるか否かを判定する(ステップ1211)。ステップ1211の判定の結果、一致する行があった場合、ポリシ設定管理部19は処理を終了する。ステップ1211の判定の結果、一致する行がなかった場合、処理はステップ1211に進む。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索し、ポリシID欄250aの値が変数Jと一致している行を削除する(ステップ1212)。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240の各行を検索して、変更前ポリシID欄240aの値が変数Jと一致し、変更後ポリシID欄240bの値が変数Iと一致する行を抽出する。ポリシ設定管理部19は、抽出した行をポリシ変更テーブルから削除して処理を終了する(ステップ1213)。
以上のように、本実施形態において、システム管理者10は、変更調査するポリシと、変更調査する対象の性能監視エージェント13とを特定して、ポリシ変更要求メッセージを送信することによって、特定したポリシに関して特定した性能監視エージェント13を用いて変更調査をすることができる。
さらに、複数の性能監視エージェント13が一つのポリシを用いてアラーム監視を実行している場合がある。このような場合、本実施形態によれば、システム管理者10がポリシ変更確定メッセージを送信すると、そのポリシ変更要求メッセージで特定された性能監視エージェント13だけでなく、ポリシ変更要求メッセージで特定されたポリシを用いて監視している他の性能監視エージェント13についても、ポリシ変更確定メッセージで特定したポリシへの変更を反映させることができる。
図14A及び図14Bは、本発明の実施形態において、調査用のポリシからさらに調査用のポリシを生成するために実行される処理を示すフローチャートである。
具体的には、図14A及び図14Bは、第1ポリシについてのポリシ変更要求メッセージに基づいて第2ポリシを生成した後、第2ポリシについてのポリシ変更確定メッセージが発行される前に、第2ポリシを特定したポリシ変更要求メッセージが発行された場合に実行される処理を示す。
図14A及び図14Bの処理は、図10のステップ907の処理が終了した後に実行される。
システム管理者10は、監視端末A43aの監視コンソール14から、性能監視エージェント13、インスタンス、ポリシ及びポリシ変更内容を特定したポリシ変更要求メッセージを送信する。性能監視マネージャー12のポリシ設定管理部19は、このポリシ変更要求メッセージを送受信部44から受信する(ステップ1301)。ここで、ポリシ変更要求メッセージで特定された性能監視エージェント13及びインスタンスの内容は、それぞれ、ステップ901の変数X1及びX2の内容と同一である。また、ポリシ変更要求メッセージで特定されたポリシは、変数A1の内容と同一である。ここで、変数A1に対応するポリシは第2ポリシである。すなわち、このポリシ変更要求メッセージは、現在の調査用のポリシである第2ポリシから、さらに新たな調査用のポリシ(すなわち第3ポリシ)を生成することを要求するメッセージである。
ポリシ設定管理部19は、ポリシ変更要求メッセージで特定されたポリシ変更内容を変数Y3に代入する。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索し、ポリシID欄250aの値が変数A1と一致する行を変数Aとして記憶する(ステップ1302)。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250に新たな行を追加する。ポリシ設定管理部19は、追加した行を変数Cとして記憶する。ポリシ設定管理部19は、ポリシ管理テーブル250のポリシID欄250aにおいて固有なIDを新たに生成し、生成したIDを変数CのポリシID欄250aに代入する(ステップ1303)。ここで生成したIDを変数C1とする。変数C1に対応するポリシが第3ポリシである。
ポリシ設定管理部19は、変数Cのうち、ポリシID欄250a以外の欄に、変数Aと同一の値を代入する。そして、ポリシ設定管理部19は、変数Y3に対応する変更を変数Cに適用する。例えば、変数Y3が閾値の変更を特定する場合、ポリシ設定管理部19は、変数Cのアラーム条件欄250bに記憶された閾値を、変数Y3で特定された閾値に変更する。
次に、ポリシ設定管理部19は、バインドテーブル230に新たな行を追加する。ポリシ設定管理部19は、追加した行を変数Lとして記憶する。ポリシ設定管理部19は、変数LのポリシID欄230a、エージェント欄230b及びインスタンス欄230cに、それぞれ、変数C1、変数X1及び変数X2を代入する(ステップ1304)。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240に新たな行を追加する。ポリシ設定管理部19は、追加した行を変数Mとして記憶する。ポリシ設定管理部19は、変数Mの変更前ポリシID欄240a及び変更後ポリシID欄240bに、それぞれ、変数A1及び変数C1を代入する(ステップ1305)。これによって、第2ポリシ(すなわち、既に生成されている調査用ポリシ)と、第2ポリシから派生した第3ポリシ(すなわち、新たに生成された調査用ポリシ)とを対応付ける情報がポリシ変更テーブル240に記憶される。
次に、ポリシ設定管理部19は、ポリシ設定配布部18に変数Cの内容を通知する。通知を受けたポリシ設定配布部18は、性能監視エージェント13にポリシの変更を通知する。ポリシの変更の通知を受信した性能監視エージェント13のポリシ設定管理部28は、ポリシ管理テーブル310に新たな行を追加して、その新たな行に変数Cの内容を登録する(ステップ1306)。これによって、新たに生成された第3ポリシが性能監視エージェント13に適用される。
次に、上記のようにして生成された第3ポリシを特定したポリシ変更確定メッセージを受信した場合の処理動作を説明する。
例えば、システム管理者10は、ステップ1306が終了した後、第1ポリシ(すなわち、本番環境用ポリシ)、第2ポリシ(すなわち、第1ポリシから派生した調査用ポリシ)及び第3ポリシ(すなわち、第2ポリシから派生した調査用ポリシ)のそれぞれに基づく性能監視エージェント13によるアラーム監視の結果を参照する。その結果、第3ポリシが最も適切であると判定した場合、システム管理者10は、第3ポリシを特定したポリシ変更確定メッセージを送信する。
性能監視マネージャー12のポリシ設定管理部19は、ポリシ変更確定メッセージを受信する(ステップ1307)。ここで、例として、受信したポリシ変更確定メッセージで特定されるポリシ、性能監視エージェント13及びインスタンスが、それぞれ、上記の変数C1、変数X1及び変数X2と同一の値であった場合について説明する。
ポリシ設定管理部19は、ポリシ変更テーブル240を検索し、変数C1に関連するポリシID一覧を取得し、取得した一覧を変数Dとして記憶する。例えば、ポリシ設定管理部19は、変数C1の変更前のポリシを再帰的に発見していく(ステップ1308)。
具体的には、ポリシ設定管理部19は、変更後ポリシID欄240bの内容が変数C1と一致する行を検索する。ポリシ設定管理部19は、検索によって発見された行の変更前ポリシID欄240aの内容を、変数Dの要素である変数D1として追加する。さらに、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更後ポリシID欄240bの内容が変数D1と一致する行の変更前ポリシID欄240aの内容を、変数Dの要素である変数D2として追加する。ポリシ設定管理部19は、このような処理を、上記の検索条件を満たす行がなくなるまで繰り返す。
ステップ1308の結果、ポリシ変更確定メッセージで特定されたポリシに関連する全てのポリシが特定され、それらの特定されたポリシのポリシIDが変数Dとして記憶される。ポリシ変更確定メッセージで特定されたポリシに関連するポリシとは、ポリシ変更確定メッセージで特定されたポリシの変更前の(言い換えると派生元である)全てのポリシである。例えば、上記のように第1ポリシ、第2ポリシ及び第3ポリシが生成され、ポリシ変更確定メッセージによって第2ポリシが特定された場合、ステップ1308において、第1ポリシが特定される。ポリシ変更確定メッセージによって第3ポリシが特定された場合、ステップ1308において、第1ポリシ及び第2ポリシが特定される。
次に、ポリシ設定管理部19は、変数Dに登録された要素を一つ選択し、選択された要素を変数D1とする(ステップ1309)。
ポリシ設定管理部19は、ポリシ管理テーブル250を検索し、ポリシID欄250aの内容が変数D1と一致する行を変数Nとして記憶する。ポリシ設定管理部19は、変数Nのイベント通知先欄250eの内容を記憶する。そして、ポリシ設定管理部19は、変数Nを削除する(ステップ1310)。ここで、ポリシが複数のエージェントに適用されている場合には、削除しない。
次に、ポリシ設定管理部19は、バインドテーブル230を検索し、ポリシID欄230a、エージェント欄230b及びインスタンス欄230cの内容がそれぞれ変数D1、変数X1及び変数X2と一致する行を削除する(ステップ1311)。
次に、ポリシ設定管理部19は、変数D1、変数X1及び変数X2を特定して、ポリシ設定配布部18にポリシの削除を通知する。この通知を受信したポリシ設定配布部18は、変数D1を特定して、変数X1及び変数X2によって特定される性能監視エージェント13にポリシを削除する処理を実行するよう通知する(ステップ1312)。
この通知を受信した性能監視エージェント13のポリシ設定管理部28は、ポリシ管理テーブル310から、ポリシID欄310aの内容が変数D1と一致する行を削除する(ステップ1313)。これによって、変数D1に対応するポリシの性能監視エージェント13への適用が解除される。言い換えると、以後、この性能監視エージェント13は、変数D1に対応するポリシに基づくアラーム監視を実行しない。
次に、ポリシ設定管理部19は、変数Dに次の要素があるか否かを判定する。次の要素がない場合、処理はステップ1315に進む。次の要素がある場合、ポリシ設定管理部19は、次の要素を選択し、選択された要素を新たに変数D1として、ステップ1309に戻る(ステップ1314)。
次に、ポリシ設定管理部19は、上記処理結果を監視コンソール14に通知する(ステップ1315)。
次に、一つの本番環境用ポリシ(例えば第1ポリシ)から複数の調査用ポリシ(例えば第2ポリシ及び第3ポリシ)を生成するために実行される処理を示す。具体的には、第1ポリシについて別個の複数のポリシ変更要求メッセージに基づいて複数の調査用ポリシが生成された後、それらのうち1つについてのポリシ変更確定メッセージを受信した場合の処理を示す。
例えば、第1ポリシから第2ポリシ及び第3ポリシの二つのポリシを生成し、第3ポリシを特定してポリシ変更確定メッセージを送信した場合の処理を説明する。
第2ポリシ及び第3ポリシを生成するためのポリシ変更要求メッセージを受信したときの処理は、図10のステップ901からステップ907までと同様であるため、説明を省略する。
続いて、第3ポリシを特定したポリシ変更確定メッセージを受信したときの処理を示す。
なお、以下に説明するステップ1321〜ステップ1329は、それぞれ、図14Bに示すステップ1307〜ステップ1315に対応するため、図示を省略する。従って、以下の説明における「ステップ1321」〜「ステップ1329」の表示は、それぞれ、「ステップ1307」〜「ステップ1315」によって置き換えられてもよい。ただし、ステップ1308において実行される具体的な処理は、既に説明されたものと異なっている。
性能監視マネージャー12のポリシ設定管理部19は、ポリシ変更確定メッセージを受信する(ステップ1321)。ここで、例として、受信したポリシ変更確定メッセージで特定されるポリシ、性能監視エージェント13及びインスタンスが、それぞれ、上記の変数C1、変数X1及び変数X2と同一の値であった場合についてする。
ポリシ設定管理部19は、ポリシ変更テーブル240を検索し、変数C1に関連するポリシID一覧を取得し、取得した一覧を変数Dとして記憶する。ここで、ポリシ設定管理部19は、変更前ポリシID欄240aの内容が、変数C1の変更前ポリシID欄240aの内容と一致する行を抽出して、一致した行の変更後ポリシID欄240bの内容を変数Dとして記憶する(ステップ1322)。
具体的には、ポリシ設定管理部19は、変更後ポリシID欄240bの内容が変数C1と一致する行を検索する。ポリシ設定管理部19は、検索によって発見された行の変更前ポリシID欄240aの内容を、変数Dの要素である変数D1として追加する。さらに、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更前ポリシID欄240aの内容が変数D1と一致する行の変更後ポリシID欄240bの内容を、変数Dの要素である変数D2として追加する。ポリシ設定管理部19は、このような処理を、上記の検索条件を満たす行がなくなるまで繰り返す。なお、変数C1は、変数Dから除外される。
ステップ1322の結果、ポリシ変更確定メッセージで特定されたポリシに関連する全てのポリシが特定され、それらの特定されたポリシのポリシIDが変数Dとして記憶される。ポリシ変更確定メッセージで特定されたポリシに関連するポリシとは、ポリシ変更確定メッセージで特定されたポリシの変更前の(言い換えると派生元である)ポリシ、及び、その変更前のポリシを変更するために生成された全ての調査用ポリシである。例えば、上記のように、本番環境用のポリシである第1ポリシ、第1ポリシを変更するために生成された調査用ポリシである第2ポリシ、及び、第1ポリシを変更するために生成された調査用ポリシである第3ポリシが生成され、ポリシ変更確定メッセージによって第3ポリシが特定された場合、ステップ1322において、第1ポリシ及び第2ポリシが特定される。
次に、ポリシ設定管理部19は、変数Dに登録された要素を一つずつ選択し、選択された要素を変数D1とする(ステップ1323)。
ポリシ設定管理部19は、ポリシ管理テーブル250を検索し、ポリシID欄250aの内容が変数D1と一致する行を変数Nとして記憶する。ポリシ設定管理部19は、変数Nのイベント通知先欄250eの内容を記憶する。そして、ポリシ設定管理部19は、変数Nを削除する(ステップ1324)。
次に、ポリシ設定管理部19は、バインドテーブル230を検索し、ポリシID欄230a、エージェント欄230b及びインスタンス欄230cの内容がそれぞれ変数D1、変数X1及び変数X2と一致する行を削除する(ステップ1325)。
次に、ポリシ設定管理部19は、変数D1、変数X1及び変数X2を特定して、ポリシ設定配布部18にポリシの削除を通知する。この通知を受信したポリシ設定配布部18は、変数D1を特定して、変数X1及び変数X2によって特定される性能監視エージェント13にポリシを削除する処理を実行するよう通知する(ステップ1326)。
この通知を受信した性能監視エージェント13のポリシ設定管理部28は、ポリシ管理テーブル310から、ポリシID欄310aの内容が変数D1と一致する行を削除する(ステップ1327)。これによって、変数D1に対応するポリシの性能監視エージェント13への適用が解除される。言い換えると、以後、この性能監視エージェント13は、変数D1に対応するポリシに基づくアラーム監視を実行しない。
次に、ポリシ設定管理部19は、変数Dに次の要素があるか否かを判定する。次の要素がない場合、処理はステップ1329に進む。次の要素がある場合、ポリシ設定管理部19は、次の要素を選択し、選択された要素を新たに変数D1として、ステップ1323に戻る(ステップ1328)。
次に、ポリシ設定管理部19は、上記処理結果を監視コンソール14に通知する(ステップ1329)。
なお、第1ポリシについてポリシ変更要求を受信した後、第1ポリシを直接変更することを要求するポリシ変更要求を受信した場合、ポリシ設定管理部19は、上記のステップ1321〜ステップ1329に示すものと同様の処理を実行することができる。
ここで、直接変更することを要求するポリシ変更要求メッセージとは、例えば、本番環境を監視するポリシの内容を直接変更する要求である。当該要求を受信すると、性能監視マネージャー12は、本番環境用のポリシをコピーすることによって調査用のポリシを生成することなく、本番環境用のポリシの内容を変更する。
このような、本番環境用のポリシを直接変更するためのポリシ変更要求メッセージは、既に説明したポリシ変更要求メッセージと、ポリシ変更確定メッセージとを組み合わせたものであると考えることができる。このため、このような直接変更するポリシ変更要求を受信した場合、ポリシ設定管理部19は、上記と同様の処理を実行することができる。
図15は、本発明の実施形態におけるシステム管理者10によって参照される監視画面の一例を示す説明図である。
図15に示した監視画面1500は、エージェント選択部1502及び閾値入力部1501を含む。
エージェント選択部1502は、適用されているポリシが変更される性能監視エージェント13を選択するための画面である。例えば、エージェント選択部1502には、性能監視マネージャー12の管理対象である性能監視エージェント13が列挙される。
図15に示す「Agent(host01)」等は、各性能監視エージェント13を識別する情報である。システム管理者10が、マウス等の入力手段によって、それらのうち例えば「Agent(host01)」1504を選択すると、「Agent(host01)」1504によって識別される性能監視エージェント13に関連付けられているポリシに関するアラーム条件編集画面が閾値入力部1501に表示される。
閾値入力部1501は、エージェント選択部1502で選択された性能監視エージェント13に適用されるポリシの一覧を表示し、それらに対する変更を受け付けるための画面である。
閾値入力部1501は、一つ以上のポリシ変更部1503を含む。具体的には、閾値入力部1501は、エージェント選択部1502で選択された性能監視エージェントに適用されているポリシに対応するポリシ変更部1503を含む。各ポリシ変更部1503は、ポリシに設定されたアラーム条件表示部1506と、そのポリシを操作する操作メニューを備えている。
アラーム条件表示部1506は、エージェント選択部1502で選択された性能監視エージェント13に適用されるポリシのアラーム条件が表示され、閾値が入力されるテキストボックスを含む。なお、閾値を入力する手段はテキストボックスに限定されない。例えば、アラーム条件表示部1506は、セレクトボックスなどの入力手段を含んでもよい。
ポリシを操作する操作メニューには、例えば、変更ボタン1507、変更確定ボタン1508、既定値ボタン1509、UNDOボタン1510及びREDOボタン1511が含まれる。ただし、操作メニューはボタンに限定されない。例えば、操作メニューは、テキストリンクであってもよいし、マウス等の入力手段で選択されたことを契機にしてその他の同様の機能を実現する方法であれば、いずれの方法が用いられてもよい。あるいは、マウス等の入力手段で選択又は入力するのではなく、処理イベントなどを契機として同様の機能が実行されてもよい。また、各ポリシ変更部1503は、これらの操作メニューの一部のみを含んでもよい。
変更ボタン1507は、マウス等の入力手段の操作を契機に、ポリシ変更要求を発行させる機能を有する。システム管理者10が、アラーム条件表示部1506のテキストボックスに新たな閾値を入力して、変更ボタン1507を選択すると、新たな閾値の値を含むアラーム条件式が設定された調査用ポリシを生成するポリシ変更要求が発行される。変更ボタン1507は、調査用ポリシが生成されているか否かにかかわらず、常に選択することができる。
変更確定ボタン1508は、ポリシ変更確定メッセージを発行する機能を有する。システム管理者10が変更確定ボタン1508を選択すると、アラーム条件表示部1506に表示された調査用ポリシの内容を、本番環境用ポリシに反映させる処理が実行される。変更確定ボタン1508は、調査用ポリシが生成されている場合でなければ、選択することができない。
既定値ボタン1509は、ポリシ変更破棄メッセージを発行する機能を有する。システム管理者10が既定値ボタン1509を選択すると、アラーム条件表示部1506に表示された調査用ポリシの内容を、本番環境用のポリシの内容に書き換える処理が実行される。既定値ボタン1509は、調査用ポリシが生成されていなければ、選択することができない。
UNDOボタン1510は、現在調査中の調査用ポリシの内容を変更前の調査用ポリシ又は本番環境用ポリシの内容に戻す機能を有する。システム管理者10がUNDOボタン1510を選択すると、ポリシの変更履歴を遡って参照し、そのポリシの内容を過去のポリシの内容に戻す処理が実行される。UNDOボタン1510は、ポリシの変更履歴情報が蓄積されていない場合及び戻すべき変更履歴情報がない場合には選択することができない。
REDOボタン1511は、UNDOボタンの選択を取り消す機能を有する。言い換えると、REDOボタン1511は、UNDOボタンの選択によってポリシの内容が変更前のものに戻されたとき、逆にUNDOボタンを押す前の状態に進める機能を有する。REDOボタン1511は、ポリシの変更履歴情報が蓄積されていない場合及び進むべき変更履歴情報がない場合には選択することができない。
なお、図15に示す監視画面は一例であって、本実施形態の監視画面はこれに限定されない。例えば、アラーム条件表示部1506において、本番環境用ポリシの内容に変更が加えられた場合、アラーム条件表示部1506が強調表示されてもよい。あるいは、ポリシ変更要求メッセージを送信したとき、ポリシ変更テーブル240を参照して、変更要求メッセージ送信前のポリシを特定し、当該変更前のポリシの内容と変更後のポリシの内容とを比較して、その差分を監視画面1500強調して表示してもよい。例えば、アラーム条件の閾値に差分があるとき、アラーム条件表示部1506を太字又は彩色によって強調して表示することによって、その閾値が変更されていることをシステム管理者10に知らせることができる。
図16は、本発明の実施形態において、ポリシに設定された条件式の閾値を調整するために表示される監視画面の一例を示す説明図である。
例えば、本番環境を監視するポリシである第1ポリシについて、ある性能監視エージェント13を特定して、変更調査を実行する場合、本画面が用いられる。すなわち、本画面は、特定した性能監視エージェント13が収集及び蓄積した履歴情報を参照して、第1ポリシに設定した閾値が妥当な値か否かを判定し、さらに、その閾値が最適な値になるように調整するために用いられる監視画面である。
図16に示した監視画面1400は、ポリシ名表示部1401、閾値入力部1402、履歴情報表示部1404及びアラーム監視結果表示部1403を含む。
ポリシ名表示部1401は、閾値が調整されるポリシのポリシ名を表示する。
閾値入力部1402は、ポリシの条件式に設定された閾値を調整するための入力を受け付ける。
閾値入力部1402は、異常閾値入力部1405及び警告閾値入力部1406を含む。異常閾値入力部1405は、異常イベントを発行するアラーム条件式を表示し、異常閾値入力欄1407を含む。警告閾値入力部1406は、警告イベントを発行するアラーム条件式を表示し、警告閾値入力欄1408を含む。
例えば、異常閾値入力欄1407及び警告閾値入力欄1408は、アラーム条件式の閾値を編集するテキストボックスを含んでもよい。システム管理者10が、当該テキストボックスに変更後の閾値を入力して、決定ボタン1415をマウス等の入力手段によって選択すると、入力した閾値に基づくアラーム監視が開始される。一方、システム管理者10がキャンセルボタン1416を選択すると、1402に入力された変更処理が破棄され、第1ポリシの変更処理が終了する。
閾値入力部1402の閾値入力手段は、テキストボックスには限定されず、ダイアログボックスであってもよいし、プルダウン形式又はリスト形式のセレクトボックスであってもよい。
また、後述する履歴情報表示部1404に表示した異常閾値1413又は警告閾値1414をマウスなどの入力手段でドラッグすることによって閾値を調整してもよい。この場合、ドラッグして調整された閾値の値が異常閾値入力欄1407又は警告閾値入力欄1408にも反映されて表示される。
システム管理者10が異常閾値入力欄1407又は警告閾値入力欄1408を変更して再描画ボタン1417をマウスなどの入力手段によって選択すると、後述する履歴情報表示部1404及びアラーム監視結果表示部1403の内容が更新され、再描画される。履歴情報表示部1404及びアラーム監視結果表示部1403の再描画の契機は、再描画ボタン1417の選択に限定されず、異常閾値入力欄1407又は警告閾値入力欄1408の入力データが変更されたことを契機として再描画されてもよい。
また、システム管理者10が既定値に戻すボタン1409をマウス等の入力手段によって選択すると、異常閾値入力部1405又は警告閾値入力部1406のテキストボックスに入力された値が、本番環境用のポリシとして設定された第1ポリシの異常閾値や警告閾値の値に戻される。
履歴情報表示部1404は、性能監視エージェント13が収集した性能情報の履歴情報のうち、ある指定した時刻における履歴情報と、調査中のポリシに設定された閾値とを同一グラフ上に表示する。このグラフは、アラーム条件式に設定した閾値が妥当な値であるか否かを調べるために参照される。例えば、履歴情報表示部1404は、履歴情報1412、異常閾値1413、警告閾値1414、表示開始時刻入力欄1410及び表示終了時刻入力欄1411を含む。
履歴情報1412は、後述する表示開始時刻入力欄1410に入力された時刻から、表示終了時刻入力欄1411に入力された時刻までの間に性能監視エージェント13が収集した性能情報の履歴情報である。表示される性能情報は、変更するポリシに関する異常閾値1413又は警告閾値1414が対象とする性能監視メトリックである。図16の例では、性能情報としてCPU使用率(%)が収集及び表示される。
異常閾値1413は、異常閾値入力部1405に入力された値を履歴情報表示部1404のグラフ上に表示したものである。
警告閾値1414は、警告閾値入力部1406に入力された値を履歴情報表示部1404のグラフ上に表示したものである。
表示開始時刻入力欄1410は、履歴情報表示部1404のグラフ上に表示される履歴情報1412の開始時刻を入力するためのものである。例えば、テキストボックス又はカレンダー表示された日付選択リンクを選択することによって、日付及び時刻が入力される。
表示終了時刻入力欄1411は、履歴情報表示部1404のグラフ上に表示される履歴情報1412の終了時刻を入力するためのものである。例えば、テキストボックス又はカレンダー表示された日付選択リンクを選択することによって、日付及び時刻が入力される。
例えば、表示開始時刻入力欄1410及び表示終了時刻入力欄1411に、監視対象16に異常が発生した時間帯を指定して、設定した閾値が適切か否かを判定することができる。
アラーム監視結果表示部1403は、履歴情報表示部1404の表示開始時刻入力欄1410及び表示終了時刻入力欄1411に入力された時刻が示す時間帯における履歴情報と、閾値入力部1402に入力された閾値とを比較した結果を表示する。具体的には、履歴情報の全体の時間のうち、異常状態にある時間(すなわち、履歴情報の値が異常閾値を超えている時間)の割合、警告状態にある時間(すなわち、履歴情報の値が警告閾値より大きく、異常閾値以下である時間)の割合、及び、正常状態にある時間(すなわち、履歴情報の値が警告閾値以下である時間)の割合を表示するものである。アラーム監視結果表示部1403は、閾値入力部1402に入力された閾値の値が妥当であるかどうかを判断するために参照される。例えば、システム管理者10が、監視対象16に障害が発生した時間帯の履歴情報を履歴情報表示部1404で指定し、その時間帯における異常状態又は警告状態にある時間の割合が十分高くなっているか否かを判定することによって、閾値入力部1402に入力した閾値の値が妥当であるか否か(すなわち、高すぎたり低すぎたりしないか)を判定することができる。
このように、監視画面1400を参照することによって、適当なタイミングでイベントを発行するアラーム条件の閾値を設定することができる。その結果、閾値の値が妥当でないために、障害が発生したにもかかわらず見落としたり、障害が発生していないにもかかわらず誤って障害であると判定してしまったりすることを防止することができる。
なお、履歴情報表示部1404に表示されるデータは、障害ケースの履歴情報又は正常ケースの履歴情報に限定されず、障害ケースのテスト情報又は正常ケースのテスト情報が表示されてもよい。すなわち、性能監視エージェント13が収集した履歴情報ではなく、異常イベント又は警告イベントを発行しなければならない監視対象の障害を表す性能情報データを外部から取り込んで、履歴情報表示部1404に表示してもよい。同様に、異常イベント又は警告イベントを発行してはならない正常な性能情報データを外部から取り込んで、履歴情報表示部1404に表示してもよい。
なお、以上に記載した本発明の実施形態において、ポリシ変更テーブルにポリシの変更履歴が記憶されてもよい。これによって、ポリシ変更確定メッセージを受信した後も、システム管理者は、変更履歴に基づいて、過去に調査したポリシの変更内容を参照することができ、現在のポリシの内容を過去に調査したポリシの内容に戻すことができる。ポリシの変更回数が複数回にわたっている場合には、数回前のポリシの内容に戻すこともできる。
また、上記の実施形態において、ポリシ設定管理部19が、記憶部20に、ポリシ変更情報間の関連付け情報を記憶しておいてもよい。これによって、複数ポリシの変更及び調査、複数ポリシへの変更の反映、及び、複数ポリシの変更の破棄をまとめて実行することができる。
さらに、ポリシの属するグループ(すなわちポリシグループ)に関する情報を記憶しておき、ポリシグループごとにまとめて変更調査処理、変更確定処理及び変更を破棄する処理をすることができる。
以下、ポリシグループごとの処理について説明する。
図17は、本発明の実施形態のポリシグループテーブル1800の説明図である。
本実施形態のポリシグループテーブル1800は、例えば、性能監視マネージャー12の記憶部20に記憶されてもよい。
図示するように、ポリシグループテーブル1800は、ポリシグループID欄1800a及びポリシID欄1800bを含む。
ポリシグループID欄1800aには、ポリシグループを一意に識別する識別情報(例えば、「ポリシグループ1」のようなポリシグループ名)が記憶される。
ポリシID欄1800bには、各ポリシグループに含まれるポリシを一意に識別する識別情報が記憶される。これらの識別情報は、ポリシ管理テーブル250のポリシID欄250aに記憶された内容に対応する。
図17の例では、ポリシグループテーブル1800の最初のレコードのポリシグループID欄1800a及びポリシID欄1800bに、それぞれ、「ポリシグループ1」及び「ポリシ1、ポリシ2、ポリシ3」が記憶されている。これは、「ポリシグループ1」によって識別されるポリシグループに、「ポリシ1」、「ポリシ2」及び「ポリシ3」によって識別される三つのポリシが含まれることを示す。
図18は、本発明の実施形態のポリシグループ変更テーブル1900の説明図である。
本実施形態のポリシグループ変更テーブル1900は、例えば、性能監視マネージャー12の記憶部20に記憶されてもよい。
図示するように、ポリシグループ変更テーブル1900は、変更前ポリシグループID欄1900a及び変更後ポリシグループID欄1900bを含む。ポリシグループ変更テーブル1900の各レコードに、変更前ポリシグループID欄1900aに記憶された内容に対応するポリシグループが、変更後ポリシグループID欄1900bに記憶された内容に対応するポリシグループに変更されたことが記憶される。
変更前ポリシグループID欄1900a及び変更後ポリシグループID欄1900bには、ポリシグループを一意に識別する識別情報が記憶される。これらの識別情報は、ポリシグループテーブル1800のポリシグループID欄1800aに記憶された内容に対応する。
図18の例では、ポリシグループ変更テーブル1900の最初のレコードの変更前ポリシグループID欄1900a及び変更後ポリシグループID欄1900bに、それぞれ、「ポリシグループ1」及び「ポリシグループ2」が記憶されている。これは、「ポリシグループ1」によって識別されるポリシグループ(例えば第1ポリシグループ)と、「ポリシグループ2」によって識別されるポリシグループ(例えば第2ポリシグループ)とが関連付けられていることを示す。第1ポリシグループと第2ポリシグループとが関連付けられていることは、例えば、第1ポリシグループに含まれるポリシが本番環境用のポリシであり、第2ポリシグループに含まれるポリシが、第1ポリシグループに含まれるポリシから派生した調査用のポリシであることを意味してもよい。
図19Aは、本発明の実施形態において、ポリシグループごとのポリシ変更要求メッセージが発行された場合に実行される処理を示すフローチャートである。
ポリシ設定管理部19は、ポリシグループ変更要求を受信する。ポリシグループ変更要求メッセージは、変更対象であるポリシグループを識別するポリシグループIDを特定する変数Aを含む。さらに、ポリシグループ変更要求メッセージは、変数Aのポリシグループに属する各ポリシの変更情報の一覧を変数B、変更後のポリシ定義情報を変数Cとして特定する(ステップ1701)。
次に、ポリシ設定管理部19は、ポリシグループテーブル1800に新たなレコードを追加し、そのレコードを変数Dとして記憶する。ポリシ設定管理部19は、ポリシグループIDを生成して、生成したポリシグループIDを変数D1として変数DのポリシグループID欄1800aに記憶する。さらに、ポリシ設定管理部19は、変数Dのポリシ欄に変数Bで特定されたポリシ変更情報に基づく変更後のポリシID一覧を記憶する(ステップ1702)。
次に、ポリシ設定管理部19は、ポリシグループ変更テーブル1900に新たなレコードを追加し、そのレコードを変数Eとして記憶する。ポリシ設定管理部19は、変数Eの変更前ポリシグループID欄1900aに変数Aを代入し、変更後ポリシグループID欄1900bに変数D1を代入する(ステップ1703)。
次に、ポリシ設定管理部19は、変数Cで特定される変更後のポリシ定義情報を抽出し、それぞれポリシ管理テーブル250に新たなレコードとして追加する(ステップ1704)。
次に、ポリシ設定管理部19は、変数Bで特定される各ポリシ変更情報を抽出し、それぞれをポリシ変更テーブル240に新たなレコードとして追加する(ステップ1705)。
次に、ポリシ設定管理部19は、ポリシの変更内容を性能監視エージェント13に通知する。通知を受信した性能監視エージェント13はポリシ管理テーブル310を更新する(ステップ1706)。
ステップ1701において、システム管理者10が、ポリシグループに属するポリシ一覧を提示して、変更するよう指示してもよいが、システム管理者10があるポリシについてポリシ変更要求メッセージを送信したときに、ポリシ設定管理部19がポリシグループテーブル1800を参照して、当該ポリシと関連するポリシ一覧を求めて、当該関連するポリシ一覧も変更するようシステム管理者10に示してもよい。
図19Bは、本発明の実施形態において、ポリシグループごとのポリシ変更確定メッセージが発行された場合に実行される処理を示すフローチャートである。
システム管理者は、複数のポリシに対してポリシ変更確定メッセージを送信してもよい。ここでは、複数のポリシがポリシグループとして管理され、システム管理者がポリシグループに対して、ポリシグループの変更確定メッセージを送信することによって、当該ポリシグループに属するポリシの変更処理を一括して確定させる処理について説明する。
ポリシ設定管理部19は、システム管理者10が送信したポリシグループ変更確定メッセージを受信する。ポリシ設定管理部19は、ポリシグループ変更確定メッセージによって特定されたポリシグループを変数Dとして記憶する(ステップ1720)。
次に、ポリシ設定管理部19は、ポリシグループ変更テーブル1900を検索して、変更前ポリシグループID欄1900aの内容が変数Dと一致するレコードを変数Eとして記憶する。ポリシ設定管理部19は、変数Eの変更後ポリシグループID欄1900bの内容を変数Fとして記憶する(ステップ1721)。
次に、ポリシ設定管理部19は、ポリシグループテーブル1800を検索して、ポリシグループID欄1800aの内容が変数Fと一致するレコードを変数Gとして記憶する。ポリシ設定管理部19は、変数GのポリシID欄1800bを変数Hとして記憶する。ポリシ設定管理部19は、変数Gのレコードをポリシグループテーブル1800から削除する(ステップ1722)。
次に、ポリシ設定管理部19は、変数Hの要素のうち一つを選択して、選択した要素を変数H1として記憶する(ステップ1723)。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索して、ポリシID欄250aの内容が変数H1と一致するレコードを変数Iとして記憶する。ポリシ設定管理部19は、変数Iのイベント通知先欄250eの内容を変数I1として記憶する。ポリシ設定管理部19は、変数Iのレコードをポリシ管理テーブル250から削除する(ステップ1724)。
次に、ポリシ設定管理部19は、ポリシ変更テーブル240を検索して、変更前ポリシID欄240aの内容が変数H1と一致するレコードを変数Jとして記憶する。ポリシ設定管理部19は、変数Jの変更後ポリシID欄240bを変数Kとして記憶する。ポリシ設定管理部19は、変数Jのレコードを削除する(ステップ1725)。
次に、ポリシ設定管理部19は、ポリシ管理テーブル250を検索して、ポリシID欄250aの内容が変数Kと一致するレコードを変数Lとして記憶する。変数Lのイベント通知先欄250eに変数I1を代入する(ステップ1726)。
次に、ポリシ設定管理部19は、変数Hに残りの要素があるか否かを判定する。判定の結果、残りの要素がある場合、処理はステップ1723に戻り、残りの要素がない場合、処理はステップ1728に進む(ステップ1727)。
次に、ポリシ設定管理部19は、性能監視エージェント13に対してポリシの変更を指示する通知を送信する。この通知を受信したポリシ設定管理部28は、ポリシ管理テーブルを検索して、当該変更を反映する(ステップ1728)。
以上の処理によって、関連性のある複数のポリシをまとめて変更確定処理することができる。このため、ポリシの変更確定もれを防止することができる。
ポリシに変更を反映させる処理は、どのような方法で実行されてもよい。例えば、本番環境用の第1ポリシグループの調査のため、第1ポリシグループをコピーすることによって第2ポリシテーブルを生成し、調査したとする。ここで、第1ポリシグループに第1ポリシと第2ポリシとが含まれており、第2ポリシグループには第1ポリシから生成した第3ポリシと、第2ポリシから生成した第4ポリシが含まれるとする。この場合、反映する処理は、例えば、上記に示したように、第1ポリシ及び第2ポリシを削除して、第3ポリシ及び第4ポリシを本番環境用のポリシに変更することによって実行されてもよい。あるいは、例えば、第3ポリシ及び第4ポリシのポリシ定義情報のうちイベント通知先以外の情報を第1ポリシ及び第2ポリシの定義内容に上書きし、第3ポリシ及び第4ポリシを削除してもよい。
また、上記の実施形態では、調査用のポリシを本番環境用のポリシに反映させるために、イベント通知先が変更されるが、この反映は、他の方法によって実行されてもよい。なお、このポリシの反映処理動作において、反映後に旧本番環境用ポリシを削除する処理は必須ではない。旧本番環境用ポリシは、ポリシの変更履歴として記憶されてもよい。
ここで、この実施形態では、ポリシ変更要求メッセージを受信したポリシ設定管理部19は、ポリシ変更テーブル240にポリシの変更情報を記憶しているが、記憶部20にポリシグループ間の変更情報を記憶するポリシグループ変更テーブル1900を新たに設け、ポリシグループのポリシ変更要求メッセージを受信した場合、その変更前後のポリシグループを変更情報として当該ポリシグループ変更テーブル1900に記憶してもよい。その場合、ポリシ設定管理部19は、ポリシ変更確定メッセージを受信すると、当該ポリシグループ変更テーブル1900を検索して、元のポリシグループを参照し、反映処理を行う。
また、ここで、ポリシグループは、タグのようにポリシに対して複数付与されてもよい。言い換えると、一つのポリシが複数のポリシグループに含まれてもよい。
なお、以上に記載した実施形態において、性能監視マネージャーホスト40、性能監視エージェントホスト41、監視端末A43a及び監視端末B43bが別個の装置として記載されているが、本発明はこのような態様に限定されない。すなわち、上記の各部が一つの装置(一つの計算機又は一つの端末)で構成されてもよい。
また、以上に記載した実施形態において、一つの性能監視マネージャー12が一又は複数の性能監視エージェント13を管理するが、本発明はこのような態様に限定されない。例えば、本発明を実現する情報処理システムは、一又は複数の性能監視エージェント13を管理する性能監視サブマネージャー(図示省略)と、一又は複数の当該性能監視サブマネージャーをさらに管理する性能監視マネージャーと、を備えてもよい。このような構成は、特に、大規模なシステムで多数の性能監視エージェント13を管理しなければならない場合に有効である。あるいは、例えば、二つの性能監視マネージャー12が別個の性能監視マネージャーホスト40で稼動しており、それらの一方の性能監視マネージャー12が主系(本番系)として稼動し、もう一方の性能監視マネージャーが待機系(予備系)として稼動してもよい。
さらに、以上に記載した実施形態においては、一つの性能監視エージェント13が一つの監視対象16を監視するが、本発明はこのような態様には限定されない。すなわち、一つの性能監視エージェント13が一つ又は複数の監視対象16を監視してもよい。あるいは、二以上の性能監視エージェント13が一つの監視対象16を監視してもよい。例えば、二つの性能監視エージェント13が一つの監視対象16を監視する構成において、それらの二つのうち一方の性能監視エージェント13が主系(本番系)として稼動し、もう一方の性能監視エージェント13が待機系(予備系)として稼動してもよい。
また、以上に記載した実施形態においては、監視コンソール14と、統合コンソール15とが別個の構成要素として記載されているが、本発明はこのような態様に限定されない。すなわち、監視コンソール14及び統合コンソール15が一つの構成要素として構成され、それを操作する者の権限に応じて、表示される内容が選択されてもよい。例えば、監視コンソール14の機能と統合コンソール15の機能の双方を有するコンソールを構成し、当該コンソールにオペレータ権限のパスワードでログインした場合にはオペレータ向けの内容を当該コンソールに表示し、システム管理者権限のパスワードでログインした場合にはシステム管理者向けの内容を当該コンソールに表示してもよい。さらに、以上の実施形態においては、一つの監視コンソール14及び一つの統合コンソール15のみが記載されているが、本発明はこのような態様には限定されない。すなわち、一又は複数の別個の監視端末を監視コンソール14又は統合コンソールとして構成し、複数のシステム管理者及び複数のオペレータが監視してもよい。
また、以上に記載した実施形態においては、性能監視マネージャーホスト40、性能監視エージェントホスト41、監視端末A43a及び監視端末B43bは、ネットワーク49を介して相互に通信することができるように記載されているが、本発明はこのような態様に限定されない。すなわち、これらの装置のうち一部または全部が異なるネットワークを介して接続されてもよい。例えば、性能監視マネージャーホスト40及び性能監視エージェントホスト41が属するローカルエリアネットワークと、監視端末A43aが属するローカルエリアネットワークと、監視端末B43bが属するローカルエリアネットワークが別個のネットワークとして構成され、これらのローカルエリアネットワークが相互にインターネットを介して通信可能に接続されてもよい。
なお、ネットワーク49は、いかなる通信方式によって実現されていてもよい。例えば、ネットワーク49は、有線ネットワーク又は無線ネットワークのいずれの通信方式であってもよい。さらに、ネットワーク49は、物理的なネットワークであっても、論理的なネットワークであってもよい。
また、以上に記載した実施形態においては、イベント発行部17が統合コンソール15及び監視コンソール14にイベントを通知するが、本発明はこのような態様には限定されない。すなわち、イベント発行部26が統合コンソール15及び監視コンソール14にイベントを通知してもよい。
さらに、図2では、統合コンソール15及び監視コンソール14にイベントが通知される例を記述したが、本発明はこのような態様には限定されない。すなわち、イベント発行部17がオペレータ11又はシステム管理者10にメールを配信してもよいし、イベント発行部17から指定したコマンド実行ホストに対してコマンドを実行するよう問合せてもよい。
さらに、以上に記載した実施形態においては、情報処理システムの各構成要素(例えば、ポリシ設定管理部19等)がソフトウェア(すなわち計算機上で実行されるプログラム)である場合について説明したが、これは、上記の構成要素がソフトウェアとして実装されていないと本実施形態が実現できないことを意味しているのではない。例えば、性能監視マネージャー12のポリシ設定管理部19と、ポリシ設定配布部18と、記憶部20と、送受信部44と、イベント発行部17と、性能監視エージェント13のイベント発行部26と、アラーム判定部27と、ポリシ設定管理部28と、収集部29と、の一部又は全部が、ハードウェアとして実装されていても本実施形態は実現できる。