JP5155699B2 - 情報処理装置、情報処理方法及びプログラム - Google Patents

情報処理装置、情報処理方法及びプログラム Download PDF

Info

Publication number
JP5155699B2
JP5155699B2 JP2008058328A JP2008058328A JP5155699B2 JP 5155699 B2 JP5155699 B2 JP 5155699B2 JP 2008058328 A JP2008058328 A JP 2008058328A JP 2008058328 A JP2008058328 A JP 2008058328A JP 5155699 B2 JP5155699 B2 JP 5155699B2
Authority
JP
Japan
Prior art keywords
information
configuration
configuration change
change request
computer system
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.)
Active
Application number
JP2008058328A
Other languages
English (en)
Other versions
JP2009217373A (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.)
NS Solutions Corp
Original Assignee
NS Solutions Corp
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 NS Solutions Corp filed Critical NS Solutions Corp
Priority to JP2008058328A priority Critical patent/JP5155699B2/ja
Publication of JP2009217373A publication Critical patent/JP2009217373A/ja
Application granted granted Critical
Publication of JP5155699B2 publication Critical patent/JP5155699B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、対象となるコンピュータシステムを自律的に管理する自律型コンピューティングに適用可能な技術に関するものである。
人間によるコンピュータシステムの管理の負荷を軽減するためにコンピュータが自ら管理する仕組み、所謂自律型コンピューティングが知られている。自律型コンピューティングでは、コンピュータシステムに障害等が発生すると、所定の運用指針(ポリシー)に基づいて、自律的な自己の障害を修復することができる。
特許文献1に開示される発明では、この自律型コンピューティングにおいて管理する対象となる環境、即ち自律型コンピューティング環境を構成するコンピュータシステム上で或るイベントが発生すると、そのイベントに予め紐付けされたポリシーを満たすような処理が自律的に行われていた。
特開2006−92291号公報
しかしながら、特許文献1に開示される発明は、例えば、自律型コンピューティング環境を構成するコンピュータシステム内の或るサーバのCPU利用率が上昇し、閾値を超えると、ノードの追加等のポリシーを満たす処理が自律的に行われるだけであった。
ノードの追加等のコンピュータシステムの構成変更は、決められた期限までに完了することが求められるとともに或る程度の時間を要する。従って、その期限に構成変更を完了するためには構成変更に要する時間を考慮すべきであるが、従来、この点については全く考慮されていない。
また、特許文献1に開示される発明においては、1カ月や1週間先等、比較的先の未来までのコンピュータシステムの構成変更のスケジュールを決定することが自律的に行うことができない。このような長期的なスケジューリングを行う際には、実際にコンピュータシステムが必要とする構成変更を的確に把握し、適切に構成変更のスケジュールを組む必要があるが、この点についても考慮されたものではない。
そこで、本発明の目的は、適切な構成変更のスケジューリングを行うことを可能とすることにある。
本発明の他の目的は、実現可能なスケジューリング結果を得ることを可能とすることにある。
更に本発明の他の目的は、構成変更に要する時間を考慮した最適なタイミングでコンピュータシステムの構成変更のスケジューリングを可能とすることにある。
本発明の情報処理装置は、少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置であって、前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成手段と、前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成手段と、前記要求情報生成手段により生成される各構成変更要求情報について、前記要求情報生成手段により同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する第1の記録媒体と、前記第1の記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリング手段と、前記第1のスケジューリング手段により決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録した第2の記録媒体と、前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第2の記録媒体に記録される前記構成変更履歴情報に基づいて算出する変更期間算出手段と、前記変更期間算出手段によって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリング手段とを有することを特徴とする。
本発明の情報処理方法は、少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置による情報処理方法であって、前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成ステップと、前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成ステップと、前記要求情報生成ステップにより生成される各構成変更要求情報について、前記要求情報生成ステップにより同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリングステップと、前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第1のスケジューリングステップにより決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録する記録媒体において記録される前記構成変更履歴情報に基づいて算出する変更期間算出ステップと、前記変更期間算出ステップによって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリングステップとを含むことを特徴とする。
本発明のプログラムは、少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成ステップと、前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成ステップと、前記要求情報生成ステップにより生成される各構成変更要求情報について、前記要求情報生成ステップにより同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリングステップと、前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第1のスケジューリングステップにより決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録する記録媒体において記録される前記構成変更履歴情報に基づいて算出する変更期間算出ステップと、前記変更期間算出ステップによって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリングステップとをコンピュータに実行させることを特徴とする。
本発明においては、コンピュータシステムの構成を変更するための要求情報が生成されると、その要求情報に対応する要求情報の履歴が管理されている場合にその信頼度を更新し、所定の条件を満たす信頼度の要求情報の履歴に基づいて更新変更処理のスケジューリングを行うように構成している。従って、本発明によれば、同じ要求情報が数回生成された場合に信頼性がある要求情報の履歴として扱い、その信頼性のある要求情報の履歴に基づいてスケジューリングを行うことができるため、適切な構成変更のスケジューリングを行うことが可能となる。
また本発明においては、各要求情報の履歴に対応して計画された構成変更に要する期間が重複しないようにスケジューリング結果を修正するようにしているため、実現可能なスケジューリング結果を得ることが可能となる。併せて、リソースの割り当てタイミングが調整されることによって、リソースの利用の効率化が可能となる。
また本発明においては、コンピュータシステムの構成変更に要する時間を判定し、その判定結果に基づいてコンピュータシステムの構成変更処理のスケジューリングを行うように構成している。従って、本発明によれば、構成変更に要する時間を考慮した最適なタイミングでコンピュータシステムの構成変更のスケジューリングが可能となる。
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
図1は、本発明の実施形態に係る自律型コンピューティング装置の機能的な構成を示すブロック図である。本発明の実施形態に係る自律型コンピューティング装置は、長期的なスケジューリング処理と短期的なスケジューリング処理を行うことが可能である。長期的なスケジューリング処理とは、1カ月や1週間先等、比較的先の未来までのコンピュータシステムの構成変更のスケジュールを決定するための処理であり、短期的なスケジューリング処理は、負荷が急増した場合等、比較的近未来のコンピュータシステムの構成変更のスケジュールを決定するための処理である。ここでは先ず、長期的なスケジューリング処理を行う場合について説明を行い、次に短期的なスケジューリング処理を行う場合について説明する。
図1に示すように、本実施形態に係る自律型コンピューティング装置100は、サーバ類1001、ストレージ類1002及びネットワーク(N/W)装置類1003から構成される自律型コンピューティング環境であるコンピュータシステムとLAN(Local Area Network)等の通信回線で接続され、この通信回線を介して各装置の状態を監視することが可能である。なお、自律型コンピューティング環境とは、本実施形態における自律型コンピューティングの技術を適用する環境である。
上述したサーバ類1001とは、Webサーバ、APサーバ及びDBサーバ等の各種サーバのことであり、ストレージ類1002とは、DB等の情報を記録可能な装置類である。ネットワーク装置類1003とは、サーバ類1001及びストレージ類1002の各装置間を接続するLAN等の通信ネットワークである。
モニタリング装置101は、サーバ類1001、ストレージ類1002及びネットワーク装置類1003の各ノードから監視データを適宜取得する。以下に、モニタリング内容の例を示す。サーバ類1001からは、監視データとしてCPU利用率を示すデータ及びメモリ使用量を示すデータ、ネットワーク流量やディスクアクセス回数等のリソース使用状況データ、各サーバの処理履歴を示すログデータ等を取得する。また、モニタリング装置101は、監視データとしてストレージ類1002からディスク使用量やディスクキャッシュヒット率等のデータを取得する。さらに、モニタリング装置101は、ネットワーク装置類1003から監視データとして、それらの通信回線の流量や通信エラーの有無を示すログデータを取得する。また、モニタリング装置101は、各ノードに障害が発生したときには、障害発生を監視データとして取得する。
モニタリング装置101は、取得した監視データに基づいて自律型コンピューティング環境の状態を示すイベント情報を生成し、モニタリング結果データベース102に蓄積する。
また、モニタリング装置101は、自律型コンピューティング環境の構成を適宜監視し、その結果を構成情報として生成し、ポリシー管理データベース105に蓄積する。
ポリシー管理データベース105は、上述した構成情報のほかにポリシーを格納する。ポリシーとは、本自律型コンピューティング環境の運用に関する指針を示すデータである。
分析部103は、モニタリング結果データベース102に格納されたイベント情報を取得し、過去からの自律型コンピューティング環境の状態変化の推移履歴を示すイベント情報を生成したり、取得するイベント情報の値の変化と過去のイベント情報の値の変化履歴とを照合して、自律型コンピューティング環境の将来の状態変化の予測内容を示すイベント情報を生成する。
判断部104は、分析部103或いはモニタリング結果データベース102からイベント情報を取得すると、ポリシー管理データベース105から当該イベント情報に該当する現在の構成情報及びポリシーを取得し、自律型コンピューティング環境の構成変更の要求情報である構成変更要求を生成し、スケジュール部108に出力する。
イベント情報蓄積データベース109は、ポリシー管理データベース105に蓄積される構成情報を逐次取得して蓄積していき、構成情報の履歴を管理する。
スケジュール部108は、判断部104から構成変更要求を入力される度に、その構成変更要求と同じ内容の構成変更要求の履歴が存在するか否かを判定し、存在すれば、当該構成変更要求の履歴について信頼度の値を加算していき、信頼度が閾値以上である構成変更要求に対してスケジューリング処理を行う。なお、構成変更要求の履歴の詳細については後述する。
プロビジョニング装置107は、スケジュール部108によるスケジューリング結果に従って、自律型コンピューティング環境に対するプロビジョニング処理を実行する。
図2は、自律型コンピューティング装置100のハードウェア構成を示すブロック図である。CPU201は、システムバスに接続される各デバイスやコントローラを統括的に制御する。ROM203又はHD207には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステムプログラムや、自律型コンピューティング装置100が実行する例えば図3、図4、図5−1乃至図5−4に示す処理のプログラム等が記憶されている。
なお、図2の例では、ハードディスク(HD)207は自律型コンピューティング装置100の内部に配置された構成としているが、他の実施形態としてHD207に相当する構成が自律型コンピューティング装置100の外部に配置された構成としてもよい。本実施形態に係る例えば図3、図4、図5−1乃至図5−4に示す処理を行うためのプログラムは、フレキシブルディスク(FD)206やCD−ROM等、コンピュータ読み取り可能な記録媒体に記録され、それらの記録媒体から供給される構成としてもよいし、インターネット等の通信媒体を介して供給される構成としてもよい。
RAM202は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をRAM202にロードして、プログラムを実行することで各種動作を実現するものである。
ディスクコントローラ205は、HD207やFD206等の外部メモリへのアクセスを制御する。通信IFコントローラ204は、インターネットやLANと接続し、例えばTCP/IPによって外部との通信を制御するものである。
ディスプレイコントローラ208は、ディスプレイ209における画像表示を制御する。
KB(キーボード)コントローラ210は、キーボード(KB)211からの操作入力を受け付け、CPU201に対して送信する。なお、図示していないが、キーボード211の他に、マウス等のポインティングデバイスもユーザの操作手段として本実施形態に係る自律型コンピューティング装置に適用可能である。
また、図1のモニタリング装置101、分析部103、判断部104、プロビジョニング装置107及びスケジュール部108は、例えばHD207内に記憶され、必要に応じてRAM202にロードされるプログラム及びそれを実行するCPU201に相当する構成である。
図1のポリシー管理データベース105、モニタリング結果データベース102及びイベント情報蓄積データベース109は、例えばHD207内の一部記憶領域に相当する構成である。なお、ポリシー管理データベース105、モニタリング結果データベース102は、本自律型コンピューティング装置100の外部に備えた構成としてもよい。
図3は、本実施形態に係る自律型コンピューティング装置100の動作の流れを示すフローチャートである。図3において、先ずモニタリング装置100は、自律型コンピューティング環境の各ノードから監視データを取得し、取得した監視データからリソース状態変化等に関するイベント情報を生成する(ステップS301)。
続いて、モニタリング装置101は、生成したイベント情報をモニタリング結果データベース102に蓄積する(ステップS302)。
続いて、分析部103は、モニタリング結果データベース102からイベント情報を取得し、取得したイベント情報に基づいて過去からの自律型コンピューティングの状態変化の推移履歴を示すイベント情報を生成したり、取得したイベント情報の値の変化と過去の監視データの値の変化履歴とを照合して、自律型コンピューティング環境の将来の状態変化の予測内容を示すイベント情報を生成する(ステップS303)。将来の状態変化の予測には、過去から現在にかけてのイベント情報の経時変化に対して、各種分析手法を適用することで行う。例えば、現在のCPU利用率が40%で、過去から現在にかけて、CPU利用率が30分に10%ずつ上昇しているとき、線形予測を用いて未来のCPU利用率を算出し、現在から4時間後にはCPU利用率が閾値80%を超えると予測する。イベントの種類や変化の度合い等により、線形近似以外の手法を活用することも当然可能である。
続いて、判断部104は、分析部103或いはモニタリング結果データベース102より出力されたイベント情報に該当するポリシー及び現在の構成情報をポリシー管理データベース105から取得する。そして、判断部104は、イベント情報、ポリシー及び現在の構成情報に基づいて構成変更要求を生成する(ステップS304)。この構成変更要求の生成処理の詳細は後述する。
続いて、スケジュール部108は、判断部104より出力される構成変更要求に基づいて、理想的なスケジューリング処理を行う(ステップS305)。次に、スケジュール部108は、ステップS305の処理により生成される理想的なスケジュールに基づいて、実現可能なスケジューリング処理を行う(ステップS306)。ステップS305、S306の理想的なスケジューリング処理、実現可能なスケジューリング処理の詳細については、後述する。
続いて、プロビジョニング装置107は、ステップS306により生成される実現可能なスケジュールに従って、構成変更処理を自律型コンピューティング環境に対して実行する(ステップS307)。
図6は、本実施形態において監視対象とする自律型コンピューティング環境の一例を示す図である。ここでは、サーバ類1001であるWebサーバ1〜4、APサーバ1及びDBサーバ1〜2、並びに、ストレージ類1002であるDBが、互いにネットワークを装置類103である通信回線を介して接続されるコンピュータシステムを例に挙げている。なお、図6におけるAPサーバ2〜5は上記通信回線に同様に接続されているが、稼働していない状態にあり、必要に応じてコンピュータシステムに追加される予備のサーバであることを示している。また、これら予備のAPサーバ2〜5は、APサーバとして追加されるだけではなく、他のサービスを提供するサーバ、例えばWebサーバやDBサーバ等、必要に応じた追加がなされる。
図7は、図6に示す自律型コンピューティング環境を監視対象とした場合の構成情報を示す図である。図7に示すように、構成情報には、例えば、日時情報、各サーバ(ノード)の名称、サービス名、役割、スペック及びステータスが含まれる。日時情報には、構成情報がモニタリング装置101によって生成された日時を示す。サービス名は、該当するコンピュータシステムのサービス名を示す。役割は、コンピュータシステム内におけるサーバの役割を示す。ステータスは、サーバが動作中の状態にあるか否かを示す。なお、上述の構成情報は本実施形態を行うに当っての一例である。例えば、該当サーバが動作しているか否かをステータスで管理する代わりに、サーバやサービス、役割、スペック等の項目を空白で管理することで、該当サーバが稼働していない状態にあることを管理しても当然よい。
図8は、判断部104が取得するイベント情報の構成を概念的に示す図である。従って実際には、コンピュータが理解できるようプログラミング言語で表現されている。なお、イベント情報の構成に関する他の図においても同様である。図8においては、2つのイベント情報を例示している。イベント情報には、日時情報、発生場所、内容が含まれる。日時情報は、監視データがモニタリング装置101によって取得された日時を示す情報、或いは、分析部103によってイベント情報が生成された日時を示す情報である。発生場所は、監視データの取得場所を示す情報である。内容は、監視データに基づいて解析されたイベント情報の内容を示す情報である。ここでは、イベント情報1の内容として、「(APサーバ)1台当たりのCPU利用率が1日後に60%を超える」ことが示されている。イベント情報2の内容として、「APサーバのN/W(ネットワーク)流用が増加傾向」であることが示されている。イベント情報2は、モニタリング装置101によって生成され、判断部104によって取得されたものである。また、イベント情報2がモニタリング装置101によって生成されたものに対し、イベント情報1は分析部103によって将来の状態変化の予測を示すイベント情報として生成されたものであり、判断部104によって取得されたものである。
図9は、図8に示すイベント情報に該当するポリシーの構成を概念的に示す図である。ここでは、イベント情報1〜2の発生場所のサービスA及びAPサーバに関係するポリシーが選択され、そのなかで、CPU利用率が60%を超えるときに適用されるポリシー1と、最適なCPU利用率の基準を示すポリシー2とが選択される。
ポリシーには、適用箇所、ルールが含まれる。適用箇所は、当該ポリシーを適用する箇所を示す情報である。ルールは、当該ポリシーの適用箇所であるルールを示す情報である。図9に示すように、ポリシー1〜2の適用箇所は、サービスAを提供するコンピュータシステムのAPサーバであることが示されている。また、ポリシー1のルールとしては、「1台構成時、1台当たりのCPU利用率が60%を超える場合、2台構成にする」ことが示されている。ポリシー2のルールとしては、「1台当たりのCPU利用率は40%程度に抑える」ことが示されている。なお、図9では説明のためにルールを文書的に表現しているが、実際にはコンピュータプログラミング言語でよく使われるif/then形式等で記載し、コンピュータがルールを判断できるようにする。なお、ポリシーの構成に関する他の図においても同様である。
判断部104は、図8に示すイベント情報を取得した場合、図9示すポリシーのほか、当該自律型コンピューティング環境に該当する図7に示す現在の構成情報をポリシー管理データベース105から取得する。
図10は、判断部104によって生成される構成変更要求の構成を概念的に示す図である。図10に示すように、構成変更要求には、対象、期限及び内容が含まれる。対象は、当該構成変更要求により構成変更を要求する対象を示す。期限は、後述する内容に示される台数の構成に変更する期限である。内容は、その対象について要求する構成変更の内容である。なお、図10では説明のために概念的に示しているが、実際には、コンピュータが理解できるようプログラミング言語で表現されている。なお、構成変更要求に関する他の図においても同様である。
判断部104は、分析部103或いはモニタリング結果データベース102からイベント情報を取得すると、ポリシー管理データベース105から当該イベント情報に該当するポリシー及び現在の構成情報を取得し、自律型コンピューティング環境の構成変更の要求情報である構成変更要求を生成する。具体的には、判断部104は、モニタリング結果データベース102或いは分析部103から取得したイベント情報に含まれる「発生場所」から構成変更要求の「対象」を生成する。
また、判断部104は、イベント情報に含まれる「内容」に対応する「ルール」を含むポリシーをポリシー管理データベース105から検索し、検索された当該ポリシーの「ルール」に基づいて、構成変更要求の「内容」を生成する。例えば、イベント情報1の「内容」にある"1台当りのCPU利用率が1日後に60%を越える"という情報に対応するルール"CPU利用率が60%を超える場合"を含んだポリシー1の「ルール」に基づいて、構成変更要求の「内容」を"APサーバ2台構成"として生成する。同様に、イベント情報に含まれる「内容」から、構成変更要求の「期限」を生成する。例えば、イベント情報1の「内容」にある"1日後"という情報から、イベント情報1が取得された日時、即ち2007/04/01 13:00から1日後に当る2007/04/02 13:00が構成変更要求の「期限」として生成される。
図4は、図3のステップS305の理想的なスケジューリング処理の詳細を示すフローチャートである。
図4において、先ずスケジュール部108は、判断部104が生成した構成変更要求を取得する(ステップS401)。続いて、スケジュール部108は、当該構成変更要求の対象、期限及び内容と一致する構成変更要求履歴を構成変更要求履歴テーブルから検索する(ステップS402)。なお、構成変更要求履歴テーブルは、RAM202等記録媒体内に格納される情報である。
図11は、長期間のスケジューリング処理により生成される構成変更要求履歴テーブルの構成の一例を概念的に示す図である。図11に示すように、構成変更要求履歴テーブルは、判断部104から入力される構成変更要求の履歴(構成変更要求履歴)を各レコードとして登録する。構成変更要求履歴は、ジョブIDと、構成変更要求の対象と、期限及び内容と、信頼度とを含む。ジョブIDは、構成変更要求に応じて実行されるプロビジョニング処理であるジョブを一意に識別するためのIDである。構成変更要求の対象、期限及び内容の各情報は既に説明した該当する構成変更要求に係る情報である。信頼度は、該当する構成変更要求履歴によるジョブを実行するかしないかをその値によって判定するための情報である。
続いて、スケジュール部108は、構成変更要求履歴テーブル内に、ステップS401で入力した構成変更要求の各要素と一致する内容を含む構成変更要求履歴が存在するか否か判定する(ステップS403)。入力した構成変更要求の各要素と一致する内容を含む構成変更要求履歴が存在する場合、処理はステップS405に移行する。一方、入力した構成変更要求の各要素と一致する内容を含む構成変更要求履歴が存在しない場合、処理はステップS404に移行する。
ステップS404において、スケジュール部108は、入力した構成変更要求の各要素を含む構成変更要求履歴を構成変更要求履歴テーブルに新規に登録する。ステップS405では、スケジュール部108は、入力した構成変更要求の各要素と一致する内容を含む構成変更要求履歴内の信頼度の値を加算する。
例えば、図11に示す構成変更要求履歴テーブルが既に生成されており、図10に示す構成変更要求が判断部104からスケジュール部108に入力された場合、構成変更要求履歴テーブルの最上段のレコードに登録されるジョブ1の構成変更要求履歴が当該構成変更要求の各要素と一致する内容を含んでいる。このような場合、スケジュール部108は、当該構成変更要求履歴の信頼度を加算する。ここでは、加算する値として5を想定している。また、信頼度の初期値は50としており、ステップS404において新規に構成変更要求履歴が登録された時点では、当該構成変更要求履歴の信頼度には50が登録される。以降、この構成変更要求履歴内の構成変更要求の各要素と一致する構成変更要求が入力される度に、当該構成変更要求履歴の信頼度を5ずつ加算していく。なお、初期値及び信頼度で用いた具体的数値に関しては、この数値に限らないことは言うまでも無い。
続いて、スケジュール部108は、信頼度が閾値80以上の構成変更要求履歴を使用して理想的なスケジューリング処理を行う(ステップS406)。このスケジューリング処理を図11の例を用いて具体的に説明する。
図12は、図11に示す構成変更要求履歴テーブルを用いて理想的なスケジューリングを行った結果を示す図である。図11に示す構成変更要求履歴テーブル内には信頼度が80以上の構成変更要求履歴として、ジョブ1〜5、7、8の7つ構成変更要求履歴が存在する。
スケジュール部108は、上記7つの構成変更要求履歴を用いてスケジューリング処理を行う。即ち、ジョブ1の構成変更要求履歴には、期限として「2007/4/2 13:00」、内容として「APサーバ2台構成」が登録されている。図12中、ジョブ1の矢印が示す位置がジョブ1の期限「2007/4/2 13:00」であり、この期限までにジョブ1によってAPサーバが2台構成に確定される状態にあることを示している。同じく、ジョブ2の矢印が示す位置がジョブ2の期限「2007/4/3 13:00」であり、この期限までにジョブ2によってAPサーバが3台構成に確定される状態にあることを示している。ジョブ6を除くジョブ3〜ジョブ8についても同様のことが示されている。以上が、信頼性の高い構成変更要求に基づいた、将来のシステム環境における理想的なスケジューリング処理の一例である。
図5−1及び図5−2は、図3のステップS306の実現可能なスケジューリング処理の詳細を示すフローチャートである。
図5−1において、先ずスケジュール部108は、対象となるジョブと、当該ジョブの直前のジョブとを理想的なスケジューリング結果から検索する(ステップS501)。本実施形態では、未来のジョブから順次処理の対象としていく。図12に示す例では、ジョブ8が最も未来のジョブとなる。従って、ステップS501においては、ジョブ8が最初に対象のジョブとして検索されるとともに、その直前のジョブであるジョブ7が検索されることになる。
続いて、スケジュール部108は、当該ジョブによる構成変更に要する時間と当該ジョブの直前のジョブによる構成変更に要する時間とを算出する(ステップS502)。
図5−3及び図5−4は、図5−1のステップS502の構成変更に要する時間の算出方法の詳細を示すフローチャートである。
図5−3において、先ずスケジュール部108は、ジョブ8の直前のジョブ7完了時におけるコンピュータシステムの構成を特定する。具体的には、ジョブ8直前の時間と一致する日時情報におけるシステム構成を未来の構成情報から検索し、これに基づいて、ジョブ8直前のジョブ7完了時におけるシステムの構成を特定する。当該未来の構成情報について図示を省略するが、ジョブ7完了時においては、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2から構成されるコンピュータシステムが稼働し、これを構成変更の対象とする。従って、スケジュール部108は、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期をイベント情報蓄積データベース109内の構成変更履歴から探索する(ステップS511)。
続いて、スケジュール部108は、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在したか否かを判定する(ステップS512)。
図15は、イベント情報蓄積データベース109内の過去の構成変更履歴の一例を概念的に示す図である。図15に示すように、構成変更履歴は、レコード毎に該当するサーバについて、時刻、当該サーバのサーバ名、当該サーバのサービス名、当該サーバの役割、当該サーバのスペック、当該サーバの状態、プロビジョニング方法及びジョブIDを記録している。サーバの状態は、当該サーバが通常(変化なし)の状態であるか、構成変更のための何らかの状態にあるかを示す。プロビジョニング方法は、プロビジョニングを行う際に実行される処理を示す。
図15において、各同じ日時について、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2の11のサーバに関するレコードが存在する。例えば、2007/2/16 16:00には、Webサーバ1〜4の役割として「Web」が登録され、APサーバ1〜4の役割として「AP」が登録され、APサーバ5の役割として「free」が登録され、DBサーバ1〜2の役割として「DB」が登録される。これは、2007年2月16日16時においてAPサーバ5を除く、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2から構成されるコンピュータシステムが稼働していることを示している。
また、2007/2/16 16:10には、Webサーバ1〜4の役割として「Web」が登録され、APサーバ1〜3の役割として「AP」が登録され、APサーバ4〜5の役割として「free」が登録され、DBサーバ1〜2の役割として「DB」が登録される。これは、2007年2月16日16時10分においてAPサーバ4がWebサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で稼働していたコンピュータシステムから除外される構成変更が開始されたことを示している。そして、2007/2/16 16:20においてAPサーバ4の状態が「構成変更中」であり、2007/2/16 16:30においてAPサーバ4の状態が「構成変更完了」であることから、APサーバ4の除外のための構成変更は、2007/2/16 16:10から2007/2/16 16:30までの20分要したことを示している。
図15の例では、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2の構成のコンピュータシステムで稼働していた時期が2007/2/16 16:00に存在する。従って、スケジュール部108は、図15に示す構成変更履歴を参照した場合、ステップS512において、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在すると判定し、処理はステップS513に移行する。一方、構成変更履歴にWebサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2と同じ構成である時期が存在しない場合、処理はステップS515に移行する。
ステップS513では、スケジュール部108は、同じ構成である時期が存在すると判定された構成変更履歴内の各サーバから構成されるコンピュータシステムについて、当該ジョブ8の構成変更要求履歴内の「内容」と同じ構成変更の記録を検索する。
続いて、スケジュール部108は、同じ構成である時期が存在すると判定された構成変更履歴内の各サーバから構成されるコンピュータシステムについて、当該ジョブ8の構成変更要求履歴内の「内容」と同じ構成変更の記録が存在するか否かを判定する(ステップS514)。構成変更要求履歴内の「内容」と同じ構成変更の記録が存在すると判定された場合、処理はステップS516に移行する。一方、構成変更要求履歴内の「内容」と同じ構成変更の記録が存在しないと判定された場合、処理はステップS515に移行する。
図15の例では、2007/2/16 16:10にAPサーバ4が除外され、APサーバが3台となる履歴が登録されているため、スケジュール部108は、図15の構成変更履歴を参照した場合、構成変更履歴内に当該ジョブ8の構成変更要求履歴の「内容」と同じ構成変更の記録が存在すると判定する。
ステップS516では、スケジュール部108は、構成変更履歴内に上記「内容」と同じ構成変更の記録が複数存在するか否かを判定する。複数存在すると判定された場合、処理はステップS518に移行し、複数存在しない(一つしか存在しない)と判定された場合、処理はステップS517に移行する。
ステップS518では、スケジュール部108は、複数存在する構成変更の記録から判定される構成変更に要する時間のうち、最も長い時間を「構成変更に要する時間」として採用する。なお、ステップS518の他の処理例として、複数判定される構成変更に要する時間の平均値を採用したり、複数判定される構成変更に要する時間の90%Tile値を採用してもよい。
一方、ステップS515では、スケジュール部108は、「構成変更に要する時間」として初期値を採用する。即ち、スケジュール部108は、ステップS512において、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在しないと判定された場合や、ステップS514において、当該ジョブの構成変更要求履歴内の「内容」と同じ構成変更の記録が存在しないと判定された場合、「構成変更に要する時間」として初期値(例えば、30分)を採用する。
また、ステップS517では、スケジュール部108は、構成変更の記録から判定される構成変更に要する時間を「構成変更に要する時間」として採用する。図15の例では、構成変更履歴内に当該ジョブの構成変更要求履歴の「内容」と同じ構成変更の記録が一つしか存在しないため、ステップS517が実行されることになる。つまり、当該ジョブ8に対いては20分が「構成変更に要する時間」として採用されることになる。なお、「構成変更に要する時間」の求め方において、上述の処理は一例に過ぎない。例えば、構成変更要求前後のシステム構成と当該構成変更要求に要した時間をユニークに管理する等、過去に行った構成変更において要した時間を把握できる処理であればよいことは言うまでも無い。
続いてスケジュール部108は、ジョブ7の直前のジョブ5完了時におけるコンピュータシステムの構成を特定する。具体的には、ジョブ7直前の時間と一致する日時情報におけるシステム構成を未来の構成情報から検索し、これに基づいて、ジョブ7直前のジョブ5完了時におけるシステムの構成を特定する。当該未来の構成情報について図示を省略するが、ジョブ5完了時においては、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2から構成されるコンピュータシステムが稼働し、これを構成変更の対象とする。従って、スケジュール部108は、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期をイベント情報蓄積データベース109内の構成変更履歴から探索する(ステップS519)。
続いてスケジュール部108は、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在したか否かを判定する(ステップS520)。
図16は、イベント情報蓄積データベース109内の構成変更履歴の他の例を概念的に示す図である。図16に示すように、2007/2/17 16:00には、Webサーバ1〜4の役割として「Web」が登録され、APサーバ1〜5の役割として「AP」が登録され、DBサーバ1〜2の役割として「DB」が登録される。これは、2007年2月17日16時において、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2から構成されるコンピュータシステムが稼働していることを示している。
また、2007/2/17 16:20には、Webサーバ1〜4の役割として「Web」が登録され、APサーバ1〜4の役割として「AP」が登録され、APサーバ5の役割として「free」が登録され、DBサーバ1〜2の役割として「DB」が登録される。これは、2007年2月17日16時20分において、APサーバ5がWebサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2で稼働していたコンピュータシステムから除外される構成変更が開始されていたことを示している。そして、2007/2/16 16:40においてAPサーバ5の状態が「構成変更中」であり、2007/2/16 17:00においてAPサーバ5の状態が「構成変更完了」であることから、APサーバ5の除外のための構成変更は、2007/2/17 16:20から2007/2/17 17:00までの40分要したことを示している。
図16の例では、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2の構成のコンピュータシステムで稼働していた時期が2007/2/17 16:00に存在する。従って、スケジュール部108は、図16に示す構成変更履歴を参照した場合、ステップS520において、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在すると判定し、処理はステップS521に移行する。一方、構成変更履歴にWebサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2と同じ構成である時期が存在しない場合、処理はステップS525に移行する。
ステップS521では、スケジュール部108は、同じ構成である時期が存在すると判定された構成変更履歴内の各サーバから構成されるコンピュータシステムについて、当該ジョブの構成変更要求履歴内の「内容」と同じ構成変更の記録を検索する。
続いて、スケジュール部108は、同じ構成である時期が存在すると判定された構成変更履歴内の各サーバから構成されるコンピュータシステムについて、当該ジョブ7の構成変更要求履歴内の「内容」と同じ構成変更の履歴が存在するか否かを判定する(ステップS522)。構成変更要求履歴内の「内容」と同じ構成変更の記録が存在すると判定された場合、処理はステップS523に移行する。一方、構成変更要求履歴内の「内容」と同じ構成変更の記録が存在しないと判定された場合、処理はステップS526に移行する。
図16の例では、2007/2/17 16:20にAPサーバ5が除外され、APサーバが4台となる履歴が登録されているため、スケジュール部108は、図16の構成変更履歴を参照した場合、構成変更履歴内に当該ジョブ7の構成変更要求履歴の「内容」と同じ構成変更の記録が存在すると判定する。
ステップS523では、スケジュール部108は、構成変更履歴内に上記「内容」と同じ構成変更の記録が複数存在するか否かを判定する。複数存在すると判定された場合、処理はステップS524に移行し、複数存在しない(一つしか存在しない)と判定された場合、処理はステップS526に移行する。
ステップS524では、スケジュール部108は、複数存在する構成変更の記録から判定される構成変更に要する時間のうち、最も長い時間を「構成変更に要する時間」として採用する。なお、ステップS524の他の処理例として、複数判定される構成変更に要する時間の平均値を採用したり、複数判定される構成変更に要する時間の90%Tile値を採用してもよい。
一方、ステップS525では、スケジュール部108は、「構成変更に要する時間」として初期値を採用する。即ち、スケジュール部108は、ステップS520において、Webサーバ1〜4、APサーバ1〜5及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在しないと判定された場合や、ステップS522において、当該ジョブ7の構成変更要求履歴内の「内容」と同じ構成変更の記録が存在しないと判定された場合、「構成変更に要する時間」として初期値を採用する。
また、ステップS526では、スケジュール部108は、構成変更の記録から判定される構成変更に要する時間を「構成変更に要する時間」として採用する。図16の例では、構成変更履歴内に当該ジョブ7の構成変更要求履歴の「内容」と同じ構成変更の記録が一つしか存在しないため、ステップS526が実行されることになる。つまり、当該ジョブ7に対して40分が「構成変更に要する時間」として採用されることになる。なお、「構成変更に要する時間」の求め方において、上述の処理は一例に過ぎない。例えば、構成変更要求前後のシステム構成と当該構成変更要求に要した時間をユニークに管理する等、過去に行った構成変更において要した時間を把握できる処理であればよいことは言うまでも無い。
再び図5−1の説明に戻る。スケジュール部108は、対象のジョブ(最初はジョブ8)の構成変更期間と直前のジョブの構成変更期間とが重複するか否かを判定する(ステップS503)。当該ジョブの構成変更期間は、当該ジョブがその直前のジョブ完了時より台数が増加するジョブであれば、当該ジョブの期限より当該ジョブの構成変更に要する時間分遡った時点から、当該ジョブの期限までの期間となる。一方、当該ジョブがその直前のジョブ完了時より台数が減少するジョブであれば、当該ジョブの構成変更期間は、当該ジョブの期限から、当該ジョブの期限より当該ジョブの構成変更に要する時間分経過した時点までの期間となる。また、直前のジョブの構成変更期間は、直前のジョブがその直前(当該ジョブの2つ前)のジョブ完了時より台数が増加するジョブであれば、直前のジョブの期限より直前のジョブの構成変更に要する時間分遡った時点から、直前のジョブの期限までの期間となる。一方、直前のジョブが当該ジョブの2つ前のジョブ完了時より台数が減少するジョブであれば、直前のジョブの構成変更期間は、直前のジョブの期限から、直前のジョブより直前のジョブの構成変更に要する時間分経過した時点までの期間となる。
例えば、ジョブ7の期限が「2007/4/7 13:00」であり、ジョブ8の期限が「2007/4/7 13:30」である場合、ジョブ7の構成変更期間が20分、ジョブ8の構成変更期間が40分であるため、ジョブ7の構成変更期間とジョブ8の構成変更期間とは重複することになる。このような場合、スケジュール部108は、当該ジョブの構成変更期間とその直前のジョブの構成変更期間とが重複すると判定する。
当該ジョブの構成変更期間と直前のジョブの構成変更期間とが重複すると判定される場合、処理はステップS504に移行する。一方、これらの期間が重複しないと判定される場合、処理は図5−2のステップS510に移行する。
ステップS504において、スケジュール部108は、当該ジョブの2つ前のジョブによる変更後の台数から、当該ジョブの直前のジョブによる変更後の台数が増加し、且つ当該ジョブの直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が増加しているか否かをS305で処理した理想的なスケジューリング結果から判定する。
2つ前のジョブによる変更後の台数から直前のジョブによる変更後の台数が増加し、且つ直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が増加している場合には、処理はステップS505に移行する。一方、そうでない場合には、処理はステップS505を実行することなく図5−2のステップS506に移行する。
ステップS505において、スケジュール部108は、当該ジョブの直前のジョブによる変更後の台数を当該ジョブによる変更後の台数まで増やすようにS305で処理した理想的なスケジュール結果を修正する。そして、処理はステップS506に移行する。
ステップS506においては、スケジュール部108は、当該ジョブの2つ前のジョブによる変更後の台数から当該ジョブの直前のジョブによる変更後の台数が減少し、且つ当該ジョブの直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が増加しているか否かを判定する。2つ前のジョブによる変更後の台数から直前のジョブによる変更後の台数が減少し、且つ直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が増加している場合、処理はステップS507に移行する。一方、そうでない場合には、処理はステップS507を実行することなくステップS508に移行する。
ステップS507において、スケジュール部108は、当該ジョブの直前のジョブによる変更後の台数を、当該ジョブの2つ前のジョブの変更後の台数まで増やすように理想的なスケジュール結果を修正する。そして、処理はステップS508に移行する。
ステップS508においては、スケジュール部108は、当該ジョブの2つ前のジョブによる変更後の台数から当該ジョブの直前のジョブによる変更後の台数が減少し、且つ当該ジョブの直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が減少したか否かを判定する。2つ前のジョブによる変更後の台数から直前のジョブによる変更後の台数が減少し、且つ直前のジョブによる変更後の台数から当該ジョブによる変更後の台数が減少した場合、処理はステップS509に移行する。一方、そうでない場合、処理はステップS509を実行することなく処理はステップS510に移行する。
ステップS509において、スケジュール部108は、当該ジョブによる変更後の台数を、当該ジョブの直前のジョブによる変更後の台数まで増やすようにS305で処理した理想的なスケジューリング結果を修正する。そして、処理はステップS510に移行する。
ステップS510においては、スケジュール部108は、対象となるジョブ全てについて処理を行ったか否かを判定する。ここでいう対象となるジョブ全てとは、本処理においては、当該ジョブの2つ前のジョブまでをステップS504等の処理に使用するため、S305で処理した理想的なスケジューリング結果における最も未来のジョブから最も過去から2つ前のジョブまでとなる。図12の例では、ジョブ8から始まってジョブ3まで上述した処理が繰り返されることになる。
ここで、図13及び図14を用いて、実現可能なスケジューリング処理について具体的に説明する。図13は、S305で処理した理想的なスケジューリング結果と各ジョブの構成変更期間を示す図である。図14は、実現可能なスケジューリング結果を示す図である。
図13において、1301はジョブ2の構成変更期間、1302はジョブ3の構成変更期間、1303はジョブ4の構成変更期間、1304はジョブ5の構成変更期間、1305はジョブ7の構成変更期間、1306はジョブ8の構成変更期間を示している。
図13において、ジョブ2の構成変更期間1301とジョブ3の構成変更期間とが重複し、ジョブ4の構成変更期間1303とジョブ5の構成変更期間1304とが重複し、ジョブ7の構成変更期間1305とジョブ8の構成変更期間とが重複している場合を例示している。この場合、ステップS503において構成変更期間が重複すると判定されるときの当該ジョブは、ジョブ8、ジョブ5、ジョブ3となる。
ジョブ8を対象にした場合、2つ前のジョブ5による変更後の台数から直前のジョブ7による変更後の台数が減少し、且つ直前のジョブ7による変更後の台数から当該ジョブ8による変更後の台数が減少している。従って、スケジュール部108は、当該ジョブ8による変更後の台数を、当該ジョブ9の直前のジョブ7による変更後の台数まで増やすように修正する。
ジョブ5を対象とした場合、2つ前のジョブ3による変更後の台数から直前のジョブ4による変更後の台数が減少し、直前のジョブ4による変更後の台数から当該ジョブ5による変更後の台数が増加している。従って、スケジュール部108は、直前のジョブ4による変更後の台数を、2つ前のジョブ3による変更後の台数まで増やすように修正する。
ジョブ3を対象とした場合、2つ前のジョブ1による変更後の台数から直前のジョブ2による変更後の台数が増加し、直前のジョブ2による変更後の台数から当該ジョブ3による変更後の台数が増加している。従って、スケジュール部108は、直前のジョブ2による変更後の台数を当該ジョブ3による変更後の台数まで増やすように修正する。
以上のように、構成変更期間が重複するジョブが存在する場合、該当するジョブのうちの何れか一つのジョブの台数に他のジョブの台数を変更するようにS305で処理した理想的なスケジューリング結果を修正することにより、図14に示すような実現可能なスケジューリング結果となる。図14に示すように、実現可能なスケジューリング結果においては、ジョブ2の構成変更期間1401、ジョブ5の構成変更期間1402及びジョブ7の構成変更期間1403だけを設ければよい。従って、従来は、ジョブ間の衝突によって構成変更要求が混在しスケジューリングが不明確であったが、上述のようなスケジューリング処理によって、最小限の構成変更、且つ、ジョブ間における構成変更期間の重複がなくなり、実現可能なスケジュールとなる。
また、ジョブ2の期限(ジョブ2の矢印の位置)からジョブ2の構成変更期間1401だけ遡った時点に構成変更を開始するようにスケジュール部108がスケジューリングすることにより、プロビジョニング装置107は構成変更期間を考慮した適切なタイミングで構成変更を開始することが可能となる。ジョブ5についても同様である。
図17は、長期的なスケジューリング処理における複数のサービスA〜Dの残りのノード数を管理するためのリソースプール管理テーブルの構成を概念的に示す図である。本図におけるリソースプールA〜Dは夫々、サービスA〜DにおけるAPサーバの残り数である。なお、リソースプール管理テーブルは、例えばRAM202等の記録媒体内に格納される情報である。
リソースプール管理テーブルは、長期的なスケジューリング処理における実現可能なスケジューリング処理により確定した各サービスA〜Dのジョブのスケジュールと、各サービスA〜Dのコンピュータシステムの構成情報とによって更新されるテーブルである。
例えば、サービスAについて参照すると、実現可能なスケジューリング処理によって4月6日にジョブ23が予定され、ここで3台のAPサーバを追加稼働させることが計画されている。4月5日以前には、サービスAにおけるAPサーバの残り数は10台であったため、4月6日以降は7台と記録されている。
スケジュール部108が、受信した構成変更要求を参照し、構成変更要求の"内容"に関する情報(例:ジョブ23の"3台のAPサーバを追加稼働")に基づいて、構成変更要求の"期限"(4月6日)におけるリソースプール管理テーブルのリソースプールAに関する情報を更新する(4月6日以降は7台と記録する)処理を行う。
サービスBについては、実現可能なスケジューリング処理によって4月2日にジョブ21が予定され、ここで5台のAPサーバを追加稼働させることが計画されている。4月1日以前には、サービスBにおけるAPサーバの残り数は10台であったため、4月2日以降は5台と記録されている。処理については、サービスAと同様である。
サービスCについては、実現可能なスケジューリング処理によって4月4日にジョブ22が予定され、ここで8台のAPサーバを追加稼働させることが計画されている。4月3日以前には、サービスCにおけるAPサーバの残り数は10台であったため、4月4日以降には2台と記録されている。処理については、サービスAと同様である。
サービスDについては、実現可能なスケジューリング処理によって4月7日にジョブ24が予定され、ここで2台のAPサーバを追加稼働させることが計画されている。4月6日以前には、サービスDにおけるAPサーバの残り数は10台であったため、4月7日以前には8台と記録されている。処理については、サービスAと同様である。
なお、信頼度の設定方法には、手動と予測分析とがある。手動の信頼度の設定方法とは、手動はユーザの操作によってジョブと信頼度の双方が設定される、又は、手動によってジョブが設定されることに伴い所定の値の信頼度が自動的に設定されることを意味する。何れのケースで信頼度が設定された場合も、ユーザの手動操作によって設定されたジョブは必ず実行するものとして、信頼度は閾値80より高い数値(例えば、95)が設定される。なお、手動によってジョブが設定されるのは、例えば1週間後に停電が予定されており、その際にはコンピュータシステムの稼働を停止させるようにする等、必ず実行する必要があるジョブを設定するケースが挙げられる。予測分析は、上述した図4のステップS403の判定処理とその判定結果に基づくステップS405の数値の加算処理によって信頼度が更新されるものである。
このようにリソースプール管理テーブル上においてAPサーバ等のノードの残り数を管理することによって、どのサービスのコンピュータシステムで補充可能なAPサーバが残り少なくなるのかを判定することができる。判定の方法としては、所定の閾値(例えば、2台)とAPサーバの残り数とを比較し、APサーバの残り数が閾値以下となった場合に補充可能なAPサーバの数が少ないと判定することが挙げられる。補充可能なAPサーバの数が少ないと判定された場合、APサーバが不足すること及びそのタイミングを警告する情報をディスプレイ209に表示させる。このようにすることで、ユーザは事前にどのサービスにおいていつノード(リソース)が不足するのかを把握することが可能となる。従って、上述の処理によって生成された理想的且つ実現可能なスケジュールを実行するに当って、リソースプール管理テーブルを参照することによって、リソース割当を調整することによるリソース利用の効率化を図ることができる。
また、スケジュール部108は、上記のように或るサービスのコンピュータシステムにおいてノードが不足すると判定された場合、他のサービスのコンピュータシステムの予備のノードからその不足分を補充することもできる。その際に、スケジュール部108は、SLA(Service Level Agreement)を用いて不足分を補充する先のサービスを決定する。
SLAの具体例を図28に示す。図28に示すように、SLAとは、サービス提供者(プロバイダ)とサービス委託者(顧客)との間で取決めた提供するサービスの内容と範囲(「サービスの適用範囲と説明」、「サービス時間」、「サポートの詳細」)、品質に対する要求(達成)水準(「可用性と信頼性の指標」、「応答時間と修復時間」)やそれが達成できなかった場合のルール(「構成変更の優先度」)等に関する規定である。本実施形態では、SLAをデータとしてポリシー管理データベース105に保持しておき、上述したように或るサービスのコンピュータシステムにおいてノードが不足すると判定された場合、スケジュール部108がこれを取得し、どのサービスからノードを補充するかをSLAに基づいて決定する。例えば、サービスCが顧客向けのサービスであり、サービスAが社内向けのサービスであり、サービスAよりサービスCの方が優先度が高いといった規定内容のSLAが記述されたデータがポリシー管理データベース105に登録されている場合には、スケジュール部108は、その記述内容を参照して、ノード不足が発生する予定のサービスCのコンピュータシステムにサービスAのノードを追加稼働させるようにスケジューリングを行う。なお、SLAには、各サービスに対する優先度だけではなく、他のサービスへのノードの追加を許可する、しないを示すフラグを記述してもよい。この場合、サービス間の優先度の比較とフラグとを考慮したノード追加を含むスケジューリングが行われる。
以下に、SLAを用いた実施形態について述べる。図23は、本例における未来(2007/4/17 15:00)の構成情報の構成を概念的に示す図である。図23に示すように、サービスAを提供するコンピュータシステムは、Webサーバ1、APサーバ1、APサーバ2及びDBサーバ1により構成される。サービスBを提供するコンピュータシステムは、Webサーバ2、APサーバ3、APサーバ4及びDBサーバ2により構成される。なお、APサーバ5は、サービスAを提供するコンピュータシステム、サービスBを提供するコンピュータシステムの何れとしても動作しておらず、いわば予備のAPサーバとして管理されている。
図24は、自律型コンピューティング装置100が上述したサービスA、サービスBを提供する2つのコンピュータシステムを監視対象とした場合に、判断部104がモニタリング結果データベース102及び分析部103から取得するイベント情報の一例を示す図である。
図24においては、4つのイベント情報を例示している。ここでは、イベント情報5〜イベント情報8の日時情報は全て2007/4/17 12:00である。これはイベント情報5〜8の全てが同じ日時に生成されたことを示している。また、イベント情報5、6において発生場所としてサービスAを提供するコンピュータシステムのAPサーバであることが示されている。即ち、イベント情報5、6において示される内容がサービスAを提供するコンピュータシステムのAPサーバであることを意味している。また、イベント情報7、8において発生場所としてサービスBを提供するコンピュータシステムのAPサーバであることが示されている。即ち、イベント情報7、8において示される内容がサービスBを提供するコンピュータシステムのAPサーバであることを意味している。イベント情報5の内容としては、「APサーバ1、2のCPU利用率が3時間後に60%を越える」ことが示されている。また、イベント情報6の内容としては、「APサーバ1、2のネットワーク(N/W)流用が減少傾向」であることが示されている。また、イベント情報7の内容としては、「APサーバ3、4のCPU利用率が3時間後に60%を越える」ことが示されている。また、イベント情報8の内容としては、「APサーバ3、4のネットワーク(N/W)流用が減少傾向」であることが示されている。
図25は、図24に示すイベント情報に該当するポリシーの構成を概念的に示す図である。ここでは、イベント情報5〜6の発生場所のサービスA及びAPサーバに関係するポリシーが選択され、そのなかで、最適なCPU利用率の基準を示すポリシー3と、CPU利用率が60%を越えるときに適用されるポリシー4とが選択されるとともに、イベント情報7〜8の発生場所のサービスB及びAPサーバに関係するポリシーが選択され、そのなかで、最適なCPU利用率の基準を示すポリシー5と、CPU利用率が60%を越えるときに適用されるポリシー6とが選択される。
図25に示すように、ポリシー3、4の適用箇所は、サービスAを提供するコンピュータシステムのAPサーバであることが示されている。また、ポリシー3のルールとしては、「1台当たりのCPU利用率は40%に抑える」ことが示されている。ポリシー4のルールとしては、「1台当たりのCPU利用率が60%を越える場合、3台構成とする」ことが示されている。ポリシー5のルールとしては、「1台当たりのCPU利用率は40%程度に抑える」ことが示されている。ポリシー6のルールとしては、「1台当たりのCPU利用率が60%を越える場合、3台構成とする」ことが示されている。
判断部104は、図24に示すイベント情報を取得した場合、図25に示すポリシーのほか、当該自律型コンピューティング環境に該当する図23に示す現在の構成情報をポリシー管理データベース105から取得する。
図26は、判断部104によって生成される構成変更要求の構成を概念的に示す図である。図26に示す構成変更要求3は、判断部104が図25に示すポリシー4に基づいて生成する構成変更要求であり、ポリシー4内の「3台構成にする」を内容として含んだものとなっている。また、図26に示す構成変更要求4は、判断部104が図25に示すポリシー6に基づいて生成する構成変更要求であり、ポリシー6内の「3台構成にする」を内容として含んだものとなっている。
次に、スケジュール部108は、判断部104によって生成された構成変更要求に基づいてスケジュール情報の生成を行うが、判断部104から受信した構成変更要求の期限に関する情報を参照し、当該期限におけるシステム構成をポリシー管理データベースに格納された未来(2007/4/17 15:00)の構成情報を参照し、空いているAPサーバはAPサーバ5の1台であることを把握することができるため、サービスAとサービスBとの双方をAPサーバ3台とするためには予備のAPサーバが1台足りないと把握できる。本来、サービスAとサービスBとの双方のAPサーバを3台とするスケジュール情報を生成すべきであるが、このようにAPサーバが不足している場合には、スケジュール部108は、ポリシー管理データベース105からSLAを取得し、取得したSLAに基づいてスケジュール情報を生成する。なお、上述の通り、リソースプール管理テーブルは構成情報に基づいて作成されものであり、従って、リソースプール管理テーブルを参照して、空いているサーバ(リソース)を把握してもよいことは言うまでもない。
例えば、図28に示すSLAが取得された場合、当該SLAにはサービスBよりサービスAを優先させること(サービスA>サービスB)が記述されているので、スケジュール部108は、図27に示すようなスケジュール情報を生成する。図27は、SLAを使用して生成されるスケジュール情報の構成を概念的に示す図である。
図27に示すようにスケジュール情報には、構成変更の対象としてサービスAを提供するコンピュータシステムのAPサーバ、構成変更の内容としてAPサーバを3台とすることが示されている。
このように、上述した例のSLAを使用して生成されるスケジュール情報は、構成変更要求3のみに基づくものであり、構成変更要求4に基づいては生成されない。
実行部106は、構成変更要求3に基づくスケジュール情報から、サービスAを提供するコンピュータシステムに対してAPサーバを3台とする構成変更命令を生成する。プロビジョニング装置107は、当該構成変更命令に基づいて、サービスAを提供するコンピュータシステムのAPサーバを3台とするプロビジョニング処理を実行する。
このように、本実施形態においては、複数のサービスを提供するコンピュータシステムを対象とし、このコンピュータシステムに追加するノードが不足している場合、SLAに基づいて何れのサービスを提供しているコンピュータシステムにノードを追加するのかを決定することができる。また、SLAは図28の構成に限る必要はなく、各サービスの優先度を表現する構成であればよい。例えば、各サービスに対する優先度については、サービスA=3、サービスB=2、サービスC=1のように優先度を数値として扱った構成にしてもよい。
以上のように、本実施形態においては、構成変更要求が生成されると、その構成変更要求に対応する構成変更要求履歴が管理されているか場合にその信頼度を更新し、閾値以上の信頼度の構成変更要求履歴のみを用いてスケジューリングを行うように構成している。従って、同じ構成変更要求が数回生成された場合に、対応する構成変更要求履歴が信頼性があるものとして扱い、その信頼性のある構成変更要求履歴を用いてスケジューリングを行うことができるため、適切な構成変更のスケジューリングを行うことが可能となる。また、既存のスケジュールに変更をきたすようなイベントが突発的に発生した場合であっても、この突発的に発生したイベントに基づいた構成変更要求やスケジュールを新たに生成し、かつ当該信頼度の値を最も高く設定する。一方既存のスケジュールに対応した構成変更要求履歴が管理している信頼度の値は加算されなくなる為、新たなイベントが発生した場合であっても、動的にスケジュールを変更でき、適切な構成変更のスケジューリングを行うことが可能となる。
また本実施形態においては、各構成変更要求履歴に対応して計画された構成変更の期間が重複しないように理想的なスケジューリング結果を修正するようにしているため、実現可能なスケジューリング結果を得ることが可能となる。
また本実施形態においては、コンピュータシステムの構成変更に要する時間を判定し、その判定結果に基づいてコンピュータシステムの構成変更処理のスケジューリングを行うように構成している。従って、構成変更に要する時間を考慮した最適なタイミングでコンピュータシステムの構成変更のスケジューリングが可能となる。
次に、比較的短いサイクルで対応せねばならないイベントが発生し、それに対応してその当日にジョブのスケジューリングを行う等、短期間のスケジューリングを行う場合について説明する。
短期間のスケジューリングと長期間のスケジューリングとの違いは、短期間のスケジューリングでは、図4のステップS402、S403、S405及びS406を実行しない点である。即ち、短期間のスケジューリングにおいて、スケジュール部108は、上記のような比較的短いサイクルで対応せねばならないイベントに応じて判断部104によって入力される構成変更要求を構成変更要求履歴テーブルに登録し、その全ての登録内容に基づいて上述した同じ手法で理想的なスケジューリング及び実現可能なスケジューリングを行うものであり、長期的なスケジューリングのように、信頼度を増加させたり、閾値以上の信頼度の構成変更要求履歴のみを使用して理想的なスケジューリング及び実現可能なスケジューリングを行うものではない。つまり、短期間のスケジューリングでは、比較的短いサイクルで対応せねばならないイベントに応じて入力される構成変更要求のジョブについては全て実行するように取り扱う。
なお、他の実施形態として、短期間のスケジューリング処理によって構成変更要求が構成変更要求履歴テーブルに登録される際、当該構成変更要求が登録されるレコードにおける信頼度の項目に閾値以上の値を登録してもよい。このようにすると、閾値と信頼度との比較において必ず信頼度は閾値以上と判定され、全構成変更要求は、理想的なスケジューリング処理において反映されることになる。
図18は、短期間のスケジューリング処理により生成される構成変更要求履歴テーブルの構成の例を示す図である。図18に示すように本構成変更要求履歴テーブルは、図11に示す構成変更要求履歴テーブルから信頼度の登録項目が除かれた構成となっている。
図19は、図18に示す構成変更要求履歴テーブルを用いて理想的なスケジューリング処理を行った結果を示す図である。スケジュール部108は、図18に示す構成変更要求履歴テーブルに登録されるジョブ41〜48の8つの構成変更要求履歴を用いてスケジューリング処理を行う。即ち、ジョブ41の構成変更要求履歴には、期限として「2007/5/2 13:00」、内容として「APサーバ2台構成」が登録されている。図19中、ジョブ41の矢印が示す位置がジョブ41の期限「2007/5/2 13:00」であり、この期限までにジョブ41によってAPサーバが2台構成に確定された状態にあることを示している。同じくジョブ42の矢印が示す位置がジョブ42の期限「2007/5/2 14:00」であり、この期限までにジョブ42によってAPサーバが3台構成に確定された状態にあることを示している。ジョブ43〜48についても同様のことが示されている。以上が、信頼性の高い構成変更要求に基づいた、将来のシステム環境における理想的なスケジューリング処理の一例である。
次に、図20及び図21を用いて、図19に示す理想的なスケジューリング処理の結果に対して実現可能なスケジューリング処理を行った結果について説明する。図20は、理想的なスケジューリング結果と各ジョブの構成変更期間を示す図である。図21は、実現可能なスケジューリング結果を示す図である。
図20において、2001はジョブ42の構成変更期間、2002はジョブ43の構成変更期間、2003はジョブ44の構成変更期間、2004はジョブ45の構成変更期間、2005はジョブ46の構成変更期間、2006はジョブ47の構成変更期間、2007はジョブ48の構成変更期間を示している。
図20においては、ジョブ42の構成変更期間とジョブ43の構成変更期間とが重複し、ジョブ44の構成変更期間とジョブ45の構成変更期間とが重複し、ジョブ46の構成変更期間とジョブ47の構成変更期間とが重複している場合を例示している。この場合、ステップS503において構成変更期間が重複すると判定されるときの当該ジョブは、ジョブ47、ジョブ45、ジョブ43となる。
ジョブ47を対象とした場合、2つ前のジョブ45による変更後の台数から直前のジョブ46による変更後の台数が減少し、且つ直前のジョブ46による変更後の台数から当該ジョブ47による変更後の台数が増加している。従って、スケジュール部108は、直前のジョブ46による変更後の台数を、2つ前のジョブ45による変更後の台数まで増やすように修正する。
ジョブ45を対象とした場合、2つ前のジョブ43による変更後の台数から直前のジョブ44による変更後の台数が減少し、且つ直前のジョブ44による変更後の台数から当該ジョブ45による変更後の台数が増加している。従って、スケジュール部108は、直前のジョブ44による変更後の台数を、2つ前のジョブ43による変更後の台数まで増やすように修正する。
ジョブ43を対象とした場合、2つ前のジョブ41による変更後の台数から直前のジョブ42による変更後の台数が増加し、且つ直前のジョブ42による変更後の台数から当該ジョブ43による変更後の台数が増加している。従って、スケジュール部108は、直前のジョブ42による変更後の台数を、当該ジョブ43による変更後の台数まで増やすように修正する。
以上のように理想的なスケジューリング結果を修正することにより、図21に示すような実現可能なスケジューリング結果となる。図21に示すように、実現可能なスケジューリング結果においては、ジョブ42の構成変更期間2101、ジョブ45の構成変更期間2102、ジョブ47の構成変更期間2103及びジョブ48の構成変更期間2104だけを設ければよい。従って、従来は、ジョブ間の衝突によって構成変更要求が混在しスケジューリングが不明確であったが、上述のようなスケジューリング処理によって、最小限の構成変更、且つ、ジョブ間における構成変更期間の重複がなくなり、実現可能なスケジュールとなる。
また、ジョブ42の期限(ジョブ42の矢印の位置)からジョブ42の構成変更期間2101だけ遡った時点に構成変更を開始するようにスケジュール部108でスケジューリングすることにより、プロビジョニング装置107は、構成変更期間を考慮した適切なタイミングで構成変更を開始することが可能となる。ジョブ45についても同様である。
図22は、短期的なスケジューリング処理における複数のサービスA〜Dの残りのノード数を管理するためのリソースプール管理テーブルの構成を概念的に示す図である。本リソースプール管理テーブルも例えばRAM202内に格納される情報である。
本リソース管理テーブルは、上述した短期的なスケジューリング処理における実現可能なスケジューリング処理で確定した各サービスA〜Dのジョブのスケジュールと、各サービスA〜Dのコンピュータシステムの構成情報とによって更新されるテーブルである。
例えば、サービスAについて参照すると、実現可能なスケジューリング処理によって2時にジョブ51が予定され、ここで2台のAPサーバを追加稼働させることが計画されている。2時より前には、サービスAにおけるAPサーバの残り数は10台であったため、2時以降は8台と記録されている。
サービスBについては、実現可能なスケジューリング処理によって2時30分にジョブ52が予定され、ここで5台のAPサーバを追加稼働させることが計画されている。2時30分より前には、サービスBにおけるAPサーバの残り数は10台であったため、2時30分以降は5台と記録されている。
サービスCについては、1時30分から5時までの間でジョブが設定されていないため、その期間内においては全て10台と記録されている。
サービスDについては、実現可能なスケジューリング処理によって4時にジョブ53が予定され、ここで8台のAPサーバを追加稼働させることが計画されている。4時より前には、サービスDにおけるAPサーバの残り数は10台であったため、4時以降は2台と記録されている。
このように短期的なスケジューリング処理においてもAPサーバ等のノードの残り数を管理することによって、長期的なスケジューリング処理と同様、補充可能なAPサーバの数が一定値を下回った際に警告を行うことができる。このようにすることで、ユーザは事前にどのサービスにおいていつノード(リソース)が不足するのかを把握することが可能となる。
また、このような短期スケジューリング処理においても、上記のように或るサービスのコンピュータシステムにおいてノードが不足すると判定された場合、他のサービスのコンピュータシステムの予備のノードからその不足分を補充することもできる。その際に、スケジュール部108は、上述の長期スケジュールにおける処理と同様に、SLA(Service Level Agreement)を用いて不足分を補充する先のサービスを決定する。
以上、本実施形態における長期的なスケジューリング処理と短期的なスケジューリング処理とについて説明した。長期的なスケジューリングにより或る日時についてジョブが設定されているが、短期的なスケジューリングによって当該日時について他のジョブが決定されることもある。このような場合には、長期的なスケジューリング結果より短期的なスケジューリング結果の方が適切なスケジューリング結果と判断し、当該日時については短期的なスケジューリング結果が設定されてもよい。例えば、上述の長期的なスケジューリング処理によって生成したスケジュールを実行する前に、当該スケジュールに変更をきたすような新たなイベントが発生した場合であっても、上述の短期的なスケジューリング処理同様に新たなイベントに基づいた構成変更要求を生成し、それに対応した新たなスケジューリングを行うことによって、イベントが突発的に発生した場合であっても、動的にスケジュールを変更することが可能である。
本発明の実施形態に係る自律型コンピューティング装置の機能的な構成を示すブロック図である。 自律型コンピューティング装置のハードウェア構成を示すブロック図である。 本発明の実施形態に係る自律型コンピューティング装置の動作の流れを示すフローチャートである。 図3のステップS305の理想的なスケジューリング処理の詳細を示すフローチャートである。 図3のステップS306の実現可能なスケジューリング処理の詳細を示すフローチャートである。 図3のステップS306の実現可能なスケジューリング処理の詳細を示すフローチャートである。 図5−1のステップS502の構成変更に要する時間の算出方法の詳細を示すフローチャートである。 図5−1のステップS502の構成変更に要する時間の算出方法の詳細を示すフローチャートである。 本発明の実施形態において監視対象とする自律型コンピューティング環境の一例を示す図である。 図6に示す自律型コンピューティング環境を監視対象とした場合の構成情報を示す図である。 判断部が取得するイベント情報の構成を概念的に示す図である。 図8に示すイベント情報に該当するポリシーの構成を概念的に示す図である。 判断部104によって生成される構成変更要求の構成を概念的に示す図である。 長期間のスケジューリング処理により生成される構成変更要求履歴テーブルの構成の一例を概念的に示す図である。 図11に示す構成変更要求履歴テーブルを用いて理想的なスケジューリングを行った結果を示す図である。 理想的なスケジューリング結果と各ジョブの構成変更期間を示す図である。 実現可能なスケジューリング結果を示す図である。 イベント情報蓄積データベース内の構成変更履歴の一例を概念的に示す図である。 イベント情報蓄積データベース内の構成変更履歴の他の例を概念的に示す図である。 長期的なスケジューリング処理における複数のサービスA〜Dの残りのノード数を管理するためのリソースプール管理テーブルの構成を概念的に示す図である。 短期間のスケジューリング処理により生成される構成変更要求履歴テーブルの構成の例を示す図である。 図18に示す構成変更要求履歴テーブルを用いて理想的なスケジューリング処理を行った結果を示す図である。 理想的なスケジューリング結果と各ジョブの構成変更期間を示す図である。 実現可能なスケジューリング結果を示す図である。 短期的なスケジューリング処理における複数のサービスA〜Dの残りのノード数を管理するためのリソースプール管理テーブルの構成を概念的に示す図である。 構成情報の構成を概念的に示す図である。 自律型コンピューティング装置がサービスA、サービスBを提供する2つのコンピュータシステムを監視対象とした場合に、判断部が分析部から取得するイベント情報の一例を示す図である。 図24に示すイベント情報に該当するポリシーの構成を概念的に示す図である。 判断部によって生成される構成変更要求の構成を概念的に示す図である。 SLAを使用して生成されるスケジュール情報の構成を概念的に示す図である。 SLAの具体例を概念的に示す図である。
符号の説明
100:自律型コンピューティング装置
101:モニタリング装置
102:モニタリング結果データベース
103:分析部
104:判断部
105:ポリシー管理データベース
107:プロビジョニング装置
108:スケジュール部
109:イベント情報蓄積データベース
1001:サーバ類
1002:ストレージ類
1003:ネットワーク装置類

