(57)【要約】【課題】ハードウェアレベルでの二重化を行わなくても、管理コントローラにリセットが発生したときに、管理コントローラの機能が維持されるようにする。【解決手段】管理コントローラ１０１がリセット状態に入るときに、管理コントローラ１０１が保持するデータを取得するＯＳ側データ取得手段１０２と、ＯＳ側データ取得手段１０２が取得したデータを保持するＯＳ側データ保持手段１０３と、ＯＳの管理の下で監視処理を実行し、監視処理によって収集したデータをＯＳ側データ保持手段１０３に格納するＯＳ側監視手段１０４と、管理コントローラのリセット状態が解除されると、ＯＳ側データ保持手段１０３が保持しているデータを管理コントローラ１０１に送信するＯＳ側保持データ送信手段１０５とを備えている。【選択図】図１４
2018169737.tif 000002
【特許請求の範囲】
【請求項１】
ＯＳが動作し、少なくとも周辺ハードウェアの監視処理を行って監視にもとづくデータを収集して保持する管理コントローラを備えたコンピュータ装置で実行されるシステム監視方法であって、
前記管理コントローラがリセット状態に入るときに、前記管理コントローラが保持するデータを取得し、
取得されたデータをＯＳ側データ保持手段に格納し、
前記ＯＳの管理の下で前記監視処理を実行し、該監視処理によって収集されたデータを前記ＯＳ側データ保持手段に格納し、
前記管理コントローラのリセット状態が解除されると、前記ＯＳ側データ保持手段が保持しているデータを前記管理コントローラに送信する
ことを特徴とするシステム監視方法。
【請求項２】
ＯＳの管理の下で動作するソフトウエアで、管理コントローラがリセット状態であるときの監視処理を実行する
請求項１記載のシステム監視方法。
【請求項３】
管理コントローラがリセット状態に入るとき、および、リセット状態が解除されたときに、ＯＳの側に割り込みを発行する
請求項１または請求項２記載のシステム監視方法。
【請求項４】
ＯＳの管理の下で、管理コントローラに対する問い合わせを行い、
管理コントローラが前記問い合わせに対して応答しない場合に、ＯＳの管理の下での監視処理を開始する
請求項１から請求項３のうちのいずれか１項に記載のシステム監視方法。
【請求項５】
ＯＳが動作し、少なくとも周辺ハードウェアの監視処理を行う管理コントローラを備えたコンピュータ装置であって、
前記管理コントローラがリセット状態に入るときに、前記管理コントローラが保持するデータを取得するＯＳ側データ取得手段と、
前記ＯＳ側データ取得手段が取得したデータを保持するＯＳ側データ保持手段と、
前記ＯＳの管理の下で前記監視処理を実行し、該監視処理によって収集したデータを前記ＯＳ側データ保持手段に格納するＯＳ側監視手段と、
前記管理コントローラのリセット状態が解除されると、前記ＯＳ側データ保持手段が保持しているデータを前記管理コントローラに送信するＯＳ側保持データ送信手段と
を備えたことを特徴とするコンピュータ装置。
【請求項６】
ＯＳ側監視手段は、ＯＳの管理の下で動作するソフトウエアによって監視処理を実行する
請求項５記載のコンピュータ装置。
【請求項７】
管理コントローラがリセット状態に入るとき、および、リセット状態が解除されたときに、ＯＳの側に割り込みを発行する割込手段を備えた
請求項５または請求項６記載のコンピュータ装置。
【請求項８】
ＯＳの管理の下で、管理コントローラに対する問い合わせを行う問い合わせ手段を備え、
ＯＳ側監視手段は、管理コントローラが前記問い合わせに対して応答しない場合に、監視処理を開始する
請求項５から請求項７のうちのいずれか１項に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータにおける監視に関するシステム監視方法、および管理コントローラを備えたコンピュータ装置に関する。
【背景技術】
【０００２】
コンピュータ装置において、ＯＳ（Operating System）が動作するＣＰＵ（Central Processing Unit ）とは独立した管理コントローラ（ＢＭＣ：Baseboard Management Controller ）が実装されていることが多い。管理コントローラは、コンピュータ装置においてシステム監視を行う。管理コントローラ側の機能が増えると、ハードウェアやファームウェア制御が複雑になる。その結果、例えば、管理コントローラの動作が不安定になって、システム管理者が、明示的に管理コントローラをリセットしたり、ファームウェアを更新したりする状況が発生する。
【０００３】
また、管理コントローラは、一般に、自己リセット機能を有している。システム管理者は、管理コントローラにアクセスできない場合に明示的にリセットを発行することがある。また、管理コントローラ自身のウォッチドッグタイマ機能によって自動的にリセットが発行されることがある。また、管理コントローラのファームウェアアップデート時にリセットが発行される。
【０００４】
リセットを発行した場合、管理コントローラのリセットが行われている間（例えば、数分間）、初期化処理などに起因して、管理コントローラの各種管理機能や障害監視機能が停止する。その結果、管理コントローラが、リセット中（リセット状態にあるとき）に発生したイベントを捕捉できず、発生したイベント情報が消失するおそれがある。すなわち、管理コントローラのリセットが行われている間、管理系の動作履歴の記録、センサ監視、障害発生の検出や記録などができない。
【０００５】
また、リセット後（リセット状態が解除された後）に、管理コントローラが起動しない可能性もある。従って、コンピュータ装置を運用するときに、リセットに伴うリスクを回避したいという要求が増えている。例えば、リセットを実施しても、その間の監視を継続したいという要求がある。
【０００６】
特許文献１には、管理コントローラが障害の情報を管理することができない場合でも、他の手段によって障害の情報を管理できるようにするシステムが記載されている。
【０００７】
特許文献１に記載されたシステムでは、管理コントローラを監視する役割を担う障害情報生成モジュールが、管理コントローラが障害の情報を管理することができないことを検知すると、障害の情報を管理サーバに送信する。そして、管理サーバが、障害の情報を記憶する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３−１０９７２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
管理コントローラのリセットに関する上記の問題に対する対策として、管理コントローラをハードウェアレベルで二重化する方式が考えられる。その場合、片方の管理コントローラがリセットされたときには、スタンバイ状態の他方の管理コントローラが活性化されて、管理コントローラの機能が維持される。
【００１０】
しかし、その方式では、ハードウェアレベルで二重化される。ハードウェアに対する変更や作りこみが必要であることから、その方式は、大規模サーバ向けである。その方式は、制御方式の変更等が難しい小規模サーバには不向きである。
【００１１】
なお、特許文献１に記載されたシステムも、管理コントローラと管理サーバとで、管理コントローラの機能が二重化されたシステムに相当する。
【００１２】
本発明は、ハードウェアレベルでの二重化を行わなくても、管理コントローラにリセットが発生したときに、管理コントローラの機能が維持されるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
本発明によるシステム監視方法は、ＯＳが動作し、少なくとも周辺ハードウェアの監視処理を行って監視にもとづくデータを収集して保持する管理コントローラを備えたコンピュータ装置で実行されるシステム監視方法であって、管理コントローラがリセット状態に入るときに、管理コントローラが保持するデータを取得し、取得されたデータをＯＳ側データ保持手段に格納し、ＯＳの管理の下で監視処理を実行し、監視処理によって収集されたデータをＯＳ側データ保持手段に格納し、管理コントローラのリセット状態が解除されると、ＯＳ側データ保持手段が保持しているデータを管理コントローラに送信することを特徴とする。
【００１４】
本発明によるコンピュータ装置は、ＯＳが動作し、少なくとも周辺ハードウェアの監視処理を行う管理コントローラを備えたコンピュータ装置であって、管理コントローラがリセット状態に入るときに、管理コントローラが保持するデータを取得するＯＳ側データ取得手段と、ＯＳ側データ取得手段が取得したデータを保持するＯＳ側データ保持手段と、ＯＳの管理の下で監視処理を実行し、監視処理によって収集したデータをＯＳ側データ保持手段に格納するＯＳ側監視手段と、管理コントローラのリセット状態が解除されると、ＯＳ側データ保持手段が保持しているデータを管理コントローラに送信するＯＳ側保持データ送信手段とを備えたことを特徴とする。
【発明の効果】
【００１５】
本発明によれば、ハードウェアレベルでの二重化を行わなくても、管理コントローラにリセットが発生したときに、管理コントローラの機能が維持される。
【図面の簡単な説明】
【００１６】
【図１】コンピュータ装置を管理用端末とともに示すブロック図である。
【図２】管理コントローラを制御する管理コントローラファームウェアの内部の各機能を示すブロック図である。
【図３】ＯＳ上で動作する管理制御プロセスを示すブロック図である。
【図４】センサ一覧情報の一例を示す説明図である。
【図５】イベント情報格納部に格納されているイベント情報の一例を示す説明図である。
【図６】イベント情報仮格納部に格納されているイベント情報の一例を示す説明図である。
【図７】センサ仕様格納部に格納されているセンサ仕様情報の一例を示す説明図である。
【図８】ＯＳ側の動作を示すフローチャートである。
【図９】管理コントローラの動作を示すフローチャートである。
【図１０】管理コントローラがリセットされるときの管理コントローラおよびＯＳ側の動作を示すフローチャートである。
【図１１】管理コントローラが停止しているときのＯＳ側の動作を示すフローチャートである。
【図１２】管理コントローラのリセットからの復旧時の管理コントローラおよびＯＳ側の動作を示すフローチャートである。
【図１３】管理コントローラがストールした場合の管理コントローラおよびＯＳ側の動作を示すフローチャートである。
【図１４】本発明によるコンピュータ装置の主要部を示すブロック図である。
【図１５】本発明による他の態様のコンピュータ装置の主要部を示すブロック図である。
【図１６】本発明によるさらに他の態様のコンピュータ装置の主要部を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面を参照して説明する。
【００１８】
実施形態１．
図１は、コンピュータ装置１を管理用端末１１とともに示すブロック図である。外部の管理用端末１１は、管理コントローラ６が保持するイベント情報（イベントデータ）を取得したりするための端末である。なお、コンピュータ装置１の実現例として、例えば、パーソナルコンピュータやサーバがある。
【００１９】
図１に示す例では、コンピュータ装置１には、ＣＰＵ２、メモリ３、チップセットコントローラ４、ディスク（例えば、ハードディスク）５、管理コントローラ６、ファンセンサ７、温度センサ８、電圧センサ９、およびshared LAN（shared LANポート）１０を含む。
【００２０】
ＣＰＵ２は、チップセットコントローラ４およびメモリ３に接続されている。チップセットコントローラ４には、Ｉ／Ｏとして、ディスク５とshared LAN１０とが接続されている。ＯＳは、ＣＰＵ２、メモリ３、チップセットコントローラ４、ディスク５、shared LAN１０上の各コンポーネントを利用して稼働している。
【００２１】
チップセットコントローラ４には、管理コントローラ６が接続されている。管理コントローラ６は、ファンセンサ７、温度センサ８、電圧センサ９など、チップセットコントローラ４とシリアルバス（例えば、Ｉ２Ｃバス）で接続されている各種センサのセンサ値を、ポーリングすることによって定期的に取得する。
【００２２】
管理コントローラ６は、取得したセンサ値が異常を呈している場合に、センサ値をイベント情報として、内部ログとして記録する機能を持つ。また、管理コントローラ６は、ＯＳ側でも使用されるshared LAN１０に接続されている。なお、管理用端末１１は、例えばIPMI(Intelligent Platform Management Interface) over LAN(Local Area Network)の機能を使って管理コントローラ６をアクセスし、管理コントローラ６が保持するイベント情報を取得できる構成であるとする。
【００２３】
図２は、管理コントローラ６を制御する管理コントローラファームウェア１２の内部の各機能を示すブロック図である。図２には、各機能がコンポーネントとして表された一例が示されている。なお、管理コントローラファームウェア１２の機能を、仮想マシンにおけるゲストＯＳ（仮想ＯＳ）で実現してもよい。
【００２４】
管理制御部１３は、ファームウェア全体の管理機能を制御している。管理制御部１３は、ＯＳ側の要求に応対したり、ネットワーク制御部２１からのIPMI over LAN による要求に応対したりする機能を有する。また、管理制御部１３は、イベント情報格納部やセンター情報の管理も行う。
【００２５】
センサ値収集部２０は、図１に示されたファンセンサ７、温度センサ８および電圧センサ９からセンサ情報を収集する。センサ仕様格納部１９には、センサ情報が示すセンサ値が正常であるか否かを判定するためのデータ（例えば、IPMI仕様におけるSensor Data Record: SDR ）が格納されている。管理制御部１３は、センサ値とセンサ仕様格納部１９に格納されているデータとを比較して、センサ値が異常であるかどうか判定する。
【００２６】
なお、管理制御部１３は、ファンセンサ７のセンサ値の異常を示すデータを、一旦、イベント情報仮格納部１８に格納する。そして、次に、ファンセンサ７のセンサ値の異常が検出されたときに、管理制御部１３は、イベント情報仮格納部１８の内容をチェックする。そして、管理制御部１３は、同じイベントが再び発生したと判断した場合に、イベント情報格納部１７に、センサ値の異常を示すデータを本イベントとして登録する。
【００２７】
また、管理制御部１３は、温度センサ８と電圧センサ９については、センサ異常を検出した場合は、直ちにイベント情報格納部１７にセンサ値の異常を示すデータをイベント情報として登録する。
【００２８】
また、管理コントローラファームウェア１２は、管理コントローラ６のリセット指示を受け付けるリセット指示部１４、リセット指示が行われたことをＯＳ側に伝えるためのＯＳ側への割り込みを生成する割り込み生成部１６、および、リセット指示部１４からのリセット指示を受けて、管理コントローラ６のリセットを行うリセット処理部１５を含む。リセット処理部１５によるリセット処理は、割り込み生成部１６によって割り込みが発行されてから、時間をおいて行われる。
【００２９】
図３は、ＯＳ上で動作する管理制御プロセス２２を示すブロック図である。管理制御プロセス２２は、ＯＳの管理の下で動作するソフトウェア（プログラム）で作成されている。管理制御プロセス２２を構成する各コンポーネントは、図２に示された管理コントローラファームウェア１２における各コンポーネントと同様に構成され、管理コントローラファームウェア１２における各コンポーネントと同様に動作する。
【００３０】
すなわち、センサ値の取得やイベント情報の登録を行う、イベント情報格納部２５、イベント情報仮格納部２６、センサ仕様格納部２７、およびセンサ値収集部２８の動作は、図２に示された対応する各コンポ―ネントの動作と同じである。なお、図３に示す管理制御プロセス２２は、イベント情報を生成するイベント情報生成部２９を有しているが、その機能は、管理制御部２３に含まれていてもよい。
【００３１】
ネットワークインタフェース（ＬＡＮドライバ）３０は、外部からのIPMI Over LAN によるイベント取得要求に対して応対を行う。管理コントローラインタフェース（IPMIドライバ）２４は、一般的にIPMIドライバとして知られているドライバソフトウェアである。管理コントローラインタフェース２４は、管理コントローラ６でリセットが行われる直前に発行される割り込みを受ける役割を担う。割り込みを受けると、管理制御部２３は、管理コントローラインタフェース２４に対して引き継ぎのための内部データ（すなわち、イベント情報）の取得要求を行う。管理制御部２３は、取得した内部データをイベント情報仮格納部２６に格納する。また、管理制御部２３は、センサ値収集部２８に対して、収集開始を指示する。
【００３２】
図４は、センサ値収集部２８によって収集されたセンサ一覧情報の一例を示す説明図である。図４には、センサ一覧情報として、センサ名およびセンサ値を保持する簡易なテーブルデータが例示されている。
【００３３】
図５は、イベント情報格納部２５に格納されているイベント情報の一例を示す説明図である。図５には、イベント情報として、センサ名と発生時刻とセンサ値とを保持する簡易なテーブルデータが例示されている。
【００３４】
図６は、イベント情報仮格納部２６に格納されているイベント情報の一例を示す説明図である。図６には、イベント情報として、センサ名と発生時刻とセンサ値を保持する簡易なテーブルデータが例示されている。
【００３５】
図７は、センサ仕様格納部２７に格納されているセンサ仕様情報（Sensor Data Record：SDR 情報）の一例を示す説明図である。図７には、センサ仕様情報として、センサ名とイベント登録判定値と上限および下限のしきい値とを保持する簡易なテーブルデータが例示されている。なお、センサ値が、上限しきい値と下限しきい値の間の値であれば正常値と判定され、それ以外の値の場合には、異常値であると判定される。
【００３６】
また、イベント登録判定値「２」は、異常検出時に一旦イベント情報仮格納部２６に登録され、再度異常が検出されたときに、イベント情報格納部２５に登録されるイベントであることを示す。イベント登録判定値「１」は、異常検出時に直ちにイベント情報格納部２５に登録されるイベントであることを示す。
【００３７】
次に、コンピュータ装置１の動作を説明する。
【００３８】
図８は、ＯＳ側の動作を示すフローチャートである。コンピュータ装置１が起動されると（ステップＳ１１）、ＯＳが起動する（ステップＳ１２）。ＯＳが起動した後、直ちに管理制御プロセス２２が起動する（ステップＳ１３）。
【００３９】
管理制御プロセス２２における管理制御部２３は、管理コントローラインタフェース２４を介して管理コントローラ６へのアクセス可否を確認する（ステップＳ１４）。管理コントローラ６へのアクセスが不可の場合には、アクセスが可能となるまで待機する（ステップＳ１７）。
【００４０】
管理コントローラ６へのアクセスが可であった場合には、管理制御部２３は、管理コントローラ６から、センサ仕様データおよびネットワーク設定データを取得する（ステップＳ１５）。そして、管理制御部２３は、センサ仕様データをセンサ仕様格納部２７に格納する。管理制御部２３は、ネットワーク設定データにもとづいてネットワークインタフェース３０のドライバに対する設定を行う。
【００４１】
以上のような初期設定を完了したら、管理制御プロセス２２は準備完了となって、待機状態になる（ステップＳ１６）。
【００４２】
図９は、管理コントローラ６の動作を示すフローチャートである。管理コントローラ６は、コンピュータ装置１へのスタンバイ電源供給が開始された時点で起動する（ステップＳ２１）。管理コントローラ６は、システムの監視および管理を実現するための様々な機能を提供するが、以下、センサの監視とセンサのイベント生成に着目した動作について説明する。
【００４３】
センサ値収集部２０は、ファンセンサ７、温度センサ８および電圧センサ９をアクセスして、センサ値を収集する（ステップＳ２２）。収集された値は、例えば、図４に示された一覧情報のようになっているとする。
【００４４】
管理制御部１３は、一覧情報と、センサ仕様格納部１９に格納されているデータ（図７参照）とを比較して、センサ値が上限しきい値または下限しきい値を越えているか判定する（ステップＳ２３）。越えていない場合には、センサ値の収集処理（ステップＳ２２）に戻り、管理制御部１３は、センサチェックを繰り返す。
【００４５】
センサ値しきい値が越えている場合には、管理制御部１３は、該当センサのイベント登録判定値（図７参照）をチェックする（ステップＳ２４）。イベント登録判定値が「１」のイベントである場合には、管理制御部１３は、イベント情報格納部１７にイベント情報を記録する（ステップＳ２５，Ｓ２６）。
【００４６】
イベント登録判定値が「１」ではない値である場合は、管理制御部１３は、イベント情報仮格納部１８に格納されているイベントデータ（図６参照）をチェックする（ステップＳ２７）、当該イベントが登録されている場合には、管理制御部１３は、イベント情報格納部１７にイベント情報を登録する（ステップＳ２８およびステップＳ２６）。当該イベントがイベント情報格納部１７に登録されていない場合は、管理制御部１３は、イベント情報仮格納部１８にイベント情報を記録する（ステップＳ２９）。その後、ステップＳ２２に移行する。
【００４７】
次に、管理コントローラ６がリセットされるときの管理コントローラ６およびＯＳ側の動作を説明する。図１０は、管理コントローラ６がリセットされるときの管理コントローラ６およびＯＳ側の動作を示すフローチャートである。
【００４８】
管理コントローラ６の動作中に（ステップＳ３１）、リセット指示部１４に対して、管理コントローラファームウェア１２の外部または内部からリセット要求が発生したとする（ステップＳ３１）ステップＳ３２）。それに応じて、割り込み生成部１６は、ＯＳ側に対して割り込みを送信する（ステップＳ３３）。
【００４９】
ＯＳ側では、管理制御プロセス２２は、準備完了で待機状態となっている（ステップ４１）。すなわち、管理コントローラインタフェース２４は、管理コントローラ６側からの割り込み待機状態である（ステップＳ４２）。
【００５０】
割り込みがあった場合は（ステップＳ４３）、管理コントローラインタフェース２４は、管理コントローラ６側にIPMIアクセスして、イベント情報仮格納部１８から図６に例示されたようなイベントデータ（仮イベント格納情報）を取得する（ステップＳ４４）。そして、管理制御部２３は、取得したイベントデータをイベント情報仮格納部２６に格納する。この結果、管理コントローラ６側からのデータがＯＳ側の管理制御プロセス２２に引き継がれる。
【００５１】
その後、ネットワークインタフェース３０が有効化され（ステップＳ４５）、管理制御プロセス２２によるセンサ値の収集が開始される（ステップＳ４６）。
【００５２】
管理コントローラ６は、ＯＳ側からのイベント情報仮格納部１８に格納されているイベントデータの要求（ステップＳ４４）に対して応対する（ステップＳ３４）。具体的には、管理制御部１３は、仮イベント格納情報をＯＳ側に供給する。応対が終わったら、リセット処理部１５によって、リセット処理が実行される（ステップＳ３５）。管理コントローラ６がリセット中は、管理コントローラ６の全機能が停止する（ステップＳ３６）。
【００５３】
次に、管理コントローラ６がリセットされ機能が停止しているときのＯＳ側の動作を説明する。なお、ＯＳ側の動作において、図９に示された管理コントローラ６の処理と同じ処理を行う部分がある。
【００５４】
図１１は、管理コントローラ６が停止しているときのＯＳ側の動作を示すフローチャートである。
【００５５】
管理制御プロセス２２のセンサ値収集部２８は、ファンセンサ７、温度センサ８および電圧センサ９をアクセスして、センサ値を収集する（ステップＳ５１，Ｓ５２）。収集された値は、例えば、図４に示された一覧情報のようになっているとする。
【００５６】
イベント情報生成部２９（管理制御部２３でもよい。）は、一覧情報と、センサ仕様格納部２７に格納されているデータ（図７参照）とを比較して、センサ値が上限しきい値または下限しきい値を越えているか判定する（ステップＳ５３）。越えていない場合には、センサ値の収集処理（ステップＳ５２）に戻り、管理制御部２３は、センサチェックを繰り返す。
【００５７】
センサ値しきい値が越えている場合には、イベント情報生成部２９（管理制御部２３でもよい。）は、該当センサのイベント登録判定値（図７参照）をチェックする（ステップＳ５４）。イベント登録判定値が「１」のイベントである場合には、管理制御部２３は、イベント情報格納部２５にイベント情報を記録する（ステップＳ５５，Ｓ５６）。
【００５８】
イベント登録判定値が「１」ではない値である場合は、イベント情報生成部２９（管理制御部２３でもよい。）は、イベント情報仮格納部２６に格納されているイベントデータ（図６参照）をチェックする（ステップＳ５７）、当該イベントが登録されている場合には、イベント情報生成部２９（管理制御部２３でもよい。）は、イベント情報格納部２５にイベント情報を登録する（ステップＳ５８およびステップＳ５６）。当該イベントがイベント情報格納部２５に格納されていない場合は、イベント情報生成部２９（管理制御部２３でもよい。）は、イベント情報仮格納部２６にイベント情報を格納する（ステップＳ５９）。その後、ステップＳ５２に移行する。
【００５９】
次に、管理コントローラ６のリセットからの復旧時の管理コントローラ側およびＯＳ側の動作を説明する。図１２は、管理コントローラ６のリセットからの復旧時の管理コントローラ６およびＯＳ側の動作を示すフローチャートである。
【００６０】
管理コントローラ６はリセット中の状況であるとする（ステップＳ６１）。そして、リセットが完了すると、管理コントローラ６が再起動されて、各機能が動作を開始する（ステップＳ６２）。
【００６１】
管理制御部１３は、ＯＳ側に管理コントローラ６が復帰したことを知らせるために、割り込み生成部１６にＯＳへの割り込みを指示する。指示に応じて、割り込み生成部１６は、ＯＳへの割り込みを発生する（ステップＳ６３）。
【００６２】
ＯＳ側では、管理制御プロセス２２が動作中に（ステップＳ７１）、管理コントローラインタフェース２４が管理コントローラ６側からの割り込みを受けた場合は（ステップＳ７２）、管理コントローラインタフェース２４は、管理コントローラ６に、イベント情報格納部２５のイベントデータ（イベント格納情報）とイベント情報仮格納部２６のイベントデータ（仮イベント格納情報）をIPMIで送信し、書き込みの要求を行う（ステップＳ７３）。
【００６３】
管理コントローラ６は、ＯＳ側からの書き込みの要求（ステップＳ７３）に対して応対する（ステップＳ６４）。すなわち、管理制御部１３は、ＯＳ側から送信されたイベントデータを、イベント情報格納部１７とイベント情報仮格納部１８に書き込む。この結果、ＯＳ側からのデータが管理コントローラ６に引き継がれる。
【００６４】
引き継ぎ完了後、ＯＳ側において、管理制御部１３は、ネットワークインタフェース３０の機能を無効化して停止する（ステップＳ７５）。そして、管理制御プロセス２２は、待機状態になる（ステップＳ７５）。
【００６５】
管理コントローラ側では、引き継ぎ完了後、センサ監視が再開する（ステップＳ６５）。
【００６６】
実施形態２．
第１の実施形態（実施形態１）では、リセットが管理コントローラファームウェア１２によって制御され、割り込み生成部１６が、ＯＳ側にリセット発生を通知し、また、リセット完了後の再起動を通知した。
【００６７】
第２の実施形態（実施形態２）では、管理コントローラ６がストール（機能作停止）した場合に管理コントローラ６の機能を、ＯＳ側に引き継がせる。なお。コンピュータ装置１、管理コントローラファームウェア１２，および管理制御プロセス２２の構成は、第１の実施形態における構成と同じでよい。
【００６８】
図１３は、管理コントローラ６がストールした場合の管理コントローラ６およびＯＳ側の動作を示すフローチャートである。
【００６９】
管理コントローラ６の動作中に（ステップＳ８１）、管理コントローラ６に障害が発生し（ステップＳ８２）、管理コントローラ６の全機能が停止したとする（ステップＳ８３）。
【００７０】
ＯＳ側では、管理制御プロセス２２は、準備完了し、待機状態であるとする（ステップＳ９１）。第２の実施形態では、管理コントローラインタフェース２４には、第１の実施形態の場合のように割り込みを待つ機能に加えて、管理コントローラ６に対してポーリングアクセスすることによって、管理コントローラ６の状態をチェックする機能が追加されている。管理コントローラインタフェース２４は、例えば定期的に管理コントローラ６をポーリングアクセスする（ステップＳ９２）。
【００７１】
管理コントローラインタフェース２４が管理コントローラ６をアクセスができていれば（ステップＳ９３）、管理制御プロセスは待機状態に戻り、定期的なポーリングアクセスを継続する。
【００７２】
しかし、管理コントローラ６へのアクセスが不可になった場合には、管理制御部２３は、ネットワークインタフェース３０を有効化する。そして、管理制御プロセス２２によるセンサ値の収集が開始される（ステップＳ９５）。すなわち、管理制御プロセス２２は、管理コントローラ６が復旧するまで、管理コントローラ６に代わって監視を継続する。
【００７３】
以上に説明したように、上記の各実施形態では、システム側（図１に示す構成例では、ＣＰＵ２、メモリ３およびディスク５によるシステム）のＯＳの管理下のプロセス、または、システム側の仮想ＯＳが、ソフトウェアレベルで、管理コントローラ機能を肩代りする。例えば、管理コントローラに対するリセット指示が行われるときに、リセットの直前に管理コントローラ６からＯＳ側に対して割り込みが発行される。ＯＳ側の管理制御プロセス２２は、割り込みによって、管理コントローラ６のリセットが行われることを事前に検知する。管理制御プロセス２２は、管理コントローラ６がリセットされる前に、管理コントローラ６に保持されている内部情報を取得し、管理制御プロセス２２が、内部情報を引き継ぐ。
【００７４】
内部情報には、管理コントローラ６が管理および監視の対象としている様々な情報が含まれる。なお、上記の各実施形態では、コンピュータ装置１の周辺ハードウェアとしてのファン／温度／電圧の各種センサの異常を検出したときにイベント情報仮格納部に仮登録された仮イベント格納情報を例にしたが、他のハードウェアに関するイベント情報を対象にしてもよい。
【００７５】
なお、イベント情報仮格納部１８に格納されたイベント情報は、次に、同じセンサのイベントが検出された際に、イベント情報仮格納部１８から、イベント情報格納部１７に格納されるようになる。イベント情報仮格納部１８に格納されている情報は外部から参照できない情報であるが、イベント情報格納部１７に格納されている情報は、外部から参照できる情報である。例えば、ファンセンサに関するイベントについては、ファンの回転数がしきい値の範囲外になったことを検出したとしても、即座にファンのイベント情報として登録されず、次に同じファンセンサに関するイベントが検知された際に、イベント情報格納部１７に登録される。
【００７６】
内部情報の引き継ぎが完了した後、管理コントローラ６はリセットされ、管理コントローラ６の機能が停止する。管理コントローラ６が停止した後、ＯＳ側の管理制御プロセス２２が、管理コントローラ６に代わって、センサの監視を実行する。ＯＳ側の管理制御プロセス２２は、センサ値の異常を検出し、管理コントローラ６と同じように動作して、センサに関するイベント情報のイベント情報仮格納部２６への格納や、イベント情報格納部２５への登録を行う。
【００７７】
管理コントローラ６が再起動して管理機能および監視機能が復旧したときに、管理コントローラ６は、ＯＳ側に再度割り込みを送信して、復旧したことを知らせる。ＯＳ側が割り込みを受けると、管理制御プロセス２２は、センサ監視を停止して、ＯＳ側のイベント情報格納部２５およびイベント情報仮格納部２６に格納されているイベント情報を管理コントローラ６に送信する。管理コントローラ６において、イベント情報は、イベント情報格納部１７およびイベント情報仮格納部１８に反映される。すなわち、データの引き継ぎが行われる。引き継ぎ完了後、ＯＳ側の制御プログラム（管理制御プロセス２２）は機能を停止し、管理コントローラ６は、監視および管理を再開する。
【００７８】
以上に説明した各実施形態では、以下のような効果を得ることができる。
【００７９】
管理コントローラ６が実装されたサーバ等のコンピュータ装置１において、一時的な管理コントローラ６のリセット中や、障害等による管理コントローラ６の動作不可状態でも、その間のハードウェアの監視や管理を継続できる。また、ハードウェアレベルでの二重化でなく、ソフトウェアレベルで管理コントローラ６の代替が実現されるので、管理コントローラ６の代替機能を備えたハードウェアの実装は不要であり、小型のコンピュータ装置１に対する実装が容易である。
【００８０】
図１４は、本発明によるコンピュータ装置の主要部を示すブロック図である。図１４に示すコンピュータ装置１００は、管理コントローラ１０１がリセット状態に入るときに、管理コントローラ１０１が保持するデータを取得するＯＳ側データ取得手段１０２（実施形態では、管理コントローラインタフェース２４および管理制御部２３で実現される。）と、ＯＳ側データ取得手段１０２が取得したデータを保持するＯＳ側データ保持手段１０３（実施形態では、イベント情報格納部２５およびイベント情報仮格納部２６で実現される。）と、ＯＳの管理の下で監視処理を実行し、監視処理によって収集したデータをＯＳ側データ保持手段１０３に格納するＯＳ側監視手段１０４（実施形態では、センサ値収集部２０およびイベント情報生成部２９で実現される。）と、管理コントローラのリセット状態が解除されると、ＯＳ側データ保持手段１０３が保持しているデータを管理コントローラ１０１に送信するＯＳ側保持データ送信手段１０５（実施形態では、管理コントローラインタフェース２４で実現される。）とを備えている。
【００８１】
図１５は、本発明による他の態様のコンピュータ装置の主要部を示すブロック図である。図１５に示すコンピュータ装置１００は、管理コントローラがリセット状態に入るとき、および、リセット状態が解除されたときに、ＯＳの側に割り込みを発行する割込手段１０６（実施形態では、割り込み生成部１６で実現される。）を備えている。
【００８２】
図１６は、本発明によるさらに他の態様のコンピュータ装置の主要部を示すブロック図である。図１６に示すコンピュータ装置１００は、ＯＳの管理の下で、管理コントローラ１０１に対する問い合わせを行う（例えば、ポーリングする。）問い合わせ手段１０７（実施形態では、管理コントローラインタフェース２４で実現される。）を備え、ＯＳ側監視手段１０４は、管理コントローラ１０１が問い合わせに対して応答しない場合に、監視処理を開始する。
【符号の説明】
【００８３】
１      コンピュータ装置
２      ＣＰＵ
３      メモリ
４      チップセットコントローラ
５      ディスク
６      管理コントローラ
７      ファンセンサ
８      温度センサ
９      電圧センサ
１０    shared LAN
１１    管理用端末
１２    管理コントローラファームウェア
１３    管理制御部
１４    リセット指示部
１５    リセット処理部
１６    割り込み生成部
１７    イベント情報格納部
１８    イベント情報仮格納部
１９    センサ仕様格納部
２０    センサ値収集部
２１    ネットワーク制御部
２２    管理制御プロセス
２３    管理制御部
２４    管理コントローラインタフェース
２５    イベント情報格納部
２６    イベント情報仮格納部
２７    センサ仕様格納部
２８    センサ値収集部
２９    イベント情報生成部
３０    ネットワークインタフェース
１００  コンピュータ装置
１０１  管理コントローラ
１０２  ＯＳ側データ取得手段
１０３  ＯＳ側データ保持手段
１０４  ＯＳ側監視手段
１０５  ＯＳ側保持データ送信手段
１０６  割込手段
１０７  問い合わせ手段
【図１】
2018169737.tif 000003
【図２】
2018169737.tif 000004
【図３】
2018169737.tif 000005
【図４】
2018169737.tif 000006
【図５】
2018169737.tif 000007
【図６】
2018169737.tif 000008
【図７】
2018169737.tif 000009
【図８】
2018169737.tif 000010
【図９】
2018169737.tif 000011
【図１０】
2018169737.tif 000012
【図１１】
2018169737.tif 000013
【図１２】
2018169737.tif 000014
【図１３】
2018169737.tif 000015
【図１４】
2018169737.tif 000016
【図１５】
2018169737.tif 000017
【図１６】
2018169737.tif 000018