(57)【特許請求の範囲】
【請求項１】
コンピュータに、
実計算機上で動作する複数の仮想計算機の１つである第１の仮想計算機に対する、第１のアプリケーションの導入要求に関する情報を受け付け、
取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第１のアプリケーションまたは前記第１のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、
前記第１のアプリケーションまたは前記類似アプリケーションの導入実績のある第２の仮想計算機が存在する場合に、取得した前記第１の仮想計算機および前記第２の仮想計算機の性能に関する情報、前記第２の仮想計算機における前記第１のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する、前記第２の仮想計算機における前記第１アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、
処理を実行させることを特徴とするプログラム。
【請求項２】
請求項１記載のプログラムであって、前記第２の仮想計算機における前記第１のアプリケーションまたは前記類似アプリケーションの動作タイミングに関する情報に基づき、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する前記動作性能情報を算出する、ことを特徴とするプログラム。
【請求項３】
請求項１または請求項２記載のプログラムであって、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する前記動作性能情報に基づき、前記第１の仮想計算機に対する前記第１のアプリケーションの導入可否を判定する、ことを特徴とするプログラム。
【請求項４】
実計算機上で動作する複数の仮想計算機の１つである第１の仮想計算機に対する、第１のアプリケーションの導入要求に関する情報を受け付ける受付部と、
前記複数の仮想計算機に導入されたアプリケーションに関する情報、前記複数の仮想計算機の性能に関する情報、前記複数の仮想計算機におけるアプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報を取得する取得部と、
該取得部が取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第１のアプリケーションまたは前記第１のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別する判別部と、
前記第１のアプリケーションまたは前記類似アプリケーションの導入実績のある第２の仮想計算機が存在する場合に、前記取得部が取得した前記第１の仮想計算機および前記第２の仮想計算機の性能に関する情報、前記第２の仮想計算機における前記第１のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する、前記第２の仮想計算機における前記第１アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する算出部と
を備える情報生成装置。
【請求項５】
実計算機上で動作する複数の仮想計算機の１つである第１の仮想計算機に対する、第１のアプリケーションの導入要求に関する情報を受け付け、
取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第１のアプリケーションまたは前記第１のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、
前記第１のアプリケーションまたは前記類似アプリケーションの導入実績のある第２の仮想計算機が存在する場合に、取得した前記第１の仮想計算機および前記第２の仮想計算機の性能に関する情報、前記第２の仮想計算機における前記第１のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する、前記第２の仮想計算機における前記第１アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、
処理をコンピュータが実行する情報生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンにアプリケーションを導入する際の情報を提供するプログラム、情報生成装置及び情報生成方法に関する。
【背景技術】
【０００２】
近年、データセンタや大規模なＩＴシステムなどを中心に、それぞれの仮想マシンでデプロイしたアプリケーションを実行する仮想マシンの利用が進んでいる。
【０００３】
アプリケーションのデプロイに関して、例えば特許文献１には、アプリケーションのデプロイや設定を簡便化するための仮想マシンの利用方法に関する技術が開示されている。また、特許文献２には、主としてシンクアイアントサービスを提供する場合において、各ユーザ毎のアプリケーションをデプロイする対象となるマスタを効率的に管理する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−０９０８４０号公報
【特許文献２】特開２００９−２５９０４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、同一の物理マシンで複数の仮想マシンが動作する場合、同一物理マシン上に存在する仮想マシンが影響を考慮する必要があり、同一物理マシン上に存在する他の仮想マシンの影響により、運用開始後に想定した性能がでないといった問題が発生する場合がある。
【０００６】
本願は、上記の課題を解決するため、運用開始後に想定した性能がでない仮想マシンにアプリケーションを導入してしまうことを抑制するプログラム、情報生成装置及び情報生成方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願に開示するプログラムは、コンピュータに、実計算機上で動作する複数の仮想計算機の１つである第１の仮想計算機に対する、第１のアプリケーションの導入要求に関する情報を受け付け、取得した前記複数の仮想計算機に導入されたアプリケーションに関する情報に基づき、前記第１のアプリケーションまたは前記第１のアプリケーションに類似する類似アプリケーションの導入実績のある仮想計算機の有無を判別し、前記第１のアプリケーションまたは前記類似アプリケーションの導入実績のある第２の仮想計算機が存在する場合に、取得した前記第１の仮想計算機および前記第２の仮想計算機の性能に関する情報、前記第２の仮想計算機における前記第１のアプリケーションまたは前記類似アプリケーションの動作時リソースに関する情報、および、前記実計算機の性能に関する情報に基づき、前記第１の仮想計算機における前記第１のアプリケーションの動作に関する、前記第２の仮想計算機における前記第１アプリケーションまたは前記類似アプリケーションの動作性能と対応付けられた動作性能情報を算出する、処理を実行させることを特徴とする。
【発明の効果】
【０００８】
本願によれば、運用開始後に想定した性能がでない仮想マシンにアプリケーションを導入してしまうことを抑制することができる。
【図面の簡単な説明】
【０００９】
【図１】本実施の形態に係るシステムの全体構成を示す模式図である。
【図２】検証装置の内部構成を説明するブロック図である。
【図３】検証装置の機能的構成を説明するブロック図である。
【図４】検証装置が実行する処理の手順を説明するフローチャートである。
【図５】アプリケーションの基礎値及び基礎値計測時のマシン情報の一例を示す図である。
【図６】アプリケーションの導入先仮想マシンの情報の一例を示す図である。
【図７】導入先仮想マシンが存在する物理マシンの情報の一例を示す図である。
【図８】同居している仮想マシンの情報の一例を示す図である。
【図９】予測使用リソースの算出手順の一例を示すフローチャートである。
【図１０】類似アプリケーションの検索手順の一例を示すフローチャートである。
【図１１】同一アプリケーションが導入された物理マシン及び仮想マシンの情報の一例を示す図である。
【図１２】アプリケーションの導入可否の検証手順の一例を示すフローチャートである。
【図１３】期間ピーク値での比較手順の一例を示すフローチャートである。
【図１４】それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。
【図１５】それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。
【図１６】負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。
【図１７】負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。
【図１８】他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。
【図１９】他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。
【図２０】検証結果の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
図１は本実施の形態に係るシステムの全体構成を示す模式図である。図１に示しシステムは、アプリケーションのデプロイ先での動作を検証する検証装置１０、及びアプリケーションのデプロイ対象である情報処理装置２０を含む。
【００１１】
情報処理装置２０は、例えば、パーソナルコンピュータ、サーバ装置等であり、本実施の形態では、アプリケーションの導入対象となる。図１に例示した情報処理装置２０は、１つの物理マシン２１と３つの仮想マシン２２ａ〜２２ｃとにより構成されている。物理マシン２１は、ＣＰＵ、メモリ、ハードディスクを含むハードウェア及び情報処理装置２０において仮想マシン２２ａ〜２２ｃを実現するためのハイパーバイザを含む。仮想マシン２２ａ、２２ｂは、例えば、オペレーションシステム（ＯＳ）、ミドルウェア、アプリケーションが既に導入され、稼働中の仮想マシンであり、仮想マシン２２ｃは、新たにアプリケーションを導入しようとしている仮想マシンである。
なお、図１に示した例では、１つの物理マシン２１に対して３つの仮想マシン２２ａ〜２２ｃを備える構成としたが、物理マシン及び仮想マシンの台数は上記に限定されるものでなく、本システムの管理者又は情報処理装置２０のユーザが適宜設定し得るものである。
【００１２】
ここで、仮想マシン２２ａ〜２２ｃに導入されるアプリケーションとは、単一のアプリケーションソフトウェア、複数のプログラムが協同して動作する統合的なアプリケーションソフトウェア等を意味する。アプリケーションには、これらのアプリケーションソフトウェアで利用する各種の設定やデータが含まれていてもよい。
【００１３】
アプリケーションの導入（デプロイ）は、必ずしも検証装置１０を利用して行うものではなく、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＵＳＢメモリ等の可搬型記録媒体を利用して管理者が行う構成としてもよく、また、インターネットなどの通信回線を通じて外部のサーバから行う構成であってもよい。
【００１４】
検証装置１０は、パーソナルコンピュータ、サーバ装置等であり、アプリケーションを情報処理装置２０に新たに導入する際に、アプリケーションの動作検証や、導入した場合の物理マシン２１及び仮想マシン２２ａ〜２２ｃの動作検証を行うことにより、アプリケーションの導入可否を検証する。
【００１５】
図２は検証装置１０の内部構成を説明するブロック図である。検証装置１０は、制御部１１、記憶部１２、情報取得部１３、検証部１４、操作部１５、及び表示部１６を備える。
【００１６】
制御部１１は、例えば、ＭＰＵ（Micro Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）を備える。記憶部１２は、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ等の記憶手段であり、本願のプログラム１２１が格納されている。また、記憶部１２は、導入対象のアプリケーションの情報、導入先の物理マシン２１の情報、導入先の物理マシンが備える仮想マシン２２ａ〜２２ｃの情報等を記憶するための管理用データベース（管理用ＤＢ）１２２を備える。
制御部１１は、記憶部１２から本願のプログラム１２１を読み込んで実行することにより、上述したハードウェア各部の動作を制御し、本願の検証装置として機能させる。
【００１７】
情報取得部１３は、検証に必要な情報を検証装置１０の外部より取得する。具体的には、導入予定アプリケーションの基礎値、基礎値採取時のマシン情報、導入先仮想マシンの情報、導入先の物理マシンの情報、同居仮想マシンの情報、同一アプリケーションの情報、単位期間当たりのリソース（計算機資源）の使用状況（仮想マシンに対する負荷）に関する情報等を取得する。各情報の詳細については後に詳述することとする。
【００１８】
検証部１４は、情報取得部１３で取得した情報を基に、アプリケーションの動作検証や、導入した場合の物理マシン２１及び仮想マシン２２ａ〜２２ｃの動作検証を行い、アプリケーションの導入可否を検証する。
【００１９】
操作部１５は、管理者からの操作指示を受付けるためのキーボード、マウス等の入力デバイスである。表示部１６は、管理者に通知すべき情報、情報取得部１３で取得した情報、検証部１４での検証結果等を表示する液晶ディスプレイ等の表示デバイスである。
【００２０】
図３は検証装置１０の機能的構成を説明するブロック図である。検証装置１０は、第１取得部１０１、第２取得部１０２、算出部１０３、検索部１０４、判断部１０５、及び出力部１０６を備える。
【００２１】
第１取得部１０１は、例えば、単位期間当たりの仮想マシンに対する負荷に係る情報を取得する。また、第２取得部１０２は、仮想マシンに導入されるアプリケーションに関する情報を取得する。第１取得部１０１及び第２取得部１０２の機能は、図２に示す情報取得部１３が備える機能である。
【００２２】
算出部１０３は、アプリケーションを仮想マシンに導入したときの当該仮想マシンの負荷についての予測値を算出する。検索部１０４は、前記アプリケーションと同一又は類似のアプリケーションが導入された他の仮想マシンを検索する。算出部１０３及び検索部１０４の機能は、図２に示す制御部１１が備える機能である。
【００２３】
判断部１０５は、第１取得部１０１で取得した情報と算出部１０３が算出した予測値との比較結果に基づいて、アプリケーションの導入の可否を判断する。判断部１０５の機能は、図２に示す検証部１４が備える機能である。
【００２４】
出力部１０６は、第１取得部１０１で取得した情報と算出部１０３が算出した予測値との比較結果等の情報を出力する。出力部１０６の機能は、図２に示す表示部１６が備える機能である。なお、検証装置１０に通信手段を設け、この通信手段により前記比較結果等の情報を検証装置１０の外部へ送信する構成としてもよい。
【００２５】
以下、検証装置１０が実行する処理について説明する。図４は検証装置１０が実行する処理の手順を説明するフローチャートである。検証装置１０は、情報取得部１３を通じて、導入しようとしているアプリケーションの基礎値及び基礎値計測時のマシン情報を取得する（Ｓ１１）。ここで、アプリケーションの基礎値とは、適宜のマシンで当該アプリケーションを稼働させた際のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、ＣＰＵ使用率等の情報を表す。アプリケーションを稼働するマシン、アプリケーションの基礎値を計測するマシンは適宜のものを使用すればよく、検証装置１０にて基礎値を計測してもよく、他のコンピュータ、サーバ装置を用いて計測してもよい。Ｓ１１では、アプリケーションの基礎値だけでなく、アプリケーションを稼働するマシンの情報（ＣＰＵ、ディスクサイズ、メモリサイズの情報）を取得する。図５は、アプリケーションの基礎値及び基礎値計測時のマシン情報の一例を示す。
【００２６】
次いで、検証装置１０は、情報取得部１３を通じて、導入先として指定された仮想マシンの情報、及び導入先として指定された仮想マシンが存在する物理マシンの情報を取得する（Ｓ１２、Ｓ１３）。図１に示した例では、アプリケーションの導入先を仮想マシン２２ｃとしているため、Ｓ１２では仮想マシン２２ｃの情報を取得し、Ｓ１３では物理マシン２１の情報を取得する。図６はアプリケーションの導入先仮想マシンの情報の一例を示す図であり、図７は導入先仮想マシンが存在する物理マシンの情報の一例を示す図である。取得する仮想マシンの情報には、計算機資源（リソース）の情報と、稼働時のパフォーマンスデータとが含まれる。ここで、仮想マシンのリソースの値は、この仮想マシンの作成時に割り当てられたリソースの値であり、ＣＰＵのクロック数、ディスクサイズ、メモリサイズ等が含まれる。パフォーマンスデータは、仮想マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、ＣＰＵ使用率、ディスクビジー率等が含まれる。
一方、物理マシンのリソースの値は、情報処理装置２０が備えるハードウェアによって規定される値であり、仮想マシンのリソースの値と同様に、ＣＰＵのクロック数、ディスクサイズ、メモリサイズ等が含まれる。物理マシンのパフォーマンスデータは、物理マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、ＣＰＵ使用率、ディスクビジー率等が含まれる。
【００２７】
次いで、検証装置１０は、情報取得部１３を通じて、導入先として指定された仮想マシンと同居する仮想マシンの情報を取得する（Ｓ１４）。図１に示した例では、アプリケーションの導入先を仮想マシン２２ｃとしているため、Ｓ１４では、情報処理装置２０に同居している仮想マシン２２ａ及び２２ｂの情報を取得する。図８は同居している仮想マシンの情報の一例を示す図である。取得する仮想マシンの情報には、計算機資源（リソース）の情報と、稼働時のパフォーマンスデータとが含まれる。ここで、仮想マシンのリソースの値は、この仮想マシンの作成時に割り当てられたリソースの値であり、ＣＰＵのクロック数、ディスクサイズ、メモリサイズ等が含まれる。パフォーマンスデータは、仮想マシンが動作している間のリソースの使用状況を表し、メモリ使用量、ディスクサイズ、ＣＰＵ使用率、ディスクビジー率等が含まれる。なお、図８には一台分の仮想マシン情報を示しているが、同居する仮想マシンが複数台存在する場合には、複数の仮想マシン情報を取得する。ここで、同居する仮想マシンは、情報処理装置２０内でアプリケーションの導入先として指定された仮想マシン以外の仮想マシンを指す。
【００２８】
次いで、検証装置１０の検証部１４は、導入しようとしているアプリケーションの予測使用リソースを算出する（Ｓ１５）。図９は予測使用リソースの算出手順の一例を示すフローチャートである。Ｓ１１にて、導入しようとしているアプリケーションの基礎値及び基礎値計測時のマシン情報を取得し、Ｓ１２及びＳ１３にて、導入先として指定された仮想マシンの情報、及び物理マシンの情報を取得しているため、検証部１４は、これらの情報を用いて、アプリケーションの基礎値を取得したマシンと導入先の仮想マシンとのＣＰＵを比較し（Ｓ１５１）、両者の比率を算出する。そして、検証部１４は、算出した比率を用いて、導入先仮想マシンでのＣＰＵ使用率予測値を算出し（Ｓ１５２）、物理マシンの使用率予測値を算出する（Ｓ１５３）。
【００２９】
Ｓ１５で予測使用リソースを算出した後、検証部１４は、予測使用リソースを仮想マシン及び物理マシンで確保できるか否かを判断する（Ｓ１６）。すなわち、算出した予測使用リソースの値と、Ｓ１２及びＳ１３で取得した仮想マシン及び物理マシンの情報とを比較し、予測使用リソースを確保できるか否かを判断する。
予想使用リソースを確保できない場合には（Ｓ１６：ＮＯ）、検証部１４は、表示部１６に検証結果を表示する（Ｓ２２）。ここでは、リソースを確保できないため、アプリケーションの導入が不可である旨の検証結果を表示する。
【００３０】
予想使用リソースを確保できると判断した場合（Ｓ１６：ＹＥＳ）、検証部１４は、既に他の仮想マシンに導入され、動作している同一アプリケーションを検索し（Ｓ１７）、同一アプリケーションが存在するか否かを判断する（Ｓ１８）。同一アプリケーションが存在しないと判断した場合には（Ｓ１８：ＮＯ）、検証部１４は、類似アプリケーションの検索を行う（Ｓ１９）。なお、Ｓ１９において類似アプリケーションが見つからない場合、アプリケーションの導入の可否を検証できない旨を通知するか、又は、本システムの管理者又は情報処理装置２０のユーザに適宜のアプリケーションを選択させる構成としてもよい。
【００３１】
図１０は類似アプリケーションの検索手順の一例を示すフローチャートである。検証部１４は、まず、導入するアプリケーションと同じレベルのスループットを要求するアプリケーションを情報処理装置２０から検索し（Ｓ１９１）、検索されたアプリケーション（すなわち、導入するアプリケーションと同じレベルのスループットを要求するアプリケーション）の単体性能情報より、ディスクＩＯ平均値を算出する（Ｓ１９２）。
【００３２】
そして、 検索されたアプリケーションのディスクＩＯ平均値と、導入対象となるアプリケーションのディスクＩＯ平均値とを比較し（Ｓ１９３）、アプリケーションの類比判定を行う（Ｓ１９４）。例えば、両者のディスクＩＯ平均値の差異が５％以内である場合、検索されたアプリケーションは類似アプリケーションと判断し、差異が５％より大きい場合、非類似のアプリケーションと判断する。
【００３３】
Ｓ１８で同一アプリケーションが存在すると判断した場合（Ｓ１８：ＹＥＳ）、又はＳ１９の類似アプリケーションの検索の後、検証部１４は、検索されたアプリケーションの稼働時の物理マシン及び仮想マシンの情報を取得する（Ｓ２０）。図１１は同一アプリケーションが導入された物理マシン及び仮想マシンの情報の一例を示す図である。本実施の形態では、導入先の仮想マシンと同居する仮想マシンから同一アプリケーションを検索する構成としており、物理マシンについては共通であるため、物理マシンのリソースの情報及びパフォーマンスデータは、図７に示す物理マシンの情報と全く同様である。一方、仮想マシンの情報は、検索されたアプリケーションが導入されている仮想マシンについて計測されたリソースの情報及びパフォーマンスデータが取得される。
なお、図１１では同一アプリケーションが導入された物理マシン及び仮想マシンの情報を示したが、検索されたアプリケーションが類似アプリケーションである場合、同一アプリケーションと同様にして、類似アプリケーションが導入された仮想マシンの情報と、物理マシンの情報とがＳ２０で取得される。
【００３４】
Ｓ２０で検索されたアプリケーションの稼働時の物理マシン及び仮想マシンの情報を取得した後、検証部１４は、アプリケーションの導入可否を検証し（Ｓ２１）、検証結果を表示部１６に表示させる（Ｓ２２）。
【００３５】
以下、Ｓ２１でのアプリケーションの導入可否を検証する手順について説明する。図１２はアプリケーションの導入可否の検証手順の一例を示すフローチャートである。検証部１４は、導入先の仮想マシンと同一又は類似アプリケーションが導入されている仮想マシンとのマシンスペックの比較を行い（Ｓ３１）、同一又は類似アプリケーションのパフォーマンスを導入先の仮想マシンで確保できるか否かを検証する（Ｓ３２）。
【００３６】
次いで、検証部１４は、期間ピーク値での比較を行う（Ｓ３３）。詳細な手順については後述することとするが、ここでは、一定期間毎（例えば、日次毎、月次毎、四半期毎、年次ごと）にパフォーマンスを調べ、リソースへの負荷が最大となる期間を求め、その期間でのパフォーマンスと比較を行う。
【００３７】
次いで、検証部１４は、他の仮想マシンへの影響を検証する（Ｓ３４）。詳細な手順については後述することとするが、ここでは、アプリケーションを実際に仮想マシンに導入した場合の他の仮想マシンへの影響を検証する。
【００３８】
図１３は期間ピーク値での比較手順の一例を示すフローチャートである。検証部１４は、まず、同一又は類似アプリケーションのパフォーマンスより、日次、月次、四半期、年次の負荷ピークとなるタイミングとパフォーマンス値とを検出する（Ｓ４１）。図１４及び図１５は、それぞれ同一アプリケーション、同居仮想マシン上アプリケーションの負荷ピークの検出例を示す図である。
【００３９】
次いで、Ｓ４１で取得した日次、月次、四半期、年次の負荷ピークとなるタイミングでのパフォーマンスと、導入先仮想マシンでのパフォーマンスとの比較を行う（Ｓ４２〜Ｓ４５）。
【００４０】
一例として、日次の負荷ピークタイミングとなるパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順について説明する。図１６及び図１７は、負荷ピークタイミングでのパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順の一例を示すフローチャートである。検証部１４は、まず、負荷ピーク時刻でのメモリ使用量（ａとする）を取得すると共に、導入先仮想マシンでのメモリ使用量（ｂとする）を取得する（Ｓ４２１及びＳ４２２）。
【００４１】
次いで、検証部１４は、負荷ピーク時刻でのメモリ使用量と導入先仮想マシンでのメモリ使用量との大小関係を判断し（Ｓ４２３）、導入先仮想マシンでのメモリ使用量の方が大きい場合には（Ｓ４２３：ＹＥＳ）、メモリ量の差分を算出する（Ｓ４２４）。算出されたメモリ量の差分は検証結果として記憶される。
【００４２】
導入先仮想マシンでのメモリ使用量の方が小さい場合（Ｓ４２３：ＮＯ）、又はＳ４２４でメモリ量の差分を算出した場合（Ｓ４２４）、検証部１４は、負荷ピーク時刻でのＣＰＵ使用率（ｆとする）を取得すると共に、同一アプリケーションが導入されている仮想マシンでのＣＰＵクロック数（ｃとする）、及び導入先仮想マシンでのＣＰＵクロック数（ｄとする）を取得する（Ｓ４２５〜Ｓ４２７）。
【００４３】
次いで、検証部１４は、同一アプリケーションが導入されている仮想マシンでのＣＰＵクロック数（ｃ）を導入先仮想マシンでのＣＰＵクロック数（ｄ）により除算した値（ｅとする）と、負荷ピーク時刻でのＣＰＵ使用率（ｆ）との乗算することにより、導入先でのＣＰＵ使用率の予測値を算出する（Ｓ４２８）。検証部１４は算出した予測値が１００を越えるか否かを判断し（Ｓ４２９）、導入先でのＣＰＵ使用率の予測値（ｅ×ｆ）が１００を越える場合には（Ｓ４２９：ＹＥＳ）、ＣＰＵ使用率の差分を算出する（Ｓ４３０）。算出されたＣＰＵ使用率の差分は検証結果として記憶される。
【００４４】
導入先でのＣＰＵ使用率の予測値（ｅ×ｆ）が１００を越えない場合（Ｓ４２９：ＮＯ）、Ｓ４３０でＣＰＵ使用率の差分を算出した場合（Ｓ４３０）、検証部１４は、同一アプリケーションのディスクビジー率（ｇとする）を取得する（Ｓ４３１）。
【００４５】
次いで、検証部１４は、同一アプリケーションのディスクビジー率ｇが９０％より小さく、かつ、ディスクドライブ型番が同一であるか否かを判断する（Ｓ４３２）。同一アプリケーションのディスクビジー率ｇが９０％より小さく、かつ、ディスクドライブ型番が同一である場合には（Ｓ４３２：ＹＥＳ）、ディスクアクセス待機中のシステム要求数を取得する（Ｓ４３３）。
Ｓ４３２で、同一アプリケーションのディスクビジー率ｇが９０％以上であるか、若しくは、ディスクドライブ型番が同一でないと判断した場合（Ｓ４３２：ＮＯ）、又はＳ４３３でシステム要求数を取得した場合（Ｓ４３３）、検証部１４は、ＣＰＵ使用率、ディスクＩＯ負荷、メモリ使用量のそれぞれについて結果を収集し、記憶する（Ｓ４３４）。
【００４６】
なお、図１６及び図１７に示したフローチャートでは、日次の負荷ピークタイミングとなるパフォーマンスと導入先仮想マシンでのパフォーマンスとの比較手順について説明したが、月次、四半期、年次の負荷ピークタイミングについても同様の手順でパフォーマンスの比較を行うことが可能である。
【００４７】
図１８及び図１９は、他の仮想マシンへの影響を検証する手順の一例を示すフローチャートである。検証部１４は、導入対象の仮想マシンと同居する別の仮想マシンが存在するか否かを判断する（Ｓ３４１）。同居する他の仮想マシンが存在しない場合には（Ｓ３４１：ＮＯ）、本フローチャートによる処理を終了する。
【００４８】
導入対象の仮想マシンと同居する他の仮想マシンが存在すると判断した場合（Ｓ３４１：ＹＥＳ）、検証部１４は、その仮想マシンでの日次、月次、四半期、年次における負荷ピークタイミングを算出する（Ｓ３４２）。そして、導入先の仮想マシンにおける負荷ピークタイミングと同一のピークタイミングが存在するか否かを判断する（Ｓ３４３）。同一のピークタイミングが存在しない場合には（Ｓ３４３：ＮＯ）、本フローチャートによる処理を終了する。
【００４９】
同一のピークタイミングが存在すると判断した場合（Ｓ３４３：ＹＥＳ）、検証部１４は、ピークタイミングとなる期間での物理マシンのパフォーマンスデータを取得する（Ｓ３４４）。
【００５０】
次いで、検証部１４は、物理マシンでのＣＰＵ使用率（ｐとする）と、仮想マシンでのＣＰＵ使用率（ｑとする）とを比較し（Ｓ３４５）、ｐ＋ｑ＜１００であるか否かを判断する（Ｓ３４６）。ｐ＋ｑが１００以上であれば（Ｓ３４６：ＮＯ）、検証部１４は、ＣＰＵ使用率の差分を算出する（Ｓ３４７）。
【００５１】
Ｓ３４６で、ｐ＋ｑ＜１００の関係を満たすと判断した場合（Ｓ３４６：ＹＥＳ）、又はＳ３４７で、ＣＰＵ使用率の差分を算出した場合（Ｓ３４７）、物理マシンのメモリ使用量（ｒとする）、仮想マシンの予測メモリ使用量（ｓとする）、及び物理マシンの搭載メモリ量（ｔとする）を取得する（Ｓ３４８）。
【００５２】
次いで、検証部１４は、物理マシンのメモリ使用量ｒと仮想マシンの予測メモリ使用量ｓとの和が、物理マシンの搭載メモリ量ｔより小さいか否かを判断する（Ｓ３４９）。物理マシンのメモリ使用量ｒと仮想マシンの予測メモリ使用量ｓとの和が、物理マシンの搭載メモリ量ｔ以上であれば（Ｓ３４９：ＮＯ）、検証部１４は、メモリ量の差分を算出する（Ｓ３５０）。
【００５３】
Ｓ３４９で、物理マシンのメモリ使用量ｒと仮想マシンの予測メモリ使用量ｓとの和が、物理マシンの搭載メモリ量ｔより小さいと判断した場合（Ｓ３４９：ＹＥＳ）、又はＳ３５０でメモリ量の差分を算出した場合（Ｓ３５０）、検証部１４は、同一アプリケーションのディスクビジー率を取得する（Ｓ３５１）。
【００５４】
次いで、検証部１４は、仮想マシンを格納してあるディスクが同一のディスクであるか否かを判断し（Ｓ３５２）、同一のディスクであると判断した場合（Ｓ３５２：ＹＥＳ）、ディスクアクセス待機中のシステム要求数を取得する（Ｓ３５３）。
【００５５】
Ｓ３５２で、仮想マシンを格納してあるディスクが同一のディスクでないと判断した場合（Ｓ３５２：ＮＯ）、又はＳ３５３でディスクアクセス待機中のシステム要求数を取得した場合（Ｓ３５３）、検証部１４は、ＣＰＵ使用率、ディスクＩＯ負荷、メモリ使用量のそれぞれについて結果を収集し、記憶する（Ｓ３５４）。
【００５６】
図２０は検証結果の一例を示す図である。検証結果としては、導入対象のアプリケーションを仮想マシンに導入した場合の性能予測値（単体性能予測値）、各期間におけるパフォーマンスの予測値、他のアプリケーションへの影響が含まれる。このような、検証結果は、図１６及び図１７に示すような比較処理を行う都度、図１８及び図１９に示すような検証処理を行う都度、検証部１４によって作成される情報である。検証結果は、例えば、表示部１６に表示される。
システム運用者や管理者は、表示部１６に表示された検証結果に基づき、アプリケーションの導入の可否を決定することができる。また、検証結果の１つ以上の項目（例えば、ＣＰＵ使用率）に対して閾値を設定しておき、検証部１４が、検証結果で得た値と閾値とを比較することにより、導入の可否を判定し、システム運用者や管理者に通知する構成としてもよい。
【００５７】
以上のように、本実施の形態では、仮想マシンの利用時に発生しやすい性能問題を予め検証結果として表示することができるため、アプリケーションの導入可否を決定し、性能問題の発生を事前に回避させることができる。また、アプリケーションを導入するのに最適な仮想マシンであるか否かを判断できるので、余剰リソースの最適化を図ることができる。
更に、検証装置１０が、検証に必要な物理マシンや仮想マシンの情報を自動的に収集し、検証を行うため、システム運用者や管理者がリリース作業に費やす作業負担を軽減することができる。また、システム運用者や管理者による作業を大幅に削減することできるため、迅速かつ少ないリソースでサービスの提供が可能となる。
【００５８】
以上の実施の形態に関し、更に以下の付記を開示する。
【００５９】
（付記１）
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得する第１の取得部、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得する第２の取得部、
該第２の取得部が取得した情報に基づき、前記アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出する算出部、及び
前記第１の取得部が取得した情報と該算出部が算出した予測値とを比較し、比較結果を出力する出力部
を備えることを特徴とする情報提供装置。
【００６０】
（付記２）
前記アプリケーションと同一又は類似のアプリケーションを導入した他の仮想計算機を検索する検索部を更に備え、
前記出力部が、
前記他の仮想計算機の負荷と前記算出部が算出した予測値とを比較し、比較結果を出力する
ことを特徴とする付記１に記載の情報提供装置。
【００６１】
（付記３）
前記計測部が、
所定期間毎に各仮想計算機の負荷を計測し、
前記出力部が、
前記他の仮想計算機の負荷が最も高い期間の負荷と前記算出部が算出した予測値とを比較し、比較結果を出力する
ことを特徴とする付記１又は付記２に記載の情報提供装置。
【００６２】
（付記４）
前記比較結果に基づいて、前記アプリケーションの導入の可否を判断する判断部を更に備えることを特徴とする付記１から付記３の何れか１つに記載の情報提供装置。
【００６３】
（付記５）
前記検索部は、前記他の仮想計算機の負荷が近似するアプリケーションを類似のアプリケーションとして検索するようにしてあることを特徴とする付記２に記載の情報提供装置。
【００６４】
（付記６）
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得し、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得し、
取得した前記アプリケーションに関する情報に基づき、該アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出し、
算出した予測値と前記実計算機から取得した負荷に係る情報とを比較し、比較結果を出力する
ことを特徴とする情報提供方法。
【００６５】
（付記７）
コンピュータに、
複数の仮想計算機と、各仮想計算機の負荷を計測する計測部とを備える実計算機から、前記計測部が計測した負荷に係る情報を取得し、
前記複数の仮想計算機のうち所定の仮想計算機に新たに導入するアプリケーションに関する情報を取得し、
取得した前記アプリケーションに関する情報に基づき、該アプリケーションを前記所定の仮想計算機に導入した際の該所定の仮想計算機の負荷についての予測値を算出し、
算出した予測値と前記実計算機から取得した負荷に係る情報とを比較し、比較結果を出力すること
を実行させるプログラム。
【符号の説明】
【００６６】
１０  検証装置
１１  制御部
１２  記憶部
１３  情報取得部
１４  検証部
１５  操作部
１６  表示部
１７  操作部
１２１  プログラム
１２２  管理用ＤＢ
【図１】
0005742125.tif 000002
【図２】
0005742125.tif 000003
【図３】
0005742125.tif 000004
【図４】
0005742125.tif 000005
【図５】
0005742125.tif 000006
【図６】
0005742125.tif 000007
【図７】
0005742125.tif 000008
【図８】
0005742125.tif 000009
【図９】
0005742125.tif 000010
【図１０】
0005742125.tif 000011
【図１１】
0005742125.tif 000012
【図１２】
0005742125.tif 000013
【図１３】
0005742125.tif 000014
【図１４】
0005742125.tif 000015
【図１５】
0005742125.tif 000016
【図１６】
0005742125.tif 000017
【図１７】
0005742125.tif 000018
【図１８】
0005742125.tif 000019
【図１９】
0005742125.tif 000020
【図２０】
0005742125.tif 000021