Claims (7)

  1. 少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置であって、
    前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成手段と、
    前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成手段と、
    前記要求情報生成手段により生成される各構成変更要求情報について、前記要求情報生成手段により同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する第1の記録媒体と、
    前記第1の記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリング手段と
    前記第1のスケジューリング手段により決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録した第2の記録媒体と、
    前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第2の記録媒体に記録される前記構成変更履歴情報に基づいて算出する変更期間算出手段と、
    前記変更期間算出手段によって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリング手段とを有することを特徴とする情報処理装置。
  2. 前記変更期間算出手段は、前記構成変更要求情報に含まれる前記構成情報に該当する前記構成変更履歴情報を前記第2の記録媒体から検索し、検索した前記構成変更履歴情報の日時情報に基づいて、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を算出することを特徴とする請求項に記載の情報処理装置。
  3. 前記第2のスケジューリング手段は、前記構成変更要求情報に含まれる前記期限情報に示される期限から、前記変更期間算出手段により算出された前記コンピュータシステムを変更する際に要する期間分の時間を遡った時点を、前記コンピュータシステムの構成変更の開始時点としてスケジューリングすることを特徴とする請求項又はに記載の情報処理装置。
  4. 前記第1のスケジューリング手段は、長期的なスケジューリング方法として、前記第1の記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更するよう計画し、短期的なスケジューリング方法として、前記要求情報生成手段により生成される全ての前記構成変更要求情報について、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更するよう計画することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
  5. 前記第1の記録媒体は、前記イベント情報生成手段により所定のイベント情報が生成された場合、前記所定のイベント情報及び前記ポリシー情報に基づいて生成された前記構成変更要求情報の信頼度情報を最も高く記録することを特徴とする請求項1乃至の何れか1項に記載の情報処理装置。
  6. 少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置による情報処理方法であって、
    前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成ステップと、
    前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成ステップと、
    前記要求情報生成ステップにより生成される各構成変更要求情報について、前記要求情報生成ステップにより同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリングステップと
    前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第1のスケジューリングステップにより決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録する記録媒体において記録される前記構成変更履歴情報に基づいて算出する変更期間算出ステップと、
    前記変更期間算出ステップによって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリングステップとを含むことを特徴とする情報処理方法。
  7. 少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続される情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、
    前記コンピュータシステムの状態を示す監視データを取得し、前記監視データを取得した時点或いは前記監視データを分析した時点を示す時点情報と、前記監視データを取得した場所を示す場所情報と、前記監視データ或いは前記分析して得られた前記コンピュータシステムの状態を示す情報とを含むイベント情報を生成するイベント情報生成ステップと、
    前記イベント情報及び前記コンピュータシステムの運用指針を示すポリシー情報に基づいて、前記ポリシー情報に従った前記コンピュータシステムの構成を示す構成情報と、前記時点情報を基準に算出された、前記構成情報に示される構成に前記コンピュータシステムを変更すべき期限を示す期限情報とを含む構成変更要求情報を生成する要求情報生成ステップと、
    前記要求情報生成ステップにより生成される各構成変更要求情報について、前記要求情報生成ステップにより同一の構成変更要求情報が過去に生成された回数を示す信頼度情報を記録する記録媒体において記録される前記信頼度情報が閾値以上の前記構成変更要求情報を選択し、選択した前記構成変更要求情報夫々に含まれる前記期限情報及び前記構成情報を用いて、前記構成変更要求情報夫々に含まれる前記期限情報に示される期限までに、当該構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムの構成を確定させることを決定する第1のスケジューリングステップと
    前記信頼度情報が前記閾値以上の前記構成変更要求情報毎に、前記構成変更要求情報に含まれる前記構成情報に示される構成に前記コンピュータシステムを変更する際に要する期間を、前記第1のスケジューリングステップにより決定されたコンピュータシステムの構成情報を日時情報に沿って時系列に示した構成変更履歴情報を記録する記録媒体において記録される前記構成変更履歴情報に基づいて算出する変更期間算出ステップと、
    前記変更期間算出ステップによって算出された前記コンピュータシステムを変更する際に要する期間が重複し合う前記構成変更要求情報が存在する場合、該当する前記構成変更要求情報のうちの何れか一つの構成変更要求情報に示される構成情報を、前記該当する構成変更要求情報のうちの他の構成変更要求情報の構成情報へと変更する第2のスケジューリングステップとをコンピュータに実行させるためのプログラム。
