(57)【特許請求の範囲】
【請求項１】
電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶される記憶手段と、
前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新する電源状態制御部と、を備え、
前記電源状態制御部は、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記現用状態のリソース量において所定割合となるリソース量に対応する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記予備待機状態に移行させない前記物理サーバに対して、その電源をオフにすることで予備オフ状態に移行させる旨の制御信号を送信することを特徴とする
電源制御装置。
【請求項２】
電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶される記憶手段と、
前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新する電源状態制御部と、を備え、
前記電源状態制御部は、
前記現用状態をさらに細分化した、電源制御内容が互いに異なる複数の現用詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第１配分比率に応じて前記現用詳細状態の配分を決定し、
前記予備状態をさらに細分化した、電源制御内容が互いに異なる複数の予備詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第２配分比率に応じて前記予備詳細状態の配分を決定し、
各前記物理サーバに対して、前記配分された現用詳細状態へと更新するための制御信号と、前記配分された予備詳細状態へと更新するための制御信号と、をそれぞれ送信することを特徴とする
電源制御装置。
【請求項３】
前記電源状態制御部は、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信することを特徴とする
請求項２に記載の電源制御装置。
【請求項４】
前記電源状態制御部は、
前記仮想マシンの負荷量に応じて前記現用状態のリソース量を計算するときに、前記仮想マシンの負荷量を処理可能な前記現用状態のリソース量よりも所定割合だけ多く前記現用状態のリソース量を計算し、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その電源をオフにすることで予備オフ状態に移行させる旨の制御信号を送信することを特徴とする
請求項２に記載の電源制御装置。
【請求項５】
前記電源状態制御部は、
前記仮想マシンの負荷量に応じて前記現用状態のリソース量を計算するときに、前記仮想マシンの負荷量を処理可能な前記現用状態のリソース量よりも所定割合だけ多く前記現用状態のリソース量を計算し、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信することを特徴とする
請求項２に記載の電源制御装置。
【請求項６】
請求項１ないし請求項５のいずれか１項に記載の前記電源制御装置と、各前記物理サーバとがネットワークで接続されて構成されることを特徴とするサーバ仮想化システム。
【請求項７】
電源制御装置は、記憶手段と、電源状態制御部と、を備えており、
前記記憶手段には、電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶されており、
前記電源状態制御部は、前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新するときに、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記現用状態のリソース量において所定割合となるリソース量に対応する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記予備待機状態に移行させない前記物理サーバに対して、その電源をオフにすることで予備オフ状態に移行させる旨の制御信号を送信することを特徴とする
電源制御方法。
【請求項８】
電源制御装置は、記憶手段と、電源状態制御部と、を備えており、
前記記憶手段には、電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶されており、
前記電源状態制御部は、前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新するときに、
前記現用状態をさらに細分化した、電源制御内容が互いに異なる複数の現用詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第１配分比率に応じて前記現用詳細状態の配分を決定し、
前記予備状態をさらに細分化した、電源制御内容が互いに異なる複数の予備詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第２配分比率に応じて前記予備詳細状態の配分を決定し、
各前記物理サーバに対して、前記配分された現用詳細状態へと更新するための制御信号と、前記配分された予備詳細状態へと更新するための制御信号と、をそれぞれ送信することを特徴とする
電源制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電源制御装置、サーバ仮想化システム、および、電源制御方法の技術に関する。
【背景技術】
【０００２】
近年、複数の仮想マシンを１台の物理サーバ上に配置して実行することで、物理サーバの台数を削減し、リソース使用効率を向上させるサーバ仮想化システムの検討が進められている。さらに、サーバ仮想化システムにおいて、省電力化による運用コスト削減も検討されている。
特許文献１には、リソースの使用率の低いサーバ装置からリソースを割り当てるとともに、仮想マシンが使用していない物理サーバの電源をオフにする旨が記載されている。
特許文献２には、物理サーバの増加を極力抑えることによって、仮想マシンの集約効率を向上させる旨が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−６１２７８号公報
【特許文献２】特開２０１３−２３９０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
消費電力をできるだけ削減するという運用ポリシでは、ひんぱんに電源オンと電源オフとを繰り返すなど、サーバ装置に対して過剰に電源制御が行われてしまい、サーバ装置のハードウェア（電源部品など）の消耗も激しくなってしまう。つまり、消費電力を削減しつつ、サーバ装置のハードウェアに過剰な負担をかけることなく、安定してサーバ仮想化システムを動作させるような、バランスのとれた省電力制御が現実の運用で求められている。
しかし、従来の技術では、「省電力化を行う」などの個別の評価指標に最適化されたシステムが提案されているものの、バランスのとれた電源制御は提案されていない。
【０００５】
そこで、本発明は、消費電力を削減しつつ、サーバ仮想化システムを安定させて運用するような電源制御を実施することを、主な課題とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するために、本発明の電源制御装置は、電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶される記憶手段と、
前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新する電源状態制御部と、を備え、
前記電源状態制御部が、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記現用状態のリソース量において所定割合となるリソース量に対応する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信し、
前記予備状態へと更新する前記物理サーバのうちの、前記予備待機状態に移行させない前記物理サーバに対して、その電源をオフにすることで予備オフ状態に移行させる旨の制御信号を送信することを特徴とする。
【０００７】
これにより、予備状態の物理サーバを適切に省電力化でき、かつ、現用状態か予備状態かという簡単な電源管理により、電源状態の変更回数を減らすことでサーバ仮想化システムを安定させて運用できる。
そして、予備状態をさらに、すばやく現用状態へと復帰できる予備待機状態か、消費電力がほぼ発生しない予備オフ状態かに分類することで、消費電力の削減量を増やしつつ、サーバ仮想化システムの安定性を向上させることができる。
【０００８】
本発明の電源制御装置は、電源をオンにした物理サーバ上に仮想マシンが配置されている現用状態と、前記仮想マシンが配置されておらず、前記物理サーバの構成部品の少なくとも一部が通電されていない予備状態とを別々の電源状態とし、各前記物理サーバの電源状態が記憶される記憶手段と、
前記物理サーバ上で動作する前記仮想マシンの負荷量に応じて、前記物理サーバ全体のリソース量に対する前記現用状態のリソース量を計算し、前記物理サーバ全体のリソース量から、計算した前記現用状態のリソース量を除いた前記予備状態のリソース量を計算し、その計算した各電源状態のリソース量に応じて、各前記物理サーバの電源状態を更新する電源状態制御部と、を備え、
前記電源状態制御部は、
前記現用状態をさらに細分化した、電源制御内容が互いに異なる複数の現用詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第１配分比率に応じて前記現用詳細状態の配分を決定し、
前記予備状態をさらに細分化した、電源制御内容が互いに異なる複数の予備詳細状態が、各前記物理サーバの電源状態として存在するときには、所定の第２配分比率に応じて前記予備詳細状態の配分を決定し、
各前記物理サーバに対して、前記配分された現用詳細状態へと更新するための制御信号と、前記配分された予備詳細状態へと更新するための制御信号と、をそれぞれ送信することを特徴とする。
【０００９】
これにより、予備状態の物理サーバを適切に省電力化でき、かつ、現用状態か予備状態かという簡単な電源管理により、電源状態の変更回数を減らすことでサーバ仮想化システムを安定させて運用できる。
そして、ベンダの都合により、様々な省電力モードの実装に対応する細分化した複数の状態が存在する場合でも、適切な実装を選択することができる。
【００１０】
本発明は、前記電源状態制御部が、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信することを特徴とする。
【００１１】
これにより、予備待機状態へと更新された物理サーバは、一部が通電していることによりすばやく現用状態へと復帰できるので、仮想マシンの再配置の所用時間を短縮できる。
【００１２】
本発明は、前記電源状態制御部が、
前記仮想マシンの負荷量に応じて前記現用状態のリソース量を計算するときに、前記仮想マシンの負荷量を処理可能な前記現用状態のリソース量よりも所定割合だけ多く前記現用状態のリソース量を計算し、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その電源をオフにすることで予備オフ状態に移行させる旨の制御信号を送信することを特徴とする。
【００１３】
これにより、所定割合だけ多く確保した現用状態のリソース量に余裕があるため、ある程度の負荷増加では物理サーバのリソース不足にならずに、安定して動作する。さらに、消費電力がほぼ発生しない予備オフ状態を活用することで、消費電力の削減量を増やすことができる。
【００１４】
本発明は、前記電源状態制御部が、
前記仮想マシンの負荷量に応じて前記現用状態のリソース量を計算するときに、前記仮想マシンの負荷量を処理可能な前記現用状態のリソース量よりも所定割合だけ多く前記現用状態のリソース量を計算し、
前記現用状態へと更新する前記物理サーバに対して、その電源をオンにする制御信号を送信し、
前記予備状態へと更新する前記物理サーバに対して、その構成部品のうちの一部を通電させることで予備待機状態に移行させる制御信号を送信することを特徴とする。
【００１５】
これにより、所定割合だけ多く確保した現用状態のリソース量が多く、かつ、予備待機状態の物理サーバでもその構成部品のうちの一部が通電していることによりすばやく現用状態へと復帰できるので、高負荷発生時の解消所要時間を短縮できる。
【発明の効果】
【００１８】
本発明によれば、消費電力を削減しつつ、サーバ仮想化システムを安定させて運用するような電源制御を実施することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態に関するサーバ仮想化システムの構成図である。
【図２】図２（ａ）は、物理サーバの電源状態間の遷移関係を示す図である。図２（ｂ）は、物理サーバの各電源状態の詳細を示す図である。図２（ｃ）は、電源状態管理部の構成図である。
【図３】図３（ａ）は、電源状態制御部が状態管理を行う４方式の概要図である。図３（ｂ）は、図３（ａ）の４方式に対する比較表である。
【図４】本発明の一実施形態に関する電源制御装置が実行する電源状態の管理処理を示すフローチャートである。
【図５】図５（ａ）は、方式１の初期状態を示す。図５（ｂ）は、方式１の負荷が減少した状態を示す。図５（ｃ）は、方式１の負荷が増大した状態を示す。図５（ｄ）は、方式１の負荷増大に対処した状態を示す。
【図６】図６（ａ）は、方式２の初期状態を示す。図６（ｂ）は、方式２の負荷が減少した状態を示す。図６（ｃ）は、方式２の負荷が増大した状態を示す。図６（ｄ）は、方式２の負荷増大に対処した状態を示す。
【図７】図７（ａ）は、方式３の初期状態を示す。図７（ｂ）は、方式３の負荷が減少した状態を示す。図７（ｃ）は、方式３の負荷が増大した状態を示す。図７（ｄ）は、方式３の負荷増大に対処した状態を示す。
【図８】図８（ａ）は、方式４の初期状態を示す。図８（ｂ）は、方式４の負荷が減少した状態を示す。図８（ｃ）は、方式４の負荷が増大した状態を示す。図８（ｄ）は、方式４の負荷増大に対処した状態を示す。
【発明を実施するための形態】
【００２０】
以下、本発明の一実施形態について、図面を参照して詳細に説明する。
【００２１】
図１は、サーバ仮想化システムの構成図である。
サーバ仮想化システムは、１台以上の物理サーバ１０が配置されるデータセンタ１と、電源制御装置４とが、ネットワークで接続されて構成される。これらのサーバ仮想化システムの各装置（物理サーバ１０、電源制御装置４）は、ＣＰＵ（Central Processing Unit）とメモリとハードディスク（記憶手段）とネットワークインタフェースを有するコンピュータとして構成され、このコンピュータは、ＣＰＵが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。
【００２２】
データセンタ１の各物理サーバ１０は、電源制御装置４から指示される電源制御の信号に従って、自身の電源状態を設定する。
電源制御装置４は、各物理サーバ１０に対して、仮想マシン（ＶＭ：Virtual Machine）２０を配置させて実行させるとともに、その仮想マシン２０の負荷に従って、電源制御の状態を決定する。
なお、物理サーバ１０の台数や処理能力は、物理サーバ１０上で稼働させる仮想マシン２０の負荷合計が物理サーバ１０の処理能力の合計を超過しないように、あらかじめデータセンタ１の設計段階で考慮されている。
【００２３】
ここで、データセンタ１内の物理サーバ１０は、自身の電源状態に応じて、現用オンサーバ群３１、予備待機サーバ群３２、および、予備オフサーバ群３３のいずれかに分類される。
まず、「現用」状態とは、仮想マシン２０が配置されている状態であり、「予備」状態とは、仮想マシン２０が配置されていない状態である。
現用オンサーバ群３１は、仮想マシン２０が配置されて稼動している現用状態かつ電源がオンである（物理サーバ１０の構成部品のすべてが通電している）「現用オン状態」の物理サーバ１０の集合である。
予備待機サーバ群３２は、仮想マシン２０が未配置である予備状態かつ物理サーバ１０の構成部品のうちの一部が通電している「予備待機状態」の物理サーバ１０の集合である。
予備オフサーバ群３３は、仮想マシン２０が未配置である予備状態かつ電源がオフである（物理サーバ１０の構成部品のすべてが通電していない）「予備オフ状態」の物理サーバ１０の集合である。
【００２４】
さらに、各物理サーバ１０は、自身の装置の負荷量などのリソースの使用状況を示す情報を収集するリソース情報収集部１１を有する。
リソース情報収集部１１が収集対象とする負荷は、例えば、ＣＰＵ使用率、メモリ使用率などの物理サーバ１０のリソース使用率が挙げられる。
【００２５】
電源制御装置４は、ＶＭ配置先決定部４１と、ＶＭ再配置実行部４２と、負荷量受信部５１と、電源状態管理部５２と、電源状態制御部５３とを有する。
負荷量受信部５１は、各物理サーバ１０のリソース情報収集部１１から、物理サーバ１０の負荷量などのリソースの使用状況を受信し、その受信結果を電源状態管理部５２に書き出す。
電源状態管理部５２は、負荷量受信部５１からの負荷量と、データセンタ１内の各物理サーバ１０に搭載されているリソース量（物理サーバスペック値）とを管理する。なお、物理サーバスペック値は、例えば、物理サーバ１０に搭載されているＣＰＵのコア数、クロック周波数（ＧＨｚ）などである。
電源状態制御部５３は、電源状態管理部５２の情報（負荷値、スペック値）をもとに、各物理サーバ１０の電源状態を決定する。そして、電源状態制御部５３は、電源状態を変更する物理サーバ１０に対して、電源制御の信号を送信する。
【００２６】
ＶＭ配置先決定部４１は、負荷量受信部５１が受信した負荷量の変動や、電源状態制御部５３が決定した電源状態の変更に応じて、再配置が必要な仮想マシン２０の再配置先となる物理サーバ１０を決定する。ＶＭ配置先決定部４１は、例えば、物理サーバ１０上の負荷が所定範囲（負荷下限しきい値〜負荷上限しきい値）から外れたときに、その外れた物理サーバ１０上に配備されていた仮想マシン２０を、他の物理サーバ１０上に再配置させるようにして決定する。
【００２７】
ＶＭ再配置実行部４２は、ＶＭ配置先決定部４１が決定した仮想マシン２０の再配置の内容に従い、再配置元および再配置先の物理サーバ１０に対して、再配置の信号を送信することで、仮想マシン２０の再配置を実行させる。なお、ＶＭ再配置実行部４２は、最新の仮想マシン２０の配置状況を、電源状態管理部５２に反映する。
【００２８】
図２（ａ）は、物理サーバ１０の電源状態間の遷移関係を示す図である。電源オンと電源オフとの間では、待機せずにダイレクトに切り替えできる。電源オンと待機との間では、電源オフせずにダイレクトに切り替えできる。一方、待機と電源オフとの間では、電源オンを経由してから切り替える必要がある。
【００２９】
図２（ｂ）は、物理サーバの各電源状態の詳細を示す図である。
各電源状態は、その状態名称と、ハードウェア実装（ACPI State）と、ＶＭ動作と、状態時消費量と、現用オンへの移行時の消費量とで説明される。
【００３０】
現用オン状態は、例えば「G0(S0)-Working」として実装され、現用オン状態中の仮想マシン２０の動作が可能である。そのため、現用オン状態中の電気消費量は、他の状態に比べて大きいものとなっている。なお、ACPI Stateにおいて、Gn(n=数値)の表記は大分類を示し、Sn(n=数値)の表記は小分類を示す。
【００３１】
予備待機状態は、例えば「G1(S1-S4)-Sleeping、または、G2(S5)-Soft-off」として実装され、予備待機状態中の仮想マシン２０の動作は不可である。なお、予備待機状態は、物理サーバ１０のリソースが部分的に電源オンとなっているので、その状態中の電気消費量は、現用オン状態よりは小さいものの、予備待機状態から現用オン状態に移行するためのコスト（電気消費量や移行期間）が少し発生する。
【００３２】
予備オフ状態は、例えば「G3-Mechanical-off」として実装され、予備オフ状態中の仮想マシン２０の動作は不可である。なお、予備オフ状態は、物理サーバ１０の電源がオフとなっているので、その状態中の電気消費量は、ほぼゼロで済むものの、予備オフ状態から現用オン状態に移行するためのコスト（電気消費量や移行期間）が再起動などにより大きく発生する。
【００３３】
以上説明したように、電源制御装置４は、物理サーバ１０の電源状態を論理的に３種類（現用オン状態、予備待機状態、予備オフ状態）として大まかに分類する。
一方、各物理サーバ１０の物理的な電源状態（ACPI Stateなどの具体的なハードウェア実装）は、電源状態の総数が３種類とは限らず、ＯＳ（Operating System）ベンダやハードウェアベンダなどの都合により、呼び方も様々である（通常稼働モード、省エネモード、サスペンドモード、スタンバイモードなど）。
【００３４】
そこで、電源制御装置４は、図２（ｂ）に例示したように、論理的な電源状態（現用オン状態など）と、物理的な電源状態（G0(S0)-Workingなど）との対応表を、あらかじめ管理者などにより入力させておく。この対応表は、物理的な各電源状態が、いずれか１つの論理的な電源状態に対応するように、物理的な各電源状態の対応関係を網羅的に定義したものである。
そして、電源状態制御部５３は、ある物理サーバ１０に対して電源状態を「予備オフ状態」に設定する旨の制御信号を作成したときは、前記した電源状態の対応表を参照して、電源状態を「G3-Mechanical-off」に設定する旨の制御信号へと変換（翻訳）してから、物理サーバ１０に送信すればよい。
【００３５】
さらに、対応表において、１つの論理的な電源状態（例えば予備待機状態）が、複数の物理的な電源状態（例えばG1(S1-S4)-Sleeping、G2(S5)-Soft-offなどの電源制御内容）に対応する場合、電源制御装置４は、その対応先の複数の物理的な電源状態間での規模の比率（所定の配分比率）もあらかじめ対応表に登録しておく。そして、電源状態制御部５３は、この規模の比率に応じて、各物理的な電源状態の台数を決定してもよい。
これにより、電源状態制御部５３は、現用状態をさらに細分化した複数の物理的な電源状態（現用詳細状態）が、各物理サーバ１０の電源状態として存在するときには、所定の第１配分比率に応じて現用詳細状態の物理サーバ１０の配分を決定する。
同様に、電源状態制御部５３は、予備状態をさらに細分化した複数の物理的な電源状態（予備詳細状態）が、各物理サーバ１０の電源状態として存在するときには、所定の第２配分比率に応じて予備詳細状態の物理サーバ１０の配分を決定する。
そして、電源状態制御部５３は、各物理サーバ１０に対して、決定された現用詳細状態や予備詳細状態へと更新するための制御信号を送信する。
例えば、予備待機状態へと更新する物理サーバ１０が４台であり、予備待機状態のうちの予備詳細状態「G1(S1-S4)-Sleeping」：予備待機状態のうちの予備詳細状態「G2(S5)-Soft-off」＝１：３である旨の第２配分比率があらかじめ設定されているとする。
そのとき、第２配分比率に応じて、電源状態制御部５３は、「G1(S1-S4)-Sleeping」へと更新する物理サーバ１０を１台とし、「G2(S5)-Soft-off」へと更新する物理サーバ１０を３台として決定する。
【００３６】
図２（ｃ）は、電源状態管理部５２の構成図である。
電源状態管理部５２には、物理サーバ１０ごとにその電源状態と、配置されている仮想マシン２０と、物理サーバ１０のスペックとが対応づけて管理される。
電源状態管理部５２内の仮想マシン２０列には、仮想マシン２０の特定情報（ＶＭ１）に加え、その仮想マシン２０の動作に伴う負荷（負荷＝10）も、負荷量受信部５１から受信した負荷量をもとに設定されている。この負荷は、例えば、物理サーバ１０の構成部品（ＣＰＵ、メモリ、ディスクＩ／Ｏ、ネットワークＩ／Ｏなど）の使用量や使用率である。または、物理サーバ１０のスループット値（単位時間あたりの通信量やトランザクション量など）を負荷として用いてもよく、例えば、負荷＝10[tps(Transactions Per Second)]などである。
なお、仮想マシン２０ごとの負荷値（細かい単位）とする代わりに、物理サーバ１０ごとの負荷値（荒い単位）を電源状態管理部５２に格納してもよい。これにより、負荷値の測定が容易になる。
【００３７】
電源状態管理部５２内のスペック列には、物理サーバスペック値から計算された負荷に対する処理能力値が記載される。例えば、物理サーバ１０のＣＰＵ負荷を用いる場合には、スペック列に記載される処理能力値＝ＣＰＵ周波数×コア数などである。
例えば、ＰＭ１の物理サーバ１０には、ＶＭ１とＶＭ２という２つの仮想マシン２０（負荷＝10+8＝18）が配備されており、自身の処理能力（負荷20分）に対してあまり余裕がない。
一方、ＰＭ２の物理サーバ１０には、ＶＭ３という１つの仮想マシン２０（負荷＝5）が配備されており、自身の処理能力（負荷20分）に対して余裕がある。
【００３８】
なお、図２（ｃ）では、６台の物理サーバ１０の処理能力が互いに同じである簡単な場合を例示した。この場合には、現用オン状態として必要な物理サーバ１０の処理能力を計算することと、現用オン状態にする物理サーバ１０の台数を計算することとは、同じである。
一方、データセンタ１内の物理サーバ１０間に処理能力のばらつきがある場合（異種混合の環境）では、電源状態制御部５３は、現用オン状態として必要な物理サーバ１０の処理能力を計算した後、電源状態管理部５２のスペック列を参照して、その処理能力を提供する物理サーバ１０を特定すればよい。
なお、以下の説明では、わかりやすくするために、各物理サーバ１０の処理能力が同じである場合を例示する。
【００３９】
図３（ａ）は、電源状態制御部５３が状態管理を行う４方式の概要図である。
電源状態制御部５３は、同じグループ（データセンタ１）を対象とする電源管理として、方式１〜方式４の４方式のうち、いずれか１つの方式を採用する。これらの方式の違いは、各状態（現用オン状態、予備待機状態、予備オフ状態）となる物理サーバ１０の台数（配分）の違いである。
以下に示すように、方式１では、物理サーバ１０の論理的な電源状態を３状態とし、方式２〜４では、論理的な電源状態を２状態としてそれぞれ定義する。
【００４０】
現用オン状態の台数は、方式１，２では、システム負荷処理に最低限必要なサーバ台数規模（通常規模）とするが、方式３，４では、その通常規模よりも所定割合だけ余裕を持たせた（例えば、１．５倍の）サーバ台数規模（大規模）とする。なお、「規模」とは物理サーバ１０全体のリソース量の大きさであり、その一例として台数を用いて説明している。
【００４１】
予備待機状態の台数は、方式１では現用オン状態の台数に対して所定割合（例えば、半分の小規模）とし、方式２，４では、データセンタ１内の全物理サーバ１０の台数から現用オン状態の台数を引いた残りの台数とする。一方、方式３では、そもそも予備待機状態を用いない（図では「＊＊」）ので、台数は常に０台である。
方式１では、予備待機状態の台数は、現用オン状態の台数に対して、適切な台数が用意されているので、現用オン状態の物理サーバ１０が不足したときには、用意された予備待機状態の物理サーバ１０をすぐに稼働させることができる。一方、負荷増大に伴い現用オン状態の台数が増えたことで、その半分の予備待機状態を確保できないときには、その旨（予備不足）を管理者などに通知（画面表示やアラーム音など）してもよい。
【００４２】
予備オフ状態の台数は、方式１ではデータセンタ１内の全物理サーバ１０の台数から現用オン状態の台数と、予備待機状態の台数とを引いた残りの台数とする。方式３ではデータセンタ１内の全物理サーバ１０の台数から現用オン状態の台数を引いた残りの台数とする。一方、方式２，４では、そもそも予備待機状態を用いない（図では「＊＊」）ので、台数は常に０台である。
方式１では、現用オン状態にも予備待機状態にも該当しない物理サーバ１０の電源をオフにするので、データセンタ１全体の総消費電力量を抑えることができる。
方式３では、現用オン状態に該当しない物理サーバ１０の電源をオフにするので、データセンタ１全体の総消費電力量を抑えることができる。
【００４３】
なお、図３（ａ）で示した各電源状態の配分は、あくまで一例であり、規模を決定するための乗数（例えば小規模を現用オン状態の「１／２」とする）は、他の乗数（例えば「２／３」）にするなど、管理者が適宜設定してもよい。
また、図３（ａ）では、各電源状態の配分としてサーバ台数を単位としたが、その代わりに、サーバスペック合計値を単位としてもよい。そして、電源状態制御部５３は、サーバスペック合計値を計算した後（例えば、現用オン状態として「スペック＝60」分だけ必要）、そのサーバスペック合計値を満たすように、物理サーバ１０を決定すればよい（例えば、スペック＝10,10,20,20という４台の物理サーバ１０）。
さらに、電源状態制御部５３は、過去の電源切替履歴が少ない物理サーバ１０ほど今回の切り替え対象として選ばれやすくするなどの電源切替対象の選択アルゴリズムに基づいて、電源状態の切替対象である複数の物理サーバ１０から実際に切り替える物理サーバ１０を決定する。
【００４４】
図３（ｂ）は、状態管理の４方式の比較図である。この図３（ｂ）の詳細な説明は、４方式の詳細な説明（図４〜図８）のあとに、行う。
【００４５】
図４は、電源制御装置４が実行する電源状態の管理処理を示すフローチャートである。なお、電源制御装置４には、このフローチャートの開始前に、図３（ａ）で示した４方式のいずれか１つの方式を、今回用いる方式として管理者が設定しておく。
Ｓ１１において、電源状態制御部５３は、今回用いる方式が示す台数配分に従って、各電源状態のサーバ群の台数を初期設定する。この初期設定は、電源状態制御部５３から各物理サーバ１０に反映される。
Ｓ１２において、ＶＭ再配置実行部４２は、Ｓ１１で設定された現用オンサーバ群３１に、仮想マシン２０を初期配置する。なお、各仮想マシン２０の初期配置先の決定方法は、例えば特許文献１に記載の「リソースの使用率の低いサーバ装置からリソースを割り当てる」方法を用いればよい。そして、配置された各仮想マシン２０は各物理サーバ１０上で動作すると、その負荷量がリソース情報収集部１１によって測定され、負荷量受信部５１を介して電源状態管理部５２に格納される。
【００４６】
Ｓ２１において、電源状態制御部５３は、すでに配置された現用オンサーバ群３１の台数に対して、その現用オンサーバ群３１が処理する負荷合計が減少したか否かを判定する。換言すると、現用オンサーバ群３１の物理サーバ１０に余剰リソースが発生した否かを判定する。
この判定式は、図３（ａ）で示した現在のＶＭ群の負荷に対応する「現用オン」として適正規模の台数を現在の現用オン状態の物理サーバ１０が１台でも上回ったら余剰リソースが発生したと判定してもよいし、適正規模の台数をＢ台（Ｂ＞１）上回ったら余剰リソースが発生したと判定してもよい。Ｓ２１でＹｅｓならＳ２２に進み、ＮｏならＳ３１に進む。
【００４７】
Ｓ２２において、電源状態制御部５３は、Ｓ２１で減少したとした現在のＶＭ群の負荷をもとに、図３（ａ）で示した各方式の「現用オン」列が示す適正規模まで、現用オンサーバ群３１の台数を減少させる。そして、電源状態制御部５３は、現用オン状態の台数が更新されると、他の電源状態（予備待機状態、予備オフ状態）も連動して再計算する。
【００４８】
Ｓ２３において、電源状態制御部５３は、Ｓ２２で減少されて残った現用オンサーバ群３１をＶＭの再配置先とする。例えば、現用オン状態が４台から３台に減少されたときには、その減った１台の物理サーバ１０上に配置されていた仮想マシン２０を、残った３台のいずれかの物理サーバ１０上に再配置することで、１台の物理サーバ１０を予備状態にする。
なお、このような仮想マシン２０の再配置先の決定方法として、例えば、文献「特開２０１２−２５２６０２号公報」に記載されているように、「リソースの使用率が上限閾値を上回ったサーバがある場合に、論理サーバを他のサーバに移行し、また、下限閾値を下回ったサーバがある場合に論理サーバを他のサーバに移行する」方法を用いることができる。
【００４９】
Ｓ２４において、電源状態制御部５３は、Ｓ２２で決めた最新の台数配分を元に、各サーバ群の電源状態を更新する。例えば、Ｓ２３で減った１台上の仮想マシン２０がすべて他の物理サーバ１０に移動した後に、その１台の仮想マシン２０の現用オン状態を予備待機状態に変更する。
【００５０】
Ｓ３１において、電源状態制御部５３は、すでに配置された現用オンサーバ群３１の台数に対して、その現用オンサーバ群３１が処理する負荷合計が増大したか否かを判定する。換言すると、現用オンサーバ群３１の物理サーバ１０にリソース不足が発生した否かを判定する。
この判定式は、図３（ａ）で示した現在のＶＭ群の負荷に対応する「現用オン」として適正規模の台数を現在の現用オン状態の物理サーバ１０が１台でも下回ったら不足リソースが発生したと判定してもよいし、適正規模の台数をＡ台（Ａ＞１）下回ったら不足リソースが発生したと判定してもよい。Ｓ３１でＹｅｓならＳ３２に進み、ＮｏならＳ２１に戻る。
【００５１】
Ｓ３２において、電源状態制御部５３は、Ｓ３１で増大したとした現在のＶＭ群の負荷をもとに、図３（ａ）で示した各方式の「現用オン」列が示す適正規模まで、現用オンサーバ群３１の台数を増加させる。そして、電源状態制御部５３は、現用オン状態の台数が更新されると、他の電源状態（予備待機状態、予備オフ状態）も連動して再計算する。
【００５２】
Ｓ３３において、電源状態制御部５３は、Ｓ３２で決めた最新の台数配分を元に、各サーバ群の電源状態を更新する。例えば、Ｓ３２で増加した各物理サーバ１０について、予備状態から現用オン状態に変更する。
【００５３】
Ｓ３４において、電源状態制御部５３は、Ｓ３２で増加された（Ｓ３３で新たに現用オン状態となった）現用オンサーバ群３１をＶＭの再配置先とする。例えば、現用オン状態が３台から４台に増加されたときには、すでにある３台のいずれかの物理サーバ１０上の仮想マシン２０を、増えた１台の物理サーバ１０上に再配置する。
なお、このような仮想マシン２０の再配置先の決定方法として、例えば、Ｓ２３と同様に、文献「特開２０１２−２５２６０２号公報」に記載されている方法を用いることができる。
【００５４】
以下、図４で示した各処理について、図５〜図８を参照して、方式別に詳細を説明する。なお、方式１（図５）、方式２（図６）、方式３（図７）、方式４（図８）の順に説明する。
【００５５】
図５は、方式１についての具体例である。
図５（ａ）は、Ｓ１２で初期配置されたときの各サーバ群の電源状態を示す。全部で８台の物理サーバ１０がデータセンタ１に存在する例において、方式１では、現用オン状態が通常規模（４台）、予備待機状態がその半分（２台）、予備オフ状態がその残り台数（２台）である（図３（ａ）の「方式１」行参照）。
なお、図５〜図８の「ＶＭ群」と記載された符号１０１のような記載は、仮想マシン２０の負荷の合計を示す。そして、符号１０１の面積が負荷の大きさを示し、符号１０１の位置がどの物理サーバ１０上に配置されているかを示す。例えば、符号１０１は４台の物理サーバ１０の上に記載されているので、４台の現用オンサーバ群３１上でそれぞれ稼働していることがわかる。
【００５６】
図５（ｂ）は、Ｓ２３で負荷減少に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が４台から３台に減少する。そして、予備待機状態が現用オン状態の半分（１．５≒２台）のままであり、予備オフ状態がその残り（８−３−２＝３台）となる。これにより、予備オフ状態の物理サーバ１０が増加することで、省電力化が実現できる。
図５（ｃ）は、Ｓ３１で負荷増大を検知したときの各サーバ群の電源状態を示す。３台の現用オン状態では増大した負荷を処理するのに不足している状態である。
図５（ｄ）は、Ｓ３４で負荷増大に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が３台から５台になったことに伴い、３台の物理サーバ１０に配置されていた仮想マシン２０が５台の現用オン状態に再配置（負荷分散）されている。さらに、現用オン状態の通常規模が５台となったことで、予備待機状態がその半分（２．５≒３台）となり、予備オフ状態がその残り（８−５−３＝０台）となる。
【００５７】
図６は、方式２についての具体例である。
図６（ａ）は、Ｓ１２で初期配置されたときの各サーバ群の電源状態を示す。全部で８台の物理サーバ１０がデータセンタ１に存在する例において、方式２では、現用オン状態が通常規模（４台）、予備待機状態がその残り台数（４台）である（図３（ａ）の「方式２」行参照）。
図６（ｂ）は、Ｓ２３で負荷減少に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が４台から３台に減少したので、その１台分が予備待機状態に移行することで、省電力化が実現できる。
図６（ｃ）は、Ｓ３１で負荷増大を検知したときの各サーバ群の電源状態を示す。３台の現用オン状態では増大した負荷を処理するのに不足している状態である。
図６（ｄ）は、Ｓ３４で負荷増大に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が３台から５台になったことに伴い、３台の物理サーバ１０に配置されていた仮想マシン２０が５台の現用オン状態に再配置（負荷分散）されている。さらに、現用オン状態の通常規模が５台となったことで、予備待機状態がその残り（８−５＝３台）となる。
【００５８】
図７は、方式３についての具体例である。
図７（ａ）は、Ｓ１２で初期配置されたときの各サーバ群の電源状態を示す。全部で８台の物理サーバ１０がデータセンタ１に存在する例において、方式３では、現用オン状態が処理能力に余裕がある大規模（６台）、予備オフ状態がその残り台数（２台）である（図３（ａ）の「方式３」行参照）。
図７（ｂ）は、Ｓ２３で負荷減少に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が６台から５台に減少したので、その１台分が予備オフ状態に移行することで、省電力化が実現できる。
図７（ｃ）は、Ｓ３１で負荷増大を検知したときの各サーバ群の電源状態を示す。図７（ａ）で現用オン状態の処理能力に余裕をもたせたので、ある程度の負荷増加では物理サーバ１０のリソース不足にならずに、安定して動作する。
図７（ｄ）は、Ｓ３４で負荷増大に伴いＶＭを再配置したときの各サーバ群の電源状態を示す。現用オン状態の適正規模が５台から８台になったことに伴い、５台の物理サーバ１０に配置されていた仮想マシン２０が８台の現用オン状態に再配置（負荷分散）されている。さらに、現用オン状態の通常規模が８台となったことで、予備オフ状態がその残り（８−８＝０台）となる。
【００５９】
図８は、方式４についての具体例である。図８は、図７の「予備オフ状態」を図８では「予備待機状態」に置き換えたものである。方式４も方式３と同様に、現用オン状態の処理能力に余裕をもたせたので、ある程度の負荷増加では物理サーバ１０のリソース不足にならずに、安定して動作する。
以上、図５〜図８を参照して、方式別に説明した。
【００６０】
図３（ｂ）に戻って、状態管理の４方式の比較図を説明する。なお、４方式の比較は４方式間の相対評価であり、ある方式が他の方式と比較して良いか悪いかを比較するものである。図３（ｂ）では、以下に示す４つの指標と、それらの指標をもとにした総合評価（よい順に◎、○、△）とを示す。
（１）消費電力削減量（多いほどよい）
（２）電源状態変更回数（少ないほどよい、図では△より○のほうが少ない）
（３）サーバ高負荷発生回数（少ないほどよい、図では△より○のほうが少ない）
（４）高負荷発生時の解消所要時間（短いほどよい）
【００６１】
（１）消費電力削減量は、すべての物理サーバ１０を常に現用オン状態にしておく運用に比べて、どの程度の消費電力を削減できたかを示す指標である。図２（ｂ）で示したように、現用オン状態、予備待機状態、予備オフ状態の順に削減量が多くなる（消費電力が少なくて済む）。
よって、方式３の削減量＞方式４の削減量であり、かつ、方式１の削減量＞方式２の削減量である。なお、現用オン状態の台数が全体の物理サーバ１０の台数に対して充分に多い場合には、方式２の削減量＞方式３の削減量となる。
【００６２】
（２）電源状態変更回数とは、電源の各状態（現用オン状態、予備待機状態、予備オフ状態）間の変更（切り替え）が行われた回数を示す指標である。この変更回数が多くなると、物理サーバ１０の電源部などを酷使したことで、故障の要因となりうる。
本実施形態の各方式では、３つ（方式１）または２つ（方式２〜４）という少ない電源状態間で遷移するので、電源状態変更回数も少なくて済む。なお、方式１よりも方式２〜４のほうが電源状態数は少ないので、変更回数をさらに少なくできる。
【００６３】
（３）サーバ高負荷発生回数とは、現用オン状態の物理サーバ１０に対して、高負荷が発生する回数であり、例えば、図４のＳ３１でＹｅｓと判断された回数である。つまり、高負荷とは、現用オン状態の物理サーバ１０上のリソース使用率が上昇することで、自装置に対してさらに仮想マシン２０を追加する余裕がない状態である。なお、サーバ高負荷発生回数は、発生した高負荷を分散するために、仮想マシン２０を再配置する回数ともいえる。
図７（ｃ）および図８（ｃ）で説明したように、方式３，４は、現用オン状態の処理能力に余裕を持たせているので、方式１，２よりも発生回数を減らすことができる。
【００６４】
（４）高負荷発生時の解消所要時間とは、物理サーバ１０にて高負荷が発生した際に、どれだけの時間で高負荷状態を解消できるかを示す。
方式１，２では、予備待機状態を現用オン状態に変更する所要時間（１０秒）＋仮想マシン２０の再配置時間（１５秒）＝合計２５秒を要する。
方式３では、予備オフ状態を現用オン状態に変更するための再起動時間と、仮想マシン２０の再配置時間との合計５分を要する。
方式４では、現用オン状態の物理サーバ１０に仮想マシン２０を再配置する時間（１５秒）がかかる。
【００６５】
さらに、電源状態制御部５３は、（１）〜（４）の各指標を統合した１つの総合評価値を計算してもよい。つまり、電源状態制御部５３は、各指標の評価値に対して、事前に指定された各指標の重み付け値を重み付け加算することで、総合評価値を求める。これらの各指標の重み付け値は、管理者の電力制御のポリシを示している。
例えば、「消費電力量をある程度増やしてもよいので、サーバ故障をなるべく起こしたくない」というポリシを実現するために、（２）電源状態変更回数の重み付け値を、他の指標の重み付け値よりも大きな値とすればよい。
また、「アプリケーションに高い性能品質を求める」というポリシを実現するために、（３）サーバ高負荷発生回数の重み付け値と、（４）高負荷発生時の解消所要時間の重み付け値とを、他の指標の重み付け値よりも大きな値とすればよい。
【００６６】
また、電源状態制御部５３は、図４で示した電源状態の管理処理を各方式で試行し、その試行結果を観察することで求まる（１）〜（４）の各指標に対して、総合評価値を求める。そして、電源状態制御部５３は、試行した方式１〜方式４のうちの総合評価値が高い方式を管理者のポリシに適合した電源制御の方式として、管理者に推薦（画面表示）したり、今後の電源制御に使用する方式として採用したりしてもよい。
このように、物理サーバ電源制御において現用状態・予備状態の二つの状態を定義し、各状態の電源状態として複数の方式を提案し（例えば、方式１〜方式４では合計４つのバリエーション）、それぞれの方式から、管理者のポリシが反映された総合評価値が高い方式を採用する。
これにより、保守者が、消費電力量削減・サーバ耐故障性・サーバ過負荷発生頻度・サーバ過負荷発生時の解消所要時間の各観点をどのぐらい重視するかに応じて、それに応じた適切な電源制御方式を採用できる。
【００６７】
以上説明した本実施形態の電源制御装置４は、データセンタ１内の各物理サーバ１０の電源状態（現用オン状態、予備待機状態、予備オフ状態）間の配分台数を、仮想マシン２０の負荷に応じて適切に管理する。つまり、図３（ａ）で示したように、電源制御の各方式は、仮想マシン２０の負荷に応じて適正規模が決まる現用オン状態と、他状態の規模に応じて変動する予備待機状態および予備オフ状態とで遷移するように定義されている。
これにより、図３（ｂ）で示したように、消費電力を削減したり、電源状態の変更回数を減らしたり、サーバ高負荷発生回数を減らしたり、その高負荷発生時の解消所要時間を短縮化できる。よって、消費電力を削減しつつ、サーバ仮想化システムを安定させて運用できる。
【符号の説明】
【００６８】
１      データセンタ
４      電源制御装置
１０    物理サーバ
１１    リソース情報収集部
２０    仮想マシン
３１    現用オンサーバ群
３２    予備待機サーバ群
３３    予備オフサーバ群
４１    ＶＭ配置先決定部
４２    ＶＭ再配置実行部
５１    負荷量受信部
５２    電源状態管理部
５３    電源状態制御部
【図１】
0006259388.tif 000002
【図２】
0006259388.tif 000003
【図３】
0006259388.tif 000004
【図４】
0006259388.tif 000005
【図５】
0006259388.tif 000006
【図６】
0006259388.tif 000007
【図７】
0006259388.tif 000008
【図８】
0006259388.tif 000009