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

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

Info

Publication number
JP2010066828A
JP2010066828A JP2008230199A JP2008230199A JP2010066828A JP 2010066828 A JP2010066828 A JP 2010066828A JP 2008230199 A JP2008230199 A JP 2008230199A JP 2008230199 A JP2008230199 A JP 2008230199A JP 2010066828 A JP2010066828 A JP 2010066828A
Authority
JP
Japan
Prior art keywords
computer system
policy
request information
information
configuration
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.)
Granted
Application number
JP2008230199A
Other languages
English (en)
Other versions
JP5349876B2 (ja
Inventor
Tomokazu Shindo
朋和 進藤
Makoto Naito
誠 内藤
Yasutaro Kashima
康太郎 鹿島
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 JP2008230199A priority Critical patent/JP5349876B2/ja
Publication of JP2010066828A publication Critical patent/JP2010066828A/ja
Application granted granted Critical
Publication of JP5349876B2 publication Critical patent/JP5349876B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】 適切なコンピュータシステムの運用を図る。
【解決手段】 判断部104は、コンピュータシステムの状態を示すイベント情報と、コンピュータシステムの運用指針を示すポリシー情報とに基づいて、コンピュータシステムの構成を変更するための要求情報を生成する。スケジュール部108は、生成される要求情報に応じたコンピュータシステムの構成変更処理のスケジューリングを行う。シミュレーション部110は、生成されたスケジュールをシミュレーションする。判断部104は、シミュレーション結果によって新たに得られるイベント情報がポリシーを満たしているか否かを判定し、ポリシーを満たしていないと判定された場合、新たに得られるイベント情報とポリシーとに基づいて、コンピュータシステムの構成を変更するための要求情報を新たに生成する。
【選択図】 図1

Description

本発明は、対象となるコンピュータシステムを自律的に管理する自律型コンピューティングに適用可能な技術に関するものである。
従来、人間によるコンピュータシステムの管理の負荷を軽減するためにコンピュータが自ら管理する仕組み、所謂自律型コンピューティングが知られている。自律型コンピューティングでは、コンピュータシステムに障害が発生すると、所定の運用指針(以下、ポリシーと称す)に基づいて、自律的な自己の障害を修復することができる。
更に、システムの状態は様々な要素が複雑に絡んでいるので、或るサイトに向けて作成されたポリシーの妥当性を検証することは、人手による机上のチェックでは不可能であり、一方、本番システムでチェックすることはコスト面等で厳しいものがあった。これに対し、特許文献1においては、自律管理向けポリシーシミュレータというものを提供している。
特開2005−196601号公報
特許文献1に開示される技術は、シミュレーションを行い、フィードバックされたシミュレーション結果がポリシーを満たさなかった場合、当該ポリシーを抽出し、人間がポリシーエディタを用いてポリシーを修正するための技術である。そのため、人間がポリシーをチューニングし続ける必要がある(特許文献1段落[0026])。また特許文献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に出力する。また、後述するシミュレーション部110によって生成される新たなイベント情報が、取得したポリシーを満たさない場合、新たなイベント情報と当該ポリシーとに基づいて構成変更要求を再度生成する。
イベント情報蓄積データベース109は、ポリシー管理データベース105に蓄積される構成情報を逐次取得していき、構成情報の履歴を管理する。
スケジュール部108は、自律型コンピューティング環境であるコンピュータシステムの構成変更に要する時間を考慮して、期限までに構成変更処理が完了するように構成変更のスケジューリングを行う。
シミュレーション部110は、スケジュール部108によるスケジューリング結果をシミュレーションし、当該スケジューリング結果について新たなイベント情報を出力する。また、シミュレータは、方式は問わないが、将来のある時刻におけるシステムの構成やリソースの負荷情報等の過渡現象を考慮してリソース使用率、アプリケーションの応答時間、システムの処理量を計算し、過渡状態を含めたシステムの挙動のシミュレーションを実現する。
プロビジョニング装置107は、上記新たなイベント情報がポリシーを満たす場合、そのときのスケジュール部108によるスケジューリング結果に従って、自律型コンピューティング環境に対するプロビジョニング処理を実行する。
図2は、自律型コンピューティング装置100のハードウェア構成を示すブロック図である。CPU201は、システムバスに接続される各デバイスやコントローラを統括的に制御する。ROM203又はHD207には、CPU201の制御プログラムであるBIOS(Basic Input/Output System)やオペレーティングシステムプログラムや、自律型コンピューティング装置100が実行する例えば図3乃至図5に示す処理のプログラム等が記録されている。
なお、図2の例では、ハードディスク(HD)207は、自律型コンピューティング装置100の内部に配置された構成としているが、他の実施形態としてHD207に相当する構成が自律型コンピューティング装置100の外部に配置された構成としてもよい。本実施形態に係る例えば図3乃至図5に示す処理を行うためのプログラムは、フレキシブルディスク(FD)206やCR−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、スケジュール部108、シミュレーション部110及びプロビジョニング装置107は、例えばHD207内に記録され、必要に応じてRAM202にロードされるプログラム及びそれを実行するCPU201に相当する構成である。
図1のポリシー管理データベース105、モニタリング結果データベース102及びイベント情報蓄積データベース109は、例えばHD207内の一部記憶領域に相当する構成である。なお、ポリシー管理データベース105、モニタリング結果データベース102は、本自律型コンピューティング装置100の外部に備えた構成としてもよい。
図3乃至図5−2は、本実施形態に係る自律型コンピューティング装置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)。
続いて、図4において、シミュレーション部110は、スケジュール部108から出力されたスケジュールをシミュレーションし、シミュレーション結果として新たなイベント情報を出力する(ステップS306)。
続いて、判断部104は、シミュレーション部110から出力されたイベント情報がポリシーを満たしているか否かを判定する(ステップS307)。イベント情報がポリシーを満たしていない場合、判断部104は、ポリシーを満たすように新たに構成変更要求を生成する(ステップS308)。
続いて、スケジュール部108は、新たに生成された構成変更要求を基にスケジューリング処理を行う(ステップS309)。そして、処理はステップS306に戻り、シミュレーション部110は、ここで出力されたスケジュールについてシミュレーションを行う。上述したステップS306〜S309の処理は、ステップS307においてシミュレーション結果がポリシーを満たすと判定されるまで繰り返し実行される。
ステップS307において、新たに生成されたイベント情報がポリシーを満たすと判定された場合、プロビジョニング装置107は、スケジューリング部108によって最終的に生成された実現可能なスケジュールに従って、構成変更処理を自律型コンピューティング環境に対して実行する(ステップS311)。
図6は、本実施形態において監視対象とする自律型コンピューティング環境の一例を示す図である。ここでは、サーバ類1001であるWebサーバ1、APサーバ1及びDBサーバ1〜2、並びに、ストレージ類1002であるDBが、互いにネットワーク装置103である通信回線を介して接続されるコンピュータシステムを例に挙げている。なお、図6におけるAPサーバ2〜5は、上記通信回線に同様に接続されているが、稼働していない状態にあり、必要に応じてコンピュータシステムに追加される予備のサーバであることを示している。また、これら予備のAPサーバ2〜5は、APサーバとして追加されるだけではなく、他のサービスを提供するサーバ、例えばWebサーバやDBサーバ等、必要に応じた追加がなされる。また図6において、説明の便宜上サーバ等のハードウェア・リソースを図示したが、ハードウェアだけでなく、ネットワークの設定、ミドルウェアや開発環境などのプラットフォーム一式についても、自律型コンピューティング環境において同様に扱えることは言うまでもない。
図7は、図6に示す自律型コンピューティング環境を監視対象とした場合の構成情報を示す図である。図7に示すように、構成情報には、例えば、日時情報、各サーバ(ノード)の名称、サービス名、役割、スペック及びステータスが含まれる。日時情報には、構成情報がモニタリング装置101によって生成された日時を示す。サービス名は、該当するコンピュータシステムのサービス名を示す。役割は、コンピュータシステム内におけるサーバの役割を示す。ステータスは、サーバが動作中の状態にあるか否かを示す。なお、上述の構成情報は本実施形態を行うに当たっての一例である。例えば、該当サーバが動作しているか否かをステータスで管理する代わりに、サーバやサービス、役割、スペック等の項目を空白で管理することで、該当サーバが稼働していない状態にあることを管理しても当然よい。
図8は、判断部104が取得するイベント情報の構成の一例を概念的に示す図である。従って、実際にはコンピュータが理解できるようにプログラミング言語で表現されている。なお、イベント情報の構成に関する他の図においても同様である。図8においては、2つのイベント情報を例示している。イベント情報には、日時情報、発生場所、内容が含まれる。日時情報は、監視データがモニタリング装置101によって取得された日時を示す情報、或いは、分析部103によってイベント情報が生成された日時を示す情報である。発生場所は、監視データの取得場所を示す情報である。内容は、監視データに基づいて解析されたイベント情報の内容を示す情報である。ここでは、イベント情報1の内容として、「2.5時間後に(APサーバ)1台当たりのCPU利用率が70%」となることが示されている。イベント情報1は、モニタリング装置101によって生成され、判断部104によって取得されたものである。
図9は、図8に示すイベント情報に該当するポリシーの構成の一例を概念的に示す図である。ここでは、イベント情報1の発生場所のサービスA及びAPサーバに関係するポリシーが選択され、そのなかで、最適なCPU利用率の基準を示すポリシー1が選択される。
ポリシーには、適用箇所、ルールが含まれる。適用箇所は、当該ポリシーを適用する箇所を示す情報である。ルールは、当該ポリシーの適用箇所であるルールを示す情報である。図9に示すように、ポリシー1の適用箇所は、サービスAを提供するコンピュータシステムのAPサーバであることが示されている。また、ポリシー1のルールとしては、「1台当たりのCPU利用率を40%程度に抑える」ことが示されている。なお、図9では説明のためにルールを文書的に表現しているが、実際にはコンピュータプログラミング言語でよく使われるif/then形式等で記載し、コンピュータがルールを判断できるようにする。なお、ポリシーの構成に関する他の図においても同様である。
次に、図3のステップS304における判断部104における構成変更要求の生成方法について詳細に説明する。先ず、判断部104が現在の構成情報を取得し、上述の処理の通りポリシーを選択する。次に、判断部104は、取得した現在の構成情報とポリシーを、図10に示すサービスAの稼働にAPサーバ全体として要する負荷量を算出する式に適用させ、サービスAの稼働にAPサーバ全体として要する負荷量を算出する。具体的には、図11を用いて後述する。また、この例では、負荷量として、APサーバのCPU性能比及びCPU利用率を使用しているが、サービスAへのアクセス量など他の値を利用してもよい。CPU性能比とは、CPUの性能を表す指標であり、クロック周波数、ベンチマーク試験の結果等の値を利用して算出する。
次に、図11を用いて、サービスAの稼働にAPサーバ全体として要する負荷量の算出処理を具体的に説明する。例えば、判断部104は、取得した現在の構成情報から、サービスAを提供しているAPサーバが1台構成であることを把握する。また、判断部104は、図8に示すイベント情報1を取得すると、2.5時間後のAPサーバ1台当たりのCPU利用率が70%であることを把握する。従って、図11に示すように、APサーバ1台分の、CPU性能比×CPU利用率の合計を算出する。ここでは、APサーバのCPU性能比が1である場合を例示しているが、これに限らないことは勿論である。
次に、このような処理によって算出した、サービスAの稼働にかかるAPサーバ全体の負荷量と選択したポリシーとに基づいて、サービスAの稼働において、ポリシーを満たすために必要とされるAPサーバ構成を算出する。具体的には、2.5時間後の負荷量(70%)を、判断部104が取得した図9に示すポリシーの「(APサーバ)1台当たりのCPU利用率を40%程度に抑える」の40%で割る。判断部104がこの処理を行うことによって、ポリシーを満たしてサービスAを稼働するのに必要なAPサーバ台数が算出される。なお、割り切れない場合には、繰り上げた値を必要なAPサーバ台数とする。
図12は、判断部104による必要なAPサーバ台数の算出方法を示す図である。図12に示すように、必要なAPサーバ台数は、サービスAを提供する際に要されるAPサーバ全体の負荷量をポリシーに示される1台当たりのCPU利用率40%で除算して、2.5時間後に必要なAPサーバ台数は2台と算出される。
図13は、判断部104が上述の処理を行ったことによって生成した構成変更要求を示す概念図の一例である。図13の構成変更要求1には、「2008/4/4 2:30までにサービスAのAPサーバを2台構成にする」といったように、予測される2.5時間後の負荷量に応じて、図9に示すポリシーを満たしてサービスAを提供するのに必要なAPサーバ台数が記述された構成変更要求1が生成される。
図14は、スケジュール部108が上記構成変更要求1に基づいて出力するスケジュールを示す概念図の一例である。以下では、図3のステップS305の具体例を説明する。ここでは、2008/4/4 2:00までにAPサーバ台数を1台とし(構成変更c)、2008/4/4 4:00までにAPサーバ台数を4台にする(構成変更b)ことが既にスケジューリングされているものとする。図14においては、構成変更に要する時間を考慮して、構成変更c、bを夫々上記期限までに完了させるために、それらの期限から30分前に構成変更を開始させることがスケジュールとして示されている。このようなスケジューリングには、該当する構成変更(ジョブ)に要する時間が用いられる。即ち、構成変更の期限から構成変更に要する時間だけ遡った時間に構成変更が開始されるようにスケジューリングされる。このようにすることで、確実に期限までに構成変更を完了させることができる適切なスケジューリングが行えるようになる。なお、構成変更に要する時間を決定するための処理は、図5のフローチャートを用いて詳細に説明する。
この状態でスケジュール部108が上記構成変更要求1を入力すると、2008/4/4 2:30までにAPサーバ台数を2台にする(構成変更a)ために、その構成変更に要する時間を考慮して、図14に示すように、期限(2008/4/4 2:30)から30分前の2008/4/4 2:00に構成変更aを開始させることをスケジューリングする。
図15は、図14に示すスケジュールに対するシミュレーション結果を示す図である。以下では、図4のステップS306の具体例について説明する。シミュレーション部110は、サービスAの30分置きの応答時間と当該サービスAのAPサーバの30分置きのCPU利用率とについてシミュレーション結果として新たなイベント情報を出力する。図15の例では、図14に示すスケジュール通りにシステムの構成変更を行った場合、2008/4/4 1:30には、APサーバのCPU利用率が30%、サービスAの応答時間が2秒となり、2008/4/4 2:00には、APサーバのCPU利用率が20%、サービスAの応答時間が2秒となり、2008/4/4 2:30には、APサーバのCPU利用率が20%、サービスAの応答時間が2秒となり、2008/4/4 3:00には、APサーバのCPU利用率が50%、サービスAの応答時間が10秒となることが、シミュレーション結果として出力されたことを示している。また、図15(シミュレーション結果)と図8(イベント情報)は、いずれも「何時の時点において、どこで、どのような状態にあるか」を示したものであり、従って両者は同義である。
図15に示すシミュレーション結果においては、2008/4/4 3:00におけるAPサーバのCPU利用率が50%であるため、図9に示すポリシーを満たさない。従って、図4のステップS307では、ポリシーを満たさないと判定されることになる。図15に示すシミュレーション結果の2008/4/4 3:00におけるAPサーバは2台構成であり、APサーバ1台当たりのCPU利用率は50%である。従って、判断部104は、図16に示すように、APサーバ2台分の、CPU性能比×CPU利用率の合計を算出する。
次に、このような処理によって算出した、サービスAの稼働にかかるAPサーバ全体の負荷量と選択したポリシーとに基づいて、サービスAの稼働において、ポリシーを満たすために必要とされるAPサーバの台数を算出する。具体的には、2008/4/4 3:00でのサービスAを提供する際に要されるAPサーバ全体の負荷量(100%)を、判断部104が取得した図9に示すポリシーの「(APサーバ)1台当たりのCPU利用率を40%程度に抑える」の40%で割る。判断部104がこの処理を行うことによって、ポリシーを満たしてサービスAを稼働するのに必要なAPサーバ台数が再度算出される。
図17は、判断部104による必要なサーバ台数の算出方法を示す図である。図17に示すように、必要なサーバ台数は、サービスAを提供する際に要されるAPサーバ全体の負荷量をポリシーに示される1台当たりのCPU利用率40%で除算して、2008/4/4 3:00に必要なAPサーバ台数は3台と算出される。
図18は、判断部104が上述の処理を行うことによって生成した構成変更要求を示す図である。ここでは、図4のステップS308の具体例について説明する。図18の構成変更要求2には、「2008/4/4 3:00までにサービスAのAPサーバを3台構成にする」といったように、2008/4/4 3:00時点のシミュレーション結果に応じて、図9に示すポリシーを満たしてサービスAを提供するのに必要なAPサーバ台数が記述された構成変更要求2が生成される。
図19は、スケジュール部108が上記構成変更要求2に基づいて出力するスケジュールを示す図である。ここでは、図4NステップS309の具体例について説明する。上述したスケジューリング処理によって、2008/4/4 2:00までにAPサーバ台数を1台とし(構成変更c)、2008/4/4 2:30までにAPサーバ台数を2台とし(構成変更a)、2008/4/4 4:00までにAPサーバ台数を4台にする(構成変更b)ことが既にスケジューリングされているものとする。図19においては、構成変更に要する時間を考慮して、構成変更c、a、bを夫々上記期限までに完了させるために、それらの期限から30分前に構成変更を開始させることがスケジュールとして示されている。
この状態でスケジュール部108が上記構成変更要求2を入力すると、2008/4/4 3:00までにAPサーバ台数を3台にする(構成変更d)ため、その構成変更に要する時間を考慮して、図19に示すように、期限(2008/4/4 3:00)から30分前の2008/4/4 2:30に構成変更dを開始させることをスケジューリングする。ここでのスケジューリング処理においても、上述したステップS305と同様に構成変更に要する時間を決定し、決定された構成変更に要する時間を用いてスケジューリングが行われる。また以降の処理については上述の通り、ステップS306に戻り、シミュレーション部110は、ここで出力されたスケジュールについてシミュレーションを行い、シミュレーション結果がポリシーを満たすと判定されるまで、構成変更要求の生成および当該構成変更要求のスケジューリング処理が繰り返し実行される。
以上のように、本実施形態によれば、監視対象のコンピュータシステムの構成変更のスケジューリング結果がポリシーを違反する場合、当該ポリシーを満たすような構成の変更要求を生成することにより、適切なコンピュータシステムの運用を図ることが可能となる。
図5は、構成変更に要する時間の算出方法を示すフローチャートである。ここでは、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2から構成されるコンピュータシステムからAPサーバ4を除外する構成変更を例に挙げて説明する。即ち、ここでは、APサーバを3台構成にする旨の「内容」が記述された構成変更要求が判断部104から出力された場合について説明を行う。
図5において、先ずスケジュール部108は、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期をイベント情報蓄積データベース109内の構成変更履歴から探索する(ステップS511)。
続いて、スケジュール部108は、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2で構成されるコンピュータシステムと同じ構成である時期が存在したか否かを判定する(ステップS512)。
図20は、イベント情報蓄積データベース109内の過去の構成変更履歴の一例を概念的に示す図である。図20に示すように、構成変更履歴は、レコード毎に該当するサーバについて、時刻、当該サーバのサーバ名、当該サーバのサービス名、当該サーバの役割、当該サーバのスペック、当該サーバの状態、プロビジョニング方法及びジョブIDを記録している。サーバの状態は、当該サーバが通常(変化なし)の状態であるか、構成変更のための何らかの状態にあるかを示す。プロビジョニング方法は、プロビジョニングを行う際に実行される処理を示す。
図20において、各同じ日時について、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分要したことを示している。
図20の例では、Webサーバ1〜4、APサーバ1〜4及びDBサーバ1〜2の構成のコンピュータシステムで稼働していた時期が2007/2/16 16:00に存在する。従って、スケジュール部108は、図20に示す構成変更履歴を参照した場合、ステップ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は、同じ構成である時期が存在すると判定された構成変更履歴内の各サーバから構成されるコンピュータシステムについて、当該ジョブの構成変更要求の「内容(APサーバ3台構成)」と同じ構成変更の記録が存在するか否かを判定する(ステップS514)。構成変更要求の「内容(APサーバ3台構成)」と同じ構成変更の記録が存在すると判定された場合、処理はステップS516に移行する。一方、構成変更要求の「内容(APサーバ3台構成)」と同じ構成変更の記録が存在しないと判定された場合、処理はステップS515に移行する。
図20の例では、2007/2/16 16:10にAPサーバ4が除外され、APサーバが3台となる履歴が登録されているため、スケジュール部108は、図20の構成変更履歴を参照した場合、構成変更履歴内に当該ジョブの構成変更要求の「内容」と同じ構成変更の記録が存在すると判定する。
ステップ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は、構成変更の記録から判定される構成変更に要する時間を「構成変更に要する時間」として採用する。図20の例では、構成変更履歴内に当該ジョブの構成変更要求の「内容」と同じ構成変更の記録が一つしか存在しないため、ステップS517が実行されることになる。つまり、当該ジョブ8に対いては20分が「構成変更に要する時間」として採用されることになる。なお、「構成変更に要する時間」の求め方において、上述の処理は一例に過ぎない。例えば、構成変更要求前後のシステム構成と当該構成変更要求に要した時間をユニークに管理する等、過去に行った構成変更において要した時間を把握できる処理であればよいことは言うまでも無い。
また、本発明を実施するにあたってイベント情報は、標準的なフォーマットの一つであるCBE(Common Base Event)データに変換されていてもよいことは言うまでもない。
本発明の実施形態に係る自律型コンピューティング装置の機能的な構成を示すブロック図である。 自律型コンピューティング装置のハードウェア構成を示すブロック図である。 本発明の実施形態に係る自律型コンピューティング装置の動作の流れを示すフローチャートである。 本発明の実施形態に係る自律型コンピューティング装置の動作の流れを示すフローチャートである。 本発明の実施形態に係る自律型コンピューティング装置の動作の流れを示すフローチャートである。 本発明の実施形態において監視対象とする自律型コンピューティング環境の一例を示す図である。 図6に示す自律型コンピューティング環境を監視対象とした場合の構成情報を示す図である。 判断部が取得するイベント情報の構成の一例を概念的に示す図である。 図8に示すイベント情報に該当するポリシーの構成の一例を概念的に示す図である。 サービスAの稼働にAPサーバ全体として要する負荷量を算出する式を示す図である。 サービスAの稼働にAPサーバ全体として要する負荷量の算出処理を具体的に説明するための図である。 判断部による必要なサーバ台数の算出方法を示す図である。 判断部が生成する構成変更要求1の一例を示す図である。 スケジュール部が構成変更要求1に基づいて出力するスケジュールを示す概念図である。 図14に示すスケジュールに対するシミュレーション結果を示す図である。 サービスAの稼働にAPサーバ全体として要する負荷量の算出処理を具体的に説明するための図である。 判断部による必要なサーバ台数の算出方法を示す図である。 判断部が生成する構成変更要求2の一例を示す図である。 スケジュール部が構成変更要求2に基づいて出力するスケジュールを示す図である。 イベント情報蓄積データベース内の過去の構成変更履歴の一例を概念的に示す図である。
符号の説明
100 自律型コンピューティング装置
101 モニタリング装置
102 モニタリング結果データベース
103 分析部
104 判断部
105 ポリシー管理データベース
107 プロビジョニング装置
108 スケジュール部
109 イベント情報蓄積データベース
110 シミュレーション部
1001 サーバ類
1002 ストレージ類
1003 ネットワーク装置類

