(57)【特許請求の範囲】
【請求項１】
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定において収集した前記複数の物理マシンの稼動状況に基づいて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する次の判定周期における複数の物理マシンの稼動状況を予想し、当該予想に応じて前記次の判定周期を再設定し、
設定した前記次の判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータに実行させる判定制御プログラム。
【請求項２】
前記過去の判定結果に基づいて、前記次の判定周期において予想される仮想マシンの状態を示す仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記次の判定周期を設定する、
請求項１に記載の判定制御プログラム。
【請求項３】
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定において収集した前記複数の物理マシンの稼動状況に基づいて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する次の判定周期における複数の物理マシンの稼動状況を予想し、当該予想に応じて前記次の判定周期を再設定し、
設定した前記次の判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータが実行する判定制御方法。
【請求項４】
性能条件を含む仮想マシンの取得要求を受信する受信部と、
受信した前記取得要求に応じた複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定する判定部と、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定において収集した前記複数の物理マシンの稼動状況に基づいて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する次の判定周期における複数の物理マシンの稼動状況を予想し、当該予想に応じて前記次の判定周期を再設定する周期設定部と、を有し、
前記判定部は、
設定した前記次の判定周期に応じて期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
仮想マシン管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定制御プログラム、判定制御方法及び仮想マシン管理装置に関する。
【背景技術】
【０００２】
性能の異なる複数の物理マシンで実現される仮想システムを提供する仮想マシン提供システムにおいて、ユーザが利用している仮想システムの利用状況に応じて仮想マシンの追加等を行う技術が知られている（例えば、特許文献１参照）。仮想マシン（以下、「ＶＭ（Virtual Machine）」ともいう。）を追加する際、ユーザは期待する性能を含めた仮想マシンの取得を仮想マシン提供システムに要求する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２０８５８０号公報
【特許文献２】国際特開第２０１２／１３７２７２号パンフレット
【特許文献３】特開２０１３−１９０８８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、物理マシンの使用状況等により、ユーザは、常に要求する性能の仮想マシンを取得できるわけではない。そこで、要求する性能の仮想マシンが取得できない場合、ユーザは、取得できるまで所定のタイミングで要求する性能の仮想マシンの取得要求を送出する。
【０００５】
例えば、図１に一例を示すように、仮想マシン提供システムは、各ユーザからのＶＭ取得（生成）要求に応じて、要求された性能の仮想マシンを提供できるか否かの判定処理を行う。すなわち、仮想マシン提供システムは、各ユーザからのＶＭ取得（生成）要求に対して（ステップＳ１）、ＶＭを生成し、所定のアプリケーションを導入する（ステップＳ２）。次に、仮想マシン提供システムは、生成したＶＭの性能を導入した所定のアプリケーションを利用して測定し、測定結果をユーザに通知する（ステップＳ３）。
【０００６】
次に、仮想マシン提供システムは、生成したＶＭをＶＭプールに追加したときに、ＶＭプール内のＶＭ数が予め定められた上限値を超えるかを判定する（ステップＳ４）。仮想マシン提供システムは、ＶＭプール内のＶＭ数が上限値を超えないと判定した場合、生成したＶＭをＶＭプールに追加する（ステップＳ５）。他方、ステップＳ４において仮想マシン提供システムは、ＶＭプール内のＶＭ数が上限値を超えると判定した場合、生成したＶＭがＶＭプール内の最低性能のＶＭかを判定する（ステップＳ６）。最低性能と判定された場合、生成したＶＭは削除される（ステップＳ７）。他方、ステップＳ６において最低性能でないと判定された場合、ＶＭプール内の最低性能のＶＭを削除し、生成したＶＭをＶＭプールに追加する（ステップＳ８）。
【０００７】
仮想マシン提供システムは、ＶＭ取得（生成）要求のキャンセルを受け付けるまで前記判定処理を定期的に繰り返す。このため、一のユーザからの取得要求に対してそのユーザが要求する性能の仮想マシンの構築が可能かどうかは、他のユーザからの取得要求に影響を受けてしまうことがある。
【０００８】
そこで、一側面では、本発明は、取得要求された性能条件に応じた仮想マシンの構築が可能かを判定するタイミングの適正化を図ることを目的とする。
【課題を解決するための手段】
【０００９】
一の案では、性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定において収集した前記複数の物理マシンの稼動状況に基づいて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する次の判定周期における複数の物理マシンの稼動状況を予想し、当該予想に応じて前記次の判定周期を再設定し、設定した前記次の判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、処理をコンピュータに実行させる判定制御プログラムが提供される。
【発明の効果】
【００１０】
一側面によれば、取得要求された性能条件に応じた仮想マシンの構築が可能かを判定するタイミングの適正化を図ることができる。
【図面の簡単な説明】
【００１１】
【図１】ＶＭ生成判定処理の一例を示す図。
【図２】一実施形態にかかる仮想マシン提供システムの全体構成例を示す図。
【図３】一実施形態にかかる仮想マシン管理装置の機能構成の一例を示す図。
【図４】一実施形態にかかる標本調査データテーブルの一例を示す図。
【図５】一実施形態にかかるサンプリング周期管理テーブルの一例を示す図。
【図６】一実施形態にかかるポアソン分布によるＶＭの次回取得予想個数の確率の一例を示す図。
【図７】図６のＶＭの次回取得予想個数の確率を降順にソートした図。
【図８】一実施形態にかかるＶＭの次回取得予想性能分布の算出例を示す図。
【図９】一実施形態にかかる取得予想個数と希望個数との多次元ベクトル化の一例を示す図。
【図１０】一実施形態にかかるサンプリング周期の適正化を説明するための図。
【図１１】一実施形態にかかるＶＭ確保及び性能評価処理の一例を示すフローチャート。
【図１２】一実施形態にかかるＶＭ確保及び性能評価処理の一例を示すフローチャート。
【図１３】一実施形態にかかるＶＭ確保及び性能評価処理の一例を示すフローチャート。
【図１４】一実施形態にかかるＶＭ確保及び性能評価処理の一例を示すフローチャート。
【図１５】一実施形態にかかる性能測定処理の一例を示すフローチャート。
【図１６】一実施形態にかかるサンプリング周期判定処理の一例を示すフローチャート。
【図１７】一実施形態にかかる仮想マシン管理装置のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１３】
［仮想マシン提供システムの全体構成］
まず、本発明の一実施形態に係る仮想マシン提供システム１の全体構成の一例について、図２を参照しながら説明する。一実施形態に係る仮想マシン提供システム１は、仮想マシン取得装置２、仮想マシン管理装置３及び性能の異なる複数の物理マシン５ａ、５ｂ、５ｃ・・・を有し、これらの装置はネットワーク５を介して接続されている。複数の物理マシン５ａ、５ｂ、５ｃ・・・は、総称して物理マシン５ともいう。複数の物理マシン５は、例えばデータセンター４内に配置される。
【００１４】
仮想マシン提供システム１は、仮想マシン取得装置２からの仮想マシンの取得要求に応じて、複数の物理マシン５によって構成される仮想環境に仮想マシンａ〜ｉ等を起動させ、ネットワーク５を介してユーザに仮想マシンの利用環境を提供する。以下、ユーザに提供する仮想マシンの利用環境を、「ユーザ仮想システム」ともいう。仮想マシン提供システム１によるサービスの提供は、クラウドサービスとも呼ばれる。
【００１５】
仮想マシン取得装置２は、ネットワークを介して仮想マシン管理装置３が管理する複数の物理マシン５に仮想マシンを起動させて利用したいユーザのユーザ端末であっても良いし、ユーザのローカル環境に設置されたコンピュータであっても良い。あるいは、物理マシン５上に起動した仮想マシンを、仮想マシン取得装置２として機能させるようにしても良い。
【００１６】
ユーザは、物理マシン５上に起動した仮想マシンを、ＰＣ（Personal Computer）等の自身のユーザ端末から接続して利用することができる。ここでは、１台の仮想マシン取得装置２を示して説明するが、仮想マシン提供システム１には複数のユーザの複数の仮想マシン取得装置２が接続されてもよい。
【００１７】
仮想マシン管理装置３は、仮想マシン取得装置２から送信される仮想マシンの取得要求に応じて、複数の物理マシン５ａ、５ｂ、５ｃ・・・に仮想マシンを生成・起動させる装置である。例えば、仮想マシン管理装置３は、複数の物理マシン５毎に、その物理マシン５に起動される仮想マシンのサイズ、物理マシン５上に生成可能な仮想マシンの台数等の情報を自身の記憶領域に記憶しておく。また、仮想マシン管理装置３は、どの物理マシン５に何台の仮想マシンを生成（起動）させたかを示す情報を自身の記憶領域に記憶しておく。仮想マシン管理装置３は、このような情報を参照して、仮想マシン取得装置２から送信される仮想マシンの取得要求に含まれる性能条件を満たし、仮想マシンを生成可能な物理マシン５に仮想マシンの取得要求を送信して仮想マシンを起動させる。また、仮想マシン管理装置３は、起動させた仮想マシンの識別情報を、仮想マシンの取得要求を行った仮想マシン取得装置２に送信する。仮想マシンの識別情報には、例えばＩＰ（Internet Protocol）アドレス等を適用できる。
【００１８】
物理マシン５は、自身のコンピュータリソースを仮想化し、複数の仮想マシンを生成・起動させる仮想化機能を備えるコンピュータである。物理マシン５は、仮想マシン管理装置３を介して送信される仮想マシン取得装置２が取得要求する仮想マシンの性能条件に応じて、自身のコンピュータリソースに仮想マシンを生成・起動する。
【００１９】
ここで、物理マシン５は、予め定められた仮想マシンの性能に応じたサイズ単位に自身のコンピュータリソースを仮想化して複数の性能区分に区切り、区切った性能区分毎に仮想マシンを起動させる。例えば、ＣＰＵ（Central Processing Unit）処理速度、メモリ容量、ディスク容量等の性能に基づいて、高性能の仮想マシンをＨ（Ｈｉｇｈ）、中性能の仮想マシンをＭ（Ｍｉｄｄｌｅ）、低性能の仮想マシンをＬ（Ｌｏｗ）としてもよい。物理マシン５は、ユーザが希望する性能条件の取得要求に応じてリソースを仮想化した所望の仮想マシンを生成する。また、物理マシン５は、仮想マシン管理装置３からの仮想マシンの取得停止要求に応じて、自身のコンピュータリソース上に起動した仮想マシンの提供を停止させる。
【００２０】
このように、物理マシン５はユーザが取得を要求する性能の仮想マシンを生成・起動する。このとき、複数の物理マシン５の間では、規格等の相違、同一の物理マシン５上に起動している他の仮想マシンの稼働状況によって実際に起動する仮想マシンの性能には多少のバラツキが発生する。
【００２１】
すなわち、クラウド内において複数の物理マシン５により提供されるリソース（ＣＰＵ、ネットワーク、ストレージなど）の性能が均一でないことから、その物理リソースの性能差により、仮想リソースの割り当て単位は同じでも、実際の仮想マシン（ＶＭ）の取得時の性能が異なる事象が発生することがある。特に、ＶＭなどに割り当てられるリソース性能が、ユーザが要求する性能に合致している必要がある分野(例えば、シミュレーション処理やバッチ処理など)では、実際に起動するＶＭの性能のバラツキが課題となることがある。
【００２２】
そこで、要求する性能をもつＶＭを取得するために、図１に示すＶＭ生成判定処理では、次の処理（１）〜（３）を定期的に繰り返す。この結果、要求する性能をもつＶＭの取得効率が悪くなる。
（１）ＶＭの生成
（２）ＶＭ性能測定、評価
（２−１）性能評価後、要求する性能をもつＶＭであれば生成したＶＭを確保する。
（２−２）性能評価後、要求する性能をもつＶＭでなければ生成したＶＭを削除する。
（３）ＶＭの削除
上記（１）〜（３）の処理が定期的に繰り返される時間間隔を以下、「サンプリング周期」とも表記する。サンプリング周期は、取得要求された性能条件を満たす仮想マシンの構築が可能かを判定する判定周期の一例である。例えば、サンプリング周期を長く設定した場合、ユーザが要求する性能のＶＭを取得できる機会を逃す場合が多く、結果、処理時間が掛かる性能のＶＭを取得する機会が増え、実施の処理時間が期待する処理時間を超えてしまう場合がある。他方、サンプリング周期を短く設定した場合、ユーザが要求する性能のＶＭを取得できる可能性は高くなる。しかし、多くのサンプリングを行う場合が発生し、結果ＶＭ生成判定処理に掛かる負荷が余分に発生する場合がある。
【００２３】
そこで、本実施形態にかかる仮想マシン管理装置３は、仮想マシンが構築可能かを判定するタイミングの適正化を図る。すなわち、ＶＭの性能に対するユーザの要求と実際に取得できたＶＭの性能とに応じてサンプリング周期を適正化することで、要求された性能の仮想マシンの構築が可能かを判定するタイミングを最適化する。これにより、ユーザの要求に合った性能条件のＶＭの取得を効率的に行うことができる。これにより、より適切なＶＭをユーザに提供することができ、ＶＭの生成及び削除に関する負荷を抑制することができる。
【００２４】
［仮想マシン管理装置の機能構成］
次に、仮想マシン管理装置３の機能構成の一例について、図３を参照しながら説明する。図３に示すように、仮想マシン管理装置３は、受信部１０、ＶＭ確保部１１、通知部１２、記憶部１８、デプロイ部１９及びＶＭプール２２を有する。受信部１０は、ＶＭの取得要求を受信する。ＶＭの取得要求には、性能条件が含まれる。ＶＭ確保部１１は、後述される標本調査の結果に基づき高性能なＶＭの確保制御を統合的に行う。通知部１２は、取得要求に対してなされたＶＭ生成の結果をユーザに通知する。
【００２５】
ＶＭプール２２は、ＶＭ確保部１１によるＶＭの生成によって確保された高性能なＶＭを保存しておく。ＶＭは一旦削除したり、停止させたりした場合、再起動時の性能を確保できる保証がないので、ＶＭプール２２に保管される。
【００２６】
デプロイ部１９は、所望のアプリケーションをＶＭに導入し、ＶＭにより該アプリケーションを利用可能とする。デプロイ部１９は、アプリ導入削除部２０及びＶＭ取得解放部２１を有する。アプリ導入削除部２０は、指定されたＶＭ識別子をもつＶＭに指定されたアプリケーションをインストールする。また、アプリ導入削除部２０は、不要となったＶＭからアプリケーションをアンインストールする。ＶＭ取得解放部２１は、インストールしたアプリケーションに応じたＶＭをＶＭプール２２から取得し、アンインストールしたアプリケーションに応じたＶＭをＶＭプール２２へ戻す。ＶＭ確保部１１は、ＶＭ生成の結果、要求する性能のＶＭが得られた場合、生成したＶＭをＶＭプール２２中に保管する。
【００２７】
記憶部１８は、ＶＭプールポリシーＤＢ３０、標本調査データテーブル３１及びサンプリング周期管理テーブル３２を有する。
【００２８】
ＶＭプールポリシーＤＢ３０には、性能区分の修正ポリシーや、性能測定（以下、「標本調査」ともいう。）により得られたデータの収集周期や期間などの修正ポリシー定義情報が保持される。
【００２９】
記憶部１８は、標本調査データテーブル３１に、同一クラウドコンピュータ内のＶＭ性能の標本調査の結果得られた標本調査データを保持する。標本調査データテーブル３１の一例を図４に示す。例えば性能の一番低い値（１）から一番高い値（１０）の範囲を５等分し、２値分を１区分とした性能区分１〜５の各区分に対応する標本調査回数１３１、発生数１３２、平均出現数１３３が標本調査データテーブル３１に記録される。なお、ここでは、性能区分を５段階に設定したが、性能区分の数はこれに限らない。また、性能区分の数はユーザにより設定され得る。本実施形態では、標本調査は、Ｓ（＝４，５時間）時間毎に行われ、生成された各性能区分のＶＭ数をカウントし、全期間分の標本調査データを保存する。本実施形態では、一定期間のサンプリングを行う。例えば、１区間(サンプリング周期)を３時間とし、１週間分のサンプリングを行ってもよい。一度に生成されるＶＭ数が少ない場合（例えば１個）は、１時間おきに、５分後ごとに５回ＶＭの生成及び削除を行い、これに対する標本調査を行って得られた標本調査データを１回分のサンプリングデータとしてもよい。
【００３０】
図４の例では、Ｓ時間毎に生成されたＶＭ数が記録されている。例えば、性能区分１の標本調査では、標本調査回数１３１が１回目のＶＭ数のベンチマーク値は「１．１」、２回目のＶＭ数は「０」、３回目のＶＭ数は「１．２」、４回目のＶＭ数は「１．８」であり、発生数（Ｎ）１３２は３回である。この結果、平均出現数１３３は、０．７５（＝３／４）となる。
【００３１】
また、性能区分２の標本調査では、標本調査回数１３１が１回目のＶＭ数のベンチマーク値は「２．０」、２回目のＶＭ数は「２．９」、「２．１」、３回目のＶＭ数は「２．５」、４回目のＶＭ数は「０」であり、発生数（Ｎ）１３２は４回である。この結果、平均出現数（ν）１３３は、１（＝４／４）となる。
【００３２】
記憶部１８は、図５に一例を示すサンプリング周期管理テーブル３２に、取得要求内容２３１、取得要求発生時間２３２、周期時間２３３を記憶する。取得要求内容２３１は、ユーザからの取得要求であり、例えば取得要求内容２３１が（１，２，３，４，５）の場合、性能区分１のＶＭを１台、性能区分２のＶＭを２台、性能区分３のＶＭを３台、性能区分４のＶＭを４台、性能区分５のＶＭを５台要求する。取得要求発生時間２３２は、取得要求内容２３１を要求した時間を示し、周期時間２３３は、取得要求内容２３１を要求する周期を示す。
【００３３】
ＶＭ確保部１１は、ＶＭ生成削除部１３、性能測定部１４、判定部１５、周期設定部１６及び測定値管理部１７を有する。ＶＭ生成削除部１３は、取得要求された性能条件に基づくＶＭの生成及び削除を行う。また、ＶＭ生成削除部１３は、次回取得性能および個数予想機能の指示に基づくＶＭの生成及び削除を行う。
【００３４】
性能測定部１４は、標本調査データに基づくＶＭの次回取得予想個数及び全体の性能などの計算を行う。
【００３５】
判定部１５は、性能測定部１４の計算結果に基づき複数の物理マシン５のいずれかにおいてユーザが取得要求する性能条件を満たすＶＭの構築が可能かを判定する。
【００３６】
周期設定部１６は、判定部１５の判定結果に基づき標本調査周期間隔を示すサンプリング周期の設定やＶＭの取得確保などの制御を行う。
【００３７】
測定値管理部１７は、標本調査の結果やＶＭプール２２に確保されているＶＭに関する情報等を保存及び管理する。
【００３８】
［サンプリング周期の適正化］
次に、一実施形態に係るサンプリング周期の適正化について、図６〜図９を参照しながら説明する。周期設定部１６は、標本調査データテーブル３１に保存されている標本調査データに基づき、例えば下記のポアソン分布式（１）に示すポアソン分布ｆ（ｘ）を用いて各性能区分の確率質量を算出する。
【００３９】
【数１】
0006550945.tif 000002
【００４０】
ここで、ｘは標本調査データテーブル３１に保存されている過去の標本調査結果のベンチマーク値、νは平均出現数である。図４に示す標本調査データテーブル３１に示すＶＭ生成では、各ＶＭは５時間毎に４回〜６回生成される。ここで、ＶＭ取得の時間間隔や回数は、データセンター全体のＶＭ性能分布を出来るだけ正確に収集できるように設定される。例えば、ＶＭ取得の時間間隔や回数は、１日ごとに３０回や１日の内でも朝、昼、夜の３回／日で１ヶ月などに設定される。
【００４１】
収集した標本調査データは、性能測定部１４に送られ、図４に示すように標本調査データテーブル３１に保存される。標本調査データの収集が終了すると標本調査データの最小値と最大値とを５等分し、性能区分１〜５のデータに分ける。ここで、性能区分の数は、求める性能をどれだけ厳密に算出するかに応じて定められる。性能をより厳密に求める場合、標本調査データをより細かく等分することで性能区分の数を多くし、性能をそれほど厳密に求めない場合、標本調査データをより粗く等分することで性能区分の数を少なくする。
【００４２】
性能測定部１４は、図４に示す各性能区分の発生回数（Ｎ）を求め、標本調査回数内での平均出現数（ν：ν＝Ｎ／Ｓ）を求める。性能測定部１４は、求められた平均出現数（ν）に基づき、ポアソン分布式（１）を用いて過去の複数回の標本調査結果から次回の性能評価を予想する。この結果、性能測定部１４は、図６に一例を示すように、予想されるＶＭの次回取得予想個数の確率を算出する。例えば、性能区分１のＶＭを次回１台も取得できない確率は「０．４７２３６７」と算出される。また、性能区分１のＶＭを次回１台取得できる確率は「０．３５４２７５」、性能区分１のＶＭを次回２台取得できる確率は「０．１３２８５３」、性能区分１のＶＭを次回３台取得できる確率は「０．０３３２１３」と算出される。
【００４３】
次に、性能測定部１４は、求めたＶＭの次回取得予想個数の確率を降順にソートする。図６のＶＭの次回取得予想個数の確率を降順にソートした結果を図７に示す。性能測定部１４は、確率の上位からＶＭの次回取得予想個数の合計がサンプル数５個になる集合を求める。図７の場合、ＶＭの次回取得予想個数の合計がサンプル数５個になる集合は、（０．３６７８７９，０．３５８１３１，０．３５４２７５，０．３３４６９５，０．３０３２６５）となる。
【００４４】
次に、性能測定部１４は、ＶＭの次回取得予想個数の合計がサンプル数５個になる集合が全体性能のどの程度に位置するかを調査し、ＶＭを取得後、ＶＭプール２２に確保するか、標本調査データの収集に留めるかを判定する。また、周期設定部１６は、サンプリング周期を修正するかを判定する。
【００４５】
具体的には、性能測定部１４は、次回取得予想個数のＶＭの性能分布を数値化する。図８に示すように、まず、性能測定部１４は、得られた標本調査データの各性能区分の平均値（Ｘ）を算出する。平均値は、Σサンプル値／発生数によって算出される。例えば、性能区分１の区分性能の平均値（Ｘ）は、（１．１＋１．２＋１．８）／３＝１．３７となる。
【００４６】
次に、性能測定部１４は、求められた区分性能の平均値から標準偏差値（σ）を性能区分毎に求める。標準偏差値（σ）を求めるために、まず、性能測定部１４は、各性能区分の分散を算出する。分散は、偏差（Ｘ−μ）を二乗した値である。μは、性能区分１〜５の区分性能の平均値（Ｘ）の平均値３．５０（＝１７．５０／５）である。
【００４７】
性能測定部１４は、分散の平均値２．３４（＝１１．７／５）を算出する。次に、性能測定部１４は、分散の平均値から標準偏差値を算出する。標準偏差値（σ＝√σ２）は、分散の平均値から「２」と算出される。
【００４８】
次に、性能測定部１４は、標準偏差値に基づき、各性能区分の偏差値を算出する。各性能区分の偏差値は、５０＋各性能区分の偏差（Ｘ−μ）＋標準偏差値（σ）により算出される。各性能区分の偏差値は、性能区分毎のＶＭの次回取得予想個数に対する取得可能性の指標である。判定部１５は、各性能区分の偏差値の高低により、次回取得予想個数のＶＭが得られるかを判定する。
【００４９】
性能測定部１４は、次回取得予想個数と次回取得要求個数の内積により高次元ベクトル化を行う。例えば、性能測定部１４は、図９に示されるＶＭの次回取得予想個数（Ｅ）とサンプリング周期管理テーブル３２に記憶されているユーザのＶＭの取得要求個数（Ｎ）とを多次元ベクトル化して表現する。ここでは、性能測定部１４は、Ｅ＝（１，１，１，１，１）、Ｎ＝（０，０，０，１，２）に基づき式（２）の内積を計算する。
【００５０】
【数２】
0006550945.tif 000003
【００５１】
なお、以上に説明した偏差値を考慮した性能区分毎の取得予想個数は、性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴の一例である。
（サンプリング周期）
次に、周期設定部１６は、式（３）に基づき、多次元ベクトルとの類似度を算出する。類似度は、０以上１以下の値を取る。
【００５２】
【数３】
0006550945.tif 000004
【００５３】
周期設定部１６は、式（４）に基づきサンプリング周期Ｔを算出する。
【００５４】
【数４】
0006550945.tif 000005
【００５５】
ここで、調整値Ｍは、初期のサンプリング周期であり、予め設定されている。例えば、調整値Ｍは、０時間でもよいし１時間でもよい。本実施形態では、調整値Ｍは０．８時間に設定される。標準サンプリング周期は、ここでは１時間に設定されている。類似度（ｓｉｍ（Ｅ，Ｎ））が０．２と算出された場合、周期設定部１６は、次のサンプリング周期Ｔを１．６時間（＝０．８＋（１−０．２））×１）と算出する。
【００５６】
式（４）に基づけば、次のサンプリング周期Ｔは、類似度が大きくなるほど短くなり、類似度が小さくなるほど長くなる。図１０を参照して、本実施形態にかかるサンプリング周期の適正化について説明する。横軸には時間軸が示され、サンプリング周期に基づくサンプリングの時刻（サンプリングタイミング）Ｔ１、Ｔ２、Ｔ３、Ｔ４・・・が明示されている。図１０の例ではまず、標準サンプリング周期に基づく時刻Ｔ１に、ユーザが要求する性能条件１に基づき１回目のＶＭ取得のためのサンプリングが実行される。次に、標準サンプリング周期に基づく時刻Ｔ２〜時刻Ｔ４に性能条件１に基づき２回目〜４回目のためのＶＭ取得のサンプリングが実行される。
【００５７】
性能条件１に基づき５回目のＶＭ取得のためのサンプリングが実行される前にユーザが取得したい性能条件が変わり、性能条件２を求める新たなＶＭ取得要求が送出された場合について考える。この場合、標準サンプリング周期に基づく５回目のＶＭ取得のためのサンプリング予定時刻Ｔｂに対して、サンプリング周期の適正化が図られる。
【００５８】
つまり、予想されていた次回のサンプリング周期Ｔｂを迎える前に性能条件２の新たなＶＭ取得要求を受信したことに応じて、ＶＭ確保部１１は、次回のサンプリング周期を待たずに時刻Ｔｃにサンプリングを行う。その結果、ＶＭ確保部１１は、性能条件２のＶＭ取得要求に見合うもしくは性能条件２に近い性能のＶＭをＶＭプール２２に保持し、サンプル取得したＶＭからユーザが求める性能のＶＭを割り当てる。
【００５９】
周期設定部１６は、性能条件２のＶＭ取得要求に併せて、新たな取得要求の性能条件２に基づく次回のサンプリング周期を計算する。もしＶＭの取得要求時に「新たな取得要求の性能条件２」が提示されていなければ、周期設定部１６は、「性能条件１」と上記サンプリング結果に基づき、新たな次回以降のサンプリング周期を計算し、設定する。
【００６０】
ＶＭ生成削除部１３は、サンプリング周期を求める際に算出された類似値が予め定められた閾値Ｈ（例えば、０．７）以上であれば、取得したＶＭのうち性能の高いＶＭを取得する。このとき、ユーザが要求するＶＭ数の取得に達していなければ、式（４）に基づき算出された、前回よりも短いサンプリング周期Ｔ５に従い次回のサンプリングが実行される。これにより、次回のＶＭ取得時に高性能のＶＭを取得する可能性を高めることができる。
【００６１】
また、類似値が閾値Ｈ（例えば、０．７）と閾値Ｌ（例えば、０．４）との間であれば、サンプリング周期Ｔは、式（４）に基づきそのままの周期Ｔｂとなる。また、類似値が閾値Ｌ（例えば、０．４）以下の場合、ユーザが要求するＶＭ数の取得に達していなければ、式（４）に基づき算出された、前回よりも長いサンプリング周期Ｔ５'に従い次回のサンプリングが実行される。これにより、サンプリング周期を適正化することができる。
【００６２】
以上に説明したように、本実施形態によれば、ＶＭが構築可能かどうかの判定結果とその類似度に基づき次のサンプリング周期の適正化を図ることができる。例えば標本調査（性能測定）に使えるＶＭが少ない場合（例えば一度に使える物理メモリ量に制約がある場合等）、標準サンプリング周期を一時的に短くし（例：５分）１回の標本数を増やす。ある一定期間（例：２時間毎に１０回）の標本調査が終わると、そのサンプリング周期に基づき次のサンプリング周期（例：２時間後）もしくは、確保したＶＭの利用予定時間における確保可能なＶＭの性能およびその数を、ポアソン分布などを用いて予想する。その結果、予想される確保可能なＶＭが要求する性能条件を満たさない場合、サンプリング周期を長くする。これにより、例えば、サンプリングが２時間毎に１０回行われていたサンプリング周期から、４時間毎に１０回行われるサンプリング周期に適正化される。
【００６３】
予想される確保可能なＶＭが要求する性能を満たす場合、サンプリング周期を短くし、要求を満たす性能のＶＭの取得確率を上げる。また、実際に期待するＶＭ数に満たない場合で更に高性能なＶＭの取得が期待できる場合、サンプリング周期を更に短くし期待する性能のＶＭの取得確率をさらに上げる。
【００６４】
なお、標本調査データ収集中、飛び抜けたベンチマーク値（図４の標本調査回数毎に記載された値）が計測された場合、性能区分数を修正するようにしてもよい。例えば、ベンチマーク値が１−５の間であった場合、新しい高性能物理マシンが配備されるなどし、ベンチマーク値として１０が計測された場合、性能区分数を５区分から１０区分に拡張してもよい。ただし、性能区分数を５区分のままにしてもよい。この修正ポリシーは、ＶＭプール２２ポリシーＤＢ３０に定義され、定義された修正ポリシーに基づき性能区分数が調整される。また、本実施形態では、一ユーザのＶＭ取得要求に対するＶＭ確保及び性能評価処理について説明するが、複数ユーザ(テナント)のＶＭ取得要求に対するＶＭ確保及び性能評価処理についても対応可能である。
【００６５】
［ＶＭ確保及び性能評価処理］
次に、本実施形態に係るＶＭ確保及び性能評価処理の一例について図１１〜１５を参照して説明する。まず、図１１に示すように、ユーザ仮想システム４０からＶＭ取得要求が送出される（ステップＳ１０）。ＶＭ取得要求には、性能区分数と各区分の取得要求ＶＭ数との情報が含まれる。性能区分数と各区分の取得要求ＶＭ数とは、ＶＭ取得要求の性能条件の一例である。
【００６６】
ＶＭ取得要求に応じたＶＭ生成要求がＶＭ生成削除部１３に送出される（ステップＳ１０）。ＶＭ生成要求には、必要なＶＭ数、すなわち各区分のＶＭ数の総和の情報（性能条件１の一例）が含まれる。ＶＭ生成削除部１３は、仮想マシン提供システム１（クラウドサービス）に対して指定されたＶＭ数の生成を依頼し（ステップＳ１１）、ＶＭの生成を待つ（ステップＳ１２）。
【００６７】
ＶＭ生成削除部１３は、デプロイ部１９に性能測定機能の導入依頼を行う（ステップＳ１３）。アプリ導入削除部２０は、性能測定機能をＶＭに導入する（ステップＳ１４）。仮想マシン提供システム１が、ＶＭを生成すると（ステップＳ１５）、アプリ導入削除部２０は、各性能区分のＶＭに性能測定を開始させ、測定結果の測定値（ベンチマーク値）を測定値管理部１７に通知する（ステップＳ１４〜Ｓ１６）。測定値管理部１７は、測定値を標本調査データとして標本調査データテーブル３１に登録し（ステップＳ１７）、新しい標本調査データの登録が完了したことを通知する（ステップＳ１８）。
【００６８】
性能測定部１４は、次回取得予想個数確率の計算、類似度の計算を行い、周期設定部１６は、サンプリング周期を算出し、新たなサンプリング周期を設定する（ステップＳ１９）。また、判定部１５は、各性能区分のＶＭ数にＶＭプール２２のＶＭが達していないと判定した場合、性能区分に該当するＶＭをＶＭプール２２に保存させる（ステップＳ２０）。判定部１５は、ＶＭプール２２へのＶＭの保存依頼をＶＭプール２２に送出する（ステップＳ２１）。ＶＭの保存依頼には、保存するＶＭを識別するＶＭ識別子リストが含まれる。ＶＭプール２２は、生成されたＶＭのうちから指定されたＶＭ識別子に該当するＶＭを取得する（ステップＳ２２）。
【００６９】
また、判定部１５は、不要なＶＭの削除要求を送出し（ステップＳ２３）、ＶＭ生成削除部１３に依頼する（ステップＳ２４）。ＶＭの削除要求には、削除するＶＭを識別する識別子のリストが含まれる。ＶＭ生成削除部１３は、指定されたＶＭ識別子に該当するＶＭを削除する（ステップＳ２５）。判定部１５は、ユーザが取得要求したＶＭ数（性能条件１）が満たされたと判定した場合、ユーザにその旨を通知する（ステップＳ２６）。これに応じて、要求されたＶＭの取得を完了したことを知らせる通知がユーザ仮想システム４０に送信される（ステップＳ２７）。ユーザ仮想システム４０は、この通知を受け、要求ＶＭの取得（ステップＳ２８）及びＶＭ取得解放部に要求ＶＭの取得を依頼する（ステップＳ２９）。
【００７０】
次に、図１２に示すように周期設定部１６は、設定されたサンプリング周期に応じた時間まで待ち、その時間になったら図１１のステップＳ１１へジャンプし（ステップＳ３０）、ＶＭ生成要求処理及びそれ以降の処理を実行させる。
【００７１】
ＶＭ取得解放部２１は、ＶＭプール２２からＶＭを取得し（ステップＳ３１）、アプリケーション導入依頼を送出する（ステップＳ３２）。アプリケーション導入依頼には、取得したＶＭ識別子と導入アプリケーションのＩＤが含まれる。アプリ導入削除部２０は、指定されたＶＭ識別子をもつＶＭに指定されたアプリケーションを導入する（ステップＳ３３）。アプリ導入削除部２０は、指定されたＶＭへのアプリケーションの導入が完了し、ＶＭの利用が可能になったことを通知する（ステップＳ３４）。本通知にはＶＭ識別子の情報が含まれる。
【００７２】
ユーザ仮想システム４０は、ＶＭの利用可能通知を受けてＶＭの利用を開始し、取得したＶＭの利用を終了すると、ＶＭの開放を行う（ステップＳ３５）。これにより、ＶＭ利用停止通知がＶＭ取得解放部２１に送出される（ステップＳ３６）。ＶＭ利用停止通知には、開放するＶＭをのＶＭ識別子の情報が含まれる。ＶＭ取得解放部２１は、ＶＭ識別子により識別されるＶＭからアプリケーションを削除する（ステップＳ３７）。これにより、アプリケーション削除依頼がアプリ導入削除部２０に送出される（ステップＳ３８）。アプリケーション削除依頼には、取得したＶＭの識別子と導入アプリケーションのＩＤが含まれる。アプリ導入削除部２０は、指定されたＶＭ識別子をもつＶＭから指定されたアプリケーションを削除する（ステップＳ３９）。アプリ導入削除部２０は、アプリケーションの削除完了通知を送出する（ステップＳ４０）。アプリケーションの削除完了通知には、削除されたＶＭ識別子が含まれる。
【００７３】
ＶＭ取得解放部２１は、該当ＶＭのＶＭプール２２への返還を行う（ステップＳ４１）。ＶＭ識別子により識別されるＶＭがＶＭプール２２に返還される（ステップＳ４２）。
【００７４】
以上、サンプリング周期に応じた時刻に行われるＶＭ確保及び性能評価処理について説明した。次に、図１３〜図１６を参照しながらサンプリング周期が来る前にＶＭ取得要求がなされた場合のＶＭ確保及び性能評価処理と、サンプリング周期判定処理とについて説明する。
【００７５】
図１３のステップＳ１０〜Ｓ２２は、図１１の同ステップと同様であるためここでは説明を省略し、ステップＳ４５から説明を始める。判定部１５は、ＶＭプール２２からＶＭ取得要求に見合うＶＭ識別子を取得し、もし要求された性能区分のＶＭがないと判定した場合にはサンプルとして取得したＶＭから要求された性能区分に近いＶＭを取得し、それ以外のＶＭを削除する（ステップＳ４５）。次に、判定部１５は、不要なＶＭの削除要求を依頼する（ステップＳ４６）。ＶＭの削除要求には、削除するＶＭ識別子のリストが含まれる。ＶＭ生成削除部１３は、指定されたＶＭ識別子に該当するＶＭを削除する（ステップＳ４７）。
【００７６】
次に、図１４に移り、判定部１５は、取得したＶＭ識別子をユーザ仮想システム４０へ通知する（ステップＳ４８）。これに応じて、要求されたＶＭの取得を完了したことを知らせる通知がユーザ仮想システム４０に送信される（ステップＳ４９）。周期設定部１６は、設定されたサンプリング周期時間待つ。すなわち、周期設定部１６は、ＶＭ取得要求が来た時間から類似度に応じて算出した、最適化されたサンプリング周期時間（例えば、図１０のＴ５、Ｔ５'）待ち状態となる。サンプリング周期時間に応じたサンプリングタイミングが来た場合、図１３のステップＳ１１へジャンプしＶＭ生成要求処理が開始される（ステップＳ５０）。
【００７７】
（サンプリング周期判定処理）
次に、本実施形態に係る標本調査、ポアソン分布による次回取得予想個数の確率の計算、類似度の計算、サンプリング周期判定処理の一例について図１５及び図１６を参照して説明する。
【００７８】
判定部１５は、標本調査データテーブル３１に蓄積された標本調査データに基づくサンプリング周期に達したかを判定する（ステップＳ１００）。判定部１５は、サンプリング周期に達したと判定した場合、ステップＳ１０６に進む。
【００７９】
判定部１５は、サンプリング周期に達していないと判定した場合、ＶＭ取得要求が発生したかを判定する（ステップＳ１０２）。判定部１５は、ＶＭ取得要求が発生していないと判定した場合、ステップＳ１００に戻る。判定部１５は、ＶＭ取得要求が発生したと判定した場合、取得要求フラグを立てる（ステップＳ１０４）。取得要求フラグは、ＶＭ取得要求の発生の有無を示すフラグである。
【００８０】
性能測定部１４は、ＶＭ取得要求と併せて、新たな性能条件２のＶＭ取得要求がなされた場合、これまでの取得要求の性能区分（性能条件１の一例）と置き換える。性能測定部１４は、新たな取得要求が無い場合、これまでの取得要求の性能条件１を設定する（ステップＳ１０４）。
【００８１】
ステップＳ１０６において、性能測定部１４は、標本調査データの収集を行う。性能測定部１４は、必要な標本数の標本調査データを収集したかを判定する（ステップＳ１０８）。性能測定部１４は、必要な標本数の標本調査データを収集するまで標本調査データを収集を繰り返す。性能測定部１４が必要な標本数の標本調査データを収集した場合、判定部１５は、標本調査データに従来の性能区分を超える値があるかを判定する（ステップＳ１１０）。
【００８２】
判定部１５が標本調査データに従来の性能区分を超える値があると判定した場合、性能測定部１４は、性能区分数の更新を行う（ステップＳ１１２）。判定部１５が標本調査データに従来の性能区分を超える値がないと判定した場合、性能測定部１４は、標本調査データを性能区分に分類する（ステップＳ１１４）。次に、性能測定部１４は、分類した標本調査データに基づき各性能区分の平均出現数を求める（ステップＳ１１６）。次に、性能測定部１４は、求めた平均出現数に基づき、ポアソン分布式を用いて次回取得予想個数の確率を求める（ステップＳ１１８：図６参照）。
【００８３】
次に、性能測定部１４は、求めた次回取得予想個数の確率を降順にソートし、対応する取得予想個数、および対応する性能区分を求める（ステップＳ１２０：図７参照）。次に、性能測定部１４は、求めた次回取得予想個数のうちから、標本調査の個数になるように上位所定個の次回取得予想個数を選択する（ステップＳ１２２）。
【００８４】
次に、性能測定部１４は、得られた標本調査データから各性能区分の標準偏差値を求めるため、各性能区分の区分性能の平均値を求める（ステップＳ１２４：図８参照）。次に、性能測定部１４は、求めた各性能区分の区分性能の平均値に基づき偏差、分散、標準偏差を求める（ステップＳ１２６：図８参照）。次に、性能測定部１４は、求めた標準偏差に基づき各性能区分の標準偏差を求める（ステップＳ１２８：図８参照）。次に、性能測定部１４は、求めた予想性能区分毎の数と、取得要求の性能区分毎の数を多次元ベクトル化し、式（３）に基づきその類似度を計算する（ステップＳ１３０：図９参照）。次に、周期設定部１６は、サンプリング周期の判定処理を実行し（ステップＳ１３１）、実行後、本処理を終了する。
【００８５】
サンプリング周期判定処理の一例を、図１６のフローチャートを参照しながら説明する。サンプリング周期判定処理が開始されると、周期設定部１６は、算出された類似度が閾値Ｈ以上かを判定する（ステップＳ１３２）。周期設定部１６は、類似度が閾値Ｈよりも小さいと判定した場合、類似度が閾値Ｈと閾値Ｌとの間かを判定する（ステップＳ１３４）。周期設定部１６は、類似度が閾値Ｈと閾値Ｌとの間であると判定した場合、ステップＳ１４８に進む。他方、周期設定部１６は、類似度が閾値Ｈと閾値Ｌとの間でないと判定した場合、類似度が閾値Ｌ以下であるかを判定する（ステップＳ１３６）。周期設定部１６は、類似度が閾値Ｌ以下であると判定した場合、サンプリング周期を算出する式（４）に基づき、サンプリング周期を標準サンプリング周期よりも長く設定し（ステップＳ１３８）、ステップＳ１４８に進む。周期設定部１６は、類似度が閾値Ｌ以下でないと判定した場合、ステップＳ１４８に進む。
【００８６】
ステップＳ１３２において、周期設定部１６は、算出された類似度が閾値Ｈ以上であると判定した場合、要求するＶＭを取得する（ステップＳ１４０）。次に、周期設定部１６は、ＶＭの取得数が要求するＶＭ数に達したかを判定する（ステップＳ１４２）。周期設定部１６は、ＶＭの取得数が要求するＶＭ数に達したと判定した場合、サンプリング周期を標準のサンプリング周期に戻し（ステップＳ１４６）、ステップＳ１４８に進む。他方、周期設定部１６は、ＶＭの取得数が要求するＶＭ数に達していないと判定した場合、サンプリング周期を算出する式（４）に基づき、サンプリング周期を標準サンプリング周期よりも短く設定し（ステップＳ１４４）、ステップＳ１４８に進む。
【００８７】
ステップＳ１４８にて、判定部１５は、ＶＭ取得要求フラグが立っているかを判定する（ステップＳ１４８）。判定部１５は、ＶＭ取得要求フラグが立っていないと判定した場合、本処理を終了する。他方、判定部１５は、ＶＭ取得要求フラグが立っていると判定した場合、サンプルとして取得したＶＭから取得取得要求した性能区分のＶＭ数を割り当てる（ステップＳ１５０）。
【００８８】
判定部１５は、割り当てるＶＭ数が不足する場合、ＶＭプール２２から補填する。これによってもＶＭ数が不足する場合、判定部１５は、サンプル及びＶＭプール２２の余剰分のＶＭのうち、より近い性能のＶＭを割り当てる（ステップＳ１５２）。次に、判定部１５は、ＶＭ取得要求フラグを下し（ステップＳ１５４）、本処理を終了する。
【００８９】
本実施形態に係る仮想マシン提供システム１によれば、取得要求に見合った仮想マシンが取得できなかった場合、過去の仮想マシンの取得実績に応じてサンプリング周期を適正化する。これにより、取得要求に見合った仮想マシンの構築が可能かをチェックするタイミングを変化させることで、ユーザが要求する性能の仮想マシンを効率的に取得することができる。
【００９０】
（ハードウェア構成例）
最後に、本実施形態に係る仮想マシン管理装置３のハードウェア構成について、図１７を参照して説明する。仮想マシン管理装置３は、入力装置１０１、表示装置１０２、外部Ｉ／Ｆ１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、通信Ｉ／Ｆ１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００９１】
入力装置１０１は、キーボードやマウスなどを含み、仮想マシン管理装置３に各操作信号を入力するために用いられる。表示装置１０２は、ディスプレイなどを含み、各種の処理結果を表示する。通信Ｉ／Ｆ１０７は、仮想マシン管理装置３をネットワークに接続するインタフェースである。これにより、仮想マシン管理装置３は、通信Ｉ／Ｆ１０７を介して、他の機器（仮想マシン取得装置２等）とデータ通信を行うことができる。
【００９２】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、仮想マシン管理装置３の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。例えば、ＨＤＤ１０８には、各種のデータベースやプログラム等が格納されてもよい。
【００９３】
外部Ｉ／Ｆ１０３は、外部装置とのインタフェースである。外部装置には、記録媒体１０３ａなどがある。これにより、仮想マシン管理装置３は、外部Ｉ／Ｆ１０３を介して記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびに、ＳＤメモリカード（SD Memory card）やＵＳＢメモリ（Universal Serial Bus memory）等がある。
【００９４】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、ネットワーク設定等のプログラム及びデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記ＨＤＤ１０８及びＲＯＭ１０５等の記憶装置からプログラムやデータをＲＡＭ１０４上に読み出し、処理を実行することで装置全体の制御や搭載機能を実現する演算装置である。
【００９５】
かかる構成により、本実施形態に係る仮想マシン管理装置３では、ＣＰＵ１０６が、ＲＯＭ１０５やＨＤＤ１０８内に格納されたデータ及びプログラムを用いてＶＭ確保及び性能評価処理、サンプリング周期判定処理を実行する。なお、ＶＭプール２２ポリシーＤＢ３０、標本調査データテーブル３１及びサンプリング周期管理テーブル３２に記憶された情報は、ＲＡＭ１０４、ＨＤＤ１０８、又はネットワークを介して仮想マシン管理装置３に接続されるクラウド上のコンピュータに格納され得る。
【００９６】
以上、判定制御プログラム、判定制御方法及び仮想マシン管理装置を上記実施形態により説明したが、本発明にかかる判定制御プログラム、判定制御方法及び仮想マシン管理装置は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【００９７】
例えば、上記実施形態に係る仮想マシン提供システム１の構成は一例であり、本発明の範囲を限定するものではなく、用途や目的に応じて様々なシステム構成例があることは言うまでもない。例えば、仮想マシン取得装置２は、１台又は２台以上であり得る。複数台の仮想マシン取得装置２が設置される場合、仮想マシン管理装置３は、仮想マシン取得装置２のそれぞれからのＶＭ取得要求に対して、ＶＭ確保及び性能評価処理、サンプリング周期判定処理を実行し、サンプリング周期の適正化を図る。
【００９８】
以上の説明に関し、更に以下の項を開示する。
（付記１）
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータに実行させる判定制御プログラム。
（付記２）
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記判定周期を設定する、
付記１に記載の判定制御プログラム。
（付記３）
性能条件を含む仮想マシンの取得要求に基づき、複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定し、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定し、
設定した前記判定周期に応じた期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
処理をコンピュータが実行する判定制御方法。
（付記４）
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出し、前記類似度に基づいて前記判定周期を設定する、
付記３に記載の判定制御方法。
（付記５）
性能条件を含む仮想マシンの取得要求を受信する受信部と、
受信した前記取得要求に応じた複数の物理マシンの稼動状況を参照して、前記複数の物理マシンのいずれかにおいて、前記性能条件を満たす仮想マシンの構築が可能かを判定する判定部と、
前記性能条件を満たす仮想マシンの構築が不可能と判定した場合、前記性能条件を満たす仮想マシンの構築が可能かどうかの過去の判定履歴に基づいて、前記性能条件を満たす仮想マシンを構築可能と判定した時間間隔に応じて、前記性能条件を満たす仮想マシンの構築が可能かどうかを判定する判定周期を設定する周期設定部と、を有し、
前記判定部は、
設定した前記判定周期に応じて期間経過後、前記性能条件を満たす仮想マシンの構築が可能かどうかの判定を行う、
仮想マシン管理装置。
（付記６）
前記過去の判定履歴に基づいて次回予想される仮想マシン構成により、前記性能条件を満たす仮想マシン構成との類似度を算出する性能測定部を有し、
前記周期設定部は、前記類似度に基づいて前記判定周期を設定する、
付記５に記載の仮想マシン管理装置。
【符号の説明】
【００９９】
１：仮想マシン提供システム
２：仮想マシン取得装置
３：仮想マシン管理装置
５ａ、５ｂ、５ｃ、５：物理マシン
１０：受信部
１１：ＶＭ確保部
１２：通知部
１３：ＶＭ生成削除部
１４：性能測定部
１５：判定部
１６：周期設定部
１７：測定値管理部
１８：記憶部
１９：デプロイ部
２０：アプリ導入削除部
２１：ＶＭ取得解放部
２２：ＶＭプール
２３：ＶＭ（性能区分１）
２４：ＶＭ（性能区分２）
２５：ＶＭ（性能区分３）
２６：ＶＭ（性能区分４）
２７：ＶＭ（性能区分５）
３０：ＶＭプール２２ポリシーＤＢ
３１：標本調査データテーブル
３２：サンプリング周期管理テーブル
４０：ユーザ仮想システム
【図１】
0006550945.tif 000006
【図２】
0006550945.tif 000007
【図３】
0006550945.tif 000008
【図４】
0006550945.tif 000009
【図５】
0006550945.tif 000010
【図６】
0006550945.tif 000011
【図７】
0006550945.tif 000012
【図８】
0006550945.tif 000013
【図９】
0006550945.tif 000014
【図１０】
0006550945.tif 000015
【図１１】
0006550945.tif 000016
【図１２】
0006550945.tif 000017
【図１３】
0006550945.tif 000018
【図１４】
0006550945.tif 000019
【図１５】
0006550945.tif 000020
【図１６】
0006550945.tif 000021
【図１７】
0006550945.tif 000022