(57)【特許請求の範囲】
【請求項１】
複数の電子計算機が消費する電力量の制限および前記制限を行う時間帯を取得し、
前記制限、および、前記電子計算機のＣＰＵ使用率と消費電力との関係に基づいて停止する電子計算機の数を算定し、
算定した数に基づいて停止する電子計算機の設置場所を特定し、
前記時間帯の前に特定した前記設置場所の電子計算機を停止する
処理をコンピュータに実行させるプログラム。
【請求項２】
前記電子計算機には、動作中に相互に代替可能な複数の該電子計算機が含まれており、
前記特定は、代替可能な前記電子計算機の設置場所から停止する電子計算機の設置場所を選択して行うことを特徴とする請求項１に記載のプログラム。
【請求項３】
代替可能な前記電子計算機は、複数の仮想機械を動作させる電子計算機であることを特徴とする請求項２に記載のプログラム。
【請求項４】
前記特定に基づいて前記電子計算機を停止する前に、停止する電子計算機で動作している仮想機械を停止しない電子計算機に配置し、
前記時間帯が終了した後に停止した前記電子計算機を起動し、
動作している仮想機械を動作している電子計算機に再配置する
処理をコンピュータに実行させる請求項３に記載のプログラム。
【請求項５】
前記特定は、前記算定した数、前記電子計算機の負荷および停止する電子計算機の設置場所を関連付けたテーブルを参照して行うことを特徴とする請求項１から請求項４のいずれか一つに記載のプログラム。
【請求項６】
前記電子計算機は、一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能な場所に設置されており、
前記特定は、前記算定した数および式（１）に基づいて行われることを特徴とする請求項１から請求項４のいずれか一つに記載のプログラム。
【数１】
0006443123.tif 000014
ｋは正の整数。
ｙ（ｋ）≦ｊ
ｙ（ｋ）は停止する電子計算機が設置されている単位区画を示す番号
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する電子計算機の数
ｊは電子計算機を設置する単位区画の総数。
ｈｓｖは、１台の電子計算機が設置される区画が備える単位区画の数。
【請求項７】
一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能であり、前記単位区画に１から始まる連番を付与した場所に、同一数の単位区画で構成される区画に配置可能な電子計算機および記憶装置を配置する場合に、
配置する前記記憶装置の数、前記電子計算機および記憶装置を配置する前記単位区画の総数と、電子計算機または記憶装置が配置される区画が備える単位区画の数とに基づいて式（５）を満たすＰ（Ｉ）を算出し、
Ｐ（Ｉ）が付与された単位区画から始まる区画を記憶装置が配置される区画であると決定する処理をコンピュータに実行させるプログラム。
【数５】
0006443123.tif 000015
Ｉは正の整数。
Ｐ（Ｉ）は記憶装置を配置する単位区画を示す番号。
Ｐ（Ｉ）≦ｊ
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｍは記憶装置の数
ｊは電子計算機および記憶装置を配置する単位区画の総数。
ｈｓｔは、１台の電子計算機または記憶装置を配置する区画を構成する単位区画の数。
【請求項８】
複数の電子計算機が消費する電力量の制限および前記制限を行う時間帯を取得し、
前記制限、および、前記電子計算機のＣＰＵ使用率と消費電力との関係に基づいて停止する電子計算機の数を算定し、
算定した数に基づいて停止する電子計算機の設置場所を特定し、
前記時間帯の前に特定した前記設置場所の電子計算機を停止する
処理をコンピュータに実行させる運転方法。
【請求項９】
複数の電子計算機が消費する電力量の制限および前記制限を行う時間帯を取得する取得部と、
前記制限、および、前記電子計算機のＣＰＵ使用率と消費電力との関係に基づいて停止する電子計算機の数を算定する算定部と、
算定した数に基づいて停止する前記電子計算機の設置場所の特定を行う特定部と、
前記時間帯の前に特定した前記設置場所の電子計算機を停止する停止部と
を備えることを特徴とする運転装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータにより複数の電子機器の運転を行うプログラム、運転方法および運転装置に関する。
【背景技術】
【０００２】
複数の電子機器を規格化された棚に設置して使用する、いわゆるラックマウントシステムが使用されている。電子機器の個体識別用のＩＤ（Identification）と、棚に設置された電子機器の物理的な位置とを関連づける管理システムが開示されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１６５１０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１にはラックマウントシステムに設置された各電子機器の物理的な位置に関する情報を利用する方法については記載されていない。
【０００５】
一つの側面では、本発明は、電子機器を用いたシステムの動作の継続性に配慮した電力の使用量の削減を図ったプログラム等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
一態様では、本発明のプログラムは、複数の電子計算機が消費する電力量の制限および前記制限を行う時間帯を取得し、前記制限、および、前記電子計算機のＣＰＵ使用率と消費電力との関係に基づいて停止する電子計算機の数を算定し、算定した数に基づいて停止する電子計算機の設置場所を特定し、前記時間帯の前に特定した前記設置場所の電子計算機を停止する理をコンピュータに実行させる。
【発明の効果】
【０００７】
一つの側面では、電子機器を用いたシステムの動作の継続性に配慮した電力の使用量の削減を図ることが可能となる。
【図面の簡単な説明】
【０００８】
【図１】サーバシステムのハードウェア構成を示す装置構成図である。
【図２】データセンタの構成を示す説明図である。
【図３】サーバシステムの冷却方法を示す説明図である。
【図４】ＣＰＵ使用率と消費電力との関係を示す説明図である。
【図５】被管理サーバの停止台数と消費電力およびＣＰＵ使用率との関係を示す説明図である。
【図６】棚に搭載された電子機器の構成を示す説明図である。
【図７】一部の被管理サーバを停止したサーバシステムの温度の変化を説明する説明図である。
【図８】プログラムの処理の流れを示すフローチャートである。
【図９】停止台数算出の処理の流れを示すフローチャートである。
【図１０】停止する被管理サーバの場所を示すテーブルの例である。
【図１１】停止する被管理サーバを特定の処理の流れを示すフローチャートである。
【図１２】実施の形態２の停止する被管理サーバを特定の処理の流れを示すフローチャートである。
【図１３】実施の形態２の停止する被管理サーバが配置された場所を特定した例を示す表である。
【図１４】実施の形態３の停止する被管理サーバを特定の処理の流れを示すフローチャートである。
【図１５】実施の形態３の停止する被管理サーバを特定の処理の流れを示すフローチャートである。
【図１６】実施の形態３の停止する被管理サーバが配置された場所を特定した例を示す表である。
【図１７】実施の形態４のプログラムの処理の流れを示すフローチャートである。
【図１８】実施の形態４の停止台数算出の処理の流れを示すフローチャートである。
【図１９】実施の形態４の停止台数算出の処理の流れを示すフローチャートである。
【図２０】実施の形態５のサーバシステムのハードウェア構成を示す装置構成図である。
【図２１】実施の形態５の棚に搭載された電子機器の構成を示す説明図である。
【図２２】実施の形態５の一部の被管理サーバを停止した場合の温度の変化を示す説明図である。
【図２３】実施の形態５の一部の被管理サーバを停止した場合の温度の変化の比較例を示す説明図である。
【図２４】実施の形態５の停止する被管理サーバを特定の処理の流れを示すフローチャートである。
【図２５】実施の形態６の処理の流れを示すフローチャートである。
【図２６】実施の形態６のストレージの場所を決定した例を示す表である。
【図２７】実施の形態７の停止する被管理サーバの場所を示すテーブルの例である。
【図２８】実施の形態８のサーバシステムのハードウェア構成を示す装置構成図である。
【発明を実施するための形態】
【０００９】
［実施の形態１］
本実施の形態は、相互に代替可能な複数の電子機器を棚に設置したシステムを運転するプログラム等に関する。本実施の形態のプログラム等は、節電の要請を受けた場合にシステムの電力使用量を要請に沿って削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行する。節電の実行は、システムに含まれる電子機器のうちの動作中に相互に代替可能な電子機器の一部を停止することにより行う。相互に代替可能な電子機器は、たとえば複数の仮想機械が動作するサーバである。またシステムは、複数の仮想機械が動作する複数のサーバと周辺装置とを備えるサーバシステム１０である。
【００１０】
図１は、サーバシステム１０のハードウェア構成を示す装置構成図である。サーバシステム１０は、棚１１、棚１１に設置された複数の電子機器ならびに図示しない熱交換器および送風機を備える。棚１１は、高さ方向に配列した複数の電子機器を固定して設置することが可能な構造であり、たとえば１９インチラックである。１９インチラックおよび１９インチラックに設置する電子機器の寸法は、ＥＩＡ（Electronic Industries Alliance）規格で規定されている。１９インチラックでは、基準高さを有する１つの区画を１ユニットと呼ぶ。１ユニットの区画の高さは約４５ミリメートルである。１９インチラックと組み合わせて使用する電子機器の高さは、１ユニットの整数倍の高さの区画に設置されるように設計される。すなわち、１９インチラックにおいては、１ユニットが単位区画である。以下では、４２ユニットの１９インチラック、すなわち高さ方向に４２個の区画を有する１９インチラックを棚１１に使用する場合を例にして説明する。
【００１１】
棚１１に設置された電子機器は、たとえば通信機器１２、管理サーバ１３および複数の被管理サーバ１４である。これらの電子機器は、いずれも１９インチラックの規格に対応した寸法であり、棚１１に固定されている。電子機器の配置については後述する。
【００１２】
通信機器１２は、たとえばスイッチングハブまたはルータ等である。通信機器１２は、管理サーバ１３と被管理サーバ１４との間の通信およびサーバシステム１０と外部のネットワーク３１との間の通信を行う。通信機器１２と管理サーバ１３との間、通信機器１２と被管理サーバ１４との間および通信機器１２とネットワーク３１との間はそれぞれ有線または無線で接続される。
【００１３】
ネットワーク３１は、サーバシステム１０が設置されたデータセンタ内の構内ＬＡＮ（Local Area Network）、専用回線を用いてデータセンタ間を接続するネットワークまたはインターネット回線のネットワーク等である。
【００１４】
管理サーバ１３はサーバシステム１０を管理する。管理サーバ１３は、ＣＰＵ（Central Processing Unit）２１、主記憶装置２２、補助記憶装置２３、通信インターフェイス２４、時計２５およびバスを備える。
【００１５】
ＣＰＵ２１は、本発明に係るプログラムを実行する演算制御装置である。ＣＰＵ２１には、一または複数のＣＰＵまたはマルチコアＣＰＵ等が使用される。ＣＰＵ２１は、バスを介して管理サーバ１３を構成するハードウェア各部と接続されている。
【００１６】
主記憶装置２２は、ＳＲＡＭ（Static Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、フラッシュメモリ等の記憶装置である。主記憶装置２２には、ＣＰＵ２１が行う処理の途中で必要な情報およびＣＰＵ２１で実行中のプログラムが一時的に保存される。
【００１７】
補助記憶装置２３は、ＳＲＡＭ、フラッシュメモリ、ハードディスクまたは磁気テープ等の記憶装置である。補助記憶装置２３には、ＣＰＵ２１に実行させるプログラムおよびプログラムの実行に必要な各種データが保存される。
【００１８】
時計２５は、時刻を出力する。時計２５は、通信機器１２およびネットワーク３１を介して日本標準時等の標準時刻との時刻合わせを行える事が望ましい。
【００１９】
通信インターフェイス２４は、管理サーバ１３と通信機器１２との間の通信を行うインターフェイスである。
【００２０】
被管理サーバ１４は各種の情報処理を行う。被管理サーバ１４は、図示しないＣＰＵ，主記憶装置、補助記憶装置および通信インターフェイスを備える。各構成要素の働きは、管理サーバ１３の構成要素と同一である。
【００２１】
被管理サーバ１４には、大容量の主記憶装置が搭載されており、複数の仮想機械を動作させる事ができる。各仮想機械は、仮想的なコンピュータとして動作して、各種のアプリケーションソフトウェアを実行する。複数の被管理サーバ１４のうちの、どの被管理サーバ１４にどのアプリケーションソフトウェアを実行させる仮想機械を配置するかは、通信機器１２を介して管理サーバ１３が管理する。
【００２２】
一つの被管理サーバ１４に配置された仮想機械は、サーバシステム１０の動作中に別の被管理サーバ１４に移動させる事ができる。管理サーバ１３は、仮想機械を適宜移動させる事により、被管理サーバ１４のＣＰＵおよび入出力の負荷を平準化して、サーバシステム１０全体の処理効率を高めている。すなわち、複数の被管理サーバ１４は、相互に代替することが可能である。
【００２３】
ネットワーク３１には操作端末１５が接続されている。操作端末１５は、たとえばデータセンタの管理室に設置された汎用のパソコン、タブレットまたはスマートフォンなどの情報機器である。
【００２４】
操作端末１５は、図示しないＣＰＵ、主記憶装置、補助記憶装置、通信インターフェイス、入力装置および表示装置を備える。図示しないＣＰＵ、主記憶装置、補助記憶装置および通信インターフェイスの働きは、管理サーバ１３の構成要素と同一である。図示しない入力装置はたとえばキーボード、タッチパネル、タッチペン、マイク等の入力機器である。図示しない表示装置は、たとえば液晶ディスプレイ、スピーカ、ヘッドホン等の出力機器である。
【００２５】
操作端末１５は図示しない入力装置からの入力を受け付けてネットワーク３１に伝達し、またネットワーク３１からの指示に応じて図示しない表示装置に出力を行う。図示しない熱交換器および送風機については後述する。
【００２６】
ネットワーク３１には図示しない多数のサーバシステム１０が接続されている。
【００２７】
図２は、データセンタの構成を示す説明図である。データセンタは、多数のサーバシステム１０、記憶装置、通信設備およびこれらの電子機器を冷却する冷却装置等を運用する施設である。図２には、間接水冷式の冷却装置を使用するデータセンタの例を示す。
【００２８】
前述の様に、サーバシステム１０の棚１１には、通信機器１２、管理サーバ１３および被管理サーバ１４等の電子機器が固定されている。各電子機器は棚１１の高さ方向に一列に設置されている。各電子機器はそれぞれが棚１１に固定されている。棚１１には、各電子機器の側面に向けて送風することが可能な送風機１８が設置されている。また、送風機１８に隣接して熱交換器１９が設置されている。送風機１８および熱交換器１９の動作については後述する。
【００２９】
冷却装置は、冷凍機３３、緩衝タンク３４、冷媒管３５、ポンプ３６、センサ３７、弁３８および図示しない冷却制御装置を備える。
【００３０】
冷媒管３５は、冷凍機３３および緩衝タンク３４を接続している。また、冷媒管３５は、各サーバシステム１０の近傍で冷媒支管３５１に分岐している。冷媒支管３５１は、熱交換器１９に接続されている。冷媒支管３５１により、複数の熱交換器１９が冷凍機３３および緩衝タンク３４に対して並列に接続されている。
【００３１】
冷凍機３３は冷媒管３５内を流れる冷媒を冷却する。緩衝タンク３４は、冷凍機３３で冷却する前後の冷媒を一時的に貯蔵して冷凍機３３の負荷の急激な変動および冷媒管３５内を流れる冷媒の温度の急激な変動を防止する。なお、緩衝タンク３４内では冷却する前の冷媒と冷却した後の冷媒とは混ざらないように隔離されている。
【００３２】
ポンプ３６は、冷媒管３５内の冷媒を所定の方向に流動させる。冷凍機３３で冷却された冷媒は冷媒管３５および冷媒支管３５１を通って熱交換器１９に入る。冷媒は熱交換器１９内で温められる。サーバシステム１０内の熱の移動については後述する。
【００３３】
熱交換器１９で温められた冷媒は、緩衝タンク３４を介して冷凍機３３に移動して冷却される。冷凍機３３で冷却された冷媒は、緩衝タンク３４、冷媒管３５および冷媒支管３５１を介して熱交換器１９に送り出される。冷媒は冷凍機３３と熱交換器１９との間を巡回して繰り返し使用される。なお、本実施の形態においては、冷媒には水を使用する。
【００３４】
センサ３７は、緩衝タンク３４からサーバシステム１０に向かう冷媒の温度を測定する。弁３８は冷媒管３５および冷媒支管３５１内の冷媒の流量を調整する。図２には２個の弁３８が記載されているが、弁３８の数は２個に限定されない。弁３８は流量の調整が必要な場所に適宜設置されている。
【００３５】
冷凍機３３、ポンプ３６、センサ３７および弁３８は、図示しない冷却制御装置に接続されており、センサ３７で測定された温度を一定に保つように各部位の動作が制御される。図２には１個のセンサ３７が記載されているが、センサ３７の数は１個に限定されない。センサ３７は温度の測定が必要な場所に適宜設置されている。
【００３６】
図３は、サーバシステム１０の冷却方法を示す説明図である。図３は、サーバシステム１０をＴ−Ｔ断面で切った模式図である。すなわち、棚１１に１９インチラックを使用して水平に設置した場合には、図３は水平断面を示す。
【００３７】
Ｔ−Ｔ断面は、被管理サーバ１４を通る断面である。送風機１８がサーバシステム１０の内部に白抜き矢印で示す空気の流れを作り出す。図３を用いて、サーバシステム１０内の熱の移動について説明する。
【００３８】
送風機１８から送り出された空気は、被管理サーバ１４の周囲を流れて被管理サーバ１４を構成する電子部品を冷却する。被管理サーバ１４を構成する電子部品が発生する熱により暖められた空気は、熱交換器１９を通る。熱交換器１９の内部には、冷媒支管３５１が通っている。冷媒支管３５１内を通って熱交換器１９に入った冷媒は、熱交換器１９内の空気により温められることにより、熱交換器１９内の空気を冷却する。熱交換器１９で冷却された空気は、再度送風機１８から被管理サーバ１４に向けて送り出される。
【００３９】
ポンプ３６の作用により熱交換器１９内で温められた冷媒が冷媒支管３５１を通って熱交換器１９の外に出ることにより、サーバシステム１０内で発生した熱もサーバシステム１０の外部に運び出される。前述のとおり、熱交換器１９内で温められた冷媒は緩衝タンク３４を介して冷凍機３３で冷やされる。
【００４０】
図４は、ＣＰＵ使用率と消費電力との関係を示す説明図である。図４は被管理サーバ１４に搭載されているＣＰＵの使用率と消費電力との関係の一例を示す。図４の横軸はＣＰＵ使用率を示し、単位はパーセントである。図４の縦軸は消費電力を示し、単位はワットである。ここで、ＣＰＵ使用率とは、被管理サーバ１４に搭載されたＣＰＵがなんらかの処理を行っている時間の割合を意味する。
【００４１】
ＣＰＵ使用率は、プログラムの実行状況によって時々刻々と変化する。サーバシステム１０は、各被管理サーバ１４のＣＰＵ使用率の時間的な平均値が２５パーセントから４０パーセント程度の範囲で使用される場合が多い。なお、以下の説明では一定の時間内のＣＰＵ使用率の平均値をＣＰＵ使用率と記載する。ここで一定の時間は、たとえば１０分間である。
【００４２】
図４では、ＣＰＵ使用率が０パーセントの時の消費電力は約２６０Ｗである。ＣＰＵ使用率の上昇にともなって、消費電力は上昇する。ＣＰＵ使用率が３５パーセントの場合に、消費電力は約４００Ｗである。なお、異なる仕様の被管理サーバ１４では、ＣＰＵ使用率と消費電力との関係は図４と異なる関係になるが、ＣＰＵ使用率が上昇した場合には消費電力が上昇するという関係は、被管理サーバ１４の仕様にかかわらず共通である。
【００４３】
図５は、被管理サーバ１４の停止台数と消費電力およびＣＰＵ使用率との関係を示す説明図である。以下では、動作している被管理サーバ１４同士のＣＰＵ使用率はすべて等しくなるように、管理サーバ１３により管理されている場合について説明する。なお、現実には管理サーバ１３による管理にもかかわらず、被管理サーバ１４間のＣＰＵ使用率には多少の相違が生じる。しかし、概略でみると以下に説明する事柄があてはまる。
【００４４】
図５は、被管理サーバ１４を２０台含むサーバシステム１０において、処理能力を一定に保ったままで一部の被管理サーバ１４を停止した場合の、消費電力および動作している被管理サーバ１４のＣＰＵ使用率を示す。
【００４５】
図５においては、被管理サーバ１４の初期のＣＰＵ使用率は３５パーセントである。また、処理能力は、一部の被管理サーバ１４で動作している仮想機械を他の被管理サーバ１４に移したうえで仮想機械の動作していない被管理サーバ１４を停止することにより一定に保つ。
【００４６】
図５の横軸は、停止する被管理サーバ１４の数を示す。図５の横軸の単位は台である。図５の左側の縦軸は被管理サーバ１４の消費電力の合計値を示す。図５の左側の縦軸の単位はワットである。停止する被管理サーバ１４の数と被管理サーバ１４の消費電力の合計値との関係は、黒菱形で示す。図５の右側の縦軸は、被管理サーバ１４のＣＰＵ使用率を示す。図５の右側の縦軸の単位はパーセントである。停止した被管理サーバ１４の数と被管理サーバ１４の消費電力の合計値との関係は、四角で示す。
【００４７】
被管理サーバ１４で消費された電力は、最終的には熱になる。したがって、消費電力が大きいほど、発熱量も多くなり、温度が上昇する。
【００４８】
停止する被管理サーバ１４の台数が増加した場合には、被管理サーバ１４の消費電力の合計値は減少する。また、停止する被管理サーバ１４の台数が増加した場合には、動作中の被管理サーバ１４のＣＰＵ使用率は上昇する。停止台数が１３台以上になった場合には、ＣＰＵ使用率は１００パーセントになる。すなわち、一部の仮想機械にはＣＰＵの動作時間が割り当てられず、実行が停止する。
【００４９】
図６は、棚１１に設置された電子機器の構成を示す説明図である。前述のように、本実施の形態においては、４２ユニットの１９インチラックを使用する。最上部の区画には１ユニットの通信機器１２が、１つ下の区画には１ユニットの管理サーバ１３が設置されている。管理サーバ１３の下の区画には第１被管理サーバ１４から第２０被管理サーバ１４まで２ユニットの被管理サーバ１４が２０台設置されている。以後の説明のために、図６の左側には棚１１内での被管理サーバ１４が設置された区画を表す番号を示す。番号は、１単位区画ごとに振られている。
【００５０】
図７Ａから図７Ｃは、一部の被管理サーバ１４を停止したサーバシステム１０の温度の変化を説明する説明図である。図７Ａは、通常時のサーバシステム１０を示す。図７Ｂは節電時の本実施の形態のサーバシステム１０を示す。図７Ｃは節電時の比較例のサーバシステム１０を示す。
【００５１】
ＳＶは動作している被管理サーバ１４を、Ｘは停止している被管理サーバ１４を示す。白抜き矢印は、送風機１８が作り出す空気の流れを示す。図７では左側が送風機１８から電子機器に向かう空気の流れ、右側が電子機器の発熱によりあたためられて熱交換器１９に向かう空気の流れを示す。以後の説明では、送風機１８から電子機器向かう空気を吸気、電子機器から熱交換器１９に向かう空気を排気と記載する。
【００５２】
図７Ａは、通信機器１２、管理サーバ１３および２０台の被管理サーバ１４が全て動作している場合を示す。図７Ｂおよび図７Ｃは、節電の要請に対応するために１１台の被管理サーバ１４を停止した場合を示す。図７Ｂは、本実施の形態の場合であり、停止する被管理サーバ１４の場所は分散している。図７Ｃは比較例の場合であり、停止する被管理サーバ１４は棚１１の上側に集中している。
【００５３】
図７Ａの場合は、動作している２０台の被管理サーバ１４のＣＰＵ使用率は平均３５パーセント、１台あたりの消費電力は平均４００Ｗ、被管理サーバ１４の消費電力の合計は約８０００Ｗである。図７Ｂおよび図７Ｃの場合は、動作している９台の被管理サーバ１４のＣＰＵ使用率は平均７８パーセント、１台あたりの消費電力は平均約６００Ｗ、被管理サーバ１４の消費電力の合計は約５４００Ｗである。いずれの場合も棚１１内を流れる吸気および排気は毎時２５００立方メートル、周囲温度は摂氏２５度である。
【００５４】
定常状態に達した場合の図７Ａ、図７Ｂおよび図７Ｃの吸気の温度および排気の最高温度の例を表１に示す。
【表１】
0006443123.tif 000002
【００５５】
いずれの場合も、被管理サーバ１４の発熱により排気の温度は吸気の温度より高くなっている。図７Ｂおよび図７Ｃの場合は、動作している被管理サーバ１４の１台あたりの消費電力は図７Ａの場合よりも増加するため、動作している被管理サーバ１４の１台あたりの発熱量も多くなる。しかし、動作している被管理サーバ１４の場所が分散している図７Ｂの場合には、排気の最高温度は図７Ａの場合に比べて低下している。
【００５６】
一方、比較例である図７Ｃの場合、動作している被管理サーバ１４の場所が集中しているために、冷却効果が十分に得られず、動作している被管理サーバ１４の周囲の温度が上昇する。そのため、吸気の温度が周囲温度よりも高くなっている。また、吸気の温度が上昇していることおよび動作している被管理サーバ１４の発熱量が増加しているために、排気の最高温度は図７Ａの場合に比べて１０度近く上昇している。
【００５７】
温度が上昇することにより、電子機器の故障が発生しやすくなる。また、発熱量を抑えて熱暴走を回避するためにＣＰＵにあらかじめ組み込まれているＣＰＵスロットリングの機能が動作して、被管理サーバ１４の性能が低下する場合もある。
【００５８】
以上に説明したように、被管理サーバ１４の一部を停止させて節電する場合に、図７Ｂに示したように停止させる被管理サーバ１４を分散させることにより、温度上昇を少なくすることができる。温度上昇が少なくなることにより、冷却装置の消費電力も削減して節電することができる。
【００５９】
図８は、プログラムの処理の流れを示すフローチャートである。図８を使用して本実施の形態のＣＰＵ２１が行う処理の流れを説明する。ＣＰＵ２１は、節電の要請を取得しているか否かを判定する（ステップＳ５００）。
【００６０】
ここで、節電の要請は、たとえば電力事業者から電力需要者であるデータセンタの管理者に対して、事前に通知される。または、特定の時間帯に一定以上の量の電力を使用すると料金が高くなるように設定された電気料金表として、電力事業者データセンタの管理者に対して配布される。
【００６１】
データセンタの管理者は各サーバシステム１０に対して電力の使用量を制限する時間帯および制限された時間帯に使用可能な電力量の上限値を割り当てる。割り当ては、都度管理者が判断しても良いし、管理システムにより自動的に行われても良い。この割り当てが、サーバシステム１０に対する節電の要請である。ＣＰＵ２１は、ネットワーク３１を介して割り当ての入力を取得する。
【００６２】
なお、以下では通信機器１２および管理サーバ１３の消費電力は変更せず、被管理サーバ１４の消費電力を削減することにより節電の要請に対応する場合を例にして説明する。
【００６３】
節電の要請を取得していない場合は（ステップＳ５００でＮＯ）、ＣＰＵ２１はステップＳ５００に戻る。節電の要請を取得している場合は（ステップＳ５００でＹＥＳ）、ＣＰＵ２１は、停止台数算出のサブルーチンを起動する（ステップＳ５０１）。停止台数算出のサブルーチンは、節電の要請に対応して停止する被管理サーバ１４の台数を算出し、要請された節電量の達成可否を通知するサブルーチンである。サブルーチン内の処理については後述する。
【００６４】
ＣＰＵ２１は、被管理サーバ１４の一部を停止することにより節電要請で示された目標を達成できるか否かを判定する（ステップＳ５０２）。具体的にはステップＳ５０１で起動した停止台数算出のサブルーチンから目標を達成できる旨が出力されたか否かを判定する。目標を達成できない場合は（ステップＳ５０２でＮＯ）、ＣＰＵ２１は処理を終了する。
【００６５】
節電要請で示された消費電力の目標を達成できる場合は（ステップＳ５０２でＹＥＳ）、ＣＰＵ２１は停止する被管理サーバ１４を特定のサブルーチンを起動する（ステップＳ５０３）。停止する被管理サーバ１４を特定のサブルーチンは、棚１１内の停止する被管理サーバ１４が設置されている区画を特定するサブルーチンである。サブルーチン内の処理については後述する。
【００６６】
ＣＰＵ２１は、被管理サーバ１４の停止作業の所要時間を予測する（ステップＳ５０４）。被管理サーバ１４を停止する際には、その被管理サーバ１４のＣＰＵで動作しているタスクおよび仮想機械を停止しない被管理サーバ１４に移動させた後に、停止処理を行う。ステップＳ５０４で、ＣＰＵ２１はこれらの処理の所要時間を予測する。
【００６７】
所要時間を予測する方法の例を説明する。ＣＰＵ２１は、仮想機械が動作している主メモリの内容を他の被管理サーバ１４に転送する時間および仮想機械への入出力を切り替える時間等の概算値を合計することにより、所要時間を予測する。ここで主メモリの内容を転送する時間は使用している主メモリの量から、入出力を切り替える時間は使用している入出力の数および種類から計算する。ＣＰＵ２１は、他の被管理サーバ１４に移動させる仮想機械の数と、あらかじめ求めてある仮想機械の移動に必要な平均時間の積から停止作業の所要時間を算出しても良い。または、ＣＰＵ２１は動作している仮想機械の数等にかかわらず一定の時間、たとえば５分間が所要時間であると予測しても良い。
【００６８】
ＣＰＵ２１は、節電の要請で指定された時間帯の開始時刻およびステップＳ５０４で予測した所要時間から、被管理サーバ１４の停止作業の開始時刻を算出する。ＣＰＵ２１は、時計２５を参照して作業開始時刻に到達したか否かを判定する（ステップＳ５０５）。作業開始時刻に到達していない場合には（ステップＳ５０５でＮＯ）。ＣＰＵ２１はステップＳ５０５に戻る。
【００６９】
作業開始時刻に到達した場合は（ステップＳ５０５でＹＥＳ）、ＣＰＵ２１は停止する被管理サーバ１４で動作していたタスクおよび仮想機械を停止しない被管理サーバ１４に移動させる（ステップＳ５０６）。その後、ＣＰＵ２１は被管理サーバ１４の停止を行う（ステップＳ５０７）。以後、サーバシステム１０は、節電の要請に対応して割り当てられた電力量の範囲内の平均電力量で動作する。
【００７０】
ＣＰＵ２１は、要請を受けつけた節電時間帯が終了したか否かを判定する（ステップＳ５０８）。終了していない場合は（ステップＳ５０８でＮＯ）、ＣＰＵ２１はステップＳ５０８に戻る。終了している場合は（ステップＳ５０８でＹＥＳ）、ＣＰＵ２１はステップＳ５０７で停止した被管理サーバ１４を再起動する（ステップＳ５０９）。ＣＰＵ２１は、動作しているタスクおよび仮想機械を再配置する（ステップＳ５１０）。再配置は、たとえば各被管理サーバのＣＰＵ使用率を平準化するように実施する。被管理サーバ１４に対する仮想機械の配置の定め方については、既存の手法を使用することができるので、説明を省略する。その後、ＣＰＵ２１は処理を終了する。
【００７１】
図９は、停止台数算出の処理の流れを示すフローチャートである。図９を使用して停止台数算出のサブルーチンの処理の流れを説明する。
【００７２】
ＣＰＵ２１は、計算台数を被管理サーバ１４の数、すなわち２０に設定する（ステップＳ５２１）。ＣＰＵ２１は、あらかじめ受け取っている節電の要請の通知に基づいて電力使用量の上限値を取得する（ステップＳ５２２）。なお、本実施の形態におけるステップＳ５２２での電力使用量の上限値は、サーバシステム１０に含まれている被管理サーバ１４が消費する電力の上限値であり、通信機器１２、管理サーバ１３、送風機１８および熱交換機１９の消費する電力は含まない。
【００７３】
ＣＰＵ２１は、節電の要請を受けた時間帯における被管理サーバ１４のＣＰＵ使用率の予測値を取得する（ステップＳ５２３）。ＣＰＵ使用率の予測値には、たとえば対象の時間および曜日等に対応する過去のＣＰＵ使用率の統計値を使用する。ＣＰＵ使用率の曜日および時間による変動の統計値は、あらかじめ補助記憶装置２３に記憶されている。または、ＣＰＵ２１は通信機器１２およびネットワーク３１を介して外部のデータベースからＣＰＵ使用率の曜日および時間による変動の統計値を取得しても良い。
【００７４】
なお、サーバシステム１０で動作する仮想機械の用途によっては、ＣＰＵ２１は、時間および曜日以外の情報、たとえば天気予報、株価または外国為替レート等の情報を考慮してＣＰＵ使用率の予測値を取得しても良い。また、被管理サーバ１４のＣＰＵ使用率に特に定まった変動パターンが無いサーバシステム１０の場合には、ＣＰＵ２１はステップＳ５２３を実行する時の前の数分間のＣＰＵ使用率の時間平均値をＣＰＵ使用率の予測値に使用しても良い。
【００７５】
ＣＰＵ２１は、ステップＳ５２３で取得したＣＰＵ使用率の予測値に基づいて電力使用量の予測値を算出する（ステップＳ５２４）。電力使用量の予測値の算出にあたっては、動作している全ての被管理サーバ１４のＣＰＵ使用率が等しくなるように管理サーバ１３により管理されていると仮定して、図４に例を示したＣＰＵ使用率と消費電力との関係を用いる。ＣＰＵ使用率と消費電力との関係は、テーブルまたはＣＰＵ使用率を引数として電力使用量を求める数式として、あらかじめ補助記憶装置２３に記憶されている。
【００７６】
ＣＰＵ２１は、ステップＳ５２４で算出した電力使用量の予測値がステップＳ５２２で取得した上限値を上回るか否かを判定する（ステップＳ５２５）。電力使用量の予測値が上限値以下の場合（ステップＳ５２５でＮＯ）、ＣＰＵ２１は目標を達成可能である旨を出力する（ステップＳ５２６）。出力先は、たとえば電力の使用量の制限を割り当てて通知した管理者である。その後ＣＰＵ２１は処理を終了する。
【００７７】
電力使用量の予測値が上限値を上回る場合（ステップＳ５２５でＹＥＳ）、ＣＰＵ２１は計算台数を１台減らす（ステップＳ５２７）。ＣＰＵ２１は、計算台数が１以上か否かを判定する（ステップＳ５２８）。計算台数が１以上である場合（ステップＳ５２８でＹＥＳ）、ＣＰＵ２１は被管理サーバ１４のＣＰＵ使用率を算出する（ステップＳ５２９）。被管理サーバ１４のＣＰＵ使用率の予測値は、ステップＳ５２３で取得したＣＰＵ使用率の予測値と被管理サーバ１４の数の積を、計算台数で除する事により算出する。
【００７８】
ＣＰＵ２１は算出したＣＰＵ使用率の予測値が、被管理サーバ１４のＣＰＵの最大使用率以下か否かを判定する（ステップＳ５３０）。ここでＣＰＵの最大使用率は、あらかじめ規定された値であり、被管理サーバ１４が安定して動作可能なＣＰＵの最大使用率である。ＣＰＵの最大使用率はサーバシステム１０の用途等に応じて定められる。被管理サーバ１４のＣＰＵ使用率の時間変化が激しい場合およびリアルタイム処理が必要な場合等は、ＣＰＵの最大使用率は６０％等の値に設定される。一方被管理サーバ１４のＣＰＵ使用率の時間変化が少ない場合およびリアルタイム処理が不要でＣＰＵの負荷が高い場合には処理が遅れても支障が無い用途の場合には最大使用率を１００％と設定されても良い。被管理サーバ１４のＣＰＵ使用率の予測値が最大使用率以下である場合（ステップＳ５３０でＹＥＳ）、ＣＰＵ２１はステップＳ５２４に戻る。
【００７９】
ステップＳ５２８で計算台数が１未満の場合（ステップＳ５２８でＮＯ）およびステップＳ５３０で被管理サーバ１４のＣＰＵ使用率の予測値が最大使用率を超える場合（ステップＳ５３０でＮＯ）、ＣＰＵ２１は目標を達成不可能である旨を出力する（ステップＳ５３１）。その後ＣＰＵ２１は処理を終了する。
【００８０】
なお、停止台数算出のサブルーチンの終了にあたり、ＣＰＵ２１はステップＳ５２６とステップＳ５２７のどちらの出力が行われたかの情報を、主記憶装置２２または補助記憶装置２３に記憶する。さらに、ステップＳ５２５でＮＯと判定された場合には、ＣＰＵ２１は直前の計算台数の値およびＣＰＵ使用率の予測値を主記憶装置２２または補助記憶装置２３に記憶する。本サブルーチンの呼び出し元のプログラムを実行時に、ＣＰＵ２１は、記憶された計算台数の値を停止台数の算定結果に使用する。同様に、本サブルーチンの呼び出し元のプログラムの実行時に、ＣＰＵ２１は、記憶されたＣＰＵ使用率の予測値を一部の被管理サーバを停止した場合のＣＰＵ使用率の予測値に使用する。
【００８１】
図１０は、停止する被管理サーバ１４の場所を示すテーブルの例である。図１０を使用して停止する被管理サーバ１４を特定のサブルーチンの処理の内容を説明する。
【００８２】
図１０に示すテーブルは、停止する被管理サーバ１４の数および一部の被管理サーバ１４を停止した後の被管理サーバ１４のＣＰＵ使用率の予測値と、停止する被管理サーバ１４の棚１１内の区画の番号との関係を示すテーブルである。一番左の列は、停止台数算出のサブルーチンで算出した停止する被管理サーバ１４の数を示す。左から２番目の列は、ステップＳ５２９で算出した被管理サーバ１４のＣＰＵ使用率の予測値を示す。左から３列目以降の列の上から２行目は、棚１１内の区画の番号を示す。区画の番号は図６の左側の番号で示されている。左から３列目以降の列の上から３行目以下でＸの示されている場所は、対応する被管理サーバ１４を停止する事を示している。
【００８３】
さらに具体的には、被管理サーバ１４を４台停止して、ＣＰＵ使用率の予測値を６０パーセントにする場合には、９、１９、２９、３９の番号に対応する区画に設置されている４台の被管理サーバ１４を停止する。すなわち、本実施の形態では２ユニットの被管理サーバ１４を使用しているので、９番および１０番の区画、１０番および２０番の区画、２９番および３０番の区画ならびに３９番および４０番の区画にそれぞれ収納されている被管理サーバ１４を停止する。
【００８４】
図１０は、実測または熱シミュレーション等の手法を用いて、排気の最高温度を低く抑える事ができる停止する被管理サーバ１４の場所を求める事により作成する。特に、サーバシステム１０をデータセンタに設置した後に実測により図１０を作成することにより、使用されている被管理サーバ１４の個体差、サーバシステム１０の設置場所の空調の状態、各電子機器間を結ぶ配線の引き回し状態等の様々な状況を総合して、排気の最高温度を低く抑える事ができる停止する被管理サーバ１４の場所を定める事ができる。
【００８５】
図１０のテーブルは、補助記憶装置２３に記憶されている。ＣＰＵ２１は、補助記憶装置２３から図１０のテーブルを読み出して使用する。または、ＣＰＵ２１は、通信機器１２およびネットワーク３１を介して外部の記憶装置から図１０のテーブルを取得しても良い。
【００８６】
図１１は、停止する被管理サーバを特定の処理の流れを示すフローチャートである。図１１を使用して、停止する被管理サーバを特定のサブルーチンの処理の流れを説明する。
【００８７】
ＣＰＵ２１は、主記憶装置２２または補助記憶装置２３から停止する被管理サーバの数を取得する（ステップＳ７０１）。前述の様に、停止する被管理サーバの数は図９に示した停止台数算出のサブルーチンのステップＳ５２５でＮＯと判定された場合の直前の計算台数の値である。
【００８８】
ＣＰＵ２１は、主記憶装置２２または補助記憶装置２３からＣＰＵ使用率の予測値を取得する（ステップＳ７０２）。前述の様に、ＣＰＵ使用率の予測値は図９に示した停止台数算出のサブルーチンのステップＳ５２５でＮＯと判定された場合の直前のＣＰＵ使用率の予測値である。
【００８９】
ＣＰＵ２１は、主記憶装置２２または補助記憶装置２３または外部の記憶装置から停止する被管理サーバ１４の場所を示すテーブルを取得する（ステップＳ７０３）。前述の様に、停止する被管理サーバ１４の場所を示すテーブルはたとえば図１０に示されたテーブルである。
【００９０】
ＣＰＵ２１は、停止する被管理サーバの数およびＣＰＵ使用率の予測値から、ステップＳ７０３で取得したテーブルを参照して、停止する被管理サーバ１４が設置された区画の番号を取得する（ステップＳ７０４）。
【００９１】
ＣＰＵ２１は、取得した番号を主記憶装置２２または補助記憶装置２３に記憶し、その後処理を終了する。
【００９２】
本実施の形態によると、節電の要請を受けた場合に電子機器の電力使用量を削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行するサーバシステム１０を提供することができる。
【００９３】
サーバシステム１０の冷却方法は、サーバシステム１０を設置した部屋全体を冷房する方法でも良いし、部屋または冷却管内に外気を導入する方法でも良い。
【００９４】
本実施の形態のプログラムは、任意の被管理サーバ１４で動作する仮想機械で実行しても良い。
【００９５】
棚１１は、２個以上に分かれていても良い。また、棚１１はたとえば日本工業規格においてＪＩＳ（Japanese Industrial Standards）Ｃ６０１０「一般電子機器用ラック及びユニットシャシの寸法」で定められた寸法、またはサーバシステム１０の製造業者が独自に定めた寸法でも良い。これらの場合、設置する電子機器は棚１１に設置可能な仕様のものを使用する。棚１１を構成する単位区画の数は任意に選択できる。
【００９６】
棚１１は、電子機器を設置する区画が水平方向に並んでいるものであっても良い。
【００９７】
ＣＰＵ使用率と消費電力との関係が異なる被管理サーバ１４が棚１１に混載されていても良い。その場合には、ステップＳ５２４では個々の被管理サーバ１４のＣＰＵ使用率と消費電力の関係を用いて、消費電力の予測値を算出する。さらに、各被管理サーバの発熱量を考慮した表１０を用意しておく。
【００９８】
棚１１には電子機器が設置されていない空き区画が残っていても良い。その場合には、あらかじめ空き区画を考慮した表１０を用意しておく。通信機器１２または管理サーバ１３は、棚の中央部付近に設置されていても良い。その場合には、あらかじめ通信機器または管理サーバの設置を考慮した表１０を用意しておく。
【００９９】
１ユニットの被管理サーバ１４または３ユニット以上の被管理サーバ１４を使用しても良い。２ユニット以上の通信機器１２または２ユニット以上の管理サーバ１３を使用しても良い。
【０１００】
［実施の形態２］
本実施の形態は、節電の要請に対応して停止する電子機器が設置されている区画を、数式で示す演算結果に基づいて定めるプログラム等に関する。本実施の形態においても、４２ユニットの１９インチラックに２ユニットの被管理サーバ１４が２０台配置されたサーバシステム１０を例にして説明する。実施の形態１と共通する部分については説明を省略する。
【０１０１】
図１２は、実施の形態２の停止する被管理サーバ１４を特定の処理の流れを示すフローチャートである。なお、本実施の形態においては、停止する被管理サーバ１４を特定のサブルーチン以外は、実施の形態１と同一である。図１２を使用して本実施の形態の停止する被管理サーバ１４を特定の処理の流れを説明する。
【０１０２】
ＣＰＵ２１はカウンタｋを初期値である１に設定する（ステップＳ５５１）。ＣＰＵ２１は、１台の被管理サーバ１４が設置された区画を構成する単位区画の数ｈｓｖに被管理サーバ１４の数Ｓを乗じて、被管理サーバ１４を収納する単位区画の総数ｊを算出する（ステップＳ５５２）。具体的には２ユニットの被管理サーバ１４を使用するのでｈｓｖは２であり、被管理サーバ１４は２０台なのでＳは２０である。したがって、ｈｓｖにＳを乗じた被管理サーバ１４を収納する単位区画の総数ｊは４０である。
【０１０３】
ＣＰＵ２１は、式（１）に基づいてｙ（ｋ）を算出する（ステップＳ５５３）。
【数１】
0006443123.tif 000003
ｋは正の整数。
ｙ（ｋ）≦ｊ
ｙ（ｋ）は停止する被管理サーバ１４が設置されている単位区画の番号
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する被管理サーバ１４の数。
【０１０４】
式（１）の各変数および定数について、さらに具体的に説明する。ｙ（ｋ）は、図６の左側に示した棚１１内の区画を示す番号である。番号は、被管理サーバ１４の設置された区画に１から連番で付与されている。ｎは、電力量の上限値および被管理サーバ１４のＣＰＵ使用率の予測値に基づいて算出した停止する被管理サーバ１４の数である。ｎは、たとえば実施の形態１で説明した図９のフローに基づいて算出する。
【０１０５】
ＣＰＵ２１は、式（１）に基づいて算出したｙ（ｋ）が電子機器または電子機器を収納する単位区画の総数ｊ以下であるか否かを判定する（ステップＳ５５４）。ｙ（ｋ）がｊ以下である場合は（ステップＳ５５４でＹＥＳ）、ＣＰＵ２１はｙ（ｋ）の区画に設置されている被管理サーバ１４を節電の要請に対応して停止する被管理サーバ１４として主記憶装置２２または補助記憶装置２３に記憶する（ステップＳ５５５）。ＣＰＵ２１はカウンタｋに１を加算する（ステップＳ５５６）。その後ＣＰＵ２１はステップＳ５５３に戻る。
【０１０６】
ｙ（ｋ）がｊより大きい場合は（ステップＳ５５４でＮＯ）、ＣＰＵ２１は処理を終了する。
【０１０７】
図１３は、実施の形態２の停止する被管理サーバ１４が配置された場所を特定した例を示す表である。図１３は式（１）から算出した表である。図１３を用いて、図１２のフローチャートにより求めたｙ（ｋ）の値の使い方を説明する。
【０１０８】
上から２行目は、停止台数算出のサブルーチンで算出した停止する被管理サーバ１４の数ｎを示す。たとえば、停止する被管理サーバ１４の数ｎが４の場合は図１２のフローチャートに従うと、ｙ（１）は９、ｙ（２）は１９、ｙ（３）は２９、ｙ（４）は３９が得られる。また、空欄は図１２のフローチャートのステップＳ５５４でＮＯと判定されてサブルーチンが終了し、ｙ（ｋ）が計算されない部分を示す。
【０１０９】
前述の通り本実施の形態では２ユニットの被管理サーバ１４を使用しており、被管理サーバ１４の設置される区画は図６に示した通りになっている。一台目の場所ｙ（１）＝９には、第５被管理サーバ１４が設置されているので、ＣＰＵ２１は第５被管理サーバ１４が停止する被管理サーバ１４であると判定する。同様にして、ＣＰＵ２１は第１０被管理サーバ１４、第１５被管理サーバ１４、第２０被管理サーバ１４が停止する被管理サーバ１４であると判定する。
【０１１０】
本実施の形態によると、実測あるいはシミュレーションによりあらかじめ停止する被管理サーバ１４の場所を示すテーブルを作成しなくても、停止する電子機器が設置された区画を適切に分散させることができる。
【０１１１】
［実施の形態３］
本実施の形態は、節電の要請に応じるたびに、停止する電子機器をランダムに変更するプログラム等に関する。本実施の形態においても、４２ユニットの１９インチラックに２ユニットの被管理サーバ１４が２０台配置されたサーバシステム１０を例にして説明する。実施の形態２と共通する部分については説明を省略する。
【０１１２】
図１４および図１５は、実施の形態３の停止する被管理サーバ１４を特定の処理の流れを示すフローチャートである。なお、本実施の形態においては、停止する被管理サーバ１４を特定のサブルーチン以外は、実施の形態２と同一である。図１４および図１５を使用して本実施の形態の停止する被管理サーバ１４を特定の処理の流れを説明する。
【０１１３】
ＣＰＵ２１はカウンタｋを初期値である１に設定する（ステップＳ５５１）。ＣＰＵ２１は、１台の被管理サーバ１４が設置された区画を構成する単位区画の数ｈｓｖに被管理サーバ１４の数Ｓを乗じて、被管理サーバ１４を収納する単位区画の総数ｊを算出する（ステップＳ５５２）。具体的には２ユニットの被管理サーバ１４を使用するのでｈｓｖは２であり、被管理サーバ１４は２０台なのでＳは２０である。したがって、ｈｓｖとＳを乗じた被管理サーバ１４を収納する単位区画の総数ｊは４０である。
【０１１４】
ＣＰＵ２１は、式（２）に基づいてＱ（ｋ）を算出する（ステップＳ５７２）。
【数２】
0006443123.tif 000004
ｋはｊ以下の整数。
Ｑ（ｋ）はｋの関数。
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する被管理サーバ１４の数
【０１１５】
式（２）の各変数および定数について、さらに具体的に説明する。Ｑ（ｋ）は、本実施の形態の処理の途中で使用する変数であり、物理的な意味を持たない。ｎは、電力量の上限値および被管理サーバ１４のＣＰＵ使用率の予測値に基づいて算出した停止する被管理サーバ１４の数である。ｎは、たとえば実施の形態１で説明した図９のフローに基づいて算出する。
【０１１６】
ＣＰＵ２１は、カウンタｋが電子機器を収納する単位区画の総数ｊ以下であるか否かを判定する（ステップＳ５７３）。カウンタｋがｊ以下である場合は（ステップＳ５７３でＹＥＳ）、ＣＰＵ２１はステップＳ５７４で求めたＱ（ｋ）を補助記憶装置２３に記憶する（ステップＳ５７４）。ＣＰＵ２１はカウンタｋに１を加算する（ステップＳ５７５）。その後ＣＰＵ２１はステップＳ５７２に戻る。
【０１１７】
カウンタｋがｊより大きい場合は（ステップＳ５７３でＮＯ）、ＣＰＵ２１は補助記憶装置２３に記憶したＱ（ｋ）の中から最小値を取り出して変数Ｍに代入する（ステップＳ５７６）。ＣＰＵ２１は、０以上Ｍ以下の整数の乱数Ｒを生成する（ステップＳ５７７）。
【０１１８】
ＣＰＵ２１はカウンタｋを初期値である１に戻す（ステップＳ５７８）。ＣＰＵ２１は式（３）に基づいてｙ（ｋ）を算出する（ステップＳ５８０）。
【数３】
0006443123.tif 000005
【０１１９】
ＣＰＵ２１は、式（３）に基づいて算出したｙ（ｋ）が電子機器を収納する単位区画の総数ｊ以下であるか否かを判定する（ステップＳ５８１）。ｙ（ｋ）がｊ以下である場合は（ステップＳ５８１でＹＥＳ）、ＣＰＵ２１はｙ（ｋ）の番号の区画に設置されている被管理サーバ１４を節電の要請に対応して停止する被管理サーバ１４として補助記憶装置２３に記憶する（ステップＳ５８２）。その後ＣＰＵ２１はステップＳ５７８に戻る。
【０１２０】
ｙ（ｋ）がｊより大きい場合は（ステップＳ５８１でＮＯ）、ＣＰＵ２１は処理を終了する。
【０１２１】
図１６は、図１４および図１５に示したフローチャートに従って停止する被管理サーバ１４の配置された場所を特定した例を示す表である。図１６は、停止する被管理サーバ１４の数ｎが３の場合に、図１４および図１５に示したフローチャートを９回繰り返して実行してｙ（ｋ）を求めた例を示す。
【０１２２】
上から２行目の乱数の行は、ステップＳ５７７で発生した乱数Ｒを示す。ステップＳ５７６でＭは１３となるので、ステップＳ５７７で発生させる乱数は０から１３までの整数である。次の３つの行には、停止する被管理サーバ１４が設置された棚１１内の区画の番号を示す。区画の番号は図６の左側の番号により示されている。
【０１２３】
さらに具体的には、１回目の削減の要請に対しては、１１、２３、３７の番号に対応する区画に設置されている３台の被管理サーバ１４を停止する。すなわち、本実施の形態では２ユニットの被管理サーバ１４を使用しているので、１１番および１２番の区画、２３番および２４番の区画ならびに３７番および３８番の区画にそれぞれ収納されている被管理サーバ１４を停止する。
【０１２４】
２回目の削減の要請に対しては、５、１７、３１の番号に対応する区画に設置されている３台の被管理サーバ１４を停止する。すなわち、５番および６番の区画、１７番および１８番の区画ならびに３１番および３２番の区画にそれぞれ収納されている被管理サーバ１４を停止する。
【０１２５】
本実施の形態によると、節電の要請に応じるたびに、停止する電子機器をランダムに変更するため、被管理サーバ１４の使用状況の片寄りを防止することができる。そのため、使用にともなう経年変化の片寄りを防止し、サーバシステム１０の寿命を延ばすことができる。
【０１２６】
なお、Ｒは節電の要請を取得するたびに０からＭまでの間で昇順または降順に変化する整数としても良い。このようにすることにより、乱数発生機能を使用しなくても被管理サーバ１４の使用状況の片寄りを防止することができる。
【０１２７】
［実施の形態４］
本実施の形態は、節電の要請を満足するために必要な場合には、優先度が低いタスクおよび仮想機械を停止するプログラム等に関する。実施の形態１と共通する部分については説明を省略する。
【０１２８】
図１７は、実施の形態４のプログラムの処理の流れを示すフローチャートである。図１８および図１９は、実施の形態４の停止台数算出の処理の流れを示すフローチャートである。図１７から図１９を使用して本実施の処理の流れを説明する。実施の形態１と共通する部分については説明を省略する。
【０１２９】
図１７を使用して本実施の形態のＣＰＵ２１が行う処理の流れを説明する。ＣＰＵ２１は、節電の要請を取得しているか否かを判定する（ステップＳ５００）。節電の要請を取得していない場合は（ステップＳ５００でＮＯ）、ＣＰＵ２１はステップＳ５００に戻る。
【０１３０】
節電の要請を取得している場合は（ステップＳ５００でＹＥＳ）、ＣＰＵ２１は、停止台数算出のサブルーチンを起動する（ステップＳ６０１）。本実施の形態の停止台数算出のサブルーチンは、節電の要請に対応して停止する被管理サーバ１４の台数を算出するサブルーチンである。本サブルーチンは、要請された節電量が達成できない場合には優先度の低いタスクおよび仮想機械を停止した場合の停止台数を算出する。サブルーチン内の処理については後述する。
【０１３１】
ＣＰＵ２１は、被管理サーバ１４の一部を停止することにより、節電要請で示された目標を達成できるか否かを判定する（ステップＳ５０２）。目標を達成できない場合は（ステップＳ５０２でＮＯ）、ＣＰＵ２１は処理を終了する。
【０１３２】
節電要請で示された消費電力の目標を達成できる場合は（ステップＳ５０２でＹＥＳ）、ＣＰＵ２１は停止する被管理サーバ１４を特定のサブルーチンを起動する（ステップＳ５０３）。停止する被管理サーバ１４を特定のサブルーチンは、棚１１内での停止する被管理サーバ１４の設置される区画を特定するサブルーチンである。本サブルーチンは実施の形態１から実施の形態３のいずれかで使用したサブルーチンと同一のサブルーチンを使用できるので説明を省略する。
【０１３３】
ＣＰＵ２１は、被管理サーバ１４の停止作業の所要時間を予測する（ステップＳ５０４）。ＣＰＵ２１は、節電の要請で指定された時間帯の開始時刻およびステップＳ５０４で予測した所要時間から、被管理サーバ１４の停止作業の開始時刻を算出する。ＣＰＵ２１は、時計２５を参照して作業開始時刻に到達したか否かを判定する（ステップＳ５０５）。作業開始時刻に到達していない場合には（ステップＳ５０５でＮＯ）、ＣＰＵ２１はステップＳ５０５に戻る。
【０１３４】
作用開始時刻に到達した場合は（ステップＳ５０５でＹＥＳ）、ＣＰＵ２１は優先度の低いタスクおよび仮想機械を停止する（ステップＳ６０２）。ＣＰＵ２１は停止する被管理サーバ１４で動作していたタスクおよび仮想機械を停止しない被管理サーバ１４に移動させる（ステップＳ５０６）。その後、ＣＰＵ２１は被管理サーバ１４の停止を行う（ステップＳ５０７）。以後、サーバシステム１０は、節電の要請に対応して割り当てられた電力量の範囲内の平均電力量で動作する。
【０１３５】
ＣＰＵ２１は、節電の要請で指定された時間帯が終了したか否かを判定する（ステップＳ５０８）。終了していない場合は（ステップＳ５０８でＮＯ）、ＣＰＵ２１はステップＳ５０８に戻る。終了している場合は（ステップＳ５０８でＹＥＳ）、ＣＰＵ２１はステップＳ５０７で停止した被管理サーバ１４を再起動する（ステップＳ５０９）。ＣＰＵ２１は、動作しているタスクおよび仮想機械を再配置する（ステップＳ５１０）。
【０１３６】
ＣＰＵ２１は、ステップＳ６０２で停止した優先度の低いタスクおよび仮想機械を再起動する（ステップＳ６０３）。その後、ＣＰＵ２１は処理を終了する。なお、ステップＳ６０２で停止したタスクおよび仮想機械を再起動（ステップＳ６０３）した後に、動作しているタスクおよび仮想機械を再配置（ステップＳ５１０）しても良い。
【０１３７】
図１８及び図１９は、実施の形態４の停止台数算出の処理の流れを示すフローチャートである。図１８及び図１９を使用して本実施の形態の停止台数算出のサブルーチンの処理の流れを説明する。
【０１３８】
ステップＳ５３０までは、図８に示した実施の形態１の停止台数算出のサブルーチンと同一の処理である。ステップＳ５２８で計算台数が１未満の場合（ステップＳ５２８でＮＯ）、およびステップＳ５３０で被管理サーバ１４のＣＰＵ使用率の予測値が最大使用率を超える場合（ステップＳ５３０でＮＯ）、ＣＰＵ２１は、計算台数を被管理サーバ１４の全数、すなわち２０に設定する（ステップＳ６１１）。
【０１３９】
ＣＰＵ２１は、節電の要請を受けた時間帯における優先度の高いタスクおよび仮想機械による被管理サーバ１４のＣＰＵ使用率の予測値を取得する（ステップＳ６１２）。優先度は、各仮想機械で実行するプログラムにあらかじめ記載されていても良いし、各プログラムの実行を指示したユーザによる優先度の判定の入力を受け付けても良い。
【０１４０】
ＣＰＵ２１は、ステップＳ６１２で取得した予測値に基づいて電力使用量の予測値を算出する（ステップＳ６１３）。電力使用量予測値の算出には、図４で例を示したＣＰＵ使用率と消費電力との関係を用いる。
【０１４１】
ＣＰＵ２１は、ステップＳ６１３で算出した電力使用量の予測値がステップＳ５２２で取得した上限値を下回るか否かを判定する（ステップＳ６１４）。電力使用量の予測値が上限値以下の場合（ステップＳ６１４でＮＯ）、ＣＰＵ２１は優先度の低いタスクおよび仮想機械を停止した場合に目標を達成可能である旨を出力する（ステップＳ６１９）。出力先は、たとえば電力の使用量の制限を割り当てて通知した管理者である。その後ＣＰＵ２１は処理を終了する。
【０１４２】
電力使用量の予測値が上限値を上回る場合（ステップＳ６１４でＹＥＳ）、ＣＰＵ２１は計算台数を１台減らす（ステップＳ６１５）。ＣＰＵ２１は、計算台数が１以上か否かを判定する（ステップＳ６１６）。計算台数が１以上である場合（ステップＳ６１６でＹＥＳ）、ＣＰＵ２１は被管理サーバ１４のＣＰＵ使用率の予測値を算出する（ステップＳ６１７）。被管理サーバ１４のＣＰＵ使用率の予測値は、ステップＳ６１２で取得したＣＰＵ使用率の予測値と被管理サーバ１４の台数の積を、計算台数で除する事により算出する。
【０１４３】
ＣＰＵ２１は算出した使用率の予測値が、被管理サーバ１４のＣＰＵ２１の最大使用率以下か否かを判定する（ステップＳ６１８）。被管理サーバ１４のＣＰＵ使用率の予測値が最大使用率以下である場合（ステップＳ６１８でＹＥＳ）、ＣＰＵ２１はステップＳ６１３に戻る。
【０１４４】
ステップＳ６１６で計算台数が１未満の場合（ステップＳ６１６でＮＯ）、およびステップＳ６１８で被管理サーバ１４のＣＰＵ使用率の予測値が最大使用率を超える場合（ステップＳ６１８でＮＯ）、ＣＰＵ２１は目標を達成不可能である旨を出力する（ステップＳ５３１）。その後ＣＰＵ２１は処理を終了する。
【０１４５】
なお、停止台数算出のサブルーチンの終了にあたり、ＣＰＵ２１はステップＳ５２６、ステップＳ５３１およびステップＳ６１０のいずれの出力が行われたかの情報を、主記憶装置２２または補助記憶装置２３に記憶する。さらに、ステップＳ５２５でＮＯと判定された場合には、ＣＰＵ２１は直前の計算台数の値およびＣＰＵ使用率の予測値を主記憶装置２２または補助記憶装置２３に記憶する。またステップＳ６１４でＮＯと判定された場合には、ＣＰＵ２１は直前の計算台数の値、ＣＰＵ使用率の予測値ならびにステップＳ６１２で使用したタスクおよび仮想機械を示す情報を主記憶装置２２または補助記憶装置２３に記憶する。
【０１４６】
本サブルーチンの呼び出し元のプログラムを実行時に、ＣＰＵ２１は、記憶された計算台数の値を停止台数の算定結果に使用する。同様に、本サブルーチンの呼び出し元のプログラムを実行時に、ＣＰＵ２１は、記憶されたＣＰＵ使用率の予測値を一部の被管理サーバ１４を停止した場合のＣＰＵ使用率の予測値に使用する。また、ＣＰＵ２１はステップＳ６１２で使用したタスクおよび仮想機械を示す情報を、節電を実行する際に動作を止めるタスクおよび仮想機械を判定する際に利用する。
【０１４７】
本実施の形態によると、すべてのタスクおよび仮想機械を動作させたままでは節電の要請を満足できない場合に、優先度が低いタスクおよび仮想機械を停止することで節電の要求を満足させる事ができる。
【０１４８】
あらかじめタスクおよび仮想機械の優先度を３段階以上に分けておき、最も優先度の低いものを停止した場合の節電の要請を満足するか否かを判定し、満足しない場合には次に優先度の低いものを停止した場合を判定する事を繰り返しても良い。このようにすることにより、厳しい水準の節電の要請が出た場合にもきめ細かく対応することができる。
【０１４９】
優先度が低いタスクおよび仮想機械を、ＣＰＵ使用率に余裕のある他のサーバシステム１０に移動させても良い。この場合、管理サーバ１３は通信機器１２を介してネットワーク３１に接続されている他のサーバシステム１０の管理サーバとの間で通信を行い、可能であれば優先度の低いタスクおよび仮想機械を移動させる。
【０１５０】
［実施の形態５］
本実施の形態は、相互に代替可能な複数の電子機器および相互に代替不可能な電子機器を含むシステムのプログラム等に関する。本実施の形態のプログラム等は、節電の要請を受けた場合に電子機器の電力使用量を削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行する。相互に代替可能な電子機器は、たとえば仮想機械が動作する被管理サーバ１４である。相互に代替不可能な電子機器は、たとえば大量のデータを記憶するストレージである。またシステムは、たとえば仮想機械が動作する複数の被管理サーバ１４、管理サーバ１３、通信機器１２およびストレージを備えるサーバシステム１０である。実施の形態１と共通する部分については説明を省略する。
【０１５１】
図２０は、実施の形態５のサーバシステム１０のハードウェア構成を示す装置構成図である。サーバシステム１０は、棚１１、棚１１に設置された複数の電子機器ならびに図示しない熱交換機および送風機を備える。棚１１は、たとえば４２ユニットの１９インチラック、すなわち高さ方向に４２個の区画を有する１９インチラックである。
【０１５２】
棚１１に設置された電子機器は、たとえば通信機器１２、管理サーバ１３および複数の被管理サーバ１４およびストレージ２８である。これらの電子機器は、いずれも１９インチラックの規格に対応した寸法であり、棚１１に固定されている。各電子機器の設置場所については後述する。
【０１５３】
ストレージ２８以外の構成要素は実施の形態１と同様なので説明を省略する。ストレージ２８は、たとえば数十台のハードディスクドライブを搭載した大容量記憶装置である。同一仕様のストレージ２８同士であっても、記憶されているデータは各々異なる。一つのストレージ２８に保存されているデータを他のストレージ２８に移動または複写する場合には、データの容量に応じたデータ転送時間が必要である。節電の要請に対応して、ストレージ内のすべてのデータを転送することは現実的では無い。したがって、ストレージ２８は、互いに代替することが不可能である。
【０１５４】
図２１は、実施の形態５の棚１１に設置された電子機器の構成を示す説明図である。前述のように、本実施の形態においては、４２ユニットの１９インチラックを使用する。最上部の区画には１ユニットの通信機器１２が、１つ下の区画には１ユニットの管理サーバ１３が設置されている。管理サーバ１３の下の区画には２ユニットの被管理サーバ１４が２台、２ユニットのストレージ２８が１台、１ユニットの被管理サーバ１４が１台、２ユニットのストレージ２８が１台と、順次設置されている。被管理サーバ１４は１２台、ストレージ２８は８台の合計２０台が棚１１に設置されている。以後の説明のために、図２１の左側には棚１１内での被管理サーバ１４およびストレージ２８の設置された区画を表す番号を示す。番号は、１単位区画ごとに振られている。また、図２１の右側には棚１１内での被管理サーバ１４が設置された区画のみに連番で付与した番号を示す。
【０１５５】
図２２Ａおよび図２２Ｂは、実施の形態５の一部の被管理サーバ１４を停止した場合の温度の変化を示す説明図である。図２２Ａおよび図２２Ｂは、図２１に示したサーバシステム１０と同一の構成である。ＳＶは動作している被管理サーバ１４を、Ｘは停止している被管理サーバ１４を、ＳＴはストレージ２８を示す。図２２Ａおよび図２２Ｂの白抜き矢印の意味は、図７と同一である。
【０１５６】
図２２Ａは、通常運転時を示す。全ての被管理サーバ１４が動作している。図２２Ｂは節電の要請に対応して、６台の被管理サーバ１４を停止させた状態を示す。停止させる被管理サーバ１４は、棚１１中で分散している。
【０１５７】
図２３Ａおよび図２３Ｂは、実施の形態５の一部の被管理サーバを停止した場合の温度の変化の比較例を示す説明図である。図２３Ａおよび図２３Ｂに示すシステムには、図２１に示したサーバシステム１０と同一の機器が同数含まれている。ただし各機器の設置される区画は異なり、被管理サーバ１４は棚１１の上側に、ストレージ２８は棚１１の下側に集中している。図２３Ａおよび図２３Ｂの白抜き矢印の意味は、図７と同一である。
【０１５８】
図２３Ａは、通常運転時を示す。全ての被管理サーバ１４が動作している。図２３Ｂは節電の要請に対応して、６台の被管理サーバ１４を停止させた状態を示す。停止させる被管理サーバ１４は、棚１１の中央部に集中している。
【０１５９】
図２２Ａおよび図２２Ｂの場合は、動作している１２台の被管理サーバ１４のＣＰＵ使用率は３５％、１台あたりの消費電力は約４００Ｗである。またストレージ２８の消費電力も４００Ｗである。被管理サーバ１４とストレージ２８との消費電力の合計は約８０００Ｗである。ストレージ２８の消費電力は、節電要請に対応した場合も変化しない。図２２Ｂおよび図２３Ｂの場合は、動作している６台の被管理サーバ１４のＣＰＵ使用率は７０％、１台あたりの消費電力は約５５０Ｗ、被管理サーバ１４とストレージ２８との消費電力の合計は訳６５００Ｗである。いずれの場合も棚１１内を流れる空気の流量は毎時２５００立方メートル、周囲温度は摂氏２５度である。
【０１６０】
定常状態に達した場合の図７Ａ、図７Ｂおよび図７Ｃの吸気の温度および排気の最高温度の例を表２に示す。
【表２】
0006443123.tif 000006
【０１６１】
いずれの場合も、電子機器の発熱により排気の温度は吸気の温度より高くなっている。
図２２Ｂおよび図２３Ｂの場合は、動作している被管理サーバ１４の１台あたりの消費電力はそれぞれ図２２Ａおよび図２３Ａの場合よりも増加するため、動作している被管理サーバ１４の１台あたりの発熱量も多くなる。そのため、図２２Ｂ、図２３Ｂとも通常時に比べてサーバシステム１０周辺が熱くなり、吸気の温度が通常時にくらべて上昇している。
【０１６２】
図２２Ｂの場合は、ストレージ２８、動作している被管理サーバ１４および停止している被管理サーバ１４が混在している。一方、図２３Ｂの場合は、ストレージ２８、動作している被管理サーバ１４および停止している被管理サーバ１４がそれぞれ固まっている。そのため図２３Ｂの方が図２２Ｂに比べて動作している被管理サーバ１４の熱が逃げにくく、排気の最高温度が高くなっている。
【０１６３】
以上のように、被管理サーバ１４とストレージ２８を混載するサーバシステム１０の場合、あらかじめ両者を混在させておき、節電の要請に対応する場合には、停止させる被管理サーバ１４も分散させることにより、温度上昇を少なくすることができる。
【０１６４】
図２４は、実施の形態５の停止する被管理サーバ１４を特定の処理の流れを示すフローチャートである。図２４を使用して本実施の処理の流れを説明する。
【０１６５】
ＣＰＵ２１はカウンタｋを初期値である１に設定する（ステップＳ６３１）。ＣＰＵ２１は、１台の被管理サーバ１４が設置された区画を構成する単位区画の数ｈｓｖに被管理サーバ１４の数Ｓを乗じて、被管理サーバ１４を収納する単位区画の総数ｊを算出する（ステップＳ６３２）。具体的には２ユニットの被管理サーバ１４を１２台使用するのでｈｓｖは２であり、Ｓは１２である。したがって、ｈｓｖとＳを乗じた被管理サーバ１４を収納する単位区画の総数ｊは２４である。
【０１６６】
ＣＰＵ２１は、式（４）に基づいてｙ（ｋ）を算出する（ステップＳ６３３）。
【数４】
0006443123.tif 000007
ｋは正の整数。
ｙ（ｋ）≦ｊ
ｙ（ｋ）は停止する被管理サーバ１４が設置されている単位区画の番号
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する被管理サーバ１４の数
【０１６７】
式（４）の各変数および定数について、さらに具体的に説明する。ｙ（ｋ）は、図６の右側に示した棚１１内の被管理サーバ１４が設置された区画を示す番号である。番号は、被管理サーバ１４の設置された区画に１から連番で付与されている。ｎは、電力量の上限値および被管理サーバ１４のＣＰＵ使用率の予測値に基づいて算出した停止する被管理サーバ１４の数である。ｎは、たとえば実施の形態１で説明した図９のフローに基づいて算出する。
【０１６８】
ＣＰＵ２１は、式（４）に基づいて算出したｙ（ｋ）が被管理サーバ１４を収納する単位区画の総数ｊ以下であるか否かを判定する（ステップＳ６３４）。ｙ（ｋ）がｊ以下である場合は（ステップＳ６３４でＹＥＳ）、ＣＰＵ２１はｙ（ｋ）の番号の区画に設置されている被管理サーバ１４を節電の要請に対応して停止する被管理サーバ１４として記憶する（ステップＳ６３５）。ＣＰＵ２１はカウンタｋに１を加算する（ステップＳ６３６）。その後ＣＰＵ２１はステップＳ６３３に戻る。
【０１６９】
ｙ（ｋ）がｊより大きい場合は（ステップＳ６３４でＮＯ）、ＣＰＵ２１は処理を終了する。
【０１７０】
本実施の形態によると、被管理サーバ１４とストレージ２８とを混載したサーバシステム１０においても、節電の要請を受けた場合に電子機器の電力使用量を削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行することができる。
【０１７１】
［実施の形態６］
本実施の形態は、相互に代替可能な複数の電子機器および相互に代替不可能な電子機器を含むシステムの電子機器の配置を定める配置決定プログラム等に関する。相互に代替可能な電子機器は、たとえば仮想機械が動作する被管理サーバ１４である。相互に代替不可能な電子機器は、たとえば大量のデータを記憶するストレージ２８である。またシステムは、たとえば仮想機械が動作する複数の被管理サーバ１４、管理サーバ１３．通信機器１２およびストレージ２８を備えるサーバシステム１０である。実施の形態１と共通する部分については説明を省略する。
【０１７２】
図２５は、実施の形態６の処理の流れを示すフローチャートである。図２５を用いて本実施の形態の処理の流れを説明する。
【０１７３】
本実施の形態では、同一の単位ユニット数の区画に設置される被管理サーバ１４とストレージ２８を使用する。以下の説明では両者の高さを記号ｈｓｔで示す。
【０１７４】
ＣＰＵ２１はカウンタＩを初期値である１に設定する（ステップＳ６５０）。ＣＰＵ２１は、ｈｓｔにストレージの数ｍと被管理サーバ１４の数Ｓの和を乗じて、ストレージおよび被管理サーバ１４を収納する単位区画の総数ｊを算出する（ステップＳ６５１）。
【０１７５】
ＣＰＵ２１は、式（５）に基づいてＰ（Ｉ）を算出する（ステップＳ６５２）。
【数５】
0006443123.tif 000008
Ｉは正の整数
Ｐ（Ｉ）≦ｊ
Ｐ（Ｉ）はストレージ２８を設置する単位区画の番号。
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
【０１７６】
ＣＰＵ２１は、式（５）に基づいて算出したＰ（Ｉ）がストレージ２８および被管理サーバ１４を収納する単位区画の総数ｊ以下であるか否かを判定する（ステップＳ６５３）。Ｐ（Ｉ）がｊ以下である場合は（ステップＳ６５３でＹＥＳ）、ＣＰＵ２１はＰ（Ｉ）を補助記憶装置２３に記憶する（ステップＳ６５４）。ＣＰＵ２１はカウンタＩに１を加算する（ステップＳ６５５）。その後ＣＰＵ２１はステップＳ６５２に戻る。
【０１７７】
Ｐ（Ｉ）がｊより大きい場合は（ステップＳ６５３でＮＯ）、ＣＰＵ２１は処理を終了する。
【０１７８】
図２６は、実施の形態６のストレージ２８の場所を決定した例を示す表である。ストレージ２８および被管理サーバ１４１を収納する単位区画の総数ｊは２０、ストレージ２８を設置する区画を構成する単位区画の数ｈｓｔは２の場合を例にして図２５のフローチャートを用いてＰ（Ｉ）を算出した。図２６にストレージ２８の数ｍが３、４、５、および６の場合について、計算結果の例を示す。
【０１７９】
たとえば、ストレージが４台の場合、Ｐ（１）は５、Ｐ（２）は９、Ｐ（３）は１５、Ｐ（４）は１９である。この場合に、サーバシステム１０を設置する際には、５番と６番、９番と１０番、１５番と１６番および１９番と２０番の区画にそれぞれ２Ｕのストレージを、それ以外の区画に被管理サーバ１４を設置する。使用時には、たとえば実施の形態５に示したプログラムを使用して、節電の要請に対応する。
【０１８０】
本実施の形態によると、節電の要請に対して効果的に対応する事のできるサーバシステム１０の電子機器の配置を決定することができる。
【０１８１】
本実施の形態の配置決定プログラムは、汎用のパーソナルコンピュータのＣＰＵによって実行されても良い。
【０１８２】
ステップＳ６５２で算出したＰ（Ｉ）に、０以上Ｐ（１）以下の整数を加算した番号の区画にストレージを設置しても良い。さらに、０以上Ｐ（１）以下の整数を乱数により定めても良い。同一構成のサーバシステム１０を多数並べて使用する場合、このようにするとストレージが設置された区画と節電の要請に対応して停止する被管理サーバ１４が設置される区画とが分散する。したがって、発熱量の分布が均一化するため、局所的な温度の上昇を防止することができる。
【０１８３】
［実施の形態７］
本実施の形態は、相互に代替可能な複数の電子機器および相互に代替不可能な電子機器を含むシステムのプログラム等に関する。本実施の形態においては、代替可能な電子機器と、代替不可能な電子機器との高さが異なる。相互に代替可能な電子機器は、たとえば仮想機械が動作する被管理サーバ１４である。相互に代替不可能な電子機器は、たとえば大量のデータを記憶するストレージ２８である。またシステムは、たとえば仮想機械が動作する複数の被管理サーバ１４、管理サーバ１３、通信機器１２およびストレージ２８を備えるサーバシステム１０である。実施の形態１と共通する部分については説明を省略する。
【０１８４】
図２７は、実施の形態７の停止する被管理サーバ１４の場所を示すテーブルの例である。図２７のテーブルは、たとえば図２４に示した実施の形態５のフローチャートの代わりに使用する。図２７を使用して本実施の形態の停止する被管理サーバ１４の配置された区画を特定する処理の内容を説明する。
【０１８５】
本実施の形態においては、棚１１に２２ユニットの１９インチラック、すなわち高さ方向に２２個の区画を有する１９インチラックを使用する場合を例にして説明する。１ユニットの通信機器１２および１ユニットの管理サーバ１３を設置し、残りの２０ユニットに１ユニットの被管理サーバ１４および２ユニットのストレージ２８を設置する。被管理サーバ１４は１４台、ストレージは３台設置する。
【０１８６】
図２７に示すテーブルは、停止する被管理サーバ１４の台数および一部の被管理サーバ１４を停止した後の被管理サーバ１４のＣＰＵ使用率の予測値と、停止する被管理サーバ１４の棚１１内の区画の番号を示すテーブルである。一番左の列は、停止台数算出のサブルーチンで算出した停止する被管理サーバ１４の台数を示す。左から２番目の列は、節電の要請に対応中の被管理サーバ１４のＣＰＵ使用率の予測値を示す。左から３列目以降の列の上から２行目は、棚１１内の区画の番号を示す。区画の番号は図６の左側に番号で示されている。
【０１８７】
左から３列目以降の列の上から３行目以下でＳＴと記載されている場所は、ストレージ２８が設置されている区画を示す。ストレージ２８が設置される場所は、実施の形態６に示した方法で定めても良いし、それ以外の方法で定めても良い。本実施の形態においては、ストレージ２８は３番と４番、１１番と１２番および１７番と１８番の区画に設置されている。
【０１８８】
ストレージ２８が設置されていない区画には、被管理サーバ１４が設置されている。左から３列目以降の列の上から３行目以下でＸの示されている場所は、節電の要請に対応する際に対応する区画に設置された被管理サーバ１４を停止する事を示す。
【０１８９】
さらに具体的には、被管理サーバ１４を３台停止して、ＣＰＵ使用率の予測値を６０パーセントにする場合には、７、１３、２０の番号に対応する区画に設置されている３台の被管理サーバ１４を停止する。すなわち、本実施の形態では１ユニットの被管理サーバ１４を使用しているので、７番、１３番および２０番の区画にそれぞれ設置されている被管理サーバ１４を停止する。
【０１９０】
図２７に示すテーブルは、実測または熱シミュレーション等の手法を用いて、排気の最高温度を低く抑える事ができる停止する被管理サーバ１４の場所を求める事により作成する。特に、サーバシステム１０をデータセンタに設置した後に実測により図１０を作成することにより、設置された被管理サーバ１４の個体差、サーバシステム１０の設置場所の空調の状態、各電子機器間を結ぶ配線の引き回し状態等の様々な状況を総合して、排気の最高温度を低く抑える停止する被管理サーバの場所を定める事ができる。
【０１９１】
停止する被管理サーバ１４を特定のサブルーチンの処理の流れを説明する。本サブルーチンでは、停止する被管理サーバ１４の台数および被管理サーバ１４のＣＰＵ使用率の予測値と図２７に示すテーブルに基づいて、停止する被管理サーバ１４の配置された区画を特定する。
【０１９２】
本実施の形態によると、節電の要請を受けた場合に電子機器の電力使用量を削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行するサーバシステム１０を提供することができる。
【０１９３】
１Ｕ、２Ｕなどのストレージ２８および被管理サーバ１４が混載されていても良い。混載されている状況に応じて、図２７に示すテーブルをあらかじめ作成する。このようにすることにより、任意の電子機器を組み合わせたサーバシステム１０を用いた場合にも、節電の要請への対応可否を検討し、可能な場合には要請に沿って節電を実行するサーバシステム１０を提供することができる。
【０１９４】
［実施の形態８］
実施の形態８は、サーバシステム１０とプログラム２９とを組み合わせて動作させる形態に関する。本実施の形態においても、サーバシステム１０は相互に代替可能な複数の電子機器を棚１１に設置したシステムである。プログラムは、節電の要請を受けた場合にサーバシステム１０の電力使用量を削減することができるかどうかを判定し、可能な場合には要請に沿って節電を実行する。相互に代替可能な電子機器は、たとえば仮想機械が動作する被管理サーバ１４である。以下では、これらの具体例を使用して説明する。実施の形態１と共通する部分については説明を省略する。
【０１９５】
図２８は、実施の形態８のハードウェア構成を示す装置構成図である。図２８を使用して、本実施の形態の構成を説明する。なお、実施の形態１と共通する部分の説明は省略する。
【０１９６】
サーバシステム１０は、棚１１、棚１１に設置された複数の電子機器ならびに図示しない熱交換機および送風機を備える。棚１１は、高さ方向に配列した複数の電子機器を固定して設置することが可能な、たとえば１９インチラックである。
【０１９７】
棚１１に設置された電子機器は、たとえば通信機器１２、管理サーバ１３および複数の被管理サーバ１４である。通信機器１２は、管理サーバ１３と被管理サーバ１４との間の通信およびサーバシステム１０と外部のネットワーク３１との間の通信を行う。
【０１９８】
管理サーバ１３はサーバシステム１０を管理する。管理サーバ１３は、ＣＰＵ２１、主記憶装置２２、補助記憶装置２３、通信インターフェイス２４、時計２５、読取部２６およびバスを備える。
【０１９９】
読取部２６は、可搬型記録媒体２７を読み取る装置であり、具体的にはたとえばマイクロＳＤカードスロットである。ＣＰＵ２１、主記憶装置２２、補助記憶装置２３、通信インターフェイス２４、時計２５は実施の形態１と同様なので説明を省略する。
【０２００】
プログラム２９は、可搬型記録媒体２７に記録されている。ＣＰＵ２１は、読取部２６を介してプログラム２９を読み込み、補助記憶装置２３に保存する。またＣＰＵ２１は、管理サーバ１３内に実装されたフラッシュメモリ等の半導体メモリ３０に記憶されたプログラム２９を読出しても良い。さらに、ＣＰＵ２１は、通信インターフェイス２４を介して接続される図示しない他のサーバコンピュータからプログラム２９をダウンロードして補助記憶装置２３に保存しても良い。
【０２０１】
ＣＰＵ２１は、上述した各種ソフトウェア処理を実行するプログラム２９を、可搬型記録媒体２７もしくは半導体メモリ３０から読み取り、または通信インターフェイス２４を介して図示しない他のサーバコンピュータからダウンロードする。プログラム２９は、管理サーバ１３の制御プログラムとしてインストールされ、主記憶装置２２にロードされて実行される。これにより、サーバシステム１０は全体として上述した管理装置として機能する。
【０２０２】
各実施例で記載されている技術的特徴（構成要件）はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
今回開示された実施の形態はすべての点で例示であって、制限的なものでは無いと考えられるべきである。本発明の範囲は、上記した意味では無く、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【０２０３】
以上の実施の形態に関し、さらに以下の付記を開示する。
【０２０４】
（付記１）
複数の電子機器が消費する電力量の制限および前記制限を行う時間帯を取得し、
前記制限に基づいて停止する電子機器の数を算定し、
算定した数に基づいて停止する電子機器の設置場所を特定し、
前記時間帯の前に特定した前記設置場所の電子機器を停止する
処理をコンピュータに実行させるプログラム。
【０２０５】
（付記２）
前記電子機器には、動作中に相互に代替可能な複数の該電子機器が含まれており、
前記特定は、代替可能な前記電子機器の設置場所から停止する電子機器の設置場所を選択して行うことを特徴とする付記１に記載のプログラム。
【０２０６】
（付記３）
代替可能な前記電子機器は、複数の仮想機械を動作させる電子計算機であることを特徴とする付記２に記載のプログラム。
【０２０７】
（付記４）
前記特定に基づいて前記電子計算機を停止する前に、停止する電子計算機で動作している仮想機械を停止しない電子計算機に配置し、
前記時間帯が終了した後に停止した前記電子計算機を起動し、
動作している仮想機械を動作している電子計算機に再配置する
処理をコンピュータに実行させる付記３に記載のプログラム。
【０２０８】
（付記５）
前記特定は、前記算定した数、前記電子機器の負荷および停止する電子機器の設置場所を関連付けたテーブルを参照して行うことを特徴とする付記１から付記４のいずれか一つに記載のプログラム。
【０２０９】
（付記６）
前記電子機器は、一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能な場所に設置されており、
前記特定は、前記算定した数および式に基づいて行われることを特徴とする付記１から付記４のいずれか一つに記載のプログラム。
【数１】
0006443123.tif 000009
ｋは正の整数。
ｙ（ｋ）≦ｊ
ｙ（ｋ）は停止する電子機器が設置されている単位区画を示す番号
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する電子機器の数
ｊは電子機器を設置する単位区画の総数。
ｈｓｖは、１台の電子機器が設置される区画が備える単位区画の数。
【０２１０】
（付記７）
前記電子機器は、一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能な場所に設置されており、
前記特定は、前記算定した数および式に基づいて行われることを特徴とする付記１から付記４のいずれか一つに記載のプログラム。
【数６】
0006443123.tif 000010
ｋは正の整数。
ｙ（ｋ）≦ｊ
ｙ（ｋ）は停止する電子機器が設置されている単位区画を示す番号
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｎは停止する電子機器の数
ｊは電子機器を設置する単位区画の総数。
ｈｓｖは、１台の電子機器が設置される区画が備える単位区画の数。
Ｒは０以上ｙ（ｋ）の最小値以下の整数。
【０２１１】
（付記８）
前記算定は、前記電子計算機の一部を停止して該電子計算機で動作する仮想機械を他の電子計算機に移した場合の該電子計算機が消費する電力量の予測値が前記制限に基づいた電力量よりも小さいか否かを判定し、
前記予測値が前記制限に基づいた電力量よりも小さいと判定した場合に前記一部の数を停止する前記電子計算機の数とすることを特徴とする付記３から付記８のいずれか一つに記載のプログラム。
【０２１２】
（付記９）
前記電子機器は、上下方向に配列した区画に設置されていることを特徴とする付記１から付記８のいずれか一つに記載のプログラム。
【０２１３】
（付記１０）
一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能であり、前記単位区画に１から始まる連番を付与した場所に、同一数の単位区画で構成される区画に配置可能な電子計算機および記憶装置を配置する場合に、
配置する前記記憶装置の数、前記電子計算機および記憶装置を配置する前記単位区画の総数と、電子計算機または記憶装置が配置される区画が備える単位区画の数とに基づいて式を満たすＰ（Ｉ）を算出し、
Ｐ（Ｉ）が付与された単位区画から始まる区画を記憶装置が配置される区画であると決定する処理をコンピュータに実行させるプログラム。
【数５】
0006443123.tif 000011
Ｉは正の整数。
Ｐ（Ｉ）は記憶装置を配置する単位区画を示す番号。
Ｐ（Ｉ）≦ｊ
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｍは記憶装置の数
ｊは電子計算機および記憶装置を配置する単位区画の総数。
ｈｓｔは、１台の電子計算機または記憶装置を配置する区画を構成する単位区画の数。
【０２１４】
（付記１１）
複数の電子機器が消費する電力量の制限および前記制限を行う時間帯を取得し、
前記制限に基づいて停止する電子機器の数を算定し、
算定した数に基づいて停止する電子機器の設置場所を特定し、
前記時間帯の前に特定した前記設置場所の電子機器を停止する
処理をコンピュータに実行させる運転方法。
【０２１５】
（付記１２）
一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能であり、前記単位区画に１から始まる連番を付与した場所に、同一数の単位区画で構成される区画に配置可能な電子計算機および記憶装置を配置する場合に、
配置する前記記憶装置の数、前記電子計算機および記憶装置を配置する前記単位区画の総数と、電子計算機または記憶装置が配置される区画が備える単位区画の数とに基づいて式を満たすＰ（Ｉ）を算出し、
Ｐ（Ｉ）が付与された単位区画から始まる区画を記憶装置が配置される区画であると決定する処理をコンピュータに実行させる配置決定方法。
【数５】
0006443123.tif 000012
Ｉは正の整数。
Ｐ（Ｉ）は記憶装置を配置する単位区画を示す番号。
Ｐ（Ｉ）≦ｊ
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｍは記憶装置の数
ｊは電子計算機および記憶装置を配置する単位区画の総数。
ｈｓｔは、１台の電子計算機または記憶装置を配置する区画を構成する単位区画の数。
【０２１６】
（付記１３）
複数の電子機器が消費する電力量の制限および前記制限を行う時間帯を取得する取得部と、
前記制限に基づいて停止する電子機器の数を算定する算定部と、
算定した数に基づいて停止する前記電子機器の設置場所の特定を行う特定部と、
前記時間帯の前に特定した前記設置場所の電子機器を停止する停止部と
を備えることを特徴とする運転装置。
【０２１７】
（付記１４）
一つの方向についてあらかじめ規定されている基準長さを有する単位区画に区分する事が可能であり、前記単位区画に１から始まる連番を付与した場所に、同一数の単位区画で構成される区画に配置可能な電子計算機および記憶装置を配置する場合に、
配置する前記記憶装置の数、前記電子計算機および記憶装置を配置する前記単位区画の総数と、電子計算機または記憶装置が配置される区画が備える単位区画の数とに基づいて式を満たすＰ（Ｉ）を算出する算出部と、
Ｐ（Ｉ）が付与された単位区画から始まる区画を記憶装置が配置する区画であると決定する決定部とを有することを特徴とする配置決定装置。
【数５】
0006443123.tif 000013
Ｉは正の整数。
Ｐ（Ｉ）は記憶装置を配置する単位区画を示す番号。
Ｐ（Ｉ）≦ｊ
ｒｏｕｎｄ（ｘ）は、ｘを四捨五入して整数を得る関数。
ｍは記憶装置の数
ｊは電子計算機および記憶装置を配置する単位区画の総数。
ｈｓｔは、１台の電子計算機または記憶装置を配置する区画を構成する単位区画の数。
【符号の説明】
【０２１８】
１０  サーバシステム
１１  棚
１２  通信機器
１３  管理サーバ
１４  被管理サーバ
１８  送風機
１９  熱交換器
２１  ＣＰＵ
２２  主記憶装置
２３  補助記憶装置
２４  通信インターフェイス
２６  読取部
２８  ストレージ
２９  プログラム
３１  ネットワーク
３３  冷凍機
３４  緩衝タンク
３５  冷媒管
【図１】
0006443123.tif 000016
【図２】
0006443123.tif 000017
【図３】
0006443123.tif 000018
【図４】
0006443123.tif 000019
【図５】
0006443123.tif 000020
【図６】
0006443123.tif 000021
【図７】
0006443123.tif 000022
【図８】
0006443123.tif 000023
【図９】
0006443123.tif 000024
【図１０】
0006443123.tif 000025
【図１１】
0006443123.tif 000026
【図１２】
0006443123.tif 000027
【図１３】
0006443123.tif 000028
【図１４】
0006443123.tif 000029
【図１５】
0006443123.tif 000030
【図１６】
0006443123.tif 000031
【図１７】
0006443123.tif 000032
【図１８】
0006443123.tif 000033
【図１９】
0006443123.tif 000034
【図２０】
0006443123.tif 000035
【図２１】
0006443123.tif 000036
【図２２】
0006443123.tif 000037
【図２３】
0006443123.tif 000038
【図２４】
0006443123.tif 000039
【図２５】
0006443123.tif 000040
【図２６】
0006443123.tif 000041
【図２７】
0006443123.tif 000042
【図２８】
0006443123.tif 000043