Claims (5)

  1. サービスを提供する少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続された情報処理装置であって、
    前記コンピュータシステムの状態を示すイベント情報と、前記サービスを提供する前記コンピュータシステムの運用指針を示すポリシー情報とに基づいて、前記コンピュータシステムの構成を変更するための要求情報を生成する要求情報生成手段と、
    前記要求情報生成手段により生成される要求情報に応じた前記コンピュータシステムの構成変更処理のスケジューリングを行うスケジューリング手段と、
    前記スケジューリング手段によって生成されたスケジュールをシミュレーションするシミュレーション手段と、
    前記シミュレーション手段によるシミュレーション結果によって新たに得られるイベント情報が前記ポリシーを満たしているか否かを判定する判定手段とを有し、
    前記要求情報生成手段は、前記判定手段によって前記新たに得られるイベント情報が前記ポリシーを満たしていないと判定された場合、前記新たに得られるイベント情報と前記ポリシーとに基づいて、前記コンピュータシステムの構成を変更するための要求情報を新たに生成することを特徴とする情報処理装置。
  2. 前記スケジューリング手段は、前記要求情報生成手段により生成される要求情報に応じた前記コンピュータシステムの構成変更処理を期限までに実行できるようにスケジューリングすることを特徴とする請求項1に記載の情報処理装置。
  3. 前記要求情報生成手段により生成される要求情報に応じた前記コンピュータシステムの構成変更処理に要する時間を決定する決定手段を更に有し、
    前記スケジューリング手段は、前記決定手段により判定された時間を用いて前記コンピュータシステムの構成変更処理をスケジューリングすることを特徴とする請求項2に記載に情報処理装置。
  4. サービスを提供する少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続された情報処理装置による情報処理方法であって、
    前記コンピュータシステムの状態を示すイベント情報と、前記サービスを提供する前記コンピュータシステムの運用指針を示すポリシー情報とに基づいて、前記コンピュータシステムの構成を変更するための要求情報を生成する要求情報生成ステップと、
    前記要求情報生成ステップにより生成される要求情報に応じた前記コンピュータシステムの構成変更処理のスケジューリングを行うスケジューリングステップと、
    前記スケジューリングステップによって生成されたスケジュールをシミュレーションするシミュレーションステップと、
    前記シミュレーションステップによるシミュレーション結果によって新たに得られるイベント情報が前記ポリシーを満たしているか否かを判定する判定ステップとを含み、
    前記要求情報生成ステップは、前記判定ステップによって前記新たに得られるイベント情報が前記ポリシーを満たしていないと判定された場合、前記新たに得られるイベント情報と前記ポリシーとに基づいて、前記コンピュータシステムの構成を変更するための要求情報を新たに生成することを特徴とする情報処理方法。
  5. サービスを提供する少なくとも一つのコンピュータから構成されるコンピュータシステムと通信回線を介して接続された情報処理装置による情報処理方法をコンピュータに実行させるためのプログラムであって、
    前記コンピュータシステムの状態を示すイベント情報と、前記サービスを提供する前記コンピュータシステムの運用指針を示すポリシー情報とに基づいて、前記コンピュータシステムの構成を変更するための要求情報を生成する要求情報生成ステップと、
    前記要求情報生成ステップにより生成される要求情報に応じた前記コンピュータシステムの構成変更処理のスケジューリングを行うスケジューリングステップと、
    前記スケジューリングステップによって生成されたスケジュールをシミュレーションするシミュレーションステップと、
    前記シミュレーションステップによるシミュレーション結果によって新たに得られるイベント情報が前記ポリシーを満たしているか否かを判定する判定ステップとをコンピュータに実行させ、
    前記要求情報生成ステップは、前記判定ステップによって前記新たに得られるイベント情報が前記ポリシーを満たしていないと判定された場合、前記新たに得られるイベント情報と前記ポリシーとに基づいて、前記コンピュータシステムの構成を変更するための要求情報を新たに生成することを特徴とするプログラム。
