(57)【要約】［課題］複数のサービスレベル要求に対してリソース等を適切に制御する。［解決手段］サービスレベル管理装置は、複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出するポリシ抽出部と、  抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視する監視部と、  前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行するように、前記実行環境を制御する制御部と、を備える。
2013105186.tif 000002
【特許請求の範囲】
【請求項１】
複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出するポリシ抽出部と、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視する監視部と、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行するように、前記実行環境を制御する制御部と、
を備えるサービスレベル管理装置。
【請求項２】
前記サービスレベル・ポリシ関係格納部が格納する前記モニタリング対象の数は、前記サービスレベルが高いほど多くなる、
請求項１に記載のサービスレベル管理装置。
【請求項３】
前記サービスレベル・ポリシ関係格納部が格納する前記閾値は、前記サービスレベルが高いほど低い、
請求項１または請求項２に記載のサービスレベル管理装置。
【請求項４】
前記アプリケーションの設計に用いる機能要求を入力可能な機能要求定義部と、
前記機能要求に応じて設計された前記アプリケーションを、前記監視部の監視対象として仮想マシンに配備するアプリケーション配備部と、
をさらに備え、
前記監視部は、前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、抽出した該監視プログラムによって計測された前記モニタリング対象に関する測定値を受信し、
前記アプリケーション配備部は、前記監視プログラムを、前記アプリケーションと共に前記仮想マシンに配備する、
請求項１乃至請求項３の何れかに記載のサービスレベル管理装置。
【請求項５】
前記監視部は、前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、抽出した監視プログラムを、前記アプリケーションの実行環境に送信すると共に、該監視プログラムによって計測された前記モニタリング対象に関する測定値を受信する、
請求項１乃至請求項３の何れかに記載のサービスレベル管理装置。
【請求項６】
前記サービスレベル・ポリシ関係格納部を、自装置に備える
請求項１乃至請求項５の何れかに記載のサービスレベル管理装置。
【請求項７】
複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出するポリシ抽出処理と、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視する監視処理と、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行するように、前記実行環境を制御する制御処理と、
をコンピュータに実行させるサービスレベル管理プログラム。
【請求項８】
前記モニタリング対象の数を、前記サービスレベルが高いほど多く前記サービスレベル・ポリシ関係格納部に格納する格納処理を、前記コンピュータに更に実行させる
請求項７に記載のサービスレベル管理プログラム。
【請求項９】
前記サービスレベルが高いほど低い前記閾値を前記サービスレベル・ポリシ関係格納部に格納する格納処理を、前記コンピュータに実行させる
請求項７または請求項８に記載のサービスレベル管理プログラム。
【請求項１０】
前記アプリケーションの設計に用いる機能要求を入力可能な機能要求定義処理と、
前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、前記監視プログラムによって計測された前記モニタリング対象に関する測定値を受信する前記監視処理と、
前記機能要求に応じて設計された前記アプリケーションを、監視対象として前記監視プログラムと共に仮想マシンに配備するアプリケーション配備処理と、
を前記コンピュータに実行させる請求項７乃至請求項９の何れかに記載のサービスレベルプログラム。
【請求項１１】
前記監視処理は、前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、抽出した監視プログラムを、前記アプリケーションの実行環境に送信すると共に、該監視プログラムによって計測された前記モニタリング対象に関する測定値を受信する処理を、前記コンピュータに実行させる請求項７乃至請求項９の何れかに記載のサービスレベル管理プログラム。
【請求項１２】
複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出し、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視し、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行する
サービスレベル管理方法。
【請求項１３】
前記モニタリング対象の数を、前記サービスレベルが大きいほど、多く前記サービスレベル・ポリシ関係格納手段に格納する
請求項１２に記載のサービスレベル管理方法。
【請求項１４】
前記サービスレベルが大きいほど、低い前記閾値を前記サービスレベル・ポリシ関係格納手段に格納する
請求項１１乃至請求項１３の何れかに記載のサービスレベル管理方法。
【請求項１５】
前記アプリケーションの設計に用いる機能要求が入力されるのに応じて、前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、
前記機能要求に応じて設計された前記アプリケーションを、監視対象として前記監視プログラムと共に仮想マシンに配備し、
前記監視プログラムによって計測された前記モニタリング対象に関する測定値を受信する
請求項１２乃至請求項１４の何れかに記載のサービスレベル管理方法。
【請求項１６】
前記モニタリング対象の性能を計測する監視プログラムを、監視要求方法を表す情報が格納された格納部から抽出し、抽出した該監視プログラムを、前記アプリケーションの実行環境に送信し、該監視プログラムによって計測された前記モニタリング対象に関する測定値を受信する
請求項１２乃至請求項１４の何れかに記載のサービスレベル管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、クラウドコンピューティング環境（クラウド環境）を実現するリソースを管理する技術分野に関する。
【背景技術】
【０００２】
クラウド事業者等は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）やメモリなどのリソースを、クラウド環境において実行するアプリケーション等の開発を行なうユーザ等に提供している。【０００３】
しかし、ユーザの要求するアプリケーション（Ａｐｐｌｉｃａｔｉｏｎ：以下、本願において「ＡＰ」と略称する場合もある）に対するサービスレベル（Ｓｅｒｖｉｃｅ  Ｌｅｖｅｌ：以下、本願において「ＳＬ」と略称する場合もある）に合致するようにクラウド事業者等がサービスレベルを保障することは困難である。その理由は、アプリケーションの設計、実装時などの段階において、そのアプリケーションが実行されるクラウド環境を実現するリソースを考慮することが困難なためである。【０００４】
このような課題に対して、特許文献１、２、３には、サービスレベル目標に基づいた性能情報の測定結果に基づいて、リソースの割り当てを変更するシステムの一例が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１７４２０１号公報
【特許文献２】特開２００７−０４８３１５号公報
【特許文献３】特開２００６−２５２１８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上述した特許文献に開示された技術では、アプリケーションの構成情報に関連して性能測定項目と値とが予め固定されている。このため、ユーザからの様々なサービスレベル要求に対してリソースの割り当てを適切に制御することができないという課題がある。【０００７】
そこで、本発明は、上記課題を解決するために、複数のサービスレベル要求に対してリソース等を適切に制御できるサービスレベル管理装置等、を提供することを主たる１つの目的とする。
【課題を解決するための手段】
【０００８】
かかる目的を達成するため、本発明の一形態は、
複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出するポリシ抽出部と、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視する監視部と、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行するように、前記実行環境を制御する制御部と、
を備えるサービスレベル管理装置を提供する。【０００９】
また、本発明は、複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出するポリシ抽出処理と、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視する監視処理と、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行するように、前記実行環境を制御する制御処理と、
をコンピュータに実行させるサービスレベル管理プログラムを提供する。【００１０】
また、本発明は、
複数のサービスレベルの各々に関して、アプリケーションの実行環境におけるモニタリング対象に関する測定値が表すところの該実行環境の負荷に対する閾値と、該実行環境の制御ルールとが関連付けて記述されたポリシであって、前記モニタリング対象、前記閾値、前記制御ルールの少なくとも何れかが前記サービスレベルに応じて互いに異なる前記ポリシを、個々の前記サービスレベル別に関連付けて格納するサービスレベル・ポリシ関係格納部を、特定のサービスレベルに基づいて参照することにより、該特定のサービスレベルに関連付けされている特定のポリシを抽出し、
抽出された前記特定のポリシに含まれる前記モニタリング対象に関する測定値を監視し、
前記測定値が表す前記負荷が、前記特定のポリシに含まれる前記閾値より高い場合に、前記制御ルールに応じた処理を実行する
サービスレベル管理方法を提供する。
【発明の効果】
【００１１】
本発明によれば、複数のサービスレベル要求に対してリソース等を適切に制御できる。
【図面の簡単な説明】
【００１２】
【図１】第一の実施形態に係るサービスレベル管理システムの構成を例示するブロック図である。
【図２】第一の実施形態に係るサービスレベル管理システムにおける、サービスレベルとポリシとの関係を表すテーブルを例示する図である。
【図３】第一の実施形態に係るサービスレベル管理システムにおけるサービスレベルとポリシとの図２とは異なる関係を表すテーブルを保持する図である。
【図４】第一の実施例に係るサービスレベル管理システムのサーバ２によって実現される仮想マシン２１の構成を概念的に示す図である。
【図５】第一の実施の形態に係る端末装置１の監視要求方法格納部１７が格納するテーブルを例示する図である。
【図６】第一の実施形態に係るサービス管理装置１が行うサービスレベル管理処理を示すフローチャートである。
【図７】第二の実施形態に係るサービスレベル管理システムの構成を例示するブロック図である。
【図８】各実施形態におけるサービルレベル管理装置（端末装置）を実現可能な、コンピュータ（情報処理装置）のハードウェア構成を例示するブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について、図面を用いて説明する。すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１４】
なお、各実施形態に係る装置等を構成する各部は、論理回路等のハードウェアで構成される。また、各実施形態の係る装置はコンピュータの制御部、メモリ、メモリにロードされたプログラム、プログラムを格納するハードディスク等の記憶ユニット、通信ネットワークとの接続用インターフェースなどによって構成されている。また係る装置は、ハードウェアとソフトウェアとの任意の組合せによって実現されてもよい。そして、後述する各実施形態を例として説明する本発明は、特に断りのない限り、その実現方法、装置の構成は限定されない。
【００１５】
図８は、本発明の各実施形態におけるサービルレベル管理装置（端末装置）を実現可能な、コンピュータ（情報処理装置）のハードウェア構成を例示するブロック図である。図８に示すように、係る情報処理装置１０００の制御部はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などによって構成されており、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を実行することによって自装置の全体を制御する。例えばＣＰＵ１００は、ドライブ装置１０３などに装着された記録媒体１０４からメモリ１０１にプログラムやデータを読み出して、読み出したプログラムやデータに従って各種の処理を実行する。ドライブ装置１０３などに装着された記録媒体１０４は、例えば光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、半導体メモリ等であって、コンピュータプログラムをコンピュータが読み取り可能に記録する。また、コンピュータプログラムは、通信網に接続されている図示しない外部コンピュータからダウンロードされても良い。情報処理装置１０００は、キーボード、マウス、ディスプレイ等のユーザインターフェイスを構成する入出力装置１０６も有する。これらの構成要素は、バス１０５を使って構成されており、互いにデータの入出力を行うことができる。
【００１６】
＜第１の実施形態＞
次に、本発明の第１の実施形態について図面を用いて詳細に説明する。図１は、本発明の第一の実施形態に係るサービスレベル管理システムの構成を例示するブロック図である。
【００１７】
図１に示すサービスレベル管理システムは、端末装置１（以下、「サービスレベル管理装置」とも称する場合がある）と、サーバ２とを含む。端末装置１とサーバ２とは、通信回線等によって、通信可能に接続されている。
【００１８】
端末装置１は、ＡＰ配備部１１と、ＡＰ設計部１２と、ポリシ抽出部１３と、監視部１４と、制御部１５と、ＳＬ・ポリシ関係格納部１６と、監視要求方法格納部１７と、を含む。
【００１９】
係る端末装置１において、ＡＰ配備部１１は、ＡＰ設計部１２によって設計されたアプリケーションをサーバ２の仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ以下、「ＶＭ」と略称する場合もある。）２１上に配備する。
【００２０】
ＡＰ設計部１２は、機能要求定義部１２１と、ＳＬ入力部１２２とを含む。
【００２１】
ＡＰ設計部１２は、例えばＣＡＳＥ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｓｏｆｔｗａｒｅ  Ｅｎｇｉｎｅｅｒｉｎｇ）ツールである。ユーザ等は、機能要求定義部１２１によって提供される機能を利用して、機能要求を端末装置１に入力することにより、所望のアプリケーションを設計する。ＡＰ設計部１２は、設計されたアプリケーションをＡＰ配備部１１に出力する。
【００２２】
ユーザ等は、ＳＬ入力部１２２を使いサービスレベルを入力する。係るサービス管理システム内でサービスレベルとは、システム提供者等がユーザに提供するサービスの品質を表す指標等である。サービスレベルには、性能や信頼性などのいわゆる非機能要求が含まれても良い。本実施の形態では後述のように、サービスレベルを、サービスレベル１、２、３などの数値で表す。
【００２３】
図２は、第一の実施形態に係るサービスレベル管理システムにおける、サービスレベルとポリシとの関係を表すテーブルを例示する図である。図２に示すように、ＳＬ・ポリシ関係格納部１６は、サービスレベルとポリシとを関連付けた状態で格納する。ポリシとは、ＳＬＯ（Ｓｅｒｖｉｃｅ  Ｌｅｖｅｌ  Ｏｂｊｅｃｔｉｖｅ）と制御ルールとを関連付ける情報である。
【００２４】
本実施形態のＳＬＯは、モニタリング対象である負荷の許容範囲等を示す条件であり、モニタリング対象と閾値との関係によって与えられている。例えば、ＳＬＯの欄に記載された「ＣＰＵ＞０．８」とは、ＣＰＵの使用率が０．８より高いことを表す。そして、  「Ｄｉｓｋ  ＩＯ＞１０００」とは、ディスクの単位時間当たりの入出力回数が１０００回より高いことを表す。
【００２５】
モニタリング対象とは、ＣＰＵやＤｉｓｋ  ＩＯ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）などの機器の状態やトランザクション数などの、サービスレベルに応じて指定される監視項目である。
【００２６】
また、図２に示すテーブルにおいて、制御ルールは、ＳＬＯ欄に示される条件が満たされる場合に制御部１５が行う制御内容である。例えば、図２に記載された制御ルールである「ＡｄｄＶＭ：１」は、「ＣＰＵ＞０．８」かつ「Ｄｉｓｋ  ＩＯ＞１０００」という条件が満たされる場合に、サーバ２が仮想マシン２１を１台生成するように、制御部１５がサーバ２に制御信号を送信することを示す。
【００２７】
ここで、図２に示すテーブルでは、サービスレベルが高くなるのに応じて、そのサービスレベルに関連づけられたポリシに含まれるＳＬＯ欄に示させる条件が厳しくなるような値を登録しても良い。
【００２８】
例えば、図２に示す例では、サービスレベル１に関連付けられたポリシに含まれる制御ルールと、サービスレベル２に関連するポリシに含まれる制御ルールとは、共に「ＡｄｄＶＭ：１」である。しかし、サービスレベル１に関連するポリシに含まれるＳＬＯ欄に示される条件は「ＣＰＵ＞０．８」かつ「Ｄｉｓｋ  ＩＯ＞１０００」である。これに対して、サービスレベル２に関連するポリシに含まれるＳＬＯ欄に示される条件は「ＣＰＵ＞０．７」かつ「Ｄｉｓｋ  ＩＯ＞９００」であり、サービスレベルが高いと、モニタリング対象に対する閾値が低くなっていることを表す。このことは、サービスレベルが高いと、ＣＰＵやディスクの負荷が低い段階でサーバ２に仮想マシン２１が１台追加されることを意味する。すなわち、図２に例示するテーブルでは、サービスレベルが高いと、ＳＬＯ欄が示す条件が厳しく、モニタリング対象の負荷状況が高くなる前にサーバ２に仮想マシン２１が１台追加される。
【００２９】
図３は、第一の実施形態に係るサービスレベル管理システムにおけるサービスレベルとポリシとの図２とは異なる関係を表すテーブルを保持する図である。図２に示すＳＬ・ポリシ関係格納部１６の例では、サービスレベル１、２、３が記載され、その各々のサービスレベルに応じてポリシが１つずつ関連付けられている。これに対し、ＳＬ・ポリシ関係格納部１６は、図３に示すように、サービスレベルの各々に対してポリシを複数関連付けて格納しても良い。その際、ポリシの数は、サービスレベルに応じて異なっても良い。
【００３０】
例えば、図３に示すＳＬ・ポリシ関係格納部１６の例では、サービスレベル１に関連するポリシは２つであるが、サービスレベル２に関連するポリシは３つであり、サービスレベル３に関連するポリシは４つである。このようにサービスレベルに関連付けられたポリシの数がサービスレベルごとに異なっても良い。これにより、本実施形態に係るサービスレベル管理装置システムによれば、サービスレベルに合わせてアプリケーション実行環境の適切な制御が可能となる。
【００３１】
また、図３のように、サービスレベルが高くなるにつれて、ＳＬ・ポリシ関係格納部１６モニタリング対象の数が多くなる関係を表すテーブルを格納しても良い。このことは、サービスレベルが高いと、監視項目が増えることを意味している。よってこのようなテーブルを参照するサービスレベル管理装置システムによれば、サービスレベルが高くなるにつれて、アプリケーション実行環境における、より詳細な監視と制御が可能となる。
【００３２】
また、図２に示す例では、当該テーブル内の全てのＳＬＯに、モニタリング対象としてＣＰＵとＤｉｓｋ  ＩＯが含まれる。しかし、図３に示すように、モニタリング対象の種類は、サービスレベルに応じて異なっても良い。
【００３３】
例えば、図３に示す例では、サービスレベル１に関連付けされたポリシにはモニタリング対象として「Ｎｅｔｗｏｒｋ」は含まれないが、サービスレベル２に関連するポリシの１つには、モニタリング対象として「Ｎｅｔｗｏｒｋ」が含まれる。「Ｎｅｔｗｏｒｋ」とは、ネットワーク帯域の使用率であり、「Ｎｅｔｗｏｒｋ＞０．５」は、当該使用率が０．５より高いことを示す。
【００３４】
このように、ＳＬ・ポリシ関係格納部１６が格納するテーブルにおいて、サービスレベルに応じて監視項目の種類は異なっても良い。これにより、本実施形態によればサービスレベルに応じた適切な監視項目の設定が可能となる。
【００３５】
また、ＳＬ・ポリシ関係格納部１６が格納するＳＬＯは、図２や図３におけるサービスレベル３に示すように、複数のモニタリング対象間の複合的な条件（複合条件）を含んでいても良い。
【００３６】
例えば、図２のサービスレベル１に関連付けされたポリシには、「ＣＰＵ＞０．８」かつ「Ｄｉｓｋ  ＩＯ＞１０００」というＳＬＯが含まれている。図３に示すサービスレベル３に関連する一番下に記載されたポリシには、「ＣＰＵ＞０．６」かつ「Ｄｉｓｋ  ＩＯ＞７００」かつ「Ｎｅｔｗｏｒｋ＞０．３」という条件のＳＬＯが含まれる。このように、複数のモニタリング対象間の複合的な条件（複合条件）に対して本実施形態に係る制御ルールが１つ指定されても良い。これにより、本実施形態によればアプリケーション実行環境の、より詳細な監視と制御が可能となる。
【００３７】
また、係る複合条件に対する制御ルールは、仮想マシンを追加することを表す制御ルールであってもよい。例えば、複数のモニタリング対象間の複合的な条件（例えば、サービスレベル３の「ＣＰＵ＞０．６」かつ「Ｄｉｓｋ  ＩＯ＞７００」かつ「Ｎｅｔｗｏｒｋ＞０．３」）には、仮想マシン２１（詳細は図４を参照して後述する。）自体を増加させる制御ルールが関連付けられている（例えば、「ＡｄｄＶＭ：１」）。一方、複合条件ではない場合（図３に示す、例えば、サービスレベル２の「ＣＰＵ＞０．８」）には、そのモニタリング対象が示すリソースを増加することを指示する制御ルールが関連付けられている（例えば、「ＡｄｄＣＰＵ：１」）。このように、複数のモニタリング対象間の複合的な条件に対する制御ルールは、個別のモニタリング対象が示すリソースを増加するのではなく、仮想マシン２１自体を増加することを指示する制御ルールでもよい。
【００３８】
なお、上記の説明ではサービスレベルの数字が大きいとサービスレベルが高い場合について説明した（例えば、サービスレベル１よりもサービスレベル２の方がサービスレベルが高い等）。しかし、本実施形態はこのような場合には限定されない。例えば、サービスレベルの数字の大きさとサービスレベルの高さとは関係がなく、当該数字は適宜設定可能である。即ち、例えばサービスレベル１の方がサービスレベル２よりもサービスレベルを高く設定してもよい。
【００３９】
ポリシ抽出部１３は、ＳＬ入力部１２２から入力されたサービスレベルを取得する。そして、当該サービスレベルに関連するポリシをＳＬ・ポリシ関係格納部１６から抽出する。例えば、図３に示すようにＳＬ・ポリシ関係格納部１６が図３に示すようなサービスレベルとポリシとを関連付けて格納している場合を考える。この場合、サービスレベル２がＳＬ入力部１２２から入力されると、ポリシ抽出部１３は、サービスレベル２に関連付けられた３つのポリシ（「ＣＰＵ＞０．８」；「Ｗａｒｎ」）、（「Ｄｉｓｋ  ＩＯ＞１０００」；「ＡｄｄＤｉｓｋ：１」）、（「Ｎｅｔｗｏｒｋ＞０．５」；「ＡｄｄＮＷｓｏｃｋｅｔ：１」）を抽出する。なお、（α；β）という表記は、ＳＬＯのαが満たされるときに、制御ルールのβが実行されることを示すポリシである。
【００４０】
ここで、（「ＣＰＵ＞０．８」；「Ｗａｒｎ」）は、上述のように、ＣＰＵ使用率が０．８より高い場合には警告メッセージを端末装置１に送信することを示すポリシである。また、（「Ｄｉｓｋ  ＩＯ＞１０００」；「ＡｄｄＤｉｓｋ：１」）は、ディスクの単位時間当たりの入出力回数が１０００回より高い場合には、Ｄｉｓｋを１単位だけ本実施形態の仮想マシン２１に追加することを示すポリシである。また、（「Ｎｅｔｗｏｒｋ＞０．５」；「ＡｄｄＮＷｓｏｃｋｅｔ：１」）は、ネットワークの帯域使用率が０．５より高い場合には通信回線を１単位だけ仮想マシン２１に追加することを示すポリシである。
【００４１】
図４は、第一の実施例に係るサービスレベル管理システムのサーバ２によって実現される仮想マシン２１の構成を概念的に示す図である。ここで、仮想マシン２１に記憶装置（Ｄｉｓｋ）を追加するとは、例えば図４に示すように、実マシンであるサーバ２が備えているＤｉｓｋの一部を仮想マシン２１のＤｉｓｋに新たに追加して割り当てることを意味する。同様に、通信回線を仮想マシン２１に追加するとは、例えば、サーバ２が備えている通信回線を仮想マシン２１の通信回線に新たに追加して割り当てることである。メモリやＣＰＵ等の他のリソースに関しても同様である。
【００４２】
また、図３には、前述した複合条件と制御ルールとを関連付けたポリシである（「ＣＰＵ＞０．６」「Ｄｉｓｋ  ＩＯ＞７００」「Ｎｅｔｗｏｒｋ＞０．３」；「ＡｄｄＶＭ：１」）が記載されている。このポリシは、上述のように、ＣＰＵ使用率が０．６より高く、ディスクの単位時間当たりの入出力回数が７００回より高く、ネットワークの帯域使用率が０．３より高い場合には、仮想マシン２１自体を１単位追加させることを示すポリシである。
【００４３】
ここで、新たな仮想マシンを追加するとは、例えば、現在の仮想マシン２１のスペックを備える仮想マシンを新たに追加することであり、サーバ２が備えるメモリやＤｉｓｋ等のリソースが新たな仮想マシンに割り当てられることを意味する。
【００４４】
端末装置１において監視部１４は、抽出されたポリシに含まれるモニタリング対象の測定値を取得する。例えば、抽出されたポリシが（「ＣＰＵ＞０．６」「Ｄｉｓｋ  ＩＯ＞７００」「Ｎｅｔｗｏｒｋ＞０．３」；「ＡｄｄＶＭ：１」）である場合には、「ＣＰＵ」、「Ｄｉｓｋ  ＩＯ」、「Ｎｅｔｗｏｒｋ」の３つがモニタリング対象である。監視部１４は、これらのモニタリング対象に対する測定値を、例えば、図５に示す監視要求方法格納部１７に格納された監視要求方法に応じた方法で取得する。なお、モニタリング対象には、アプリケーションの単位時間あたりのトランザクション数やＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）等が含まれても良い。
【００４５】
端末装置１において、図５は、第一の実施の形態に係る端末装置１の監視要求方法格納部１７が格納するテーブルを例示する図である。監視要求方法格納部１７は、図５に示すテーブルように、モニタリング対象と、監視要求方法とを関連付けて格納する。本実施形態において監視要求方法とは、監視部１４がモニタリング対象の測定値を取得する方法である。例えば、モニタリング対象が「Ｄｉｓｋ  ＩＯ」の場合、監視要求方法は「指示送信」である。これは、サーバ２が監視部１４にＤｉｓｋ  ＩＯの測定値を送信する旨の指示を、監視部１４がサーバ２に送信することを示す。
【００４６】
一方、モニタリング対象が「トランザクション」の場合、監視要求方法は「プログラムＡを送信」である。これは、監視部１４が、単位時間あたりのトランザクション数を取得するための監視プログラム（ここではプログラムＡ）を、サーバ２に送信することを示す。
なお、係る監視プログラムの送信は、監視部１４が行なう必要はない。例えば、ＡＰ設計部１２にて設計されたアプリケーションをＡＰ配備部１１がサーバ２配備する際に、ＡＰ配備部１１が当該アプリケーションとともに監視プログラムをサーバ２に配備しても良い。
【００４７】
また、例えば、まず係る端末装置１内のＡＰ配備部１１は、アプリケーションをサーバ２に配備させる。その後、監視部１４等は監視プログラムをサーバ２に送信しても良い。このような構成によれば、予めアプリケーション実行環境側であるサーバ２に監視プログラムを準備しておく必要がないため、ポリシの設定自由度を高めることができる。
【００４８】
端末装置１において制御部１５は、モニタリング対象の測定値とポリシを参照する。そして、制御部１５はモニタリング対象の測定値が示す負荷がポリシに含まれる閾値より高い場合に、制御ルールを実行する（例えば、制御ルールに応じた所定処理の実行指示をサーバ２に対して行なう）。ここで、モニタリング対象の測定値が示す負荷が閾値より高いことは、モニタリング対象が示す測定値の大きさが閾値よりも大きいことを意味しない。例えば、ＣＰＵ使用率が測定されるかわりにＣＰＵ空き率が測定されても良い。その場合には、モニタリング対象の測定値の大小や閾値との大小関係も入れ替わるから、負荷が高くなることと、測定値が閾値よりも大きな値であることとは関係がない。
【００４９】
サーバ２は、仮想マシン２１を備え、仮想マシン２１には、ＡＰ配備部１１からアプリケーションが配備される。
【００５０】
サーバ２は、監視部１４からモニタリング対象の測定値を取得する旨の指示を受信すると、モニタリング対象を測定し、測定値を監視部１４に送信する。
【００５１】
また、サーバ２は、制御部１５から制御ルールに応じた所定処理の実行指示を受信すると、特定の処理を実行する。
【００５２】
次に、本実施の形態のサービスレベル管理装置１の動作について詳細に説明する。
【００５３】
図６は、第一の実施形態に係るサービス管理装置１が行うサービスレベル管理処理を示すフローチャートである。サービス管理装置１のＡＰ設計部１２は、機能要求定義部１２１を介してユーザ等から機能要求を取得する。そして、ＡＰ設計部１２は、アプリケーションの設計を行なう（ステップＳ１１）。
【００５４】
一方、ＳＬ入力部１２２は、ユーザ等から、サービスレベルを取得する（ステップＳ２１）。
【００５５】
次に、ポリシ抽出部１３は、ＳＬ入力部１２２からサービスレベルを取得する。そして、ポリシ抽出部１３はＳＬ・ポリシ関係格納部１６を参照することにより、特定のサービスレベルに関連付けられたポリシを抽出する（ステップＳ２２）。ここで、ポリシ抽出部１３は、サービスレベルに関連するポリシがＳＬ・ポリシ関係格納部１６に複数存在する場合には、それら全てのポリシを抽出する。
【００５６】
次に、監視部１４は、ステップＳ２２において抽出されたポリシに含まれるモニタリング対象を抽出する。そして、監視部１４はモニタリング対象を監視する監視プログラムを、監視要求方法格納部１７（図５参照）を参照することによって取得する（ステップＳ２４）。例えば、監視部１４は、例えば、モニタリング対象が「トランザクション」である場合には、単位時間当たりのトランザクション数を測定する監視プログラムである「プログラムＡ」を取得する。
【００５７】
次に、ＡＰ配備部１１は、設計されたアプリケーションと、監視プログラムとをサーバ２が実行するＶＭ２１に配備する（ステップＳ２４）。
【００５８】
次に、監視部１４は、サーバ２に対して監視を指示することによって、当該サーバ２が実行する、監視プログラムの機能によりモニタリング対象を監視する（ステップＳ２５）。
【００５９】
次に監視部１４は、サーバ２からモニタリング対象に関して当該監視プログラムの機能によって測定された測定値を受信し、そのモニタリング対象としての負荷（本実施形態では、当該測定値が表すトランザクション数）が閾値よりも高いか否かを判断する（ステップＳ２６）。
【００６０】
モニタリング対象としての負荷が閾値よりも低い場合には、ステップＳ２５に戻り、監視部１４は監視を続ける。一方、モニタリング対象としての負荷が閾値よりも高い場合（ＳＬＯが満たされる場合）には、制御部１５は、当該ＳＬＯに関連した制御ルールの実行を行なう（ステップＳ２７）。
【００６１】
上述した説明では、ステップＳ２３〜２５において、監視部１４が監視要求方法格納部１７を参照して監視プログラムを取得し、監視プログラムをアプリケーションとともにサーバ２に配備する例を説明した。しかし、本実施形態を例として説明する本発明は、係る例には限定されない。例えば、監視部１４が監視するモニタリング対象がアプリケーションに依存しない場合には、監視部１４は、モニタリング対象に関する測定値を監視部１４に送信する旨の指示を、サーバ２に対して送信するだけであっても良い。
【００６２】
具体例について説明する。例えば、ＳＬ・ポリシ関係格納部１６が図３に示すＳＬＯと制御ルールとを関連付けて格納している場合、ユーザ等はＳＬ入力部１２２を介してサービスレベル３を入力する（ステップＳ２１）。
【００６３】
次に、ポリシ抽出部１３は、サービスレベル３に関連するポリシである（「ＣＰＵ＞０．７」；「ＡｄｄＣＰＵ：１」）、（「Ｄｉｓｋ  ＩＯ＞８００」；「ＡｄｄＤｉｓｋ：１」）、（「Ｎｅｔｗｏｒｋ＞０．５」；「ＡｄｄＮＷＳｏｃｋｅｔ：１」）、（「ＣＰＵ＞０．６」「Ｄｉｓｋ  ＩＯ＞７００」「Ｎｅｔｗｏｒｋ＞０．３」；「ＡｄｄＶＭ：１」）をＳＬ・ポリシ関係格納部１６から抽出する（ステップＳ２２）。
【００６４】
次に、監視部１４は、当該抽出したポリシから、モニタリング対象である「ＣＰＵ」、「Ｄｉｓｋ  ＩＯ」、「Ｎｅｔｗｏｒｋ」をそれぞれ抽出する（ステップＳ２３）。
【００６５】
そして、監視部１４は、監視要求方法格納部１７を参照することにより、これらのモニタリング対象の各々に関連する監視要求方法である「指示送信」を行なう。すなわち、監視部１４は、サーバ２に対して、これらのモニタリング対象に関する測定値を監視部１４に送信する旨の指示を送信する。
【００６６】
次に、サーバ２は、これらのモニタリング対象に関する測定値を監視部１４に送信する。その結果、例えば、係るサーバ２のＣＰＵ使用率＝０．５、Ｄｉｓｋ  ＩＯ＝８５０、Ｎｅｔｗｏｒｋ帯域使用率＝０．２という測定値が、サーバ２から端末装置１において監視部１４に送信された場合を考えるこの場合、このため、端末装置１において、ポリシ（「Ｄｉｓｋ  ＩＯ＞８００」；「ＡｄｄＤｉｓｋ：１」）に記述されたＳＬＯが満たされるため、制御部１５は制御ルール「ＡｄｄＤｉｓｋ：１」を実行する（ステップＳ２６、２７）。すなわち、制御部１５は、Ｄｉｓｋを１単位だけ仮想マシン２１に追加するようにサーバ２に指示を送信する。
【００６７】
一方、他のポリシに記述されたＳＬＯは満たされないため、制御部１５は他の制御ルールは実行しない。
【００６８】
本実施の形態によれば、ＳＬ・ポリシ関係格納部１６は、複数のサービスレベルの各々に対して、アプリケーションの実行環境におけるモニタリング対象としての負荷に対する閾値と制御ルールとを関連付けて記述したポリシを格納する。そして、当該ポリシは、モニタリング対象、閾値、制御ルールの少なくともいずれかがサービスレベルに応じて互いに異なる。制御部１５は、モニタリング対象としての負荷が閾値よりも高い場合に制御ルールを実行するので、サービスレベル管理装置１は、複数のサービスレベル要求に対してリソース等を適切に制御できる。
【００６９】
＜第２の実施形態＞
次に、本発明の第２の実施の形態について図面を用いて詳細に説明する。図７は、本発明の第二の実施形態に係るサービスレベル管理装置の構成を概念的に示すブロック図である。
【００７０】
本実施形態のサービスレベル管理装置１は、ポリシ抽出部１３、監視部１４、制御部１５、ＳＬ・ポリシ関係格納部１６を含む。尚、ＳＬ・ポリシ関係格納部１６は参照（アクセス）可能であれば、サービスレベル管理装置１の外部に設けられたデータベース等に配置されてもよい。
【００７１】
ＳＬ・ポリシ関係格納部１６は、複数のサービスレベルの各々と、アプリケーションの実行環境におけるモニタリング対象に関する測定値が示す負荷に対する閾値と制御ルールとを関連付けて記述したポリシとを関連付けて格納する。ここで、当該ポリシは、モニタリング対象、閾値、制御ルールの少なくともいずれかがサービスレベルに応じて互いに異なる。
【００７２】
ポリシ抽出部１３は、外部から入力されたサービスレベルを取得する。そして、ポリシ抽出部１３はＳＬ・ポリシ関係格納部１６を参照して、取得したサービスレベルに関連するポリシを抽出する。
【００７３】
監視部１４は、抽出されたポリシに含まれるモニタリング対象に関する測定値を取得する。ここで、監視部１４は、例えば、モニタリング対象と監視要求方法とを関連付けて格納する図示しない監視要求方法格納部１７を参照することにより、モニタリング対象の各々に対応する監視要求方法によって、モニタリング対象に関する測定値を各々取得する。
【００７４】
制御部１５は、モニタリング対象に関する測定値が示す負荷がポリシに含まれる閾値より高い場合に、制御ルールに応じた所定処理を実行する。
【００７５】
本実施の形態によれば、ＳＬ・ポリシ関係格納部１６は、複数のサービスレベルの各々に対して、アプリケーションの実行環境におけるモニタリング対象である負荷に対する閾値と制御ルールとを関連付けて記述したポリシを格納する。そして、当該ポリシは、モニタリング対象、閾値、制御ルールの少なくともいずれかがサービスレベルに応じて互いに異なる。制御部１５は、モニタリング対象の負荷が閾値よりも高い場合に制御ルールを実行する。そのため、本実施の形態によれば、複数のサービスレベル要求に対してリソース等を適切に制御することができる。
【００７６】
以上、実施形態（及び実施例）を参照して本願発明を説明したが、本願発明は上記実施形態（及び実施例）に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、２０１２年０１月１０日に出願された日本出願特願２０１２−００２３９２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【００７７】
１      端末装置
１１    ＡＰ配備部
１２    ＡＰ設計部
１３    ポリシ抽出部
１４    監視部
１５    制御部
１６    ＳＬ・ポリシ対応格納部
１７    監視要求方法格納部
１００  ＣＰＵ
１０１  メモリ
１０２  ハードディスクドライブ（ＨＤＤ）
１０３  ドライブ装置
１０４  記憶装置
１０５  バス
１０００  情報処理装置（コンピュータ）
【図１】
2013105186.tif 000003
【図２】
2013105186.tif 000004
【図３】
2013105186.tif 000005
【図４】
2013105186.tif 000006
【図５】
2013105186.tif 000007
【図６】
2013105186.tif 000008
【図７】
2013105186.tif 000009
【図８】
2013105186.tif 000010
【国際調査報告】
2013105186.tif 000011
2013105186.tif 000012