(57)【要約】【課題】複数の仮想マシンサーバに実装された複数の仮想マシンを管理して物理リソースの利用効率の向上を図りながら、その仮想マシンの再配置処理の回数を有効に抑制してシステムの業務処理能力を向上させる仮想マシン管理システム及びその仮想マシン配置設定方法，仮想マシン配置設定用プログラムを提供する。【解決手段】相関分析手段１４が、各仮想マシン２０−１〜２０−ｎの負荷の相関関係を求めて、最大負荷個別予測手段１５が、相関関係から各仮想マシン２０−１〜２０−ｎの相対的な最大負荷量を予測し、組合せ設定手段１６が、この予測された各仮想マシンの最大負荷量の仮想マシンサーバ２〜Ｎ毎の合計が当該仮想マシンサーバの許容負荷量以下に収まるように各仮想マシン２０−１〜２０−ｎと各仮想マシンサーバ２〜Ｎの組み合わせを設定し、配置実行手段１７が、この算出された組み合わせに従って各仮想マシン２０−１〜２０−ｎの配置を実行する。【選択図】図１
2010244181.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集する負荷情報収集手段と、この収集された実測データを蓄積し前記仮想マシン毎の負荷履歴情報として記憶する負荷履歴記憶部とを備えた仮想マシン管理システムにおいて、
前記負荷履歴記憶部に記憶された前記各仮想マシンの負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出し分類する相関分析手段と、
この分類された相関情報に基づいて各仮想マシンの同一分類内での相対的な最大負荷量を予測する最大負荷個別予測手段と、
この予測された各仮想マシンの最大負荷量の仮想マシンサーバ毎の合計が当該仮想マシンサーバの許容負荷量以下に収まるように前記各仮想マシンと前記各仮想マシンサーバの組み合わせを設定する組合せ設定手段と、
この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置する配置実行手段と、を備えたことを特徴とする仮想マシン管理システム。
【請求項２】
前記請求項１に記載の仮想マシン管理システムにおいて、
前記相関分析手段が、
前記各仮想マシンの負荷履歴情報に基づいて当該各仮想マシンの負荷の相関関係を判定して相関の有無を分析し前記各仮想マシン間に係る相関情報を算出する相関情報分析手段と、この各相関情報を互いに相関する仮想マシンに係る相関情報別にグループ化して分類し分類結果を対応する相関情報に付与する相関関係分類手段とを備えたことを特徴とする仮想マシン管理システム。
【請求項３】
前記請求項２に記載の仮想マシン管理システムにおいて、
前記最大負荷個別予測手段が、前記相関分析手段から出力された相関情報に基づいて、前記グループ内の少なくとも１つの仮想マシンの最大負荷量を限界値に設定し、この設定値から前記相関情報に基づいて同一グループ内の他の各仮想マシンの最大負荷量を算出する機能を備えたことを特徴とする仮想マシン管理システム。
【請求項４】
前記請求項３に記載の仮想マシン管理システムにおいて、
前記相関情報が、前記各グループ内の各仮想マシン間の負荷の相関状態を表す関数を含む情報であることを特徴とする仮想マシン管理システム。
【請求項５】
複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集し、この収集された実測データを前記仮想マシン毎の負荷履歴情報として負荷履歴記憶部へ記憶し、
前記負荷履歴記憶部に記憶された前記各仮想マシンの負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出して分類し、
この分類された相関情報に基づいて前記各仮想マシンの同一分類内での相対的な最大負荷量を予測し、
この予測された各仮想マシンの最大負荷量の合計が前記各仮想マシンサーバの許容負荷量に収まるように前記各仮想マシンと前記各仮想マシンサーバとの組み合わせを設定し、
この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置することを特徴とした仮想マシン配置設定方法。
【請求項６】
前記請求項５に記載の仮想マシン配置設定方法において、
前記各仮想マシンの相対的な最大負荷量の予測に際しては、
前記各グループ内の少なくとも１つの仮想マシンの最大負荷量を限界量に設定し、同一グループ内の他の各仮想マシンの最大負荷量を前記相関情報に基づいて算出することを特徴とする仮想マシン配置設定方法。
【請求項７】
複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集すると共にこの収集された実測データを前記仮想マシン毎の負荷履歴情報として負荷履歴記憶部に記憶する負荷情報収集機能と、
前記負荷履歴記憶部に記憶された前記仮想マシン毎の負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出し分類する相関分析機能と、
この分類された相関情報に基づいて各仮想マシンの同一分類内での相対的な最大負荷量を予測する最大負荷個別予測機能と、
この予測された各仮想マシンの最大負荷量の合計が前記各仮想マシンサーバの許容負荷量に収まるように前記各仮想マシンと前記各仮想マシンサーバとの組み合わせを設定する組合せ設定機能と、
この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置する配置処理実行機能と、をコンピュータに実行させることを特徴とする仮想マシン配置設定用プログラム。
【請求項８】
前記請求項７に記載の仮想マシン配置設定用プログラムにおいて、
前記最大負荷個別予測機能が、前記同一分類内の少なくとも１つの仮想マシンの最大負荷量を限界量に設定し、当該同一分類内の他の各仮想マシンの最大負荷量を対応する相関情報に基づいて算出する機能であることを特徴とする仮想マシン配置設定用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の物理マシン上に構築されて稼働する仮想マシンを管理する仮想マシン管理システム，その仮想マシン配置設定方法及びそのプログラムに関する。
【背景技術】
【０００２】
コンピュータシステムにおけるリソースを仮想化する技術においては、関連技術として物理マシン上に複数の仮想マシンを稼働させて、これを仮想マシンサーバとし、その仮想マシンサーバの物理リソースを効率的に利用し、運用コストを抑える技術が知られている。
【０００３】
このような仮想化技術は、システムを成す複数の物理サーバ各々の負荷のばらつきをできるだけ少数の物理サーバに集約するように、複数の仮想マシンを各物理サーバへ配置して、平常時に物理リソースの余剰を確保しておくことで、物理リソースを追加しなくても、クライアントからの要求に迅速且つ柔軟に対応できるシステム環境を実現している。
【０００４】
仮想マシンの配置を制御する技術としては、例えば、各仮想マシンの許容負荷を保証するように物理サーバに仮想マシンを配置する技術が知られている。この場合、各仮想マシンの負荷が変動しても仮想マシンの再配置は発生しないが、各仮想マシンの許容負荷分の物理リソースを常に確保しているため、いずれかの仮想マシンがボトルネックとなった場合に他の仮想マシンのために確保した物理リソース内に使用することのないリソースが発生してしまい、物理リソースの利用効率がよくないという不都合があった。
【０００５】
この技術の一例を図６に示す。この図６では、４ＣＰＵコアマシンサーバである仮想マシンサーバを２台備えたシステムが示されており、仮想マシンサーバ２０１，２０２の許容負荷量（ＣＰＵ使用率）を、限界量４００％（１００％×４）の９割に相当する３６０％に設定している。
【０００６】
この図６に示すように、このような技術においては、１つの仮想マシンの限界量を１００％として、各仮想マシンサーバ２０１，２０２は、３６０％の許容負荷量に収まるように、３つの仮想マシンを配置し３００％のＣＰＵ使用率を確保することになるので、運用時のほとんどの期間で、空きのＣＰＵ使用率が１００％以上になっており、物理リソースの利用効率が悪い。
【０００７】
これに対し、個々の仮想マシンの負荷を定期的に測定して、同一物理サーバに実装された各仮想マシンの負荷の合計をその物理サーバの許容負荷内に収めると共に、できるだけ少数の物理サーバに負荷が集中するように仮想マシンの再配置を行って、物理リソースの利用効率を上げる技術が、広く知られている。
【０００８】
この技術の一例を図７に示す。この図７でも、図６の場合と同様に、４ＣＰＵコアマシンサーバである仮想マシンサーバ３０１，３０２を備えたシステムについて示しており、各仮想マシンサーバ３０１，３０２の許容負荷量（ＣＰＵ使用率）を、限界量４００％（１００％×４）の９割に相当する３６０％に設定している。
【０００９】
この図７に示す技術では、６つの仮想マシンそれぞれの負荷量（ＣＰＵ使用率）が、８０％，６０％，６０％，５０％，５０％，４０％の平常時であれば、６つの仮想マシンの負荷量の合計（総負荷）が３４０％なので、１台の仮想マシンサーバ３０１に６つの仮想マシン全てを配置することになる。
【００１０】
そして、各仮想マシンの負荷が増大して、各仮想マシンサーバ３０１，３０２上の仮想マシンの負荷量の合計が許容量を超えると、図７の矢印に示すように、仮想マシンを別の仮想マシンサーバへ移動する。図示されていないが、この後、再び平常時の状態に戻ると、仮想マシンは元に移動して、１台の仮想マシンサーバ３０１に全ての仮想マシンを配置する状態になる。
【００１１】
また、これに関連する技術が特許文献１に開示されている。この特許文献１の技術は、各仮想マシンの所定時間毎の実測データを用いて、各仮想マシンを複数のサーバのいずれかで稼働させた場合の各時間における各仮想マシンのパフォーマンス値の合計が最大となるように仮想マシンとサーバの組み合わせを算出する技術である。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００５−１１５６５３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、前述した関連技術では、業務プロセスの実行状況の変化による各仮想マシンの負荷変動に伴って仮想マシンの再配置を頻繁に実行するが、仮想マシンの再配置を実行する度に、その再配置に伴う負荷が仮想マシンサーバにかかってしまい業務処理能力の低下が発生し、特に仮想マシンサーバの許容負荷オーバー時の場合は、再配置時に更に負荷が上がってしまうという課題があった（図７参照）。
【００１４】
そこで、本発明は、上記関連技術の有する課題を改善し、複数の仮想マシンサーバに実装された複数の各仮想マシンを管理してサーバ上のリソースの利用効率の向上を図りながら、その仮想マシンの再配置処理を有効に抑制してシステムの業務処理能力を向上させる仮想マシン管理システム，仮想マシン配置設定方法及びそのプログラムを提供することを、その目的とする。
【課題を解決するための手段】
【００１５】
上記目的を達成するため、本発明の仮想マシン管理システムは、複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集する負荷情報収集手段と、この収集された実測データを蓄積し前記仮想マシン毎の負荷履歴情報として記憶する負荷履歴記憶部とを備えた仮想マシン管理システムであり、前記負荷履歴記憶部に記憶された前記各仮想マシンの負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出し分類する相関分析手段と、この分類された相関情報に基づいて同一分類内の各仮想マシンの相対的な最大負荷量を予測する最大負荷個別予測手段と、この予測された各仮想マシンの最大負荷量の仮想マシンサーバ毎の合計が当該仮想マシンサーバの許容負荷量以下に収まるように前記各仮想マシンと前記各仮想マシンサーバの組み合わせを設定する組合せ設定手段と、この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置する配置実行手段と、を備えたことを特徴とする。
【００１６】
また、本発明の仮想マシン配置設定方法は、複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集し、この収集された実測データを前記仮想マシン毎の負荷履歴情報として負荷履歴記憶部へ記憶し、前記負荷履歴記憶部に記憶された前記各仮想マシンの負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出して分類し、この分類された相関情報に基づいて前記各仮想マシンの同一分類内での相対的な最大負荷量を予測し、この予測された各仮想マシンの最大負荷量の合計が前記各仮想マシンサーバの許容負荷量に収まるように前記各仮想マシンと前記各仮想マシンサーバとの組み合わせを設定し、この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置することを特徴とした。
【００１７】
また、本発明の仮想マシン配置設定用プログラムは、複数の仮想マシンが設定された複数の仮想マシンサーバから前記各仮想マシンの負荷の実測データを収集すると共にこの収集された実測データを前記仮想マシン毎の負荷履歴情報として負荷履歴記憶部に記憶する負荷情報収集機能と、前記負荷履歴記憶部に記憶された前記仮想マシン毎の負荷履歴情報に基づいて前記各仮想マシンの負荷の相関関係を示す相関情報を抽出し分類する相関分析機能と、この分類された相関情報に基づいて各仮想マシンの同一分類内での相対的な最大負荷量を予測する最大負荷個別予測機能と、この予測された各仮想マシンの最大負荷量の合計が前記各仮想マシンサーバの許容負荷量に収まるように前記各仮想マシンと前記各仮想マシンサーバとの組み合わせを設定する組合せ設定機能と、この設定された組み合わせに従って前記各仮想マシンを前記各仮想マシンサーバへ配置する配置処理実行機能と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１８】
本発明は、以上のように、各仮想マシンの負荷の相関関係を求めてこの相関関係から各仮想マシンの相対的な最大負荷量を予測し、この予測された各仮想マシンの最大負荷量の仮想マシンサーバ毎の合計が当該仮想マシンサーバの許容負荷量以下に収まるように各仮想マシンを各仮想マシンサーバへ配置したので、これによると、各サーバの物理リソースを効率的に利用でき、システムの運用コストや消費電力を軽減することができると共に、仮想マシンの負荷を測定する度に仮想マシンの再配置処理を行う技術と比べて、その配置処理の実行を抑制でき、物理マシンにかかる負荷を軽減してシステムの業務処理能力を有効に向上させることができる。
【図面の簡単な説明】
【００１９】
【図１】本発明にかかる一実施形態の仮想マシン管理システムの構成を示す機能ブロック図である。
【図２】図１に開示した実施形態における負荷履歴情報記憶部に記憶された負荷履歴情報の一例を示す図である。
【図３】図１に開示した実施形態における組合せ設定手段に算出された組み合わせの一例を示す図である。
【図４】図１に開示した実施形態の仮想マシン管理システムの動作を示すフローチャートである。
【図５】図１に開示した実施形態の仮想マシン管理システムの動作を示すフローチャートである。
【図６】先行技術として開示されている仮想マシン技術について示す説明図である。
【図７】先行技術として開示されている仮想マシン技術について示す説明図である。
【発明を実施するための形態】
【００２０】
以下、本発明にかかる一実施形態を、図面に基づいて説明する。
【００２１】
図１は、本実施形態の仮想マシン管理システム１の構成を示す機能ブロック図である。図１に示すように、本実施形態の仮想マシン管理システム１は、複数の仮想マシン２０−１〜２０−ｎ（ｎは２以上の自然数）が設定された複数の仮想マシンサーバ２〜Ｎ（Ｎは２以上の自然数）に対して情報を入出力する入出力部１１と、仮想マシンサーバ２〜Ｎの各々から各仮想マシン２０−１〜２０−ｎの負荷を示す実測データを予め設定された時間間隔で順次収集する負荷情報収集手段１２と、この収集された実測データを蓄積し仮想マシン２０−１〜２０−ｎ各々の負荷履歴情報として記憶する負荷履歴記憶部１３とを備えている。
【００２２】
仮想マシンサーバ２〜Ｎは、情報処理装置であり、図示していないクライアント端末とネットワークを介して接続するサーバである。仮想マシン２０−１〜２０−ｎの各々は、クライアント端末からは独立したサーバとして見なされ、クライアント端末からの要求に応じて、仮想マシンサーバ２〜Ｎのリソースを利用した情報処理を実行する。
【００２３】
さらに、本実施形態の仮想マシン管理システム１は、負荷履歴記憶部１３に記憶された仮想マシン２０−１〜２０−ｎ各々の負荷履歴情報に基づいて、仮想マシン２０−１〜２０−ｎ各々の負荷の相関関係を示す相関情報を抽出する相関分析手段１４と、この相関情報に基づいて仮想マシン２０−１〜２０−ｎそれぞれの相対的な最大負荷量を予測する最大負荷個別予測手段１５と、この予測された各仮想マシン２０−１〜２０−ｎの最大負荷量の仮想マシンサーバ２〜Ｎ毎の合計が仮想マシンサーバ２〜Ｎそれぞれの許容負荷量以下に収まるように各仮想マシン２０−１〜２０−ｎと各仮想マシンサーバ２〜Ｎの組み合せを設定する組合せ設定手段１６と、この設定された組み合わせに従って各仮想マシン２０−１〜２０−ｎを各仮想マシンサーバ２〜Ｎへ配置する配置実行手段１７と、を備えている。
【００２４】
負荷情報収集手段１２は、仮想マシンサーバ２〜Ｎから、各仮想マシン２０−１〜２０−ｎの負荷を示す実測データを定期的又はランダムな時間間隔で順次収集する機能を備えている。仮想マシンサーバ２〜Ｎから実測データを収集する方式としては、先行技術の方式を用いればよい。この実測データは、ＣＰＵ使用率などの物理リソースの使用率を示すデータである。
【００２５】
負荷履歴記憶部１３は、各仮想マシン２０−１〜２０−ｎの負荷を示す実測データの履歴を示す負荷履歴情報を記憶する機能を備えている。図２は、この負荷履歴情報の一例を示す図である。図２に示す負荷履歴情報は、測定時刻毎に各仮想マシン２０−１〜２０−ｎの識別子とその実測データであるＣＰＵ使用率とを対応付けた情報であり、この実測データであるＣＰＵ使用率の単位はパーセントである。
【００２６】
相関分析手段１４は、各仮想マシン２０−１〜２０−ｎの負荷履歴情報に基づいて、仮想マシン２０−１〜２０−ｎにかかる負荷の相関関係を判定して相関の有無を分析し、各仮想マシン２０−１〜２０−ｎの相互間に対する相関情報を抽出する相関情報分析手段１４ａと、この各相関情報を、互いに相関する仮想マシン別に分類しこの分類結果を示す分類情報を出力する相関関係分類手段１４ｂとを備えている。この相関情報は、仮想マシン２０−１〜２０−ｎ各々の負荷の相関状態を表す関数を含む情報である。
【００２７】
相関情報分析手段１４ａは、負荷履歴記憶部１２から、各仮想マシン２０−１〜２０−ｎの負荷履歴情報を読み出して、各仮想マシン２０−１〜２０−ｎの負荷履歴情報それぞれを比較して相関関係の有無をチェックし、相関する仮想マシン間に対する相関情報を算出する機能を備えている。
【００２８】
相関関係分類手段１４ｂは、相関分析手段１４ａで算出された各相関情報を、互いに相関する仮想マシンに係る相関情報ごとにグループ化して分類し、相関情報に対応するグループ識別子を付与して最大負荷個別予測手段１５へ出力する機能を備えている。このように、各仮想マシン２０−１〜２０−ｎを選別することで、サーバシステムが実行している業務を割り出すことになる。
【００２９】
具体的に、相関情報分析手段１４ａは、２つの変数を含む関数モデルを予め保持し、仮想マシン２０−１〜２０−ｎのうちの２機に係る負荷履歴情報に基づいて、この２機の仮想マシンの実測データを２つの変数に代入して関数モデルが成り立つか否かを判断し、成り立つ場合は、その２機の仮想マシンは相関すると判定して関数モデルに含まれる係数の値を算出し、この係数の値を含む関数モデルをこの２機の仮想マシンに対応する相関情報として出力する。相関関係分類手段１４ｂは、各相関情報に基づいて、互いに相関する仮想マシンを同一グループとしたグループ分けを実行し、各相関情報に対応するグループ識別子を付与して出力する。
【００３０】
例えば、相関情報分析手段１４ａは、変数ｙと変数ｘを含む「ｙ＝Ａｘ＋Ｂ」という一次関数を保持し、ランダムに選択した２機の仮想マシンに係る負荷履歴情報を読み込み、第１の仮想マシンの実測データの時系列情報をｙ、第２の仮想マシンの実測データの時系列情報をｘとして、係数Ａ及びＢを算出し、Ａ及びＢの数値が特定された「ｙ＝Ａｘ＋Ｂ」を第１の仮想マシンと第２の仮想マシン間に対する相関情報とする。そして、このような処理を全ての仮想マシンの負荷履歴情報に対して実行する。
【００３１】
さらに、相関情報分析手段１４ａは、前述のように係数の値が特定された関数モデルを用いて、対応する第１の仮想マシンの実測データから同じく対応する第２の仮想マシンの負荷量を算出して、この算出データとその第２の仮想マシンの実測データとの誤差を計算し、この誤差に基づいて当該関数モデルの重み情報を算出する機能と、１機の仮想マシンに対して複数の異なる関数モデルが算出された場合に、それぞれの重み情報の大小に基づいて一つの関数モデルを選択して相関情報とする機能を備えてもよい。
【００３２】
具体的には、第１の仮想マシンと第２の仮想マシンとの相関関係を示す関数モデルＸ及びその重み情報ｕと、第１の仮想マシンと第３の仮想マシンとの相関関係を示す関数モデルＹ及びその重み情報ｖと、第３の仮想マシンと第２の仮想マシンとの相関関係を示す関数モデルＺ及びその重み情報ｗと、をそれぞれ算出し、重み情報ｖと重み情報ｗとの合成と、重み情報ｕとを比較して、第１の仮想マシンと第２の仮想マシン間の相関状態に対応する関数モデルを、モデルＸと、モデルＹ及びモデルＺの合成モデルとのいずれか一方に選択する。
【００３３】
最大負荷個別予測手段１５は、グループ内の少なくとも１つの仮想マシンの最大負荷量を限界値に設定して、この設定値から同一グループ内の他の各仮想マシンの最大負荷量を対応する相関情報に基づいて算出する機能を備えている。グループ内の仮想マシンにおいては、１つの仮想マシンの負荷量を定めれば、相関情報から他の仮想マシン２０−１〜２０−ｎの負荷量が算出できるので、本実施形態の最大負荷個別予測手段１５は、グループに係る業務の負荷がピークに達した場合の各仮想マシン２０−１〜２０−ｎの負荷量である最大負荷量を予測する。具体的には、グループ内の仮想マシンのうち最初に限界値に達すると推定できる仮想マシンの最大負荷量をその限界値に設定して、同一グループ内の他の仮想マシンの最大負荷量を対応する相関情報に基づいて算出する。
【００３４】
組合せ設定手段１６は、予め設定された各仮想マシンサーバ２〜Ｎの許容負荷量を図示していないデータベースから読み出し、仮想マシンサーバ２〜Ｎのいずれかに仮想マシン２０−１〜２０−ｎのいずれかを配置した場合にその配置した各仮想マシンの最大負荷量の合計がその仮想マシンサーバの許容負荷量以下に収まるように、各仮想マシン２０−１〜２０−ｎと各仮想マシンサーバ２〜Ｎの組み合わせを設定する。
【００３５】
本実施形態の組合せ設定手段１６は、仮想マシンサーバ２〜Ｎのうちの最も少数に負荷が集約するように、各仮想マシン２０−１〜２０−ｎを各仮想マシンサーバ２〜Ｎに配置する組み合わせを設定する機能を備えてもよい。図３は、本実施形態の組合せ設定手段１６に算出された組み合わせの一例を示す説明図である。
【００３６】
図３に示す説明図は、各仮想マシンサーバ２〜Ｎが４ＣＰＵコアマシンサーバであり、この仮想マシンサーバ２〜Ｎの許容負荷量（ＣＰＵ使用率）を、限界量４００％（１００％×４）の９割に相当する３６０％に設定し、同一グループに属する６つの仮想マシン２０−１〜２０−６の各々の最大負荷量が１００％，８０％，８０％，８０％，７０％，８０％であった場合に、組合せ設定手段１６が算出した組み合わせを表す説明図である。
【００３７】
配置実行手段１７は、組合せ設定手段１６に設定された組み合わせに従って、仮想マシン２０−１〜２０−ｎの配置変更を実行する。仮想マシン２０−１〜２０−ｎの配置変更処理の方式としては、移動させる仮想マシン２０−ｉ（ｉは自然数）を一旦シャットダウンして、この仮想マシン２０−ｉの構成ファイルを仮想マシンサーバ２〜Ｎのローカルディスク間で移動させて、移動先で仮想マシン２０−ｉを起動させる方式と、共有ストレージ上に仮想マシン２０−１〜２０−ｎの構成ファイルを配置することで仮想マシン２０−１〜２０−ｎを停止させずに別の仮想マシンサーバ２〜Ｎへ移動させる方式などがある。
【００３８】
このように、本実施形態の仮想マシン管理システム１によれば、仮想マシン２０−１〜２０−ｎの中から負荷変動が相関するものを選別して業務を割り出し、業務の最大負荷時の仮想マシン２０−１〜２０−ｎ各々の最大負荷を予測し、各仮想マシン２０−１〜２０−ｎの最大負荷量は１００％以下のそれぞれの値となるが、その値で仮想マシンサーバ２〜Ｎの負荷が許容量内に収まるように各仮想マシン２０−１〜２０−ｎの配置を行う。
【００３９】
これにより、リソースを有効利用しながらも仮想マシンの再配置を抑制することが可能となり、パフォーマンスを保ちつつサーバ台数を削減し、システムの運用コストや消費電力を削減することができる。
【００４０】
ここで、実際の運用業務では平日，休日，月末といったカレンダーや、一日の中の時間帯によって業務の特性や使用状況が変化するので、相関分析手段１４は、予め設定された日時を契機に起動して、設定された期間の負荷履歴情報を読み出すように構成してもよく、これにより、精度の高い予測による仮想マシン配置を実現することができる。
【００４１】
次に、本実施形態の仮想マシン管理システム１の動作について説明する。ここで、以下の動作説明は、本発明の仮想マシン配置設定方法の実施形態となる。
【００４２】
図４は、本実施形態の仮想マシン管理システム１の負荷情報蓄積動作を示すフローチャートである。図４に示すように、本実施形態の仮想マシン管理システム１の負荷情報蓄積動作は、まず、負荷情報収集手段１２が、各仮想マシン２０−１〜２０−ｎの負荷を示す実測データを定期的若しくはランダムな時間間隔で順次収集し（図４のステップｓ４１）、負荷履歴記憶部１３に記憶させる（図４のステップｓ４２）。
【００４３】
図５は、本実施形態の仮想マシン管理システム１の配置処理動作を示すフローチャートである。図４に示すように、本実施形態の仮想マシン管理システム１の配置処理動作は、まず、相関分析手段１４が、各仮想マシン２０−１〜２０−ｎの負荷履歴情報を負荷履歴記憶部１３から読み出す（図５のステップｓ５１）。ここで、相関分析手段１４は、図示していない入力部からの指令に応じて動作開始するように構成してもよいし、予め設定された日時を契機に起動して設定期間の負荷履歴情報を読み出すように構成してもよい。
【００４４】
続いて、相関分析手段１４が、負荷履歴情報を基に、各仮想マシン２０−１〜２０−ｎの負荷の相関関係の分析を行い（図５のステップｓ５２）、分析結果として相関情報を出力する。ここで、相関分析手段１４は、２つの変数を有する関数を示す情報を保持し、２つの仮想マシンに係る負荷履歴情報に基づいて、この２つの仮想マシンの実測データを、２つの変数に代入して関数が成り立つ場合は、その２つの仮想マシンは相関すると判定して、同一グループとし、関数に含まれている係数の値を算出して、この係数の値を含む関数を、この２つの仮想マシンに係る相関情報として出力する。
【００４５】
そして、最大負荷個別予測手段１５が、相関分析手段１４から出力された相関情報を取得し、この相関情報に基づいて各仮想マシン２０−１〜２０−ｎの相対的な最大負荷量を予測する（図５のステップｓ５３）。続いて、組合せ設定手段１６が、最大負荷個別予測手段１５に予測された各仮想マシン２０−１〜２０−ｎの最大負荷量に基づいて、仮想マシンサーバに配備した各仮想マシンの最大負荷量の合計が当該仮想マシンサーバの許容負荷量に収まるように、仮想マシン２０−１〜２０−ｎを仮想マシンサーバ２〜Ｎに配置する組み合わせを設定し、この設定した組み合わせを示す情報を配置実行手段１７へ出力する（図５のステップｓ５４）。
【００４６】
そして、配置実行手段１７が、組合せ設定手段１６に設定された組み合わせを示す情報に従って、各仮想マシン２０−１〜２０−ｎを対応する仮想マシンサーバ２〜Ｎへ配置する処理を実行する（図５のステップｓ５５）。
【００４７】
本実施形態の仮想マシン管理システム１はこのように、業務の最大負荷時の各仮想マシン２０−１〜２０−ｎ各々の最大負荷を予測して、その予測に基づいて仮想マシン２０−１〜２０−ｎの配置を行うため、リソースを有効に利用すると同時に業務の負荷変動における仮想マシンの再配置を抑制し、業務のパフォーマンスを保ちつつサーバ台数を削減し、コスト・消費電力を削減することができる。
【００４８】
ここで、前述した負荷情報収集手段１２，相関分析手段１４，最大負荷個別予測手段１５，組合せ設定手段１６，配置実行手段１７については、その機能内容をプログラム化してコンピュータに実行させるように構成してもよい。
【００４９】
以上のように、本実施形態の仮想マシン管理システム１は、各仮想マシン２０−１〜２０−ｎの負荷の相関関係を求めてこの相関関係から各仮想マシン２０−１〜２０−ｎの相対的な最大負荷量を予測し、この予測された仮想マシン２０−１〜２０−ｎ各々の最大負荷量の仮想マシンサーバ２〜Ｎ毎の合計がその仮想マシンサーバ２〜Ｎの許容負荷量以下に収まるように、各仮想マシン２０−１〜２０−ｎの各仮想マシンサーバ２〜Ｎへの配置を実行するので、物理リソースを効率的に利用でき、システムの運用コストや消費電力を軽減することができると共に、各仮想マシン２０−１〜２０−ｎの負荷の相関関係が崩れた時だけ仮想マシン２０−１〜２０−ｎの再配置を行うように動作設定すればよく、仮想マシンの負荷を測定する度に仮想マシンの再配置処理を行う技術と比べて、その配置処理の実行を抑制でき、仮想マシンサーバ２〜Ｎにかかる負荷を軽減してシステムの業務処理能力を有効に向上させることができる。
【産業上の利用可能性】
【００５０】
本発明は、複数のサーバ上で稼働する複数の仮想マシンを管理するシステムに適用できる。
【符号の説明】
【００５１】
１  仮想マシン管理システム
２〜Ｎ  仮想マシンサーバ
１１  入出力部
１２  負荷情報収集手段
１３  負荷履歴記憶部
１４  相関分析手段
１４ａ  相関情報分析手段
１４ｂ  相関関係分類手段
１５  最大負荷個別予測手段
１６  組合せ設定手段
１７  配置実行手段
２０−１〜２０−ｎ  仮想マシン
【図１】
2010244181.tif 000003
【図２】
2010244181.tif 000004
【図３】
2010244181.tif 000005
【図４】
2010244181.tif 000006
【図５】
2010244181.tif 000007
【図６】
2010244181.tif 000008
【図７】
2010244181.tif 000009