(57)【特許請求の範囲】
【請求項１】
演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける計算機の管理方法であって、
前記管理計算機は、前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第１の情報と、
前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第２の情報と、を保持し、
前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合の前記管理方法は、
前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第２の情報を参照して検索する第１のステップと、
前記第１のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第１の情報を参照して検索する第２のステップと、
前記第２のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第１の情報のリソース情報を参照して検索する第３のステップと、
前記第３のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第４のステップと、
前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第４のステップで算出された前記全体処理性能値と前記第２の情報に含まれる前記業務システム割当率とに基づいて算出する第５のステップと、
前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第５のステップで算出された前記業務システム処理性能値と前記第２の情報に含まれる前記機能グループ割当率とに基づいて算出する第６のステップと、
前記業務システムに属する前記仮想計算機に、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第７のステップと、を含むことを特徴とする計算機の管理方法。
【請求項２】
前記第２の情報は前記業務システムの優先度をさらに管理し、
前記第７のステップで、前記第２の情報を参照して、前記優先度の高い業務システムに属する前記仮想計算機から、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当て、
前記第６のステップで算出された前記機能グループ処理性能値を割り当てることができない機能グループが存在する場合には、その旨を管理者に報知し、
前記処理性能を前記仮想計算機に未だ割り当てられていない物理計算機が存在する場合には、前記機能グループ処理性能値を割り当てることができない機能グループの前記仮想計算機に当該物理計算機の処理性能を割り当てることを特徴とする請求項１に記載の管理方法。
【請求項３】
前記物理計算機のプロセッサの処理性能を収集し、前記収集された物理計算機の処理性能の情報が、管理者に報知されることを特徴とする請求項１に記載の計算機の管理方法。
【請求項４】
前記第７のステップでは、前記第１の情報を参照して、前記処理性能が少ない前記物理計算機で稼動する前記仮想計算機ほど、少ない前記処理性能を割り当てることを特徴とする請求項１に記載の計算機の管理方法。
【請求項５】
前記計算機システムは、さらに、リクエストを送信するクライアント計算機と、前記リクエストを前記仮想計算機に分散させる負荷分散装置と、を備え、
前記負荷分散装置は、前記機能グループに属する仮想計算機に割り当てられた処理性能に従って、前記クライアント計算機からのリクエストを分散させることを特徴とする請求項１に記載の計算機の管理方法。
【請求項６】
前記仮想計算機の処理性能の切り替えが完了するまでの時間が設定され、
前記設定された時間の間に前記仮想計算機の処理性能を徐々に切り替えることを特徴とする請求項１に記載の計算機の管理方法。
【請求項７】
前記処理性能を切り替える仮想計算機の負荷の上限が設定され、
前記設定された仮想計算機の負荷の上限を超えない範囲で前記仮想計算機の処理性能を徐々に切り替えることを特徴とする請求項１に記載の計算機の管理方法。
【請求項８】
前記第２の情報は前記業務システムの優先度をさらに管理し、
前記第７のステップで、前記第２の情報を参照して、前記優先度の高い業務システムに属する前記仮想計算機から、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当て、
前記仮想計算機の負荷が所定の値より高い場合には、
前記負荷が所定の値より高い仮想計算機を、前記優先度の業務システムに属する他の物理計算機に移動させて、前記移動させた仮想計算機に前記他の物理計算機の処理性能を割り当てることを特徴とする請求項１に記載の計算機の管理方法。
【請求項９】
演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおいて、
前記管理計算機は、
前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第１の情報と、
前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第２の情報と、を保持し、
前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合に、
前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第２の情報を参照して検索する第１のステップと、
前記第１のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第１の情報を参照して検索する第２のステップと、
前記第２のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第１の情報のリソース情報を参照して検索する第３のステップと、
前記第３のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第４のステップと、
前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第４のステップで算出された前記全体処理性能値と前記第２の情報に含まれる前記業務システム割当率とに基づいて算出する第５のステップと、
前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第５のステップで算出された前記業務システム処理性能値と前記第２の情報に含まれる前記機能グループ割当率とに基づいて算出する第６のステップと、
前記業務システムに属する前記仮想計算機に、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第７のステップと、を実行することを特徴とする計算機システム。
【請求項１０】
演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースを備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける前記物理計算機の処理性能を前記仮想計算機に割り当てる管理プログラムであって、
前記管理計算機は、
前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第１の情報と、
前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第２の情報と、を保持し、
前記管理プログラムは、
前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合に、
前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第２の情報を参照して検索する第１のステップと、
前記第１のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第１の情報を参照して検索する第２のステップと、
前記第２のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第１の情報のリソース情報を参照して検索する第３のステップと、
前記第３のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第４のステップと、
前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第４のステップで算出された前記全体処理性能値と前記第２の情報に含まれる前記業務システム割当率とに基づいて算出する第５のステップと、
前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第５のステップで算出された前記業務システム処理性能値と前記第２の情報に含まれる前記機能グループ割当率とに基づいて算出する第６のステップと、
前記業務システムに属する前記仮想計算機に、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第７のステップと、を前記管理計算機に実行させることを特徴とする管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機の管理方法に関し、特に複数の計算機のワークロードの管理方法に関する。
【背景技術】
【０００２】
企業の計算機システム及び企業のデータセンタにおいて、サーバの保有台数が増大している。これに伴って、サーバの運用管理コストが増大している。
【０００３】
この問題を解決するため、サーバを仮想化する技術が知られている。サーバを仮想化する技術は、複数の仮想サーバが単一の物理サーバで稼働できる技術である。具体的には、物理サーバに備わるプロセッサ（ＣＰＵ）及びメモリ等のリソースが分割され、分割された物理サーバのリソースが、それぞれ複数の仮想サーバに割り当てられる。そして、単一の物理サーバで複数の仮想サーバが同時に稼動する。
【０００４】
今日、ＣＰＵの処理性能が向上したこと及びメモリ等のリソースのコストが低下したことによって、サーバを仮想化する技術に関する需要が増大している。
【０００５】
また、サーバを仮想化する技術は、複数の仮想サーバが単一の物理サーバで稼働できるというメリットの他に、複数の仮想サーバでワークロード管理することによって、物理サーバのリソースをより有効に利用できる。
【０００６】
ここで、ワークロード管理とは、物理サーバの負荷等の状況に応じて、仮想サーバに割り当てられる物理サーバのリソースの量を変更する。例えば、ある仮想サーバの負荷が高くなった場合に、同じ物理サーバで稼働する負荷の低い仮想サーバに割り当てられている物理サーバのリソースを負荷の高い仮想サーバに割り当てる。これによって、物理サーバのリソースを有効に利用できる。
【０００７】
従来、このワークロード管理は、単一の物理サーバで稼動する仮想サーバ間で実行されていた（特許文献１、特許文献２及び特許文献３参照）。
【特許文献１】特開２００４−３３４８５３号公報
【特許文献２】特開２００４−２５２９８８号公報
【特許文献３】特開２００３−１５７１７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
今日、複数の物理サーバにおいて複数の仮想サーバが稼働する環境では、各仮想サーバが、独立して全く異なる業務を処理する場合は少ない。例えば、単一の業務を処理する業務システムは、ウェブサーバ群、アプリケーションサーバ群、及びデータベースサーバ群等の複数の仮想サーバから構成される。この場合に、単一の業務システムを構成する複数の仮想サーバは、複数の物理サーバに分散して配置される。また、複数の業務システムが、複数の物理サーバに、混在する場合も考えられる。
【０００９】
従来のワークロード管理では、複数の物理サーバが設置されたシステムの環境において、複数の仮想サーバのワークロードを管理することは困難である。
【００１０】
すなわち、業務システムを構成する複数の仮想サーバが、複数の物理サーバに分散して配置される場合には、従来のワークロード管理では、管理者は、業務システムを構成する仮想サーバと物理サーバとの対応及び各物理サーバのＣＰＵの処理性能を考慮して、各物理サーバのワークロードを管理しなければならない。従って、仮想サーバへの物理サーバのリソースの割当量を頻繁に変更することは、困難であった。
【００１１】
本発明の課題は、単一又は複数の業務システムを構成する複数の仮想サーバが複数の物理サーバに分散して配置された環境において、管理者の仮想サーバのワークロード管理を容易にすることである。
【課題を解決するための手段】
【００１２】
本発明の代表的な一形態によると、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える複数の物理計算機と、前記物理計算機で稼動する複数の仮想計算機と、前記インタフェースを備える前記物理計算機にネットワークを介して接続され、演算処理をするプロセッサと、前記プロセッサに接続されるメモリと、前記メモリに接続されるインタフェースと、を備える管理計算機と、を備える計算機システムにおける計算機の管理方法であって、前記管理計算機は、前記物理計算機と当該物理計算機で稼動する仮想計算機との対応と、前記物理計算機に備わるプロセッサの処理性能値を含むリソース情報とを管理する第１の情報と、前記複数の物理計算機をグループ化したサーバグループと、前記サーバグループに属する物理計算機で稼動する仮想計算機のうち同じ業務を処理する前記仮想計算機をグループ化した複数の業務システムと、前記業務システムに属する複数の仮想計算機のうち同じ機能を提供する仮想計算機をグループ化した機能グループと、前記サーバグループに属するすべての物理計算機に備わるプロセッサの処理性能を当該サーバグループに属する各業務システムに割り当てる割合を示す業務システム割当率と、前記業務システムに割り当てられた前記処理性能を当該業務システムに属する各機能グループに割り当てる割合を示す機能グループ割当率とを管理する第２の情報と、を保持し、前記複数の物理計算機に備わるプロセッサの処理性能を前記仮想計算機に割り当てる場合の前記管理方法は、前記サーバグループに含まれる前記業務システムに属する前記仮想計算機を、前記第２の情報を参照して検索する第１のステップと、前記第１のステップで検索された前記仮想計算機が稼動する物理計算機を、前記第１の情報を参照して検索する第２のステップと、前記第２のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を、前記第１の情報のリソース情報を参照して検索する第３のステップと、前記第３のステップで検索された前記物理計算機に備わるプロセッサの処理性能値を合計して、前記サーバグループに属するすべての前記物理計算機に備わるプロセッサの処理性能値を示す全体処理性能値を算出する第４のステップと、前記サーバグループに含まれる各業務システムに割り当てられる処理性能値を示す業務システム処理性能値を、前記第４のステップで算出された前記全体処理性能値と前記第２の情報に含まれる前記業務システム割当率とに基づいて算出する第５のステップと、前記各業務システムに含まれる各機能グループに割り当てられる処理性能値を示す機能グループ処理性能値を、前記第５のステップで算出された前記業務システム処理性能値と前記第２の情報に含まれる前記機能グループ割当率とに基づいて算出する第６のステップと、前記業務システムに属する前記仮想計算機に、前記第６のステップで算出された前記機能グループ処理性能値に基づいて、前記サーバグループに属する前記物理計算機の前記処理性能を割り当てる第７のステップと、を含むことを特徴とする。
【発明の効果】
【００１３】
本発明の一形態によると、複数の仮想サーバをグループ化した単位で物理サーバの処理性能を仮想サーバに割り当てられるので、管理者にとってワークロード管理が容易となる。
【発明を実施するための最良の形態】
【００１４】
（第１の実施の形態）
図１は、本発明の第１の実施の形態の計算機システムの構成を示す図である。
【００１５】
本実施の形態の計算機システムは、管理サーバ１０１と、物理サーバ１１１と、ロードバランサ１１２と、クライアント端末１１３と、を備える。
【００１６】
管理サーバ１０１、物理サーバ１１１、及びロードバランサ１１２は、ネットワークスイッチ１０８によってネットワーク２０６を介して、接続される。さらに、クライアント端末１１３は、ロードバランサ１１２を介して、ネットワークスイッチ１０８に接続される。
【００１７】
本実施の形態の制御の中心は、管理サーバ１０１である。管理サーバ１０１は、各種プログラムを実行するＣＰＵと、メモリとを備える。また、管理サーバ１０１は、図示しない表示装置とキーボードとから構成されるコンソールを備える。なお、管理サーバ１０１が、コンソールを備えなくとも、管理サーバ１０１にネットワークを介して接続された計算機が、コンソールを備えてもよい。管理サーバ１０１は、ワークロード管理プログラム１０２と、ワークロード設定プログラム１０４と、履歴管理プログラム１０５と、サーバ構成テーブル１０３と、グループ定義テーブル１０７とを格納する。
【００１８】
管理サーバ１０１は、物理サーバ１１１と、サーバ仮想化プログラム１１０と、仮想サーバ１０９と、ロードバランサ１１２と、を制御する。
【００１９】
サーバ仮想化プログラムラム１１０によって、一つの物理サーバ１１１に複数の仮想サーバ１０９が構築される。なお、サーバ仮想化プログラム１１０は、例えば、ハイパバイザ又はオペレーティングシステムで動作する仮想サーバ１０９を構築するアプリケーションソフトウェアであってもよい。
【００２０】
ロードバランサ１１２は、クライアント端末１１３によって送信されたリクエストを受信すると、複数の仮想サーバ１０９にリクエストを分散させる。
【００２１】
ワークロード管理プログラム１０２は、複数の仮想サーバ１０９に対して、物理サーバ１１１のＣＰＵ２０２等のリソースを割り当てる割当量（ワークロード）を決定する。ワークロード設定プログラム１０４は、ワークロード管理プログラム１０２によって決定された割当量に従って、サーバ仮想化プログラム１１０に、実際に複数の仮想サーバ１０９に物理サーバ１１１のリソースを割り当てるよう指示することによって、ワークロード管理する。サーバ構成テーブル１０３は、図７で後述するように、物理サーバ１１１と仮想サーバ１０９との対応を管理する。また、グループ定義テーブル１０７は、図８で後述するように、複数の仮想サーバ１０９に対する割当量をグループ単位で管理する。
【００２２】
図２は、本発明の第１の実施の形態の物理サーバ１１１のブロック図である。
【００２３】
物理サーバ１１１は、メモリ２０１と、ＣＰＵ（Central Processing Unit）２０２と、ＦＣＡ（Fibre Channel Adapter）２０３と、ネットワークＩ／Ｆ(Interface)２０４と、ＢＭＣ（Baseboard Management Controller）２０５とを備える。
【００２４】
メモリ２０１、ＦＣＡ２０３及びネットワークＩ／Ｆ２０４は、ＣＰＵ２０２に接続される。
【００２５】
メモリ２０１には、サーバ仮想化プログラム１１０が格納される。
【００２６】
物理サーバ１１１は、ネットワークＩ／Ｆ２０４によって、ネットワーク２０６に接続される。また、ＢＭＣ２０５もネットワーク２０６に接続される。ＦＣＡ２０３は、物理サーバ１１１で実行されるプログラムを格納するストレージ装置に接続される。ネットワークＩ／Ｆ２０４は、物理サーバ１１１上で実行されるプログラムと外部の装置との通信のためのインタフェースである。
【００２７】
また、ＢＭＣ２０５は、主にＣＰＵ２０２及びメモリ２０１等の物理サーバ１１１のハードウェアの状態を管理する。例えば、ＢＭＣ２０５は、ＣＰＵ２０２の障害を検出すると、ＣＰＵ２０２に障害が発生したことを、ネットワーク２０６を介して他の装置に通知する。
【００２８】
物理サーバ１１１が起動すると、サーバ仮想化プログラム１１０が起動する。そして、サーバ仮想化プログラム１１０は、複数の仮想サーバ１０９を構築する。
【００２９】
具体的には、サーバ仮想化プログラム１１０は、物理サーバ１１１のＣＰＵ２０２等のリソースを仮想サーバ１０９に分割して割り当てることによって、物理サーバ１１１に複数の仮想サーバ１０９を構築する。構築された各仮想サーバ１０９は、ＯＳ（Operating System）２０７を稼働できる。
【００３０】
また、サーバ仮想化プログラム１１０は、制御Ｉ／Ｆプログラム２０８と図３で後述するＣＰＵ割当変更プログラム３０２を含む。制御Ｉ／Ｆプログラム２０８とＣＰＵ割当変更プログラム３０２は、サーバ仮想化プログラム１１０のサブプログラムである。
【００３１】
制御Ｉ／Ｆプログラム２０８は、仮想サーバ１０９を構築したり、物理サーバ１１１のリソースの仮想サーバ１０９への割当量を設定するユーザインタフェースとして機能するプログラムである。ＣＰＵ割当変更プログラム３０２は、実際に、仮想サーバ１０９に対して、物理サーバ１１１のリソースを割り当てる。
【００３２】
図３は、本発明の第１の実施の形態のワークロード管理を示す図である。
【００３３】
ＣＰＵ割当率コマンド３０１は、制御Ｉ／Ｆプログラム２０８を介してサーバ仮想化プログラム１１０に入力される。
【００３４】
ＣＰＵ割当率設定コマンド３０１は、各仮想サーバ１０９の割当率を含み、仮想サーバ１０９の割当率をＣＰＵ割当率設定コマンド３０１の割当率に変更させるコマンドである。
【００３５】
サーバ仮想化プログラム１１０は、ＣＰＵ割当変更プログラム３０２に、ＣＰＵ割当率コマンド３０１に従って、各仮想サーバ１０９へのＣＰＵ２０２の割当量を変更するように指示する。指示を受けたＣＰＵ割当変更プログラム３０２は、ＣＰＵ割当率設定コマンド３０１に従って、仮想サーバ１０９のＣＰＵ２０２の割当量を変化させる。
【００３６】
サーバ仮想化プログラム１１０は、管理者によって指定されたＣＰＵ割当率設定コマンド３０１に従って、各仮想サーバ１０９への物理サーバ１１１のＣＰＵ２０２の割当量を割合によって変更する指示することができる。ここで、割合とは、物理サーバ１１１のＣＰＵ２０２の処理性能を１００％とした場合に、各仮想サーバ１０９に割り当てられるＣＰＵ２０２の割当量を百分率で示したものである。
【００３７】
これによって、例えば、特定の仮想サーバ１０９の負荷が高い場合には、負荷が低い仮想サーバ１０９のＣＰＵ２０２の割当量を負荷が高い仮想サーバ１０９に割り当てる。従って、物理サーバ１１１のＣＰＵ２０２を有効に使用することができる。
【００３８】
図４は、本発明の第１の実施の形態の仮想サーバ１０９のグループ管理を示す図である。
【００３９】
複数の物理サーバ１１１で稼働する仮想サーバ１０９によって、グループは構成される。これによって、管理者は、グループ毎に割当率を指示できる。ワークロード設定プログラム１０４が、管理者によって指示された割当率に基づいて、各仮想サーバ１０９に割り当てられるＣＰＵ２０２の割当量を自動的に決定する。
【００４０】
また、サーバ仮想化プログラム１１０が稼働する物理サーバ１１１をグループ化し、サーバグループを構成する。
【００４１】
仮想サーバ１０９のグループの例として、仮想サーバ１０９が提供する業務毎に、仮想サーバ１０９をグループ化する方法がある。例えば、システムグループ１は業務Ａを提供し、システムグループ２は業務Ｂを提供し、及びシステムグループ３は業務Ｃを提供する。
【００４２】
このように、業務毎にグループ化するのは、管理者が単一の業務を提供する複数の仮想サーバ１０９が複数の物理サーバ１１１に分散して配置される場合のグループ管理を容易にするためである。
【００４３】
単一の業務を提供する複数の仮想サーバ１０９が複数の物理サーバ１１１に分散して配置される場合には、仮想サーバ１０９へのＣＰＵ２０２の割当量を単一の物理サーバ１１１毎に設定する方法では、管理者は、業務システムを構成する仮想サーバ１０９と物理サーバ１１１との対応、及び各物理サーバ１１１のＣＰＵ２０２の処理性能を考慮して、物理サーバ１１１毎に、仮想サーバ１０９への割当量を設定しなければならない。
【００４４】
本実施の形態によると、例えば仮想サーバ１０９が提供する業務毎に仮想サーバ１０９をグループ化するので、管理者は、物理サーバ１１１のＣＰＵ２０２の仮想サーバ１０９への割当量をグループ毎に指示できる。これによって、管理者にとって、単一の業務を提供する複数の仮想サーバ１０９が複数の物理サーバ１１１に分散して配置される場合においても、仮想サーバ１０９の割当量を設定することが容易になる。
【００４５】
図５は、本発明の第１の実施の形態の機能グループの定義を示す図である。
【００４６】
図４に示す業務毎のグループに属する仮想サーバ１０９を、さらに仮想サーバ１０９の機能毎にグループ化する。すなわち、業務毎のグループである各システムグループ１〜３内で、仮想サーバ１０９をさらに機能グループ５０２〜５０８に分割してグループ化する。なお、機能グループ５０２〜５０８は、システムグループ５０１のサブグループである。
【００４７】
例えばシステムグループ１（５０１）に属する仮想サーバ１０９が、Ｗｅｂサーバ群、ＡＰ（アプリケーション）サーバ群、及びＤＢ（データベース）サーバ群から構成されている場合には、Ｗｅｂサーバ群を機能グループ１（５０２）、ＡＰサーバ群を機能グループ２（５０３）、及びＤＢサーバ群を機能グループ３（５０４）として、機能毎にグループ化する。
【００４８】
この機能毎のグループ化によって、管理者は、機能グループ毎の仮想サーバ１０９に割り当てられたＣＰＵ２０２の実行時の負荷の特性を考慮して、機能グループ毎に機能グループの割当率を指定することができる。例えば、ＡＰサーバ群５０３のＣＰＵ２０２の負荷が同一システムグループの他の機能グループ（５０２及び５０４）より高い場合には、管理者は、ＡＰサーバ群５０３に物理サーバ１１１のＣＰＵ２０２をより多く割り当てることができる。
【００４９】
これによって、機能グループ毎に仮想サーバ１０９に割り当てられたＣＰＵ２０２の実行時の負荷の特性が異なる場合に、より的確にワークロードを管理できる。
【００５０】
図６は、本発明の第１の実施の形態のサーバグループ割当率コマンドを示す図である。
【００５１】
サーバグループ割当率コマンドは、サーバグループ名６０２と、動作６０３と、システムグループ名６０４と、機能グループ名６０５と、ＣＰＵ割当率６０６と、割当方法６０７と、切替方法６０８と、ロードバランサアドレス６０９と、を含む。システムグループ毎に、サーバグループ名６０２と、動作６０３と、システムグループ名６０４と、機能グループ名６０５と、ＣＰＵ割当率６０６と、割当方法６０７と、切替方法６０８と、ロードバランサアドレス６０９と、が定義される。
【００５２】
サーバグループ名６０２には、複数の物理サーバ１１１をグループ化したサーバグループの名前が指定される。動作６０３は、サーバグループ割当率コマンドの動作を示す。具体的には、動作６０３には、ＣＰＵ２０２の仮想サーバ１０９への割当率を変更するコマンドである「割当」、及びまだ仮想サーバ１０９へ割り当てられていないＣＰＵ２０２の情報を取得するコマンドである「未割当ＣＰＵ取得」が用意されている。管理者は、「割当」及び「未割当ＣＰＵ取得」からいずれかを選択して、サーバグループ割当率コマンドに含めることができる。
【００５３】
動作６０３において、「割当」が選択された場合には、管理者は、システムグループ名６０４、機能グループ名６０５、ＣＰＵ割当率６０６、割当方法６０７、切替方法６０８、及びロードバランサアドレス６０９を設定する。また、動作６０３において、「未割当ＣＰＵ取得」が選択された場合には、管理者は、システムグループ名６０４、機能グループ名６０５、ＣＰＵ割当率６０６、割当方法６０７、切替方法６０８、及びロードバランサアドレス６０９を設定する必要はない。
【００５４】
システムグループ名６０４では、ＣＰＵ２０２を仮想サーバ１０９へ割り当てるシステムグループが指定される。機能グループ名６０５では、ＣＰＵ２０２を仮想サーバ１０９へ割り当てる機能グループが指定される。ＣＰＵ割当率６０６には、サーバグループ名６０２で指定されたサーバグループの全ての物理サーバ１１１のＣＰＵ２０２の処理性能を１００％として、システムグループ名６０２で指定されたシステムグループに割り当てられるＣＰＵ２０２の処理性能の割当率が指定される。
【００５５】
割当方法６０７では、複数の仮想サーバ１０９への割当方法が指定される。具体的には、割当方法６０７には、「均等」、「機能グループ均等化」、及び「機能グループ履歴割当」が用意されている。「均等」は、システムグループに属する複数の仮想サーバ１０９に、できるだけＣＰＵ２０２の処理性能を均等に割り当てる。「機能グループ均等化」は、機能グループに属する複数の仮想サーバ１０９に、できるだけＣＰＵ２０２の処理性能が均等に割り当てられる。「機能グループ履歴割当」は、過去の機能グループの仮想サーバ１０９の動作の履歴に基づいて、機能グループ毎に割当比率を変化させて、機能グループに属する複数の仮想サーバ１０９にＣＰＵ２０２を割り当てる。管理者は、割当方法６０７において、「均等」、「機能グループ均等化」、及び「機能グループ履歴割当」からいずれかを選択して、サーバグループ割当率コマンドに含めることができる。
【００５６】
切替方法６０８には、「切替時間指定」と「ＣＰＵ利用率指定」が用意されている。「切替時間指定」は、仮想サーバ１０９に新たにＣＰＵ２０２が割り当てられる場合に、指定された時間をかけて、徐々に仮想サーバ１０９のＣＰＵ２０２の割当量を変化させる。「ＣＰＵ利用率指定」は、仮想サーバ１０９に新たにＣＰＵ２０２が割り当てられる場合に、物理サーバ１１１のＣＰＵ２０２の利用率を参照して、指定されたＣＰＵ２０２の利用率を超えないように、徐々に仮想サーバ１０９のＣＰＵ２０２の割当量を変化させる。ロードバランサアドレス６０９では、システムグループに属する仮想サーバ１０９に対して、クライアント端末１１３からのリクエストを分散させるロードバランサが指定される。
【００５７】
図７は、本発明の第１の実施の形態のサーバ構成テーブル１０３の構成図である。
【００５８】
サーバ構成テーブル１０３は、物理サーバＩＤ７０１と、サーバ構成７０２と、仮想化プログラムＩＤ７０３と、仮想サーバＩＤ７０４と、割当率７０５と、を含む。
【００５９】
物理サーバＩＤ７０１には、物理サーバ１１１の一意な識別子が登録される。サーバ構成７０２には、物理サーバ１１１の構成が登録される。例えば、サーバ構成７０２には、ＣＰＵ２０２の動作クロック周波数及びメモリ２０１の容量等のワークロード管理に関係する物理サーバ１１１のリソースの情報が登録される。本実施の形態では、ＣＰＵ２０２の動作クロック周波数がＣＰＵ２０２の処理性能を示す指標であるが、ＣＰＵ２０２の処理性能を示す指標であれば、動作クロック周波数に限られない。例えば、特定のベンチマークの結果又は入出力性能を含む処理性能の指標等も考えられる。
【００６０】
仮想化プログラムＩＤ７０３には、物理サーバ１１１で稼働するサーバ仮想化プログラム１１０の一意な識別子が登録される。仮想サーバＩＤ７０４には、サーバ仮想化プログラム１１０によって構築された仮想サーバ１０９の一意な識別子が登録される。
【００６１】
割当率７０５には、ＣＰＵ２０２の仮想サーバ１０９への割当率が登録される。この割当率は、単一の物理サーバ１１１の処理性能を１００％とした場合の各仮想サーバ１０９に対して割り当てられる物理サーバ１１１の処理性能の割当比率である。
【００６２】
管理サーバ１０１は、サーバ構成テーブル１０３によって、物理サーバ１１１と仮想サーバ１０９との対応と、各仮想サーバ１０９に対する物理サーバ１１１の処理性能の割当率とを管理できる。
【００６３】
図８は、本発明の第１の実施の形態のグループ定義テーブル１０７の構成図である。
【００６４】
グループ定義テーブル１０７は、サーバグループ８０７と、システムグループ８０１と、割当率８０２と、優先度８０３と、機能グループ８０４と、重み付け８０５と、仮想サーバＩＤ８０６と、を含む。
【００６５】
サーバグループ８０７には、サーバグループが登録される。サーバグループは、物理サーバ１１１から構成されるグループである（図４参照）。
【００６６】
システムグループ８０１には、システムグループが登録される。このシステムグループとは、例えば、同じ業務を処理する複数の仮想サーバ１０９から構成されるグループである。割当率８０２には、サーバグループ全体の処理性能を１００パーセントとした場合に、システムグループに割り当てられる割当率が登録される。例えば、割当率８０２は、サーバグループが、３台の物理サーバ１１１によって構成される場合には、３台の物理サーバ１１１の処理性能の総量に対する割当率を示す。優先度８０３には、サーバグループ内のどのシステムグループから優先して物理メモリ１１１のリソースを割り当てるかを示す優先度が登録される。優先度が高いシステムグループに対して優先的にワークロードを割り当てる。なお、優先度「１」が最高優先度である。なお、優先度８０３は、管理者によって指定される。
【００６７】
機能グループ８０４には、システムグループ内の仮想サーバ１０９を、更に各仮想サーバ１０９の機能によってグループ化した機能グループが登録される。システムグループ内の仮想サーバ１０９をその機能によって分けて管理する場合に、機能グループが作成される。重み付け８０５には、システムグループの処理性能を１００％とした場合の各機能グループに割り当てられる処理性能の比率が登録される。機能グループ毎に処理性能の割当の比率を変化させる場合、重み付け８０５が指定される。仮想サーバＩＤ８０６は、機能グループに含まれる仮想サーバ１０９の一意な識別子が登録される。
【００６８】
グループ定義テーブル１０７は、管理サーバ１０１は、複数の物理サーバ１１１及び各物理サーバ１１１で稼働する複数の仮想サーバ１０９が、それぞれどのサーバグループ、システムグループ、及び機能グループに属するかを定義する。また、グループ定義テーブル１０７は、システムグループ毎の割当率と機能グループ毎の重み付けとを定義できる。
【００６９】
図９は、本発明の第１の実施の形態の履歴管理プログラム１０５の構成を示す図である。
【００７０】
履歴管理プログラム１０５は、各物理サーバ１１１の動作の履歴及び各仮想サーバ１０９の動作の履歴を取得する。具体的には、履歴管理プログラム１０５は、各物理サーバ１１１のＣＰＵ２０２の利用率である物理ＣＰＵ利用率履歴９０１を取得する。また、履歴管理プログラム１０５は、各仮想サーバ１０９が割り当てられたＣＰＵ２０２の利用率である仮想ＣＰＵ利用率履歴９０２を取得する。
【００７１】
物理ＣＰＵ利用率履歴９０１は、物理サーバ１０１で稼動するサーバ仮想化プログラム１１０上のサーバ仮想化プログラムエージェント９０４によって、周期的に取得される。一方、仮想ＣＰＵ利用率履歴９０２は、仮想サーバ１０９で稼働するＯＳ２０７上のゲストＯＳエージェント９０３によって、周期的に取得される。
【００７２】
異なるレイヤにゲストＯＳエージェント９０３及びサーバ仮想化プログラムエージェント９０４が設けられるので、各エージェントが動作する異なるレイヤの動作履歴を取得することができる。すなわち、二つの異なるレイヤで動作するエージェントを設けることによって、全てのレイヤの動作履歴を取得することができる。
【００７３】
なお、仮想ＣＰＵ利用率履歴９０２には、制御Ｉ／Ｆプログラム２０８を介して取得されたＣＰＵ２０２の各仮想サーバ１０９への割当率を含む。ＣＰＵ２０２の割当率とＣＰＵ２０２の利用率は密接な関連があるため、ＣＰＵ利用率とＣＰＵの割当率とを取得することで正確なワークロードの割当を可能にする。
【００７４】
サーバ仮想化プログラムエージェント９０４とゲストＯＳエージェント９０３とが取得した情報は、ネットワークＩ／Ｆ２０４を介して管理サーバ１０１に転送される。
【００７５】
また、ゲストＯＳエージェント９０３は、ゲストＯＳ２０７を介して、仮想サーバの構成も取得することができる。例えば、仮想サーバ１０９の構成とは、仮想サーバに割り当てられたＣＰＵ２０２の処理性能及び仮想サーバに割り当てられたメモリの容量等のことである。
【００７６】
同じく、サーバ仮想化プログラムエージェント９０４も、サーバ仮想化プログラム１１０を介して、物理サーバ１１１のＣＰＵ２０２の処理性能及びメモリ容量を取得することができる。このように、異なるレイヤにエージェントを配置することで、取得できる情報が増加する。
【００７７】
図１０は、本発明の第１の実施の形態の物理ＣＰＵ利用率履歴９０１の構成を示す図である。
【００７８】
物理ＣＰＵ利用率履歴９０１は、時間１００１と、物理サーバ識別子１００２と、物理ＣＰＵ利用率１００３と、を含む。
【００７９】
時間１００１には、履歴管理プログラム１０５が物理ＣＰＵ利用率履歴９０１を取得した時間が登録される。物理サーバ識別子１００２には、取得した物理サーバ１１１の一意な識別子が登録される。物理ＣＰＵ利用率１００３には、当該物理サーバ１１１のＣＰＵ２０２の利用率が登録される。
【００８０】
図１１は、本発明の第１の実施の形態の仮想ＣＰＵ利用率履歴９０２の構成を示す図である。
【００８１】
時間１１０１には、履歴管理プログラム１０５が仮想ＣＰＵ利用率履歴９０２を取得した時間が登録される。仮想サーバ識別子１１０２には、取得した仮想サーバ１０９の一意な識別子が登録される。物理ＣＰＵ割当率１１０３には、ＣＰＵ２０２の各仮想サーバ１０９への割当率が登録される。物理ＣＰＵ割当率１１０３は、履歴管理プログラム１０５が、サーバ仮想化プログラム１１０の制御Ｉ／Ｆプログラム２０８を介して取得した情報である。仮想ＣＰＵ利用率１１０４には、仮想サーバ１０９のＣＰＵ２０２の利用率が登録される。
【００８２】
物理ＣＰＵ利用率履歴９０１及び仮想ＣＰＵ利用率履歴９０２は、ワークロード管理プログラム１０２が仮想サーバ１０９にＣＰＵ２０２を割り当てる処理を効率よく実行するために用いられる。
【００８３】
図１２は、本発明の第１の実施の形態のワークロード管理プログラム１０２の構成を示す図である。
【００８４】
ワークロード管理プログラム１０２は、コマンド処理部１２０１と、ワークロード切替部１２０２と、ワークロード算出部１２０３と、ロードバランサ制御部１２０４と、を含む。
【００８５】
コマンド管理部１２０１は、図６で示すサーバグループ割当率設定コマンドを受け付ける。ワークロード算出部１２０３は、仮想サーバ１０９の割当率を算出する。ワークロード切替部１２０２は、ワークロード算出部１２０３によって算出された割当率に基づいて、仮想サーバ１０９に物理サーバ１１１のＣＰＵ２０２を割り当て、ワークロードを切り替える。ロードバランサ制御部１２０４は、ワークロードの切り替えと連動してロードバランサを制御する。
【００８６】
図１３は、本発明の第１の実施の形態のコマンド処理部１２０１による処理のフローチャートである。
【００８７】
まず、コマンド処理部１２０１は、サーバグループ割当率設定コマンドを受け付ける（ステップ１３０１）。
【００８８】
次に、コマンド処理部１２０１は、グループ定義テーブル１０７とサーバ構成テーブル１０３と、を参照して、サーバグループに属する物理サーバ１１１の全体のＣＰＵ２０２の処理性能を算出する（ステップ１３０２）。
【００８９】
具体的には、コマンド処理部１２０１は、グループ定義テーブル１０７を参照して、サーバグループ割当率設定コマンドのサーバグループ名６０２で指定されたサーバグループに該当するサーバグループを選択する。そして、コマンド処理部１２０１は、グループ定義テーブル１０７を参照して、選択されたサーバグループに属する全ての仮想サーバ１０９を検索する。コマンド処理部１２０１は、サーバ構成テーブル１０３を検索して、検索された仮想サーバ１０９の物理サーバ１１１のＣＰＵ２０２の処理性能（例えば動作クロック周波数）を取得する。そして、コマンド処理部１２０１は、そのＣＰＵ２０２の処理性能の合計を算出して、サーバグループ全体のＣＰＵ２０２の処理性能を求める。
【００９０】
次に、コマンド処理部１２０２は、管理者によって指定されたシステムグループの割当率から、システムグループ毎に割り当てられているＣＰＵ２０２の割当量を算出する（ステップ１３０３）。具体的には、コマンド処理部１２０１は、サーバグループ割当率設定コマンドで指定されたＣＰＵ割当率６０６とステップ１３０２の処理でコマンド処理部１２０１が算出したサーバグループ全体のＣＰＵ２０２の量との積を計算することによって、システムグループに割り当てられるＣＰＵ２０２の量を求める。
【００９１】
例えば、サーバグループ全体のＣＰＵ２０２の処理性能が８ＧＨｚであって、ＣＰＵ割当率６０６が４０％と指定された場合には、システムグループに割り当てられるＣＰＵ２０２の割当量は、８ＧＨｚ×４０％＝３．２ＧＨｚである。
【００９２】
次に、コマンド処理部１２０１は、ワークロード算出部１２０３を呼び出す（ステップ１３０４）。ワークロード算出部１２０３は、ステップ１３０３の処理でコマンド処理部１２０１によって算出されたシステムグループの割当量に基づいて、そのシステムグループに属する仮想サーバ１０９の割当量を決定する。この処理については、図１４〜図１８にて詳細に説明する。
【００９３】
次に、コマンド処理部１２０１は、ワークロード切替部１２０２を呼び出す（ステップ１３０５）。
【００９４】
ワークロード切替部１２０２は、ステップ１３０４の処理でワークロード算出部１３０４によって算出された仮想サーバ１０９毎のＣＰＵ２０２の割当量に基づいて、仮想サーバ１０９にＣＰＵ２０２を割り当てる。この処理については、図１９にて詳細に説明する。
【００９５】
次に、コマンド処理部１２０１は、ロードバランサ１１２による制御が必要か否かを判定する（ステップ１３０６）。具体的には、コマンド処理部１２０1は、サーバグループ割当率設定コマンドのロードバランサアドレス６０９が指定されている場合には、ロードバランサ１１２による制御が必要と判定する。コマンド処理部１２０１が、ロードバランサ１１２による制御が必要と判定した場合には、ステップ１３０７の処理に進み、コマンド処理部１２０１が、ロードバランサ１１２による制御が不要と判定した場合には、ステップ１３０８の処理に進む。
【００９６】
コマンド処理部１２０１が、ロードバランサ１１２による制御が必要と判定した場合には、コマンド処理部１２０１は、ロードバランサ制御部１２０４を呼び出す（ステップ１３０７）。
【００９７】
次に、コマンド処理部１２０１は、全てのシステムグループについてワークロードが設定されたか否かを判定する（ステップ１３０８）。コマンド処理部１２０１が全てのシステムグループについてワークロードが設定されたと判定した場合には、コマンド処理部１２０１による処理を終了する。一方、コマンド処理部１２０１が全てのシステムグループについてワークロードが設定されていないと判定した場合には、ステップ１３０１の処理に戻る。
【００９８】
図１４は、本発明の第１の実施の形態のワークロード算出部１２０３による処理のフローチャートである。
【００９９】
ワークロード算出部１２０３は、コマンド処理部１２０１によって、呼び出される。
【０１００】
まず、ワークロード算出部１２０３は、サーバグループ割当率設定コマンドで指定された割当方法６０７が「均等割当」か否かを判定する（ステップ１４０１）。割当方法６０７が「均等割当」である場合には、ワークロード算出部１２０３は、ステップ１４０４の処理に進む。一方、割当方法６０７が「均等割当」でない場合には、ワークロード算出部１２０３は、ステップ１４０２の処理に進む。なお、ステップ１４０４の処理については、図１５にて説明する。
【０１０１】
次に、ワークロード算出部１２０３は、サーバグループ割当率設定コマンドで指定された割当方法６０７が「機能グループ均等化」か否かを判定する（ステップ１４０２）。割当方法６０７が「機能グループ均等化」である場合には、ワークロード算出部１２０３は、ステップ１４０５の処理に進む。一方、割当方法６０７が「機能グループ均等化」でない場合には、ワークロード算出部１２０３は、ステップ１４０３の処理に進む。なお、ステップ１４０５の処理については、図１７にて説明する。
【０１０２】
次に、ワークロード算出部１２０３は、サーバグループ割当率設定コマンドで指定された割当方法６０７が機能グループ履歴割当か否かを判定する（ステップ１４０３）。割当方法６０７が機能グループ履歴割当である場合には、ワークロード算出部１２０３は、ステップ１４０６の処理に進む。一方、割当方法６０７が機能グループ履歴割当でない場合には、ワークロード算出部１２０３による処理を終了する。なお、ステップ１４０６の処理については、図１８にて説明する。
【０１０３】
図１５は、本発明の第１の実施の形態の均等割当処理（ステップ１４０４）のフローチャートである。
【０１０４】
均等割当処理では、システムグループの複数の仮想サーバ１０９に割り当てられるＣＰＵ２０２の割当量ができるだけ均等になるように割り当てる。例えば、システムグループの割当量が３ＧＨｚであって、システムグループに３つの仮想サーバが属する場合には、それぞれの仮想サーバ１０９の割当量は１ＧＨｚである。
【０１０５】
まず、ワークロード算出部１２０３は、グループ定義テーブル１０７の優先度８０３を参照して、優先度の高いシステムグループを選択する（ステップ１５０１）。
【０１０６】
次に、ワークロード算出部１２０３は、グループ定義テーブル１０７を参照して、ステップ１５０１の処理でワークロード算出部１２０３によって選択されたシステムグループに属する仮想サーバ１０９を検索する（ステップ１５０２）。
【０１０７】
次に、ワークロード算出部１２０３は、サーバ構成テーブル１０３を参照して、ステップ１５０２の処理でワークロード算出部１２０３によって検索された仮想サーバ１０９が稼働する物理サーバ１１１を検索する（ステップ１５０３）。
【０１０８】
次に、ワークロード算出部１２０３は、サーバ構成テーブル１０３を参照して、ステップ１５０３の処理でワークロード算出部１２０３によって検索された物理サーバ１１１のＣＰＵ２０２の処理性能を検索する（ステップ１５０４）。
【０１０９】
ワークロード算出部１２０３は、ステップ１５０４の処理でワークロード算出部１２０３によって検索された物理サーバ１１１のＣＰＵ２０２の処理性能の合計値を算出する（ステップ１５０５）。すなわち、この合計値がサーバグループ全体のＣＰＵ２０２の処理性能の総量である。
【０１１０】
次に、ワークロード算出部１２０３は、ステップ１５０５の処理で算出された合計値とシステムグループの割当率とを乗算して、システムグループに割り当てられるＣＰＵ２０２の処理性能を算出する（ステップ１５０６）。
【０１１１】
ワークロード算出部１２０３は、各仮想サーバ１０９に割り当てられたＣＰＵ２０２の処理性能に対応して、物理サーバ１１１で稼働する仮想サーバ１０９にＣＰＵ２０２の処理性能を割り当てる割当量を決める（ステップ１５０７）。すなわち、ＣＰＵ２０２の処理性能が少ない物理サーバ１１１で稼動する仮想サーバ１０９ほど、仮想サーバ１０９に割り当てられるＣＰＵ２０２の処理性能を少なくする。
【０１１２】
また、ワークロード算出部１２０３は、各仮想サーバ１０９に割り当てられたＣＰＵ２０２の処理性能に比例するように、仮想サーバ１０９にＣＰＵ２０２の処理性能を割り当ててもよい。
【０１１３】
なお、ワークロード算出部１２０３は、各仮想サーバ１０９に割り当てられたＣＰＵ２０２の処理性能に基づいて、離散的（階段的に増加するよう）に仮想サーバ１０９にＣＰＵ２０２の処理性能を割り当ててもよい。
【０１１４】
例えば、物理サーバ１のＣＰＵの処理性能が１ＧＨｚ、物理サーバ２のＣＰＵの処理性能が２ＧＨｚ、物理サーバ３のＣＰＵの処理性能が３ＧＨｚであって、物理サーバ１で仮想サーバ１が稼動し、物理サーバ２で仮想サーバ２が稼動し、物理サーバ３で仮想サーバ３が稼働している場合について説明する。仮想サーバ１、仮想サーバ２、及び仮想サーバ３の割当量は、物理サーバのＣＰＵ２０２の処理性能の比、すなわち、それぞれ１：２：３の割合でシステムグループのＣＰＵの処理性能が割り当てられる。
【０１１５】
次に、ワークロード算出部１２０３は、ステップ１５０７の処理で決定された各仮想サーバ１０９の割当量を、各仮想サーバ１０９が稼動する物理サーバ１１１に割り当てることができる否かを判定する（ステップ１５０８）。具体的には、ワークロード算出部１２０３は、仮想サーバ１０９の割当量が、物理サーバ１１１のＣＰＵ２０２の未だ割り当てられていない処理性能より少ないか否かを判定する。
【０１１６】
ステップ１５０８の処理で割り当てることができないと判定された場合には、管理者に割り当てができない旨の警告が報知され、ＣＰＵ２０２の割当可能な量を各仮想サーバ１０９に割り当てる。なお、本実施の形態では、警告を図２５に示す画面に表示して管理者に報知するが、管理者にメッセージを送信して、管理者に報知してもよい。なお、報知とは、通知又は表示を含む。
【０１１７】
次に、ワークロード算出部１３０２は、全てのシステムグループに割当処理が実行されたか否かを判定する（ステップ１５１０）。全てのシステムグループに割当処理が実行されていない場合には、ステップ１５０１の処理に戻る。全てのシステムグループに割当処理が実行された場合には、ステップ１５１１の処理に進む。
【０１１８】
ワークロード算出部１３０２は、未だ割り当てられていない領域を有するＣＰＵ２０２を算出する。ワークロード算出部１３０２は、未だ割り当てられていない領域を有するＣＰＵ２０２がある場合には、当該ＣＰＵ２０２の処理性能をステップ１５０７の処理で算出された割当量が割り当てられなかった仮想サーバ１０９に割り当てる（ステップ１５１１）。すなわち、ステップ１５０８の処理で割り当てができないと判定された場合に、もし他の物理サーバ１１１に未だ割り当てられていないＣＰＵ２０２があれば、その仮想サーバ１０９に、そのＣＰＵ２０２の処理性能を割り当てる。
【０１１９】
図１６は、本発明の第１の実施の形態の均等割当の例を示す図である。
【０１２０】
システムグループ１〜３に属する仮想サーバ１〜９に、３台の物理サーバ１〜３のＣＰＵを割り当てる例を示す。物理サーバ１で仮想サーバ１、仮想サーバ２、及び仮想サーバ３が稼働する。また、物理サーバ２で仮想サーバ４，仮想サーバ５，及び仮想サーバ６が稼働する。また、物理サーバ３で仮想サーバ７，仮想サーバ８，及び仮想サーバ９が稼働する。
【０１２１】
サーバグループは物理サーバ１〜３から構成される。物理サーバ１のＣＰＵの処理性能は３ＧＨｚであり、物理サーバ２のＣＰＵの処理性能は１ＧＨｚであり、物理サーバ３のＣＰＵの処理性能は２ＧＨｚである。従って、サーバグループ全体のＣＰＵの処理性能は６ＧＨｚである。
【０１２２】
システムグループ１には、サーバグループ全体のＣＰＵの処理性能に対し、３０％のＣＰＵの処理性能が割り当てられる。システムグループ２にはサーバグループ全体のＣＰＵの処理性能に対し、５０％のＣＰＵの処理性能が割り当てられる。システムグループ３には、サーバグループ全体のＣＰＵの処理性能に対し、２０％のＣＰＵの処理性能が割り当てられる。
【０１２３】
具体的には、システムグループ１の割当量は、６ＧＨｚ×３０％＝１．８ＧＨｚである。システムグループ２の割当量は、６ＧＨｚ×５０％＝３ＧＨｚである。システムグループ３の割当量は、６ＧＨｚ×２０％＝１．２ＧＨｚである。
【０１２４】
もし、システムグループの割当量が各仮想サーバ１０９に均等に割り当てられる単純な均等割当であれば、システムグループ１に属する仮想サーバ１、仮想サーバ４、及び仮想サーバ７には、１．８ＧＨｚ／３＝０．６ＧＨｚがそれぞれ割り当てられる。システムグループ２に属する仮想サーバ２、仮想サーバ３、仮想サーバ５、及び仮想サーバ８には、３．０ＧＨｚ／４＝０．７５ＧＨｚが割り当てられる。システムグループ３に属する仮想サーバ６及び仮想サーバ９には、１．３ＧＨｚ／２＝０．６ＧＨｚが割り当てられる。
【０１２５】
しかし、各物理サーバ１１１のＣＰＵ２０２の処理性能が異なる場合には、単純な均等割当の方法で、各仮想サーバ１０９にＣＰＵ２０２の処理性能が割り当てられると、各物理サーバ１１１間で仮想サーバ１０９に割り当てることができるＣＰＵ２０２の処理性能に不均衡が生じる。つまり、ＣＰＵ２０２の処理性能の少ない物理サーバ１１１に属する仮想サーバ１０９に、ＣＰＵ２０２の処理性能の多い物理サーバ１１１に属する仮想サーバ１０９と同じ割当量が割り当てられると、ＣＰＵ２０２の処理性能の少ない物理サーバ１１１から割当可能なＣＰＵ２０２の処理性能が全て割り当てられてしまう。すなわち、ＣＰＵ２０２の処理性能の少ない物理サーバ１１１に属する仮想サーバ１０９に、割り当てることができる物理サーバ１１１のＣＰＵ２０２の処理性能が尽きてしまう。
【０１２６】
従って、各物理サーバ１１１のＣＰＵ２０２の処理性能の比に基づいて、サーバグループ全体のＣＰＵ２０２の処理性能を、各仮想サーバ１０９に割り当てる。具体的には、物理サーバ１、物理サーバ２、及び物理サーバ３には、それぞれ３：１：２の比率で、サーバグループ全体のＣＰＵの処理性能が、各物理サーバ１〜３に属する仮想サーバ１〜９に割り当てられる。すなわち、物理サーバ１１１のＣＰＵの処理性能が少ないサーバに属する仮想サーバ１０９に割り当てられるＣＰＵ２０２の処理性能は少なくなる。
【０１２７】
システムグループ１に属する仮想サーバ１、４、７には、それぞれ０．９ＧＨｚ、０．３ＧＨｚ、０．６ＧＨｚのＣＰＵの処理性能が割り当てられる。システムグループ２に属する仮想サーバ２、３、５、８には、それぞれ０．７５ＧＨｚ、０．７５ＧＨｚ、０．５ＧＨｚ、１．０ＧＨｚのＣＰＵの処理性能が割り当てられる。システムグループ３に属する仮想サーバ６、８には、それぞれ０．４ＧＨｚ、０．８ＧＨｚのＣＰＵの処理性能が割り当てられる。
【０１２８】
ここで、物理サーバ１に属する仮想サーバ１〜３に割り当てられるＣＰＵの処理性能の合計値は２．４ＧＨｚである。物理サーバ２に属する仮想サーバ４〜６に割り当てられるＣＰＵの処理性能の合計値は１．２ＧＨｚである。物理サーバ３に属する仮想サーバ７〜９に割り当てられるＣＰＵの処理性能の合計値は２．４ＧＨｚである。
【０１２９】
つまり、物理サーバ２及び物理サーバ３の各仮想サーバに割り当てられる処理性能の合計値は、物理サーバ２及び物理サーバ３のＣＰＵの処理性能より多くなる。そこで、システムグループに指定された優先度に従って、優先度が高いシステムグループ２に属する仮想サーバ２、３、５、８に各物理サーバ１〜３のＣＰＵの処理性能が優先的に割り当てられる。
【０１３０】
これによって、優先度が最も低いシステムグループ３に属する仮想サーバ６、８には、要求されたＣＰＵの処理性能よりも少ない０．２ＧＨｚ，０．４ＧＨｚのＣＰＵの処理性能が割り当てられる。なお、仮想サーバに割り当てられるＣＰＵの処理性能が要求されたＣＰＵの処理性能よりも少なくなる場合は、その旨が管理者に警告として報知される。従って、物理サーバ１の処理性能３ＧＨｚに対して２．４ＧＨｚが割り当てられ、物理サーバ２の処理性能１ＧＨｚに対して１ＧＨｚが割り当てられ、物理サーバ３の処理性能２ＧＨｚに対して２ＧＨｚが割り当てられる。
【０１３１】
なお、物理サーバ１のＣＰＵの処理性能の一部は、仮想サーバ１０９に割り当てられていない。物理サーバ１の未だ割り当てられていないＣＰＵの処理性能（０．６ＧＨｚ）は、指定されたＣＰＵの処理性能が割り当てられなかった仮想サーバ６及び９に、再度割り当てることができる。なお、この未だ割り当てられていないＣＰＵの処理性能を用いて、他の処理を実行するようにしてもよい。
【０１３２】
これによって、物理サーバ１１１のＣＰＵ２０２の処理性能が異なる場合においても、効率的に仮想サーバ１０９にＣＰＵ２０２の処理性能を割り当てることができる。
【０１３３】
図１７は、本発明の第１の実施の形態の機能グループ均等割当処理１４０５のフローチャートである。
【０１３４】
機能グループ均等割当処理では、機能グループに属する仮想サーバ１０９にできるだけ均等にＣＰＵ２０２の処理性能を割り当てる。例えばシステムグループが、さらにＷｅｂサーバ群、アプリケーションサーバ群、及びデータベースサーバ群の３つ機能グループから構成される場合に、同じ機能グループに属する仮想サーバ１０９には、できるだけ同じＣＰＵ２０２の処理性能が割り当てられるほうが、管理者にとって管理しやすいためである。
【０１３５】
ステップ１７０１の処理〜ステップ１７０７の処理は、それぞれステップ１５０１の処理〜ステップ１５０７の処理（図１５）と同じなので、説明を省略する。また、ステップ１７０９の処理〜ステップ１７１２の処理は、それぞれステップ１５０８の処理〜ステップ１５１１の処理（図１５）と同じなので、説明を省略する。
【０１３６】
ワークロード算出部１２０３は、ステップ１７０７の処理で決定された各仮想サーバ１０９の割当量に基づいて、機能グループに属する仮想サーバ１０９に割り当てられる処理性能が、できるだけ同一になるように、各物理サーバのＣＰＵ２０２の処理性能が割り当てられる（ステップ１７０８）。
【０１３７】
図１８は、本発明の第１の実施の形態の機能グループ履歴割当処理１４０６のフローチャートである。
【０１３８】
機能グループ履歴割当処理では、機能グループに属する仮想サーバ１０９に割り当てられる比率を、仮想ＣＰＵ利用率履歴９０２に基づいて決定されるので、より効率的な割り当てが実行される。
【０１３９】
ステップ１８０１の処理〜ステップ１８０７の処理は、それぞれステップ１５０１の処理〜ステップ１５０７の処理（図１５）と同じなので、説明を省略する。また、ステップ１８０９の処理〜ステップ１８１２の処理は、それぞれステップ１５０８の処理〜ステップ１５１１の処理（図１５）と同じなので、説明を省略する。
【０１４０】
ワークロード算出部１２０３は、ステップ１８０７の処理で決定された各仮想サーバ１０９の割当量に基づいて、機能グループに属する仮想サーバ１０９に割り当てる比率を算出して、再度各仮想サーバ１０９に割り当てる（ステップ１８０８）。
【０１４１】
具体的には、ワークロード算出部１２０３は、仮想ＣＰＵ利用率履歴９０２を参照して、機能グループに割り当てられたＣＰＵ２０２の負荷の履歴を、機能グループ毎に求める。例えば、ワークロード算出部１２０３は、仮想ＣＰＵ利用率履歴９０２を参照して、同じ機能グループに属する各仮想サーバ１０９の時間１１０１毎の物理ＣＰＵ割当率１１０３と仮想ＣＰＵ利用率１１０４とを乗じた値を算出する。そして、ワークロード算出部１２０３は、仮想サーバ１０９毎に、乗じた値の平均値を算出する。ワークロード算出部１２０３は、同じ機能グループに属する各仮想サーバ１０９の平均値を合計して機能グループに割り当てられたＣＰＵ２０２の負荷の履歴を算出する。そして、ワークロード算出部１２０３は、その機能グループに割り当てられたＣＰＵ２０２の負荷の履歴に基づいて、機能グループ毎の仮想サーバ１０９に割り当てられる比率を求める。
【０１４２】
ワークロード算出部１２０３は、実際に仮想サーバ１０９から取得した物理サーバのＣＰＵ２０２の割当率と仮想ＣＰＵの利用率の両方の履歴を参照するので、仮想サーバに割り当てられたＣＰＵ２０２の負荷が動的に変化する環境でもより正確な負荷を求めることができる。以上説明したように、本実施の形態では、システムグループと機能グループとによって階層化された定義におけるワークロードの制御において、管理サーバ１０１は、それぞれのグループに属する仮想サーバ１０９と、その仮想サーバ１０９に対応する物理サーバ１１１を管理する。そして、管理サーバ１０９は、ワークロードを設定する際に、それぞれのグループに属する物理サーバ１１１に備わるＣＰＵ２０２の処理性能の総量に基づいて仮想サーバ１０９の割当量を決定する。
【０１４３】
なお、本実施の形態では、２階層に定義されたグループにおけるワークロードの制御について記載したが、前述した考え方に基づけば、１又は２階層以上に定義されたグループのワークロードの制御にも本発明を適用できる。
【０１４４】
図１９は、本発明の第１の実施の形態のワークロード切替部１２０２による処理のフローチャートである。
【０１４５】
ワークロード切替部１２０２は、ワークロード算出部１２０３によって算出された割当量に基づいて、実際に物理サーバ１１１のＣＰＵ２０２を各仮想サーバ１０９に割り当てる。すなわち、ワークロード切替部１２０２は、ワークロードを切り替える。
【０１４６】
まず、ワークロード切替部１２０２は、優先度の高いシステムグループを選択する（ステップ１９０１）。
【０１４７】
次に、ワークロード切替部１２０２は、サーバグループ割当率設定コマンドにおいて、切替方法６０８が「切替時間指定」か否かを判定する（ステップ１９０２）。ワークロード切替部１２０２は、切替方法６０８が「切替時間指定」であれば、ステップ１９０３の処理を実行し、切替方法６０８が「切替時間指定」でなければ、ステップ１９０４の処理を実行する。
【０１４８】
切替方法６０８が「切替時間指定」である場合、ワークロード切替部１２０２は、指定された切替時間で、ステップ１９０１の処理で選択されたシステムグループに割り当てられている現在の割当量から、ワークロード算出部１２０３によって算出された割当量に徐々に切り替える（ステップ１９０３）。
【０１４９】
例えば、システムグループに割り当てられている現在の割当量が６０％であって、ワークロード算出部１２０３によって算出された割当量が２０％であって、指定された切替時間が１０分である場合には、ワークロード切替部１２０２は、割当量を６０％から２０％に、１０分間で切り替える。例えば、切替時間は、１０分〜１時間の範囲で設定される。なお、切替時間は、仮想サーバ１０９上で稼動するプログラムの特性に応じて管理者が自由に設定できる。
【０１５０】
一方、切替方法６０８が「切替時間指定」でない場合には、ワークロード切替部１２０２は、仮想サーバ１０９に割り当てられているＣＰＵ２０２の利用率が所定の値を超えないように、ワークロード算出部１２０３によって算出された割当量に徐々に切り替える(ステップ１９０４)。例えば、ワークロード切替部１２０２は、指定されたＣＰＵ利用率が３０％の場合、３０％を超えないように、徐々にワークロードを切り替える。
【０１５１】
次に、ワークロード切替部１２０２は、ステップ１９０１の処理で選択されたシステムグループのワークロードが切り替えられたか否かを判定する（ステップ１９０５）。ステップ１９０１の処理で選択されたシステムグループのワークロードが切り替えられた場合には、ステップ１９０７の処理に進み、ステップ１９０１の処理で選択されたシステムグループのワークロードが切り替えられていない場合には、ステップ１９０６の処理に進む。
【０１５２】
ステップ１９０１の処理で選択されたシステムグループのワークロードが切り替えられていない場合、すなわち、所定の時間が経過した後もワークロードが切り替えられない場合には、ワークロード切替部１２０２は、仮想サーバ１０９を他の物理サーバ１１１に移動させ、ワークロードが切り替えられる環境を整える（ステップ１９０６）。
【０１５３】
例えば、ワークロード切替部１２０２は、同じシステムグループに属する物理サーバ１１１間で、物理ＣＰＵ利用率が低く、かつ優先度の低いシステムグループが稼働する物理サーバ１１１を選択する。そして、ワークロード切替部１２０２は、ワークロードが切り替えられていない仮想サーバ１０９の実行環境を、選択された物理サーバ１１１の仮想サーバ１０９に移動させる。
【０１５４】
なお、仮想サーバ１０９のシステムを構成する要素（例えば、ＣＰＵ、メモリ、ストレージ及びネットワーク等）が仮想化されているので、物理サーバ１１１に備わる物理的な要素から分離されている。従って、仮想サーバ１０９は、物理サーバ１１１よりも、他の物理サーバ１１１へ移動しやすい環境である。
【０１５５】
例えば、仮想サーバ１０９が移動された結果、仮想サーバ１０９に備わるネットワークＩ／Ｆ２０４の識別子及びネットワークＩ／Ｆ２０４の数に変更がある場合においても、仮想サーバ１０９は、ネットワークＩ／Ｆ２０４の識別子及びネットワークＩ／Ｆ２０４の数を変更するだけで制御できる。従って、仮想サーバ１０９が移動することによって、物理サーバ１１１の構成が変わっても、仮想サーバ１０９は、物理サーバ１１１の構成を仮想化して利用するので、移動前と同じ環境を構築しやすい。
【０１５６】
ワークロード切替部１２０２は、この仮想サーバ１０９の特徴を用いて、ワークロードの切り替えを実行している間、ＣＰＵ２０２の負荷の高い仮想サーバ１０９を、他の物理サーバ１１１上に移動することによって、ワークロード切替を実行する。
【０１５７】
具体的には、ワークロード切替部１２０２は、移動させる仮想サーバ１０９のＩ／Ｏデバイス及びメモリ容量等の仮想サーバ１０９の環境情報を取得する。そして、ワークロード切替部１２０２は、移動先の物理サーバ１１１で、取得した環境情報に基づいて、新しい仮想サーバ１０９を構築する。そして、ワークロード切替部１２０２は、新しく構築された仮想サーバ１０９にワークロードの切り替えを実行する。
【０１５８】
これによって、複数の業務システムが複数の物理サーバ１１１に混在する環境においても、物理サーバ１１１のリソースを有効に使用することができる。
【０１５９】
次に、ワークロード切替部１２０２は、全てのシステムグループでワークロードが切り替えられたか否かを判定する（ステップ１９０７）。全てのシステムグループでワークロードが切り替えられた場合には、ワークロード切替部１２０２による処理を終了する。一方、全てのシステムグループでワークロードが切り替えられていない場合には、ステップ１９０１の処理に戻る。
【０１６０】
これによって、仮想サーバ１０９にＣＰＵ２０２の処理性能が徐々に割り当てられるので、仮想サーバ１０９に割り当てられるＣＰＵ２０２の処理性能が、急激に低下することはない。従って、仮想サーバ１０９のワークロードを切り替えている場合で、仮想サーバ１０９がリクエストを処理している場合であっても、仮想サーバ１０９が、そのリクエストを処理できなくなることはなく、そのリクエストを一定時間の間処理することができる。
【０１６１】
図２０は、本発明の第１の実施の形態のロードバランサ制御部１２０４による処理のフローチャートである。
【０１６２】
ロードバランサ制御部１２０４は、ワークロードの切替と連動してロードバランサ１１２を制御するので、より的確に計算機システムの負荷のバランスを保つことができる。
【０１６３】
通常は、ロードバランサ１１２は、複数のＷｅｂサーバ群に属する仮想サーバ１０９に、均等にリクエストを分散させる。しかし、ワークロードが切り替えられた結果、仮想サーバ１０９で稼働するＷｅｂサーバ群に属する各仮想サーバ１０９に割り当てられるＣＰＵ２０２の処理性能に不均等が生じる。その結果、割り当てられるＣＰＵ２０２の処理性能が少ない仮想サーバ１０９の単位時間当たりの処理性能（スループット）が低下する可能性がある。そこで、ワークロード制御部１２０４は、ワークロードが切り替えられた結果と連動して、ロードバランサ１１２を制御し、計算機システムのスループットを保つことができる。
【０１６４】
ロードバランサ制御部１２０４は、システムグループを選択する（ステップ２００１）。次に、ロードバランサ制御部１２０４は、ステップ２００１の処理で選択されたシステムグループ内の機能グループを選択する（ステップ２００２）。ロードバランサ制御部１２０４は、ステップ２００２の処理で選択された機能グループに属する仮想サーバ１０９において、その仮想サーバ１０９が稼動する物理サーバ１１１のＣＰＵ２０２の処理性能の値（動作クロック周波数）に仮想サーバ１０９のＣＰＵ２０２の割当率を乗じた値を算出する（ステップ２００３）。これによって、各仮想サーバ１０９に割り当てられたＣＰＵ２０２の処理性能とステップ２００２で選択された機能グループに割り当てられたＣＰＵ２０２の処理性能との比率を求める。
【０１６５】
次に、ロードバランサ制御部１２０４は、ステップ２００３の処理で求めた比率に基づいて、ロードバランサ１０２がクライアント端末からのリクエストを仮想サーバ１０９に分散させる振分率を設定する（ステップ２００４）。
【０１６６】
全てのシステムグループに振分率が設定されたか否かを判定する（ステップ２００５）。全てのシステムグループに振分率が設定された場合、ロードバランサ制御部１２０４による処理を終了する。全てのシステムグループに振分率が設定されていない場合、ステップ２００１に戻る。
【０１６７】
図２１は、本発明の第１の実施の形態のサーバグループを追加する場合に表示される画面を示す図である。
【０１６８】
グループ管理コンソール２１０１は、サーバグループ追加２１０２、システムグループ追加２１０３、機能グループ追加２１０４、グループ定義変更２１０５、及び変更実行２１０６を含む。
【０１６９】
管理者がサーバグループ追加２１０２を選択すると、図２１に示す画面となり、管理者はサーバグループを追加できる。管理者がシステムグループ追加２１０３を選択すると、図２２に示す画面となり、管理者はシステムグループを追加できる。管理者が機能グループ追加２１０４を選択すると、図２３に示す画面となり、管理者は機能グループを追加できる。管理者がグループ定義変更２１０５を選択すると、図２４に示す画面となり、管理者はグループの定義（システムグループのＣＰＵ２０２の割当量等）を変更できる。管理者によってグループの定義が変更された場合に、グループの定義の変更を実行するか否かを管理者に確認するために、図２５に示す画面が表示される。
【０１７０】
管理者は、サーバグループ追加２１０２、システムグループ追加２１０３、及び機能グループ追加２１０４を操作することによって、階層的にグループを定義することができる。
【０１７１】
図２１は、管理者がサーバグループ追加２１０１を選択した場合のコンソールに表示される画面である。管理者は、入力部２１０７で、サーバグループ名と当該サーバグループに属する物理サーバ１１１とを入力する。そして、管理者は、追加２１０９を操作すると、入力された内容がグループ定義テーブルに反映される。
【０１７２】
また、定義済サーバグループ表示部には、現在定義されているサーバグループ名２１１０と、そのサーバグループに属する物理サーバ２１１１が表示される。管理者は、定義済サーバグループによって、現在定義されているサーバグループ名２１１０とそのサーバグループに属する物理サーバ２１１１を参照できる。
【０１７３】
なお、定義済サーバグループ表示部に、履歴管理プログラム１０５によって収集された物理ＣＰＵ割当率１１０３に基づいて、各物理サーバ１１１の未だ割り当てられていないＣＰＵ２０２の処理性能を表示するようにしてもよい。
【０１７４】
これによって、管理者は、現在の各物理サーバ１１１に備わるＣＰＵ２０２の割り当ての状況を考慮して、サーバグループを設定することができる。
【０１７５】
図２２は、本発明の第１の実施の形態のシステムグループを追加する場合に表示される画面を示す図である。
【０１７６】
図２２は、管理者がシステムグループ追加２１０３を選択した場合のコンソールに表示される画面である。管理者は、入力部２２０１で、新たに追加したいシステムグループが属するサーバグループを選択する。管理者は、入力部２２０２で、追加したいシステムグループ名を入力する。管理者が、追加２２０３を操作すると、入力された内容が、グループ定義テーブル１０７に反映される。
【０１７７】
なお、管理者は、必要であれば、入力部２２０２で、ロードバランサ１０２のアドレスを入力することによって、ロードバランサ１０２のアドレスを定義することもできる。
【０１７８】
また、定義済システムグループ表示部には、現在定義されているシステムグループ名２２０４が表示される。管理者は、定義済システムグループによって、現在定義されているシステムグループ名２２０４を参照できる。
【０１７９】
図２３は、本発明の第１の実施の形態の機能グループを追加する場合に表示される画面を示す図である。
【０１８０】
図２３は、管理者が機能グループ追加２１０３を選択した場合のコンソールに表示される画面である。管理者は、入力部２３０１で、新たに追加したい機能グループが属するシステムグループ名と、追加したい機能グループ名と、その機能グループに属する仮想サーバ名を入力する。
【０１８１】
管理者が、追加２３０２を操作すると、入力された内容が、グループ定義テーブル１０７に反映される。
【０１８２】
また、定義済機能グループ表示部には、現在定義されている機能グループ名２３０３が表示される。管理者は、定義済システムグループによって、現在定義されている機能グループ名２３０３を参照できる。
【０１８３】
図２４は、本発明の第１の実施の形態のグループ定義を変更する場合に表示される画面を示す図である。
【０１８４】
図２４は、管理者がグループ定義変更２１０５を選択した場合のコンソールに表示される画面である。管理者は、グループ定義変更入力部２４０１で、変更するシステムグループ名を選択する。また、管理者は、割当率変更入力部２４０２で、新たなシステムグループへのＣＰＵ２０２の割当率である新割当率を入力する。なお、割当率変更入力部２４０２では、現在のシステムグループへのＣＰＵ２０２の割当率が表示される。管理者は、重み付け変更入力部２４０３で、機能グループ毎に、機能グループへのＣＰＵ２０２の割当率である重み付けを入力する。
【０１８５】
管理者が、追加２４０４を操作すると、入力された内容が、グループ定義テーブル１０７に反映される。
【０１８６】
また、グループステータス表示部のサーバグループステータス２４０５には、現在定義されているサーバグループ名と、そのサーバグループの未だ割り当てられていないＣＰＵ２０２の処理性能の百分率で示した値と、が表示される。また、グループステータスのシステムグループステータス２４０６には、システムグループに割り当てられている割当量が表示される。管理者は、グループステータス表示部によって、現在のサーバグループの状態と、現在のシステムグループの割当量を参照できる。
【０１８７】
また、管理者は、サーバグループの未だ割り当てられていないＣＰＵ２０２の処理性能を考慮して、システムグループの割当率を入力できる。
【０１８８】
図２５は、本発明の第１の実施の形態のグループ定義の変更を実行する場合に表示される画面を示す図である。
【０１８９】
図２５は、図２４に示す画面で、管理者によってグループの定義が変更された場合に、グループの定義の変更を実行するか否かを管理者に確認するための画面である。
【０１９０】
管理者によって変更されたグループの定義に従って、グループの定義を変更する場合には、管理者は、実行２５０１を選択する。
【０１９１】
そして、グループの定義が変更されると、実行結果が、実行ステータス２５０２として表示される。実行ステータス２５０２は、指定された割当量が仮想サーバ１０９に割り当てられることができなかったこと、及び正常に割り当てが完了したこと等が表示される。
【０１９２】
なお、ステップ１５０９の処理、ステップ１７１０の処理、及びステップ１８１０の処理で割り当てることができないことを管理者に報知する際にも、図２５に示す画面が表示される。
【０１９３】
この場合には、実行ステータス２５０２に指定された割当量が仮想サーバ１０９に割り当てられることができなかったことが表示される。
【０１９４】
管理者は、この結果に基づいて、システムグループの割当率等を設定するので、さらに最適なワークロード管理できる。
【０１９５】
（第２の実施の形態）
本発明の第１の実施の形態は、仮想サーバ１０９へのＣＰＵ２０２の割当率をＣＰＵ２０２の処理性能で定義するものである。本発明の第２の実施の形態は、仮想サーバ１０９へのＣＰＵ２０２の割当率をＣＰＵ２０２のコアの数によって定義する。
【０１９６】
本実施の形態のＣＰＵ２０２は、複数のコアを備える。各コアは、プログラムを同時に実行できる。
【０１９７】
また、本発明の第１の実施の形態のＣＰＵ２０２は、単一のコアを備える。そして、その単一のコアが複数の仮想サーバ１０９によって、共有される例を示す。しかし、複数のコアを備えるＣＰＵ２０２の場合には、コア単位で仮想サーバに割り当てる方が、独立性が高く効率的である。
【０１９８】
なお、第１の実施の形態と同じ構成は同じ符号を付与し、説明を省略する。
【０１９９】
図２６は、本発明の第２の実施の形態のサーバ構成テーブル１０３を示す図である。
【０２００】
サーバ構成テーブル１０３は、物理サーバＩＤと、サーバ構成２６０１と、仮想化プログラムＩＤ７０３と、論理サーバＩＤ７０４と、割当コア数２６０２と、を含む。
【０２０１】
サーバ構成２６０１には、物理サーバ１１１のＣＰＵ２０２の動作クロック周波数と、コア数と、メモリの容量と、が登録される。ＣＰＵ２０２のコア数は、ワークロード管理プログラム１０２が管理する対象である。
【０２０２】
また、割当コア数２６０２には、仮想サーバに割り当てられる単位となるＣＰＵ２０２のコア数が登録される。
【０２０３】
図２７は、サーバグループ割当率設定コマンドを示す図である。
【０２０４】
第１の実施の形態のサーバグループ割当率設定コマンドと相違するのは、ＣＰＵ割当率６０６が、割当ＣＰＵコア数２７０１割り当てコア数２７０１になっている点である。本実施の形態では、仮想サーバ１０９にＣＰＵ２０２のコアが単位として、割り当てられるからである。
【０２０５】
本発明の第１の実施の形態では、ワークロード算出部１２０３は、ＣＰＵ２０２の動作クロック周波数（ＧＨｚ）を単位として、仮想サーバ１０９の割当量を算出したが、本発明の第２の実施の形態では、ワークロード算出部１２０３は、ＣＰＵ２０２のコア数及びＣＰＵ２０２のコアの動作クロック周波数に基づいて、本発明の第１の実施の形態と同様に、仮想サーバ１０９の割当量を算出する。
【産業上の利用可能性】
【０２０６】
物理サーバと仮想サーバが混在する環境での物理サーバの処理性能の割り当てに関する制御。
【図面の簡単な説明】
【０２０７】
【図１】本発明の第１の実施の形態の計算機システムを示す図である。
【図２】本発明の第１の実施の形態の物理サーバのブロック図である。
【図３】本発明の第１の実施の形態のワークロード管理を示す図である。
【図４】本発明の第１の実施の形態の仮想サーバのグループ管理を示す図である。
【図５】本発明の第１の実施の形態のシステムグループの定義を示す図である。
【図６】本発明の第１の実施の形態のサーバグループ割当率コマンドを示す図である。
【図７】本発明の第１の実施の形態のサーバ構成テーブルの構成図である。
【図８】本発明の第１の実施の形態のグループ定義テーブルの構成図である。
【図９】本発明の第１の実施の形態の履歴管理プログラムの構成を示す図である。
【図１０】本発明の第１の実施の形態の物理ＣＰＵ利用率履歴の構成を示す図である。
【図１１】本発明の第１の実施の形態の仮想ＣＰＵ利用率履歴の構成を示す図である。
【図１２】本発明の第１の実施の形態のワークロード管理プログラムの構成を示す図である。
【図１３】本発明の第１の実施の形態のコマンド処理部による処理のフローチャートである。
【図１４】本発明の第１の実施の形態のワークロード算出部による処理のフローチャートである。
【図１５】本発明の第１の実施の形態の均等割当処理のフローチャートである。
【図１６】本発明の第１の実施の形態の均等割当を示す図である。
【図１７】本発明の第１の実施の形態の機能グループ均等割当処理のフローチャートである。
【図１８】本発明の第１の実施の形態の機能グループ履歴割当処理のフローチャートである。
【図１９】本発明の第１の実施の形態のワークロード切替部による処理のフローチャートである。
【図２０】本発明の第１の実施の形態のロードバランサ制御部による処理のフローチャートである。
【図２１】本発明の第１の実施の形態のサーバグループを追加する場合に表示される画面を示す図である。
【図２２】本発明の第１の実施の形態のシステムグループを追加する場合に表示される画面を示す図である。
【図２３】本発明の第１の実施の形態の機能グループを追加する場合に表示される画面を示す図である。
【図２４】本発明の第１の実施の形態のグループ定義を変更する場合に表示される画面を示す図である。
【図２５】本発明の第１の実施の形態のグループ定義の変更を実行する場合に表示される画面を示す図である。
【図２６】本発明の第２の実施の形態のサーバ構成テーブルの構成図である。
【図２７】本発明の第２の実施の形態のサーバグループ割当率コマンドを示す図である。
【符号の説明】
【０２０８】
１０１    管理サーバ
１０２    ワークロード管理プログラム
１０３    サーバ構成テーブル
１０４    ワークロード設定プログラム
１０５    履歴管理プログラム
１０７    グループ定義テーブル
１０８    ネットワークスイッチ
１０９    仮想サーバ
１１０    サーバ仮想化プログラム
１１１    物理サーバ
１１２    ロードバランサ
【図１】
0004519098.tif 000002
【図２】
0004519098.tif 000003
【図３】
0004519098.tif 000004
【図４】
0004519098.tif 000005
【図５】
0004519098.tif 000006
【図６】
0004519098.tif 000007
【図７】
0004519098.tif 000008
【図８】
0004519098.tif 000009
【図９】
0004519098.tif 000010
【図１０】
0004519098.tif 000011
【図１１】
0004519098.tif 000012
【図１２】
0004519098.tif 000013
【図１３】
0004519098.tif 000014
【図１４】
0004519098.tif 000015
【図１５】
0004519098.tif 000016
【図１６】
0004519098.tif 000017
【図１７】
0004519098.tif 000018
【図１８】
0004519098.tif 000019
【図１９】
0004519098.tif 000020
【図２０】
0004519098.tif 000021
【図２１】
0004519098.tif 000022
【図２２】
0004519098.tif 000023
【図２３】
0004519098.tif 000024
【図２４】
0004519098.tif 000025
【図２５】
0004519098.tif 000026
【図２６】
0004519098.tif 000027
【図２７】
0004519098.tif 000028