JP2008230199A 2008-09-08 2008-09-08 情報処理装置、情報処理方法及びプログラム Active JP5349876B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008230199A JP5349876B2 (ja) 2008-09-08 2008-09-08 情報処理装置、情報処理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008230199A JP5349876B2 (ja) 2008-09-08 2008-09-08 情報処理装置、情報処理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2010066828A true JP2010066828A (ja) 2010-03-25
JP5349876B2 JP5349876B2 (ja) 2013-11-20

Family

ID=42192397

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008230199A Active JP5349876B2 (ja) 2008-09-08 2008-09-08 情報処理装置、情報処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5349876B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015040688A1 (ja) * 2013-09-18 2015-03-26 株式会社日立製作所 計算機システムを管理する管理システム及びその管理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003337721A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd ストレージ構成自動変更装置及び方法
JP2005148799A (ja) * 2003-11-11 2005-06-09 Fujitsu Ltd 情報処理方法、サービス時間導出方法、及び処理ユニット数調整方法
JP2005293048A (ja) * 2004-03-31 2005-10-20 Fujitsu Ltd 資源計画作成プログラム
JP2007148469A (ja) * 2005-11-24 2007-06-14 Hitachi Ltd ビジネスプロセス定義を用いた事前リソース割り当て方法
WO2007072544A1 (ja) * 2005-12-20 2007-06-28 Fujitsu Limited 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム
JP2008003736A (ja) * 2006-06-21 2008-01-10 Hitachi Ltd 計算機資源不足を警告する方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003337721A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd ストレージ構成自動変更装置及び方法
JP2005148799A (ja) * 2003-11-11 2005-06-09 Fujitsu Ltd 情報処理方法、サービス時間導出方法、及び処理ユニット数調整方法
JP2005293048A (ja) * 2004-03-31 2005-10-20 Fujitsu Ltd 資源計画作成プログラム
JP2007148469A (ja) * 2005-11-24 2007-06-14 Hitachi Ltd ビジネスプロセス定義を用いた事前リソース割り当て方法
WO2007072544A1 (ja) * 2005-12-20 2007-06-28 Fujitsu Limited 情報処理装置、計算機、リソース割り当て方法及びリソース割り当てプログラム
JP2008003736A (ja) * 2006-06-21 2008-01-10 Hitachi Ltd 計算機資源不足を警告する方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015040688A1 (ja) * 2013-09-18 2015-03-26 株式会社日立製作所 計算機システムを管理する管理システム及びその管理方法
GB2524434A (en) * 2013-09-18 2015-09-23 Hitachi Ltd Management system for managing computer system and management method thereof
JP6009089B2 (ja) * 2013-09-18 2016-10-19 株式会社日立製作所 計算機システムを管理する管理システム及びその管理方法

