(57)【要約】【課題】一時的又はスパイク的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定すること。【解決手段】ＶＭ負荷モデル化部１２が、ＶＭ毎に、ＶＭ負荷モデルを作成する。そして、推測部１５が、サーバ上で稼働しているＶＭ群のＶＲ負荷モデルと移動対象仮想マシンのＶＲ負荷モデルに基づいて、リソース使用率推測データを移動元サーバ以外のサーバ毎に作成する。また、競合発生モデル化部１９が、サーバのリソース使用率に基づいてリソース競合発生モデルを作成する。そして、競合リスク評価部２１が、移動元サーバ以外のサーバ毎に、リソース使用率推測データとリソース競合発生モデルに基づいてリソース競合発生確率の期待値を算出する。そして、競合リスク評価部２１は、期待値に基づいて、移動元サーバ以外のサーバ毎に、リスク評価指標を算出し、リスク評価指標に基づいて移動先サーバを特定する。【選択図】図２
2020003929.tif 000002
【特許請求の範囲】
【請求項１】
情報処理システムで稼働する仮想マシン毎に、仮想マシンのリソース使用率の連続的な確率分布であるＶＭ負荷モデルを作成する第１作成部と、
第１仮想マシンの移動先物理マシンを特定する指示を受けたときに、該第１仮想マシンが稼働している第１物理マシン以外の物理マシン毎に、物理マシン上で稼働している仮想マシン群のＶＭ負荷モデルと前記第１仮想マシンのＶＭ負荷モデルに基づいて、物理マシンのリソース使用率の確率分布を推測したデータであるリソース使用率推測データを作成する推測部と、
物理マシンのリソース使用率に基づいて、物理マシンのリソース使用率とリソースの競合発生確率との関係をモデル化したリソース競合発生モデルを作成する第２作成部と、
前記第１物理マシン以外の物理マシン毎に、前記リソース使用率推測データと前記リソース競合発生モデルに基づいてリソースの競合発生確率の統計値を算出する算出部と、
前記第１物理マシン以外の物理マシン毎に算出された前記統計値に基づいて前記移動先物理マシンを特定し、特定した移動先物理マシンの情報を出力する特定部と
を有することを特徴とする運用管理装置。
【請求項２】
前記第１作成部は、前記ＶＭ負荷モデルを第１時間間隔で所定の期間を対象に作成し、
前記推測部は、前記リソース使用率推測データを前記第１時間間隔で前記所定の期間を対象に作成し、
前記算出部は、前記統計値を前記第１時間間隔で前記所定の期間を対象に算出し、前記第１時間間隔で前記所定の期間を対象に算出した統計値に基づいてリスク評価指標を算出し、
前記特定部は、前記リスク評価指標に基づいて前記移動先物理マシンを特定することを特徴とする請求項１に記載の運用管理装置。
【請求項３】
前記第１作成部は、前記第１時間間隔のリソース使用率の各値に正規分布を対応させ、各値に対応する正規分布を前記第１時間間隔のリソース使用率の全ての値について足し合わせることで前記ＶＭ負荷モデルを作成することを特徴とする請求項２に記載の運用管理装置。
【請求項４】
前記推測部は、物理マシンで稼働する各仮想マシンのＶＭ負荷モデルからリソース使用率をサンプリングして足し合わせることを繰り返すことで前記リソース使用率推測データを作成することを特徴とする請求項２又は３に記載の運用管理装置。
【請求項５】
前記第２作成部は、物理マシンについて第２時間間隔で計測されたリソース使用率に基づいて前記第２時間間隔が複数個含まれる第３時間間隔毎のリソース競合発生有無を判定し、前記競合発生確率を前記第３時間間隔毎のリソース競合発生有無に基づいて計算する処理をリソース使用率の値に基づく複数の段階について行うことで前記リソース競合発生モデルを作成することを特徴とする請求項２、３又は４に記載の運用管理装置。
【請求項６】
前記リソースはＣＰＵであり、前記所定の期間は１週間であり、前記第１時間間隔は１時間であり、前記第２時間間隔は１秒であり、前記第３時間間隔は１分であり、前記段階の数は１０であることを特徴とする請求項５に記載の運用管理装置。
【請求項７】
コンピュータが、
情報処理システムで稼働する仮想マシン毎に、仮想マシンのリソース使用率の連続的な確率分布であるＶＭ負荷モデルを作成し、
第１仮想マシンの移動先物理マシンを特定する指示を受けたときに、該第１仮想マシンが稼働している第１物理マシン以外の物理マシン毎に、物理マシン上で稼働している仮想マシン群のＶＭ負荷モデルと前記第１仮想マシンのＶＭ負荷モデルに基づいて、物理マシンのリソース使用率の確率分布を推測したデータであるリソース使用率推測データを作成し、
物理マシンのリソース使用率に基づいて、物理マシンのリソース使用率とリソースの競合発生確率との関係をモデル化したリソース競合発生モデルを作成し、
前記第１物理マシン以外の物理マシン毎に、前記リソース使用率推測データと前記リソース競合発生モデルに基づいてリソースの競合発生確率の統計値を算出し、
前記第１物理マシン以外の物理マシン毎に算出された前記統計値に基づいて前記移動先物理マシンを特定し、特定した移動先物理マシンの情報を出力する
処理を実行することを特徴とする移動先推奨方法。
【請求項８】
コンピュータに、
情報処理システムで稼働する仮想マシン毎に、仮想マシンのリソース使用率の連続的な確率分布であるＶＭ負荷モデルを作成し、
第１仮想マシンの移動先物理マシンを特定する指示を受けたときに、該第１仮想マシンが稼働している第１物理マシン以外の物理マシン毎に、物理マシン上で稼働している仮想マシン群のＶＭ負荷モデルと前記第１仮想マシンのＶＭ負荷モデルに基づいて、物理マシンのリソース使用率の確率分布を推測したデータであるリソース使用率推測データを作成し、
物理マシンのリソース使用率に基づいて、物理マシンのリソース使用率とリソースの競合発生確率との関係をモデル化したリソース競合発生モデルを作成し、
前記第１物理マシン以外の物理マシン毎に、前記リソース使用率推測データと前記リソース競合発生モデルに基づいてリソースの競合発生確率の統計値を算出し、
前記第１物理マシン以外の物理マシン毎に算出された前記統計値に基づいて前記移動先物理マシンを特定し、特定した移動先物理マシンの情報を出力する
処理を実行させることを特徴とする移動先推奨プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、運用管理装置、移動先推奨方法及び移動先推奨プログラムに関する。
【背景技術】
【０００２】
複数のユーザが共有リソースを利用するパブリッククラウドでは、同一サーバ（物理マシン）で稼働する複数の仮想マシンの間でリソースの競合が発生することがある。ここで、リソースとしては、ＣＰＵ（Central  Processing  Unit）、ネットワーク、ディスク等がある。
【０００３】
競合の発生によって同一サーバ上の仮想マシンの動作が重くなり、ユーザのサービスの性能品質が低下する。このため、サーバの負荷が高くなったときに、サーバで稼働している仮想マシンを他のサーバに移動させることが行われる。仮想マシンの移動先は、曜日及び時間帯毎のリソース使用率の平均値等の統計値に基づきサーバを評価することで決められる。
【０００４】
なお、仮想マシンの移動については、サービス中断時間が許容サービス中断時間以内と判定されるサーバを移動先のサーバとして抽出することによって、集約効率を向上する技術がある。また、この技術は、サーバの使用リソース量が上限閾値を超えると予想される場合、サーバの使用リソース量が上限閾値を下回るように使用リソース量の大きい仮想マシンから順に移動対象の仮想マシン候補を抽出することで、リソース使用効率を向上する。また、この技術は、サーバの使用リソース量が下限閾値を所定時間下回る場合、当該サーバに配置されている仮想マシンを他のサーバに移動することによって、電力使用効率を向上する。
【０００５】
また、クライアント装置に所定のサービスを提供する複数のサーバ装置の仮想化を実行する仮想化実行装置が、サーバ装置の仮想化環境の利便性を向上する技術がある。この仮想化実行装置は、クライアント装置を操作するユーザの特性情報と、１又は複数のＶＭ（Virtual  Machine：仮想マシン）から構成されるシステムのシステム構成情報を格納する。そして、この仮想化実行装置は、格納された特性情報及びシステム構成情報を用いて、ＶＭの複数種類のリソースの、所定の期間毎の使用予定量を推測する。そして、この仮想化実行装置は、推測した複数種類のリソースの使用予定量を用いて、ＶＭを複数のサーバ装置のいずれに配置するかの配置最適化、及びＶＭの動作に必要となるディスク領域を複数のストレージ装置のいずれに割り当てるかの割当最適化を実行する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２３９０９５号公報
【特許文献２】特開２０１６−１１０２４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
曜日及び時間帯毎のリソース使用率の平均値等の統計値に基づきサーバを評価して仮想マシンの移動先を決めると、リソース使用率は統計処理によってまるめられてしまうため、一時的又はスパイク的な高負荷によるリソース競合が発生するという問題がある。
【０００８】
図２８は、一時的又はスパイク的な高負荷によるリソース競合の発生を説明するための図である。図２８の（Ａ）に示すように、同じ月曜日の同じ時間帯でも、５／２１と５／２８では１分毎に監視したリソース使用率が異なる。この理由は、（Ａ）ではオンデマンドのバッチ処理等が行われており、オンデマンドのバッチ処理等では、同じ曜日及び時間帯でもＶＭのリソース負荷のバラツキが大きいためである。例えば、帳票出力や集計処理では、ユーザの利用タイミングでリソース高負荷が発生する。このように、リソース高負荷が発生するとリソース競合が発生する。しかしながら、曜日及び時間帯毎のリソース使用率では、統計処理のため、このような一時的なリソース高負荷は、特定されることがなく、移動先のサーバの評価に用いられない。
【０００９】
また、図２８の（Ｂ）に示すように、１分毎のリソース監視では現れることがなく１秒毎のリソース監視で現れるスパイク的な高負荷があり、スパイク的な高負荷によりリソース競合が発生しする。しかしながら、リソース監視によるクラウド基盤へのオーバーヘッドは大きいため、１秒毎のリソース監視は行われることはない。したがって、このようなスパイク的な高負荷は、特定されることはなく、移動先のサーバの評価に用いられない。なお、クラウド基盤とは、クラウドシステムが有するリソースを仮想化して提供する基盤である。
【００１０】
本発明は、１つの側面では、一時的又はスパイク的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定することを目的とする。
【課題を解決するための手段】
【００１１】
１つの態様では、運用管理装置は、第１作成部と推測部と第２作成部と算出部と特定部とを有する。前記第１作成部は、情報処理システムで稼働する仮想マシン毎に、仮想マシンのリソース使用率の連続的な確率分布であるＶＭ負荷モデルを作成する。前記推測部は、第１仮想マシンの移動先物理マシンを特定する指示を受けたときに、該第１仮想マシンが稼働している第１物理マシン以外の物理マシン毎に、物理マシンのリソース使用率の確率分布を推測したデータであるリソース使用率推測データを作成する。前記推測部は、物理マシン上で稼働している仮想マシン群のＶＭ負荷モデルと前記第１仮想マシンのＶＭ負荷モデルに基づいて、前記リソース使用率推測データを作成する。前記第２作成部は、物理マシンのリソース使用率に基づいて、物理マシンのリソース使用率とリソースの競合発生確率との関係をモデル化したリソース競合発生モデルを作成する。前記算出部は、前記第１物理マシン以外の物理マシン毎に、前記リソース使用率推測データと前記リソース競合発生モデルに基づいてリソースの競合発生確率の統計値を算出する。前記特定部は、前記第１物理マシン以外の物理マシン毎に算出された前記統計値に基づいて前記移動先物理マシンを特定し、特定した移動先物理マシンの情報を出力する。
【発明の効果】
【００１２】
１つの側面では、本発明は、一時的又はスパイク的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、実施例に係るクラウド基盤管理装置によるＶＭ移動先の特定方法を説明するための図である。
【図２】図２は、実施例に係るクラウド基盤管理装置の機能構成を示す図である。
【図３】図３は、ＶＭリソース使用率データの例を示す図である。
【図４Ａ】図４Ａは、ＶＭの負荷確率分布の生成を説明するための図である。
【図４Ｂ】図４Ｂは、負荷確率分布の形状決定を説明するための図である。
【図５】図５は、ＶＭ負荷モデル記憶部がＶＭ毎に記憶するＶＭ負荷モデルの情報の一例を示す図である。
【図６】図６は、構成情報の一例を示す図である。
【図７】図７は、移動対象ＶＭの情報の一例を示す図である。
【図８】図８は、リソース使用率推測データの作成方法を説明するための図である。
【図９】図９は、推測データ記憶部が記憶するリソース使用率推測データの一例を示す図である。
【図１０】図１０は、リソース使用率データの一例を示す図である。
【図１１】図１１は、微小間隔使用率記憶部がサーバ毎に記憶するリソース使用率データの一例を示す図である。
【図１２Ａ】図１２Ａは、リソース競合の発生確率の算出を説明するための図である。
【図１２Ｂ】図１２Ｂは、リソース競合発生モデルの生成を説明するための図である。
【図１３】図１３は、リソース競合発生モデルの情報の一例を示す図である。
【図１４】図１４は、競合リスク評価部による処理を説明するための図である。
【図１５】図１５は、ＶＭ移動先サーバ情報の一例を示す図である。
【図１６】図１６は、ＶＭ負荷モデル化部による処理のフローを示すフローチャートである。
【図１７】図１７は、競合発生モデル化部による処理のフローを示すフローチャートである。
【図１８】図１８は、ＶＭ配置を変更する処理のフローを示すフローチャートである。
【図１９】図１９は、ＶＭ負荷モデル化処理のフローを示すフローチャートである。
【図２０】図２０は、近似度合計算処理のフローを示すフローチャートである。
【図２１】図２１は、推測処理のフローを示すフローチャートである。
【図２２】図２２は、リソース使用率推測処理のフローを示すフローチャートである。
【図２３】図２３は、競合発生モデル化処理のフローを示すフローチャートである。
【図２４】図２４は、競合発生確率算出処理のフローを示すフローチャートである。
【図２５】図２５は、競合発生モデル生成処理のフローを示すフローチャートである。
【図２６】図２６は、競合リスク評価処理のフローを示すフローチャートである。
【図２７】図２７は、実施例に係る移動先推奨プログラムを実行するコンピュータのハードウェア構成を示す図である。
【図２８】図２８は、一時的又はスパイク的な高負荷によるリソース競合の発生を説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示する運用管理装置、移動先推奨方法及び移動先推奨プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例】
【００１５】
まず、実施例に係るクラウド基盤管理装置によるＶＭ移動先の特定方法について説明する。図１は、実施例に係るクラウド基盤管理装置によるＶＭ移動先の特定方法を説明するための図である。図１に示すように、実施例に係るクラウド基盤管理装置は、各ＶＭについて、曜日及び時間帯毎にリソース使用率を連続的な確率分布でモデル化することでＶＭ負荷モデルを作成する（１）。例えば、実施例に係るクラウド基盤管理装置は、１時間毎のリソース使用率を連続的な確率分布でモデル化する。図１では、ＶＭ＃１〜ＶＭ＃３について、１時間毎のＶＭ負荷モデルが作成される。なお、リソース使用率の値は％である。
【００１６】
そして、実施例に係るクラウド基盤管理装置は、移動対象ＶＭの移動先サーバを特定する指示を受けると、サーバで稼働するＶＭと移動対象ＶＭのＶＭ負荷モデルに基づいてサーバのリソース使用率推測データをサーバ毎に作成する（２）。ここで、リソース使用率推測データは、移動対象ＶＭがサーバに移動された場合にリソース使用率の確率分布を推測したデータである。実施例に係るクラウド基盤管理装置は、リソース使用率推測データを曜日及び時間帯毎に作成する。図１では、例えば、ＶＭ＃１を移動対象ＶＭとし、サーバ＃１でＶＭ＃２とＶＭ＃３が稼働するとすると、ＶＭ＃１〜ＶＭ＃３のＶＭ負荷モデルに基づいてサーバ＃１のリソース使用率推測データが作成される。リソース使用率推測データは、サーバ＃２等の他のサーバについても作成される。
【００１７】
また、実施例に係るクラウド基盤管理装置は、サーバのリソース使用率を用いて、サーバのリソース使用率とリソースの競合が発生する確率との関係をモデル化したリソース競合発生モデルを作成する（３）。実施例に係るクラウド基盤管理装置は、リソース競合発生モデルを作成する際に、一般的な監視間隔のリソース使用率だけではなく、監視間隔より小さい微小間隔のリソース使用率も用いる。例えば、監視間隔を１分とすると微小間隔は１秒である。
【００１８】
そして、実施例に係るクラウド基盤管理装置は、リソース使用率推測データとリソース競合発生モデルに基づいてリソースの競合リスクをサーバ毎に評価し、競合リスクに基づいて移動先サーバを特定して移動先サーバの情報を表示装置に表示する（４）。図１では、サーバ＃１のリスク評価指標が「０．７」、サーバ＃２のリスク評価指標が「０．２」と評価され、サーバ＃２が移動先サーバとして特定される。ここで、リスク評価指標は、リソースの競合リスクの評価結果を示す指標であり、値が小さいほど競合リスクが小さい。そして、実施例に係るクラウド基盤管理装置は、移動先サーバの情報としてサーバ＃２の情報を表示する。
【００１９】
このように、実施例に係るクラウド基盤管理装置は、リソース使用率の確率分布に基づいて移動先サーバを特定するので、一時的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定することができる。また、実施例に係るクラウド基盤管理装置は、微小間隔のリソース使用率に基づいて移動先サーバを特定するので、スパイク的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定することができる。
【００２０】
次に、実施例に係るクラウド基盤管理装置の機能構成について説明する。図２は、実施例に係るクラウド基盤管理装置の機能構成を示す図である。図２に示すように、実施例に係るクラウド基盤管理装置１は、ＶＭリソース使用率記憶部１１と、ＶＭ負荷モデル化部１２と、ＶＭ負荷モデル記憶部１３と、構成情報記憶部１４と、推測部１５とを有する。また、クラウド基盤管理装置１は、推測データ記憶部１６と、サーバリソース使用率記憶部１７と、微小間隔使用率記憶部１８と、競合発生モデル化部１９と、競合発生モデル記憶部２０と、競合リスク評価部２１とを有する。
【００２１】
ＶＭリソース使用率記憶部１１は、各ＶＭについて、リソース使用率を一定の時間間隔でＶＭリソース使用率データとして記憶する。ＶＭのリソース使用率は、パブリッククラウド２に含まれるＶＭが動作するサーバから収集される。図３は、ＶＭリソース使用率データの例を示す図である。なお、以下では、リソースがＣＰＵである場合を基本として説明する。図３（ａ）は、ＶＭ＃１のＶＭリソース使用率データを示し、図３（ｂ）は、ＶＭ＃２のＶＭリソース使用率データを示す。図３に示すように、ＶＭリソース使用率記憶部１１は、ＶＭ毎に、日付、時刻及びＣＰＵ使用率を１分間隔で記憶する。
【００２２】
日付及び時刻は、ＣＰＵ使用率が収集された日及び時刻である。ＣＰＵ使用率は、ＶＭがＣＰＵを使用した割合である。ＣＰＵ使用率の単位は、パーセント（％）である。例えば、２０１７年５月７日の９時のＶＭ＃１のＣＰＵ使用率は２０％である。
【００２３】
ＶＭ負荷モデル化部１２は、曜日及び時間帯毎に、ＶＭリソース使用率データに基づいてＶＭの負荷確率分布を生成し、生成した負荷確率分布の形状を決定することでＶＭ負荷モデルを作成する。図４Ａは、ＶＭの負荷確率分布の生成を説明するための図であり、図４Ｂは、負荷確率分布の形状決定を説明するための図である。
【００２４】
ＶＭ負荷モデル化部１２は、様々な確率分布の形状を表現できるように、カーネル密度推定により、負荷確率分布を生成する。すなわち、ＶＭ負荷モデル化部１２は、図４Ａに示すように、リソース使用率の１点毎に正規分布を対応させて例えば１時間内のリソース使用率について足し合わせることで、リソース使用率の確率密度関数を負荷確率分布として生成する。
【００２５】
具体的には、ＶＭ負荷モデル化部１２は、
【数１】
2020003929.tif 000003
を計算することで、負荷確率分布を生成する。式（１）において、Ｎは１時間内のリソース使用率ｘiの点数であり、ｈはＶＭ負荷モデルの近似度合を示すパラメータである。図４Ａは、ＶＭ＃１の負荷確率分布を示す。
【００２６】
また、ＶＭ負荷モデル化部１２は、交差検証により、リソース使用率ｘiをＶＭ負荷モデル計算用のグループと近似度合の決定用のグループに分割し、２つのグループを利用して尤度関数を計算する。すなわち、ＶＭ負荷モデル化部１２は、図４Ｂに示すように、モデル計算用のグループのリソース使用率ｘiを用いて確率分布ｆを計算し、近似度合の決定用のグループのリソース使用率ｘiを用いて尤度関数Ｌを計算する。
【００２７】
具体的には、ＶＭ負荷モデル化部１２は、
【数２】
2020003929.tif 000004
を計算することで、尤度関数Ｌを計算する。式（２）において、Ｍは近似度合の決定用のグループのリソース使用率ｘiの点数である。
【００２８】
そして、ＶＭ負荷モデル化部１２は、グループ分割を変えながら尤度関数Ｌを計算し、尤度関数Ｌが最大になるｈを、推定法としてグリッドサーチを用いて推定することで負荷確率分布の形状を決定する。
【００２９】
ＶＭ負荷モデル記憶部１３は、ＶＭ負荷モデル化部１２により作成されたＶＭ負荷モデルの情報をＶＭ毎に記憶する。図５は、ＶＭ負荷モデル記憶部１３がＶＭ毎に記憶するＶＭ負荷モデルの情報の一例を示す図である。図５に示すように、ＶＭ負荷モデル記憶部１３は、ＶＭ毎に、対象期間、ｈ及び対象期間内のＣＰＵ使用率を対象期間を１時間ずつずらしながら１週間分記憶する。すなわち、ＶＭ負荷モデル記憶部１３は、曜日及び時間帯毎にｈ及び対象曜日及び時間帯内のＣＰＵ使用率を記憶する。
【００３０】
対象期間は、ＶＭ負荷モデルの曜日及び時間帯である。対象期間内のＣＰＵ使用率は、ＶＭ負荷モデルの作成に用いられたＣＰＵ使用率である。例えば、月曜日の９時から１０時の時間帯のＶＭ負荷モデルの近似度合は０．７であり、ＶＭ負荷モデルの作成に用いられたＣＰＵ使用率は２０％、３５％、３０％、１０％、８％、４％及び１％である。
【００３１】
構成情報記憶部１４は、パブリッククラウド２の構成情報を記憶する。図６は、構成情報の一例を示す図である。図６（ａ）は、サーバに関する構成情報であり、図６（ｂ）は、ＶＭに関する構成情報である。図６（ａ）に示すように、サーバに関する構成情報には、サーバ名、ＣＰＵ数、オーバーコミット率、メモリ量及び稼働ＶＭリストが含まれる。
【００３２】
サーバ名は、サーバを識別する名前である。ＣＰＵ数は、サーバが有するＣＰＵの数である。オーバーコミット率は、（ＶＭに割り当てることができるＣＰＵ数の合計）／（サーバが有するＣＰＵ数の合計）である。一般にＶＭは１００％稼働するとは限らないので、サーバが有するＣＰＵ数の合計よりも多い数のＣＰＵをＶＭに割り当てることができる。メモリ量は、サーバが有するメインメモリの容量である。メモリ量の単位はＧＢ（ギガバイト）である。稼働ＶＭリストは、サーバで稼働するＶＭの名前である。
【００３３】
例えば、サーバ＃１は、１６個のＣＰＵと２４ＧＢのメインメモリを有する。サーバ＃１のオーバーコミット率は１であり、ＶＭ＃１、ＶＭ＃２及びＶＭ＃３がサーバ＃１で稼働する。
【００３４】
また、図６（ｂ）に示すように、ＶＭに関する構成情報には、ＶＭ名、必要ＣＰＵ数及び必要メモリ量が含まれる。ＶＭ名は、ＶＭを識別する名前である。必要ＣＰＵ数は、ＶＭの稼働に必要なＣＰＵの数である。必要メモリ量は、ＶＭの稼働に必要なメインメモリの量である。必要メモリ量の単位はＧＢである。例えば、ＶＭ＃１は、稼働にあたってＣＰＵが１つと２ＧＢのメインメモリが必要である。
【００３５】
推測部１５は、利用者から移動対象ＶＭの情報とともに移動先サーバの特定指示を受け付けると、ＶＭ負荷モデル記憶部１３と構成情報記憶部１４に基づいて曜日及び時間帯毎の各サーバのリソース使用率推測データを作成する。
【００３６】
図７は、移動対象ＶＭの情報の一例を示す図である。図７に示すように、移動対象ＶＭの情報には、ＶＭ名、必要ＣＰＵ数及び必要メモリ量が含まれる。ＶＭ名は、移動対象ＶＭの名前である。必要ＣＰＵ数は、移動対象ＶＭの稼働に必要なＣＰＵの数である。必要メモリ量は、移動対象ＶＭの稼働に必要なメインメモリの量である。必要メモリ量の単位はＧＢである。例えば、図７では、稼働にあたってＣＰＵが２つと１２ＧＢのメインメモリが必要であるＶＭ＃１が移動対象ＶＭである。
【００３７】
図８は、リソース使用率推測データの作成方法を説明するための図である。図８に示すように、推測部１５は、サーバで稼働するＶＭのＶＭ負荷モデルからリソース使用率をサンプリングしてサーバのリソース使用率を計算することを繰り返すことでリソース使用率推測データを作成する。推測部１５は、曜日及び時間帯毎のＶＭ負荷モデルを用いて曜日及び時間帯毎のサーバのリソース使用率を計算する。また、推測部１５は、リソース使用率推測データをサーバ毎に作成する。
【００３８】
図８では、サーバ＃１のリソース使用率推測データが作成される。例えば、サーバ＃１ではＶＭ＃２とＶＭ＃３が稼働しており、ＶＭ＃１が移動対象ＶＭである。推測部１５は、サーバに搭載予定のＶＭのリソース使用率の全ての組み合わせからリソース使用率推測データを算出すると現実的な時間で計算が終わらないため、各ＶＭ負荷モデルからＶＭのリソース使用率をサンプリングする。
【００３９】
推測部１５は、マルコフ連鎖モンテカルロ法（ＭＣＭＣ法：Markov  Chain  Monte  Carlo  methods）等、連続的な分布からサンプリングする手法を利用してサンプリングする。また、推測部１５は、絶対に観測されないデータのサンプリングを防止するため、［０，１００］範囲以外のリソース使用率の確率を０に設定する。
【００４０】
ＶＭ＃１のＶＭ負荷モデルからＶＭ＃１のリソース使用率ＸVM1がサンプリングされ、ＶＭ＃２のＶＭ負荷モデルからＶＭ＃２のリソース使用率ＸVM2がサンプリングされ、ＶＭ＃３のＶＭ負荷モデルからＶＭ＃３のリソース使用率ＸVM3がサンプリングされる。そして、推測部１５は、サーバ＃１のリソース使用率Ｘserver1を以下の式（３）を用いて計算する。
【数３】
2020003929.tif 000005
【００４１】
式（３）で、ＣＰＵserver1はサーバ＃１のＣＰＵの数であり、Ｖはサーバ＃１上のＶＭの数であり、ＣＰＵVMiは各ＶＭ＃ｉが利用するＣＰＵの数であり、ＶＭ＃ｉはサーバ＃１上のＶＭである。図８では、Ｖは３である。式（３）では、Ｘserver1が１００％を超えるのを防ぐために１００と比較して小さい値がとられる。推測部１５は、サーバ毎にリソース使用率を計算する。
【００４２】
推測データ記憶部１６は、推測部１５により計算されたリソース使用率推測データを曜日及び時間帯毎に記憶する。また、推測データ記憶部１６は、リソース使用率推測データをサーバ毎に記憶する。ただし、サンプリングしたリソース使用率ＸVMiがあれば、構成情報と式（３）を用いてサーバのリソース使用率推測データを計算することができる。そこで、推測データ記憶部１６は、サンプリングしたリソース使用率をリソース使用率推測データとして記憶してもよい。
【００４３】
図９は、推測データ記憶部１６が記憶するリソース使用率推測データの一例を示す図である。図９（ａ）は、サーバ＃１のリソース使用率推測データを示し、図９（ｂ）は、サーバ＃２のリソース使用率推測データを示す。図９に示すように、リソース使用率推測データには、対象期間とサンプリングで推測したＣＰＵ使用率とが含まれる。対象期間は、リソース使用率推測データの曜日及び時間帯である。サンプリングで推測したＣＰＵ使用率は、推測部１５によりＶＭ負荷モデルからサンプリングされたリソース使用率である。例えば、サーバ＃１の月曜日の９時から１０時までの期間を対象としてＶＭ負荷モデルからサンプリングされたリソース使用率は１００％、２３％、４５％、３％、１％、２％及び４％である。
【００４４】
サーバリソース使用率記憶部１７は、サーバの一定時間間隔のリソース使用率をリソース使用率データとしてサーバ毎に記憶する。ここで、リスース使用率は、サーバのリソースのうちＶＭで使用できるリソースに対する割合である。図１０は、リソース使用率データの一例を示す図である。図１０は、サーバ＃１のリソース使用率データを示す。
【００４５】
図１０に示すように、リソース使用率データには、日付、時刻及びＣＰＵ使用率が含まれる。日付及び時刻は、ＣＰＵ使用率が収集された日及び時刻である。図１０では、１分間隔でリソース使用率が収集される。ＣＰＵ使用率は、サーバがＣＰＵを使用した割合である。ＣＰＵ使用率の単位は、パーセント（％）である。例えば、２０１７年４月２日の９時のサーバ＃１のＣＰＵ使用率は５５％である。
【００４６】
微小間隔使用率記憶部１８は、サーバリソース使用率記憶部１７が記憶するリソース使用率データよりも短い時間間隔のリソース使用率データをサーバ毎に記憶する。ここでは、微小間隔使用率記憶部１８がリソース使用率を記憶する時間間隔を微小間隔と呼び、サーバリソース使用率記憶部１７がリソース使用率を記憶する時間間隔を通常間隔と呼ぶ。
【００４７】
図１１は、微小間隔使用率記憶部１８がサーバ毎に記憶するリソース使用率データの一例を示す図である。図１１に示すように、微小間隔使用率記憶部１８は、ＣＰＵ使用率を１秒間隔で記憶する。この例では、微小間隔使用率記憶部１８は、サーバリソース使用率記憶部１７と比較して１／６０の時間間隔でＣＰＵ使用率を記憶する。
【００４８】
競合発生モデル化部１９は、サーバリソース使用率記憶部１７と微小間隔使用率記憶部１８に基づいてリソース競合の発生確率を算出し、算出した発生確率を近似するリソース競合発生モデルを生成する。
【００４９】
競合発生モデル化部１９は、微小間隔のリソース使用率を用いてリソース競合の発生を検知し、離散化したリソース使用率の段階毎に、通常間隔においてリソース競合の発生が１回でも検知されたか否かに基づいてリソース競合の発生有無を判定する。ここで、競合発生モデル化部１９は、リソース使用率の段階を、通常間隔のリソース使用率に基づいて決定する。そして、競合発生モデル化部１９は、通常間隔におけるリソース競合の発生有無の判定を複数の通常間隔について繰り返すことで、リソース競合の発生確率を算出する。
【００５０】
図１２Ａは、リソース競合の発生確率の算出を説明するための図である。図１２Ａでは、リソース使用率は１０段階に離散化されている。図１２Ａに示すように、ｉ（ｉ＝１，・・・，１０）段階目のリソース競合の発生確率ｐiは、以下の式（４）で計算される。
【数４】
2020003929.tif 000006
【００５１】
式（４）で、ｃiはｉ段階目に関してリソース競合の発生有無が判定された回数であり、ｄiはｉ段階目に関してリソース競合の発生有と判定された回数である。
【００５２】
そして、競合発生モデル化部１９は、リソース使用率が１００％に近づくとリソース競合の発生確率の増加率も増加する特性を表現できるように、段階毎に算出したリソース競合発生確率を近似するリソース競合発生モデルを作成する。例えば、競合発生モデル化部１９は、段階毎に算出したリソース競合発生確率を最小二乗法等を用いてべき関数に近似する。
【００５３】
図１２Ｂは、リソース競合発生モデルの生成を説明するための図である。図１２Ｂに示すように、競合発生モデル化部１９は、段階毎に算出したリソース競合発生確率を式（５）で近似する。
【数５】
2020003929.tif 000007
【００５４】
式（５）で、ｐはリソース競合発生確率であり、ｕはサーバのリソース使用率であり、ｎは１以上の係数である。
【００５５】
競合発生モデル記憶部２０は、リソース競合発生モデルの情報を記憶する。図１３は、リソース競合発生モデルの情報の一例を示す図である。図１３に示すように、リソース競合発生モデルの情報には、モデルを表す関数と係数ｎが含まれる。図１３では、モデルを表す関数は式（５）に示した関数であり、係数ｎは３である。
【００５６】
競合リスク評価部２１は、推測データ記憶部１６と競合発生モデル記憶部２０に基づいて、リソース競合が発生する確率の期待値を算出し、算出した期待値に基づいて、リソース競合発生のリスクを評価するリスク評価指標をサーバ毎に算出する。そして、競合リスク評価部２１は、算出したリスク評価指標に基づいて移動先サーバを特定し、特定した移動先サーバの情報を表示装置に表示する。
【００５７】
競合リスク評価部２１は、指標算出部２１ａと特定部２１ｂとを有する。指標算出部２１ａは、サーバ毎に、リソース使用率推測データとリソース競合発生モデルを用いて曜日及び時間帯毎のリソース競合発生確率期待値を算出する。指標算出部２１ａは、曜日及び時間帯毎の全リソース使用率推測データを用いてリソース競合発生確率の平均値を計算することで曜日及び時間帯毎のリソース競合発生確率期待値を算出する。そして、指標算出部２１ａは、曜日及び時間帯毎のリソース競合発生確率期待値の基づいて、リスク評価指標をサーバ毎に算出する。
【００５８】
特定部２１ｂは、リスク評価指標が最も小さいサーバを移動先サーバとして特定し、特定した移動先サーバの情報を表示する。
【００５９】
図１４は、競合リスク評価部２１による処理を説明するための図である。図１４に示すように、競合リスク評価部２１は、曜日及び時間帯毎のリソース競合発生確率期待値を以下の式（６）を用いて算出する。
【数６】
2020003929.tif 000008
【００６０】
式（６）で、ｐexp(ｔ)は曜日及び時間帯ｔにおけるリソース競合発生確率の期待値であり、ｐi(ｔ)は曜日及び時間帯ｔにおけるリソース使用率推測データのｉ番目のデータのリソース競合発生確率である。ｕi(ｔ)は曜日及び時間帯ｔにおけるリソース使用率推測データのｉ番目のデータのリソース使用率であり、ｍは曜日及び時間帯ｔにおけるリソース使用率推測データの数である。ｍは、曜日及び時間帯ｔに依存しないサンプリングデータ数である。
【００６１】
そして、競合リスク評価部２１は、１週間におけるリソース競合発生確率期待値の統計値をリスク評価指標として算出する。統計値は、最大値、平均値、標準偏差又はそれらの組合せ等である。競合リスク評価部２１は、リスク評価指標をサーバ毎に算出する。図１４では、サーバ＃１のリスク評価指標が０．９と算出され、サーバ＃２のリスク評価指標が０．２と算出される。
【００６２】
そして、競合リスク評価部２１は、リスク評価指標が最も小さいサーバを移動先サーバとして特定し、特定した移動先サーバの情報を出力する。図１４では、サーバ＃２のリスク評価指標がサーバ＃１より小さいため、サーバ＃２が移動先サーバとして特定され、「サーバ＃２」が移動先サーバの情報として表示される。なお、競合リスク評価部２１は、リスク評価指標が小さい順に優先度をつけて、複数の移動先サーバの情報を表示してもよい。
【００６３】
図１５は、ＶＭ移動先サーバ情報の一例を示す図である。図１５に示すように、ＶＭ移動先サーバ情報には、ＶＭ移動先サーバ名が含まれる。図１５では、ＶＭ移動先サーバは、サーバ＃２である。
【００６４】
次に、クラウド基盤管理装置１による処理のフローを図１６〜図２６を用いて説明する。図１６は、ＶＭ負荷モデル化部１２による処理のフローを示すフローチャートである。図１６に示すように、ＶＭ負荷モデル化部１２は、ＶＭ負荷モデル化受付の状態にあり（ステップＳ１）、定期実行の曜日かつ時刻であるか否かを判定する（ステップＳ２）。例えば、定期実行は毎週日曜日の４時である。
【００６５】
そして、定期実行の曜日でない又は定期実行の時刻でない場合には、ＶＭ負荷モデル化部１２は、引き続きＶＭ負荷モデル化受付の状態に留まる。一方、定期実行の曜日かつ時刻である場合には、ＶＭ負荷モデル化部１２は、ＶＭ負荷モデルを作成するＶＭ負荷モデル化処理を行う（ステップＳ３）。そして、ＶＭ負荷モデル化部１２は、ＶＭ負荷モデル化機能の停止指示ありか否かを判定し（ステップＳ４）、停止指示なしの場合には、ステップＳ１に戻り、停止指示ありの場合には、処理を終了する。
【００６６】
このように、ＶＭ負荷モデル化部１２は、定期的にＶＭ負荷モデル化処理を行うことで、ＶＭ負荷モデルを作成することができる。
【００６７】
図１７は、競合発生モデル化部１９による処理のフローを示すフローチャートである。図１７に示すように、競合発生モデル化部１９は、リソース競合モデル化受付の状態にあり（ステップＳ１１）、実施指示ありか否かを判定する（ステップＳ１２）。そして、実施指示がない場合には、競合発生モデル化部１９は、引き続きリソース競合モデル化受付の状態に留まる。
【００６８】
一方、実施指示がある場合には、競合発生モデル化部１９は、リソース競合発生モデルを作成する競合発生モデル化処理を行う（ステップＳ１３）。そして、競合発生モデル化部１９は、リソース競合モデル化機能の停止指示ありか否かを判定し（ステップＳ１４）、停止指示なしの場合には、ステップＳ１１に戻り、停止指示ありの場合には、処理を終了する。
【００６９】
このように、競合発生モデル化部１９は、実施指示があると競合発生モデル化処理を行うことで、リソース競合発生モデルを作成することができる。
【００７０】
図１８は、ＶＭ配置を変更する処理のフローを示すフローチャートである。図１８に示すように、クラウド基盤管理装置１は、ＶＭ配置変更受付の状態にあり（ステップＳ２１）、ＶＭ配置変更指示ありか否かを判定する（ステップＳ２２）。そして、ＶＭ配置変更指示がない場合には、クラウド基盤管理装置１は、引き続きＶＭ配置変更受付の状態に留まる。
【００７１】
一方、ＶＭ配置変更指示がある場合には、クラウド基盤管理装置１は、リソース使用率推測データを作成する推測処理を行い（ステップＳ２３）、リソース競合リスクを評価する競合リスク評価処理を行う（ステップＳ２４）。そして、クラウド基盤管理装置１は、ＶＭ移動先サーバの情報を表示する（ステップＳ２５）。そして、クラウド基盤管理装置１は、ＶＭ配置変更機能の停止指示ありか否かを判定し（ステップＳ２６）、停止指示なしの場合には、ステップＳ２１に戻り、停止指示ありの場合には、処理を終了する。
【００７２】
このように、クラウド基盤管理装置１は、ＶＭ配置変更指示があると、推測処理及び競合リスク評価処理を行うことで、ＶＭの移動先のサーバの情報を表示することができる。
【００７３】
図１９は、ＶＭ負荷モデル化処理のフローを示すフローチャートである。図１９の処理は、図１６のステップＳ３の処理に対応する。図１９に示すように、ＶＭ負荷モデル化部１２は、ＶＭリソース使用率データを読み込み（ステップＳ３１）、ＶＭ負荷モデルの近似度合ｈを計算する近似度合計算処理を行う（ステップＳ３２）。
【００７４】
そして、ＶＭ負荷モデル化部１２は、ＶＭ負荷モデル記憶部１３にＶＭ負荷モデルの情報を格納し（ステップＳ３３）、サーバ内の全ＶＭのＶＭ負荷モデルを作成したか否かを判定する（ステップＳ３４）。そして、サーバ内にＶＭ負荷モデルを作成していないＶＭがある場合には、ＶＭ負荷モデル化部１２は、ステップＳ３１に戻って、次のＶＭについて処理を行う。
【００７５】
一方、サーバ内の全ＶＭのＶＭ負荷モデルを作成した場合には、ＶＭ負荷モデル化部１２は、全サーバを処理したか否かを判定し（ステップＳ３５）、処理していないサーバがある場合には、ステップＳ３１に戻って、次のサーバについて処理を行う。一方、全サーバを処理した場合には、ＶＭ負荷モデル化部１２は、ＶＭ負荷モデル化処理を終了する。
【００７６】
図２０は、近似度合計算処理のフローを示すフローチャートである。図２０に示すように、ＶＭ負荷モデル化部１２は、ＶＭのリソース使用率に正規分布を割り当てる（ステップＳ４１）。そして、ＶＭ負荷モデル化部１２は、ＶＭリソース使用率データを分割する（ステップＳ４２）。例えば、ＶＭ負荷モデル化部１２は、ＶＭリソース使用率データを４つのグループに分割する。
【００７７】
そして、ＶＭ負荷モデル化部１２は、１つを除いたグループを利用して尤度関数を作成し（ステップＳ４３）、残りの１グループで尤度関数が最大になるモデルの近似度合を計算する（ステップＳ４４）。そして、ＶＭ負荷モデル化部１２は、各グループを１回選択したか否かを判定し（ステップＳ４５）、選択されていないグループがある場合には、ステップＳ４３に戻る。
【００７８】
一方、各グループを１回選択した場合には、ＶＭ負荷モデル化部１２は、計算した各モデルの近似度合の平均を計算し（ステップＳ４６）、ｈとする。そして、ＶＭ負荷モデル化部１２は、全対象期間分を作成したか否かを判定し（ステップＳ４７）、作成していない対象期間がある場合には、ステップＳ４１に戻り、全対象期間分を作成した場合には、近似度計算処理を終了する。
【００７９】
このように、ＶＭ負荷モデル化部１２は、近似度合を計算することでＶＭ負荷モデルを作成することができる。
【００８０】
図２１は、推測処理のフローを示すフローチャートである。図２１の処理は、図１８のステップＳ２３の処理に対応する。図２１に示すように、推測部１５は、移動対象ＶＭの情報を読み込み（ステップＳ５１）、構成情報を読み込む（ステップＳ５２）。そして、推測部１５は、サーバにＶＭが移動可能かの判定に使う値を計算する（ステップＳ５３）。具体的には、推測部１５は、移動対象ＶＭも含めてサーバで稼働するＶＭが利用するＣＰＵの数の合計Ｎ、移動対象ＶＭも含めてサーバで稼働するＶＭの必要メモリ量の合計Ｓ、サーバのＣＰＵ数にオーバーコミット率を乗じた値Ｍを計算する。
【００８１】
そして、推測部１５は、サーバにＶＭ移動が可能か否かを判定する（ステップＳ５４）。具体的には、推測部１５は、ＮがＭより小さく、かつ、Ｓがサーバのメモリ量より小さいか否かを判定する。
【００８２】
そして、推測部１５は、ＮがＭより小さく、かつ、Ｓがサーバのメモリ量より小さい場合には、サーバにＶＭ移動が可能と判定し、リソース使用率推測データを作成するリソース使用率推測処理を行う（ステップＳ５５）。そして、推測部１５は、全サーバを処理したか否かを判定し（ステップＳ５６）、処理していないサーバがある場合には、ステップＳ５３に戻り、全サーバを処理した場合には、処理を終了する。ただし、推測部１５は、移動対象ＶＭの移動元のサーバについては推測処理は行わなくてもよい。
【００８３】
図２２は、リソース使用率推測処理のフローを示すフローチャートである。図２２に示すように、推測部１５は、移動対象ＶＭのＶＭ負荷モデルを読み込み（ステップＳ６１）、サーバ内の全ＶＭのＶＭ負荷モデルを読み込む（ステップＳ６２）。そして、推測部１５は、移動対象ＶＭのＶＭ負荷モデルから１点サンプリングし（ステップＳ６３）、サーバ内の全ＶＭのＶＭ負荷モデルから各々１点ずつサンプリングする（ステップＳ６４）。
【００８４】
そして、推測部１５は、各ＶＭ負荷モデルからサンプリングした値と構成情報を用いてサーバのリソース使用率を推定する（ステップＳ６５）。そして、推測部１５は、ｎ個リソース使用率を推定したか否かを判定する（ステップＳ６６）。ここで、ｎは、例えば５０００である。そして、リソース使用率をｎ個推定していない場合には、推測部１５は、ステップＳ６３に戻る。
【００８５】
一方、ｎ個リソース使用率を推定した場合には、推測部１５は、推定したリソース使用率を推測データ記憶部１６に格納する（ステップＳ６７）。そして、推測部１５は、全対象期間分のリソース使用率推測データを作成したか否かを判定し（ステップＳ６８）、作成していない場合には、ステップＳ６１に戻り、作成した場合には、リソース使用率推測処理を終了する。
【００８６】
このように、推測部１５は、リソース使用率推測処理を移動対象ＶＭが移動可能なサーバについて行うことで、競合リスク評価に使われるリソース使用率推測データを作成することができる。
【００８７】
図２３は、競合発生モデル化処理のフローを示すフローチャートである。図２３の処理は、図１７のステップＳ１３の処理に対応する。図２３に示すように、競合発生モデル化部１９は、サーバリソース使用率記憶部１７からリソース使用率データを読み込み（ステップＳ７１）、微小間隔使用率記憶部１８からリソース使用率データを読み込む（ステップＳ７２）。
【００８８】
そして、競合発生モデル化部１９は、リソース競合発生確率を算出する競合発生確率算出処理を行い（ステップＳ７３）、リソース競合発生モデルを生成する競合発生モデル生成処理を行う（ステップＳ７４）。そして、競合発生モデル化部１９は、競合発生モデル記憶部２０に、リソース競合発生モデルの情報を格納する（ステップＳ７５）。
【００８９】
図２４は、競合発生確率算出処理のフローを示すフローチャートである。図２４に示すように、競合発生モデル化部１９は、リソース使用率データから対象時刻ＴのＣＰＵ使用率の値を取得する（ステップＳ８１）。ここで、リソース使用率データは、サーバリソース使用率記憶部１７から読み込まれた通常間隔のリソース使用率データである。
【００９０】
そして、競合発生モデル化部１９は、ＣＰＵ使用率を離散化した段階数ｉを特定する（ステップＳ８２）。例えば、１０段階に離散化する場合、０％以上１０％未満のＣＰＵ使用率についてはｉ＝１、１０％以上２０％未満のＣＰＵ使用率についてはｉ＝２、・・・、９０％以上１００％未満のＣＰＵ使用率についてはｉ＝１０が特定される。
【００９１】
そして、競合発生モデル化部１９は、リソース競合有無判定回数ｃiに１を加え（ステップＳ８３）、対象時刻Ｔの微小時間監視のＣＰＵ使用率が一度でも閾値以上か否かを判定する（ステップＳ８４）。ここで、対象時刻Ｔの微小時間監視のＣＰＵ使用率は、微小間隔使用率記憶部１８から読み込まれた微小間隔のリソース使用率データのうち対象時刻ＴからＴ＋１分の間のＣＰＵ使用率である。また、閾値は、例えば９５％である。
【００９２】
そして、競合発生モデル化部１９は、対象時刻Ｔの微小時間監視のＣＰＵ使用率が一度でも閾値以上である場合には、リソース競合の発生有回数ｄiに１を加える（ステップＳ８５）。そして、競合発生モデル化部１９は、対象時刻Ｔに１分加える（ステップＳ８６）。そして、競合発生モデル化部１９は、全判定回数繰り返したか否かを判定し（ステップＳ８７）、全判定回数繰り返していない場合には、ステップＳ８１に戻る。ここで、全判定回数は、例えば、１００００である。
【００９３】
一方、全判定回数繰り返した場合には、競合発生モデル化部１９は、リソース競合発生確率ｐiを算出する（ステップＳ８８）。そして、競合発生モデル化部１９は、全段階数繰り返したか否かを判定し（ステップＳ８９）、ｐiを算出していないｉがある場合には、ステップＳ８８に戻って別のｉについてｐiを算出する。一方、全段階数繰り返した場合には、競合発生モデル化部１９は、競合発生確率算出処理を終了する。
【００９４】
図２５は、競合発生モデル生成処理のフローを示すフローチャートである。図２５に示すように、競合発生モデル化部１９は、リソース競合発生確率ｐiを取得し（ステップＳ９１）、ｉ段階目のリソース使用率ｕiを算出する（ステップＳ９２）。例えば、１０段階に離散化する場合、ｕ1は５％、ｕ2は１０％、・・・、ｕ10は９５％とする。そして、競合発生モデル化部１９は、全段回数繰り返したか否かを判定し（ステップＳ９３）、全段回数繰り返していない場合には、ステップＳ９１に戻る。
【００９５】
一方、全段回数繰り返した場合には、競合発生モデル化部１９は、近似する関数種類を選択し（ステップＳ９４）、ｕiとｐiの関係から、例えば最小二乗法により、近似する関数を決定する（ステップＳ９５）。
【００９６】
このように、競合発生モデル化部１９は、競合発生確率算出処理及び競合発生モデル生成処理を行うことで、リソース競合発生モデルを作成することができる。
【００９７】
図２６は、競合リスク評価処理のフローを示すフローチャートである。図２６の処理は、図１８のステップＳ２４の処理に対応する。図２６に示すように、競合リスク評価部２１は、リソース競合発生モデルを読み込み（ステップＳ１０１）、リソース使用率推測データを読み込む（ステップＳ１０２）。そして、競合リスク評価部２１は、リソース競合発生確率の期待値を算出し（ステップＳ１０３）、全曜日及び時間帯を処理したか否かを判定する（ステップＳ１０４）。そして、処理していない曜日及び時間帯がある場合には、競合リスク評価部２１は、ステップＳ１０３に戻る。
【００９８】
一方、全曜日及び時間帯を処理した場合には、競合リスク評価部２１は、リソース競合のリスク評価指標を算出し（ステップＳ１０５）、移動先候補のサーバを全て処理したか否かを判定する（ステップＳ１０６）。そして、競合リスク評価部２１は、処理していない移動先候補サーバがある場合には、ステップＳ１０２に戻り、移動先候補のサーバを全て処理した場合には、ＶＭ移動先サーバの情報を表示する（ステップＳ１０７）。
【００９９】
このように、競合リスク評価部２１は、リソース競合発生モデルとリソース使用率推測データを用いて全曜日及び時間帯のリソース競合発生確率の期待値を算出し、全曜日及び時間帯のリソース競合発生確率の期待値からリソース競合のリスク評価指標を算出する。したがって、競合リスク評価部２１は、リソース競合のリスク評価指標に基づいてＶＭの移動先サーバを特定することができる。
【０１００】
上述してきたように、実施例では、ＶＭ負荷モデル化部１２が、ＶＭ毎に、ＶＭ負荷モデルを１時間間隔で１週間を対象として作成する。そして、仮想マシンの移動先サーバの特定指示を受けると、推測部１５が、サーバ上で稼働しているＶＭ群のＶＲ負荷モデルと移動対象仮想マシンのＶＲ負荷モデルに基づいて、リソース使用率推測データを１時間間隔で１週間を対象として作成する。推測部１５は、リソース使用率推測データを移動元サーバ以外のサーバ毎に作成する。また、競合発生モデル化部１９が、サーバのリソース使用率に基づいてリソース競合発生モデルを作成する。そして、競合リスク評価部２１が、移動元サーバ以外のサーバ毎に、リソース使用率推測データとリソース競合発生モデルに基づいてリソース競合発生確率の期待値を１時間間隔で１週間を対象として算出する。そして、競合リスク評価部２１は、１時間間隔で１週間を対象として算出したリソース競合発生確率の統計値に基づいて、移動元サーバ以外のサーバ毎に、リスク評価指標を算出する。そして、競合リスク評価部２１は、リスク評価指標に基づいて移動先サーバを特定する。したがって、クラウド基盤管理装置１は、一時的又はスパイク的な高負荷によるリソース競合の発生を抑えるように仮想マシンの移動先のサーバを特定することができる。
【０１０１】
また、実施例では、ＶＭ負荷モデル化部１２は、１時間間隔のリソース使用率の各値に正規分布を対応させ、各値に対応する正規分布を１時間間隔のリソース使用率の全ての値について足し合わせることでＶＭ負荷モデルを作成する。したがって、ＶＭ負荷モデル化部１２は、一時的な高負荷を反映するＶＭ負荷モデルを作成することができる。
【０１０２】
また、実施例では、推測部１５は、サーバで稼働する各ＶＭのＶＭ負荷モデルからリソース使用率をサンプリングして足し合わせることを繰り返すことでリソース使用率推測データを作成する。したがって、推測部１５は、正確なリソース使用率推測データを作成することができる。
【０１０３】
また、実施例では、競合発生モデル化部１９は、サーバについて１秒間隔で計測されたリソース使用率に基づいて１分毎のリソース競合発生有無を判定する。そして、競合発生モデル化部１９は、リソース競合発生確率を１分毎のリソース競合発生有無に基づいて計算する処理をリソース使用率の値の１０段階について行うことでリソース競合発生モデルを作成する。したがって、競合発生モデル化部１９は、スパイク的な高負荷によるリソース競合の発生をモデル化することができる。
【０１０４】
なお、実施例では、クラウド基盤管理装置１について説明したが、クラウド基盤管理装置１の構成をソフトウェアによって実現することで、同様の機能を有する移動先推奨プログラムを得ることができる。そこで、移動先推奨プログラムを実行するコンピュータについて説明する。
【０１０５】
図２７は、実施例に係る移動先推奨プログラムを実行するコンピュータのハードウェア構成を示す図である。図２７に示すように、コンピュータ５０は、メインメモリ５１と、ＣＰＵ５２と、ＬＡＮ（Local  Area  Network）インタフェース５３と、ＨＤＤ（Hard  Disk  Drive）５４とを有する。また、コンピュータ５０は、スーパーＩＯ（Input  Output）５５と、ＤＶＩ（Digital  Visual  Interface）５６と、ＯＤＤ（Optical  Disk  Drive）５７とを有する。
【０１０６】
メインメモリ５１は、プログラムやプログラムの実行途中結果などを記憶するメモリである。ＣＰＵ５２は、メインメモリ５１からプログラムを読み出して実行する中央処理装置である。ＣＰＵ５２は、メモリコントローラを有するチップセットを含む。
【０１０７】
ＬＡＮインタフェース５３は、コンピュータ５０をＬＡＮ経由で他のコンピュータに接続するためのインタフェースである。ＨＤＤ５４は、プログラムやデータを格納するディスク装置であり、スーパーＩＯ５５は、マウスやキーボードなどの入力装置を接続するためのインタフェースである。ＤＶＩ５６は、液晶表示装置を接続するインタフェースであり、ＯＤＤ５７は、ＤＶＤの読み書きを行う装置である。
【０１０８】
ＬＡＮインタフェース５３は、ＰＣＩエクスプレス（ＰＣＩｅ）によりＣＰＵ５２に接続され、ＨＤＤ５４及びＯＤＤ５７は、ＳＡＴＡ（Serial  Advanced  Technology  Attachment）によりＣＰＵ５２に接続される。スーパーＩＯ５５は、ＬＰＣ（Low  Pin  Count）によりＣＰＵ５２に接続される。
【０１０９】
そして、コンピュータ５０において実行される移動先推奨プログラムは、コンピュータ５０により読み出し可能な記録媒体の一例であるＤＶＤに記憶され、ＯＤＤ５７によってＤＶＤから読み出されてコンピュータ５０にインストールされる。あるいは、移動先推奨プログラムは、ＬＡＮインタフェース５３を介して接続された他のコンピュータシステムのデータベースなどに記憶され、これらのデータベースから読み出されてコンピュータ５０にインストールされる。そして、インストールされた移動先推奨プログラムは、ＨＤＤ５４に記憶され、メインメモリ５１に読み出されてＣＰＵ５２によって実行される。
【０１１０】
また、実施例では、ＶＭの移動先サーバを特定する場合について説明したが、クラウド基盤管理装置１は、新たに追加されるＶＭの配置先サーバを特定してもよい。このとき、新たに追加されるＶＭのＶＭ負荷モデルは既知であるとする。あるいは、新たに追加されるＶＭのＶＭ負荷モデルが未知の場合には、クラウド基盤管理装置１は、新たに追加されるＶＭの負荷を除外して配置先サーバを特定してもよい。
【０１１１】
また、実施例では、対象期間を１週間としたが、対象期間は１ヶ月等の他の期間でもよい。また、実施例では、１時間毎のＶＭのリソース使用率を用いて１時間毎のＶＭ負荷モデルを作成したが、クラウド基盤管理装置１は、他の時間毎のＶＭのリソース使用率を用いて他の時間毎のＶＭ負荷モデルを作成してもよい。この場合、クラウド基盤管理装置１は、リソース使用率推測データの作成、リソース競合発生確率の期待値の算出も他の時間毎に行う。
【符号の説明】
【０１１２】
１    クラウド基盤管理装置
２    パブリッククラウド
１１    ＶＭリソース使用率記憶部
１２    ＶＭ負荷モデル化部
１３    ＶＭ負荷モデル記憶部
１４    構成情報記憶部
１５    推測部
１６    推測データ記憶部
１７    サーバリソース使用率記憶部
１８    微小間隔使用率記憶部
１９    競合発生モデル化部
２０    競合発生モデル記憶部
２１    競合リスク評価部
５０    コンピュータ
５１    メインメモリ
５２    ＣＰＵ
５３    ＬＡＮインタフェース
５４    ＨＤＤ
５５    スーパーＩＯ
５６    ＤＶＩ
５７    ＯＤＤ
【図１】
2020003929.tif 000009
【図２】
2020003929.tif 000010
【図３】
2020003929.tif 000011
【図４Ａ】
2020003929.tif 000012
【図４Ｂ】
2020003929.tif 000013
【図５】
2020003929.tif 000014
【図６】
2020003929.tif 000015
【図７】
2020003929.tif 000016
【図８】
2020003929.tif 000017
【図９】
2020003929.tif 000018
【図１０】
2020003929.tif 000019
【図１１】
2020003929.tif 000020
【図１２Ａ】
2020003929.tif 000021
【図１２Ｂ】
2020003929.tif 000022
【図１３】
2020003929.tif 000023
【図１４】
2020003929.tif 000024
【図１５】
2020003929.tif 000025
【図１６】
2020003929.tif 000026
【図１７】
2020003929.tif 000027
【図１８】
2020003929.tif 000028
【図１９】
2020003929.tif 000029
【図２０】
2020003929.tif 000030
【図２１】
2020003929.tif 000031
【図２２】
2020003929.tif 000032
【図２３】
2020003929.tif 000033
【図２４】
2020003929.tif 000034
【図２５】
2020003929.tif 000035
【図２６】
2020003929.tif 000036
【図２７】
2020003929.tif 000037
【図２８】
2020003929.tif 000038