(57)【要約】【課題】仮想マシンによるハードウェア資源の使用時間に応じてハードウェア資源の割り当てを行うクラウドコンピューティング環境を提供する。【解決手段】仮想マシンに割り当てるハードウェア資源に関する情報を格納する情報格納部と、前記仮想マシンが動作する計算機に、前記情報格納部に格納された情報に基づいて前記仮想マシンにハードウェア資源の割り当てをさせる割当実行部と、前記仮想マシンによるハードウェア資源の使用時間を測定し、前記使用時間に応じて前記情報格納部に格納されている情報を変更する変更部とを有する制御装置を提供する。【選択図】図１
2014215765.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンに割り当てるハードウェア資源に関する情報を格納する情報格納部と、
前記仮想マシンが動作する計算機に、前記情報格納部に格納された情報に基づいて前記仮想マシンにハードウェア資源の割り当てをさせる割当実行部と、
前記仮想マシンによるハードウェア資源の使用時間を測定し、前記使用時間に応じて前記情報格納部に格納されている情報を変更する変更部と
を有する制御装置。
【請求項２】
前記情報格納部に格納された情報は、前記仮想マシンにハードウェア資源を割り当てる時間及び量を示し、
前記変更部は、前記仮想マシンによるハードウェア資源の使用時間が前記前記情報格納部に格納された情報の時間より長ければ前記仮想マシンにハードウェア資源を割り当てる量を大きくする請求項１に記載の制御装置。
【請求項３】
前記情報格納部に格納された情報は、前記仮想マシンにハードウェア資源を割り当てる時間及び量を示し、
前記変更部は、前記仮想マシンによるハードウェア資源の使用時間が前記前記情報格納部に格納された情報の時間より短ければ前記仮想マシンにハードウェア資源を割り当てる量を小さくする請求項１に記載の制御装置。
【請求項４】
前記情報格納部に格納された情報は、前記仮想マシンに割り当てることができるハードウェア資源の量の上限値を示す請求項１または２に記載の制御装置。
【請求項５】
前記仮想マシンは、バッチ処理を行うための仮想マシンである請求項１から４のいずれか一に記載の制御装置。
【請求項６】
仮想マシンに割り当てるハードウェア資源に関する情報を格納する記憶装置を有するコンピュータに、
前記仮想マシンが動作する計算機に、前記記憶装置に格納された情報に基づいて前記仮想マシンにハードウェア資源の割り当てをさせ、
前記仮想マシンによるハードウェア資源の使用時間を測定し、前記使用時間に応じて前記情報格納部に格納されている情報を変更させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンに対するハードウェア資源の割り当てを制御する制御装置、制御方法、及び制御プログラムなどに関する。特に、クラウドコンピューティング環境を提供する物理サーバの中で動作する仮想マシンに対するハードウェア資源の割り当てを制御するのに適する制御装置、制御方法、及び制御プログラムなどに関する。
【背景技術】
【０００２】
物理サーバの中で仮想マシンを動作させる技術が知られている。このような技術を用いてクラウドコンピューティング環境が提供されている（例えば、特許文献１参照。）。また、クラウドコンピューティング環境を構築し、コンピューティングリソースを他社に提供する業者も出現している。
【０００３】
事業者が運営するサービスでありコンピューティングリソースを利用者に提供するサービスを利用する場合、利用者に対して物理サーバ内で動作する仮想マシンの使用権限が与えられ、一般に一つの物理サーバ内に複数の仮想マシンが動作する。また、課金は仮想マシンが使用したハードウェア資源の量に応じて行われる（例えば、特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第７，８７０，０４４号明細書
【特許文献２】特開２００７−６６２５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このため、利用者は、課金ができるだけ公平にされることを望む。また、事業者も、特定の利用者がハードウェア資源を大量に使用することにより、少数の利用者を相手に事業を行うよりも、多数の利用者がサービスを利用し、収入が安定することを望む。そこで、公平な課金及び利用者の安定化を目的とするコンピューティング環境を提供することを本発明の目的の一つとして、以下に開示を行う。
【課題を解決するための手段】
【０００６】
本発明の一実施形態として、仮想マシンに割り当てるハードウェア資源に関する情報を格納する情報格納部と、前記仮想マシンが動作する計算機に、前記情報格納部に格納された情報に基づいて前記仮想マシンにハードウェア資源の割り当てをさせる割当実行部と、前記仮想マシンによるハードウェア資源の使用時間を測定し、前記使用時間に応じて前記情報格納部に格納されている情報を変更する変更部とを有する制御装置を提供する。
【０００７】
本発明の一実施形態として、仮想マシンに割り当てるハードウェア資源に関する情報を格納する記憶装置を有するコンピュータに、前記仮想マシンが動作する計算機に、前記記憶装置に格納された情報に基づいて前記仮想マシンにハードウェア資源の割り当てをさせ、前記仮想マシンによるハードウェア資源の使用時間を測定し、前記使用時間に応じて前記情報格納部に格納されている情報を変更させるためのプログラムを提供する。
【発明の効果】
【０００８】
本発明によれば、適正な課金が実現されるコンピューティング環境が提供される。また、ハードウェア資源を効率的に使用するコンピューティング環境が提供される。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態に係るシステムの機能ブロック図である。
【図２】本発明の一実施形態におけるハードウェア割り当てテーブルの一例図である。
【図３】本発明の一実施形態におけるハードウェアを割り当てる処理のフローチャートである。
【図４】本発明の一実施形態におけるハードウェア使用時間を管理するテーブルの一例図である。
【図５】本発明の一実施形態におけるハードウェア使用時間を測定し管理する処理のフローチャートである。
【図６】本発明の一実施形態におけるハードウェアを割り当てる処理のフローチャートである。
【図７】本発明の一実施形態に係るシステムの機能ブロック図である。
【図８】本発明の一実施形態における時間経過に対するハードウェア資源の使用量の変化の一例を示すグラフである。
【図９】（ａ）本発明の一実施形態におけるハードウェア資源の使用量の変化の一例を示すグラフである。（ｂ）本発明の一実施形態における時間経過に対するハードウェア資源の使用量の変化の一例を示すグラフである。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について説明する。なお、本発明は以下の説明に限定されるものではなく、以下の説明に種々の変形を加えて本発明を実施することが可能である。
【００１１】
図１は、本発明の一実施形態に係るシステムの機能ブロック図を示す。システム１００は、計算機１０１と制御装置１０２とを有する。計算機１０１は、コンピューティング環境を利用者に提供するために主に用いることができる。特に、計算機１０１は、クラウドコンピューティング環境を利用者に提供するために用いることができる。制御装置１０２は、計算機１０１の内部で動作する仮想マシンへのハードウェア資源の割り当てを制御するために主に用いられる。計算機１０１と制御装置１０２とは、ネットワークなどにより形成される通信回線により相互に通信が可能である。
【００１２】
計算機１０１は、ハードウェア資源として、ＨＷ１（１１１−１）、ＨＷ２（１１１−２）、…、ＨＷｍ（１１１−ｍ）を有する。ハードウェア資源としては、ＣＰＵ、メモリ（一時記憶）、記憶領域（二次記憶）、ネットワークなどがある。図１においては、ｍ個あるいはｍ種類のハードウェア資源が存在するが、ハードウェアの個数あるいは種類は、計算機１０１の構成により定められ、事実上任意の数とすることができる。また、計算機１０１は、制御部１１２を有する。制御部１１２は、通常は、ハードウェアとソフトウェアとの組み合わせにより構成される。また、制御部１１２は、ハードウェアのみによっても構成することができる。制御部１１２は、ハードウェア資源ＨＷ１（１１１−１）、ＨＷ２（１１１−２）、…、ＨＷｍ（１１１−ｍ）を、次に説明する仮想マシンに割り当てる制御を行う。制御部１１２は、場合によっては、ハイパーバイザと呼ばれる場合もある。
【００１３】
計算機１０１の内部では、仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ（ＶＭ））として、ＶＭ１（１１３−１）、ＶＭ２（１１３−２）、…、ＶＭｎ（１１３−ｎ）が動作可能である。なお、図１では、ｎ個の仮想マシンが示されているが、その上限は計算機１０１の構成により定められ、事実上任意の数とすることができる。それぞれの仮想マシンは、仮想化された計算機である。それぞれの仮想マシンは、計算機１０１で動作するプロセスとして実現され、そのようなプロセスにおいては、仮想化されたオペレーティングシステムを動作させることができる。また、仮想化されたオペレーティングシステムの管理下にて、（仮想的な）プロセスを動作させることができる。また、それぞれの仮想マシンが必要とするハードウェア資源を、制御部１１２が、ＨＷ１（１１１−１）、ＨＷ２（１１１−２）、…、ＨＷｍ（１１１−ｍ）の中から割り当てることにより、仮想マシンが動作することができる。
【００１４】
制御装置１０２は、ＨＷ割当情報保持部１２１と、ＨＷ割当実行部１２２と、変更部１２３とを有する。制御装置１０２も、通常は、コンピュータというハードウェアとソフトウェアとの組み合わせにより構成される。また、制御装置１０２は、専用ＬＳＩなどのハードウェアのみによっても構成することができる。
【００１５】
ＨＷ割当情報保持部１２１は、ＨＷ割当情報を保持（あるいは格納）する。ＨＷ割当情報は、計算機１０１内の仮想マシンへのハードウェア資源の割り当てに関する情報である。例えば、仮想マシンそれぞれへのハードウェア資源を割り当てる量を指定する情報である。仮想マシンへのハードウェア資源の割り当て量は、時間にかかわらず一定とすることができる。また、時間の経過に従って仮想マシンへのハードウェア資源の割り当て量を変化させることもできる。特に、ＨＷ割当情報により、時間帯別に仮想マシンへのハードウェア資源の割り当て量が指定されてもよい。また、ＨＷ割当情報により、仮想マシンがハードウェア資源を使用することができる時間（時間の長さ）が指定されてもよい。
【００１６】
ＨＷ割当情報保持部１２１は、ＨＷ割当情報を記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）や不揮発性の記憶装置により構成することができる。ＨＷ割当情報は、次に示すように、テーブルの形式を表現する情報により表わすことができる。
【００１７】
図２は、ＨＷ割当情報の一例を示す。図２に示す例においては、時間帯別に、仮想マシンＶＭ１、ＶＭ２、…、ＶＭｎへのハードウェア資源の割り当て量を数字により示している。この場合、数字は、例えばＣＰＵの割当量と解釈することもできる。あるいは、数字は、時間帯別におけるハードウェア資源を使用することができる時間（時間の長さ）を表わしていてもよい。特に「０」は、その時間帯には、ハードウェア資源が割り当てられず、仮想マシンは動作しない、あるいは動作しているべきではない、ことを表わす。
【００１８】
また、ある時間帯において「０」でない数字が示され、次の時間帯において「０」が示されている場合には、仮想マシンは、次の時間帯までに処理を終わらせなければならないことを示していると解釈することもできる。
【００１９】
図２に示すテーブル以外に、メモリの割当量、記憶領域の割当量、ネットワーク（帯域）の割当量などのテーブルが他に存在していてもよい。したがって、ハードウェアＨＷ１（１１１−１）、ＨＷ２（１１１−２）、…、ＨＷｍ（１１１−ｍ）の種類ごとにＨＷ割当情報が記憶されていてもよい。
【００２０】
図２においては、例えば、８時台（８：００から８：５９まで）においては、ＶＭ１及びＶＭ２それぞれに割り当てるＣＰＵを１単位とし、ＶＭｎに割り当てるＣＰＵを２単位とすることが示される。したがって、８時台においては、ＶＭｎにはＶＭ１の２倍のハードウェア資源の量としてのＣＰＵが割り当てられる。ここにＣＰＵの単位とは、ＣＰＵの個数であったり、マルチコアＣＰＵの場合のコア数であったりすることができる。
【００２１】
なお、ＨＷ割当情報は、計算機１０１内の仮想マシンへのハードウェア資源の割り当て量の上限の指定を表わすと解釈することもできる。したがって、８時台においては、ＶＭｎに割り当てるＣＰＵは２単位を越えないことを示していると解釈することもできる。また、ＨＷ割当情報は、計算機１０１内の仮想マシンへのハードウェア資源の割り当て量の下限を指定すると解釈することもできる。さらに、ＨＷ割当情報は、数字の組などを用いることにより、仮想マシンへのハードウェア資源の割り当て量の下限及び上限を指定することもできる。
【００２２】
ＨＷ割当情報が、仮想マシンへのハードウェア資源の割り当て量の上限やハードウェア資源を使用する時間の上限などの指定を表わしている場合には、利用者は、以下に説明する課金についての予想を行うことができる。また、仮想マシンがハードウェア資源を使用し尽してしまうなどして、他の仮想マシンへ悪影響を及ぼすことを防止することができる。
【００２３】
ＨＷ割当実行部１２２は、計算機１０１に、ＨＷ割当情報格納部１２１に格納されたＨＷ割当情報に基づいて仮想マシンにハードウェア資源の割り当てをさせる。このために、ＨＷ割当実行部１２２は、例えばＨＷ割当情報保持部に保持されているＨＷ割当情報にしたがって、計算機１０１の制御部１１２に制御情報を送信し、制御部１１２に、計算機１０１内の仮想マシンそれぞれに指定された量のハードウェア資源の割り当ての処理を、させる。
【００２４】
ＨＷ割当情報が図２に示すテーブルにより示されるとき、ＨＷ割当実行部１２２は、現在の時刻が８時台であれば、ＶＭ１及びＶＭ２それぞれに割り当てられるハードウェア資源（例えばＣＰＵ）の量を１単位とし、ＶＭｎに割り当てられるハードウェア資源の量を２単位とし、９時になると、ＶＭ１に割り当てられるハードウェア資源の量を２単位とし、ＶＭ２及びＶＭｎそれぞれに割り当てられるハードウェア資源の量を１単位とする。
【００２５】
例えば８時台においては、制御部１１２は、ＨＷ割当実行部１１２から制御情報を受信すると、ＶＭ１（１１３−１）に、ＨＷ１（１１１−１）、ＨＷ２（１１１−２）、…、ＨＷｍ（１１１−ｍ）の中から、例えば１個のＣＰＵをＶＭ１及びＶＭ２それぞれが使用できるようにＣＰＵの割り当てを行い、ＶＭｎに２個のＣＰＵをＶＭｍが使用できるようにＣＰＵの割り当てを行う。
【００２６】
図３は、ＨＷ割当実行部１２２の処理を説明するフローチャートである。ステップＳ３０１の処理として、ＨＷ割当情報保持部１２１に保持されているＨＷ割当情報を読取る。読取られたＨＷ割当情報は、例えば、ＨＷ割当実行部１２２がアクセスできるメモリに一時的に記憶され、必要に応じて内容が解析され、処理が行われる。例えば、図２に示す表形式データの内容を解析し、別の構造のデータに変換する。
【００２７】
ステップＳ３０２の処理として、ハードウェアの割り当てを変更するべきかどうかを判断する。例えば、現在の時刻が、いずれの時間帯に該当するか、また、現在の時刻が新たな時間帯に該当する場合、前の時間帯に対して、仮想マシンへ割り当てられるハードウェア資源の割り当てが変化するかどうかを判断する。もし、ハードウェア資源の割り当てが変化すると判断されれば、ステップＳ３０３へ処理を移行し、そうでなければ、ステップＳ３０２の処理を再度実行する。なお、ステップＳ３０２の処理を再度実行する場合には、スリープ処理などが行われ、予め定められた時間の長さ（例えば１時間）において図３のフローチャートに係る処理を停止させてもよい。
【００２８】
ステップＳ３０３の処理として、ＨＷ割当情報にしたがって仮想マシンへのハードウェア資源の割り当てを、制御部１１２に変更させる。例えば、制御部１１２へハードウェア資源の割り当てを変更させる制御情報を送信する。
【００２９】
ステップＳ３０４の処理として、処理を終了させるかどうか（例えば、制御装置１０２にシャットダウン操作が行われたかどうか）を判断し、終了させるべきではないと判断されれば、ステップＳ３０１へ処理を戻す。
【００３０】
なお、ＨＷ割当情報保持部１２１に保持されているＨＷ割当情報に変更がなければ、ステップＳ３０４からステップＳ３０２へ処理を移行させてもよい。また、ステップＳ３０２において、仮想マシンに割り当てるハードウェア資源を変更する必要がないと判断された場合であっても、ＨＷ割当情報保持部１２１に保持されているＨＷ割当情報に変更があれば、ステップＳ３０２からステップＳ３０１へ処理を戻してもよい。
【００３１】
変更部１２３は、計算機１０１内の仮想マシンのハードウェア資源の使用時間を計測し、ＨＷ割当情報保持部１２１に保持されているＨＷ割当情報を変更する。例えば、ある仮想マシンのハードウェア資源の使用時間が定められている値よりも大きければ、その仮想マシンに割り当てるハードウェア資源の量を増加させ、ハードウェア資源の使用時間を短縮させる。また、ある仮想マシンのハードウェア資源の使用時間が定められている値よりも小さければ、その仮想マシンに割り当てるハードウェア資源の量を減少させ、ハードウェア資源の使用時間を長くさせる。これにより、仮想マシンに抑制的にハードウェア資源を割り当てることも可能となり、ハードウェア資源の使用効率も上げることができる。また、仮想マシンが使用するハードウェア資源の使用時間を平準化することができる。このような平準化により、複数の仮想マシンが動作させる場合にそれぞれの仮想マシンが使用するハードウェア資源の使用時間をより正確に予測することができ、複数の仮想マシンを動作させるスケジューリングを行いハードウェアの使用効率を上げることができる。
【００３２】
図４は、仮想マシンのハードウェア資源の使用時間を計測した結果を変更部１２３が管理するためのテーブルの一例図を示す。図４に示すテーブルは、計算機１０１内のそれぞれの仮想マシンが実際に使用したＣＰＵの使用時間を格納していると解釈することができる。すなわち、ＶＭ１は、これまでにＣＰＵというハードウェア資源を１０分間使用し、これまでにＶＭ２はＣＰＵというハードウェア資源を１２分間使用し、これまでにＶＭｎはＣＰＵというハードウェア資源を１４分間使用したことを示していると解釈することができる。すなわち、図４に示すテーブルには、各仮想マシンが使用したハードウェア資源の使用時間を加算した値が格納される。課金部１２３は、図４に示すテーブルのみではなく、他のハードウェアに対応するテーブルを管理してもよい。また、ハードウェア資源の使用時間として、使用がされたハードウェア資源の量の時間積分の値を用いてもよい。
【００３３】
また、後に説明するように、仮想マシンの利用者に対しては、図４に示すテーブルが格納しているその仮想マシンのハードウェア資源の使用時間に応じて課金をすることもできる。
【００３４】
図５は、変更部１２３の処理を説明するフローチャートである。ステップＳ５０１の処理として、測定する時間となるまで待つ。例えば、５分ごとにハードウェア資源の使用時間を測定する場合には、５分間スリープする。
【００３５】
ステップＳ５０２の処理として、変更部１２３は、各仮想マシンのハードウェア資源の使用時間の測定を行う。例えば、変更部１２３は、制御部１１２に、各仮想マシンがハードウェア資源を使用しているかどうかを問い合わせる。この場合、問い合わせがされたときに各仮想マシンがハードウェア資源を使用していれば、例えば上述の５分の間ハードウェア資源を使用したとみなす。あるいは、前回の問い合わせから今回の問い合わせまでに各仮想マシンが使用したハードウェア資源の使用時間の積算量（ハードウェア資源を実際に使用した時間を加算の値）を制御部１２３が測定した結果であってもよい。
【００３６】
ステップＳ５０３の処理として、各仮想マシンのハードウェア資源の使用時間を、既に加算されている使用時間に加算する。例えば、ステップＳ５０２により測定されたＶＭ１のＣＰＵの使用量が０．５分であれば、図４のＶＭ１の資源の使用量を１０分から１０．５分に更新する。
【００３７】
ステップＳ５０４の処理として、処理を終了するべきかどうかを判断し、終了する必要がなければ、ステップＳ５０１へ処理を戻す。
【００３８】
図６は、変更部１２３の処理の一例を示すフローチャートである。このフローチャートにおいては、ある仮想マシンのハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに差が生じていると判断される場合には、ＨＷ割当情報を変更し、その仮想マシンへ割り当てられるハードウェア資源の量を変更する処理が示されている。すなわち、ステップＳ６０１において、それぞれの仮想マシンについて、ハハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに差生じているかどうかの判断を行う。ハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに差生じていると判断がされると、ステップＳ７０２へ処理を移行させる。
【００３９】
ステップＳ６０２においては、ハードウェア資源の量の割り当てを変更できるかどうかの判断を行う。例えば、その仮想マシンへのハードウェア資源の量を増加させようとする場合、増加させた後の全仮想マシンへのハードウェア資源の量の割り当て量の総量が、実際のハードウェア資源の総量を越える場合には、ハードウェア資源の量の割り当ての変更はできないと判断される。また、仮想マシンの利用者により資源の上限が別途指定されている場合に、その指定されている上限を超える場合には、ハードウェア資源の量の割り当ての変更はできないと判断されるようになっていてもよい。ハードウェア資源の量の割り当ての変更ができると判断がされると、ステップＳ６０３へ処理を移行させ、ハードウェア資源の量の割り当ての変更ができないと判断がされると、ステップＳ６０１へ戻る。
【００４０】
ステップＳ６０３において、ハードウェア資源の量の割り当ての変更を行う。この場合、ある仮想マシンのハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに生じている差に応じて、ハードウェア資源の量の割り当て量の変更を変化させることができる。例えば、ある仮想マシンのハードウェア資源の使用時間がＨＷ割当情報により指定される使用時間よりも小さければ、ハードウェア資源の量の割り当て量を小さくする。また、ある仮想マシンのハードウェア資源の使用時間がＨＷ割当情報により指定される使用時間よりも大きければ、ハードウェア資源の量の割り当て量を大きくする。したがって、ある仮想マシンのハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに生じている差に比例してハードウェア資源の量の割り当て量の変更を変化させてもよい。また、逆に、ある仮想マシンのハードウェア資源の使用時間とＨＷ割当情報により指定される使用時間とに生じている差に反比例や類似の関係によりハードウェア資源の量の割り当て量の変更を変化させてもよい。
【００４１】
ステップＳ６０４において、図６の処理を終了させるかどうかを判断し、終了させないと判断がされれば、ステップＳ６０１へ戻る。
【００４２】
以上のようなシステムの構成によれば、仮想マシンの実際のハードウェア資源の使用時間が測定され、その結果に基づいてハードウェア資源の割り当てが変更される。仮想マシンが使用するハードウェア資源の使用時間が平準化され、ハードウェアの使用効率を上げることができる。また、仮想マシンに抑制的にハードウェア資源を割り当てることも可能となり、この点においてもハードウェア資源の使用効率も上げることができる。
【００４３】
また、ハードウェア資源の使用時間に応じた課金を行うことが可能である。これにより、計算機１０１の仮想マシンの利用者に公平に課金を行うことが可能となる。また、ハードウェア資源の使用時間の上限を設定した場合には、課金額を予測することができる。また、実際の資源の使用時間に応じて課金がされるために、計算機１０１の仮想マシンの利用者には、ハードウェア資源の使用時間を小さくしようとするインセンティブが生じ、計算機１０１をより多くの利用者に利用させることができる。
【００４４】
（実施形態２）
図７は、本発明の実施形態２に係るシステムの機能ブロック図を示す。システム７００は、計算機１０１と制御装置６０１とを有する。計算機１０１と制御装置７０１とは、ネットワークなどにより形成される通信回線により相互に通信が可能である。
【００４５】
計算機１０１は、上述の実施形態１に係る構成と同様とすることができる。また、制御装置７０１は、ＨＷ割当情報保持部１２１と、ＨＷ割当実行部１２２と、変更部１２３とを有する。また、変更部１２３は、課金部７０２を有する。したがって、本実施形態に係るシステム７００は、実施形態１に係るシステム１００において、制御装置１０２の変更部１２３が課金部７０２を有する構成とすることができる。
【００４６】
課金部７０２は、変更部１２３が測定した仮想マシンによるハードウェア資源の使用時間に応じて、課金情報を生成する。例えば、ハードウェア資源の使用時間に比例する金額を算出する。
【００４７】
図８は、変更部１２３により、ハードウェア資源の割り当て量が変更される例を示す。図８において、実線８０１が実際のハードウェア資源の総量を示す。また、点線８０２は、ＨＷ割当情報保持部１２１に保持されるＨＷ割当情報により、ある仮想マシンに割り当てられるハードウェア資源の量を示す。すなわち、９時にその仮想マシンへのハードウェア資源の割り当て量が増加し、その後１１時までは同じハードウェア資源の量がその仮想マシンへ割り当てられ、１１時にその仮想マシンへのハードウェア資源の割り当て量が減少することが示されているとする。
【００４８】
実線８０３は、実際にその仮想マシンを稼働させたときのハードウェア資源の使用量の変化を示す。例えば、変更部１２３は、１０時からハードウェア資源の使用時間がＨＷ割当情報により指定される時間よりも大きくなったことを検出したので、その仮想マシンへのハードウェア資源の割り当て量を増加させ、また、１２時からもハードウェア資源の使用時間がＨＷ割当情報により指定される時間よりも大きくなったことを検出したので、その仮想マシンへのハードウェア資源の割り当て量を増加させたことが示されている。これにより、その仮想マシンの利用者は、このような資源の割り当て量の変化を知ることにより、１０時から１１時までと１２時以降において、仮想マシンが行う処理の内容を見直し、より効率的な処理ができないかどうかを検討することができる。
【００４９】
また、９時までは、その仮想マシンが使用するハードウェア資源の使用時間が、ＨＷ割当情報により指定される使用時間を下回っているので、ハードウェア資源の割り当て量が減少された。そこで、その仮想マシンの利用者は、１０時から１１時までの処理、１２時からの処理を９時までに前倒しをして行うことができないかを検討し、ハードウェア資源の使用量を平準化することができる。
【００５０】
また、図９（ａ）においては、実線９０１が実際のハードウェア資源の総量を示し、破線９０２は、ＨＷ割当情報保持部１２１に保持されるＨＷ割当情報により、ある仮想マシンに割り当てられるべきハードウェア資源の量を示す。この場合、割り当てられるべきハードウェア資源の量は、時間にかかわらずｂで一定である。一方、実線９０３は、その仮想マシンの実際のハードウェア資源の使用量の時間変化を示し、１９時から２０時までは、ＨＷ割当情報により示されるハードウェア資源量と同じとなるが、１９時までと、２０時から２１時までは、ハードウェア資源の使用量がｂより小さいａとなる。したがって、ある仮想マシンに割り当てられるべきハードウェア資源の量は、実際に使用されたハードウェア資源の量に対して余裕がある。
【００５１】
もし、この仮想マシンが、２１時までに処理を終える必要はなく、２２時までに処理を終えればよい場合（例えば、この仮想マシンが、リアルタイム性の要求されないバッチ処理を主に行うものである場合）には、ハードウェア資源の使用時間が、ＨＷ割当情報により示される使用時間よりも短くなることが変更部１２３により検出され、ＨＷ割当情報保持部１２１に保持されるＨＷ割当情報が変更される。例えば、ａで示されるハードウェア資源の量をその仮想マシンに割り当てるようにする。このようにすることにより、図９（ｂ）に示されるように、実線９０５により示されるように、その仮想マシンがバッチ処理などを終了する時間は２２時となる。これにより、２２時までのこの仮想マシンに割り当てられるハードウェア資源の使用率を１００％又はそれに近い値とすることができ、ハードウェア資源の使用効率を上げることができる。
【００５２】
また、逆に、この仮想マシンが、２１時までに処理を終えるべきであるのに、図９（ｂ）に示すように、２２時までハードウェア資源を使用し、処理を行っていることが更新部１２３により検出された場合には、ＨＷ割当情報保持部１２１に保持されるＨＷ割当情報を更新し、ｂで示されるハードウェア資源の量をその仮想マシンに割り当てるようにする。これにより、２１時までに処理を終えるようにすることができる。
【符号の説明】
【００５３】
１００  システム、１０１  計算機、１０２  制御装置、１１３−１  ＶＭ１、１１３−２  ＶＭ２、１１３−ｎ  ＶＭｎ、１１１−１  ＨＷ１、１１１−２  ＨＷ２、１１１−ｍ  ＨＷｍ、１２１  ＨＷ割当情報保持部、１２２  ＨＷ割当実行部、１２３  更新部
【図１】
2014215765.tif 000003
【図２】
2014215765.tif 000004
【図３】
2014215765.tif 000005
【図４】
2014215765.tif 000006
【図５】
2014215765.tif 000007
【図６】
2014215765.tif 000008
【図７】
2014215765.tif 000009
【図８】
2014215765.tif 000010
【図９】
2014215765.tif 000011