JP2008058328A 2008-03-07 2008-03-07 情報処理装置、情報処理方法及びプログラム Active JP5155699B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008058328A JP5155699B2 (ja) 2008-03-07 2008-03-07 情報処理装置、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008058328A JP5155699B2 (ja) 2008-03-07 2008-03-07 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2009217373A JP2009217373A (ja) 2009-09-24
JP5155699B2 true JP5155699B2 (ja) 2013-03-06

Family

ID=41189186

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008058328A Active JP5155699B2 (ja) 2008-03-07 2008-03-07 情報処理装置、情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5155699B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2339513A1 (en) 2009-12-08 2011-06-29 Postech Academy-Industry- Foundation Apparatus and method for creating and managing personalized services in communication system
US8548442B2 (en) * 2010-01-11 2013-10-01 Microsoft Corporation Syndication of multiple service instances
WO2013015292A1 (ja) * 2011-07-25 2013-01-31 日本電気株式会社 品質評価装置、品質評価方法及びそのためのプログラムを記録した記録媒体
TW201413591A (zh) * 2012-09-25 2014-04-01 Hon Hai Prec Ind Co Ltd 虛擬主機控制系統及方法
US9639435B2 (en) 2013-11-11 2017-05-02 Hitachi, Ltd. Management computer and management method of computer system
RU2581559C2 (ru) 2014-08-01 2016-04-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ применения политик безопасности к накопителю в сети

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4220724B2 (ja) * 2002-05-21 2009-02-04 株式会社日立製作所 ストレージ装置
JP4066932B2 (ja) * 2003-11-10 2008-03-26 株式会社日立製作所 予測に基づいた計算機リソース配分方法
JP4286703B2 (ja) * 2004-03-31 2009-07-01 富士通株式会社 資源計画作成プログラム
JP2006011860A (ja) * 2004-06-25 2006-01-12 Fujitsu Ltd システム構成管理プログラム及びシステム構成管理装置
JP3892002B2 (ja) * 2004-07-01 2007-03-14 株式会社日立製作所 リソース割り当て方法及びプログラム
US7873694B2 (en) * 2005-02-10 2011-01-18 Nec Corporation Information system management unit
JPWO2007072544A1 (ja) * 2005-12-20 2009-05-28 富士通株式会社 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム
JP2008003736A (ja) * 2006-06-21 2008-01-10 Hitachi Ltd 計算機資源不足を警告する方法
JP2009032052A (ja) * 2007-07-27 2009-02-12 Ns Solutions Corp 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
JP2009217373A (ja) 2009-09-24

