(57)【特許請求の範囲】
【請求項１】
複数の構成要素を含む複数の電気機器と通信可能なコンピュータを、
前記複数の電気機器が同一の電源タップから電力の供給を受けており、前記複数の電気機器の少なくとも１つに、ネットワークを介したアクセス要求に応じてデータの入出力を行うディスクノードが含まれている場合における、前記複数の電気機器と前記電源タップとの対応関係を示す接続機器情報を記憶する接続機器情報記憶手段、
前記複数の電気機器それぞれ内の前記複数の構成要素それぞれから、構成要素に応じて異なる測定方法に従った測定値を取得する取得手段、
取得した前記測定値に基づいて、前記複数の電気機器内の前記複数の構成要素それぞれの消費電力を推定し、推定した前記複数の構成要素それぞれの消費電力を合計して、前記複数の電気機器の消費電力を推定する消費電力推定手段、
前記接続機器情報を参照し、前記消費電力推定手段で求められた前記複数の電気機器の消費電力の合計が、予め設定された閾値より大きい場合、前記ディスクノードへの単位時間当たりのアクセス数を所定値以下に制限するアクセス制限手段、
として機能させる消費電力監視プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電気機器の消費電力を監視するための消費電力監視プログラムに関する。
【背景技術】
【０００２】
大規模なコンピュータシステムを導入する場合、個々の電気機器に対して安定した電力を供給するだけの電源設備が必要となる。各電気機器は、コンピュータシステムを設置するビルなどの建物に設けられた配電網に接続することで、電力の供給を受けることができる。各電気機器を配電網に接続する場合、各電気機器の電源ケーブル先端のプラグが、配電網に繋がっている電源タップに設けられた差し込み口（電源コンセント）に差し込まれる。
【０００３】
電源タップには複数の差し込み口が設けられており、複数の電気機器を接続することができる。ただし、電源タップには、定格電力（連続して供給可能な電力の最大値）が定められている。そのため、各電源タップに接続する電気機器の消費電力の合計が定格電力を超えないようにする必要がある。一般的には、１つの電源タップに接続するサーバなどの電気機器数は、各電気機器の定格消費電力を合計して何台接続出来るのかを決めている。
【０００４】
ただし、サーバなどの電気機器は、常に定格消費電力を消費しているわけではない。それにも拘わらず、すべての電気機器が定格消費電力で同時に動作していることを想定して電源設備を準備すると、過剰な電源設備が必要となる。そこで、電源タップに接続された複数の電気機器が同時に消費する電力が、その電源タップの定格電力を超えないように制御する技術が必要となる。すなわち各電気機器は運用時に定常的に定格消費電力を使用することは稀であるため、最大消費電力を制御することで接続可能機器数を増やすことが可能となる。
【０００５】
そこで、センサノードが最大需要電力を予測すると共に、予測に基づいて電力警戒情報を出力し、その電力警戒情報を受け取った制御ノードが消費電力を制御する技術が考えられている（特許文献１参照）。このような技術を用いれば、各電気機器の定格消費電力の合算値が電源タップの最大定格電力を超えるような複数の電気機器を、その電源タップに接続することが可能となる。
【０００６】
また、自動車などの車両に搭載された電気負荷の動作／非動作を指示する情報と、各電気負荷の消費電流値を示す消費電流値データテーブルとから、消費電流値を予測する技術が考えられている（特許文献２参照）。この技術によれば、各電気機器の動作／非動作を検知するだけで、消費電流値の予測が可能となる。
【特許文献１】特開平８−１８２１９４号公報
【特許文献２】特開２００３−２９１７５３号公報（段落［００４８］、［００４９］、図３参照）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、従来技術を大規模なコンピュータシステムにおける電源タップごとの消費電力監視に適用するのは、現実的ではない。例えば、特許文献１のような技術を電源タップごとに適用する場合、すべての電源タップに対して電力計を設ける必要があり、コストの増加を招く。しかも、コンピュータシステムを構成する各コンピュータは、データの処理状況に応じて消費電力が動的に変動する。消費電力が過大となったとき、電力消費量が少ないコンピュータの負荷を軽減しても消費電力削減効果は見込めない。すなわち、合計消費電力が電源タップの定格消費電力に達した場合、そのとき消費電力が高いコンピュータを検出し、そのコンピュータの負荷を軽減する必要がある。それには、電源タップの差し込み口ごとに電力計を設けることとなり、さらなる設備のコストアップに繋がる。
【０００８】
なお、特許文献２の技術は電力計を用いていないが、電気負荷の消費電流値が一定であるものとして、全体の消費電流値を予測している。そのため、コンピュータシステムのように、各機器が常時動作しており動作状況に応じて消費電力が動的に変動するような電気機器を用いたシステムへの適用は困難である。
【０００９】
本発明はこのような点に鑑みてなされたものであり、消費電力が時間変動する電気機器それぞれに対して電力計を設置することなく各電気機器の消費電力を随時推定できる消費電力監視プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、複数の構成要素を含む電気機器と通信可能なコンピュータを、前記複数の構成要素それぞれから前記構成要素に応じて異なる測定方法に従った測定値を取得する取得手段、取得した前記測定値に基づいて前記複数の構成要素それぞれの消費電力を推定し、推定した前記複数の構成要素それぞれの消費電力を合計して、前記電気機器の消費電力を推定する消費電力推定手段、として機能させる消費電力監視プログラムが提供される。
【００１２】
また、上記課題を解決するために、上記消費電力監視プログラムを実行するコンピュータと同様の機能を有する消費電力監視装置が提供される。さらに、上記課題を解決するために上記消費電力管理プログラムをコンピュータに実行させることによりコンピュータで実行される処理と同様の処理を行う消費電力監視方法が提供される。
【発明の効果】
【００１３】
本発明では、電気機器から取得した測定値に基づいて、消費電力が時間変動する電気機器の消費電力を随時推定することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本実施の形態を図面を参照して説明する。
図１は、実施の形態の概要を示す図である。消費電力監視装置１は、消費電力見積もり情報記憶手段１ａ、負荷情報収集手段１ｂ、消費電力推定手段１ｃ、および負荷制御手段１ｄを有する。
【００１５】
消費電力見積もり情報記憶手段１ａは、電気機器２の処理負荷に応じた消費電力を示す消費電力見積もり情報を記憶する。例えば、消費電力見積もり情報記憶手段１ａは、電気機器２の代表的な処理負荷に関する情報（電気機器２がコンピュータであれば、ＣＰＵ使用率）に応じて消費電力を消費電力見積もり情報として記憶する。また、消費電力見積もり情報記憶手段１ａは、電気機器２を構成する構成要素ごとに、処理負荷に応じた消費電力を示す消費電力見積もり情報を記憶することもできる。
【００１６】
負荷情報収集手段１ｂは、コンピュータにネットワークを介して接続された電気機器２から、電気機器２の処理負荷を示す負荷情報を取得する。例えば、負荷情報収集手段１ｂは、電気機器２の代表的な処理負荷に関する負荷情報を取得する。また、負荷情報収集手段１ｂは、電気機器２から、電気機器２を構成する構成要素それぞれの処理負荷を示す負荷情報を取得することもできる。
【００１７】
消費電力推定手段１ｃは、消費電力見積もり情報記憶手段１ａを参照し、負荷情報収集手段１ｂが収集した負荷情報に基づいて、電気機器２の消費電力を推定する。例えば、消費電力推定手段１ｃは、電気機器２の代表的な処理負荷に関する負荷情報が収集された場合、代表的な処理負荷に応じた消費電力を示す消費電力見積もり情報に基づいて、消費電力を推定する。また、消費電力推定手段１ｃは、電気機器２を構成する構成要素それぞれの負荷情報が収集された場合、構成要素ごとの負荷情報に基づいて、構成要素ごとの消費電力を判断し、構成要素ごとの消費電力を合計して電気機器２の消費電力とする。
【００１８】
負荷制御手段１ｄは、電気機器２の消費電力が予め設定された閾値より大きい場合、電気機器２の処理負荷を低減させる。例えば、電気機器２がネットワークを介したアクセス要求に応じてデータの入出力を行うディスクノードであれば、負荷制御手段１ｄは、電気機器２の消費電力が予め設定された閾値より大きい場合、電気機器２への単位時間当たりのアクセス数を所定値以下に制限する。
【００１９】
このような消費電力監視装置１によれば、電気機器２から負荷情報が取得される。そして、電気機器２の処理負荷に応じた消費電力を示す消費電力見積もり情報に基づいて、負荷情報に応じた電気機器２の消費電力が推定される。その結果、電気機器２に対して電力計を設置しなくても、消費電力が時間変動する電気機器２の消費電力を随時推定することができる。
【００２０】
しかも、電気機器２の消費電力が過大となると、電気機器２の負荷を軽減することにより、電力消費を低減させることができる。その結果、電力計のような特別な機器を設置しなくても、ネットワークに接続された電気機器２の消費電力を、所定値以下に抑制してシステムの運用することができる。
【００２１】
このような技術を基礎とすることで、電源タップの差し込み口ごとの消費電力管理が容易となる。そこで、複数の差し込み口を有する電源タップを介してコンピュータなどの機器に電力が供給されるコンピュータシステムにおいて、電源タップ単位の消費電力を管理する場合を例に採り、実施の形態を具体的に説明する。
【００２２】
［第１の実施の形態］
図２は、本実施の形態のシステム構成例を示す図である。消費電力監視サーバ１００には、ネットワーク１０を介して複数のコンピュータ２００，３００，４００，５００と複数の電源タップ２０，３０とが接続されている。コンピュータ２００，３００，４００，５００は、ユーザからの操作入力や、ネットワーク１０を介して入力される処理要求に応じて、各種データ処理を実行する。
【００２３】
コンピュータ２００，３００には、それぞれＲＡＩＤ（Redundant Array of Independent Disks ）装置２１０，３１０が接続されている。ＲＡＩＤ装置２１０，３１０には、複数のハードディスク装置（ＨＤＤ）が搭載されており、ＲＡＩＤ５（パリティ付ストライピング）などの技術を用いた高信頼性のデータ記憶機能を提供する。
【００２４】
電源タップ２０，３０は、電源設備４０に接続されている。電源設備４０は、電源タップ２０，３０に対して一定の電圧の電力を供給する。電源タップ２０，３０には、コンピュータ２００，３００，４００，５００やＲＡＩＤ装置２１０，３１０の電源プラグを差し込むための差し込み口（電源コンセント）が複数設けられている。電源タップ２０には、２台のコンピュータ２００，３００と２台のＲＡＩＤ装置２１０，３１０とが接続されている。電源タップ３０には、２台のコンピュータ４００，５００が接続されている。また、電源タップ２０，３０は、ネットワーク１０経由で入力される指示に基づいて、任意の電源コンセントへの電源供給を遮断することができる。
【００２５】
消費電力監視サーバ１００は、各コンピュータ２００，３００，４００，５００の負荷情報に基づいて消費電力を推定する。そして、消費電力監視サーバ１００は、電源タップ２０，３０ごとに、接続されている電気機器すべての消費電力を推定し、消費電力が過大となる場合、接続されている電気機器の処理負荷を低減させる。また、消費電力監視サーバ１００は、いずれかのコンピュータの障害を検出した場合、ネットワーク１０経由でそのコンピュータの機能を強制的に停止する。
【００２６】
図３は、本実施の形態に用いるコンピュータのハードウェア構成例を示す図である。消費電力監視サーバ１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ（Random Access Memory）１０２、ハードディスクドライブ（ＨＤＤ:Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５、および通信インタフェース１０６が接続されている。
【００２７】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳやアプリケーションプログラムが格納される。
【００２８】
グラフィック処理装置１０４には、モニタ１１が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ１１の画面に表示させる。入力インタフェース１０５には、キーボード１２とマウス１３とが接続されている。入力インタフェース１０５は、キーボード１２やマウス１３から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。
【００２９】
通信インタフェース１０６は、ネットワーク１０に接続されている。通信インタフェース１０６は、ネットワーク１０を介して、他のコンピュータとの間でデータの送受信を行う。
【００３０】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。なお、図３には消費電力監視サーバ１００のハードウェア構成のみを示しているが、コンピュータ２００，３００，４００，５００も同様のハードウェア構成で実現することができる。
【００３１】
図４は、電源タップの内部構造を示す図である。電源タップ２０には、複数の差し込み口２１ａ，２１ｂ，２１ｃ，２１ｄが設けられている。各差し込み口２１ａ，２１ｂ，２１ｃ，２１ｄは、それぞれ対応するスイッチ２２ａ，２２ｂ，２２ｃ，２２ｄを介して電源設備４０に接続されている。スイッチ２２ａ，２２ｂ，２２ｃ，２２ｄは、制御回路２４からの制御信号に従って、差し込み口２１ａ，２１ｂ，２１ｃ，２１ｄへの電源の供給／遮断を切り換える。
【００３２】
通信インタフェース２３は、ネットワーク１０を介して消費電力監視サーバ１００との間でデータ通信を行う。通信インタフェース２３は、消費電力監視サーバ１００から送られた処理要求を制御回路２４に渡す。
【００３３】
制御回路２４は、消費電力監視サーバ１００から送られた指示に応じてスイッチ２２ａ，２２ｂ，２２ｃ，２２ｄのオン／オフを制御する。具体的には、制御回路２４は、消費電力監視サーバ１００から、差し込み口の番号を指定した電源遮断指示を受け取ると、指定された差し込み口に対応するスイッチに対して、電源遮断を示す信号を出力する。この信号を受け取ったスイッチは、差し込み口への電源の供給を遮断する。
【００３４】
このような内部構造の電源タップ２０を用いることで、障害が発生したコンピュータへの電源の供給を強制的に遮断できる。なお、図４には、電源タップ２０の内部構造を示したが、他の電源タップ３０も同様の内部構造を有している。
【００３５】
図５は、消費電力を制御するための機能を示すブロック図である。消費電力監視サーバ１００は、消費電力見積もり情報記憶部１１０、接続機器情報記憶部１２０、最大消費電力情報記憶部１３０、負荷情報収集部１４０、消費電力推定部１５０、アクセス制限指示部１６０、障害監視部１７０、および強制停止制御部１８０を有している。
【００３６】
消費電力見積もり情報記憶部１１０は、各コンピュータ２００，３００，４００，５００の負荷情報に基づいて消費電力を推定するために必要な情報を記憶する記憶機能である。例えば、ＨＤＤ１０３の記憶領域の一部が消費電力見積もり情報記憶部１１０として使用される。消費電力見積もり情報記憶部１１０には、ＣＰＵ消費電力換算表１１１、内蔵ディスク消費電力換算表１１２、ＲＡＩＤ装置消費電力換算表１１３、およびＮＩＣ（Network Interface Card）消費電力換算表１１４が記憶されている。
【００３７】
ＣＰＵ消費電力換算表１１１には、ＣＰＵやＲＡＭの負荷に応じた消費電力の換算値が設定されている。内蔵ディスク消費電力換算表１１２には、コンピュータの内蔵ディスクへのアクセス頻度に応じた消費電力の換算値が設定されている。ＲＡＩＤ装置消費電力換算表１１３には、コンピュータに接続されたＲＡＩＤ装置へのアクセス頻度に応じた消費電力の換算値が設定されている。ＮＩＣ消費電力換算表１１４には、コンピュータ内の通信インタフェースにおける通信量に応じた消費電力の換算値が設定されている。
【００３８】
接続機器情報記憶部１２０には、電源タップ２０，３０に接続された機器を示す情報を記憶する記憶機能である。例えば、ＨＤＤ１０３の記憶領域の一部が、接続機器情報記憶部１２０として使用される。
【００３９】
最大消費電力情報記憶部１３０は、各電源タップ２０，３０の最大消費電力を示す情報を記憶する記憶機能である。最大消費電力は、電源タップ２０，３０から供給される電力を抑制するか否か（コンピュータの処理負荷を軽減するか否か）の判断基準となる閾値である。例えば、ＨＤＤ１０３の記憶領域の一部が最大消費電力情報記憶部１３０として使用される。
【００４０】
負荷情報収集部１４０は、コンピュータ２００，３００，４００，５００から負荷情報を収集する。負荷情報には、ＣＰＵの使用率、内蔵ディスクへの単位時間当たりのアクセス数、ＲＡＩＤ装置への単位時間当たりのアクセス数、およびネットワーク１０を介した通信の単位時間当たりのデータ量が含まれる。負荷情報収集部１４０は、収集した負荷情報を消費電力推定部１５０に渡す。また、負荷情報収集部１４０は、コンピュータ２００，３００，４００，５００から負荷情報を取得すると、取得した負荷情報を障害監視部１７０に渡す。
【００４１】
消費電力推定部１５０は、負荷情報収集部１４０から受け取った負荷情報に基づいて、電源タップごとの消費電力を推定する。具体的には、消費電力推定部１５０は、消費電力見積もり情報記憶部１１０に格納されている情報を参照し、各コンピュータの負荷情報に基づいて、コンピュータの構成要素ごとの消費電力や、ＲＡＩＤ装置の消費電力を推定する。そして、消費電力推定部１５０は、コンピュータ内の各要素の消費電力の合計を、そのコンピュータの消費電力と推定する。そして、消費電力推定部１５０は、接続機器情報記憶部１２０を参照し、各電源タップに接続されている機器を判断し、電源タップごとの消費電力を推定する。
【００４２】
電源タップごとの消費電力を推定した後、消費電力推定部１５０は、最大消費電力情報記憶部１３０を参照し、電源タップごとの消費電力が、最大消費電力を超えているか否かを判断する。そして、消費電力推定部１５０は、消費電力が最大消費電力を超えている電源タップがある場合、その電源タップに接続されたコンピュータの識別番号をアクセス制限指示部１６０に通知する。
【００４３】
アクセス制限指示部１６０は、消費電力推定部１５０からコンピュータの識別番号が通知されると、該当するコンピュータに対してアクセス制限要求を送信する。
障害監視部１７０は、各コンピュータ２００，３００，４００，５００が正常に動作しているか否かを確認する。例えば、負荷情報が定期的に受信できているか否かによって、動作の有無を判断することができる。障害監視部１７０は、動作していないコンピュータを検出した場合、そのコンピュータの識別情報を強制停止制御部１８０に渡す。
【００４４】
強制停止制御部１８０は、障害監視部１７０からコンピュータの識別情報を受け取ると、該当するコンピュータを強制的に停止させる。具体的には、強制停止制御部１８０は、強制停止対象のコンピュータに対してリモートアクセスを行いシャットダウンの指示を送信する。強制停止制御部１８０は、シャットダウンが正常に完了できない場合、接続機器情報記憶部１２０を参照し、強制停止対象のコンピュータが接続されている電源タップと、接続されている差し込み口の番号を取得する。そして、強制停止制御部１８０は、強制停止対象のコンピュータが接続されている電源タップに対して、該当するコンピュータが接続された差し込み口の電源供給の遮断を指示する。
【００４５】
コンピュータ２００は、負荷情報管理部２２０、アクセス制御部２３０、および遠隔制御受付部２４０を有している。
負荷情報管理部２２０は、コンピュータ２００の負荷情報を定期的に消費電力監視サーバ１００に送信する。なお、コンピュータ２００の負荷情報は、ＯＳに実装されているシステム管理機能を介して取得できる。
【００４６】
アクセス制限部２３０は、消費電力監視サーバ１００からアクセス制限要求を受け取ると、ネットワーク１０を介した単位時間当たりのアクセス数を制限する。具体的には、アクセス制限部２３０が管理するメモリには、アクセス制限時の単位時間当たりのアクセス許容数が予め記憶されている。そして、アクセス制限部２３０は、アクセス制限要求に応答して、単位時間当たりに処理するアクセス数をアクセス許容数までに制限する。すなわち、アクセス制限部２３０は、アクセス制限の指示を受けた場合、単位時間内で、ネットワーク１０を介したアクセス要求がアクセス許容数に達すると、その単位時間内はネットワーク１０を介したアクセス要求に応じた処理を停止する。そして、単位時間が経過すると、ネットワーク１０を介したアクセス要求に応じた処理を再開する。
【００４７】
遠隔制御受付部２４０は、ネットワーク１０経由での遠隔操作を受け付ける。例えば、遠隔制御受付部２４０は、消費電力監視サーバ１００からのネットワーク１０を介したリモートログインを受け付ける。そして、消費電力監視サーバ１００からシャットダウンの指示が送られると、遠隔制御受付部２４０がシャットダウンコマンドを実行する。
【００４８】
次に、消費電力監視サーバ１００に予め格納されるデータの内容について具体的に説明する。
まず、消費電力見積もり情報の算出方法について説明する。本実施の形態では、消費電力を見積もるために、コンピュータ内の電力消費要素をグループ分けしている。
【００４９】
図６は、消費電力見積もりのための要素グループを示す図である。コンピュータ２００内で電力を消費する要素のうち、ＣＰＵ２０１とＲＡＭ２０２，２０３とを１つのグループ（グループＡ）にまとめる。また、ＨＤＤ２０４，２０５を１つのグループ（グループＢ）にまとめる。そして、通信インタフェース（ＮＩＣ）を１つのグループ（グループＣ）とする。
【００５０】
ここで、コンピュータ２００の消費電力は、どのようなアプリケーションソフトウェア（以下、単にアプリケーションと呼ぶ）を実行しているのかによって異なってくる。例えば、ＨＤＤ２０４，２０５に対するデータの入出力が少なく、ＣＰＵ２０１における演算処理を主に行うアプリケーション（アプリケーションａ）の場合、主にグループＡの消費電力が増加する。ＨＤＤ２０４，２０５に対するデータの入出力が頻繁に発生するアプリケーション（アプリケーションｂ）の場合、主にグループＢの消費電力が増加する。ネットワーク１０を介した通信を大量に行うアプリケーション（アプリケーションｃ）の場合、主にグループＣの消費電力が増加する。
【００５１】
そこで、各グループがそれぞれどの程度使われているのかを把握することで、消費電力を見積もることができる。グループＡの消費電力は、ＣＰＵ使用率に依存するものと考えられる。グループＢの消費電力は、単位時間（１秒）当たりのディスクアクセス数（disk iops）に依存するものと考えられる。グループＣの消費電力は、単位時間（１秒）当たりのビット単位の通信データ量（network bps）に依存するものと考えられる。
【００５２】
コンピュータ２００の動作中は、各グループ内の要素が混在して使用される。従って、グループＡ，Ｂ，Ｃそれぞれの消費電力の合計値がコンピュータ２００の消費電力となる。
【００５３】
そこで、消費電力見積もり情報を作成するために予めベンチマークを行う。ベンチマークは、それぞれのグループへの消費電力の影響度が高いアプリケーションをコンピュータ２００で実行し、その際のコンピュータ２００の消費電力を電力計で計測する。
【００５４】
まず、ユーザは、グループＡに含まれるＣＰＵ２０１とＲＡＭ２０２，２０３とを主に使用するアプリケーションａを用いてベンチマークを行う。すなわち、ユーザは、アプリケーションａをコンピュータ２００に実行させ、ＣＰＵ使用率をＯＳから取得すると共に、コンピュータ２００の消費電力を計測する。このときＣＰＵ使用率を徐々に上げることで、ＣＰＵ使用率に応じた消費電力を採取する。
【００５５】
図７は、ＣＰＵ使用率と消費電力との関係を示すグラフである。このグラフは、横軸にＣＰＵ使用率をとり、縦軸に消費電力をとっている。このグラフでは、ＣＰＵ使用率に応じたコンピュータ２００の消費電力を実線で示している。
【００５６】
アプリケーションａを用いたベンチマークによってユーザがこのようなグラフを作成することで、ＣＰＵ使用率に応じたグループＡの消費電力が推定できる。なお、実際には、グループＡに含まれる要素以外の要素（例えば、コンピュータ２００内のパワーサプライユニット）による消費電力も、図７で示される消費電力に含まれている。すなわち、ＣＰＵ２０１を主に使用するアプリケーションａを用いたベンチマークを行うことで、ＨＤＤ２０４，２０５とＮＩＣ２０６との影響を除いたＣＰＵ使用率と消費電力との関係を知ることができる。
【００５７】
次に、ユーザは、グループＢに含まれるＨＤＤ２０４，２０５に対するデータの入出力を頻繁に行うアプリケーションｂを用いたベンチマークを行う。すなわち、ユーザは、アプリケーションｂをコンピュータ２００に実行させ、単位時間当たりのディスクアクセス数、ＣＰＵ使用率、およびコンピュータ２００の消費電力を計測する。このとき、単位時間当たりのディスクアクセス数を徐々に上げることで、単位時間当たりのディスクアクセス数に応じたＣＰＵ使用率と消費電力とを採取する。
【００５８】
図８は、単位時間当たりのディスクアクセス数と消費電力との関係を示すグラフである。このグラフは、横軸に単位時間当たりのディスクアクセス数（disk iops）をとり、縦軸に消費電力をとっている。
【００５９】
このグラフにおいて、単位時間当たりのディスクアクセス数に応じたコンピュータ２００の消費電力を実線で示している。また、ユーザは、図７に示すグラフに示すＣＰＵ使用率と消費電力との関係を利用し、単位時間当たりのディスクアクセス数に応じたＣＰＵ使用率から、単位時間当たりのディスクアクセス数に応じたグループＡの消費電力を求める。そして、図８のグラフでは、単位時間当たりのディスクアクセス数に応じたグループＡの消費電力を破線で示している。
【００６０】
アプリケーションｂを用いたベンチマークによってユーザがこのようなグラフを作成することで、単位時間当たりのディスクアクセス数に応じたグループＢの消費電力が推定できる。すなわち、グループＢの消費電力は、コンピュータ２００の消費電力からグループＡの消費電力を減算することで求められる。図８のグラフであれば、単位時間当たりのディスクアクセス数に応じた実線と破線との差が、グループＢの消費電力を表している。
【００６１】
次に、ユーザは、グループＣに含まれるＮＩＣ２０６を介したデータ通信を大量に行うアプリケーションｃを用いたベンチマークを行う。すなわち、ユーザは、アプリケーションｃをコンピュータ２００に実行させ、単位時間当たりの通信データ量、ＣＰＵ使用率、およびコンピュータ２００の消費電力を計測する。このとき、単位時間当たりの通信データ量を徐々に上げることで、単位時間当たりの通信データ量に応じたＣＰＵ使用率と消費電力とを採取する。
【００６２】
図９は、単位時間当たりの通信データ量と消費電力との関係を示すグラフである。このグラフは、横軸に単位時間当たりの通信データ量（network bps）をとり、縦軸に消費電力をとっている。
【００６３】
このグラフにおいて、単位時間当たりの通信データ量に応じたコンピュータ２００の消費電力を実線で示している。また、ユーザは、図７に示すグラフに示すＣＰＵ使用率と消費電力との関係を利用し、単位時間当たりの通信データ量に応じたＣＰＵ使用率から、単位時間当たりの通信データ量に応じたグループＡの消費電力を求める。そして、図９のグラフでは、単位時間当たりの通信データ量に応じたグループＡの消費電力を破線で示している。
【００６４】
アプリケーションｃを用いたベンチマークによってユーザがこのようなグラフを作成することで、単位時間当たりの通信データ量に応じたグループＣの消費電力が推定できる。すなわち、グループＣの消費電力は、コンピュータ２００の消費電力からグループＡの消費電力を減算することで求められる。図９のグラフであれば、単位時間当たりの通信データ量に応じた実線と破線との差が、グループＣの消費電力を表している。
【００６５】
次に、ユーザは、ＲＡＩＤ装置２１０へのＩＯアクセスを行うアプリケーションｄを用いたベンチマークを行う。すなわち、ユーザは、アプリケーションｄをコンピュータ２００に実行させ、単位時間（１秒）当たりのアクセス数と、ＲＡＩＤ装置２１０の消費電力を計測する。このとき、単位時間当たりのディスクアクセス数を徐々に上げることで、単位時間当たりのディスクアクセス数に応じた消費電力を採取する。
【００６６】
図１０は、単位時間当たりのＲＡＩＤ装置へのアクセス数と消費電力との関係を示すグラフである。このグラフは、横軸に単位時間当たりのＲＡＩＤ装置２１０へのアクセス数（ＲＡＩＤ装置へのiops）をとり、縦軸に消費電力をとっている。このグラフにおいて、単位時間当たりのＲＡＩＤ装置２１０へのアクセス数に応じたコンピュータ２００の消費電力を実線で示している。
【００６７】
図７〜１０に示したベンチマークの結果に基づいて、ユーザは、消費電力見積もり情報を作成する。すなわち、ＣＰＵ消費電力換算表１１１、内蔵ディスク消費電力換算表１１２、ＲＡＩＤ装置消費電力換算表１１３、およびＮＩＣ消費電力換算表１１４を作成する。
【００６８】
図１１は、ＣＰＵ消費電力換算表を示す図である。ＣＰＵ消費電力換算表１１１には、ＣＰＵ使用率と消費電力の欄が設けられている。ＣＰＵ使用率の欄には、ＣＰＵ使用率（単位：％）が設定される。消費電力の欄には、対応するＣＰＵ使用率のときのＣＰＵ２０１などを含むグループＡの消費電力（単位：ワット）が設定される。このような対応関係は、図７のグラフを参照して設定することができる。
【００６９】
図１２は、内蔵ディスク消費電力換算表を示す図である。内蔵ディスク消費電力換算表１１２には、単位時間当たりのアクセス数と消費電力の欄が設けられている。単位時間当たりのアクセス数の欄には、ＨＤＤ２０４，２０５に対する単位時間当たりのアクセス数（disk iops）が設定される。消費電力の欄には、対応する単位時間当たりのアクセス数のときのＨＤＤ２０４，２０５を含むグループＢの消費電力（単位：ワット）が設定される。このような対応関係は、図８のグラフを参照して設定することができる。
【００７０】
図１３は、ＲＡＩＤ装置消費電力換算表を示す図である。ＲＡＩＤ装置消費電力換算表１１３には、単位時間当たりのアクセス数と消費電力の欄が設けられている。単位時間当たりのアクセス数の欄には、ＲＡＩＤ装置２１０に対する単位時間当たりのアクセス数（ＲＡＩＤ装置のiops）が設定される。消費電力の欄には、対応する単位時間当たりのアクセス数のときのＲＡＩＤ装置２１０の消費電力（単位：ワット）が設定される。このような対応関係は、図１０のグラフを参照して設定することができる。
【００７１】
図１４は、ＮＩＣ消費電力換算表を示す図である。ＮＩＣ消費電力換算表１１４には、単位時間当たりの通信データ量と消費電力の欄が設けられている。単位時間当たりの通信データ量の欄には、ＮＩＣ２０６を介した単位時間当たりの通信データ量（単位：Ｍｂｐｓ）が設定される。消費電力の欄には、対応する単位時間当たりの通信データ量のときのＮＩＣを含むグループＣの消費電力（単位：ワット）が設定される。このような対応関係は、図９のグラフを参照して設定することができる。
【００７２】
このような各消費電力換算表が、消費電力見積もり情報記憶部１１０に予め格納される。また、ユーザは、接続機器情報と最大消費電力情報とを作成し、それぞれ接続機器情報記憶部１２０と最大消費電力情報記憶部１３０とに格納する。
【００７３】
図１５は、接続機器情報のデータ構造を示す図である。接続機器情報１２１では、電源タップを一意に識別するための識別情報に対応付けて、その電源タップの各差し込み口に接続された機器を一意に識別するための識別情報が設定されている。
【００７４】
図１５の例では、電源タップ２０の識別情報「電源タップ１」に対応付けて、「差し込み口１」に対してコンピュータ２００の識別情報「ＰＣ１」が設定され、「差し込み口２」に対してコンピュータ３００の識別情報「ＰＣ２」が設定され、「差し込み口３」に対してＲＡＩＤ装置２１０の識別情報「ＲＡＩＤ１」が設定され、「差し込み口４」に対してＲＡＩＤ装置３１０の識別情報「ＲＡＩＤ２」が設定されている。
【００７５】
また、電源タップ３０の識別情報「電源タップ２」に対応付けて、「差し込み口１」に対してコンピュータ４００の識別情報「ＰＣ３」が設定され、「差し込み口２」に対してコンピュータ５００の識別情報「ＰＣ４」が設定されている。
【００７６】
図１６は、最大消費電力情報のデータ構造を示す図である。最大消費電力情報１３１では、電源タップを一意に識別するための識別情報に対応付けて、その電源タップの最大消費電力（単位：ワット）が設定されている。図１６の例では、電源タップ２０の識別情報「電源タップ１」に対応付けて、最大消費電力「２０００Ｗ」が設定されている。また、電源タップ３０の識別情報「電源タップ２」に対応付けて、最大消費電力「２０００Ｗ」が設定されている。
【００７７】
なお、最大消費電力情報１３１として設定する最大消費電力の値は、各電源タップの定格電力以下の値が設定される。例えば、最大消費電力を電源タップの定格電力より小さい値（例えば、定格電力の９０％の値）としておくことで、電源タップから供給される電力が定格電力に達する前に、消費電力の抑制が可能となる。
【００７８】
以上のような構成のシステムによって、電源タップごとの消費電力管理が行われる。本実施の形態における消費電力管理処理には、電源タップに接続された機器の合計消費電力がその電源タップの最大消費電力を超えた場合のアクセス制限処理と、異常動作検出時の異常動作機器の機能停止処理とがある。
【００７９】
図１７は、アクセス制限処理の概略を示す図である。各コンピュータ２００，３００，４００，５００は、定期的に負荷情報を消費電力監視サーバ１００に送信する（ステップＳ１）。消費電力監視サーバ１００は、各コンピュータ２００，３００，４００，５００の負荷情報に基づいて、合計消費電力が最大消費電力を超えた電源タップがあるか否かを判断する。
【００８０】
図１７の例では、コンピュータ２００の負荷が過大であることにより、電源タップ２０から供給される合計消費電力が最大消費電力を超えているものとする。この場合、消費電力監視サーバ１００は、コンピュータ２００に対してアクセス制限要求を送信する（ステップＳ２）。すると、コンピュータ２００は、単位時間当たりに処理するアクセス要求を所定数に制限する。これにより、コンピュータ２００およびＲＡＩＤ装置２１０の処理負荷が低減し、電源タップ２０から供給される合計消費電力を低減させることができる。
【００８１】
図１８は、アクセス数制限処理の手順を示すシーケンス図である。以下、図１８に示す処理をステップ番号に沿って説明する。
［ステップＳ１１］コンピュータ２００は、負荷情報を消費電力監視サーバ１００に送信する。同様に、他のコンピュータ３００，４００，５００からも消費電力監視サーバ１００に対して負荷情報が送信される。送信された負荷情報は、消費電力監視サーバ１００の負荷情報収集部１４０で受け取られ、消費電力推定部１５０に渡される。
【００８２】
［ステップＳ１２］消費電力監視サーバ１００の消費電力推定部１５０は、コンピュータ２００，３００，４００，５００から受信した負荷情報に基づいて、機器ごとの消費電力を推定する。コンピュータ２００の消費電力は、ＣＰＵ使用率、内蔵ディスクへの単位時間当たりのアクセス数、ネットワーク１０を介した単位時間当たりの通信データ量に基づいて計算される。
【００８３】
具体的には、消費電力推定部１５０は、ＣＰＵ消費電力換算表１１１を参照し、ＣＰＵ使用率の欄から、負荷情報で示されるＣＰＵ使用率以上の最も小さい値のＣＰＵ使用率を選択する。そして、消費電力推定部１５０は、選択したＣＰＵ使用率に対応する消費電力を、コンピュータのＣＰＵ等による消費電力と推定する。
【００８４】
また、消費電力推定部１５０は、内蔵ディスク消費電力換算表１１２を参照し、単位時間当たりのアクセス数の欄から、負荷情報で示される内蔵ディスクへの単位時間当たりのアクセス数以上で最も小さい値の単位時間当たりのアクセス数を選択する。そして、消費電力推定部１５０は、選択した単位時間当たりのアクセス数に対応する消費電力を、コンピュータのＨＤＤによる消費電力と推定する。
【００８５】
さらに、消費電力推定部１５０は、ＮＩＣ消費電力換算表１１４を参照し、単位時間当たりの通信データ量の欄から、負荷情報で示される単位時間当たりの通信データ量以上で最も小さい値の単位時間当たりの通信データ量を選択する。そして、消費電力推定部１５０は、選択した単位時間当たりの通信データ量に対応する消費電力を、コンピュータのＮＩＣによる消費電力と推定する。
【００８６】
そして、消費電力推定部１５０は、ＣＰＵ等による消費電力、ＨＤＤによる消費電力、およびＮＩＣによる消費電力の合計を、コンピュータの消費電力と推定する。
また、消費電力推定部１５０は、ＲＡＩＤ装置消費電力換算表１１３を参照し、単位時間当たりのアクセス数の欄から、負荷情報で示されるＲＡＩＤ装置への単位時間当たりのアクセス数以上で最も小さい値の単位時間当たりのアクセス数を選択する。そして、消費電力推定部１５０は、選択した単位時間当たりのアクセス数に対応する消費電力を、ＲＡＩＤ装置の消費電力と推定する。
【００８７】
［ステップＳ１３］消費電力推定部１５０は、電源タップごとの消費電力を推定する。具体的には、消費電力推定部１５０は接続機器情報１２１を参照し、各電源タップに接続されている機器を判断する。そして、消費電力推定部１５０は、電源タップに接続されている各機器の消費電力を合計し、電源タップごとの消費電力と推定する。
【００８８】
［ステップＳ１４］消費電力推定部１５０は、アクセス制限の要否を判定する。具体的には、消費電力推定部１５０は、最大消費電力情報１３１を参照し、各電源タップから供給されている消費電力が、最大消費電力を超えていないかどうかを判断する。
【００８９】
［ステップＳ１５］消費電力推定部１５０は、最大消費電力を超えている電源タップがある場合、処理をステップＳ１６に進める。最大消費電力を超えている電源タップがなければ、処理を終了する。
【００９０】
［ステップＳ１６］消費電力推定部１５０は、アクセス制限指示部１６０に対して、最大消費電力を超えて電力を供給している電源タップに接続されているコンピュータ２００へのアクセス制限を依頼する。具体的には、消費電力推定部１５０は、最大消費電力を超えて電力を供給している電源タップに接続されたコンピュータの中から、少なくとも１台のコンピュータ（図１８の例では、コンピュータ２００）を、アクセス制限対象として選択する。例えば、最も消費電力の大きいコンピュータをアクセス制限対象として選択する。そして、消費電力推定部１５０は、アクセス制限対象のコンピュータ２００の識別情報をアクセス制限指示部１６０に通知し、そのコンピュータ２００へのアクセス制限を依頼する。アクセス制限指示部１６０は、識別情報で指定されたアクセス制限対象のコンピュータ２００に対して、アクセス数を制限するべき旨のアクセス制限要求を送信する。
【００９１】
［ステップＳ１７］コンピュータ２００のアクセス制限部２３０は、アクセス制限要求に応答して、単位時間当たりに処理するアクセス要求の数を制限する。
このようにして、電源タップから供給される電力が最大消費電力を超えると、その電源タップに接続されたコンピュータに対してアクセス制限が施される。その結果、コンピュータの処理負荷が軽減し、消費電力も低減する。すなわち、電源タップに接続された電気機器の時間変化する消費電力を正確に推定し、各電気機器の消費電力の合計を電源タップの最大消費電力以下に抑制できる。
【００９２】
このような制御を行っていれば、電源タップに接続する機器の最大定格電力の合計が電源タップの定格電力を超えていたとしても、実際に電源タップから供給される電力が定格電力を超えることを防止できる。換言すると、複数の機器の最大定格電力の合計が電源タップの定格電力を超えるような場合でも、それらの機器をその電源タップに接続して運用することが可能となる。その結果、電源設備の増強を行わずに、多数の機器の運用が可能となる。
【００９３】
なお、コンピュータにアクセス制限を施した後は、そのコンピュータが接続された電源タップの消費電力がある程度以下になった時点で、アクセス制限を解除することができる。例えば、アクセス制限指示部１６０は、各コンピュータに対してアクセス制限要求を送信したか否かの情報を、ＲＡＭ内の記憶領域に記憶しておく。そして、アクセス制限を施したコンピュータが接続された電源タップから供給されている電力が所定値以下（例えば、最大消費電力の８０％以下）まで低減したら、アクセス制限指示部１６０からアクセス制限が施されているコンピュータに対して、アクセス制限の解除指示を送信する。その指示を受け取ったコンピュータは、アクセス制限を解除する。
【００９４】
次に、異常動作機器の機能停止処理について説明する。
図１９は、異常動作機器の機能停止処理の概略を示す図である。消費電力監視サーバ１００は、コンピュータ２００，３００，４００，５００の状態を監視し、各コンピュータの障害の有無を判断する（ステップＳ３）。例えば、負荷情報の送信が所定期間途絶えているコンピュータは、障害が発生していると判断できる。また、消費電力監視サーバ１００から各コンピュータ２００，３００，４００，５００に接続確認のコマンド（ping）を定期的に送信し、所定期間応答が返されないコンピュータについて障害が発生していると判断することもできる。さらに、各コンピュータ２００，３００，４００，５００から定期的にハートビート信号を消費電力監視サーバ１００に送信するようにし、そのハートビート信号を所定期間送信しないコンピュータについて障害が発生していると判断することもできる。さらに、負荷情報に基づいて、ＣＰＵ使用率や通信データ量が異常に高いコンピュータについても、障害が発生していると判断できる。
【００９５】
図１９の例では、コンピュータ２００に障害が発生しているものとする。障害のあるコンピュータ２００を検出した消費電力監視サーバ１００は、そのコンピュータ２００に対してＯＳのシャットダウンの指示を送信する（ステップＳ４）。例えば、消費電力監視サーバ１００は、コンピュータ２００に対してリモートログインを行い、シャットダウンコマンドをコンピュータ２００に入力する。ここで、シャットダウンに成功すれば、消費電力監視サーバ１００からコンピュータ２００へのリモートログインのためのコネクションが、コンピュータ２００から強制的に切断される。消費電力監視サーバ１００は、このコネクションの切断によって、シャットダウンが成功終了したものと判断することができる。また、ＩＰＭＩ（Intelligent Platform Management Interface）の技術を利用すれば、コンピュータ２００，３００，４００，５００の稼動状態の監視や、ＯＳが停止している状態のコンピュータ２００，３００，４００，５００との通信が可能となる。従って、ＩＰＭＩを用いて、障害が発生したコンピュータの稼働状態がＯＳ停止状態（例えば、ＲＯＭベースのプログラムが動作している状態）になったことを確認することで、シャットダウンが正常に完了したことを確認できる。
【００９６】
シャットダウンの指示を出してから所定時間経ってもシャットダウンが正常に完了できなかった場合、消費電力監視サーバ１００は、該当するコンピュータ２００に対する電源タップ２０からの電源供給を停止する。すなわち、消費電力監視サーバ１００は、コンピュータ２００が接続された差し込み口の識別番号を指定し、電源タップ２０に対して電源遮断指示を送信する（ステップＳ５）。電源タップ２０は、指定された差し込み口に接続されたスイッチをオフにし、電源供給を遮断する。これにより、障害により過剰に電力を消費するおそれのあるコンピュータ２００への電源供給を遮断し、電源タップ２０からの供給電力が最大消費電力を超えてしまうことを防止できる。
【００９７】
なお、異常機器の検出方法は、複数の方法を利用することができる。そこで、接続確認要求（ping）を用いた異常判定と、負荷情報に基づく異常判定とを組み合わせる場合の例を用いて、異常動作機器の機能停止処理を詳細に説明する。
【００９８】
接続確認要求に基づいてコンピュータの異常判定を行う場合、消費電力監視サーバ１００の障害監視部１７０において、各コンピュータから接続確認要求に対する応答が受け取れなかった回数（連続無応答数）が管理される。また、負荷情報に基づく異常判定を行う場合、障害監視部１７０には、負荷情報の履歴が管理される。
【００９９】
図２０は、障害監視部で管理される情報を示す図である。図２０に示すように、障害監視部１７０は、連続無応答管理テーブル１７１と負荷情報履歴管理テーブル１７２とを用いて、各コンピュータ２００，３００，４００，５００から収集した情報を管理する。具体的には、障害監視部１７０が管理するメモリ内に連続無応答管理テーブル１７１と負荷情報履歴管理テーブル１７２とが格納される。
【０１００】
連続無応答管理テーブル１７１には、ノード名と連続無応答数との欄が設けられている。ノード名の欄には、各コンピュータ２００，３００，４００，５００の識別情報が設定される。連続無応答数の欄には、対応するコンピュータに対して接続確認要求を送信し、応答が連続して得られなかった回数（連続無応答数）が設定される。連続無応答数は、コンピュータに対して接続確認要求を送信し、その接続確認要求に対して応答が全く返されない場合、１ずつカウントアップされる。また、接続確認要求に対して応答が返された場合、応答を返したコンピュータの連続無応答数は「０」にリセットされる。
【０１０１】
負荷情報履歴管理テーブル１７２には、負荷情報の数回分の履歴が格納される。図２０の例では、負荷情報に含まれる情報のうち、ＣＰＵ使用率と単位時間当たりの通信データ量とが、過去４回分格納されている。負荷情報履歴管理テーブル１７２には、ノード名、直前の情報、直前より１つ前情報、直前より２つ前情報、および直前より３つ前情報の欄が設けられている。ノード名の欄には、コンピュータの識別情報が設定される。直前の情報の欄には、直前に受信した負荷情報内のＣＰＵ使用率と単位時間当たりの通信データ量とが設定される。直前の１つ前の情報の欄には、直前よりも１つ前に受信した負荷情報内のＣＰＵ使用率と単位時間当たりの通信データ量とが設定される。直前の２つ前の情報の欄には、直前よりも２つ前に受信した負荷情報内のＣＰＵ使用率と単位時間当たりの通信データ量とが設定される。直前の３つ前の情報の欄には、直前よりも３つ前に受信した負荷情報内のＣＰＵ使用率と単位時間当たりの通信データ量とが設定される。
【０１０２】
このような連続無応答管理テーブル１７１と負荷情報履歴管理テーブル１７２とを利用して異常動作機器の機能停止処理が行われる。
図２１は、異常動作機器の機能停止処理の手順を示すシーケンス図である。以下、図２１に示す処理をステップ番号に沿って説明する。
【０１０３】
［ステップＳ２１］消費電力監視サーバ１００の障害監視部１７０は、コンピュータ２００に対して、接続確認要求を送信する。
［ステップＳ２２］コンピュータ２００のＯＳは、コンピュータ２００が正常に動作していれば接続確認要求に対する応答を返す。
【０１０４】
［ステップＳ２３］消費電力監視サーバ１００の障害監視部１７０は、コンピュータ２００からの応答の有無に応じて、連続無応答管理テーブル１７１の内容を更新する。すなわち、所定時間待っても応答が返ってこない場合、障害監視部１７０は、コンピュータ２００に対応する連続無応答数の値を１だけカウントアップする。また、応答が返ってきた場合、障害監視部１７０は、コンピュータ２００に対応する連続無応答数の値を「０」にする。その後、ステップＳ２６移行の処理が行われる。
【０１０５】
［ステップＳ２４］また、コンピュータ２００の負荷情報管理部２２０は定期的に負荷情報を、消費電力監視サーバ１００に対して送信する。
［ステップＳ２５］消費電力監視サーバ１００の障害監視部１７０は、受信した負荷情報に基づいて、負荷情報履歴管理テーブル１７２を更新する。具体的には、障害監視部１７０は、受信した負荷情報からＣＰＵ使用率と単位時間当たりの通信データ量とを抽出し、負荷情報履歴管理テーブル１７２内のコンピュータ２００に対応する直前の情報として登録する。その際、負荷情報履歴管理テーブル１７２内のコンピュータ２００に対応付けて登録されていた情報は、それぞれ古い情報の欄に移動される。その後、ステップＳ２６移行の処理が行われる。
【０１０６】
［ステップＳ２６］障害監視部１７０は、各コンピュータの動作が異常となっているか否かの判定処理を行う。具体的には、障害監視部１７０は、連続無応答管理テーブル１７１を参照し、連続無応答数が予め設定された閾値を超えたコンピュータの有無を判断する。例えば、図２０に示した内容の連続無応答数管理テーブル１７１であれば、連続無応答数の閾値として「３」が設定されていた場合、識別情報「ＰＣ４」のコンピュータ５００に異常があるものと判定される。
【０１０７】
また、障害監視部１７０は、負荷情報履歴管理テーブル１７２を参照し、負荷が過大となっているコンピュータの有無を判定する。例えば、障害監視部１７０は、過去４回分の負荷情報におけるＣＰＵ使用率と通信データ量との比率の平均を計算する。そして、障害監視部１７０は、その平均比率をコンピュータ間で比較し、他のコンピュータよりも所定値以上高い（例えば、４倍以上）コンピュータを異常と判断する。図２０に示した負荷情報履歴管理テーブル１７２の例であれば、識別番号「ＰＣ２」のコンピュータ３００は、単位時間当たりの通信データ量が識別番号「ＰＣ１」と同程度にあるにも拘わらず、ＣＰＵ使用率が４倍以上となっている。したがって、障害監視部１７０は、識別番号「ＰＣ２」のコンピュータ３００に異常があると判定する。
【０１０８】
［ステップＳ２７］障害監視部１７０は、異常判定の結果、異常のあるコンピュータがある場合、処理をステップＳ２８に進める。異常のあるコンピュータがなければ、処理が終了する。
【０１０９】
［ステップＳ２８］障害監視部１７０は、異常と判定したコンピュータの識別情報を強制停止制御部１８０に通知する。強制停止制御部１８０は、異常と判定されたコンピュータ（図２１の例では、コンピュータ２００に異常があるものとする）に対して、シャットダウン指示を送信する。
【０１１０】
［ステップＳ２９］コンピュータ２００の遠隔制御受付部２４０は、シャットダウン指示に応じてＯＳのシャットダウンコマンドを実行する。
［ステップＳ３０］強制停止制御部１８０は、シャットダウンが正常に完了したか否かを判断する。正常に完了した場合、処理が終了する。正常に終了しなかった場合、処理がステップＳ３１に進められる。
【０１１１】
［ステップＳ３１］強制停止制御部１８０は、コンピュータ２００が接続された電源タップ２０に対して、コンピュータ２００が接続されている差し込み口の電源遮断を指示する。
【０１１２】
［ステップＳ３２］電源タップ２０の制御回路２４は、コンピュータ２００が接続された差し込み口２１ａに対応するスイッチ２２ａをオフにすることで、コンピュータ２００への電源供給を遮断する。
【０１１３】
このようにして、故障などにより異常な動作をしているコンピュータを強制的に停止させることができる。異常な動作をしているコンピュータは、ＣＰＵ使用率が異常に高まるといった消費電力の増加を伴うことが多い。そのため、異常な動作をしているコンピュータを強制的に停止させることにより、電源タップを介して供給される電力が最大消費電力を超えることを防止できる。
【０１１４】
しかも、異常な動作をしているコンピュータを停止させてしまえば、そのコンピュータが使用していた電力を、同じ電源タップに接続されている他のコンピュータに振り分けることができる。すなわち、あるコンピュータの動作が異常となることにより他のコンピュータへのアクセス数が増加し、他のコンピュータの消費電力が増大することが考えられる。この場合でも、異常な動作をしたコンピュータを停止させることで、正常に動作しているコンピュータ（停止したコンピュータと同じ電源タップに接続されている）で使用可能な電力量が増大する。そのため、正常に動作しているコンピュータは、処理能力を最大限に発揮してアクセス要求を処理できる。
【０１１５】
［第２の実施の形態］
第２の実施の形態は、第１の実施の形態に示した消費電力監視機能を、分散ストレージシステムに適用したものである。
【０１１６】
第１の実施の形態では、異常と判定されたコンピュータを強制的に停止することで、電源タップから供給される電力が過大となるのを防止している。ただし、異常なコンピュータを強制的に停止してしまうと、そのコンピュータに接続されたＲＡＩＤ装置に格納されたデータを他のコンピュータからアクセスできなくなる。そこで、データを２重化して格納する分散ストレージシステムを用いて、各データを複数のコンピュータで個別に管理することで、いずれかのコンピュータを強制的に停止してもシステム全体としての運用を継続することが可能となる。
【０１１７】
図２２は、分散ストレージシステムのシステム構成を示す図である。本実施の形態では、ネットワーク５１を介して、複数のディスクノード６２０，６３０，６４０，６５０、制御ノード６１０、アクセスノード６６０、および電源タップ６１，６２が接続されている。ディスクノード６２０，６３０，６４０，６５０それぞれには、ＲＡＩＤ装置６２１，６３１，６４１，６５１が接続されている。
【０１１８】
各ＲＡＩＤ装置６２１，６３１，６４１，６５１には、複数のハードディスク装置（ＨＤＤ）が実装されている。各ＲＡＩＤ装置６２１，６３１，６４１，６５１は、内蔵するＨＤＤを用いたＲＡＩＤシステムである。本実施の形態では、各ＲＡＩＤ装置６２１，６３１，６４１，６５１は、ＲＡＩＤ５のディスク管理サービスを提供する。
【０１１９】
ディスクノード６２０，６３０，６４０，６５０は、例えば、ＩＡ（Intel Architecture）と呼ばれるアーキテクチャのコンピュータである。ディスクノード６２０，６３０，６４０，６５０は、接続されたＲＡＩＤ装置６２１，６３１，６４１，６５１に格納されたデータを管理し、管理しているデータをネットワーク５１経由で端末装置５３〜５５に提供する。また、ディスクノード６２０，６３０，６４０，６５０は、冗長性を有するデータを管理している。すなわち、同一のデータが、少なくとも２つのディスクノードで管理されている。
【０１２０】
電源タップ６１に設けられたプラグの差し込み口には、ディスクノード６２０，６３０とＲＡＩＤ装置６２１，６３１とが接続されている。電源タップ６２に設けられたプラグの差し込み口には、ディスクノード６４０，６５０とＲＡＩＤ装置６４１，６５１とが接続されている。電源タップ６１，６２は、ネットワーク５１を介した指示に応じて、差し込み口への電源供給のオン、オフを切り換えることができる。
【０１２１】
制御ノード６１０は、ディスクノード６２０，６３０，６４０，６５０を管理する。例えば、制御ノード６１０には、ディスクノード６２０，６３０，６４０，６５０やＲＡＩＤ装置６２１，６３１，６４１，６５１がどの電源タップに接続されているかが予め登録されている。そして、制御ノード６１０は、各電源タップで供給されている電力が最大消費電力を超えているか否かを判断する。制御ノード６１０は、消費電力が過大となっている電源タップに接続されたディスクノードに対してアクセス制限の指示を出す。また、制御ノード６１０は、ディスクノード６２０，６３０，６４０，６５０の動作を監視し、異常を検出した場合、該当するディスクノードをシャットダウンさせる。ディスクノードのシャットダウンに失敗した場合、制御ノード６１０は、そのディスクノードが接続されている電源タップに指示を出し、該当するディスクノードへの電源供給を遮断させる。
【０１２２】
アクセスノード６６０には、ネットワーク５２を介して複数の端末装置５３〜５５が接続されている。アクセスノード６６０は、ディスクノード６２０，６３０，６４０，６５０それぞれが管理しているデータの格納場所を認識しており、端末装置５３〜５５からの要求に応答して、ディスクノード６２０，６３０，６４０，６５０へデータアクセスを行う。
【０１２３】
図２２に示すように、複数のディスクノード６２０，６３０，６４０，６５０がネットワーク５１に接続され、それぞれのディスクノード６２０，６３０，６４０，６５０は他のディスクノードとの間で通信を行う。このマルチノードストレージシステムは、端末装置５３〜５５に対して、仮想的なボリューム（以下、論理ボリュームと呼ぶ）として機能する。
【０１２４】
図２３は、論理ボリュームのデータ構造を示す図である。論理ボリューム７００には、「ＬＶＯＬ−Ａ」という識別子（論理ボリューム識別子）が付与されている。また、ネットワーク経由で接続された４台のディスクノード６２０，６３０，６４０，６５０には、個々のディスクノードの識別のためにそれぞれ「ＳＮ−Ａ」、「ＳＮ−Ｂ」、「ＳＮ−Ｃ」、「ＳＮ−Ｄ」というノード識別子が付与されている。
【０１２５】
各ディスクノード６２０，６３０，６４０，６５０が有するＲＡＩＤ装置６２１，６３１，６４１，６５１それぞれにおいてＲＡＩＤ５の論理ディスクが構成されている。この論理ディスクは５つのスライスに分割され個々のディスクノード内で管理されている。
【０１２６】
図２３の例では、ＲＡＩＤ装置６２１内の記憶領域は、５つのスライス６２２〜６２６に分けられている。ＲＡＩＤ装置６３１内の記憶領域は、５つのスライス６３２〜６３６に分けられている。ＲＡＩＤ装置６４１内の記憶領域は、５つのスライス６４２〜６４６に分けられている。ＲＡＩＤ装置６５１内の記憶領域は、５つのスライス６５２〜６５６に分けられている。
【０１２７】
なお、論理ボリューム７００は、セグメント７１０，７２０，７３０，７４０という単位で構成される。セグメント７１０，７２０，７３０，７４０の記憶容量は、ＲＡＩＤ装置６２１，６３１，６４１，６５１における管理単位であるスライスの記憶容量と同じである。例えば、スライスの記憶容量が１ギガバイトとするとセグメントの記憶容量も１ギガバイトである。論理ボリューム７００の記憶容量はセグメント１つ当たりの記憶容量の整数倍である。例えば、セグメントの記憶容量が１ギガバイトならば、論理ボリューム７００の記憶容量は４ギガバイトといったものになる。
【０１２８】
セグメント７１０，７２０，７３０，７４０は、それぞれプライマリスライス７１１，７２１，７３１，７４１とセカンダリスライス７１２，７２２，７３２，７４２との組から構成される。同じセグメントに属するスライスは別々のディスクノードに属する。各スライスは、スライス管理情報によって管理される。スライス管理情報には、論理ボリューム識別子、セグメント情報、同じセグメントを構成するスライス情報、プライマリスライスかセカンダリスライスかを示すフラグなどが含まれる。
【０１２９】
図２３の例では、スライスの属性を識別するための識別子を、「Ｐ」または「Ｓ」のアルファベットと数字との組合せで示している。「Ｐ」はプライマリスライスであることを示している。「Ｓ」はセカンダリスライスであることを示している。アルファベットに続く数字は、何番目のセグメントに属するのかを表している。例えば、１番目のセグメント７１０のプライマリスライスが「Ｐ１」で示され、セカンダリスライスが「Ｓ１」で示される。
【０１３０】
このような構造の論理ボリューム７００の各プライマリスライスおよびセカンダリスライスが、ＲＡＩＤ装置６２１，６３１，６４１，６５１内のいずれかのスライスに対応付けられる。例えば、セグメント７１０のプライマリスライス７１１は、ＲＡＩＤ装置６５１のスライス６５５に対応付けられ、セカンダリスライス７１２は、ＲＡＩＤ装置６３１のスライス６３３に対応付けられている。そして、各ＲＡＩＤ装置６２１，６３１，６４１，６５１では、自己のスライスに対応するプライマリスライスまたはセカンダリスライスのデータを記憶する。
【０１３１】
各ディスクノードは、自己の管理するスライスが割り当てられているセグメントなどの情報をスライス管理情報として保持している。制御ノード６１０は、システムの起動時に各ディスクノードからスライス管理情報を収集して、メモリに保持する。また、収集したスライス管理情報は、制御ノード６１０からアクセスノード６６０に渡される。アクセスノード６６０は、取得したスライス管理情報を参照して、論理ボリューム７００の任意のセグメント内のデータにアクセスする際に、どのディスクノードにアクセス要求を送信すべきかを認識できる。
【０１３２】
図２４は、制御ノードに保持されたスライス管理情報群のデータ構造例を示す図である。制御ノード６１０は、ＲＡＭの記憶領域の一部をスライス管理情報群記憶部６１１として使用する。スライス管理情報群記憶部６１１には、複数のスライス管理情報６１１ａ，６１１ｂ，６１１ｃ，６１１ｄが格納される。
【０１３３】
スライス管理情報６１１ａ，６１１ｂ，６１１ｃ，６１１ｄの構成要素は、左側の要素から順に以下の通りである。
・スライス番号
・開始ブロック位置（該当スライスの先頭に当たるブロックの番号）
・ブロック数（スライス内のブロック数）
・フラグ（プライマリ／セカンダリ）
・論理ボリューム識別子
・セグメント番号
・論理ボリューム開始ブロック位置
・論理ボリューム内でのブロック数
・ペアを組むディスクノード識別子
・ペアを組むスライス番号
図２４で示したスライス管理情報６１１ａ，６１１ｂ，６１１ｃ，６１１ｄは、図２３で示した論理ボリューム７００を構成している。例えば、ノード識別子「ＳＮ−Ａ」のスライス管理情報６１１ａにおけるスライス番号「４」のスライスは「ＬＶＯＬ−Ａ」のセグメント番号「４」のプライマリスライスであり、ペアを組んでいるのは「ＳＮ−Ｄ」のスライス番号「１」のスライスである、ということを意味する。
【０１３４】
図２４に示したスライス管理情報６１１ａ，６１１ｂ，６１１ｃ，６１１ｄは、それぞれディスクノード６２０，６３０，６４０，６５０から収集されたものである。
このようなスライス管理情報６１１ａ，６１１ｂ，６１１ｃ，６１１ｄにより、制御ノード６１０において論理ボリューム７００の構造を認識できる。論理ボリューム７００のセグメントに割り当てるスライスを変更する場合、その制御ノード６１０が割当の変更を決定し、その結果を各ディスクノードとアクセスノードに通知する。
【０１３５】
また、各ディスクノード６２０，６３０，６４０，６５０は、スライス管理情報を有することにより、自己の管理するスライスがプライマリスライスであれば、対応するセカンダリスライスを管理するディスクノードを認識することができる。
【０１３６】
このような構成の分散ストレージシステムに対して消費電力監視機能を実装する場合、図５に示した消費電力監視サーバ１００内の各要素が図２２に示す制御ノード６１０に実装される。また、図５に示したコンピュータ２００内の各要素が図２２に示すディスクノード６２０，６３０，６４０，６５０それぞれに実装される。
【０１３７】
これにより、制御ノード６１０が、各ディスクノード６２０，６３０，６４０，６５０から負荷情報を収集し、電源タップ６１，６２それぞれを介した電源供給量を推定することができる。そして、制御ノード６１０は、電源タップごとの合計消費電力を求める。制御ノード６１０は、合計電源供給が過大（予め設定された最大消費電力以上）となった電源タップを検出すると、その電源タップに接続されたディスクノードに対して、アクセス数制限要求を送信する。すると、ディスクノードにおいて、単位時間当たりに処理するアクセス数が所定数以下に制限される。アクセスノード６６０は、アクセス要求をディスクノードに送信した場合、そのアクセス要求の処理が完了するまで、次のアクセス要求を内部にキューイングして保持する。そのため、ディスクノードにおいて単位時間当たりに処理するアクセス数が制限された場合、単位時間当たりにアクセスノード６６０から該当するディスクノードへ送信するアクセス要求の数が制限されることとなる。その結果、ディスクノードの処理負荷が軽減され、消費電力が少なくなる。
【０１３８】
なお、分散ストレージシステムの場合、プライマリスライス内のデータが更新されると、対応するセカンダリスライス内のデータも更新する必要がある。すなわち、アクセスノード６６０からデータアクセスを行う場合、プライマリスライスを管理しているディスクノードに対してアクセス要求が行われる。そのアクセス要求がデータの更新を伴っていれば、アクセス要求を受けたディスクノードは、自己の管理するプライマリスライス内のデータを更新すると共に、対応するセカンダリスライスを管理するディスクノードに対してデータの更新を要求する。その要求を受け取ったディスクノードは、セカンダリスライス内の該当データを更新する。
【０１３９】
ここで、セカンダリスライスを管理しているディスクノードにおいてアクセス数を制限したとき、プライマリスライスを管理するディスクノードからのデータの同一性確保のためのデータ更新のアクセスまでも制限すると、アクセス制限の影響が他のディスクノードに波及することとなる。そこで、ディスクノードがアクセス数を制限する場合、アクセスノード６６０からのアクセス要求のみを制限するようにする。これにより、アクセス数を制限している間であっても、他のディスクノードからのデータの同一性確保のためのデータ更新要求を迅速に処理することができる。
【０１４０】
また、制御ノード６１０は、動作に異常のあるディスクノードを検出すると、そのディスクノードをシャットダウンさせる。また、ディスクノードのシャットダウンが正常に完了できなかった場合、制御ノード６１０は、そのディスクノードが接続されている電源タップに対して、ディスクノードへの電源供給を遮断させる。このようにディスクノードの機能を停止させる場合、そのディスクノードで管理しているデータを、他のディスクノードに移動させる必要がある。
【０１４１】
図２５は、障害発生時のデータ復旧処理を示す図である。図２５では、ディスクノード６２０に障害が検出されたものとする。この場合、ディスクノード６２０を停止させると共に、ディスクノード６２０が管理していたデータと同じデータを、他のディスクノートに格納する。具体的には、ディスクノード６２０が管理するスライスと同じセグメントに割り当てられている他のディスクノードのスライスからデータを、さらに別のディスクノードが管理する空きのスライスにコピーする。
【０１４２】
図２５の例では、ディスクノード６２０に接続されたＲＡＩＤ装置６２１の４番目のスライス６２５は、４番目のセグメント７４０のプライマリスライスである。そこで、４番目のセグメント７４０のセカンダリスライスであるＲＡＩＤ装置６５１の１番目のスライス６５２のデータを、ディスクノード６３０のＲＡＩＤ装置６３１の３番目のスライス６３４にコピーする。そして、そのスライス６３４を、４番目のセグメント７４０のプライマリスライスとする。
【０１４３】
同様に、ディスクノード６２０に接続されたＲＡＩＤ装置６２１の５番目のスライス６２６は、２番目のセグメント７２０のセカンダリスライスである。そこで、２番目のセグメント７２０のプライマリスライスであるＲＡＩＤ装置６４１の５番目のスライス６４６のデータを、ディスクノード６５０のＲＡＩＤ装置６５１の２番目のスライス６５３にコピーする。そして、そのスライス６５３を、２番目のセグメント７２０のセカンダリスライスとする。
【０１４４】
このようにして、ディスクノードを強制停止した場合でも、システムの運用を継続することができる。
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、消費電力監視サーバ１００や制御ノード６１０が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記録装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disc）などがある。
【０１４５】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１４６】
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１４７】
なお、本発明は、上述の実施の形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変更を加えることができる。
以上説明した実施の形態の主な技術的特徴は、以下の付記の通りである。
【０１４８】
（付記１）  電気機器の消費電力をネットワーク経由で監視するための処理をコンピュータが処理する消費電力監視プログラムであって、
前記コンピュータを、
前記コンピュータに前記ネットワークを介して接続された前記電気機器から、前記電気機器の処理負荷を示す負荷情報を取得する負荷情報収集手段、
前記電気機器の処理負荷に応じた消費電力を示す消費電力見積もり情報が記憶された消費電力見積もり情報記憶手段を参照し、前記負荷情報収集手段が収集した前記負荷情報に基づいて、前記電気機器の消費電力を推定する消費電力推定手段、
として機能させる消費電力監視プログラム。
【０１４９】
（付記２）  前記負荷情報収集手段は、前記電気機器から、前記電気機器を構成する構成要素それぞれの処理負荷を示す負荷情報を取得し、
前記消費電力見積もり情報記憶手段には、前記電気機器を構成する前記構成要素ごとに、処理負荷に応じた消費電力を示す消費電力見積もり情報が記憶されており、
前記消費電力推定手段は、前記負荷情報収集手段が収集した前記構成要素ごとの負荷情報に基づいて、前記構成要素ごとの消費電力を判断し、前記構成要素ごとの消費電力を合計して、前記電気機器の消費電力とする付記１記載の消費電力監視プログラム。
【０１５０】
（付記３）  前記電気機器には、測定対象コンピュータが含まれており、
前記負荷情報収集手段は、前記測定対象コンピュータの前記負荷情報として、ＣＰＵ使用率、単位時間当たりのディスクアクセス数、単位時間当たりの通信データ量を取得し、
前記消費電力見積もり情報記憶手段内の前記消費電力見積もり情報は、ＣＰＵ使用率に応じたＣＰＵとメモリとの消費電力を示すＣＰＵ消費電力換算表、単位時間当たりのディスクアクセス数に応じたディスク装置の消費電力を示すディスク消費電力換算表、単位時間当たりの通信データ量に応じた通信インタフェースの消費電力を示す通信インタフェース消費電力換算表を含み、
前記消費電力推定手段は、前記ＣＰＵ消費電力換算表を参照して、前記負荷情報で示されるＣＰＵ使用率に応じた前記ＣＰＵと前記メモリとの消費電力を判断し、前記ディスク消費電力換算表を参照して、前記負荷情報で示される単位時間当たりのディスクアクセス数に応じた前記ディスク装置の消費電力を判断し、前記通信インタフェース消費電力換算表を参照し、前記負荷情報で示される単位時間当たりの通信データ量に応じた前記通信インタフェースの消費電力を判断する付記２記載の消費電力監視プログラム。
【０１５１】
（付記４）  前記電気機器には、測定対象コンピュータと前記測定対象コンピュータに外部接続された外部ディスク装置とが含まれており、
前記負荷情報収集手段は、前記測定対象コンピュータの前記負荷情報として、前記測定対象コンピュータから前記ディスク装置への単位時間当たりのアクセス数を取得し、
前記消費電力見積もり情報記憶手段内の前記消費電力見積もり情報は、前記ディスク装置への単位時間当たりのアクセス数に応じた前記外部ディスク装置の消費電力を示すディスク消費電力換算表を含み、
前記消費電力推定手段は、前記ディスク消費電力換算表を参照して、前記測定対象コンピュータから前記ディスク装置への単位時間当たりのアクセス数に応じた前記外部ディスク装置の消費電力を判断する付記２記載の消費電力監視プログラム。
【０１５２】
（付記５）  前記コンピュータをさらに、
前記電気機器の消費電力が予め設定された閾値より大きい場合、前記電気機器の処理負荷を低減させる負荷制御手段として機能させる付記１記載の消費電力監視プログラム。
【０１５３】
（付記６）  前記電気機器には、ネットワークを介したアクセス要求に応じてデータの入出力を行うディスクノードが含まれており、
前記負荷情報収集手段は、複数の前記電気機器から前記負荷情報を収集し、
前記消費電力推定手段は、複数の前記電気機器の前記負荷情報に基づいて前記電気機器それぞれの消費電力を推定し、
前記コンピュータをさらに、
複数の前記電気機器と、前記電気機器それぞれに対して電源を供給している電源タップとの対応関係を示す接続機器情報を記憶する接続機器情報記憶手段を参照し、共通の前記電源タップに接続された複数の前記電気機器それぞれについて前記消費電力判定手段で求められた消費電力の合計が、予め設定された閾値より大きい場合、前記電源タップに接続された前記ディスクノードへの単位時間当たりのアクセス数を所定値以下に制限するアクセス制限手段として機能させる付記１記載の消費電力監視プログラム。
【０１５４】
（付記７）  前記コンピュータをさらに、
前記電気機器の障害の有無を監視する障害監視手段、
前記障害監視手段により前記電気機器の障害が検出された場合、前記電気機器の動作を強制停止させる強制停止制御手段
として機能させる付記１記載の消費電力監視プログラム。
【０１５５】
（付記８）  前記強制停止制御手段は、前記障害監視手段により前記電気機器の障害が検出された場合、前記電気機器が接続された電源タップに対して、前記電気機器の電源プラグが差し込まれた差し込み口への電源供給の遮断指示を送信する付記７記載の消費電力監視プログラム。
【０１５６】
（付記９）  前記電気機器には、ネットワークを介したアクセス要求に応じてデータの入出力を行う複数のディスクノードが含まれており、
前記コンピュータをさらに、
前記障害監視手段によりいずれかのディスクノードに障害が検出された場合、障害が検出されたディスクノードで管理しているデータと同一のデータを他のディスクノードに格納するデータ再配置手段として機能させる付記７記載の消費電力監視プログラム。
【０１５７】
（付記１０）  電気機器の消費電力をネットワーク経由で監視するための消費電力監視装置であって、
前記消費電力監視装置に前記ネットワークを介して接続された前記電気機器から、前記電気機器の処理負荷を示す負荷情報を取得する負荷情報収集手段と、
前記電気機器の処理負荷に応じた消費電力を示す消費電力見積もり情報が記憶された消費電力見積もり情報記憶手段を参照し、前記負荷情報収集手段が収集した前記負荷情報に基づいて、前記電気機器の消費電力を推定する消費電力推定手段と、
を有する消費電力監視装置。
【０１５８】
（付記１１）  電気機器の消費電力をネットワーク経由で監視するための消費電力監視方法であって、
コンピュータが、
前記コンピュータに前記ネットワークを介して接続された前記電気機器から、前記電気機器の処理負荷を示す負荷情報を取得し、
前記電気機器の処理負荷に応じた消費電力を示す消費電力見積もり情報が記憶された消費電力見積もり情報記憶手段を参照し、前記負荷情報収集手段が収集した前記負荷情報に基づいて、前記電気機器の消費電力を推定する消費電力監視方法。
【図面の簡単な説明】
【０１５９】
【図１】実施の形態の概要を示す図である。
【図２】本実施の形態のシステム構成例を示す図である。
【図３】本実施の形態に用いるコンピュータのハードウェア構成例を示す図である。
【図４】電源タップの内部構造を示す図である。
【図５】消費電力を制御するための機能を示すブロック図である。
【図６】消費電力見積もりのための要素グループを示す図である。
【図７】ＣＰＵ使用率と消費電力との関係を示すグラフである。
【図８】単位時間当たりのディスクアクセス数と消費電力との関係を示すグラフである。
【図９】単位時間当たりの通信データ量と消費電力との関係を示すグラフである。
【図１０】単位時間当たりのＲＡＩＤ装置へのアクセス数と消費電力との関係を示すグラフである。
【図１１】ＣＰＵ消費電力換算表を示す図である。
【図１２】内蔵ディスク消費電力換算表を示す図である。
【図１３】ＲＡＩＤ装置消費電力換算表を示す図である。
【図１４】ＮＩＣ消費電力換算表を示す図である。
【図１５】接続機器情報のデータ構造を示す図である。
【図１６】最大消費電力情報のデータ構造を示す図である。
【図１７】アクセス制限処理の概略を示す図である。
【図１８】アクセス数制限処理の手順を示すシーケンス図である。
【図１９】異常動作機器の機能停止処理の概略を示す図である。
【図２０】障害監視部で管理される情報を示す図である。
【図２１】異常動作機器の機能停止処理の手順を示すシーケンス図である。
【図２２】分散ストレージシステムのシステム構成を示す図である。
【図２３】論理ボリュームのデータ構造を示す図である。
【図２４】制御ノードに保持されたスライス管理情報群のデータ構造例を示す図である。
【図２５】障害発生時のデータ復旧処理を示す図である。
【符号の説明】
【０１６０】
１  消費電力制御装置
１ａ  消費電力見積もり情報記憶手段
１ｂ  負荷情報収集手段
１ｃ  消費電力推定手段
１ｄ  負荷制御手段
２  電気機器
【図１】
0004973490.tif 000002
【図２】
0004973490.tif 000003
【図３】
0004973490.tif 000004
【図４】
0004973490.tif 000005
【図５】
0004973490.tif 000006
【図６】
0004973490.tif 000007
【図７】
0004973490.tif 000008
【図８】
0004973490.tif 000009
【図９】
0004973490.tif 000010
【図１０】
0004973490.tif 000011
【図１１】
0004973490.tif 000012
【図１２】
0004973490.tif 000013
【図１３】
0004973490.tif 000014
【図１４】
0004973490.tif 000015
【図１５】
0004973490.tif 000016
【図１６】
0004973490.tif 000017
【図１７】
0004973490.tif 000018
【図１８】
0004973490.tif 000019
【図１９】
0004973490.tif 000020
【図２０】
0004973490.tif 000021
【図２１】
0004973490.tif 000022
【図２２】
0004973490.tif 000023
【図２３】
0004973490.tif 000024
【図２４】
0004973490.tif 000025
【図２５】
0004973490.tif 000026