Also Published As

Publication number Publication date
JP5349876B2 (ja) 2013-11-20

Similar Documents

Publication Publication Date Title
US9846594B2 (en) Workflow control apparatus and method therefor
US8498887B2 (en) Estimating project size
US8185903B2 (en) Managing system resources
Hijazi et al. A review of risk management in different software development methodologies
US8352237B2 (en) System and method for system integration test (SIT) planning
Liu et al. A generic QoS framework for cloud workflow systems
US20090158287A1 (en) Dynamic critical path update facility
US20160004566A1 (en) Execution time estimation device and execution time estimation method
Ponz‐Tienda et al. The fuzzy project scheduling problem with minimal generalized precedence relations
JP4705484B2 (ja) 性能監視装置、性能監視方法及びプログラム
US9621679B2 (en) Operation task managing apparatus and method
JP5155699B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2016024697A (ja) リソース管理システム及びリソース管理方法
Canavera et al. Mining the execution history of a software system to infer the best time for its adaptation
US9740575B2 (en) System design method, system design apparatus, and storage medium storing system design program, for analyzing failure restoration procedure
US10025698B2 (en) System and method for efficiently predicting testing schedule and stability of applications
Balsamo et al. Experimenting different software architectures performance techniques: a case study
JP5349876B2 (ja) 情報処理装置、情報処理方法及びプログラム
WO2014054231A1 (ja) 情報システム構築支援装置、情報システム構築支援方法および記憶媒体
JP5304972B1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP5443686B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP2009116618A (ja) 情報処理装置
Moselhi et al. Compression of project schedules using the analytical hierarchy process
Mirandola et al. A deep investigation for qos-based feedback at design time and runtime
JP2008234407A (ja) 自動負荷試験装置および自動負荷試験方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130204

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130821

R150 Certificate of patent or registration of utility model

Ref document number: 5349876

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