(57)【要約】【課題】複数のコンピュータを冷却するためのエネルギーを節約することができる管理システムを提供する。【解決手段】コンピュータセンタにおいて複数のコンピュータと複数のソフトウエアとを管理する管理システムは、コンピュータによるソフトウエアの実行状況を表す稼動データと、温度分布を表す温度データとを含む配置先選定データ記憶部３と、配置先選定データを用いて、他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成部２と、命令を出力する命令部８とを備える。【選択図】図１
2007179437.tif 000002
【特許請求の範囲】
【請求項１】
ハードウエアにより構成されたコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する管理システムであって、
前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも一方を含む配置先選定データを記憶する配置先選定データ記憶部と、
前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他のコンピュータと比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられ実行されるソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成部と、
前記命令を出力する命令部とを備える管理システム。
【請求項２】
前記複数のコンピュータ内部または周辺の温度を調整するための空調コストの算出に用いられる空調コストデータと、前記コンピュータを稼動させるための稼動コストの算出に用いられる稼動コストデータとを記憶するコストデータ記憶部をさらに備え、
前記命令生成部は、前記配置先選定データを用いて、前記過熱コンピュータと、前記過疎コンピュータとを抽出し、さらに前記コストデータを用いて、空調コストと、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を前記過疎コンピュータに移動させた場合の稼動コストとを算出し、前記空調コストおよび前記稼動コストから、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を前記過疎コンピュータに移動させた場合に電力コストが安くなると判断した場合に前記命令を生成する、前記請求項１に記載の管理システム。
【請求項３】
前記稼動データは、前記コンピュータが、該コンピュータに割り当てられるソフトウエアを実行することによって前記コンピュータに生じる負荷を表す負荷データを含む、請求項１に記載の管理システム。
【請求項４】
前記稼動データは、前記コンピュータおよび前記ソフトウエアを利用して業務を行う運用主体に関する運用主体データを含む、請求項１に記載の管理システム。
【請求項５】
前記稼動データは、前記コンピュータにより実行されるソフトウエアの起動状況を示す起動データを含む、請求項１に記載の管理システム。
【請求項６】
前記稼動データは、コンピュータのハードウエア構成および当該コンピュータに割り当てられるソフトウエアの構成のうち少なくとも１つを表す構成データを含む、請求項１に記載の管理システム。
【請求項７】
コンピュータが過熱コンピュータであると判断されるためのコンピュータによるソフトウエアの実行状況の条件と、過疎コンピュータであると判断されるためのコンピュータによるソフトウエアの実行状況の条件とを示すデータを含む配置ポリシーを更新可能な状態で記憶する配置ポリシー記憶部をさらに備え、
前記命令生成部は、前記配置ポリシーで示される条件と、前記稼動データで示されるコンピュータによるソフトウエアの実行状況とに基づいて、前記過熱コンピュータおよび前記過疎コンピュータを抽出し、前記命令を生成する、請求項１に記載の管理システム。
【請求項８】
前記配置ポリシーは、コンピュータが過熱コンピュータであると判断されるための温度の条件と、過疎コンピュータであると判断されるための温度の条件とを示すデータをさらに含み、
前記命令生成部は、前記配置ポリシーで示される条件と、前記温度データで示される温度分布とに基づいて、前記過熱コンピュータおよび前記過疎コンピュータを抽出し、前記命令を生成する、請求項７に記載の管理システム。
【請求項９】
ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する処理を管理コンピュータに実行させる管理プログラムであって、
前記複数のコンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくともいずれか１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す配置先選定データ読み出し処理と、
前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成処理と、
前記命令を出力する命令処理とを管理コンピュータに実行させる管理プログラム。
【請求項１０】
ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理コンピュータを用いて管理する管理方法であって、
前記管理コンピュータが備える命令生成部が、前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す工程と、
前記管理コンピュータが備える命令生成部が、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する工程と、
前記管理コンピュータが備える命令部が、前記命令を出力する工程と含む、管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、インターネットデータセンタ（Ｉｎｔｅｒｎｅｔ  ｄａｔａ  ｃｅｎｔｅｒ、以下ＩＤＣと称する）等のように、複数のコンピュータと、それらのコンピュータに割り当てられた複数のソフトウエアとを管理する管理システム、管理プログラム、管理方法に関する。
【背景技術】
【０００２】
近年、地球温暖化等の環境問題が深刻になっており、企業、官公庁においては、消費電力の節約等の環境対策が急務となっている。特に、インターネットデータセンタ（Ｉｎｔｅｒｎｅｔ  ｄａｔａ  ｃｅｎｔｅｒ、以下ＩＤＣと称する）等のように、ハードウエアで構成されたコンピュータが複数設けられたコンピュータセンタにおいて、複数のコンピュータが稼働する際に消費される電力のうち、複数のコンピュータを冷却するために消費される電力の占める割合が高く、約４０％に達する場合がある。そこで、冷却のための電力消費量を削減することが求められる。
【０００３】
ＩＤＣでは、複数のコンピュータに、所定の処理を行うために実行されるソフトウエアがそれぞれ割り当てられている。ユーティリティ方式のＩＤＣでは、それぞれのコンピュータにどのようなソフトウエアを割り当てるかは需要に応じて動的に制御される。例えば、あるコンピュータに大量の処理を行うためのソフトウエアが割り当てられると、コンピュータの稼動量が増加する。稼働量の増加に伴って、そのコンピュータの放熱の量も増加する。その結果、そのコンピュータに放熱による障害が発生する可能性がある。
【０００４】
このような放熱による障害を防ぐには、例えば、空調装置等を用いて、コンピュータを設置している空間の温度を低く保つ必要がある。しかしながら、空間の温度を低く保つには、空調装置を稼働させるための大量の電力が必要となる。その結果、消費電力の削減が困難になる。
【０００５】
従来、コンピュータの熱対策として、コンピュータの温度上昇を検出した場合に、そのコンピュータを用いて実行されるプログラムを停止する等の処理を行う情報処理装置が提案されている（例えば、特許文献１参照）。これにより、コンピュータの放熱を抑えて、冷却のためのエネルギーを節約することができる。
【特許文献１】特開２００５−３１６７６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の情報処理装置は、コンピュータの放熱を抑えるために、コンピュータの稼動量を下げる必要がある。コンピュータの稼動量を下げると、コンピュータが本来処理すべきジョブの処理を怠ることになる。ゆえに、コンピュータのサービス供給能力を下げずに電力消費を抑制することが課題であった。
【０００７】
本発明は、上記課題を解決するために、複数のコンピュータ全体の稼動量を維持したまま、複数のコンピュータを冷却するためのエネルギーを節約することができる管理システム、管理方法および管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明にかかる管理システムは、ハードウエアにより構成されたコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する管理システムであって、前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも一方を含む配置先選定データを記憶する配置先選定データ記憶部と、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他のコンピュータと比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられ実行されるソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成部と、前記命令を出力する命令部とを備える。
【０００９】
本発明にかかる管理プログラムは、ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する処理を管理コンピュータに実行させる管理プログラムであって、前記複数のコンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくともいずれか１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す配置先選定データ読み出し処理と、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成処理と、前記命令を出力する命令処理とを管理コンピュータに実行させる。
【００１０】
本発明にかかる管理方法は、ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理コンピュータを用いて管理する方法であって、前記管理コンピュータが備える命令生成部が、前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す工程と、前記管理コンピュータが備える命令生成部が、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する工程と、前記コンピュータが備える命令部が、前記命令を出力する工程と含む。
【発明の効果】
【００１１】
本発明によれば、複数のコンピュータ全体の稼動量を維持したまま、複数のコンピュータを冷却するためのエネルギーを節約することができる管理システム、管理方法および管理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
コンピュータは、ハードウエアで構成される物理的な装置であり、少なくともＣＰＵ（中央処理装置：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）および記憶装置を備える。また、本発明にかかる管理システムの管理対象となるコンピュータセンタにおける複数のコンピュータは、それぞれ筐体を有して独立して設けられるコンピュータに限られない。コンピュータセンタにおける複数のコンピュータは、ソフトウエアの処理主体となるコンピュータが複数設けられる意味である。
【００１３】
ソフトウエアは、コンピュータにより実行されるコンピュータプログラムに加え、コンピュータプログラム実行時に利用されるデータも含むものとする。
【００１４】
本発明にかかる管理システムは、ハードウエアにより構成されたコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する管理システムであって、前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも一方を含む配置先選定データを記憶する配置先選定データ記憶部と、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他のコンピュータと比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられ実行されるソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成部と、前記命令を出力する命令部とを備える。
【００１５】
前記命令生成部は、前記稼動データおよび前記温度データのうち少なくともいずれか１つを含む前記配置先選定データを用いることにより、稼動が高くなることで放熱が他に比べて多くなる過熱コンピュータと、稼動が低いために放熱が他と比べて少なくなる過疎コンピュータとを抽出することができる。前記命令生成部は、前記過熱コンピュータに割り当てられたソフトウエアを、前記過疎コンピュータに移動させるための命令を生成し、前記命令部がその命令を出力する。これにより、他のコンピュータに比べて放熱が多いと想定される過熱コンピュータを用いて動作するソフトウエアは、他と比べて放熱が少ないと想定される過疎コンピュータを用いて動作することになる。その結果、過熱コンピュータでの放熱が緩和される。すなわち、前記複数のコンピュータ全体での稼動量は維持したままで、一部のコンピュータに放熱が集中することが避けられる。このように、管理システムは複数のコンピュータにおけるソフトウエアの配置を最適化することで、コンピュータ全体の稼動量は維持したままで、全体として空調のためのエネルギーを低減させることができる。ひいては、コンピュータセンタにおいて、前記複数のコンピュータを冷却するためのエネルギーが節約される。
【００１６】
本発明にかかる管理システムにおいて、前記複数のコンピュータ内部または周辺の温度を調整するための空調コストの算出に用いられる空調コストデータと、前記コンピュータを稼動させるための稼動コストの算出に用いられる稼動コストデータとを記憶するコストデータ記憶部をさらに備え、前記命令生成部は、前記配置先選定データを用いて、前記過熱コンピュータと、前記過疎コンピュータとを抽出し、さらに前記コストデータを用いて、空調コストと、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を前記過疎コンピュータに移動させた場合の稼動コストとを算出し、前記空調コストおよび前記稼動コストから、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を前記過疎コンピュータに移動させた場合に電力コストが安くなると判断した場合に前記命令を生成することが好ましい。これにより、前記命令生成部は、全体としてコストが安くなるような命令を生成することができる。
【００１７】
本発明にかかる管理システムにおいて、前記稼動データは、前記コンピュータが、該コンピュータに割り当てられるソフトウエアを実行することによって前記コンピュータに生じる負荷を表す負荷データを含むことが好ましい。
【００１８】
コンピュータに生じる負荷は、コンピュータの放熱の度合いと密接な関連がある。そのため、前記稼動データに負荷データが含まれることにより、前記命令生成部は、それぞれのコンピュータにかかる負荷に基づいて、前記過熱コンピュータおよび前記過疎コンピュータを抽出することができる。例えば、前記命令生成部は、負荷が所定の値より大きいコンピュータ、または他のコンピュータに比べて負荷が大きいコンピュータを過熱コンピュータとして抽出することができる。
【００１９】
本発明にかかる管理システムにおいて、前記稼動データは、前記コンピュータおよび前記ソフトウエアを利用して業務を行う運用主体に関する運用主体データを含むことが好ましい。
【００２０】
前記稼動データに運用主体データが含まれることにより、前記命令生成部は、前記コンピュータおよびソフトウエアを利用する運用主体の事情を考慮した命令を生成することができる。
【００２１】
本発明にかかる管理システムにおいて、前記稼動データは、前記コンピュータにより実行されるソフトウエアの起動状況を示す起動データを含むことが好ましい。
【００２２】
前記稼動データに起動データが含まれることにより、前記命令生成部は、各コンピュータにより実行されるソフトウエアの起動状況から、各コンピュータにおける放熱の度合いを想定することができる。これにより、前記過熱コンピュータおよび前記過疎コンピュータを抽出することができる。
【００２３】
本発明にかかる管理システムにおいて、前記稼動データは、コンピュータのハードウエア構成および当該コンピュータに割り当てられるソフトウエアの構成のうち少なくとも１つを表す構成データを含むことが好ましい。
【００２４】
前記稼動データに構成データが含まれることにより、前記命令生成部は、各コンピュータの構成および各コンピュータに割り当てられるソフトウエアの構成のうち少なくとも１つに基づいて、前記過熱コンピュータおよび／または前記過疎コンピュータを抽出することができる。これにより、前記命令生成部は、コンピュータおよびソフトウエアの構成を考慮して、ソフトウエアを移動しやすい過熱コンピュータおよび過疎コンピュータの組を抽出することができる。その結果、前記命令生成部は、過熱コンピュータのソフトウエアを過疎コンピュータへ効率よく移動させる命令を生成すことができる。
【００２５】
本発明にかかる管理システムは、コンピュータが過熱コンピュータであると判断されるためのコンピュータによるソフトウエアの実行状況の条件と、過疎コンピュータであると判断されるためのコンピュータによるソフトウエアの実行状況の条件とを示すデータを含む配置ポリシーを更新可能な状態で記憶する配置ポリシー記憶部をさらに備え、
前記命令生成部は、前記配置ポリシーで示される条件と、前記稼動データで示されるコンピュータによるソフトウエアの実行状況とに基づいて、前記過熱コンピュータおよび前記過疎コンピュータを抽出し、前記命令を生成することが好ましい。
【００２６】
前記命令生成部は、前記配置ポリシー記憶部に記憶された前記配置ポリシーを用いて、前記過熱コンピュータおよび前記過疎コンピュータを抽出する。そのため、前記コンピュータによるソフトウエアの実行状況から、コンピュータが過熱コンピュータであるかまたは過疎コンピュータであるかを判断するためのデータが外部から入力されなくても、前記命令生成部は、前記配置ポリシーにより自律的にその判断を行うことができる。また、前記配置ポリシーは更新可能な状態で記憶されるので、前記命令生成部による過熱コンピュータであるかまたは過疎コンピュータであるかの判断基準が状況に応じて更新されることが可能となる。
【００２７】
本発明にかかる管理システムにおいて、前記配置ポリシーは、コンピュータが過熱コンピュータであると判断されるための温度の条件と、過疎コンピュータであると判断されるための温度の条件とを示すデータをさらに含むみ、前記命令生成部は、前記配置ポリシーで示される条件と、前記温度データで示される温度分布とに基づいて、前記過熱コンピュータおよび前記過疎コンピュータを抽出し、前記命令を生成することが好ましい。
【００２８】
前記温度データを用いてコンピュータが過熱コンピュータであるかまたは過疎コンピュータであるかを判断するためのデータが外部から入力されなくても、前記命令生成部は、前記配置ポリシーにより自律的にその判断を行うことができる。
【００２９】
本発明にかかる管理プログラムは、ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理する処理を管理コンピュータに実行させる管理プログラムであって、前記複数のコンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくともいずれか１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す配置先選定データ読み出し処理と、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する命令生成処理と、前記命令を出力する命令処理とを管理コンピュータに実行させる。
【００３０】
本発明にかかる管理方法は、ハードウエアにより構成されるコンピュータが複数設けられたコンピュータセンタにおいて、前記複数のコンピュータと、前記複数のコンピュータそれぞれに割り当てられ実行されるソフトウエアとを管理コンピュータを用いて管理する方法であって、前記管理コンピュータが備える命令生成部が、前記コンピュータによるソフトウエアの実行状況を表す稼動データと、前記複数のコンピュータにおける温度分布を表す温度データとの少なくとも１つを含む配置先選定データを前記管理コンピュータの記憶部から読み出す工程と、前記管理コンピュータが備える命令生成部が、前記配置先選定データを用いて、前記複数のコンピュータにおいて他のコンピュータに比べて放熱が多いと想定される過熱コンピュータと、前記複数のコンピュータにおいて他と比べて放熱が少ないと想定される過疎コンピュータとを抽出し、前記過熱コンピュータに割り当てられたソフトウエアの少なくとも一部を、前記過疎コンピュータに移動させる命令を生成する工程と、前記コンピュータが備える命令部が、前記命令を出力する工程と含む。
【００３１】
以下、本発明の実施の形態にかかる管理システムについて、図面を参照しながら説明する。図１は、本発明の一実施形態にかかる管理システム１を含むＩＤＣの構成を示す機能ブロック図である。
【００３２】
［第１の実施形態］
図１に示すＩＤＣは、管理システム１およびブレードサーバ１２ａ〜１２ｇが格納されたラック１３、温度センサ１１および空調装置１５ａ、１５ｂで構成されている。
【００３３】
管理システム１は、配置先選定データ記憶部３、配置ポリシー記憶部６、命令生成部２、命令部８を備える。管理システム１は、ラック１３に格納された複数のブレードサーバ１２ａ〜１２ｇに接続されている。また、ラック１３の付近には、ラック１３が配置されている空間の温度を調整する空調装置１５ａ、１５ｂが設けられている。図１に示す空調装置１５ａは、ブレードサーバ１２ａ〜１２ｃの周辺の温度を調整する機能を有し、空調装置１５ｂは、ブレードサーバ１２ｄ〜１２ｇの周辺の温度を調整する機能を有する。
【００３４】
なお、図１に示す例では、管理システム１は、１台のラック１３に格納されたブレードサーバに接続される構成となっているが、ラック１３は１台に限られない。管理システム１が複数のラックに格納されたブレードサーバに接続される構成であってもよい。また、管理システム１は、図１に示すように、直接複数のブレードサーバ１２ａ〜１２ｇに接続されている必要はない。管理システム１は、例えば、ブレードサーバ１２ａ〜１２ｇを制御する制御装置等を介して間接的にブレードサーバ１２ａ〜１２ｇに接続されていてもよい。
【００３５】
ブレードサーバ１２ａ〜１２ｇは、それぞれ独立したコンピュータである。ブレードサーバ１２ａ〜１２ｇのそれぞれに、ブレードサーバ１２ａ〜１２ｇを用いて処理を行うためのソフトウエアが割り当てられている。ブレードサーバ１２ａ〜１２ｇはそれぞれに割り当てられたソフトウエアに従って稼働する。
【００３６】
各ブレードサーバ１２ａ〜１２ｇに割り当てられたソフトウエアは、各ブレードサーバ１２ａ〜１２ｇの記憶装置に記憶されたプログラム群およびデータである。各ブレードサーバ１２ａ〜１２ｇのＣＰＵが、そのプログラムを実行することによって所定の処理が行われる。ソフトウエアは、ブレードサーバのＯＳ、デバイスドライバ、ミドルウエア、各種アプリケーション、データベース、ファイル等で構成される。ブレードサーバが備えるＣＰＵ、記憶装置、ネットワークインタフェース、入出力インタフェース等のハードウエア資源は、ブレードサーバに割り当てられたソフトウエアに基づいて稼動する。
【００３７】
図１に示すブレードサーバ１２ａ〜１２ｇは、ＩＤＣを構成するコンピュータの一部である。そのため、ブレードサーバ１２ａ〜１２ｇには、複数の顧客（例えば、企業等）が運用する業務の処理を行うためのソフトウエアが割り当てられる。例えば、ブレードサーバ１２ａは企業Ａの人事管理を行うためのソフトウエア、ブレードサーバ１２ｂには企業Ｂの運営するＷＥＢ通信販売の処理を行うためのソフトウエア、ブレードサーバ１２ｃ〜ｇは企業Ｃの電子商取引の処理を行うためのソフトウエアが割り当てられる。これらのソフトウエアの割り当てを動的に更新することが可能なＩＤＣは、ユーティリティ方式のＩＤＣと呼ばれる。本実施形態におけるＩＤＣは、ユーティリティ方式のＩＤＣの一種である。
【００３８】
管理システム１は、複数の温度センサ１１にも接続されている。温度センサ１１は、ブレードサーバ１２ａ〜１２ｇの周辺の温度を計る温度センサである。温度センサ１１は、ブレードサーバ１２ａ〜１２ｇに対応した位置に設けられることが好ましい。これにより、各ブレードサーバ１２ａ〜１２ａの周辺における温度を計ることができる。なお、温度センサ１１は、各ブレードサーバ１２ａ〜１２ｇの内部に設けられてもよい。これにより、温度センサ１１は各ブレードサーバ１２ａ〜１２ｇ内の温度を計ることができる。
【００３９】
管理システム１の配置先選定データ記憶部３には、温度データと稼動データが記憶される。温度データは、温度センサ１１が測定したブレードサーバ１２ａ〜１２ｇの周辺における温度分布を表すデータである。なお、本実施形態では、温度データは温度センサ１１の測定によって得られたデータであるが、温度データは、例えば、ブレードサーバ１２ａ〜１２ｇの稼動状況を示すデータ等から計算によって求められるデータであってもよい。この場合は、温度センサ１１は不要になる。
【００４０】
稼動データは、ブレードサーバ１２ａ〜１２ｇそれぞれにおけるソフトウエアの実行状況を表すデータである。稼動データが表すソフトウエアの実行状況は、例えばＣＰＵ使用率やハードディスクの使用容量、メモリ使用量等のようなハードウエアの稼動状況と、起動しているアプリケーションの種類および数や動作しているデータベースの種類および数、実行プロセス数、データ転送量、トランザクション処理数のようなソフトウエアによる処理の状況とが含まれる。
【００４１】
配置ポリシー記憶部６には、配置ポリシーが記憶される。配置ポリシーは、配置先選定データ記憶部３に記憶されたデータに用いて、ブレードサーバ１２ａ〜１２ｇを稼動させるソフトウエアの配置先を制御するための命令を生成するためのデータである。
【００４２】
命令生成部２は、配置先選定データ記憶部３に記憶された温度データおよび稼動データと、配置ポリシー記憶部６に記憶された配置ポリシーに基づいて、ブレードサーバ１２ａ〜１２ｇに対する命令を生成する。命令生成部２が生成する命令には、ブレードサーバに特定の処理を実行させるための命令が含まれる。
【００４３】
命令部８は、命令生成部２が生成した命令を該当するブレードサーバへ出力する。なお、命令部８は、命令を該当するブレードサーバへ直接出力する必要は必ずしもない。例えば、命令部８は、ブレードサーバ１２ａ〜１２ｇを制御する制御装置に対して命令を出力してもよい。
【００４４】
上記構成により、管理システム１は、どのブレードサーバにどのソフトウエアを割り当てるかを制御することができる。すなわち、各ブレードサーバ１２ａ〜１２ｇへのソフトウエアの配置を制御することができる。
【００４５】
管理システム１は、例えば、サーバ、パーソナルコンピュータ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のようなコンピュータ上に構築される。命令生成部２、命令部８の機能は、コンピュータが備えるＣＰＵが所定のプログラムを実行することによって実現される。配置先選定データ記憶部３および配置ポリシー記憶部６には、コンピュータに内蔵されているハードディスク、ＲＡＭ等の記憶媒体の他、フレキシブルディスク、メモリカード等の可搬型記憶媒体や、ネットワーク上にある記憶装置内の記憶媒体等を用いることができる。また、配置先選定データ記憶部３および配置ポリシー記憶部６は、１つの記憶媒体で構成されてもよいし、複数の記憶媒体で構成されてもよい。
【００４６】
ここで、本実施形態にかかる管理システムの動作の流れについて、図２のフローチャートを参照しながら説明する。
【００４７】
図２に示すように、まず、命令生成部２は、配置先選定データ記憶部３から温度データを取得する（ステップＳ１）。温度データは、例えば、各ブレードサーバ１２ａ〜１２ｇにおける現時点での温度を示すデータである。次に、命令生成部２は、配置先選定データ記憶部３から稼動データを取得する（ステップＳ２）。命令生成部２は、各ブレードサーバ１２ａ〜１２ｇそれぞれについて、稼働データを取得する。
【００４８】
図３は、ある１つのブレードサーバについての稼動データの構造を示す図である。なお、図３に示す稼働データの構造および内容は一例であり、稼働データの構造および内容は図３に示す例に限られない。図３に示す例では、稼動データは、負荷データ２１、起動データ２２、ビジネスデータ２３および構成データ２４を含む。
【００４９】
負荷データ２１は、ブレードサーバに割り当てられたソフトウエアが動作することによってそのブレードサーバにかかる負荷を表すデータである。負荷データ２１には、例えば、ブレードサーバの稼動に伴うＣＰＵ使用率２１−ａ、ソフトウエアの動作中の空メモリ量２１−ｂおよびストレージ利用量２１−ｃ、ソフトウエアの動作に伴うデータ転送量２１−ｄ等が含まれる。このように、負荷データ２１は、ブレードサーバが備えるＣＰＵおよび記憶装置等の使用状態や、ソフトウエアが扱うデータの量等で表される。
【００５０】
起動データ２２は、ブレードサーバが処理を行うために実行するソフトウエアの起動状況を示すデータである。起動データ２２には、例えば、ＯＳ（オペレーティングシステム：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の起動の有無２２−ａ、アプリケーションサーバの起動の有無２２−ｂ、および業務アプリケーションＡ〜Ｚの起動の有無２２−ｃ、２２−ｄを示すデータが含まれる。アプリケーションサーバには、例えば、ＷＥＢサーバ、認証サーバ等のようにクライアントから要求を受け付けて、データベースへの接続、トランザクション管理等の基本的なオンライン処理を行うミドルウエアが含まれる。また、業務アプリケーションは、業務の処理の流れを制御するための応用ソフトウエアであり、例えば、企業の人事管理、経理処理、オンラインでのサービス予約処理、オンラインショッピングの受注および発注処理、電子商取引システム処理等の業務の処理を行うソフトウエアが含まれる。
【００５１】
ビジネスデータ２３は、ブレードサーバおよびソフトウエアを利用して業務を行う運用主体に関するデータである。例えば、運用主体が企業である場合、その企業に関する情報がビジネスデータに含まれる。例えば、企業種別２３−ａ、ＡＣＬ（アクセスコントロール情報：Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ  Ｌｉｓｔ）２３−ｂ等がビジネスデータ２３に含まれる。このように、ビジネスデータ２３は、そのブレードサーバおよびソフトウエアを利用した業務の運用におけるビジネス上の制約または取り決めを示す情報である。また、運用主体に関するデータとしてビジネスデータを例示したが、運用主体に関するデータは、ビジネスに関する事項に限定されてない。
【００５２】
構成データ２４は、ブレードサーバの構成と、そのブレードサーバに割り当てられたソフトウエアの構成とを表すデータである。構成データ２４には、例えば、ブレードサーバが備えるＣＰＵのクロック周波数２４−ａ、ブレードサーバに割り当てられたソフトウエアに含まれるＯＳの種別２４−ｂ、業務アプリケーションの種別２４−ｃなどが含まれる。また、上記例の他にも構成データ２４には、例えば、隣のブレードサーバとの距離を表すデータや、ブレードサーバが配置された位置を表すデータ、装置またはソフトウエアの製造元に関する情報、ブレードサーバのスペックに関する情報等が含まれてもよい。
【００５３】
命令生成部２は、以上のような稼働データを、配置先選定データ記憶部３から取得する（ステップＳ２）と、図２に示すように、配置ポリシー記憶部６から配置ポリシーを取得する（ステップＳ３）。配置ポリシーは、あるブレードサーバが他のブレードサーバに比べて放熱が多いと想定される過熱ブレードサーバであると判断されるための温度および稼働状況の条件と、あるブレードサーバが他と比べて放熱が少ないと想定される過疎ブレードサーバであると判断されるための温度および稼働状況の条件とを示すデータである。
【００５４】
図４は、配置ポリシーのデータ構造の例を示す図である。図４に示すように、配置ポリシーＰは、監視ポリシーＭＰ、過熱ブレードサーバ抽出条件ＫＭ、過疎ブレードサーバ抽出条件ＫＳを含む。
【００５５】
監視ポリシーＭＰは、ブレードサーバ１２ａ〜１２ｇの状態を監視する動作の条件を示すデータである。例えば、監視するタイミングを表す監視時間間隔等である。図４に示す例では、監視時間間隔が６０分であることを示すデータが監視ポリシーＭＰに含まれている。この例のように監視時間間隔が６０分である場合、管理システム１は、６０分毎に図２に示す処理を実行する。
【００５６】
過熱ブレードサーバ抽出条件ＫＭは、温度データＴ１と稼動データＫ１を含む。図４に示す例では、過熱ブレードサーバ抽出条件ＫＭの温度データＴ１には、後述する処理で抽出された過熱ブレードサーバの候補の中で温度が最高であること（温度＝最高）が条件であることを示すデータが含まれている。過熱ブレードサーバ抽出条件ＫＭの稼動データＫ１には、負荷データＨ１、起動データＤ１、ビジネスデータＢ１、構成データＣ１が含まれる。図４に示す例では、過熱ブレードサーバ抽出条件ＫＭの負荷データＨ１に、ＣＰＵ使用率が８０％より大きいことを条件とすること（ＣＰＵ使用率＞８０％）を示すデータが含まれている。過熱ブレードサーバ抽出条件ＫＭの起動データＤ１に、業務アプリケーションＡが起動されていること（業務アプリＡ＝ＯＮ）を条件とすることを示すデータが含まれている。過熱ブレードサーバ抽出条件ＫＭのビジネスデータＢ１および構成データＣ１には、条件を示すデータは含まれていない。これは、ビジネスデータＢ１および構成データＣ１に関しては特に条件は指定されていないことを意味する。
【００５７】
過疎ブレードサーバ抽出条件ＫＳも、温度データＴ２と稼動データＫ２を含む。図４に示す例では、過疎ブレードサーバ抽出条件ＫＳの温度データＴ２には、後述する処理で抽出された過疎ブレードサーバの候補の中で温度が最低であること（温度＝最低）が条件であることを示すデータが含まれている。過疎ブレードサーバ抽出条件ＫＳの稼動データＫ２には、負荷データＨ２、起動データＤ２、ビジネスデータＢ２、構成データＣ２が含まれる。図４に示す例では、過疎ブレードサーバ抽出条件ＫＳの起動データＤ２に、業務アプリケーションＡが起動されていないこと（業務アプリＡ＝ＯＦＦ）を条件とすることを示すデータが含まれている。過疎ブレードサーバ抽出条件ＫＳのビジネスデータＢ２に、Ａ社の業務の処理を行うソフトウエアが含まれるブレードサーバは、過疎ブレードサーバとして抽出しないことを意味する情報（企業種別＝“Ａ社以外”）が含まれている。過疎ブレードサーバ抽出条件ＫＳの構成データＣ２に、空メモリ量が５１２ＭＢより多いこと（空メモリ量＞５１２ＭＢ）、および業務アプリケーションとして“Ａ”がインストールされていること（業務アプリ種別＝“Ａ”）を条件とすることを示すデータが含まれている。過疎ブレードサーバ抽出条件ＫＳの負荷データＨ２には、条件を示すデータは含まれていない。これは、負荷データＨ２に関しては特に条件は指定されていないことを意味する。
【００５８】
図５は、図４に示す配置ポリシーＰを表す具体的なデータの例を示す図である。図５に示す配置ポリシーは、ＸＭＬの形式で記述されている。なお、図５に示すデータ中で、図４に示すデータに相当する部分には同じ符号が付されている。
【００５９】
図５中、ＭＰで示す部分には監視ポリシー、ＫＭで示す部分には過熱ブレードサーバ抽出条件、ＭＳで示す部分には過疎ブレードサーバ抽出条件が記述されている。
【００６０】
ＭＰ−１で示す部分には、監視時間間隔が“ＭｏｎｉｔｏｒｉｎｇＩｎｔｅｒｖａｌ”要素で、６０（分）であることが示されている。
【００６１】
過熱ブレードサーバ抽出条件ＫＭのうち、Ｔ１で示す箇所は、“ＴｈｅｒｍｏＣｏｎｄｉｔｉｏｎ”要素であり、温度データを表している。要素内容は、最高（“ｍａｘ”）であり、例えば、過熱ブレードサーバの候補の中で温度が最高であることが抽出の条件であることを示す。
【００６２】
過熱ブレードサーバ抽出条件ＫＭのうち、Ｋ１で示す箇所は、“ＯｐｅｒａｔｉｏｎＩｎｆｏ”要素であり、稼動データを表している。稼動データＫ１には、“ＬｏａｄＩｎｆｏ”要素で表される負荷データＨ１、“ＳｅｒｖｉｃｅＩｎｆｏ”要素で表される起動データＤ１、“ＢｕｓｉｎｅｓｓＩｎｆｏ”要素で表されるビジネスデータＢ１、“ＳｔｒｕｃｔｕｒｅＩｎｆｏ”要素で表される構成データＣ１が含まれる。
【００６３】
負荷データＨ１では、“ＣｏｎｄｉｔｉｏｎＩｔｅｍ”要素に含まれる“ＣｏｎｄｉｔｉｏｎＫｅｙ”要素Ｈ１−１で、ＣＰＵ使用率（“Ｐｒｏｃｅｓｓｏｒ  Ｔｉｍｅ”）が示され、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素Ｈ１−２で、その値が８０％より大きいこと（“＆ｇｔ；８０％”）が示されている。“ＣｏｎｄｉｔｉｏｎＥｖａｌｕａｔｏｒ”要素Ｈ１−３は、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素で表される値を評価するために実行するプログラムへのパスを示す情報を示す。
【００６４】
起動データＤ１では、“ＣｏｎｄｉｔｉｏｎＩｔｅｍ”要素に含まれる“ＣｏｎｄｉｔｉｏｎＫｅｙ”要素Ｄ１−１で、アプリケーションＡ（“Ａｐｐｌｉｃａｔｉｏｎ  Ａ”）が示され、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素Ｄ１−２で、そのアプリケーションＡが起動されていること（“ｓｔａｒｔｅｄ”）が示されている。
【００６５】
ビジネスデータＢ１を表す“ＢｕｓｉｎｅｓｓＩｎｆｏ／”要素は要素内容を持っていない。構成データＣ１を表す“ＳｔｒｕｃｔｕｒｅＩｎｆｏ／”要素も要素内容を持たない。
【００６６】
過疎ブレードサーバ抽出条件ＫＳのうち、Ｔ２で示す箇所は、“ＴｈｅｒｍｏＣｏｎｄｉｔｉｏｎ”要素であり、温度データを表している。要素内容は、最低（“ｍｉｎ”）であり、例えば、過疎ブレードサーバの候補の中で温度が最低であることが抽出の条件であることを示す。
【００６７】
過疎ブレードサーバ抽出条件ＫＳのうち、Ｋ２で示す箇所は、“ＯｐｅｒａｔｉｏｎＩｎｆｏ”要素であり、稼動データを表している。稼動データＫ２には、“ＬｏａｄＩｎｆｏ”要素で表される負荷データＨ２、“ＳｅｒｖｉｃｅＩｎｆｏ”要素で表される起動データＤ２、“ＢｕｓｉｎｅｓｓＩｎｆｏ”要素で表されるビジネスデータＢ２、“ＳｔｒｕｃｔｕｒｅＩｎｆｏ”要素で表される構成データＣ２が含まれる。
【００６８】
負荷データＨ２を表す“ＬｏａｄＩｎｆｏ／”要素は要素内容を持っていない。起動データＤ２では、“ＣｏｎｄｉｔｉｏｎＩｔｅｍ”要素に含まれる“ＣｏｎｄｉｔｉｏｎＫｅｙ”要素Ｄ２−１で、アプリケーションＡ（“Ａｐｐｌｉｃａｔｉｏｎ  Ａ”）が示され、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素Ｄ２−２で、そのアプリケーションＡが起動されていないこと（“ｓｔｏｐｐｅｄ”）が示されている。
【００６９】
ビジネスデータＢ２−１では、“ＢｕｓｉｎｅｓｓＣｏｎｄｉｔｉｏｎ”要素Ｂ２−１でＡ社の業務に関する処理を行うブレードサーバは抽出しない（“！＊．ａ＿ｃｏｍｐａｎｙ．ｃｏｍ”）ことが条件として示されている。
【００７０】
構成データＣ２では、“ＣｏｎｄｉｔｉｏｎＩｔｅｍ”要素に含まれる“ＣｏｎｄｉｔｉｏｎＫｅｙ”要素Ｃ２−１で、空メモリ量（“Ｍｅｍｏｒｙ”）が示され、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素Ｃ２−２で、その値である５１２ＭＢ（“５１２”）が示されている。また、“ＣｏｎｄｉｔｉｏｎＫｅｙ”要素Ｃ２−３で、アプリケーション種別（“Ａｐｐｌｉｃａｔｉｏｎ  Ｔｙｐｅ”）が示され、“ＣｏｎｄｉｔｉｏｎＶａｌｕｅ”要素Ｃ２−４で、アプリケーション種別がアプリケーションＡであること（“Ａｐｐｌｉｃａｔｉｏｎ  Ａ”）が示されている。
【００７１】
以上、図４および図５に配置ポリシーのデータ構造および内容の例を示したが、配置ポリシーのデータ構造および内容は、図４および図５に示す例に限られない。
【００７２】
命令生成部２は、以上のような配置ポリシーを、配置ポリシー記憶部６から取得する（図２のステップＳ３）と、ブレードサーバ１２ａ〜１２ｇの中から、過熱ブレードサーバを抽出する（ステップＳ４）。過熱ブレードサーバは、稼動が集中することによって、他のブレードサーバに比べて放熱が多くなっていると想定されるブレードサーバである。命令生成部２は、ステップＳ１で取得した温度データ、ステップＳ２で取得した稼動データおよびステップＳ３で取得した配置ポリシーの過熱ブレードサーバ抽出条件を用いて、過熱ブレードサーバを抽出する。過熱ブレードサーバを抽出する処理の詳細は後述する。
【００７３】
また、命令生成部２は、ブレードサーバ１２ａ〜１２ｇの中から、他と比べて放熱が少ないと想定される過疎ブレードサーバを抽出する（ステップＳ５）。命令生成部２は、ステップＳ１で取得した温度データ、ステップＳ２で取得した稼動データおよびステップＳ３で取得した配置ポリシーの過疎ブレードサーバ抽出条件を用いて、過疎ブレードサーバを抽出する。過疎ブレードサーバを抽出する処理の詳細は後述する。
【００７４】
命令生成部２は、過熱ブレードサーバを用いて処理を行うソフトウエアの少なくとも一部を、過疎コンピュータに移動させるための命令を生成する（ステップＳ６）。命令生成部２は、例えば、過熱ブレードサーバを用いて処理を行っているソフトウエアに含まれる所定のアプリケーションを終了させる命令、過疎ブレードサーバに対して新しくアプリケーションを実行させる命令等を生成する。
【００７５】
命令部８は、命令生成部２が生成した命令を過熱ブレードサーバおよび過疎ブレードサーバへ送信する（ステップＳ７）。これにより、過熱プレーサーバで動作するソフトウエアが、過疎ブレードサーバに移動する。
【００７６】
以上、図２に示したように、管理システム１は、温度データ、稼動データおよび配置ポリシーを用いて、過熱ブレードサーバと過疎ブレードサーバを抽出し、過熱ブレードサーバで動作しているソフトウエアを過疎ブレードサーバへ移動させる命令を生成する。
【００７７】
次に、過熱ブレードサーバを抽出する処理について説明する。図６は、命令生成部２が過熱ブレードサーバを抽出する処理の例を示すフローチャートである。ここでは、一例として、ブレードサーバ１２ａ〜１２ｇのうち、１台のブレードサーバが過熱ブレードサーバとして抽出される場合について説明する。
【００７８】
図６に示すように、命令生成部２は、ブレードサーバ１２ａ〜１２ｇのそれぞれの稼動データについて、配置ポリシーで示される稼動データの条件を満たすか否かを判断する。これにより、命令生成部２は、配置ポリシーで示される稼動データの条件を満たす稼動データを有するブレードサーバを、過熱ブレードサーバの候補として抽出する（ステップＳ４１）。すなわち、命令生成部２は、配置ポリシーが示す稼動データの条件と、ブレードサーバ１２ａ〜１２ｇそれぞれの稼動データとを比較することで、過熱ブレードサーバの候補を抽出する。
【００７９】
例えば、図４で示した配置ポリシーＰが示す稼動データＫ１の条件は、ブレードサーバの負荷データが示すＣＰＵ使用率が８０％より高い（ＣＰＵ使用率＞８０％：Ｈ１）ことと、ブレードサーバの起動データが、業務アプリケーションＡの起動（業務アプリＡ＝ＯＮ：Ｄ１）を示すことである。ブレードサーバ１２ａ〜１２ｇそれぞれの稼動データは、例えば、図３で示した構成である。命令生成部２は、例えば、図３に示す稼動データ中の負荷データ２１に含まれるＣＰＵ使用率２１−ａおよび起動データ２２に含まれる業務アプリケーションＡの起動の有無２２−ｃとを参照して、上記配置ポリシーが示す負荷データＨ１の条件（ＣＰＵ使用率＞８０％：）および起動データＤ１の条件（業務アプリＡ＝ＯＮ）と比較する。これらの条件をともに満たす稼動データを有するブレードサーバが、過熱ブレードサーバの候補として抽出される。
【００８０】
次に、命令生成部２は、ステップＳ４１で抽出された過熱ブレードサーバの候補の中から、温度データが配置ポリシーの温度データＴ１の条件（温度＝最高）を満たすブレードサーバを、過熱ブレードサーバとして抽出する（ステップＳ４２）。すなわち、命令生成部２は、温度データが示す温度が最高であるブレードサーバを過熱ブレードサーバとして抽出する。命令生成部２は、例えば、抽出された過熱ブレードサーバそれぞれの温度データを、相互に比較することで温度が最高のブレードサーバを過熱ブレードサーバとして抽出することができる。
【００８１】
これにより、ＣＰＵ使用率が８０％より大きく、かつ業務アプリケーションＡが起動しているブレードサーバの中で、温度が最高のブレードサーバが過熱ブレードサーバとして抽出される。
【００８２】
なお、ここでは、命令生成部２は、配置ポリシーの温度データが、“温度＝最高”を条件として示しているので、候補となるブレードサーバの中で温度が最高のブレードサーバを抽出している。例えば、配置ポリシーの温度データに閾値となる温度が示されていた場合に、命令生成部２は、その閾値となる温度より高い温度のブレードサーバを過熱ブレードサーバとして抽出するように動作してもよい。
【００８３】
また、図６においては、過熱ブレードサーバを１台だけ抽出する場合を説明したが、例えば、ステップＳ４２において、命令生成部２は、温度が所定値より大きなブレードサーバが複数ある場合、それらを複数の過熱ブレードサーバとして抽出してもよい。
【００８４】
このように、命令生成部２は、温度データと稼動データに基づいて、過熱ブレードサーバを抽出することができる。なお、図６に示す処理では、温度データおよび稼動データに基づいて過熱ブレードサーバを抽出しているが、温度データおよび稼動データのいずれか１つを用いて過熱ブレードサーバを抽出することも可能である。
【００８５】
次に、過疎ブレードサーバを抽出する処理について説明する。図７は、命令生成部２が過疎ブレードサーバを抽出し、命令を生成する処理の例を示すフローチャートである。ここでは、一例として、ブレードサーバ１２ａ〜１２ｇのうち、１台のブレードサーバが過疎ブレードサーバとして抽出される場合について説明する。
【００８６】
図７に示すように、まず、命令生成部２は、ブレードサーバ１２ａ〜１２ｇの中から、配置ポリシーで示される稼動データの条件を満たす稼動データを有するブレードサーバを抽出する。命令生成部２は、ブレードサーバ１２ａ〜１２ｇのそれぞれの稼動データについて、配置ポリシーで示される起動データの条件を満たすか否かを判断する。
【００８７】
図４に示す配置ポリシーの例では、過疎ブレードサーバ抽出条件ＫＳの起動データＤ２の条件は、（業務アプリＡ＝ＯＦＦ）である。この場合、命令生成部２は、ブレードサーバ１２ａ〜１２ｇそれぞれの稼動データ２０に含まれる起動データ２２を参照して、各ブレードサーバ１２ａ〜１２ｇにおける業務アプリケーションＡの起動の有無を判断することができる。これにより、命令生成部２は、例えば、業務アプリケーションＡが起動していないブレードサーバは、稼動が低いと見なして過疎ブレードサーバの候補として抽出することができる。
【００８８】
業務アプリケーションＡが起動していないブレードサーバがない場合（ステップＳ５１でＮｏ）、命令生成部２は、過疎ブレードサーバの候補を全てのブレードサーバ１２ａ〜１２ｇとして（ステップＳ５２）、候補のブレードサーバの温度データを参照して、温度が最低のブレードサーバを抽出する（ステップＳ５３）。
【００８９】
命令生成部２は、抽出したブレードサーバの構成データ２４と、配置ポリシーが示す過疎ブレードサーバ抽出条件ＫＳに含まれる構成データＣ２の条件とを比較することにより、そのブレードサーバが構成データの条件を満たすか否かを判断する（ステップＳ５４）。例えば、図４に示す配置ポリシーの例では、過疎ブレードサーバ抽出条件ＫＳの構成データＣ２の条件は、ブレードサーバの空メモリが５１２ＭＢ以上であること（空メモリ＞５１２ＭＢ）と、ブレードサーバに業務プリケーションＡがインストールされていること（業務アプリ種別＝“Ａ”）である。命令生成部２は、ステップＳ５３で抽出したブレードサーバの構成データを参照して、上記配置ポリシーＰの構成データＣ２の２つ条件（空メモリ＞５１２ＭＢ）および（業務アプリ種別＝“Ａ”）と比較する。これにより、命令生成部２は、抽出したブレードサーバの構成データ２４が、配置ポリシーで示される構成データＣ２の条件を満たすか否かを判断することができる。
【００９０】
なお、構成データの条件は上述の例に限られない。例えば、過熱ブレードサーバと過疎ブレードサーバの距離を条件とすることもできる。例えば、過熱ブレードサーバの隣に位置するブレードサーバは、過疎ブレードサーバの候補から外すように構成データの条件が設定されてもよい。
【００９１】
ステップＳ５３で抽出したブレードサーバが、配置ポリシーで示される構成データＣ２の条件を満たす場合（ステップＳ５４でＹｅｓの場合）、命令生成部２は、そのブレードサーバの稼動データ２０に含まれるビジネスデータ２３が、配置ポリシーＰの条件を満たすか否かの判断を行う（ステップＳ５５）。ステップＳ５３で抽出したブレードサーバが、配置ポリシーＰに示されるビジネスデータＢ２の条件を満たさない場合（ステップＳ５４でＮｏの場合）、命令生成部２は、候補からのそのブレードサーバを削除して（ステップＳ５６）、そのブレードサーバが削除された候補の中から、再び、温度が最低のブレードサーバを抽出する（ステップＳ５３）。
【００９２】
これにより、構成データ２４が配置ポリシーＰの条件を満たさないブレードサーバは、過疎ブレードサーバの候補から外される。これにより、配置ポリシーの構成データＣ２で示される条件を満たすハードウエア構成またはソフトウエア構成を持つブレードサーバが過疎ブレードサーバの候補として抽出されることになる。本実施形態においては、業務アプリケーションＡが稼動しているブレードサーバが過熱ブレードサーバの候補となる。
【００９３】
なお、上記構成データの条件を判断する処理（ステップＳ５４）では、命令生成部２は、ブレードサーバの構成データ２４が、配置ポリシーＰで示される構成データＣ２の条件全てを満たした場合に、配置ポリシーＰで示される構成データＣ２の条件を満たす（ステップＳ５４でＹｅｓ）と判断しているが、ブレードサーバの構成データ２４が、配置ポリシーＰで示される構成データＣ２の条件の一部を満たした場合に、配置ポリシーＰで示される構成データＣ２の条件を満たす（ステップＳ５４でＹｅｓ）と判断することもできる。
【００９４】
ステップＳ５５において、命令生成部２は、抽出したブレードサーバのビジネスデータ２３と、配置ポリシーＰが示す過疎ブレードサーバ抽出条件ＫＳに含まれるビジネスデータＢ２の条件とを比較することにより、そのブレードサーバが配置ポリシーＰに示されるビジネスデータＢ２の条件を満たすか否かを判断する。例えば、図４に示す配置ポリシーＰの例では、過疎ブレードサーバ抽出条件ＫＳに含まれるビジネスデータＢ２の条件は、ブレードサーバを用いて業務を行う企業がＡ社でないこと（業務種別＝Ａ社以外）である。命令生成部２は、ステップＳ５３で抽出したブレードサーバのビジネスデータ２３を参照して、上記の条件（業務種別＝Ａ社以外）と比較する。これにより、命令生成部２は、ステップＳ５３で抽出したブレードサーバのビジネスデータ２３が配置ポリシーＰで示されるビジネスデータＢ２の条件を満たすか否かを判断することができる。
【００９５】
ステップＳ５３で抽出したブレードサーバがビジネスデータＢ２の条件を満たさない場合（ステップＳ５５でＮｏの場合）、命令生成部２は、候補からのそのブレードサーバを削除して（ステップＳ５６）、候補の中から温度が最低のブレードサーバを再び抽出する（ステップＳ５３）。これにより、ビジネス上の制約や取り決めを満たさないブレードサーバは、過疎ブレードサーバの候補から外される。
【００９６】
ステップＳ５３で抽出したブレードサーバがビジネスデータＢ２の条件を満たす場合（ステップＳ５５でＹｅｓの場合）、命令生成部２は、そのブレードサーバを過疎ブレードサーバとする（ステップＳ５７）。これにより、構成データ２４およびビジネスデータ２３が配置ポリシーＰで示される条件を満たすブレードサーバの中で、温度が最低であるブレードサーバを過疎ブレードサーバとして抽出することができる。
【００９７】
本実施形態の例では、業務アプリケーションＡが起動しており、空メモリが５１２ＭＢ以上あり、かつ、運用主体がＡ社でないブレードサーバの中で、温度が最低のブレードサーバが過疎ブレードサーバとして抽出される。
【００９８】
命令生成部２は、図６に示した処理で抽出した過熱ブレードサーバで動作しているソフトウエアを、過疎ブレードサーバに移動させるための命令を生成する（ステップＳ６１）。ここで、図６に示す処理で抽出された過熱ブレードサーバは、業務アプリケーションＡが起動しているブレードサーバである。命令生成部２は、例えば、過熱ブレードサーバの業務アプリケーションＡにより実行されているプロセスを中止する命令と、そのプロセスを過疎ブレードサーバの業務アプリケーションＡにより実行させる命令とを生成する。過疎ブレードサーバではすでに業務アプリケーションＡが起動されているので、命令生成部２は、過疎ブレードサーバに対して、業務アプリケーションＡをインストールして起動させる命令を出す必要はない。
【００９９】
命令生成部２が生成した命令を命令部８が、過熱ブレードサーバおよび過疎ブレードサーバにそれぞれ送信することで、過熱ブレードサーバで動作していたソフトウエアを、過疎ブレードサーバで動作させることができる。
【０１００】
例えば、過熱ブレードサーバで実行されているプロセスがバッチ処理である場合、過熱ブレードサーバでのバッチ処理を中止させ、残りの処理を過疎ブレードサーバで実行させることができる。また、過熱ブレードサーバで実行されているプロセスがオンライン処理である場合、例えば、ブレードサーバ１２ａ〜１２ｇ間での共有メモリにオンライン処理におけるセッション管理データを記録して、ブレードサーバ１２ａ〜１２ｇで行われるオンライン処理のセッションを管理するセッション管理サーバを設けることにより、セッションを維持しながら、過熱ブレードサーバのプロセスを、過疎ブレードサーバのプロセスに切り替えることができる。
【０１０１】
次に、起動データが配置ポリシーで示される条件を満たすブレードサーバが、ブレードサーバ１２ａ〜１２ｂの中にない場合（ステップＳ５１でＹｅｓの場合）の処理について説明する。命令生成部２は、ブレードサーバ１２ａ〜１２ｂの中から、温度が最低のブレードサーバを過疎ブレードサーバとして抽出する（ステップＳ５８）。命令生成部２は、図６に示した処理で抽出した過熱ブレードサーバで稼動しているソフトウエアを、過疎ブレードサーバに移動させるための命令を生成する（ステップＳ６２）。命令生成部２は、例えば、過熱ブレードサーバの業務アプリケーションで実行されているプロセスを中止する命令と、そのプロセスを実行するための業務アプリケーションＡを、過疎ブレードサーバにインストールし、起動させる命令と、そのプロセスを過疎ブレードサーバのソフトウエアにより実行させる命令とを生成する。
【０１０２】
なお、命令生成部２が生成する命令は、上記命令に限らない。例えば、過熱ブレードサーバの記憶装置に記憶されたデータを、そっくりそのまま過疎ブレードサーバの記憶装置にコピーする命令を生成してもよい。
【０１０３】
以上、図７に示した処理によって、命令生成部２は、温度データと稼動データに基づいて、過疎ブレードサーバを抽出し、過熱ブレードサーバのソフトウエアを過疎ブレードサーバへ移動させる命令を生成することができる。なお、図７に示す処理では、温度データおよび稼動データに基づいて過疎ブレードサーバを抽出しているが、温度データおよび稼動データのいずれか１つを用いて過疎ブレードサーバを抽出することも可能である。
【０１０４】
図２、図６および図７に示した処理により、管理システム１は、複数のブレードサーバ１２ａ〜１２ｇにおいて、一部のブレードサーバに稼動が集中し、熱が発生する場合に、その稼動を他のブレードサーバに移動させることができる。その結果、全体として冷却のためのエネルギーが節約されるので、空調コストを下げることができるという効果が生じる。
【０１０５】
その効果を、図８（ａ）、（ｂ）および（ｃ）を用いて説明する。図８（ａ）は、ある時点における図１に示す各ブレードサーバ１２ａ〜１２ｂにおける温度分布を示す棒グラフである。縦軸は温度、横軸は、各ブレードサーバ１２ａ〜１２ｂを示している。図８（ｂ）は、その時点での各ブレードサーバにおける業務アプリケーションＡの起動の有無を示す表である。表中、「○」は起動していることを意味し、「未」は起動していないことを意味している。図８（ｂ）に示す稼動状態は、ブレードサーバ１２ａ、１２ｂ、１２ｃで業務アプリケーションＡが起動している状態である。
【０１０６】
図８（ａ）に示す温度分布から、ブレードサーバ１２ｂの温度が、ブレードサーバ１２ａ〜１２ｇの中で最高であり、ブレードサーバ１２ａ、１２ｂ、１２ｃの放熱が、ブレードサーバ１２ｄ〜１２ｇの放熱よりも多いことが分かる。この状態では、ブレードサーバ１２ａ、１２ｂ、１２ｃを冷却するための空調装置１５ａの冷却機能を強化する必要が生じる。しかし、空調装置１５ａの冷却機能を強化すると消費電力が増加する。
【０１０７】
ここで、図８（ｂ）、（ｃ）に示す状態の時に、管理システム１が、図２、図６、図７に示す処理を行った場合について説明する。命令生成部２は、業務アプリケーションＡが起動しているブレードサーバ１２ａ、１２ｂ、１２ｃのうち、温度が最も高いブレードサーバ１２ｂを過熱ブレードサーバとして抽出する。また、業務アプリケーションが起動していないブレードサーバ１２ｄ、１２ｅ、１２ｆ、１２ｇのうち、温度が最も低いブレードサーバ１２ｇを過疎ブレードサーバとして抽出する。なお、ここでは、この説明を簡単にするために、ビジネスデータ、負荷データ、構成データの判断についての説明は省略する。
【０１０８】
命令生成部２は、過熱ブレードサーバであるブレードサーバ１２ｂ動作しているソフトウエアの一部である業務アプリケーションＡを、過疎ブレードサーバで動作させるための命令を生成する。その命令を命令部８が、ブレードサーバ１２ｂおよびブレードサーバ１２ｇに送信することで、過熱ブレードサーバであるブレードサーバ１２ｂで稼動している業務アプリケーションＡが、過疎ブレードサーバであるブレードサーバ１２ｇで動作するようになる。その結果、各ブレードサーバ１２ａ〜１２ｂにおける温度分布は、図８（ｄ）のようになる。これにより、ブレードサーバ１２ａ、１２ｂ、１２ｃにおける放熱の一部が、放熱が他より少なかったブレードサーバ１２ｇへ移動し、ブレードサーバ１２ａ、１２ｂ、１２ｃにおける温度上昇が緩和される。そのため、空調装置１５ａ、１５ｂの冷却機能を強化する必要がなくなり、消費電力が節約され、全体として電力コストが削減される。したがって、ＩＤＣにおいて、電力の消費は抑えたいが、コンピュータの稼働量は必要量だけ確保したいという要求を満たすことが管理システム１によって可能になる。
【０１０９】
なお、上記の図２、図６および図７に示した処理の説明においては、ブレードサーバで動作するソフトウエアを他のブレードサーバに稼動させる処理の例として、業務アプリケーションＡによる処理を過熱ブレードサーバから過疎ブレードサーバへ移動させる場合について説明した。しかし、ブレードサーバで動作するソフトウエアは、業務アプリケーションＡだけでなく、その他の複数のアプリケーションも含む場合がある。例えば、１台のブレードサーバで、人事管理処理を行うアプリケーションおよび経理処理を行うアプリケーションが動作している場合等である。そのような場合、命令生成部２は、全てのアプリケーションを別のブレードサーバへ移す命令を生成してもよいし、一部のアプリケーションだけを別のブレードサーバに移す命令を生成してもよい。例えば、命令生成部２は、過熱ブレードサーバの記憶装置のデータ、過疎ブレードサーバの記憶装置にハードコピーする命令を生成してもよい。
【０１１０】
なお、本実施形態では、本発明の一側面である管理システムの構成および動作について説明したが、例えば図２に示した動作をコンピュータに実行させるプログラムまたはそのようなプログラムを記憶したコンピュータ読み取り可能な記憶媒体も、本発明の一側面である。後述の各実施形態においても同様である。
【０１１１】
［第２の実施形態］
第１の実施形態では、１台のブレードサーバに１つのＯＳが搭載されることを前提として説明したが、例えば、Ｘｅｎ、ＶＭＷａｒｅ等のように、１台のブレードサーバに複数のＯＳを同時起動して、物理的な１台のブレードサーバを複数の論理的なマシンとして扱うことを可能にするソフトウエアが存在する。そのため、１台のブレードサーバを複数の仮想マシンとして扱う仮想化技術が適用される場合がある。また、複数のブレードサーバを仮想的に一台のマシンとして扱う仮想化技術も存在する。
【０１１２】
したがって、本実施形態では、複数のブレードサーバに割り当てられたソフトウエアが、それら複数のブレードサーバを仮想的に１台のマシンとして扱う場合と、１台のブレードサーバに割り当てられたソフトウエアがそのブレードサーバを複数の仮想マシンとして扱う場合について説明する。
【０１１３】
まず、図１に示すブレードサーバ１２ａ〜１２ｇを用いて処理を行うソフトウエアが、論理層において、複数のブレードサーバを１台の仮想マシンとして扱う場合について説明する。本実施形態にかかる管理システムの構成は、図１に示す管理システム１の構成と同様である。図９（ａ）は、図１に示すブレードサーバ１２ａ〜１２ｇおよび仮想マシンの概念を示す概念図である。
【０１１４】
図９（ａ）に示す例では、ブレードサーバ１２ａ〜１２ｇのうち、ブレードサーバ１２ａ、１２ｂ、１２ｃが仮想マシンＫＡとして扱われ、ブレードサーバ１２ｄ、１２ｅ、１２ｆ、１２ｇが仮想マシンＫＢとして扱われる。このような場合は、管理システム１は、物理的なブレードサーバ１２ａ〜１２ｇの構成に着目して、ブレードサーバ１２ａ〜１２ｇごとに稼動データ、温度データを取得し、ブレードサーバ１２ａ〜１２ｇに対して命令を生成することが好ましい。
【０１１５】
例えば、仮想マシンＫＡの稼動量が増加することによってブレードサーバ１２ａ、１２ｂ、１２ｃにかかる負荷が、他のブレードサーバ１２ｄ〜１２ｇに比べて高くなった場合について説明する。この場合、命令生成部２は、例えば、図２のステップＳ１〜Ｓ５に示す処理を行い、ブレードサーバ１２ｂを過熱ブレードサーバとして抽出し、ブレードサーバ１２ｇを過疎ブレードサーバとして抽出する。命令生成部２は、ブレードサーバ１２ａで動作するソフトウエアをブレードサーバ１２ｇで動作するソフトウエアに移動させる命令を生成し、命令部８がその命令を出力する。これにより、ブレードサーバ１２ａ、１２ｂ、１２ｇが仮想マシンＫＡとして稼動するようになる（図９（ｂ）参照）。そのため、ブレードサーバ１２ｂにおける放熱の一部が、ブレードサーバ１２ｇへ移動し、ブレードサーバ１２ｂにおける温度上昇が緩和される。
【０１１６】
次に、図１に示すブレードサーバ１２ａ〜１２ｇを用いて処理を行うソフトウエアが、論理層において、１台のブレードサーバを複数の仮想マシンとして扱う場合について説明する。
【０１１７】
図１０（ａ）は、論理層において、１台のブレードサーバが複数の仮想マシンとして扱われる場合のブレードサーバおよび仮想マシンの概念を示す図である。図１０（ａ）において、ブレードサーバ１２ａは、論理層で仮想マシンＶ１、Ｖ４、Ｖ６として扱われ、ブレードサーバ１２ｇは、論理層で仮想マシンＶ７として扱われる。なお、図１０（ａ）では、図を見やすくするために、ブレードサーバ１２ａと１２ｇの間に存在するブレードサーバ１２ｂ〜１２ｆの図示は省略している。
【０１１８】
図１０（ａ）において、例えば、仮想マシンＶ１、Ｖ４、Ｖ６の稼動量が増加することによってブレードサーバ１２ａにかかる負荷が、他のブレードサーバ１２ｄ〜１２ｇより高くなった場合について説明する。この場合も、命令生成部２は、図２に示す処理と同様の処理によって、ブレードサーバ１２ｂを過熱ブレードサーバとして抽出し、ブレードサーバ１２ｇを過疎ブレードサーバとして抽出し、命令を生成する。図２に示す処理の詳細について、第１の実施形態と同様の処理については、説明を省略する。
【０１１９】
図１１は、本実施形態における命令生成部２がステップＳ２で読み込むブレードサーバ１２ａの稼動データの例を示す図である。図１１に示す例において、図３に示すデータと同じ部分には、同じ符号を付し説明を省略する。図１１に示す稼動データ２０ｖ中の起動データ２２ｖには、仮想マシンＶ１、Ｖ４、Ｖ６それぞれにおけるＯＳ、アプリケーションサーバ、業務アプリケーションの起動の有無を表すデータ２２−ｅ〜２２−ｍが含まれる。また、構成データ２４ｖには、ブレードサーバ１台あたりの仮想マシン（ＶＭ）の割り当て可能数の上限を示すデータ２４−ｄおよびブレードサーバ１２ａに現在割り当てられている仮想マシン（ＶＭ）の数を表すデータ２４−ｅが含まれる。
【０１２０】
図１２は、本実施形態において命令生成部２がＳ３で読み込む配置ポリシーの例を示す図である。図１２に示す例において、図４に示すデータと同じ部分には、同じ符号を付し説明を省略する。図１２に示す配置ポリシーＰｖにおいて、過疎ブレードサーバ抽出条件ＫＳｖの構成データＣ２ｖには、仮想マシン（ＶＭ）の追加が可能であることが条件であることを示すデータ含まれている。
【０１２１】
ここで、命令生成部２が、図２のステップＳ４において、図１１に示す稼動データ２０ｖと図１２に示す配置ポリシーＰｖを用いて過熱ブレードサーバを抽出する処理の例について説明する。図１３は、命令生成部２が過熱ブレードサーバを抽出する処理の例を示すフローチャートである。命令生成部２は、まず、稼動データが配置ポリシーに示される条件を満たすブレードサーバを過熱ブレードサーバとして抽出する（ステップＳ４１ａ）。図１２に示す配置ポリシーＰｖが示す過熱ブレードサーバの負荷データＨ１の条件は、ＣＰＵ使用率が８０％以上であるので、ブレードサーバ１２ａ〜１２ｇのうち、ＣＰＵ使用率が８０％以上のブレードサーバが過熱ブレードサーバ候補として抽出される。
【０１２２】
次に、命令生成部２は、ステップＳ４１ａで抽出された候補の中から温度が最高の温度データを有するブレードサーバを過熱ブレードサーバとして抽出する（ステップＳ４２）。ここでは、一例としてブレードサーバ１２ａが過熱ブレードサーバとして抽出された場合を説明する。命令生成部２は、過熱ブレードサーバ１２ａに割り当てられた仮想マシンＶ１、Ｖ４、Ｖ６から、過疎ブレードサーバへ移動させる仮想マシンを抽出する（ステップＳ４３）。ここでは、配置ポリシーＰｖの起動データＤ１は、業務アプリケーションが起動していることが条件であることを示しているので、業務アプリケーションが起動している仮想マシンＶ６が抽出される。
【０１２３】
過熱ブレードサーバおよび移動する仮想マシンが抽出されると、命令生成部２は、仮想マシンを移動させる先の過疎ブレードサーバを抽出する（図２のステップＳ５）。図１４は命令生成部２が過疎ブレードサーバを抽出する処理の例を示すフローチャートである。図１４に示すように、命令生成部２は、初めに、全てのブレードサーバ１２ａ〜１２ｇを過疎ブレードサーバの候補として（ステップＳ５０１）、候補の中から温度が最低のブレードサーバを抽出する（ステップＳ５０２）。
【０１２４】
命令生成部２は、抽出したブレードサーバについて、配置ポリシーＰｖの構成データＣ２ｖの条件を満たすか否かを判断する（ステップＳ５０３）。配置ポリシーＰｖの構成データＣ２ｖの条件は、仮想マシンを追加可能であることを示しているので、命令生成部２は。抽出したブレードサーバの構成データ２４ｖを参照して、仮想マシンが追加可能か否かを判断する。例えば、命令生成部２は、図１１に示すような構成データ２４ｖに含まれるブレードサーバに割り当て可能な仮想マシンの数を示すデータ２４−ｄと、現在ブレードサーバに割り当てられている仮想マシンの数を示すデータ２４−ｅとを比較することにより、新たに仮想マシンが追加可能であるか否かを判断することができる。
【０１２５】
命令生成部２は、ステップＳ５０２で抽出したブレードサーバに新たな仮想マシンが追加可能であれば（ステップＳ５０３でＹｅｓの場合）、そのブレードサーバを過疎ブレードサーバとする（ステップＳ５０４）。抽出したブレードサーバに新たな仮想マシンが追加可能でない場合（ステップＳ５０３でＮｏの場合）、命令生成部２は、そのブレードサーバを候補から削除して（ステップＳ５０４）、削除後の候補の中から温度が最低のブレードサーバを抽出する（ステップＳ５０２）。上記ステップＳ５０１〜５０５の処理により、仮想マシンが追加可能なブレードサーバのうち、温度が最低のブレードサーバが過疎ブレードサーバとして抽出される。ここでは、一例としてブレードサーバ１２ｇが過疎ブレードサーバとして抽出されることにする。
【０１２６】
命令生成部２は、図１４に示す処理によって、過疎ブレードサーバを決めると、図２のステップＳ４で抽出した過熱ブレードサーバ１２ａの仮想マシンＶ６を、過疎ブレードサーバ１２ｇに移動させるための命令を生成する（図２のステップＳ６）。命令部８が、命令生成部２が生成した命令を、過熱ブレードサーバ１２ａおよび過疎ブレードサーバ１２ｇへ向けて出力することによって（図２のステップ７）、ブレードサーバ１２ａに割り当てられていた仮想マシンＶ６を、ブレードサーバ１２ｇに移動させることができる。図１０（ｂ）は、ブレードサーバ１２ａに割り当てられていた仮想マシンＶ６が、ブレードサーバ１２ｇに移動した状態を示す図である。ブレードサーバ１２ａで稼動していた仮想マシンＶ６がブレードサーバ１２ｇで稼動するようになっている。これにより、ブレードサーバ１２ａの放熱が緩和される。
【０１２７】
［第３の実施形態］
本発明の他の実施形態について、図面を参照しながら以下に説明する。なお、第１の実施形態において説明した構成と同様の機能を有する構成については、同じ参照符号を付記し、その説明を省略する。
【０１２８】
図１５は、本実施形態にかかる管理システム１０を含むＩＤＣの構成を示す機能ブロック図である。図１５に示す管理システム１０の構成は、第１の実施形態にかかる管理システム１（図１）がさらに、コストデータ記憶部７を備えた構成である。命令生成部２ａは、温度データ、稼動データ、配置ポリシーに加えて、さらにコストデータ記憶部７に記憶されたデータを用いて命令を生成する。また、命令生成部２ａは、空調装置１５ａ、１５ｂに対する命令も生成する。また、命令部８ａは、命令生成部２ａが生成した空調装置１５ａ、１５ｂに対する命令を、空調装置１５ａ、１５ｂに送信する。
【０１２９】
コストデータ記憶部７には、空調コストデータと、稼動コストデータが記憶されている。空調コストデータは、ブレードサーバ１２ａ〜１２ｇ内または周辺の温度を調整するための電力コストの算出に用いられるデータである。空調コストデータは、例えば、ブレードサーバ１２ａ〜１２ｇにおける温度を示す値を用いて空調コストを求めるための計算式または、そのような計算式に含まれる係数等を表すデータである。
【０１３０】
移動コストデータは、ブレードサーバ１２ａ〜１２ｇがそれぞれに割り当てられたソフトウエアの動作に従って稼動するための電力コストの算出に用いられるデータである。稼動コストデータは、例えば、ブレードサーバ１２ａ〜１２ｇの稼動量またはソフトウエアによる処理量を示す値を用いて稼動コストを求めるための計算式または、そのような計算式に含まれる係数等を表すデータである。
【０１３１】
次に、本実施形態における管理システム１０の動作の流れについて、図１６のフローチャートを参照しながら説明する。図１６において、ステップＳ１〜Ｓ５の処理は、図２に示すステップＳ１〜Ｓ５の処理と同様である。
【０１３２】
管理システム１０における命令生成部２ａは、過熱ブレードサーバの抽出（ステップＳ４）および過疎ブレードサーバの抽出（ステップＳ５）を行った後、ステップＳ１０１において、過熱ブレードサーバで動作するソフトウエアを過疎ブレードサーバに移動させた場合の稼動コストの変動を算出する。すなわち、ソフトウエアの移動前の稼動コストと移動後の稼動コストとの差を算出する。
【０１３３】
ラック１３のｉ番目に格納されたブレードサーバのソフトウエア移動前のＣＰＵ使用率をｘｉ、ｉ番目に格納されたブレードサーバのソフトウエア移動後のＣＰＵ使用率をｙｉとすると、移動前の稼動コストと、移動後の稼動コストは、例えば、下記（数１）により求めることができる。下記数１において、ＣＰＵ（ｘ）は、ＣＰＵ使用率ｘのブレードサーバの稼動コストを計算するための係数である。本実施形態におけるＣＰＵ（ｘ）は、ｘの値によって変化する。この係数は、例えば、稼動コストデータとしてコストデータ記憶部７に予め記憶されているデータを用いることができる。
【０１３４】
【数１】
2007179437.tif 000003
【０１３５】
なお、稼動コストを求める式は、上記（数１）に限られない。稼動を表す量として、ＣＰＵ使用率の他に、例えば、メモリ使用率、アクセス数、伝送データ量等を用いて稼動コストを算出することもできる。また、係数ＣＰＵ（ｘ）の替わりに、ＣＰＵ使用率ｘのブレードサーバの稼動コストを計算するための関数を用いることもできる。
【０１３６】
また、ステップＳ１０２において、管理システム１０における命令生成部２ａは、過熱ブレードサーバで動作するソフトウエアを過疎ブレードサーバで稼動させた場合の空調コストの変動を算出する。すなわち、ソフトウエアの移動前の空調コストと移動後の空調コストとの差を算出する。
【０１３７】
ラック１３のｉ番目に格納されたブレードサーバにおけるソフトウエア移動前の温度をｂＣｉ、ｉ番目に格納されたブレードサーバにおけるソフトウエア移動後の温度をａＣｉとすると、移動前の空調コストと、移動後の空調コストは、例えば、下記（数２）により求めることができる。
【０１３８】
【数２】
2007179437.tif 000004
【０１３９】
上記（数２）において、ＡｉｒＣｏｎｄ（Ｃ）は、ブレードサーバにおける温度Ｃから、空調コストを計算するための係数である。本実施形態におけるＡｉｒＣｏｎｄ（Ｃ）は、Ｃの値によって変化する。この係数は、例えば、空調コストデータとしてコストデータ記憶部７に予め記憶されているデータを用いることができる。また、ブレードサーバにおけるソフトウエア移動後の温度ａＣｉとして、予め複数のブレードサーバのおける温度分布とブレードサーバの稼動状況との関係をシミュレーションすることにより求められたデータを用いることができる。また、過去のブレードサーバの稼動実績に基づいて記憶された温度分布のデータをａＣｉとして用いることもできる。これらのデータは、空調コストデータとして、コストデータ記憶部７に予め記憶される。なお、上記（数２）は一例であり、空調コストを求める式は上記（数２）に限られない。
【０１４０】
命令生成部２ａは、ステップＳ１０１で求められた稼動コスト変動と、ステップＳ１０２で求められた空調コスト変動とを比較する。空調コスト変動の方が大きければ（ステップＳ１０３でＮｏ）、命令生成部２ａは、過熱ブレードサーバで動作するソフトウエアを過疎ブレードサーバに移動させる命令を生成し、（ステップＳ６）命令部８ａが命令を送信する（ステップＳ７）。ステップＳ６とステップＳ７の処理は、図２に示す処理と同様である。
【０１４１】
稼動コスト変動の方が大きければ（ステップＳ１０３でＹｅｓ）、命令生成部２ａは、空調装置１５ａ、１５ｂに対して、空調を強化させる命令を生成する（ステップＳ１０４）。命令部８ａは、空調装置１５ａ、１５ｂに命令を送信する（ステップＳ１０５）。
【０１４２】
図１６に示した処理により、管理システム１０は、電力コストが安くなるように、ブレードサーバ１２ａ〜１２ｇ上のソフトウエアの再割り当てまたは、空調装置１５ａ、１５ｂの制御を行うことができる。すなわち、管理システム１０は、冷房の強化にかかる電力コストの方が低い場合に冷房を強化し、ソフトウエアをブレードサーバ間で移動させる電力コストの方が低い場合に、ソフトウエアをブレードサーバ間で移動させることができる。
【０１４３】
なお、コストデータを用いて、電力コストが低くなるように、ブレードサーバで動作するソフトウエアの再割り当てまたは空調装置の制御を行う処理は、図１６に示す処理に限られない。
【０１４４】
上記の第１〜３の実施形態において、ＩＤＣを構成する複数のコンピュータを管理する管理システムについて説明したが、本発明にかかる管理システムは、例えば、サーバファームおよびアプリケーションサービスプロバイダ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ  Ｃｅｎｔｅｒ）等の複数のコンピュータが集中して管理されるコンピュータに適用できる。また、コンピュータセンタに設けられる複数のコンピュータは、それぞれ筐体を持って互いに独立した構成でもよいし、複数のコンピュータが同一基板上に配置された構成でもよい。
【０１４５】
また、上記第１〜３実施形態では、ハードウエアを構成するコンピュータがブレードサーバである場合について説明したが、コンピュータはブレードサーバに限られない。例えば、タワー型のサーバ、ラックマウント型のサーバまたはパーソナルコンピュータ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等も本発明にかかる管理システムの管理対象となるコンピュータに含まれる。
【産業上の利用可能性】
【０１４６】
本発明は、例えば、ＩＤＣ等を構成する複数のコンピュータを冷却するためのエネルギーを節約することができる管理システムとして有用である。
【図面の簡単な説明】
【０１４７】
【図１】本発明の第１の実施形態にかかる管理システムの構成を示す機能ブロック図
【図２】第１の実施形態にかかる管理システムの動作を示すフローチャート
【図３】第１の実施形態における稼動データの構造の一例
【図４】第１の実施形態における配置ポリシーのデータ構造の例
【図５】第１の実施形態にかかる配置ポリシーの具体的なデータの例
【図６】第１の実施形態における過熱ブレードサーバ抽出処理を示すフローチャート
【図７】第１の実施形態における過疎ブレードサーバ抽出処理を示すフローチャート
【図８】（ａ）は、図１に示すブレードサーバの温度分布を示す棒グラフである。（ｂ）は、図１に示すブレードサーバにおける業務アプリケーションの起動の有無を示す表である。（ｃ）は、図１に示すブレードサーバにおける温度分布を示す棒グラフである。
【図９】（ａ）は、第２の実施形態におけるブレードサーバおよび仮想マシンの概念を示す図である。（ｂ）は、（ａ）に示すブレードサーバおよび仮想マシンのソフトウエア移動後の状態を示す図である。
【図１０】（ａ）は、第２の実施形態におけるブレードサーバおよび仮想マシンの他の概念を示す図である。（ｂ）は、（ａ）に示すブレードサーバおよび仮想マシンのソフトウエア移動後の状態を示す図である。
【図１１】第２の実施形態における稼動データの例
【図１２】第２の実施形態における配置ポリシーの例
【図１３】第２の実施形態における過熱ブレードサーバ抽出処理のフローチャート
【図１４】第２の実施形態における過疎ブレードサーバ抽出処理のフローチャート
【図１５】第３の実施形態にかかる管理システムを含むＩＤＣの構成を示す機能ブロック図
【図１６】第３の実施形態にかかる管理システムの動作を示すフローチャート
【符号の説明】
【０１４８】
１        管理システム
２、２ａ        命令生成部
３      配置先選定データ記憶部
６      配置ポリシー記憶部
７      コストデータ記憶部
８、８ａ        命令部
１０    管理システム
１１    温度センサ
１２ａ〜１２ｇ  ブレードサーバ（コンピュータ）
１３    ラック
１５ａ、１５ｂ  空調装置
２０、２０ｖ    稼動データ
２１    負荷データ
２２、２２ｖ    起動データ
２３    ビジネスデータ
２４    構成データ
Ｂ１、Ｂ２      ビジネスデータ
Ｃ１、Ｃ２      構成データ
Ｄ１、Ｄ２      起動データ
Ｈ１、Ｈ２      負荷データ
Ｋ１、Ｋ２      稼動データ
ＫＡ、ＫＢ      仮想マシン
ＫＭ    過熱ブレードサーバ抽出条件
ＫＳ    過疎ブレードサーバ抽出条件
ＭＰ    監視ポリシー
Ｐ、Ｐｖ        配置ポリシー
【図１】
2007179437.tif 000005
【図２】
2007179437.tif 000006
【図３】
2007179437.tif 000007
【図４】
2007179437.tif 000008
【図５】
2007179437.tif 000009
【図６】
2007179437.tif 000010
【図７】
2007179437.tif 000011
【図８】
2007179437.tif 000012
【図９】
2007179437.tif 000013
【図１０】
2007179437.tif 000014
【図１１】
2007179437.tif 000015
【図１２】
2007179437.tif 000016
【図１３】
2007179437.tif 000017
【図１４】
2007179437.tif 000018
【図１５】
2007179437.tif 000019
【図１６】
2007179437.tif 000020