(57)【要約】【課題】計算機の消費電力を監視することにより計算機の状態を監視する計算機の状態監視装置を提供する。【解決手段】監視サーバ３００（計算機の状態監視装置）は、監視対象となる計算機５００の消費電力を測定する消費電力測定装置１００の測定データを用いて計算機５００の状態を監視する。監視サーバ３００は、計算機５００の状態別の消費電力のパターンが格納されている電力状態データベース４００と、消費電力測定装置１００が測定した消費電力の測定データを取得するデータ取得部２０５と、取得した測定データの推移パターンが、電力状態データベース４００に格納されているどの状態のパターンと類似するか否かを判定し、類似すると判定したパターンに対応する状態を、監視対象の計算機５００の状態として検出する計算機状態検出部２２０とを有する。【選択図】図１
2011180869.tif 000002
【特許請求の範囲】
【請求項１】
監視対象となる計算機の消費電力を測定する消費電力測定装置の測定データを用いて前記計算機の状態を監視する計算機の状態監視装置であって、
前記計算機の状態別の消費電力のパターンが格納されている電力状態データベースと、
前記消費電力測定装置が測定した前記消費電力の測定データを取得するデータ取得部と、
前記取得した測定データの推移パターンが、前記電力状態データベースに格納されているどの状態のパターンと類似するか否かを判定し、類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する計算機状態検出部とを有する
ことを特徴とする計算機の状態監視装置。
【請求項２】
前記計算機の状態は、少なくとも、電源の切断の状態、スタンバイの状態、プロセッサの起動中の状態、前記プロセッサの稼動中の状態を含んでいる
ことを特徴とする請求項１に記載の計算機の状態監視装置。
【請求項３】
前記計算機の状態監視装置は、さらに、
前記データ取得部から、前記計算機の電源の投入から前記計算機の電源の切断までの測定データを取得し、前記状態別の消費電力のパターンを格納するための前記計算機の状態の設定時間を受理し、前記設定時間に基づき前記測定データを切り取り、前記切り取られた測定データを前記計算機の状態と対応付けて前記電力状態データベースに格納する計算機状態データ作成部を有する
ことを特徴とする請求項１に記載の計算機の状態監視装置。
【請求項４】
前記計算機の状態監視装置は、さらに、
前記電力状態データベースに、前記計算機の状態別の消費電力のパターンを前記計算機の消費電力の下限値および上限値を対応付けた消費電力の波形範囲情報を格納しており、
前記計算機状態検出部は、
前記取得した測定データの推移パターンから消費電力の最小値および最大値を求め、前記取得した測定データの推移パターンが、前記消費電力の波形範囲情報に基づいて前記電力状態データベースに格納されているどの状態のパターンと類似するか判定し、類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する
ことを特徴とする請求項１に記載の計算機の状態監視装置。
【請求項５】
前記計算機の状態監視装置は、さらに、
前記電力状態データベースに、計算機の状態の遷移情報である状態遷移情報を格納しており、
前記計算機状態検出部で取得された状態に基づく前記計算機の遷移状態が、前記状態遷移情報の状態遷移から外れた場合に、前記計算機の状態が異常であると判断する計算機状態監視部を有する
ことを特徴とする請求項１に記載の計算機の状態監視装置。
【請求項６】
前記計算機の状態監視装置は、さらに、
前記データ取得部が取得した測定データの変動が、所定の値を推移していて変動がない場合、前記計算機が稼動していないと判断する稼動状態検出部を有する
ことを特徴とする請求項１に記載の計算機の状態監視装置。
【請求項７】
監視対象となる計算機の消費電力を測定する消費電力測定装置の測定データを用いて前記計算機の状態を監視する計算機の監視システムであって、
前記計算機の状態別の消費電力のパターンが格納されている電力状態データベースと、
前記消費電力測定装置が測定した前記消費電力の測定データを取得するデータ取得部と、
前記取得した測定データの推移パターンが、前記電力状態データベースに格納されているどの状態のパターンと類似するか否かを判定し、類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する計算機状態検出部とを有する
ことを特徴とする計算機の監視システム。
【請求項８】
前記計算機の状態は、少なくとも、電源の切断の状態、スタンバイの状態、プロセッサの起動中の状態、前記プロセッサの稼動中の状態を含んでいる
ことを特徴とする請求項７に記載の計算機の監視システム。
【請求項９】
前記計算機の監視システムは、さらに、
前記データ取得部から、前記計算機の電源の投入から前記計算機の電源の切断までの測定データを取得し、前記状態別の消費電力のパターンを格納するための前記計算機の状態の設定時間を受理し、前記設定時間に基づき前記測定データを切り取り、前記切り取られた測定データを前記計算機の状態と対応付けて前記電力状態データベースに格納する計算機状態データ作成部を有する
ことを特徴とする請求項７に記載の計算機の監視システム。
【請求項１０】
前記計算機の監視システムは、さらに、
前記電力状態データベースに、前記計算機の状態別の消費電力のパターンを前記計算機の消費電力の下限値および上限値を対応付けた消費電力の波形範囲情報を格納しており、
前記計算機状態検出部は、
前記取得した測定データの推移パターンから消費電力の最小値および最大値を求め、前記取得した測定データの推移パターンが、前記消費電力の波形範囲情報に基づいて前記電力状態データベースに格納されているどの状態のパターンと類似するか判定し、類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する
ことを特徴とする請求項７に記載の計算機の監視システム。
【請求項１１】
前記計算機の監視システムは、さらに、
前記電力状態データベースに、計算機の状態の遷移情報である状態遷移情報を格納しており、
前記計算機状態検出部で取得された状態に基づく前記計算機の遷移状態が、前記状態遷移情報の状態遷移から外れた場合に、前記計算機の状態が異常であると判断する計算機状態監視部を有する
ことを特徴とする請求項７に記載の計算機の監視システム。
【請求項１２】
前記計算機の監視システムは、さらに、
前記データ取得部が取得した測定データの変動が、所定の値を推移していて変動がない場合、前記計算機が稼動していないと判断する稼動状態検出部を有する
ことを特徴とする請求項７に記載の計算機の監視システム。
【請求項１３】
監視対象となる計算機の消費電力を測定する消費電力測定装置の測定データを用いて前記計算機の状態を監視する計算機の状態監視装置の計算機の状態監視方法であって、
前記状態監視装置は、前記計算機の状態別の消費電力のパターンが格納されている電力状態データベースと、前記消費電力測定装置が測定した前記消費電力の測定データを取得するデータ取得部と、計算機の状態を検出する計算機状態検出部とを有しており、
前記計算機状態検出部は、
前記取得した測定データの推移パターンが、前記電力状態データベースに格納されているどの状態のパターンと類似するか否かを判定し、
類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する
ことを特徴とする計算機の状態監視方法。
【請求項１４】
前記計算機の状態は、少なくとも、電源の切断の状態、スタンバイの状態、プロセッサの起動中の状態、前記プロセッサの稼動中の状態を含んでいる
ことを特徴とする請求項１３に記載の計算機の状態監視方法。
【請求項１５】
前記計算機の状態監視装置は、さらに、計算機状態データ作成部を有しており、
前記計算機状態データ作成部は、
前記データ取得部から、前記計算機の電源の投入から前記計算機の電源の切断までの測定データを取得し、
前記状態別の消費電力のパターンを格納するための前記計算機の状態の設定時間を受理し、
前記設定時間に基づき前記測定データを切り取り、
前記切り取られた測定データを前記計算機の状態と対応付けて前記電力状態データベースに格納する
ことを特徴とする請求項１３に記載の計算機の状態監視方法。
【請求項１６】
前記計算機の状態監視装置は、さらに、
前記電力状態データベースに、前記計算機の状態別の消費電力のパターンを前記計算機の消費電力の下限値および上限値を対応付けた消費電力の波形範囲情報を格納しており、
前記計算機状態検出部は、
前記取得した測定データの推移パターンから消費電力の最小値および最大値を求め、
前記取得した測定データの推移パターンが、前記消費電力の波形範囲情報に基づいて前記電力状態データベースに格納されているどの状態のパターンと類似するか判定し、
類似すると判定したパターンに対応する状態を、前記監視対象の計算機の状態として検出する
ことを特徴とする請求項１３に記載の計算機の状態監視方法。
【請求項１７】
前記計算機の状態監視装置は、さらに、計算機状態監視部を有しており、
前記電力状態データベースに、計算機の状態の遷移情報である状態遷移情報を格納しており、
前記計算機状態監視部は、
前記計算機状態検出部で取得された状態に基づく前記計算機の遷移状態が、前記状態遷移情報の状態遷移から外れた場合に、前記計算機の状態が異常であると判断する
ことを特徴とする請求項１３に記載の計算機の状態監視方法。
【請求項１８】
前記計算機の状態監視装置は、さらに、稼動状態検出部を有しており、
前記稼動状態検出部は、
前記データ取得部が取得した測定データの変動が、所定の値を推移していて変動がない場合、前記計算機が稼動していないと判断する
ことを特徴とする請求項１３に記載の計算機の状態監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機の消費電力を監視することにより計算機の状態を監視することができる計算機の状態監視装置、計算機の監視システムおよび計算機の状態監視方法に関するものである。
【背景技術】
【０００２】
計算機の状態監視方法として、管理対象の計算機の上にエージェントプログラムなどの障害や性能を監視するソフトウェアを実行させる手段が一般的である。エージェントプログラムによる監視は、管理対象上で稼動するので、状態を管理するための詳細な情報を取得することができる。しかし、管理するためにはあらかじめエージェントプログラムをインストールしておく必要がありシステムの構築時の手間が増えるなどの課題がある。
【０００３】
一方、機器の状態を検出するのに消費電力の推移パターンを用いるという試みがされている。特許文献１には、家電機器の監視をする際に、消費電力を用いて行う方法が開示されている。例えば、電子レンジの加熱時の電力をあらかじめ測定しておき、消費電力に大きな変化が見られた場合に、あらかじめ登録した電力のパターンと比較し、パターンに一致した家電機器やその家電機器がどういう状態かを表示する。消費電力を用いることで、エージェントなどのソフトウェアをインストールできない装置を監視することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−３４０９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のエージェントプログラムなどを用いる方式においては、計算機上での監視プログラムを実行させておく必要があり、この方式では、監視プログラムが動作できない計算機起動直後や、異常終了時のダンプ採取中には計算機の状態を検出することができなかった。
【０００６】
また、特許文献１の方式では、家電機器の消費電力パターンを検出することが記載されている。家電製品は、単一の機能を有する機器が多く、例えば電子レンジにより加熱の場合は加熱時に必要な消費電力量がほぼ固定されており、上限値や下限値などの比較的単純なパターンの検出で状態を検出できる。
【０００７】
しかしながら、計算機は構成部品が多く、またプロセッサのように実行するプログラムや多重度などの負荷の大きさによって消費電力が大きく変化する。そのため、電源オンから電源オフまでを単純な上限値や下限値などの監視では状態を検出することは困難である。また、多数の計算機を管理する場合、計算機毎に消費電力が異なるため、事前に全ての装置に対して消費電力を測定しておくことは困難である。さらに、計算機を対象とした消費電力と計算機の状態との対応付けの方法は示されていない。
【０００８】
本発明は、前記の課題を解決するための発明であって、計算機の消費電力を監視することにより計算機の状態を監視することができる計算機の状態監視装置、計算機の監視システムおよび計算機の状態監視方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前記目的を達成するため、本発明の計算機の状態監視装置は、監視対象となる計算機の消費電力を測定する消費電力測定装置の測定データを用いて計算機の状態を監視する計算機の状態監視装置（例えば、監視サーバ３００）であって、計算機の状態別の消費電力のパターンが格納されている電力状態データベースと、消費電力測定装置が測定した消費電力の測定データを取得するデータ取得部と、取得した測定データの推移パターンが、電力状態データベースに格納されているどの状態のパターンと類似するか否かを判定し、類似すると判定したパターンに対応する状態を、監視対象の計算機の状態として検出する計算機状態検出部とを有することを特徴とする。
【００１０】
本発明の計算機の状態監視装置が有する、計算機の状態を表す消費電力の推移データを作成する計算機状態データ作成部、消費電力から検出した計算機の状態が異常であることを検出する計算機状態監視部、計算機に特有の消費電力の推移パターンを利用したプロセッサの稼動状態を検出する稼動状態検出部については後述する。
【発明の効果】
【００１１】
本発明によれば、計算機の消費電力を監視することにより計算機の状態を監視することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の計算機の監視システムを示す全体構成図である。
【図２】計算機の消費電力の実測データの例を示す説明図である。
【図３】電力状態データベースの波形パターンテーブルの例を示す説明図である。
【図４】電力状態データベースの波形パターンデータを示す概念図である。
【図５】電力状態データベースの波形範囲テーブルの例を示す説明図である。
【図６】電力状態データベースの波形範囲データの例を示す概念図である。
【図７】電力状態データベースの状態遷移テーブルの例を示す説明図である。
【図８】電力状態データベースの状態遷移データを示す概念図である。
【図９】推移パターン採取時の計算機の操作を示すフローチャートである。
【図１０】計算機状態データ作成部の処理を示すフローチャートである。
【図１１】計算機状態検出部の処理を示すフローチャートである。
【図１２】計算機状態監視部の処理を示すフローチャートである。
【図１３】稼動状態検出部の処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について、図面を用いて詳細に説明する。
図１は、本発明の計算機の監視システムを示す全体構成図である。計算機の監視システムは、消費電力測定装置１００、監視サーバ３００（計算機の状態監視装置）、ストレージ３１０、管理コンソール３２０を含んで構成されている。
【００１４】
消費電力測定装置１００は、計算機５００と電源１１０との間に設置され、計算機５００の消費電力を測定する装置である。消費電力測定装置１００は、本実施形態では計算機５００と独立に記載しているが、計算機５００の内部に格納されていてもよい。また、ブレード型計算機のように複数の計算機５００が単一のシャーシに格納されている場合は、消費電力測定装置１００はブレード毎に設けてもよいし、シャーシ単位に設けてもよい。
【００１５】
監視サーバ３００は、消費電力測定装置１００から監視対象の計算機５００の消費電力を受信し、計算機５００の状態を検出し、管理コンソール３２０に通知する機能を有する。ストレージ３１０には、計算機の状態と消費電力の推移パターンを対応付けた電力状態データベース４００を格納している。管理コンソール３２０は、管理者が計算機５００の状態を確認するために使用するコンソールである。
【００１６】
監視サーバ３００は、メモリ３０１と、プロセッサ３０２と、ネットワークインタフェース（図示せず）と、ストレージ３１０のディスクインタフェース（図示せず）などから構成される。メモリ３０１内には、状態検出プログラム２００が記憶されている。プロセッサ３０２が、メモリ３０１に格納された状態検出プログラム２００などの各種プログラムを実行することで、計算機状態データ作成処理、計算機状態検出処理、計算機状態監視処理、稼動状態検出処理、および消費電力測定処理からの受信処理の各処理を行う。
【００１７】
状態検出プログラム２００は、消費電力測定装置１００からネットワークインタフェースを介して受け取った消費電力と電力状態データベース４００に格納されたテーブルを比較して、計算機５００の状態を検出するためのプログラムである。
【００１８】
状態検出プログラム２００には、消費電力測定装置１００が測定した消費電力の測定データを取得するデータ取得部２０５と、計算機の状態と消費電力の推移データ（例えば、図３の消費電力推移情報）を対応付けて電力状態データベース４００に格納する計算機状態データ作成部２１０（図１０参照）と、計算機の状態を検出する計算機状態検出部２２０（図１１参照）と、計算機の正常状態・異常状態を監視する計算機状態監視部２３０（図１２参照）と、計算機でオペレーティングシステムが稼動中か非稼動中かを検出する稼動状態検出部２４０（図１３参照）との５個のモジュールから構成される。
【００１９】
電力状態データベース４００は、計算機の消費電力と計算機の状態の組み合わせを示すテーブルを格納するデータベースであり、計算機の消費電力推移パターンと計算機の状態を体系化した波形パターンテーブル４１０（図３参照）と、計算機の消費電力範囲と計算機の状態を体系化した波形範囲テーブル４２０（波形範囲情報）（図５参照）と、計算機が正常に動作している場合の状態遷移を格納した状態遷移テーブル４３０（状態遷移情報）（図７参照）、といったテーブルを持っている。なお、本実施形態では、電力状態データベース４００は、外部ストレージであるストレージ３１０に格納されているとしているがこれに限定されるものではない。電力状態データベース４００は、監視サーバ３００の内部ストレージに記憶してもよい。
【００２０】
図２は、計算機の消費電力の実測データの例を示す説明図である。図２には、計算機の起動からダンプを採取し、スタンバイするまでの消費電力の変化（縦軸）を、経過時間（横軸）でもってグラフ化して示している。計算機５００の消費電力は、計算機５００の構成要素が消費する電力値である。図１に示すように、一般に計算機５００は図示していないが、プロセッサ、メモリ、電源装置、ファン、計算機５００と外部装置を接続するためのアダプタなどを有する。プロセッサの数や搭載されているメモリの容量やアダプタの数によっても消費電力値は変わる。しかし、一般にはプロセッサの数やメモリ容量は計算機５００の稼動中に動的に変わることは無い。
【００２１】
稼動中に大きな変化を示すのはプロセッサである。プロセッサは半導体上に非常に多くの論理回路が搭載されており、論理回路が動作するために電力を消費するため、プロセッサ全体としての消費電力値は大きくなる。一方で、プロセッサの消費電力を低減する技術は進化しており、使用していないプロセッサの論理回路は電力を消費しないようにすることができる。そのため、命令を実行していない状態のプロセッサは消費電力が小さい。しかし、高負荷になりプロセッサの利用率が高くなると、プロセッサ内の論理回路の多くが動作状態になるため消費電力が大きくなる。このように、計算機５００の消費電力は、搭載した構成要素によって静的な消費電力は変わるが、計算機５００が稼動中に消費電力が動的に変化する主な要素はプロセッサの稼働率である。
【００２２】
つまり、計算機５００の消費電力は、負荷に関係なく構成要素が定常的に消費している電力（定常電力）と、プロセッサのように負荷の大きさで動的に変化する電力（可変電力）との和と表現することができる。すなわち、定常電力は、電源ＯＦＦ（電源オフ）（６１１）・スタンバイ６１２・ダンプ採取終了６１６・スタンバイ６１７の電力をほとんど使用せずに一定で推移している電力（の最大値）を意味し、可変電力は起動中６１３からダンプ採取中６１５（ダンプ採取しないときは起動中６１３から稼動中６１４）の、プロセッサが動作しているときの消費電力の推移が激しいときの電力から、「定常電力」を差し引いた電力のことを意味する。
【００２３】
例えば、図２では、電源ＯＦＦ（６１１）の状態では消費電力は０ワット（Ｗ）だが、スタンバイ６１２では１Ｗ、その後、起動中６１３では計算機５００の一部の構成要素に電源が入るため４０Ｗ、稼動中６１４以降は計算機５００の全ての構成要素に電源が入り、かつプロセッサの稼働率により電力値が変化している。起動中６１３以降の電力値の変化は、前述の可変電力でありプロセッサの稼働率により変化するためプロセッサの負荷状態を表していると言ってよいことになる。
【００２４】
なお、図２におけるスタンバイとは、プロセッサなどが動いていない状態を意味し、Ｗｉｎｄｏｗｓ（登録商標）での、システムやアプリケーションのプロセス状態が保存されているメモリへの電力供給は継続し、そのほかのデバイスに対する電力供給をＯＦＦにするモードとは異なる。
【００２５】
図３は、電力状態データベース４００（図１参照）に格納されている波形パターンテーブル４１０の例である。波形パターンテーブル４１０には、各状態（電源ＯＦＦ、スタンバイ、起動中、稼動中、ダンプ採取中、ダンプ終了）と、各状態における特徴となる消費電力推移情報とが示されている。具体的には、電源ＯＦＦの状態のときは０Ｗ、スタンバイのときは１Ｗ、起動中のときは、４０Ｗ、３０Ｗ、４０Ｗ、３０Ｗと振動する波形となる。稼動中のときは、起動中のときより消費電力が増え、１４０Ｗ、１９０Ｗ、２２０Ｗ、１８０Ｗ、２００Ｗ、１６０Ｗ、１９０Ｗと比較的振動幅がおおきくなっている。また、ダンプ採取中のときは、稼動中のときの消費電力よりは全体的に小さくなり、８０Ｗ、１００Ｗ、１２０Ｗ、６０Ｗ、１２０Ｗ、６０Ｗ、８０Ｗとなっている。さらに、ダンプ採取終了のときは、１Ｗとなっている。
【００２６】
波形パターンテーブル４１０の作成のときには、具体的には、所定時間毎の平均値、所定時間間隔で測定した測定値などが用いられる。ここでは、前者の所定時間毎の平均値を例に説明する。波形パターンテーブル４１０テーブルを作成するために、各状態での測定時間が指定される。
【００２７】
すなわち、各状態の測定時間が指定され、電源ＯＦＦ〜ダンプ採取終了まで、隙間なく測定するわけではなく、それぞれの状態のなかで、特徴となる現象が把握できる測定時間において測定する。この測定時間で、稼動中の測定時間と、ダンプ採取中の測定時間に同じ長さの時間を指定すれば、「所定時間」も両方で同じになる。
【００２８】
図３に示した波形パターンテーブル４１０の場合、スタンバイのときは、ほぼ値が変わらない状態を示す特徴の値である１Ｗが示されており、稼動中、ダンプ採取中には、各状態の特徴が現れる７つの値で示されていることになる。
【００２９】
波形パターンテーブル４１０を含む電力状態データベース４００（図１参照）の内容は、計算機５００の稼動中に取得してもよいし、計算機５００が運用に入る前に事前に取得してもよい。例えば、計算機５００の管理者が、電源ＯＮ（電源オン）の契機から消費電力の測定を開始し、計算機５００のオペレーティングシステムの起動が完了する契機で消費電力の測定を停止し、消費電力測定装置１００から消費電力の測定結果を取得することで起動中のパターンを取得することができる。
【００３０】
ここでのポイントは、計算機５００の状態の特徴が表れるパターンを取得することである。消費電力の変化が激しいパターンを測定する場合は消費電力を測定する間隔を短くし、消費電力の変化があまり起こらない場合は、消費電力を測定する間隔を長くするなどの取得方法が考えられる。つまり、電力状態データベース４００には、消費電力が変化した時間とその変化量を格納するようにすることで、対応できるパターンを増やすことができる。
【００３１】
前述の通り、消費電力は負荷に関係なく構成要素が定常的に消費している電力（定常電力）と、プロセッサのように負荷の大きさで動的に変化する電力（可変電力）がある。電力状態データベース４００には、計算機５００の消費電力の測定結果（定常電力＋可変電力）を格納してもよいし、プロセッサの負荷の状態を示す可変電力だけを格納してもよい。定常電力の値は、計算機５００を起動し、プロセッサの負荷が無い状態の電力であり、この電力を消費電力測定装置１００で測定することで取得できる。可変電力だけを取り出すには、消費電力測定装置１００で取得した電力値から定常電力値を差し引くことで求めることができる。可変電力だけを電力状態データベース４００に登録しておくことで、計算機５００の対応の範囲を広げることができるようになる。つまり、前述の定常電力が異なる計算機５００、例えばメモリ容量やプロセッサ数が異なる計算機でも状態を検出できるようになるため幅広い機種に対応した管理が可能になる。
【００３２】
図４は、電力状態データベース４００の波形パターンデータの概念図である。４１１は電源ＯＦＦ状態、４１２はスタンバイ状態、４１３は起動中状態、４１４は稼動中状態、４１５はダンプ採取中状態、４１６はダンプ採取終了状態を概念化した図である。各消費電力推移のグラフの横軸は時間、縦軸は消費電力を示している。このように、各状態における消費電力の特長となる変化を登録しておくことで、消費電力の変化を検出することで、計算機５００の状態を推測することができるようになる。
【００３３】
図５は、電力状態データベース４００に格納された波形範囲テーブル４２０の例である。波形範囲テーブル４２０は、計算機５００の状態を消費電力推移情報（図４参照）よりも簡単化したテーブルである。計算機５００の状態を、消費電力の上限と下限で示している。このテーブルにより、計算機５００のおおまかな状態を容易に検出することができる。例えば、電源ＯＦＦ状態かスタンバイ状態か起動中・稼動中のいずれの状態にあるかは、消費電力の範囲を見ることで検出できるようになる。
【００３４】
図６は、電力状態データベースの波形範囲データの概念図である。４２１は電源ＯＦＦ状態、４２２はスタンバイ状態、４２３は起動中状態、４２４は稼動中状態、４２５はダンプ採取中状態、４２６はダンプ採取終了状態を概念化した図である。
【００３５】
図７は、電力状態データベース４００に格納された状態遷移テーブル４３０の例である。状態遷移テーブル４３０は、計算機５００の状態を検出しやすくするためのテーブルである。ある状態から他の状態へ遷移した場合に、他の状態の候補を容易に導くことができるようになる。例えば、電源ＯＦＦの状態から次に発生する可能性がある状態はスタンバイしかなく、電源ＯＦＦからダンプ採取中状態になることはない。このように遷移の候補をあらかじめ登録しておくことで、本発明における計算機５００の状態の精度を高めることができるようになる。
【００３６】
図８は、電力状態データベース４００の状態遷移データの概念図である。４３１と４３２が状態遷移テーブル４３０に例示した計算機の状態遷移データが示す状態変化である。すなわち、４３１の状態遷移１の場合、電源ＯＦＦ状態から、スタインバイ状態、起動中状態、稼動中状態、スタンバイ状態、そして電源ＯＦＦ状態に遷移することを示している。また、４３２の状態遷移２の場合、電源ＯＦＦ状態から、スタインバイ状態、起動中状態、稼動中状態、ダンプ採取中状態、ダンプ採取終了状態、スタンバイ状態、そして電源ＯＦＦ状態に遷移することを示している。
【００３７】
次に各部の処理について説明する。図９から図１３は、状態検出プログラム２００（図１参照）内の各部の流れを例示した図である。これらの図について、以下の例で説明する。
【００３８】
＜電力状態データベースのテーブル作成例１＞
図９と図１０を参照して、消費電力の推移パターンと計算機の状態を対応付けて、電力状態データベースに格納する手順の例を示す。まず、消費電力の推移パターンと計算機の状態を対応付けるときの計算機の操作を図９で説明する。
【００３９】
図９は、推移パターン採取時の計算機の操作２５０を示すフローチャートである。最初に、計算機５００の管理者は、計算機の電源を投入し（ステップＳ２５１）、オペレーティングシステム（ＯＳ）の起動を待つ（ステップＳ２５２）。管理者は、オペレーティングシステムが起動したことを確認したあと、ＯＳを強制終了する（ステップＳ２５３）。そして、管理者は、ダンプの採取終了を待ち（ステップＳ２５４）、ダンプの採取が終了したら、電源を切断する（ステップＳ２５５）。
【００４０】
なお、図９において、管理者の操作として説明したが、監視サーバ３００には、計算機５００にリモートログインし、図９の処理をするプログラムを有しており、管理者が管理コンソール３２０を介して指示することにより、推移パターン採取時の計算機の操作２５０を自動的に実施してもよい。
【００４１】
図１０は、計算機状態データ作成部２１０の処理を示すフローチャートである。図１０を参照して、データ取得部２０５を介して取得した消費電力の推移パターンから計算機の状態を対応付けて電力状態データベースに格納するときの、計算機状態データ作成部２１０の処理について説明する。
【００４２】
図９の計算機の操作の結果、消費電力測定装置１００が、図２に示した計算機の消費電力の推移パターンを出力する。計算機状態データ作成部２１０は、消費電力測定装置１００からデータ取得部２０５を介して電源投入から電源切断までの計算機の消費電力の推移パターンを取得し（ステップＳ２１１）、管理コンソール３２０からの入力に基づいて、消費電力の推移パターンを切り取るための各状態（電源ＯＦＦ、スタンバイ、起動中、稼動中、ダンプ採取中、ダンプ採取終了）の設定時間を、管理コンソール３２０から受理する（ステップＳ２１２）。
【００４３】
計算機状態データ作成部２１０は、消費電力の推移パターンを、各状態の時間で切り取り（ステップＳ２１３）、切り取られた消費電力の推移パターンを各状態と対応付けて、その結果を、電力状態データベースに格納する（ステップＳ２１４）。
【００４４】
前述の通り、消費電力は負荷に関係なく構成要素が定常的に消費している電力（定常電力）と、プロセッサのように負荷の大きさで動的に変化する電力（可変電力）がある。電力状態データベース４００には、計算機５００の消費電力の測定結果（定常電力＋可変電力）を格納してもよいし、プロセッサの負荷の状態を示す可変電力だけを格納してもよい。定常電力の値は、計算機５００を起動し、プロセッサの負荷が無い状態の電力であり、この電力を消費電力測定装置１００で測定することで取得できる。可変電力だけを取り出すには、消費電力測定装置１００で取得した電力値から定常電力値を差し引くことで求めることができる。可変電力だけを電力状態データベースに登録しておくことで、計算機５００の対応の範囲を広げることができるようになる。つまり、前述の定常電力が異なる計算機５００、例えばメモリ容量やプロセッサ数が異なる計算機でも状態を検出できるようになるため幅広い機種に対応した管理が可能になる。
【００４５】
本実施形態の監視サーバ３００の計算機状態データ作成部２１０は、データ取得部２０５から、計算機５００の電源の投入から計算機５００の電源の切断までの測定データを取得し（ステップＳ２１１）、状態別の消費電力のパターンを格納するための計算機５００の状態の設定時間を受理し（ステップＳ２１２）、設定時間に基づき測定データを切り取り（ステップＳ２１３）、切り取られた測定データを計算機５００の状態と対応付けて電力状態データベース４００に格納する（ステップＳ２１４）ことができる。
【００４６】
＜計算機状態の検出例１＞
図１１は、計算機状態検出部２２０の処理を示すフローチャートである。図１１を参照して、前述の方法で作成した電力状態データベースに格納されているデータから、計算機５００の状態を検出する手順の例を示す。
【００４７】
計算機状態検出部２２０は、消費電力測定装置１００から、データ取得部２０５を介して一定時間内の計算機５００の消費電力の推移パターンを取得し（ステップＳ２２１）、取得した推移パターンに類似する推移データ（図３に示す消費電力推移情報）を、電力状態データベースから検索する（ステップＳ２２２）。そして、計算機状態検出部２２０は、類似パターンがあるか否かを判定する（ステップＳ２２３）。類似する推移データを検索できた場合（ステップＳ２２３，Ｙｅｓ）、計算機状態検出部２２０は、対応付けられた状態を、計算機５００の状態であると判断し（ステップＳ２２４）、ステップＳ２２６に進む。類似する推移データが電力状態データベースに登録されていない場合（ステップＳ２２３，Ｎｏ）、計算機状態検出部２２０は、計算機５００の状態を「不明」と判断し（ステップＳ２２５）、ステップＳ２２６に進む。その後、計算機状態検出部２２０は、判断した計算機５００の状態を管理コンソール３２０に通知し（ステップＳ２２６）、処理を終了する。
【００４８】
具体例を説明すると、ステップＳ２２３において、計算機５００の消費電力の推移パターンと消費電力推移情報（推移データ）のパターンマッチングで状態を判定するので、ある特定時点の消費電力だけでなく、例えば、
１３５Ｗ→１９５Ｗ→２１０Ｗ→１９０Ｗ→２００Ｗ→１５５Ｗ→１９５Ｗ
という推移パターンが測定されたとすると、図３の稼動中の消費電力推移情報に似ているので、ステップＳ２２４において「稼動中」と判断するとよい。
【００４９】
本実施形態の監視サーバ３００（計算機の状態監視装置）は、監視対象となる計算機５００の消費電力を測定する消費電力測定装置１００の測定データを用いて計算機５００の状態を監視する計算機の状態監視装置である。計算機の状態監視装置は、計算機５００の状態別の消費電力のパターンが格納されている電力状態データベース４００と、消費電力測定装置１００が測定した消費電力の測定データを取得するデータ取得部２０５と、取得した測定データの推移パターンが、電力状態データベース４００に格納されているどの状態のパターンと類似するか否かを判定し（ステップＳ２２３）、類似すると判定したパターンに対応する状態を、監視対象の計算機の状態として検出する（ステップＳ２２４）計算機状態検出部２２０とを有している。
【００５０】
＜電力状態データベースのテーブル作成例２＞
図１０において、計算機状態データ作成部２１０は、消費電力測定装置１００からの消費電力の推移パターンと、管理コンソール３２０からの計算機５００の各状態の時間を受け取ったあと、各状態の時間内での消費電力の最小値と最大値を求める。この最小値と最大値を計算機５００の状態における消費電力の下限値および上限値とし、計算機５００の状態と対応付けて電力状態データベースに、波形範囲テーブル４２０（図５参照）として格納する。
【００５１】
＜計算機状態の検出例２＞
図１１において、計算機状態検出部２２０は、消費電力測定装置１００から受け取った一定時間内の計算機５００の消費電力の推移パターンの電力範囲（最小値・最大値）を求める。この電力範囲を包含する消費電力の下限値・上限値の組を電力状態データベース４００の波形範囲テーブル４２０から検索する。包含する範囲を検索できた場合には、対応付けられた状態を、計算機５００の状態であると判断する。包含する範囲が電力状態データベース４００に登録されていない場合は、計算機５００の状態を「不明」とする。その後、判断した計算機５００の状態を管理コンソール３２０に通知する。
【００５２】
なお、前述では、包含する範囲を検索できた場合には、対応付けられた状態を、計算機５００の状態であると判断しているが、これに限定されるものではない。測定データの推移パターンから消費電力の最小値および最大値を求め、電力状態データベース４００内の推移データの消費電力の波形範囲テーブル４２０（波形範囲情報）と類似するパターンであるとき、計算機５００の状態であると判断してもよい。
【００５３】
本実施形態の監視サーバ３００（計算機の状態監視装置）は、電力状態データベース４００に、計算機５００の状態別の消費電力のパターンを計算機５００の消費電力の下限値および上限値を対応付けた消費電力の波形範囲テーブル４２０（波形範囲情報）を格納しており、計算機状態検出部２２０は、取得した測定データの推移パターンから消費電力の最小値および最大値を求め、取得した測定データの推移パターンが、消費電力の波形範囲情報に基づいて電力状態データベース４００に格納されているどの状態のパターンと類似するか判定し、類似すると判定したパターンに対応する状態を、監視対象の計算機の状態として検出することができる。
【００５４】
＜計算機の異常状態検出例＞
図１２は、計算機状態監視部２３０の処理を示すフローチャートである。図１２を参照して計算機の状態異常を検出する方法を示す。計算機状態監視部２３０は、計算機状態検出部２２０から計算機５００の状態を取得し（ステップＳ２３１）、状態遷移テーブル４３０から該当する状態を取得する（ステップＳ２３２）。
【００５５】
計算機状態監視部２３０は、さらに定期的に計算機状態検出部２２０から計算機５００の状態を取得し（ステップＳ２３３）、現在の状態は前回の状態と同じであるか否かを判定し（ステップＳ２３４）、同じである場合（ステップＳ２３４，Ｙｅｓ）、ステップＳ２３３に戻る。現在の状態が前回の状態と同じでない場合（ステップＳ２３４，Ｎｏ）、計算機状態監視部２３０は、状態遷移テーブル４３０から次の状態を取得し（ステップＳ２３５）、現在の状態は状態遷移テーブル４３０から取得した状態と同じであるか否かを判定し（ステップＳ２３６）、同じである場合（ステップＳ２３６，Ｙｅｓ）、ステップＳ２３３に戻る。すなわち、電力状態データベース４００の状態遷移テーブル４３０と比較して、正常な遷移であれば前述の処理を繰り返す。
【００５６】
計算機状態監視部２３０は、状態が変化した場合（ステップＳ２３６，Ｎｏ）、計算機が状態異状（異常な状態）に遷移したと判断して、管理コンソールに状態異常を通知し（ステップＳ２３７）、処理を終了する。
【００５７】
なお、ステップＳ２３５において、同じ状態が複数ある場合には、すべての「次の状態」を取得するとよい。また、ステップＳ２３６に複数の「次の状態」がある場合は、どれかと一致するか比較するとよい。
【００５８】
図１２の処理内容を具体的にさらに説明する。
ステップＳ２３１で、例えば、「起動中」を取得する。
ステップＳ２３２で、状態遷移テーブル４３０から該当する状態である「状態３」を取得する。
ステップＳ２３３で、例えば、「稼動中」を取得すると、ステップＳ２３４で、Ｎｏとなり、ステップＳ２３５に進む。
ステップＳ２３５で、状態遷移テーブル４３０から「状態４」を取得する。
ステップＳ２３６で、状態遷移テーブル４３０から「起動中」の次の状態は「稼動中」であり、そのときは「状態４」であるから、ステップＳ２３５で取得したものと同じということになり、正常な遷移状態であることを意味する。
【００５９】
複数の状態がある場合の他の例についてさらに説明する。
ステップＳ２３１で、例えば、「スタンバイ」を取得する。
ステップＳ２３２で、状態遷移テーブル４３０からこのときの該当する状態は、「状態２」、「状態５」、「状態７」が取得される。
ステップＳ２３３で、例えば、「起動中」を取得すると、ステップＳ２３４で、Ｎｏとなり、ステップＳ２３５に進む。
ステップＳ２３５で、状態遷移テーブル４３０から「状態３」を取得する。
ステップＳ２３６で、状態遷移テーブル４３０から「スタンバイ」の次の状態は「起動中」「電源ＯＦＦ」であり、そのときは、「状態３」、「状態１」であるから、符号２３５で取得したものが含まれるから、ステップＳ２３５で取得したものと同じということになり、正常な遷移状態であることを意味する。
【００６０】
本実施形態の監視サーバ３００（計算機の状態監視装置）は、電力状態データベース４００に、計算機５００の状態の遷移情報である状態遷移テーブル４３０（状態遷移情報）を格納しており、計算機状態監視部２３０は、計算機状態検出部２２０で取得された状態に基づく計算機５００の遷移状態が、状態遷移情報の状態遷移から外れた場合に、計算機の状態が異常であると判断することができる。
【００６１】
＜計算機稼動状態検出例＞
図１３は、稼動状態検出部２４０の処理を示すフローチャートである。計算機５００は、プロセッサ（ＣＰＵ（Central Processing Unit））の稼動中においては、一般的に他の電気製品に比べて、消費電力が短い時間に大きく変動する。この性質を利用して、計算機の稼動状態を検出する方法について図１３を参照して説明する。
【００６２】
稼動状態検出部２４０は、消費電力測定装置１００から、データ取得部２０５を介して一定時間内の計算機の消費電力の推移パターンを取得し（ステップＳ２４１）、取得した推移パターンの変動（消費電力の最小値と最大値の差）を求める（ステップＳ２４２）。稼動状態検出部２４０は、変動が、比較的平坦（例えば、５Ｗ以内）か否かを判定する（ステップＳ２４３）。変動が比較的平坦であれば（ステップＳ２４３，Ｙｅｓ）、稼動状態検出部２４０は、計算機５００は「非稼動状態」であると判断し（ステップＳ２４４）、ステップＳ２４６に進む。一方、稼動状態検出部２４０は、推移パターンの変動が大きい場合（ステップＳ２４３，Ｎｏ）、計算機５００は「稼動状態」であると判断し（ステップＳ２４５）、ステップＳ２４６に進む。
【００６３】
稼動状態検出部２４０は、前回の状態と同じであるか否かを判定し（ステップＳ２４６）、前回の状態と同じである場合（ステップＳ２４６，Ｙｅｓ）、ステップＳ２４１に戻り、前回の状態と異なる場合（ステップＳ２４６，Ｎｏ）、計算機５００の状態を管理コンソール３２０に通知し（ステップＳ２４７）、処理を終了する。
【００６４】
通常、計算機５００のＣＰＵの使用率履歴をモニターする場合、該当する計算機５００の内部でＣＰＵの使用率を測定する機構が必須であるが、本実施形態では、消費電力からＣＰＵの稼動状態を判定するので計算機内部への機構の組み込みが必要なく、また、ＣＰＵの使用率を測定する機構を持っていない計算機でも、状態を検出できる。
【００６５】
本実施形態の監視サーバ３００の稼動状態検出部２４０は、データ取得部２０５が取得した測定データの変動が、所定の値を推移していて変動がない場合、前記計算機が稼動していないと判断することができる。
【００６６】
本実施形態により、計算機５００に特別な管理用ソフトウェアをインストールすることなく計算機５００の状態を検出できるようになる。管理用ソフトウェアは、一般にオペレーティングシステムが起動した後に動作可能状態となるため、オペレーティングシステムが起動し終わるまでは管理することができない。
【００６７】
しかし、本実施形態では、管理用ソフトウェアを用いずに消費電力値を用いた状態検出が可能であり、オペレーティングシステムの起動を管理することができるようになる。また、オペレーティングシステムがハングアップした場合、管理用ソフトウェアも稼動できず管理できなくなるが、本発明を用いることでオペレーティングシステムの状態に依存せず管理することができる。
【００６８】
また、従来の管理用ソフトウェアと共存することも可能である。オペレーティングシステムの起動や異常を検出する目的で本発明を用い、オペレーティングシステム稼動後は従来の管理用ソフトウェアが管理することも考えられる。この場合、本実施形態は、オペレーティングシステムの起動の検出、オペレーティングシステムの異常時の検出だけを行い、稼動中は検出しないようにすることで実現できる。また他の方法として、本発明による稼動中の異常検出時は、管理者に警告を発するなどの方法も考えられる。
【００６９】
本実施形態で提案する消費電力から計算機の状態を検出する手段により、計算機上で監視プログラムを実行させていなくても計算機の以下の動作状態を把握できる。
（１）起動前〜起動〜停止にいたる全段階の計算機の動作状態の把握。
（２）計算機の異常終了状態の検出。
【００７０】
また、計算機が正常に起動〜停止する場合の消費電力の推移パターンを電力状態データベースに格納しておき、計算機の消費電力の推移実績と、電力状態データベース内の推移パターンを比較して、双方が一致していなければ計算機異常として検出することができる。
【００７１】
また、計算機に特有の消費電力の推移パターンを利用して、プロセッサ（ＣＰＵ）の稼動状態を検出することができる。
【符号の説明】
【００７２】
１００    消費電力測定装置
１１０    電源
２００    状態検出プログラム
２０５    データ取得部
２１０    計算機状態データ作成部
２２０    計算機状態検出部
２３０    計算機状態監視部
２４０    稼動状態検出部
３００    監視サーバ（計算機の状態監視装置）
３０１    メモリ
３０２    プロセッサ（ＣＰＵ）
３１０    ストレージ
３２０    管理コンソール
４００    電力状態データベース
４１０    波形パターンテーブル
４２０    波形範囲テーブル（波形範囲情報）
４３０    状態遷移テーブル（状態遷移情報）
５００    計算機
【図１】
2011180869.tif 000003
【図２】
2011180869.tif 000004
【図３】
2011180869.tif 000005
【図４】
2011180869.tif 000006
【図５】
2011180869.tif 000007
【図６】
2011180869.tif 000008
【図７】
2011180869.tif 000009
【図８】
2011180869.tif 000010
【図９】
2011180869.tif 000011
【図１０】
2011180869.tif 000012
【図１１】
2011180869.tif 000013
【図１２】
2011180869.tif 000014
【図１３】
2011180869.tif 000015