Similar Documents

Publication Publication Date Title
JP5155699B2 (ja) 情報処理装置、情報処理方法及びプログラム
US8793693B2 (en) Apparatus and method for predicting a processing time of a computer
US8266622B2 (en) Dynamic critical path update facility
US10430219B2 (en) Configuring virtual machines in a cloud computing platform
Sabuncuoglu et al. Rescheduling frequency in an FMS with uncertain processing times and unreliable machines
US8566285B2 (en) Method and system for scheduling and controlling backups in a computer system
US20080184241A1 (en) Techniques for automated balancing of tasks across multiple computers
KR20130062991A (ko) 가상 서버 제어 시스템 및 프로그램
US20090313631A1 (en) Autonomic workload planning
US20120158451A1 (en) Dispatching Tasks in a Business Process Management System
WO2014116345A1 (en) Cluster maintenance system and operation thereof
US20210262817A1 (en) Systems and methods for predicting estimated time of arrival
US9607275B2 (en) Method and system for integration of systems management with project and portfolio management
JP6815928B2 (ja) 電力管理装置及びプログラム
JP2009230581A (ja) バッチジョブ制御システム、管理ノード、およびバッチジョブ制御方法
US10606636B2 (en) Automated predictions for not-yet-completed jobs
US10866837B2 (en) Distributed job framework and task queue
JP4893663B2 (ja) 障害自動復旧装置
US20210374652A1 (en) Storage medium, job scheduling device, and job scheduling method
JP5349876B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP5325827B2 (ja) ジョブスケジュールシステム、ジョブスケジュール管理方法及びプログラム。
JP2009032052A (ja) 情報処理装置、情報処理方法及びプログラム
JP5441179B2 (ja) ジョブ実行管理システム
JP2009259005A (ja) リソース監視方法および装置
JP2007048192A (ja) 保守計画支援システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110307

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120515

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121009

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121107

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121207

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151214

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5155699

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250