(57)【要約】  物理サーバ上の空きリソース量で実行可能なワークロードを見積もる。  情報処理装置（２０）は、物理サーバ（３０）上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶する性能情報記憶部（２５）と、物理サーバ（３０）の空きリソース量を取得する取得部（２１）と、記憶されたワークロードの少なくとも１つを選択し、選択されたワークロードに関連付けられたリソース量と、空きリソース量とを比較する比較部（２２）と、比較されたリソース量が空きリソース量以下である場合に、選択されたワークロードを抽出する第１抽出部（２３）と、を備える。
2011093011.tif 000002
【特許請求の範囲】
【請求項１】
物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた前記物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶する性能情報記憶手段と、
前記物理サーバの空きリソース量を取得する取得手段と、
前記性能情報記憶手段に記憶された情報の中から少なくとも１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量と、前記取得手段によって取得された空きリソース量とを比較する比較手段と、
前記比較手段によって比較されたリソース量が前記空きリソース量以下である場合に、前記比較手段によって選択されたワークロードを抽出する第１抽出手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記取得手段は、物理サーバ上で仮想サーバを稼動したとき、当該仮想サーバによって使用された仮想サーバリソース量と、当該物理サーバが許容可能なリソース許容量と、を取得し、取得された当該リソース許容量と当該仮想サーバリソース量との差分から前記空きリソース量を得ることを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記比較手段は、さらに、選択された前記ワークロードに関連付けられたリソース量と、前記取得手段によって取得された前記仮想サーバリソース量とを比較し、
前記比較手段によって比較されたリソース量が前記仮想サーバリソース量に近似する場合に、前記比較手段によって選択されたワークロードを抽出する第２抽出手段を更に備えることを特徴とする情報処理装置。
【請求項４】
請求項３に記載の情報処理装置であって、
前記性能情報記憶手段は、通信網を介して前記仮想サーバを授受することができる複数の物理サーバの各々に関し、前記物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられたリソース量と各ワークロードを示す情報と、を関連付けて記憶し、
前記取得手段は、前記複数の物理サーバのうち、第１物理サーバ上で稼動した仮想サーバによって使用された仮想サーバリソース量を取得し、さらに第２物理サーバ上の空きリソース量を取得し、
前記比較手段は、前記性能情報記憶手段に記憶された情報の中から少なくとも１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量の総和と、前記取得手段によって取得された空きリソース量とを比較し、
前記第２抽出手段は、前記比較手段によって比較された前記リソース量が前記仮想サーバリソース量に近似する場合に、前記比較手段によって選択された前記ワークロードを抽出し、
前記性能情報記憶手段に記憶され、前記第２物理サーバに関連付けられ、前記第２抽出手段によって抽出されたワークロードと関連付けられたリソース量を抽出する第３抽出手段と、
前記取得手段によって取得された第２物理サーバ上の空きリソース量が、前記第３抽出手段によって抽出されたリソース量より大きい場合に、前記仮想サーバを前記第２物理サーバ上で稼動させる仮想サーバ稼動手段と、
を更に備えることを特徴とする情報処理装置。
【請求項５】
請求項１乃至４いずれか１項に記載の情報処理装置であって、
前記比較手段は、前記性能情報記憶手段に記憶されたワークロードのうち少なくとも二つを選択し、選択されたワークロードに関連付けられたリソース量の総和と、前記取得手段によって取得された空きリソース量とを比較し、
前記第１抽出手段は、前記比較手段によって比較された前記リソース量の総和が前記空きリソース量以下である場合に、前記比較手段によって選択された複数のワークロードを抽出することを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置であって、
前記物理サーバ上の性能計測用仮想サーバに対して、複数種のワークロードの実行と、実行させるワークロードの負荷値と、を指示する計測実行手段を備え、
前記性能計測用仮想サーバは、指示されたワークロードを、指示された負荷値で実行したとき、当該ワークロードに割り当てられる前記物理サーバ上のリソース量を計測し、実行されたワークロードを示す情報と、当該ワークロードに対応する負荷値と、計測されたリソース量と、を夫々関連付けて通知し、
前記性能情報記憶手段は、前記性能計測用仮想サーバによって関連付けて通知された前記ワークロードを示す情報と前記負荷値と前記リソース量とを夫々記憶することを特徴とする情報処理装置。
【請求項７】
請求項６に記載の情報処理装置であって、
前記性能情報記憶手段に関連付けられて記憶された前記負荷値と前記リソース量との相関関係に基づいて、当該負荷値と当該リソース量に関連付けられたワークロードに割り当て可能なリソース量の補間値を算出する補間手段を更に備え、
前記性能情報記憶手段は、前記補間手段によって算出された補間値を、前記複数種のワークロードの夫々に関連付けて記憶し、
前記比較手段は、選択された前記ワークロードに関連付けられた前記リソース量または前記補間値をワークロードごとに選択し、選択されたリソース量または補間値をリソースの種別ごとに合計し、算出されたリソースの種別ごとのリソース量または補間値の合計と、前記取得手段によって取得された空きリソース量とを、リソースの種別ごとに比較し、
前記第１抽出手段は、前記比較手段によって比較された各リソース量の合計が、全てのリソース種別において前記空きリソース量以下である場合、前記比較手段によって選択されたワークロードと、リソース量または補間値とを抽出することを特徴とする情報処理装置。
【請求項８】
請求項７に記載の情報処理装置であって、
前記第１抽出手段は、前記比較手段によって選択されたワークロードと、リソース量または補間値とを組み合わせて抽出し、
前記第１抽出手段によって抽出されたワークロードとリソース量または補間値との組合せごとに、当該組合せに含まれるリソース量または補間値と空きリソース量とを比較して評価指標を算出し、当該評価指標が最小である組合せを抽出する第４抽出手段を更に備えることを特徴とする情報処理装置。
【請求項９】
コンピュータが、
物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた前記物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶し、
前記物理サーバの空きリソース量を取得し、
前記記憶されたワークロードの少なくとも１つを選択し、
前記選択されたワークロードに関連付けられたリソース量と、前記取得された空きリソース量とを比較し、
前記比較されたリソース量が前記空きリソース量以下である場合に、前記選択されたワークロードを抽出する、
ことを含む情報処理方法。
【請求項１０】
物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた前記物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶する第１記憶処理と、
前記物理サーバの空きリソース量を取得する取得処理と、
前記第１記憶処理で記憶されたワークロードの少なくとも１つを選択し、選択されたワークロードに関連付けられたリソース量と、前記取得処理で取得された空きリソース量とを比較する比較処理と、
前記比較処理で比較されたリソース量が前記空きリソース量以下である場合に、前記比較処理で選択されたワークロードを抽出する第１抽出処理と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、及び情報処理方法に関する。
【背景技術】
【０００２】
近年、処理効率やアベイラビリティ（可用性）の向上等を目的として、一の物理サーバから他の物理サーバに処理を委託可能なように情報処理システムを構築することがある。このような場合、委託する処理が委託先の物理サーバにかける負荷を事前に見積もることが有用である。すなわち、見積もった負荷が委託先の物理サーバの許容量を超えないとき、当該処理を当該物理サーバに委託することによって、システム全体の処理効率やアベイラビリティを向上させることができる。【０００３】
この種の技術として、特許文献１（特許第４２４００６２号広報）には、複数の物理サーバで仮想サーバを稼働させる仮想サーバ環境において、各物理サーバの処理能力の余裕を同じ基準で計測することが記載されている。【０００４】
また、この種の技術として、特許文献２（特開２００５−２２７９３２号公報）には、複数台の計算機における評価対象ソフトウェアの整数演算の処理量と浮動小数点演算の処理量とを推定し、さらに評価対象ソフトウェアの処理時間を推定することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４２４００６２号公報
【特許文献２】特開２００５−２２７９３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら上記技術は、以下の点で改善の余地を有していた。特許文献２において推定される整数演算または浮動少数点演算の処理量とは、専用の指標値に基づいて求められるものであって、リソースへの負荷を直接示すものではない。従って、物理サーバの空きリソース量で実行可能なワークロードを見積もることを目的としたとき、特許文献２に記載の推定方法は適当ではない。【０００７】
本発明は上記事情に鑑みてなされたものであり、その目的とするところは、物理サーバ上の空きリソース量で実行可能なワークロードを見積もる情報処理装置、及び情報処理方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の一態様に係る情報処理装置は、物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶する性能情報記憶手段と、物理サーバの空きリソース量を取得する取得手段と、上記性能情報記憶手段に記憶された情報の中から少なくとも１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量と、上記取得手段によって取得された空きリソース量とを比較する比較手段と、この比較手段によって比較されたリソース量が当該空きリソース量以下である場合に、上記比較手段によって選択されたワークロードを抽出する第１抽出手段と、を備える。【０００９】
また、本発明の一態様に係る情報処理方法は、コンピュータが、物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶し、当該物理サーバの空きリソース量を取得し、記憶されたワークロードの少なくとも１つを選択し、当該選択されたワークロードに関連付けられたリソース量と、取得された空きリソース量とを比較し、比較されたリソース量が空きリソース量以下である場合に、選択されたワークロードを抽出する。【００１０】
さらに、本発明の一態様に係るプログラムは、物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバのリソース量と各ワークロードを示す情報とを関連付けて記憶する第１記憶処理と、当該物理サーバの空きリソース量を取得する取得処理と、上記第１記憶処理で記憶されたワークロードのいずれかを選択し、選択されたワークロードに関連付けられたリソース量と、上記取得処理で取得された空きリソース量とを比較する比較処理と、この比較処理で比較されたリソース量が空きリソース量以下である場合に、上記比較処理で選択されたワークロードを抽出する第１抽出処理と、をコンピュータに実行させる。
【発明の効果】
【００１１】
本発明によれば、物理サーバ上の空きリソース量で実行可能なワークロードを見積もる情報処理装置、情報処理方法が提供される。
【図面の簡単な説明】
【００１２】
上述した目的、およびその他の目的、特徴および利点は、以下に述べる好適な実施の形態、およびそれに付随する以下の図面によってさらに明らかになる。【００１３】
【図１】第１の実施形態に係る情報処理システムの構成図である。
【図２】第１の実施形態の性能情報記憶部に記憶されているテーブルを示す図である。
【図３】第１の実施形態の情報処理装置の動作フローを示すフローチャートである。
【図４】第２の実施形態に係る情報処理システムの構成図である。
【図５】実測されたリソース量と、算出された性能特性値との関係を示す図である。
【図６】第２の実施形態の自律制御サーバの動作フローを示すフローチャートである。
【図７】評価指標を最小にするワークロードの値の組合せを求める手順を示すフローチャートである。
【図８】第３の実施形態に係る情報処理システムの構成図である。
【図９】第３の実施形態の自律制御サーバの動作フローを示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１５】
〔第１の実施形態〕
まず、第１の実施形態の情報処理システム１００について説明する。図１は、第１の実施形態に係る情報処理システム１００の構成図である。情報処理システム１００は、通信網１０を介して種々の情報やプログラム、仮想サーバ等を送受信可能な情報処理装置２０と物理サーバ３０とから構成される。
【００１６】
情報処理装置２０は、取得部２１と、比較部２２と、第１抽出部２３と、記憶部２４と、から構成される。なお、情報処理装置２０は、ここで図示する構成要素以外の構成要素を含んでも構わない。
【００１７】
記憶部２４には、物理サーバ３０上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバ３０のリソース量と各ワークロードを示す情報とを関連付けて記憶する性能情報記憶部２５が含まれる。なお、性能情報記憶部２５は、記憶部２４の記憶領域の一部または全部である。また、性能情報記憶部２５に記憶されている情報は、物理サーバ３０から取得されてもよく、図示されない他の装置から取得されてもよく、情報処理装置２０内の図示されない他の構成要素から取得されてもよい。
【００１８】
取得部２１は、物理サーバ３０の空きリソース量を取得する。比較部２２は、性能情報記憶部２５に記憶された情報の中から少なくとも１つのワークロードを選択し、選択された少なくとも１つのワークロードに関連付けられたリソース量と、取得部２１によって取得された空きリソース量とを比較する。第１抽出部２３は、比較部２２によって比較されたリソース量が空きリソース量以下であるとき、比較部２２によって選択された少なくとも１つのワークロードを抽出する。ここで、第１抽出部２３によって抽出された少なくとも１つのワークロードが、物理サーバ３０上の空きリソース量で実行可能なワークロードに相当する。
【００１９】
ワークロードとは、リソースを割り当てられて実行される処理、または処理群である。具体的には、浮動小数点演算やＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）の送受信処理、ハードディスクドライブへのランダムアクセス等である。なお、ワークロードに割り当てられるリソースは、物理リソースであってもよいし、仮想リソースであってもよい。
【００２０】
本実施形態において、リソース量または空きリソース量は、ＣＰＵ使用率〔％〕、メモリ使用量〔ＭＢ〕、ハードディスクドライブに対する読み込み帯域幅及び書き込み帯域幅〔ＭＢ／ｓ〕、ネットワーク送信帯域幅／受信帯域幅〔ｂｐｓ〕のいずれか１つ又はいずれか複数の組み合わせを示す値である。ただし、本実施形態に用いるリソース量は、ここに挙げた一部であってもよいし、他の種別のリソース量を用いても構わない。
【００２１】
取得部２１が、物理サーバ３０の空きリソース量を取得する処理は、自律的に実行されてもよいし、他律的に実行されてもよい。例えば、取得部２１は、所定の時刻に空きリソース量を取得してもよいし、情報処理装置２０の運用者によって生成された指令に応じて空きリソース量を取得してもよい。
【００２２】
図２は、性能情報記憶部２５に記憶されているテーブルを示す図である。なお、ここで図示しているフォーマットは一例に過ぎず、必ずしもこのフォーマットに限定するものではない。性能情報記憶部２５は、複数のテーブルを関連付けることによって、図２のテーブルと同等の情報を有してもよい。
【００２３】
性能情報記憶部２５は、各ワークロード種に関し、複数のワークロードを示す情報と、異なる値を示す複数のリソース量とを関連付けて記憶している。また、性能情報記憶部２５は、各々のワークロードに、異なる種別の各リソースのリソース量を関連付けて記憶している。すなわち、性能情報記憶部２５には、同一ワークロード種に関し、複数種のリソースの中の少なくとも１つのリソース量がそれぞれ異なる複数のワークロードを示す情報が記憶されている。
【００２４】
比較部２２は、性能情報記憶部２５に記憶された情報の中から少なくとも２つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量の総和と、取得部２１によって取得された空きリソース量とを比較する。より詳細には、比較部２２は、選択された少なくとも２つのワークロードに関連付けられたリソース量を選択し、選択されたリソース量をリソースの種別ごとに合計し、リソースの種別ごとに算出された各リソース量の合計と、取得部２１によって取得された空きリソース量とをリソースの種別ごとに比較する。
【００２５】
第１抽出部２３は、比較部２２によって比較されたリソース量の総和が空きリソース量以下であるとき、比較部２２によって選択された複数のワークロードを抽出する。より詳細には、第１抽出部２３は、比較部２２によって比較されたリソース量の合計が、全てのリソース種別において空きリソース量以下であるとき、比較部２２によって選択されたワークロードとリソース量とを夫々抽出する。
【００２６】
上述した取得部２１、比較部２２、第１抽出部２３の全部または一部は、ハードウェアで実現されてもよいし、あるいは、プロセッサに処理を実行させるプログラム（またはプログラムコード）で実現されてもよい。プロセッサは、不揮発性メモリなどの記録媒体からそのプログラムを読み出し実行する。本実施形態において、当該プログラムを格納する記憶媒体は記憶部２４であってもよい。
【００２７】
取得部２１、比較部２２または第１抽出部２３がプログラムによって実施される場合、当該プログラムはプロセッサ（コンピュータ）読み出し可能な記憶媒体に格納される。そして、当該プログラムは、以下の処理をプロセッサに実行させる。
（ａ）物理サーバ３０上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバ３０のリソース量と各ワークロードを示す情報とを関連付けて記憶する。
（ｂ）物理サーバ３０の空きリソース量を取得する。
（ｃ）性能情報記憶処理で記憶された情報の中から少なくとも１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量と、取得部２１によって取得された空きリソース量とを比較する。
（ｄ）比較されたリソース量が空きリソース量以下であるとき、比較処理で選択された少なくとも１つのワークロードを抽出する。
【００２８】
図３は、本実施形態の情報処理装置２０の動作フローを示すフローチャートである。まず、情報処理装置２０は、物理サーバ３０上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた物理サーバ３０のリソース量と各ワークロードを示す情報とを関連付けて記憶する（ステップＳ１）。続いて、情報処理装置２０は、物理サーバ３０の空きリソース量を取得する（ステップＳ２）。そして、情報処理装置２０は、ステップＳ１で記憶されたデータの中から１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量と、取得部２１によって取得された空きリソース量とを比較する（ステップＳ３）。そして、ステップＳ３で比較されたリソース量が空きリソース量以下であるとき（ステップＳ４のＹＥＳ）、ステップＳ３で選択された１つのワークロードを抽出する（ステップＳ５）。ステップＳ１で記憶された情報で示される各ワークロード、及び、２つ以上のワークロードの全組合せについて、ステップＳ３の比較処理を実行済みであれば（ステップＳ６のＹＥＳ）、このフローチャートは終了となる。
【００２９】
なお、このフローチャートは、ステップＳ３で比較されたリソース量が空きリソース量より大きい場合（ステップＳ４のＮＯ）、ステップＳ６に移行する。また、このフローチャートは、ステップＳ１で記憶された情報で示される各ワークロード、または２つ以上のワークロードの全組合せのうちの一部について、ステップＳ３の比較処理を実行していないのであれば（ステップＳ６のＮＯ）、ステップＳ３に移行する。
【００３０】
ここで、本実施形態の効果について説明する。上述したように、第１抽出部２３によって抽出されるワークロードは、物理サーバ３０上の空きリソース量で実行可能なワークロードまたはワークロードの組合せである。すなわち、物理サーバ３０は、抽出されたワークロードの処理を受け付けても、負荷オーバーとならない。
【００３１】
また、本実施形態は、単一のワークロードに対して割り当てる一のリソース量を変化させながら、他のリソース量の変化も計測し、性能情報記憶部２５に記憶しているので、非線形なリソース量（負荷指標）の変化も、ワークロードの推定に考慮することができる。従って、ワークロードの推定の確度がより向上する。
【００３２】
〔第２の実施形態〕
続いて、第２の実施形態に係る情報処理システム２００について説明する。図４は、本実施形態の情報処理システム２００の構成図である。図４に示すように、情報処理システム２００は、複数の物理サーバ３１〜３ｍ（ｍは正数）と、物理サーバ３１〜３ｍで稼動する各仮想サーバを管理する自律制御サーバ４０とを有する構成である。自律制御サーバ４０と物理サーバ３１〜３ｍとは通信網１０を介して接続される。図４では、物理サーバ３１で稼動する仮想サーバに符号３１１〜３１ｎを付与し、物理サーバ３ｍで稼動する仮想サーバに符号３ｍ１〜３ｍｎを付与して識別している（ｎは正数）。 
【００３３】
物理サーバ３１〜３ｍは、例えば、記録媒体（磁気ディスク、半導体メモリ、光ディスク等）に格納されたプログラムにしたがって処理を実行するコンピュータによって実現される。 
【００３４】
自律制御サーバ４０は、性能情報収集部４１、性能計測実行部４２、計測結果受信部４３、性能特性値生成部４４（補間手段）、ワークロード推定部４５及び記憶部４６を備えている。 また、記憶部４６は、性能情報記憶部４７を含む。
【００３５】
性能情報収集部４１は、物理サーバ３１〜３ｍ及び仮想サーバまたは性能計測用仮想サーバ３１１〜３ｍｎから、それぞれのＣＰＵ使用率、メモリ使用率、記録媒体の入出力性能値（例えば最大データ転送速度に対する入出力データ転送速度の割合）、通信網１０への通信性能（伝送速度や使用帯域等）等の性能に関する情報を負荷指標として取得する。また、性能情報記憶部４７は、一定間隔で取得された物理サーバ３１〜３ｍの負荷指標の値を、履歴データとして記憶する。 
【００３６】
性能計測実行部４２は、物理サーバ３１〜３ｍ上の性能計測用仮想サーバ３１１〜３ｍ１に対して、性能情報の計測を指示する。ここで指示される内容は、実行させるワークロードの種別や、実行させるワークロードの負荷値等が含まれる。以降、ワークロードの負荷の大きさを示す情報を負荷値と表記する。性能計測実行部４２による計測指示を、性能計測用仮想サーバ３１１が受け付けた場合、性能計測用仮想サーバ３１１は、以下のように動作する。まず、性能計測用仮想サーバ３１１は、指示された種別のワークロードを、指示された負荷値で実行する。続いて、性能計測用仮想サーバ３１１は、当該ワークロードに割り当てられる物理サーバ３１上のリソース量を計測する。そして、性能計測用仮想サーバ３１１は、実行されたワークロードを示す情報と、当該ワークロードの負荷値と、計測されたリソース量と、を夫々関連付けて、性能情報の計測結果として自律制御サーバ４０に通知する。ここで、性能情報を計測する方法は、ベンチマークプログラムの実行やその他の専用プログラムを用いた計測など、従来技術を用いて実現するものであり、ここでは特に制限しない。また、ワークロードの負荷値とは、ワークロードの種別によって異なるが、例えば、実行させるワークロードが浮動小数点演算であれば、その回数等に相当する。実行させるワークロードがＵＤＰの送信及び受信であれば、ネットワークの送信帯域幅及び受信帯域幅がワークロードの負荷値に相当する。
【００３７】
計測結果受信部４３は、物理サーバ３１〜３ｍ上で計測された性能情報の計測結果を受信する。また、性能情報記憶部４７は、受信された性能情報の計測結果を記憶する。例えば、性能情報記憶部４７は、ネットワーク受信のワークロードを示す情報と、そのワークロードが実行されたときにそのワークロードに割り当てられた負荷値と、計測されたネットワークの受信帯域幅とを関連付けて記憶してもよい。
【００３８】
性能特性値生成部４４は、性能情報記憶部４７に関連付けられて記憶された負荷値とリソース量との相関関係に基づいて、当該負荷値と当該リソース量に関連付けられたワークロードに割り当て可能なリソース量の補間値である性能特性値を算出する。より詳細には、性能特性値生成部４４は、性能情報記憶部４７に記憶された性能情報の計測結果から、近似関数を生成し、夫々のワークロードが取り得る性能特性値を生成する。また、性能情報記憶部４７は、生成された性能特性値を記憶する。
【００３９】
図５は、実測されたリソース量と、算出された性能特性値との関係を示す図である。"●"の点が実測されたリソース量、"×"の点が近似関数で補完した性能特性値を示す。この図においては、ネットワーク負荷を発生させるワークロード（ワークロード１）とネットワークの受信帯域幅とが比例関係にあるかのように図示しているが、必ずしもこれに限定されるわけではない。また、性能情報記憶部４７に記憶される性能特性値は、実測した値と補完された値を合わせたものとなる。ここで、近似関数は、一次関数またはその他の関数で最小二乗法などにより係数を決定したものを想定しているが、その他の方法で算出してもよい。
【００４０】
ワークロード推定部４５は、性能情報記憶部４７に記憶された物理サーバ３１〜３ｍのリソース量または性能特性値を使って、各物理サーバ３１〜３ｍ上の空きリソース部分で処理可能なワークロードを推定し、性能情報記憶部４７に記憶する。
【００４１】
より詳細には、ワークロード推定部４５は、仮想サーバ３１１〜３ｍ１によって使用された仮想サーバのリソース量と、物理サーバ３１〜３ｍが許容可能なリソースの許容量とを性能情報記憶部４７から取得し、その差分から各物理サーバ３１〜３ｍの空きリソース量に相当する負荷指標を算出して求める。すなわち、ワークロード推定部４５は、第１の実施形態における取得部２１と同等に機能する。
【００４２】
また、ワークロード推定部４５は、性能情報記憶部４７に記憶されたワークロードのうち少なくとも二つを選択し、選択されたワークロードに関連付けられたリソース量または性能特性値をワークロードごとに選択し、選択されたリソース量または性能特性値をリソースの種別ごとに合計し、算出されたリソースの種別毎のリソース量または性能特性値の合計と、取得部２１によって取得された空きリソース量とを、リソースの種別ごとに比較する。すなわち、ワークロード推定部４５は、第１の実施形態における比較部２２と同等に機能する。
【００４３】
さらに、ワークロード推定部４５は、比較された各リソース量の合計が、全てのリソース種別において空きリソース量以下であるとき、選択されたワークロードと、リソース量または性能特性値とを組み合わせて抽出する。すなわち、ワークロード推定部４５は、第１の実施形態における第１抽出部２３と同等に機能する。
【００４４】
さらに、ワークロード推定部４５は、抽出されたワークロードとリソース量または性能特性値との組合せごとに、当該組合せに含まれるリソース量または性能特性値と空きリソース量とを比較して評価指標を算出し、評価指標が最小である組合せを抽出する。
【００４５】
性能情報記憶部４７は、性能情報収集部４１が収集する負荷指標と、計測結果受信部４３が受信した性能情報の計測結果と、性能特性値生成部４４が生成した性能特性値と、を記憶する。すなわち、性能情報記憶部４７は、第１の実施形態における性能情報記憶部２５に含まれる情報と同等の情報を少なくとも保有する。
【００４６】
図６は、本実施形態の自律制御サーバ４０の動作フローを示すフローチャートである。ただし、図４に図示していないが、自律制御サーバ４０は、上述のように物理サーバ３１〜３ｍの負荷指標の値を一定間隔で取得し、履歴データとして性能情報記憶部４７に記憶しているものとする。
【００４７】
まず自律制御サーバ４０は、各物理サーバ３１〜３ｍの性能計測用仮想サーバ３１１〜３ｍ１を呼び出して、性能特性の計測を指示する（ステップＡ１）。続いて、自律制御サーバ４０は、物理サーバ３１〜３ｍの性能計測用仮想サーバ３１１〜３ｍ１から通知された計測結果を受信して、その受信された計測結果を性能情報記憶部４７に記憶する（ステップＡ２）。 そして、自律制御サーバ４０は、性能特性の計測結果から近似関数を生成し、実測値の間の値を補完して性能特性値を算出し、算出された性能特性値を性能情報記憶部４７に記憶する（ステップＡ３）。さらに、自律制御サーバ４０は、性能情報記憶部４７に記憶された物理サーバ３１〜３ｍの性能特性値を使って、各物理サーバ上の空きリソース部分で処理可能なワークロードを推定し、推定されたワークロードを示す情報を性能情報記憶部４７に記憶する（ステップＡ４）。
【００４８】
自律制御サーバ４０（ワークロード推定部４５）は、抽出された組合せに含まれるリソース量または性能特性値と空きリソース量との差分を、リソースの種別ごとに算出し、算出された差分を正規化した値を合算することにより評価指標を求めることができる。より詳細には、以下の式（１）および式（２）のように定式化される。
【数１】
2011093011.tif 000003
【数２】
2011093011.tif 000004
【００４９】
ただし、式（１）および式（２）における各記号の意味は、以下の通りである。
ｎ：ワークロードの種別数
ｍ：単一のワークロードに関連付けられた負荷指標の数
ｘｉ：ある種別のワークロードｉを表す変数
ｆｉｊ（ｘ）：ワークロードｉの性能特性値がｘのときの負荷指標ｊの値
Ｇ：評価指標
【００５０】
図７は、上述の評価指標Ｇを最小にするワークロードの値の組合せを求める手順を示すフローチャートである。はじめに、取り得るワークロードの組合せを選択する（ステップＢ１）。次に、ステップＢ１で選択されたワークロードの組合せがｎ種類であるとき、最初のワークロード種別（ｉ＝１）に対して、性能情報記憶部４７に記憶されている性能特性値の中のワークロードｘｉの性能特性値を最小値から順にひとつ取り出す（ステップＢ２）。次に、ｍ種類の負荷指標のそれぞれについて、ワークロードｘｉの時の性能特性値ｆｉｊ（ｘｉ）を算出する（ステップＢ３）。そして、算出した負荷指標の値を、それぞれの負荷指標ごとに、ワークロードｘ１〜ｘｉ−１までの負荷指標の合計値に合算し、ワークロードｘｉまでの負荷指標の合計値を算出する（ステップＢ４）。
【００５１】
ステップＢ４で算出されたｍ種類の負荷指標の合計値のうち、最大値を超えているものがない場合（ステップＢ５のＮＯ）、かつ全てのワークロードｘ１〜ｘｎが決まっていない場合（ステップＢ６のＮＯ）、ｉに１を足し（ステップＢ７）、次のワークロードｘｉ＋１に対してステップＢ２の処理を実行する。 
【００５２】
全てのワークロードｘ１〜ｘｎが決まっている（ｉ＝ｎである）場合は（ステップＢ６のＹＥＳ）、ワークロードｘｉまでの負荷指標の合計値から評価指標Ｇを算出し、評価指標Ｇが最小の場合のワークロードｘ１〜ｘｉの組を返却し（ステップＢ８）、一部のワークロードの組合せについてステップＢ１の処理が済んでいない場合（ステップＢ９のＮＯ）、ステップＢ２に移行して次のワークロードの組を呼び出す。 
【００５３】
また、ステップＢ３で算出されたｍ種類の負荷指標の合計値のうち、最大値を超えているものがあり（ステップＢ５のＹＥＳ）、かつ一部のワークロードの組合せについてステップＢ１の処理が済んでいない場合（ステップＢ９のＮＯ）、ステップＢ２に移行して次のワークロードの組を呼び出す。 
【００５４】
全てのワークロードの組合せについてステップＢ１の処理が済んでいる場合（ステップＢ９のＹＥＳ）、返却されたワークロードの組合せのうち、評価指標Ｇが最小となるワークロードの組み合わせを、ワークロードの推定値として抽出する（ステップＢ１０）。
【００５５】
ここで、本実施形態の効果について説明する。実測したワークロードと負荷指標の対応関係から性能特性値を生成し、それらからワークロードの推定を行うことにより、性能の異なる物理サーバ上で稼働する仮想サーバのワークロードを高精度に見積もることができるため、仮想サーバのキャパシティ不足や無駄な空きリソースの発生を回避することができる。
【００５６】
自律制御サーバ４０の運用者は、ワークロード推定部４５によって抽出されたワークロードとリソース量または性能特性値との組合せを閲覧することができる。これにより、当該運用者は、各物理サーバ３１〜３ｍの空きリソースを使って仮想サーバを稼働させた場合のワークロードの推定値から、それらの仮想サーバの処理性能を比較することができる。
【００５７】
〔第３の実施形態〕
次に、第３の実施形態について図面を参照して詳細に説明する。図８は、本実施形態の情報処理システム３００の構成図である。情報処理システム３００に含まれる自律制御サーバ５０は、第２の実施形態の自律制御サーバ４０と比較して、ワークロード推定部５１と負荷指標推定部５２と仮想サーバ稼動部５３とを有する点で異なる。その他の構成要素については、第２の実施形態と同等であるので、詳細な説明は割愛する。
【００５８】
ワークロード推定部５１は、第２の実施形態のワークロード推定部４５と同等の処理を実行することができる。そして、ワークロード推定部５１は、複数の物理サーバ３１〜３ｍのうち、例えば、物理サーバ３ｉ（１≦ｉ≦ｍ）上で稼動した仮想サーバ３ｉｐ（２≦ｐ≦ｎ）によって使用された仮想サーバの負荷指標（リソース量）を取得し、さらに別の物理サーバ３ｊ（１≦ｊ≦ｍ、ｉ≠ｊ）上の空きリソース量を求める。さらに、ワークロード推定部５１は、性能情報記憶部４７に記憶されたワークロードの少なくとも１つを選択し、選択されたワークロードに関連付けられたリソース量と、取得された仮想サーバの負荷指標とを比較する。そして、ワークロード推定部５１は、比較された負荷指標が仮想サーバの負荷指標に近似するとき、選択されたワークロードを抽出する。ここでワークロード推定部５１によって抽出されるワークロードが、仮想サーバ３ｉｐに相当するワークロードと推定される。
【００５９】
負荷指標推定部５２は、性能情報記憶部４７に記憶され、物理サーバ３ｊに関連付けられ、ワークロード推定部５１によって抽出されたワードロードと関連付けられた負荷指標を抽出し、抽出された負荷指標を性能情報記憶部４７に記憶する。ここで、負荷指標推定部５２によって抽出される負荷指標が、物理サーバ３ｊ上で仮想サーバ３ｉｑを実行したときの負荷指標の推定値となる。
【００６０】
仮想サーバ稼動部５３は、ワークロード推定部５１によって取得された物理サーバ３ｊ上の空きリソース量が、負荷指標推定部５２によって抽出された負荷指標より大きいとき、仮想サーバ３ｉｑを物理サーバ３ｊで稼動させる。
【００６１】
図９は、本実施形態の自律制御サーバ５０の動作フローをあらわすフローチャートである。 ただし、自律制御サーバ５０は、設置済みの物理サーバ３１〜３ｍの性能特性の計測結果を収集済みで性能情報記憶部４７に記憶しているものとする。 
【００６２】
まず、自律制御サーバ５０は、移動元の物理サーバ３ｉの性能特性値と仮想サーバ３ｉｐの負荷指標を性能情報記憶部４７から取得する（ステップＣ１）。そして、自律制御サーバ５０は、ステップＣ１で取得した性能特性値と負荷指標とに基づいて、上述のように仮想サーバ３ｉｐに対するワークロードを推定して、推定されたワークロードを示す情報を性能情報記憶部４７に記憶する（ステップＣ２）。さらに、自律制御サーバ５０は、移動先の物理サーバ３ｊの性能特性値と仮想サーバ３ｉｐのワークロード推定量を性能情報記憶部４７から取得して、そのワークロードに対する負荷指標を推定して、推定された負荷指標を性能情報記憶部４７に記憶する（ステップＣ３）。そして、自律制御サーバ５０は、取得された物理サーバ３ｊ上の空きリソース量が、推定された負荷指標より大きいとき（ステップＣ４のＹＥＳ）、仮想サーバ３ｉｑを物理サーバ３ｊで稼動させる（ステップＣ５）。また、自律制御サーバ５０は、取得された物理サーバ３ｊ上の空きリソース量が、推定された負荷指標より小さいとき（ステップＣ４のＮＯ）、仮想サーバ３ｉｑの物理サーバ３ｊへの移動を中止する（ステップＣ６）。
【００６３】
本実施形態の効果について説明する。本実施形態によれば、実測したワークロードと負荷指標の対応関係から性能特性値を生成し、それらからワークロードの推定と負荷指標の推定を行うことにより、性能の異なる物理サーバ上で仮想サーバを移動させた場合の、移動先の物理サーバ上での負荷指標を高精度に見積もることができるため、仮想サーバのキャパシティ不足や無駄な空きリソースの発生を回避することができる。
【００６４】
また、自律制御サーバ５０の運用者は、移動先の物理サーバ３ｊ上で発生する負荷指標の増加量として、性能情報記憶部４７に記憶された負荷指標の推定値を閲覧することができる。
【００６５】
以上、図面を参照して各実施形態について述べたが、これらは例示であり、上記以外の様々な構成を採用することもできる。
【００６６】
また、上記実施形態の説明には、複数のフローチャートを用いており、それぞれに複数のステップを順番に記載してあるが、その記載の順番は、本発明の情報処理方法のステップを実行する順番を限定するものではない。このため、本発明の情報処理方法を実行するときには、その複数のステップの順番は内容的に支障しない範囲で変更することができる。
【００６７】
なお、当然ながら、上述した実施の形態および複数の変形例は、その内容が相反しない範囲で組み合わせることができる。また、上述した実施の形態および変形例では、各構成要素の機能などを具体的に説明したが、その機能などは本願発明を満足する範囲で各種に変更することができる。
【００６８】
（付記１）
通信網を介して仮想サーバを授受することができる複数の物理サーバと、
各々の物理サーバに関し、当該各物理サーバ上で複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた各物理サーバのリソース量と各ワークロードを示す情報とをそれぞれ関連付けて記憶する性能情報記憶手段と、
上記複数の物理サーバのうち、第１物理サーバ上で稼動した仮想サーバによって使用された仮想サーバリソース量を取得する第１取得手段と、
上記性能情報記憶手段に記憶された情報の中から少なくとも１つのワークロードを選択し、選択されたワークロードに関連付けられたリソース量と、上記第１取得手段によって取得された仮想サーバリソース量とを比較する比較手段と、
上記比較手段によって比較されたリソース量が上記仮想サーバリソース量以下であるとき、上記比較手段によって選択されたワークロードを抽出する第１抽出手段と、
上記第１抽出手段によって抽出されたワークロードに関連付けられたリソース量と仮想サーバリソース量との評価指標を算出し、評価指標が最小であるワークロードを抽出する第２抽出手段と、
上記性能情報記憶手段に記憶され、上記第１物理サーバと異なる第２物理サーバに関連付けられ、上記第２抽出手段によって抽出されたワークロードと関連付けられたリソース量を抽出する第３抽出手段と、
を備えることを特徴とする情報処理システム。
【００６９】
（付記２）
上記性能情報記憶手段は、上記複数種のワークロードの各々が実行されたときに各ワークロードに割り当てられた第１リソースのリソース量と、第２リソースのリソース量とを関連付けて、上記各ワークロードに関しそれぞれ記憶し、
上記性能情報記憶手段に記憶された上記第１リソースのリソース量と、上記第２リソースのリソース量との相関関係に基づいて、当該ワークロードに割り当て可能な第１リソースおよび第２リソースの補間値を、ワークロードごとに算出する推測手段を更に備え、
上記性能情報記憶手段は、上記推測手段によって算出された補間値を、上記複数種のワークロードの夫々に関連付けて記憶し、
上記比較手段は、選択されたワークロードに関連付けられたリソース量または補間値をワークロードごとに選択し、選択されたリソース量または補間値をリソースの種別ごとに合計し、算出されたリソース量または補間値の合計と、上記第１取得手段によって取得された仮想サーバリソース量とを、リソースの種別ごとに比較し、
上記第１抽出手段は、上記比較手段によって比較された各リソース量の合計が、全てのリソース種別において仮想サーバリソース量以下である場合、上記比較手段によって選択されたワークロードと、リソース量または補間値とを組み合わせて抽出し、
上記第２抽出手段は、上記第１抽出手段によって抽出された組合せに含まれるリソース量または補間値と仮想サーバリソース量とを比較して評価指標を算出し、評価指標が最小である組合せを抽出することを特徴とする付記１に記載の情報処理システム。
【００７０】
（付記３）
第２物理サーバの空きリソース量を取得する第２取得手段と、
上記第２取得手段によって取得された空きリソース量が、上記第３抽出手段によって抽出されたリソース量より大きい場合、上記仮想サーバを上記第２物理サーバで稼動させる仮想サーバ稼動手段と、
を備えることを特徴とする付記１又は２に記載の情報処理システム。
【００７１】
（付記４）
上記性能情報記憶手段は、当該複数種のワークロードの各々に関し、複数のワークロードを示す情報と、同一種のリソースに対応し、かつ互いに異なる複数のリソース量と、を関連付けて記憶し、
上記比較手段は、選択されたワークロードに関連付けられたリソース量をワークロードごとに選択し、選択されたリソース量の総和と空きリソース量とを比較し、
上記第１抽出手段は、上記比較手段によって比較されたリソース量の総和が空きリソース量以下であるとき、上記比較手段によって選択されたワークロードとリソース量とを夫々抽出することを特徴とする付記１から３のいずれか１つに記載の情報処理装置。
【００７２】
（付記５）
上記性能情報記憶手段は、当該複数種のワークロードの各々に関し、複数のワークロードを示す情報と、異なる複数種のリソースのリソース量とをそれぞれ関連付けて記憶し、
上記取得手段は、上記性能情報記憶手段に記憶されたリソース量に対応する複数種のリソースのうち少なくとも一種に対応する空きリソース量を取得し、
上記比較手段は、選択されたワークロードに関連付けられたリソース量をリソースの種別ごとに合計し、算出されたリソース量の合計と、上記取得手段によって取得された空きリソース量とをリソースの種別ごとに比較し、
上記第１抽出手段は、上記比較手段によって比較されたリソース種別ごとの各リソース量の合計が、全てのリソース種別において空きリソース量以下であるとき、上記比較手段によって選択された複数のワークロードを抽出することを特徴とする付記１から４のいずれか１つに記載の情報処理装置。
【００７３】
（付記６）
上記第４抽出手段は、上記第１抽出手段によって抽出された組合せに含まれるリソース量または補間値と空きリソース量との差分を、リソースの種別ごとに算出し、算出された差分を正規化した値を合算して当該評価指標を求めることを特徴とする付記１から５のいずれか１つに記載の情報処理装置。
【００７４】
この出願は、２０１０年１月２９日に出願された日本出願特願２０１０−０１８９９０号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2011093011.tif 000005
【図２】
2011093011.tif 000006
【図３】
2011093011.tif 000007
【図４】
2011093011.tif 000008
【図５】
2011093011.tif 000009
【図６】
2011093011.tif 000010
【図７】
2011093011.tif 000011
【図８】
2011093011.tif 000012
【図９】
2011093011.tif 000013
【国際調査報告】
2011093011.tif 000014
2011093011.tif 000015
2011093011.tif 000016
2011093011.tif 000017