(57)【要約】【課題】仮想マシンに計算機リソースを割り当てる物理計算機を効率的かつ短時間に選択できるようにする。【解決手段】ＶＭ配置部０２がＶＭ配置要求を入力する。ＶＭ配置要求は、ＶＭに複数種の計算機リソースを割当てることを要求するコマンドであり、計算機リソースごとに要求リソース量の値が示される。重みテーブル記憶部０７は、計算機リソースごとのリソース重み係数を記憶する。計測処理部０３は、複数の物理計算機の各々から、計算機リソースごとに、ＶＭに割当て可能な空きリソース量の値を取得する。リソース写像計算部１２は、ＶＭ配置要求の複数種の計算機リソースの要求リソース量の値を、それぞれ、対応するリソース重み係数を用いて、単一の次元に写像し、更に、物理計算機ごとに、複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数を用いて、同じ次元に写像する。【選択図】図１
2014021847.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンに複数種の計算機リソースを割当てることを要求するリソース割当要求であって、計算機リソースごとに要求リソース量の値が示されるリソース割当要求を入力するリソース割当要求入力部と、
計算機リソースごとの重み係数であるリソース重み係数を記憶するリソース重み係数記憶部と、
前記複数種の計算機リソースを備える複数の物理計算機の各々から、計算機リソースごとに、前記仮想マシンに割当て可能な空きリソース量の値を取得する物理計算機情報取得部と、
前記リソース割当要求に示される前記複数種の計算機リソースの要求リソース量の値を、それぞれ、対応するリソース重み係数を用いて、単一の次元に写像する要求リソース量写像部と、
物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数を用いて、前記要求リソース量写像部と同じ次元に写像する空きリソース量写像部とを有することを特徴とするリソース管理装置。
【請求項２】
前記リソース管理装置は、更に、
物理計算機ごとに、前記空きリソース量写像部による物理計算機の空きリソース量の写像結果を、写像結果の全体を照合の単位にして、前記要求リソース量写像部による要求リソース量の写像結果と照合して、前記仮想マシンに前記複数種の計算機リソースを割当てる物理計算機を前記複数の物理計算機の中から選択する物理計算機選択部とを有することを特徴とする請求項１に記載のリソース管理装置。
【請求項３】
前記物理計算機選択部は、
物理計算機ごとに、物理計算機の空きリソース量の写像結果を要素とするベクトルＶ（Ｘ）を、要求リソース量の写像結果を要素とするベクトルＶ（Ｙ）と照合して、前記仮想マシンに前記複数種の計算機リソースを割当てる物理計算機を選択することを特徴とする請求項２に記載のリソース管理装置。
【請求項４】
前記物理計算機選択部は、
Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上であり、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が最小の物理計算機を選択することを特徴とする請求項３に記載のリソース管理装置。
【請求項５】
前記物理計算機選択部は、
Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上であり、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が最小の物理計算機が２以上ある場合に、
Ｖ（Ｘ）−Ｖ（Ｙ）と単位ベクトルとの仰角が最小の物理計算機を選択することを特徴とする請求項４に記載のリソース管理装置。
【請求項６】
前記リソース管理装置は、更に、
物理計算機ごとの、計算機リソース別の重み係数であるホスト・リソース重み係数を記憶するホスト・リソース重み係数記憶部を有し、
前記空きリソース量写像部は、
物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数とホスト・リソース重み係数とを用いて、前記要求リソース量写像部と同じ次元に写像することを特徴とする請求項１〜５のいずれかに記載のリソース管理装置。
【請求項７】
前記リソース管理装置は、更に、
いずれかの物理計算機に配置されている仮想マシンについての、計算機リソース別の重み係数である仮想マシン・リソース重み係数を記憶する仮想マシン・リソース重み係数記憶部を有し、
前記空きリソース量写像部は、
いずれかの物理計算機に既に仮想マシンが配置されている場合は、当該物理計算機に既に配置されている仮想マシンの仮想マシン・リソース重み係数を、リソース重み係数とともに用いて、当該物理計算機の前記複数種の計算機リソースの空きリソース量の値を、それぞれ、前記要求リソース量写像部と同じ次元に写像することを特徴とする請求項１〜６のいずれかに記載のリソース管理装置。
【請求項８】
前記複数種の計算機リソースのうちのいずれかの計算機リソースは、サブカテゴリーに分類され、
前記リソース管理装置は、更に、
サブカテゴリーを有する計算機リソースについて、サブカテゴリーごとの重み係数であるサブカテゴリー重み係数を記憶するサブカテゴリー重み係数記憶部を有し、
前記空きリソース量写像部は、
物理計算機が備える計算機リソースに対応するサブカテゴリー重み係数を、リソース重みとともに用いて、当該計算機リソースの空きリソース量の値を前記要求リソース量写像部と同じ次元に写像することを特徴とする請求項１〜７のいずれかに記載のリソース管理装置。
【請求項９】
前記リソース管理装置は、更に、
前記複数の物理計算機における現在の計算機リソースの状態を前提にして、新たなリソース割当要求が入力されたと仮定して、前記リソース割当要求入力部、前記物理計算機情報取得部、前記要求リソース量写像部、前記空きリソース量写像部の動作のシミュレーションを行うシミュレーション実行部と、
前記シミュレーション実行部のシミュレーション結果に基づき、新たなリソース重み係数を計算機リソースごとに決定する重み係数更新部とを有し、
前記リソース重み係数記憶部は、
前記重み係数更新部により決定された、計算機リソースごとの新たなリソース重み係数を記憶することを特徴とする請求項１〜８のいずれかに記載のリソース管理装置。
【請求項１０】
前記シミュレーション実行部は、
各パターンで異なるリソース重み係数を用いて、前記リソース割当要求入力部、前記物理計算機情報取得部、前記要求リソース量写像部、前記空きリソース量写像部の動作のシミュレーションをｎ（ｎは２以上の整数）パターン行い、
前記重み係数更新部は、
前記シミュレーション実行部のシミュレーション結果に基づき、前記ｎパターンのシミュレーションの中から特定のシミュレーションを選択し、
選択したシミュレーションで用いられたリソース重み係数を、新たなリソース重み係数とすることを特徴とする請求項９に記載のリソース管理装置。
【請求項１１】
前記シミュレーション実行部は、
前記ｎパターンのシミュレーションに対応させて、前記複数の物理計算機における計算機リソースの状態が変動したｎ個の模擬状況を生成し、
生成したｎ個の模擬状況を前提にして更にシミュレーションを行い、
シミュレーションの度に、シミュレーションのパターン数分の模擬状況を生成し、生成した模擬状況を前提にして更にシミュレーションを行うという動作を所定回数繰り返し、
前記重み係数更新部は、
前記シミュレーション実行部が前記所定回数のシミュレーションを行った後の各模擬状況の内容に基づき、前記ｎパターンのシミュレーションの中から特定のシミュレーションを選択することを特徴とする請求項１０に記載のリソース管理装置。
【請求項１２】
前記シミュレーション実行部は、
前記ｎパターンのシミュレーションに対応させて、前記複数の物理計算機における計算機リソースの状態が変動したｎ個の模擬状況を生成し、
模擬状況ごとに現在の計算機リソースの状態との類似度合を判定し、現在の計算機リソースの状態に類似している模擬状況に評価値を設定し、
生成したｎ個の模擬状況を前提にして更にシミュレーションを行い、
シミュレーションの度に、シミュレーションのパターン数分の模擬状況を生成し、模擬状況ごとに現在の計算機リソースの状態との類似度合を判定し、現在の計算機リソースの状態に類似している模擬状況に、当該模擬状況に先行する模擬状況の評価値に所定値を加算した評価値を設定し、生成した模擬状況を前提にして更にシミュレーションを行うという動作を所定回数繰り返し、
前記重み係数更新部は、
前記シミュレーション実行部が前記所定回数のシミュレーションを行った後の各模擬状況の内容と各模擬状況に設定されている評価値とに基づき、前記ｎパターンのシミュレーションの中から特定のシミュレーションを選択することを特徴とする請求項１０又は１１に記載のリソース管理装置。
【請求項１３】
前記リソース管理装置は、更に、
物理計算機ごとの、計算機リソース別の重み係数であるホスト・リソース重み係数を記憶するホスト・リソース重み係数記憶部を有し、
前記空きリソース量写像部は、
物理計算機ごとに、前記物理計算機情報取得部により取得された前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数とホスト・リソース重み係数とを用いて、前記要求リソース量写像部と同じ次元に写像し、
前記重み係数更新部は、
前記シミュレーション実行部のシミュレーション結果に基づき、新たなホスト・リソース重み係数を物理計算機ごとに計算機リソース別に決定することを特徴とする請求項９〜１２のいずれかに記載のリソース管理装置。
【請求項１４】
前記シミュレーション実行部は、
各パターンで異なるホスト・リソース重み係数を用いて、前記リソース割当要求入力部、前記物理計算機情報取得部、前記要求リソース量写像部、前記空きリソース量写像部の動作のシミュレーションをｎ（ｎは２以上の整数）パターン行い、
前記重み係数更新部は、
前記シミュレーション実行部のシミュレーション結果に基づき、前記ｎパターンのシミュレーションの中から特定のシミュレーションを選択し、
選択したシミュレーションで用いられたホスト・リソース重み係数を、新たなホスト・リソース重み係数とすることを特徴とする請求項１３に記載のリソース管理装置。
【請求項１５】
前記リソース管理装置は、更に、
前記複数の物理計算機における前記複数種の計算機リソースのリソース量と、前記複数の物理計算機における各計算機リソースのリソース量との比率に基づいて、計算機リソースごとにリソース重み係数を指定するリソース重み係数指定部を有し、
前記リソース重み係数記憶部は、
前記リソース重み係数指定部により指定された、計算機リソースごとのリソース重み係数を記憶することを特徴とする請求項１〜１４のいずれかに記載のリソース管理装置。
【請求項１６】
前記リソース重み係数指定部は、
前記リソース割当要求入力部がリソース割当要求を入力した時点で、前記複数の物理計算機における前記複数種の計算機リソースのリソース量と、前記複数の物理計算機における各計算機リソースのリソース量との比率に基づいて、計算機リソースごとにリソース重み係数を指定し、
前記要求リソース量写像部は、
前記リソース割当要求入力部がリソース割当要求を入力した時点で前記リソース重み係数指定部が指定したリソース重み係数を用いて、前記複数種の計算機リソースの要求リソース量の値を、それぞれ、単一の次元に写像し、
前記空きリソース量写像部は、
前記リソース割当要求入力部がリソース割当要求を入力した時点で前記リソース重み係数指定部が指定したリソース重み係数を用いて、物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、前記要求リソース量写像部と同じ次元に写像することを特徴とする請求項１５に記載のリソース管理装置。
【請求項１７】
前記リソース重み係数指定部は、
前記リソース割当要求入力部によるリソース割当要求の入力とは非同期に、計算機リソースごとにリソース重み係数を指定することを特徴とする請求項１５に記載のリソース管理装置。
【請求項１８】
前記リソース重み係数指定部は、
少なくともいずれかの計算機リソースの状態に変化が生じた際に、計算機リソースごとにリソース重み係数を指定することを特徴とする請求項１７に記載のリソース管理装置。
【請求項１９】
仮想マシンに複数種の計算機リソースを割当てることを要求するリソース割当要求であって、計算機リソースごとに要求リソース量の値が示されるリソース割当要求を、コンピュータが入力するリソース割当要求入力ステップと、
前記コンピュータが、計算機リソースごとの重み係数であるリソース重み係数を記憶するリソース重み係数記憶領域から、計算機リソースごとにリソース重み係数を読み出すリソース重み係数読み出しステップと、
前記コンピュータが、前記複数種の計算機リソースを備える複数の物理計算機の各々から、計算機リソースごとに、前記仮想マシンに割当て可能な空きリソース量の値を取得する物理計算機情報取得ステップと、
前記コンピュータが、前記リソース割当要求に示される前記複数種の計算機リソースの要求リソース量の値を、それぞれ、対応するリソース重み係数を用いて、単一の次元に写像する要求リソース量写像ステップと、
前記コンピュータが、物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数を用いて、前記要求リソース量写像ステップと同じ次元に写像する空きリソース量写像ステップとを有することを特徴とするリソース管理方法。
【請求項２０】
仮想マシンに複数種の計算機リソースを割当てることを要求するリソース割当要求であって、計算機リソースごとに要求リソース量の値が示されるリソース割当要求を入力するリソース割当要求入力ステップと、
計算機リソースごとの重み係数であるリソース重み係数を記憶するリソース重み係数記憶領域から、計算機リソースごとにリソース重み係数を読み出すリソース重み係数読み出しステップと、
前記複数種の計算機リソースを備える複数の物理計算機の各々から、計算機リソースごとに、前記仮想マシンに割当て可能な空きリソース量の値を取得する物理計算機情報取得ステップと、
前記リソース割当要求に示される前記複数種の計算機リソースの要求リソース量の値を、それぞれ、対応するリソース重み係数を用いて、単一の次元に写像する要求リソース量写像ステップと、
物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数を用いて、前記要求リソース量写像ステップと同じ次元に写像する空きリソース量写像ステップとをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想計算機（「仮想マシン」又は「ＶＭ（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）」ともいう）に計算機リソースを割り当てる技術に関する。
【背景技術】
【０００２】
仮想計算機をユーザに提供する際、その仮想計算機を稼働させるためのホストの選定が必要となる。
これは、ユーザが要求する仮想計算機の性能を満たしつつも、仮想計算機の稼働に要するコストを下げることが望まれるからである。
仮想環境では、同一物理計算機上で稼働する仮想計算機の間で、その稼働先の物理計算機の計算機リソースを仮想的リソースとして抽象化し共有する。
これにより、物理計算機の物理的な計算機リソース（以下、「物理リソース」ともいう）を越える量の仮想的リソースを仮想計算機群に割当てることも可能となる。
しかし、仮想計算機が同時に利用可能なリソースは、依然としてこの物理計算機の物理リソースを越えることはできない。
これにより、仮想計算機のリソースを物理リソースより過剰に割当てている場合に物理リソースの同時利用が生じた際、仮想計算機の性能の低下が生じる。
このため、性能を損なわずに仮想計算機を提供できることを保証するために、仮想計算機によるリソースの同時利用が生じても物理リソースが不足とならないように、仮想計算機の配置時に予め調整しておく必要がある。
この調整においては、物理リソースをどのように評価するかが重要となる。
【０００３】
また、仮想計算機への物理リソースの割当てに関する技術として、例えば、特許文献１〜３に開示の技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１５７１７７号公報
【特許文献２】特開２０１１−１７０７８７号公報
【特許文献３】特開２０１０−２４４５２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
仮想計算機の配置先の物理計算機を判断するときに、仮想計算機の各種リソースの要求量と、各物理計算機が提供できるリソースの供給量とを比較し、過不足が生じないかを検討することが必要である。
仮想計算機の配置先の判断には、単一計算機の配置先判断と、最適配置判断の二つの手法が存在する。
単一計算機の配置先判断は、新規仮想計算機がどこに適するかを判断するものである。
最適配置先判断は、既存の仮想計算機をどのように配置し直したら最適となるかを判断するものである。
これら二つの配置先判断は適用先が異なるものの、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、メモリ、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）デバイスなどの各種リソースをどのように比較検討するかにおいて、まず人手による基準値を定めておく必要があり、また、その基準値の見直しを別途要するなど、配置先の判断の正確性を上げるためには、相応の専門知識を有した高度な技術者が運用全般に渡って対応をしなければならないといった課題を持つ。
加えて、各リソースの優先度や評価単位が異なることから、各リソースを個別に評価しなければならないといった課題も持つ。
【０００６】
このように、従来の配置先判断手法では、配置先の厳密性を最重要視し、複雑な演算・評価により自動的な配置先の算出を可能にする。
反面、厳格な配置先判断のための基準値の設定や、基準値の見直しにおいて、その値が妥当か否かを一般の管理者が確認するのが困難であり、かつ、配置先の演算に多大な時間を要していた。
【０００７】
本発明は、これらの点に鑑みたものであり、仮想計算機に計算機リソースを割当てる物理計算機を効率的かつ短時間に選択できる仕組みを提供することを主な目的とする。
【０００８】
なお、本明細書において、「仮想計算機の配置先の物理計算機」と、「仮想計算機に計算機リソースを割当てる物理計算機」とは、同じ意味である。
つまり、仮想計算機に計算機リソースを割当てる物理計算機が、当該仮想計算機の配置先の物理計算機となる。
【課題を解決するための手段】
【０００９】
本発明に係るリソース管理装置は、
仮想マシンに複数種の計算機リソースを割当てることを要求するリソース割当要求であって、計算機リソースごとに要求リソース量の値が示されるリソース割当要求を入力するリソース割当要求入力部と、
計算機リソースごとの重み係数であるリソース重み係数を記憶するリソース重み係数記憶部と、
前記複数種の計算機リソースを備える複数の物理計算機の各々から、計算機リソースごとに、前記仮想マシンに割当て可能な空きリソース量の値を取得する物理計算機情報取得部と、
前記リソース割当要求に示される前記複数種の計算機リソースの要求リソース量の値を、それぞれ、対応するリソース重み係数を用いて、単一の次元に写像する要求リソース量写像部と、
物理計算機ごとに、前記複数種の計算機リソースの空きリソース量の値を、それぞれ、対応するリソース重み係数を用いて、前記要求リソース量写像部と同じ次元に写像する空きリソース量写像部とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、計算機リソースごとの重み係数を用いて要求リソース量と空きリソース量を単一の次元に写像するため、複数種の計算機リソースについての要求リソース量と各物理計算機の空きリソース量を共通の次元にて一括して評価することができる。
このため、計算機リソース間の優先度の評価のための詳細な基準値の設定や見直しが不要であり、また計算機リソースごとの個別の分析や複雑な演算も不要であり、効率的かつ短時間で物理計算機を選択することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１に係るリソース管理装置の構成例を示す図。
【図２】実施の形態１に係るリソース管理装置の動作例を示すフローチャート図。
【図３】実施の形態１に係る評価部の動作例を示すフローチャート図。
【図４】実施の形態１に係る評価部の動作例を示すフローチャート図。
【図５】実施の形態１に係る評価部の動作例を示すフローチャート図。
【図６】実施の形態１に係る重みテーブルの例を示す図。
【図７】実施の形態１に係る補正値テーブルの例を示す図。
【図８】実施の形態１に係る補正値テーブルの例を示す図。
【図９】実施の形態１に係る重みの算出式の例を示す図。
【図１０】実施の形態２に係るリソース管理装置の動作例を示す図。
【図１１】実施の形態２に係るリソース管理装置の動作例を示すフローチャート図。
【図１２】実施の形態３に係るリソース管理装置の構成例を示す図。
【図１３】実施の形態３に係る動的配置先判断部の動作例を示すフローチャート図。
【図１４】実施の形態３に係るシミュレーションにおける世代数を示す図。
【図１５】実施の形態３に係るシミュレーションの例を示す図。
【図１６】実施の形態３に係る重み係数の決定方式を示す図。
【図１７】実施の形態３に係る重みテーブルの例を示す図。
【図１８】実施の形態３に係る補正値テーブルの例を示す図。
【図１９】実施の形態４に係る動的配置先判断部の動作例を示すフローチャート図。
【図２０】実施の形態４に係るシミュレーションの例を示す図。
【図２１】実施の形態４に係るシミュレーションの例を示す図。
【図２２】実施の形態１〜４に係るリソース管理装置のハードウェア構成例を示す図。
【発明を実施するための形態】
【００１２】
以下の実施の形態１〜４では、各計算機リソースを定量的に評価可能とする機構、ならびに、その定量評価の補正を適時行う機構とを組み合わせ、相互連携させることで、配置先の判断基準の簡素化、ならびに、配置先判断の時間の短縮を図る構成を説明する。
【００１３】
実施の形態１〜４では、仮想マシンに複数種の計算機リソースを割当てることを要求するＶＭ配置要求を受け付け、複数の物理計算機の中から仮想マシンに複数種の計算機リソースを割り当てる物理計算機を選択するリソース管理装置を説明する。
複数種の計算機リソースとは、ＣＰＵ、メモリ、Ｉ／Ｏデバイス、ネットワークアクセスデバイスといった仮想計算機を実現するために物理計算機が提供するリソースである。
これら複数種の計算機リソースでは、それぞれの評価基準や単位が異なる。
例えば、ＣＰＵでは動作周波数が評価基準となり、その単位は例えばＧＨｚであり、メモリでは記憶容量が評価基準となり、その単位は例えばＧＢである。
このように、計算機リソースごとに、単位や数値の意味が異なる。
例えば、仮想マシンの配置先の候補となる物理計算機が３つ（物理計算機Ａ〜Ｃとする）ある場合を想定する。
ここで、ＣＰＵは物理計算機Ａが最も多くの空きリソース量を有しており、メモリは物理計算機Ｂが最も多くの空きリソース量を有しており、Ｉ／Ｏデバイスは物理計算機Ｃが最も多くの空きリソース量を有している場合に、どの計算機リソースを優先して評価するかが問題となる。
更に、物理計算機ＡのＣＰＵの空きリソース量が他の物理計算機に比べてどの程度多いのか（メモリ、Ｉ／Ｏデバイスの空きリソース量はどの程度少ないのか）、物理計算機Ｂのメモリの空きリソース量が他の物理計算機に比べてどの程度多いのか（ＣＰＵ、Ｉ／Ｏデバイスの空きリソース量はどの程度少ないのか）、物理計算機ＣのＩ／Ｏデバイスの空きリソース量が他の物理計算機に比べてどの程度多いのか（ＣＰＵ、メモリの空きリソース量はどの程度少ないのか）についても評価する必要がある。
【００１４】
従来では、複数種の計算機リソースのうちのどの計算機リソースを優先して評価するかについて詳細な基準値を設定し、計算機リソースごとに個別に、基準値と、仮想計算機の要求リソース量と、各物理計算機の空きリソース量とを照合し、計算機リソースごとの照合結果を総合して技術者が配置先の物理計算機を選択していた。
実施の形態１〜４に係るリソース管理装置では、複数種の計算機リソースについて、計算機リソースごとに重み係数を設け、仮想マシンに要求される要求リソース量と各物理計算機の空きリソース量を重み係数を用いて単一の次元に写像して、複数種の計算機リソースの要求リソース量、空きリソース量を定量評価できるようにする（スカラ値として評価できるようにする）。
このため、複数種の計算機リソースについての要求リソース量と各物理計算機の空きリソース量を共通の次元にて一括して評価することができ、効率的かつ短時間で物理計算機を選択することができる。
【００１５】
実施の形態１．
図１は、本実施の形態に係るリソース管理装置１００の構成例を示す。
リソース管理装置１００は、管理部０１、ＶＭ配置部０２、計測処理部０３、評価部０４からなる。
【００１６】
ＶＭ配置部０２は、ＶＭ配置要求を入力する。
ＶＭ配置要求は、前述のように、仮想マシンに複数種の計算機リソースを割当てることを要求するコマンドであり、計算機リソースごとに要求リソース量の値が示される。
また、ＶＭ配置部０２は、管理部０１から通知された物理計算機に仮想マシンを配置する。
ＶＭ配置要求は、リソース割当要求の例に相当し、ＶＭ配置部０２は、リソース割当要求入力部の例に相当する。
【００１７】
計測処理部０３は、ＶＭ配置部０２がＶＭ配置要求を入力した際に、複数の物理計算機の各々から、計算機リソースごとに、仮想マシンに割当て可能な空きリソース量の値を取得する。
計測処理部０３は、物理計算機情報取得部の例に相当する。
【００１８】
管理部０１は、制御部１６、システム情報記憶部０５、制御情報記憶部０６、重みテーブル記憶部０７、計測情報記憶部０８、配置情報記憶部０９、補正値テーブル記憶部１０を有する。
【００１９】
制御部１６は、管理部０１と、ＶＭ配置部０２、計測処理部０３、評価部０４との間のデータ、情報の入出力を制御する。
【００２０】
システム情報記憶部０５は、システム情報を記憶している。
システム情報では、各物理計算機、各仮想計算機が備えるリソースの種類、各ソースの性能等が記述されている。
また、システム情報に、物理計算機のコスト（価格）の情報が含まれていてもよい。
【００２１】
制御情報記憶部０６は、制御情報を記憶している。
制御情報記憶部０６は、実施の形態２で説明する。
【００２２】
重みテーブル記憶部０７は、重みテーブルを記憶している。
重みテーブルでは、計算機リソースごとのリソース重み係数（単に「重み係数」又は「重み」ともいう）が記述されている。
重みテーブルは、例えば、図６に示すテーブルであり、計算機リソースごとに、重みと、重みタイプが記述されている。
図６では、説明の簡明のため、３種類の計算機リソースのみが含まれる重みテーブルを示している。
また、以降の説明でも、同様に、３種類の計算機リソースを対象として説明を行う。
図６において、ＭＥＭとはメモリを意味し、ＮＩＣは、Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄを意味する。
また、図６では、重みタイプとして「乗算」が記述されており、各計算機リソースのリソース量（要求リソース量、空きリソース量）と重み係数とが乗算されることを表している。
なお、重みタイプは、指数演算や対数演算であってもよい。
なお、重みテーブル記憶部０７は、リソース重み係数記憶部の例に相当する。
【００２３】
計測情報記憶部０８は、計測情報を記憶している。
計測情報では、例えば、計測処理部０３が取得した空きリソース量の値が、物理計算機ごとに、計算機リソース単位で記述されている。
【００２４】
配置情報記憶部０９は、配置情報を記憶している。
配置情報では、例えば、どの物理計算機にどの仮想マシンが配置されているかが記述されている。
【００２５】
補正値テーブル記憶部１０は、補正値テーブルを記憶している。
補正値テーブルは、例えば、図７及び図８に示すテーブルである。
図７の補正値テーブルでは、物理計算機、仮想計算機ごとに、計算機リソース単位で補正値と補正値タイプが記述されている。
図７の補正値は、図６の重み係数に加重して適用される。
前述のように、配置情報記憶部０９の配置情報には仮想計算機が配置されている物理計算機が示されており、後述するリソース写像計算部１２は、配置情報を参照し、仮想計算機が配置されている物理計算機に対しては、対応する仮想計算機の補正値を適用して写像を行う。
なお、図７の補正値は、ホスト・リソース重み係数及び仮想マシン・リソース重み係数の例に相当する。
また、図８の補正値テーブルでは、計算機リソースのサブカテゴリーごとに補正値と補正値タイプが記述されている。
サブカテゴリーとは、例えば、型式であり、図８のＣＰＵ−Ａ、ＣＰＵ−Ｂ等は、ＣＵＰの型式（型名）を表している。
図８の補正値テーブルでは、複数の物理計算機で用いられているＣＰＵの型式ごと、メモリの型式ごと、ＮＩＣの型式ごとに、補正値と補正値タイプが定義されている。
図８の補正値は、図６の重み係数及び図７の補正値に加重して適用される。
例えば、システム情報記憶部０５のシステム情報に物理計算機ごとに各計算機リソースの型名が記述されており、後述するリソース写像計算部１２は、システム情報を参照して、物理計算機ごとに対応する型名の補正値を適用して写像を行う。
なお、図８の補正値は、サブカテゴリー重み係数の例に相当する。
また、補正値テーブル記憶部１０は、ホスト・リソース重み係数記憶部、仮想マシン・リソース重み係数記憶部、サブカテゴリー重み係数記憶部の例に相当する。
【００２６】
評価部０４は、重み算出部１１、リソース写像計算部１２、リソース評価部１３、静的配置先判断部１４を有する。
【００２７】
重み算出部１１は、図６で示したリソース重み係数を算出する。
重み算出部１１は、重み係数指定部の例に相当する。
【００２８】
リソース写像計算部１２は、計算機リソースごとに、図６のリソース重み係数を用いて、複数種の計算機リソースの要求リソース量の値を単一の次元に写像する。
また、リソース写像計算部１２は、物理計算機ごとに、計算機リソース別に、図６のリソース重み係数を用いて、複数種の計算機リソースの空きリソース量の値を単一の次元に写像する。
このように、リソース写像計算部１２は、複数種の計算機リソースの要求リソース量の値と、各物理計算機の複数種の計算機リソースの空きリソース量の値をすべて同じ次元に写像する。
同じ次元に写像したことにより、複数種の計算機リソースの要求リソース量と、複数種の計算機リソースの各物理計算機の空きリソース量を一元的に定量評価することができる（スカラ値として評価することができる）。
リソース写像計算部１２は、要求リソース量写像部及び空きリソース量写像部の例に相当する。
【００２９】
リソース評価部１３は、物理計算機ごとに、空きリソース量の写像結果を、写像結果の全体を照合の単位にして、要求リソース量の写像結果と照合する。
より具体的には、リソース評価部１３は、物理計算機の空きリソース量の写像結果を要素とするベクトルを、要求リソース量の写像結果を要素とするベクトルと照合する。
なお、リソース評価部１３は、静的配置先判断部１４とともに物理計算機選択部の例に相当する。
【００３０】
静的配置先判断部１４は、リソース評価部１３の照合結果に基づき、仮想マシンの配置先の物理計算機を複数の物理計算機の中から選択する。
より具体的には、静的配置先判断部１４は、物理計算機の空きリソース量の写像結果を要素とするベクトルをＶ（Ｘ）、要求リソース量の写像結果を要素とするベクトルをＶ（Ｙ）とした場合に、Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上であり、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が最小の物理計算機を選択する。
静的配置先判断部１４は、リソース評価部１３とともに物理計算機選択部の例に相当する。
【００３１】
図２は、本実施の形態に係るリソース管理装置１００の動作例を示すフローチャートである。
【００３２】
利用者は、例えば新規ＶＭの配置が必要になった際に、ステップＳ００１において、必要なＶＭのリソース量を基に、ＶＭ配置部０２に対しＶＭ配置要求を入力する。
ＶＭ配置要求を入力されたＶＭ配置部０２は、ステップＳ００２において、ＶＭの配置先を判断するよう管理部０１に要求を行う。
要求を受けた管理部０１では、ステップＳ００３において、制御部１６が、配置先の判断を評価部０４に依頼する。
依頼を受けた評価部０４は、ステップＳ００４において、ＶＭ配置先を判断し、判断結果を管理部０１に返答する。
返答を受けた管理部０１では、ステップＳ００５において、制御部１６が、その結果をＶＭ配置部０２に返答する。
返答を受けたＶＭ配置部０２は、ステップＳ００６においてＶＭの作成、配置を行い、その結果を出力する。
【００３３】
図２のＳ００４の詳細を図３〜５に示す。
Ｓ００４におけるＶＭの配置先の判断は、重み算出部１１（図３）、リソース写像計算部１２とリソース評価部１３（図４）、静的配置先判断部１４（図５）の順に行われる。
【００３４】
なお、以下において、ある対象Ｘのリソース群をＸ＝｛ｃｐｕ：１２、ｍｅｍ：１３、．．．｝などのように示すものとする。
対象Ｘは、物理計算機又は仮想計算機である。
例えば、物理計算機ＡがＣＰＵ：２ＧＨｚ、メモリ：３２ＧＢを仮想計算機に対し割当可能であれば、物理計算機Ａのリソース群は｛ｃｐｕ：２、ｍｅｍ：３２｝となり、仮想計算機ＢがＣＰＵ：１．５ＧＨｚ、メモリ：４ＧＢを要求リソース量として要求する場合、仮想計算機Ｂのリソース群は｛ｃｐｕ：１．５、ｍｅｍ：４｝となる。
また、対象Ｘのｃｐｕの値は、ｒ（Ｘ，ｃｐｕ）と示すものとする。
また、重み付けにより丸められた後（リソース写像計算部１２による写像後）の対象ＸのＣＰＵリソースをｒ’（Ｘ，ｃｐｕ）と示すものとする。
このとき、Ｘのリソースは、ｒ’（Ｘ，ｎ）の値からなるベクトルＶ（Ｘ）として表現される（ｎは、計算機リソースの各々を表す）。
【００３５】
まず、ＶＭ配置部０２がＶＭ配置要求を入力し、管理部０１が評価部０４にＶＭ配置先の判断を依頼した際（Ｓ００３）に、重み算出部１１が評価に必要なリソースｎごとに、重み係数ｗ（Ｘ，ｎ）を算出する（図３）。
つまり、対象Ｘごとに、リソース単位（ＣＰＵ、メモリ、ＮＩＣ等）で、重み係数ｗ（Ｘ，ｎ）を算出する。
このとき、対象Ｘのリソースｎの重み付けされた後の値ｒ’は、ｒ’（Ｘ，ｎ）＝ｒ（Ｘ，ｎ）ｗ（Ｘ，ｎ）となる。
また、ｗ（Ｘ，ｎ）は、ｗｇ（ｎ）ｗｌ（Ｘ，ｎ）にて示される。
ｗｇ（ｎ）は、リソースｎに共通した重みであり、ｗｌ（Ｘ，ｎ）は対象Ｘ個別のリソースｎの重みとなる。
つまり、ｗｇ（ｎ）は、図６に示されるリソースｎごとの重み係数であり、ｗｌ（Ｘ，ｎ）は、図７に示される物理計算機ごと、仮想計算機ごとのリソースｎ単位の補正値である。
ここでは、説明の簡明のため、補正値ｗｌ（Ｘ，ｎ）は、予め設定されているものとする。
従って、以下では、ｗｇ（ｎ）を決定する過程を説明する。
【００３６】
まず、重み算出部１１は、ステップＳ０１１において、重みを評価する際の対象群Ｔと重み評価の対象となるリソース項目Ｒを決定する。
ここでは、Ｔが全物理計算機、Ｒが全物理計算機が保持する全てのリソースとする。
【００３７】
次に、重み算出部１１は、ステップＳ０１２において、Ｔ、Ｒの情報を管理部０１のシステム情報記憶部０５や計測情報記憶部０８、配置情報記憶部０９から取得する。
つまり、重み算出部１１は、計算機リソースごとに、各物理計算機が保持するリソース量の値を取得する。
【００３８】
次に、重み算出部１１は、ステップＳ０１３において、ステップＳ０１４にて重みを演算し、ｗｇ（ｎ）の値を決定する。
ｗｇ（ｎ）の重み演算の例を図９に示す。
ＣＰＵのリソース量はＧＨｚ単位、メモリのリソース量はＧＢ単位、ＮＩＣのリソース量はＧｂｐｓ単位というように計算機リソースの種類ごとに評価基準、単位が異なるが、これらの値を一元的に取り扱うために、図９の算出式からリソースごとの重み係数を算出する。
図９に示すように、重み算出部１１は、各計算機リソースの総リソース量（全物理計算機でのリソース量の総和）の総乗を、各計算機リソースの総リソース量で除算した値を、各リソースの重み係数ｗｇ（ｎ）とする。
つまり、ＣＰＵのリソース量の値（２ＧＨｚならば「２」）、メモリのリソース量の値（３２ＧＢならば「３２」）、ＮＩＣのリソース量の値（１Ｇｂｐｓならば「１」）を図９の式に適用して、各リソースの重み係数ｗｇ（ｎ）を算出する。
図９の例では、全種類の計算機リソースの物理計算機全体における総リソース量と各計算機リソースの物理計算機全体における総リソース量との比率を表す重み係数ｗｇ（ｎ）を算出するようにしているが、他の算出式よりリソース重み係数ｗｇ（ｎ）を算出してもよい。
また、ここでは、補正値ｗｌ（Ｘ，ｎ）の値は予め設定されていることとしたが、ｗｇ（ｎ）と同様に、ＶＭ配置要求が入力される度に、重み算出部１１が、対象Ｘごとに、リソースｎ単位で決定するようにしてもよい。
【００３９】
最後に、重み算出部１１は、ステップＳ０１４において、ｗｇ（ｎ）の値を重みテーブル記憶部０７の重みテーブルに格納する。
【００４０】
図３のフローにて重みが定まった後、その結果を基に、リソース写像計算部１２がリソースを正規化し、リソース評価部１３が正規化後のリソースの値を用いた解析を行う（図４）。
【００４１】
ステップＳ０２１において、リソース写像計算部１２は管理部０１の計測情報記憶部０８から計測結果を取得する。
ここでリソース写像計算部１２が計測情報記憶部０８から取得する計測結果とは、各物理計算機の計算機リソースごとの空きリソース量である。
前述したように、計測処理部０３は、ＶＭ配置部０２がＶＭ配置要求を入力した際に、各物理計算機の計算機リソースごとの空きリソース量を計測し、計測値（空きリソース量）を計測情報に格納する。
このため、リソース写像計算部１２は、各物理計算機の最新の空きリソース量の値を取得することができる。
【００４２】
次に、ステップＳ０２２において、リソース写像計算部１２は、重みテーブル記憶部０７の重みテーブル（図６）からリソース重み係数を取得する。
また、リソース写像計算部１２は、補正値テーブル記憶部１０の補正値テーブル（図７）から、対象Ｘごと、リソースｎごとに、ｗｌ（Ｘ，ｎ）を取得する。
また、リソース写像計算部１２は、補正値テーブル記憶部１０の補正値テーブル（図８）から、サブカテゴリーごとの補正値を取得してもよい。
【００４３】
次に、リソース写像計算部１２は、ステップＳ０２３にて、対象Ｘごとに、正規化後の値Ｖ（Ｘ）を算出する。
具体的には、ＶＭ配置要求の対象の仮想計算機については、計算機リソースごとに、ＶＭ配置要求に記述された要求リソース量にリソース重み係数ｗｇ（ｎ）を適用した演算を行って（図６の例では、乗算を行って）、複数種の計算機リソースの要求リソース量を単一次元に写像する。
また、物理計算機については、計算機リソースごとに、Ｓ０２１において取得された空きリソース量にリソース重み係数ｗｇ（ｎ）を適用した演算を行って（図６の例では、乗算を行って）、複数種の計算機リソースの要求リソース量を単一次元に写像する。
また、物理計算機については、リソース重み係数ｗｇ（ｎ）とともに、補正値ｗｌ（Ｘ，ｎ）（図７）を用いた演算を行ってもよい。
例えば、図７に示す物理計算機Ａに対しては、Ｓ０２１で取得したＣＰＵの空きリソース量に、ｗｇ（ｎ）である「７．０」（図６）とｗｌ（Ｘ，ｎ）である「０．９」を乗算して、写像結果を得る。
また、物理計算機Ａに仮想計算機Ａが配置されている場合には、更に、仮想マシンＡのｗｌ（Ｘ，ｎ）である「０．５」を掛け合わせる。
このようにして、リソース写像計算部１２は、ＶＭ配置要求の対象の仮想計算機、各物理計算機に対して、複数種の計算機リソースのリソース量を同じ次元に写像し、仮想計算機、物理計算機ごとに、各リソースの写像結果で構成されるＶ（Ｘ）を得る。
【００４４】
更に、ステップＳ０２３では、リソース評価部１３が、Ｖ（Ｘ）を基に、Ｖ（Ｘ）のノルム｜Ｖ（Ｘ）｜、Ｖ（Ｘ）と単位ベクトルとの仰角ｌ（Ｖ（Ｘ））、その他ベクトルＶ（Ｙ）との差分Ｖ（Ｘ）−Ｖ（Ｙ）を算出する。
【００４５】
最後に、ステップＳ０２４にて、リソース評価部１３は、Ｓ０２３で得られた、ノルム｜Ｖ（Ｘ）｜、仰角ｌ（Ｖ（Ｘ））、Ｖ（Ｘ）−Ｖ（Ｙ）を、静的配置先判断部１４に渡す。
【００４６】
定量的に評価可能な値Ｖ（Ｘ）が定まった後、その結果を基に、静的配置先判断部１４がＶＭの配置先を判断する（図５）。
【００４７】
まず、ステップＳ０３１において、静的配置先判断部１４は、Ｘ＝仮配置先ホスト、Ｙ＝配置するＶＭの時のＶ（Ｘ）−Ｖ（Ｙ）の値を仮に配置した場合の値として捉える。
つまり、静的配置先判断部１４は、ＶＭ配置要求の対象の仮想計算機のベクトルをＶ（Ｙ）にし、物理計算機ごとに、ベクトルＶ（Ｘ）とベクトルＶ（Ｙ）との差を求める。
【００４８】
次に、ステップＳ０３２にて、静的配置先判断部１４は、ＶＭの配置先となる物理計算機を決定する。
このとき、静的配置先判断部１４は、Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上でかつ、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が最も小さい値となるＸ（物理計算機）を配置先として決定する。
つまり、Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上なので、ＶＭ配置要求の要求リソース量を満たす空きリソース量を有し、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が最も小さい値なので、ＶＭにリソースを割当てた後に残るリソース量が最も小さい物理計算機が選択される。
なお、上記の条件に合致するＸ（物理計算機）が複数存在する場合は、静的配置先判断部１４は、単位ベクトルとの仰角を示すｌ（Ｖ（Ｘ）−Ｖ（Ｙ））が最も小さいＸ（物理計算機）を選択する。
ｌ（Ｖ（Ｘ）−Ｖ（Ｙ））が最も小さいＸ（物理計算機）をＶＭ配置先にすると、ＶＭにリソースを割り当てた後の物理計算機全体における計算機リソース間の空きリソース量のバランスが最もよいからである。
【００４９】
その後、静的配置先判断部１４は、Ｓ０３２で決定した物理計算機の識別子を管理部０１に返却する。
【００５０】
このように、本実施の形態によれば、リソースを定量評価するための重みを外部から入れることを可能にし、かつ、リソースを一元的に評価することで評価における専門性を除外することを可能にする。
【００５１】
以上、本実施の形態では、管理部、ＶＭ配置部、計測処理部、評価部から構成される、ＶＭの配置先を定量的評価し判断するリソース管理装置を説明した。
本実施の形態では、管理部は、各部からの情報管理や各部相互の制御管理を行う。
また、ＶＭ配置部は、管理部にＶＭ新規配置、ＶＭ再配置の要望を出し、その結果を管理部から取得し、取得後、その結果に沿ってＶＭの配置を行う。
また、計測処理部は、現在の各種計算機の状態を収集し、管理部に登録する。
また、評価部が、重み算出部、リソース写像計算部、リソース評価部、静的配置先判断部から構成されることを説明した。
重み計算部は、管理部からの情報を元に、各リソース、各計算対象の計算の重みを算出する。
また、リソース写像計算部は、重み計算部の値を元に各種リソースを単一次元に写像する。
また、リソース評価部は、リソース写像計算部の値を元に、複数のリソースを一括し評価する。
更に、静的配置先判断部は、管理部に登録されたＶＭ配置先判断の要求に対し、リソース評価部からの結果を元にＶＭの配置先を判断する。
【００５２】
なお、以上では、図７の補正値及び図８の補正値を適用して空きリソース量を正規化（単一次元への写像）する例を説明したが、図７の補正値及び図８の補正値を適用せずに、図６の重み係数のみを用いて空きリソース量を正規化してもよい。
【００５３】
また、以上では、静的配置先判断部１４が、ベクトルＶ（Ｘ）とベクトルＶ（Ｙ）の関係から、ＶＭ配置先の物理計算機を選択していたが、オペレータにＶＭ配置先の物理計算機を選択させてもよい。
例えば、静的配置先判断部１４は、Ｖ（Ｘ）−Ｖ（Ｙ）の全要素が０以上のＸ（物理計算機）を、ノルム｜Ｖ（Ｘ）−Ｖ（Ｙ）｜が小さい順に複数リストアップし、オペレータに提示し、オペレータは、提示された複数の物理計算機の中から最適な物理計算機を選択するようにする。
また、例えば、静的配置先判断部１４は、各物理計算機のベクトルＶ（Ｘ）と仮想計算機のベクトルＶ（Ｙ）の位置関係を表すグラフを生成し、生成したグラフを表示装置に出力し、オペレータは、グラフを参照して、最適なＶＭ配置先の物理計算機を選択するようにする。
【００５４】
実施の形態２．
本実施の形態では、ＶＭ配置部０２によるＶＭ配置要求の入力とは非同期に、重み算出部１１がリソース重み係数を算出する例を説明する。
管理部０１は、その他の部からのイベントを受け付け、受け付けたイベントを制御情報記憶部０６に登録し、その他の部は、管理部０１へイベントを登録した後は、管理部０１から返答が来るまで待機する。
【００５５】
図１０は、本実施の形態におけるイベント駆動によるＶＭ配置先判断の動作の流れを示す。
【００５６】
利用者は、新規ＶＭの配置が必要になった際に、実施の形態１と同様に、ＶＭ配置部０２に対してＶＭ配置要求を行う。
ＶＭ配置要求を入力したＶＭ配置部０２は、ステップＳ０４１において管理部０１の制御情報記憶部０６に配置先の判断イベントを登録する。
イベント登録を受けた管理部０１では、制御部１６が、ステップＳ０４２において、配置先の判断を静的配置先判断部１４に依頼するため、静的配置先判断部１４を駆動させる。
静的配置先判断部１４は、ステップＳ０４３において、配置先の判断に必要な情報を取得するようリソース評価部１３に指示する。
要求を受けたリソース評価部１３は、ステップＳ０４４でリソース写像計算部１２に物理計算機、仮想計算機のＶ（Ｘ）の値の算出を要求する。
リソース写像計算部１２は、ステップＳ０４５及びＳ０４６において、実施の形態１と同様の手順で、管理部０１からリソース重み係数や計測値（各物理計算機の空きリソース量）、補正値を取得し、物理計算機、仮想計算機のＶ（Ｘ）の値を算出し、Ｖ（Ｘ）の値をリソース評価部１３に返す。
リソース評価部１３は、Ｓ０４７においてリソース写像計算部１２からＶ（Ｘ）の値を取得し、実施の形態１と同様の演算を行い、その結果をステップＳ０４８において静的配置先判断部１４に返す。
情報を受け取った静的配置先判断部１４は、実施の形態１と同様に配置先の判断を行い、ステップＳ０４９において、その結果をイベント結果として管理部０１に返答する。
返答を受けた管理部０１では、制御部１６が、ステップＳ０５０において、静的配置先判断部１４の結果をＶＭ配置部０２に返答し、その結果を受けたＶＭ配置部０２は、結果に従いＶＭの配置を行う。
【００５７】
また、上記のＶＭ配置要求からの処理の流れとは別に、重み算出部１１では適時重みの再評価を行う（図１１）。
【００５８】
重み算出部１１は、まず、リソース管理装置１００が駆動した際に、環境変化が生じた場合に重み再評価を行うよう、管理部０１の制御情報記憶部０６にイベント登録を行う。
なお、上記の環境変化とは、計測処理部０３による計測結果に変化が生じた場合などを示す。
例えば、新たな物理計算機が追加された場合や、既存の物理計算機に新たな計算機リソースが追加された場合のように、いずれかの計算機リソースのリソース量に変化が生じた場合に、計測処理部０３による計測結果に変化が生じる。
【００５９】
イベントが発生し、重み算出部１１が起動された際、まずステップＳ０５１において、管理部０１に対し重みテーブルのロックを依頼する。
これは重みテーブルが外部から改竄・参照されることを防ぐためである。
次に、実施の形態１と同様に、ステップＳ０１１からＳ０１４を行い、重みを保存しなおす。
その後、重み算出部１１は、ステップＳ０５２において、管理部０１に対し重みテーブルのロック解除を依頼する。
ロックの解除後に、重み算出部１１は、ステップＳ０５３において、最初に行ったイベント登録と同様に、環境変化が生じ場合に重み再評価が行えるよう、管理部０１に対しイベントを登録する。
【００６０】
このように、本実施の形態によれば、重み算出部１１による重みの算出を、ＶＭ配置先の判断と並行に行えるようにすることで、ＶＭ配置先の判断に要する時間を短縮することができる。
【００６１】
以上、本実施の形態では、管理部は、制御情報記憶部を有し、その他の部からのイベントを受け付け、受け付けたイベントを制御情報記憶部に登録し、その他の部は、管理部へイベントを登録した後は、管理部から返答が来るまで待機することを説明した。
また、管理部は、イベントが登録された後、登録されたイベントを基に依頼先を判断し、依頼先にイベントの解決を依頼する。
また、イベント解決を依頼されたその他の部は、適時その対応を行い、その結果を管理部にイベント解決として返信し、イベント解決が行えなかった場合は、その旨を管理部に返信する。
また、管理部は、イベント解決の結果をイベント登録元に返信し、イベント登録元を起床させる。
【００６２】
また、本実施の形態では、自律型の重み付け算出部を説明した。
つまり、重み算出部が、事前に、環境が変更された場合に呼び起こすよう管理部にイベント登録を行い、管理部から起こされた場合に、重みテーブルを一旦ロックし、重みの再評価を行う。
また、重みの再評価後、重み算出部は、重みテーブルを更新し、ロックを解除し、その後、管理部にイベントの再登録を行う。
【００６３】
実施の形態３．
本実施の形態では、リソース管理装置１００がシミュレーションを行い、シミュレーションの結果に基づき、重み係数、補正値の更新を行う例を説明する。
【００６４】
図１２は、本実施の形態に係るリソース管理装置１００の構成例を示す。
【００６５】
図１２において、動的配置先判断部１５は、複数の物理計算機における現在の計算機リソースの状態を前提にして、新たなＶＭ配置要求が入力されたと仮定して、管理部０１、ＶＭ配置部０２、計測処理部０３、重み算出部１１、リソース写像計算部１２、リソース評価部１３、静的配置先判断部１４の動作のシミュレーションを行う。
動的配置先判断部１５は、各パターンで異なるリソース重み係数や補正値（図７の補正値）を用いて、シミュレーションをｎ（ｎは２以上の整数）パターン行い、ｎパターンのシミュレーションに対応させて、複数の物理計算機における計算機リソースの状態が変動したｎ個の模擬状況を生成する。
更に、動的配置先判断部１５は、生成したｎ個の模擬状況を前提にして更にシミュレーションを行い、シミュレーションの度に、シミュレーションのパターン数分の模擬状況を生成し、生成した模擬状況を前提にして更にシミュレーションを行うという動作を所定回数繰り返す。
また、動的配置先判断部１５は、シミュレーション結果に基づき、新たなリソース重み係数を計算機リソースごとに決定し、また、新たな補正値を、物理計算機、仮想計算機ごとに、計算機リソース単位で決定する。
より具体的には、動的配置先判断部１５は、所定回数のシミュレーションを行った後の各模擬状況の内容に基づき、前記ｎパターンのシミュレーションの中から特定のシミュレーションを選択し、選択したシミュレーションで用いられたリソース重み係数、補正値を新たなリソース重み係数、補正値とする。
なお、動的配置先判断部１５は、シミュレーション実行部及び重み係数更新部の例に相当する。
【００６６】
また、図１２において、動的配置先判断部１５以外の要素は、図１に示したものと同様であるため、説明を省略する。
【００６７】
動的配置先判断部１５の処理例を図１３に示す。
【００６８】
動的配置先判断部１５は、重み（ＣＰＵ重み等）及び補正値（物理計算機ごと、仮想計算機ごとの補正値）を変化させつつ、ＶＭ配置先のシミュレーションを複数実施し、その結果を基に適切な重みや補正値を管理部０１に格納する。
動的配置先判断部１５は、管理部０１によって適時駆動するよう登録されているものとする。
駆動後、動的配置先判断部１５は、まずステップＳ０６１においてシミュレーションの実施内容を決定する。
ここで示す実施内容とは、新規ＶＭ追加、既存ＶＭリソース変化、部分再配置などを示し、その対象やリソース量を、システム情報記憶部０５や計測情報記憶部０８、配置情報記憶部０９からの情報を基に予測する。
シミュレーションは図１４のように、世代として管理され、動的配置先判断部１５は、所定の世代分の実施内容を決定する。
図１４において、各ノードは世代を表す。
Ｇｅｎ０は、複数の物理計算機の現在の計算機リソースの状態に相当する。
Ｇｅｎ１は、シミュレーション結果を表す。
つまり、Ｇｅｎ１は、現在の計算機リソースの状態からの変動状況を模擬しており、例えばＶＭ配置要求が入力され、いずれかの物理計算機にＶＭが配置され、この結果、複数の物理計算機における計算機リソースの割当て状態が変動した状況を模擬している。
同様に、Ｇｅｎ２は、Ｇｅｎ１の計算機リソースの状態からの変動状況を模擬しており、例えば更なるＶＭ配置要求が入力され、いずれかの物理計算機にＶＭが配置され、この結果、複数の物理計算機における計算機リソースの割当て状態が変動した状況を模擬している。
Ｇｅｎ３以降についても、同様である。
各世代で模擬されている、計算機リソースの状態が変動した後の状況を模擬状況という。
【００６９】
次に、動的配置先判断部１５は、ステップＳ０６２において重み及び補正値の揺らぎ幅と、次に揺らぎが生じるまでの世代数、揺らがせるパターン数を決定する。
「重み及び補正値の揺らぎ幅」とは、重み及び補正値を変更させる変更タイミング（世代）においてシミュレーションに用いる重み及び補正値をどのように変更させるかを意味する。
揺らぎ幅は、各変更タイミングで異なっていてもよい。
「次に揺らぎが生じるまでの世代数」とは、重み及び補正値の変更タイミングを意味しており、何世代ごとに重み及び補正値を変化させるかを意味する。
重みごと、補正値ごとに世代数が異なっていてもよい。
「揺らがせるパターン数」とは、異なる重み及び補正値を用いるシミュレーションの数である。
「次に揺らぎが生じるまでの世代数」を２、「揺らがせるパターン数」を２とした場合の世代と重み及び補正値の変化例を図１５に示す。
図１５では、ハッチングのある世代において、重み及び補正値が前の世代から変化しているものとする。
つまり、「次に揺らぎが生じるまでの世代数」が２なので、Ｇｅｎ０→Ｇｅｎ１、Ｇｅｎ２→Ｇｅｎ３、Ｇｅｎ４→Ｇｅｎ５、Ｇｅｎ６→Ｇｅｎ７のそれぞれのシミュレーションで重み及び補正値を変化させている。
また、図１５では、ハッチングのある世代において２つの系統に分岐している。
つまり、「揺らがせるパターン数」が２なので、重み及び補正値が変化しているＧｅｎ０→Ｇｅｎ１、Ｇｅｎ２→Ｇｅｎ３、Ｇｅｎ４→Ｇｅｎ５、Ｇｅｎ６→Ｇｅｎ７でそれぞれ２つの系統に分岐している。
Ｇｅｎ０→Ｇｅｎ１、Ｇｅｎ２→Ｇｅｎ３、Ｇｅｎ４→Ｇｅｎ５、Ｇｅｎ６→Ｇｅｎ７のそれぞれでは、２つのシミュレーション間で、シミュレーション内容自体は共通しているが、適用する重み及び補正値が相違している。
他の世代においても同様である。
【００７０】
その後、動的配置先判断部１５は、ステップＳ０６３にて、Ｓ０６１、Ｓ０６２で定めた値を基に全てのシミュレーションを実施する。
なお、ＶＭの配置先の選択には最適配置解を用いるものとする。
【００７１】
所定世代分の全てのシミュレーションを実施した後、動的配置先判断部１５は、最後に、ステップＳ０６４において、第１世代毎にグループを区切り（図１６）、最終世代の模擬状況におけるリソース余りの平均値が最も良好な値を示したグループの第１世代の重み及び補正値（図１６では、例えばＡ）を新たな重み及び新たな補正値として、管理部０１の重みテーブル及び補正値テーブルに登録する。
つまり、動的配置先判断部１５は、図１６に示すように、第１世代の分岐により、各ノードのグループ分けを行う（図１６の破線のようにグループ分けを行う）。
また、動的配置先判断部１５は、グループごとに、第７世代の８つの模擬状況の各々におけるリソース余り量を導出する。
リソース余り量とは、例えば、ＶＭが配置されていない物理計算機の台数や、各計算機リソースの空きリソース量である。
次に、動的配置先判断部１５は、グループごとに、第７世代の８つの模擬状況におけるリソース余り量の平均値を求める。
また、動的配置先判断部１５は、２つのグループのリソース余り量の平均値を比較し、平均値が低いグループの第１世代のシミュレーション結果（図１６では、Ａ）を選択し、選択したシミュレーション結果における重み及び補正値を新たな重み及び新たな補正値として選択する。
【００７２】
本実施の形態では、重みテーブル記憶部０７の重みテーブルは、例えば、図１７のようになる。
本実施の形態に係る重みテーブルは、図１７に示すように、計算機リソースごとに設けられる。
各重みテーブルにおいて、シミュレーション履歴の欄には、シミュレーションの実施回数、すなわち、図１３のＳ０６１〜Ｓ０６４の手順を実施した回数が記される。
つまり、最初にシミュレーション（図１３のＳ０６１〜Ｓ０６４）を実施した際に選択されたＣＰＵ重みは「７．０」であり、２回目にシミュレーション（図１３のＳ０６１〜Ｓ０６４）を実施した際に選択されたＣＰＵ重みは「８．０」であり、３回目にシミュレーション（図１３のＳ０６１〜Ｓ０６４）を実施した際に選択されたＣＰＵ重みは「８．５」である。
このように、本実施の形態では、重みテーブル記憶部０７は、計算機リソースごとに、シミュレーションで決定した重み係数を時系列に記録している。
また、本実施の形態では、補正値テーブル記憶部１０の補正値テーブルは、例えば、図１８のようになる。
本実施の形態に係る補正値テーブルは、図１８に示すように、物理計算機ごと、仮想計算機ごとに設けられる。
そして、各補正値テーブルでは、シミュレーションの実施回数ごとに、計算機リソース単位で補正値が示される、
このように、本実施の形態では、補正値テーブル記憶部１０は、シミュレーションで決定した補正値を時系列に記録している。
【００７３】
また、ＶＭ配置部０２が実際にＶＭ配置要求を入力した場合は、リソース写像計算部１２は、図１７の重みテーブル内の最新の重み係数、図１８の補正値テーブル内の最新の補正値を用いて、Ｖ（Ｘ）を求める。
このため、本実施の形態では、実施の形態１で示した重み算出部１１による重み算出手順（図３）は省略される。
【００７４】
このように、本実施の形態によれば、重み付けを自動的に予測することで重みの補正を行い、配置先の正確性を向上させることができる。
【００７５】
以上、本実施の形態では、評価部内に動的配置先判断部を有するリソース管理装置を説明した。
動的配置先判断部は、静的配置先判断部とは別に、仮にＶＭ配置先判断が要求された場合を想定し、ＶＭの配置先のシミュレーションを行い、また、その結果を元に、重みの補正値を管理部に返す。
そして、シミュレーションは、重みに揺らぎを持たせつつ、新規ＶＭ配置、ＶＭ部分再配置、ＶＭリソース変更などを実施し行う。
【００７６】
なお、上記では、図１３のＳ０６３において、重み及び補正値の両方を変化させながらシミュレーションを行うこととしたが、重みのみ又は補正値のみを変化させながらシミュレーションを行うようにしてもよい。
また、補正値を変化させる場合は、全ての物理計算機、仮想計算機で補正値を変更する必要はなく、特定の物理計算機又は仮想計算機の補正値のみを変化させながらシミュレーションを行うようにしてもよい。
【００７７】
また、上記では、重みテーブル記憶部０７は図１７に示すように、重み係数の更新の履歴が示される重みテーブルを記憶し、補正値テーブル記憶部１０は図１８に示すように、補正値の更新の履歴が示される補正値テーブルを記憶していることとした。
これに代えて、重みテーブル記憶部０７は最新の重み係数のみが示される重みテーブルを記憶していてもよいし、補正値テーブル記憶部１０は最新の補正値のみが示される補正値テーブルを記憶していてもよい。
この場合は、重みテーブル記憶部０７は図６と同様の重みテーブルを保持し、補正値テーブル記憶部１０は図７と同様の補正値テーブルを保持することになる。
【００７８】
実施の形態４．
本実施の形態では、動的配置先判断部１５が状況変化への追従機能を有する。
【００７９】
実施の形態３では、動的配置先判断部１５はシミュレーション内容を予め定めた後、シミュレーションを実施する。
シミュレーションの計算量が膨大な場合、このシミュレーションが完了するまでに長時間を要し、場合によってはシミュレーション中に、実環境において何世代もの変化が発生し、シミュレーション内容と、算出後の状態とが合致しなくなるおそれがある。
そのためシミュレーション中であっても、実際の環境の変化に追従する機能が必要となる。
【００８０】
本実施の形態では、動的配置先判断部１５は、実施の形態３で示した手順でシミュレーションを行うとともに、模擬状況（シミュレーション結果）と現在の計算機リソースの状態との類似度合を判定し、現在の計算機リソースの状態に類似している模擬状況に評価値を設定する。
評価値の設定の仕方としては、現在の計算機リソースの状態に類似している模擬状況に、当該模擬状況に先行する模擬状況の評価値に所定値を加算した評価値を設定する。
また、動的配置先判断部１５は、所定回数のシミュレーションを行った後の最終世代における各模擬状況の内容と各模擬状況に設定されている評価値とに基づき、第１世代のシミュレーションの中から特定のシミュレーションを選択し、選択したシミュレーションで用いられたリソース重み係数（補正値）を新たなリソース重み係数（補正値）とする。
【００８１】
本実施の形態に係る動的配置先判断部１５の動作例を図１９に示す。
実施の形態３では、深さ優先、幅優先の両方でシミュレーションの実施が可能であったが、本実施の形態では幅優先でのシミュレーションを前提とする。
【００８２】
まず、ステップＳ０７１において、動的配置先判断部１５は、最初の世代（Ｇｅｎ０）における複数の物理計算機における計算機リソースの状態を取得する。
この最初の世代の状態とは、現在の数の物理計算機における計算機リソースの状態である。
動的配置先判断部１５は、例えば、計測処理部０３から、計算機リソースごとに空きリソース量を取得したり、各物理計算機に配置されている仮想計算機の情報を取得する。
なお、この最初の状態を状態ランク０とする。
【００８３】
その後、所定の世代数分まで、ステップＳ０７２〜Ｓ０７７を反復する。
【００８４】
つまり、ステップＳ０７２においては、動的配置先判断部１５は、次の世代に対する重みの揺らぎを決定する。
この時、どのように揺らぎを行うかは、適時管理部０１の情報を基に算出する。
なお、必ずしも揺らぎを生じさせる必要は無い。
次に、ステップＳ０７３において次の世代にて実施するシミュレーション内容を決定する。
実施の形態３同様に、管理部０１の情報を基にシミュレーションの実施内容を予測し決定する。
その後、ステップＳ０７４において動的配置先判断部１５は、ステップＳ０７２にて判断したパターン数分、現在の世代の情報を分岐させる。
分岐後に、ステップＳ０７５において、各分岐先にてシミュレーションを実施する。
【００８５】
次に、動的配置先判断部１５は、シミュレーション実施後の配置状態（模擬状況）と実際の環境（実際の環境の変化の履歴も含む）とを比較し、シミュレーション実施後の配置状態（模擬状況）が実際の環境に類似する場合に、ステップＳ０７６において、該当する模擬状況の状態ランク（評価値）を上げる。
本実施の形態では、管理部０１は、ＶＭの追加やリソースの変更などの履歴を保存する。
これにより、動的配置先判断部１５は、シミュレーション実施後の模擬状況と、実際の環境の変化の履歴との比較が可能である。
Ｓ０７２〜Ｓ０７６は、世代ごとに行われる。
つまり、動的配置先判断部１５は、シミュレーション結果を基に、更にシミュレーションを行い、世代を更新し（Ｓ０７７）、反復を繰り返す。
【００８６】
世代と状態ランクの変化例を図２０及び図２１に示す。
【００８７】
図２０（ａ）のＳ０８１は、図１９のＳ０７１相当となる。
図２０（ｂ）のＳ０８２は、第１世代についてＳ０７５までを実施した後のノードの分岐状況及び各ノードの状態ランクを示す。
ここでは２パターン分岐を行っている。
図２０（ｃ）のＳ０８３は、第１世代についてＳ０７６を実施した後を示す。
Ｇｅｎ１の下側のノード（ハッチング）の模擬状況が現在のリソースの状態と類似するため、動的配置先判断部１５は、Ｇｅｎ１の下側のノードの状態ランクを上げている。
図２０（ｄ）のＳ０８４は、Ｓ０７７において第２世代に更新した後を示す。
図２０（ｅ）のＳ０８５は、第２世代についてＳ０７６を実施した後を示す。
ハッチングのあるノードの模擬状況が現在のリソースの状態と類似するため、動的配置先判断部１５は、これらのノードの状態ランクを上げている。
図２１（ｆ）のＳ０８６は、Ｓ０７７において第３世代に更新した後を示す。
図２１（ｇ）のＳ０８７は、第３世代についてＳ０７６を実施した後を示す。
ハッチングのあるノードの模擬状況が現在のリソースの状態と類似するため、動的配置先判断部１５は、これらのノードの状態ランクを上げている。
【００８８】
所定世代分シミュレーションが完了した後（Ｓ０７８）、動的配置先判断部１５は、ステップＳ０７９において、実施の形態３のステップＳ０６４と同様に、重みテーブル及び補正値テーブルにシミュレーション結果を反映させる。
動的配置先判断部１５は、実施の形態３と同様に、各ノードをグループに区分するとともに、グループごとに最終世代における余りリソース量の平均値を求めるが、このとき、最終世代の各ノードの状態ランクに従い、各ノードのリソースの余り量に重みをつけ、その重みがついた余りリソース量の値をもとにグループの平均値を求める。
重みのつけ方としては、状態ランクが高いほど、リソースの余り量を低くすることが考えられる。
リソースの余り量を低くする方法は、リソース余り量から状態ランクの値を減算する方法であってもよいし、ソース余り量を状態ランクの値で除算する方法であってもよいし、その他数式により写像する方法でもよい。
【００８９】
このように、本実施の形態では、重み付け予測に対し適時現状を反映させることで、重み付け予測の再計算を不要とし、予測に要する時間を短縮することができる。
【００９０】
以上、本実施の形態では、動的重み反映機能を有するリソース管理装置を説明した。
管理部は、ＶＭの追加やリソースの変更などの履歴を保存する。
また、動的配置先判断部は、シミュレーション実施中、全ての状態にランクを与える。
更に、動的配置先判断部は、適時シミュレーション中の世代の状態と管理部の履歴とを比較し、各世代が現実と合致する場合ランクを上げ、シミュレーションを実施する。
また、動的配置先判断部は、シミュレーションの結果を重み補正に反映させる際に、ランクをその比較に反映させる。
【００９１】
以上、実施の形態１〜４を説明したが、これらの実施の形態のうち、２つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、１つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、２つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
【００９２】
最後に、実施の形態１〜４に示したリソース管理装置１００のハードウェア構成例について説明する。
図２２は、実施の形態１〜４に示すリソース管理装置１００のハードウェア資源の一例を示す図である。
なお、図２２の構成は、あくまでもリソース管理装置１００のハードウェア構成の一例を示すものであり、リソース管理装置１００のハードウェア構成は図２２に記載の構成に限らず、他の構成であってもよい。
【００９３】
図２２において、リソース管理装置１００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。
また、磁気ディスク装置９２０の代わりに、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
実施の形態１〜４で説明した「〜記憶部」は、ＲＡＭ９１４、磁気ディスク装置９２０等により実現される。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００９４】
通信ボード９１５は、ネットワークに接続されている。
例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）、ＳＡＮ（ストレージエリアネットワーク）などに接続されている。
【００９５】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００９６】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００９７】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
リソース管理装置１００の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００９８】
上記プログラム群９２３には、実施の形態１〜４の説明において「〜部」（「〜記憶部」以外、以下同様）として説明している機能を実行するプログラムが記憶されている。
プログラムは、ＣＰＵ９１１により読み出され実行される。
【００９９】
ファイル群９２４には、実施の形態１〜４の説明において、「〜の判断」、「〜の算出」、「〜の照合」、「〜の取得」、「〜の比較」、「〜の写像」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」、「〜の決定」、「〜の正規化」、「〜のシミュレーション」、「〜の模擬」、「〜の生成」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が、ディスクやメモリなどの記憶媒体にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、ディスクやメモリなどの記憶媒体にファイルとして記憶されてもよい。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記憶媒体に記憶される。
ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出される。
そして、読み出された情報やデータや信号値や変数値やパラメータは、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１〜４で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示す。
データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ等の記憶媒体に記録される。
また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【０１００】
また、実施の形態１〜４の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。
すなわち、実施の形態１〜４で説明したフローチャートに示すステップ、手順、処理により、本発明に係る「リソース管理方法」を実現することができる。
また、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。
或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。
ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ（登録商標）ディスク、ＤＶＤ等の記憶媒体に記憶される。
プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。
すなわち、プログラムは、実施の形態１〜４の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜４の「〜部」の手順や方法をコンピュータに実行させるものである。
【０１０１】
このように、実施の形態１〜４に示すリソース管理装置１００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータである。
そして、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【符号の説明】
【０１０２】
０１  管理部、０２  ＶＭ配置部、０３  計測処理部、０４  評価部、０５  システム情報記憶部、０６  制御情報記憶部、０７  重みテーブル記憶部、０８  計測情報記憶部、０９  配置情報記憶部、１０  補正値テーブル記憶部、１１  重み算出部、１２  リソース写像計算部、１３  リソース評価部、１４  静的配置先判断部、１５  動的配置先判断部、１６  制御部、１００  リソース管理装置。
【図１】
2014021847.tif 000003
【図２】
2014021847.tif 000004
【図３】
2014021847.tif 000005
【図４】
2014021847.tif 000006
【図５】
2014021847.tif 000007
【図６】
2014021847.tif 000008
【図７】
2014021847.tif 000009
【図８】
2014021847.tif 000010
【図９】
2014021847.tif 000011
【図１０】
2014021847.tif 000012
【図１１】
2014021847.tif 000013
【図１２】
2014021847.tif 000014
【図１３】
2014021847.tif 000015
【図１４】
2014021847.tif 000016
【図１５】
2014021847.tif 000017
【図１６】
2014021847.tif 000018
【図１７】
2014021847.tif 000019
【図１８】
2014021847.tif 000020
【図１９】
2014021847.tif 000021
【図２０】
2014021847.tif 000022
【図２１】
2014021847.tif 000023
【図２２】
2014021847.tif 000024