JPWO2014112039A1 - 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム - Google Patents

情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム Download PDF

Info

Publication number
JPWO2014112039A1
JPWO2014112039A1 JP2014557215A JP2014557215A JPWO2014112039A1 JP WO2014112039 A1 JPWO2014112039 A1 JP WO2014112039A1 JP 2014557215 A JP2014557215 A JP 2014557215A JP 2014557215 A JP2014557215 A JP 2014557215A JP WO2014112039 A1 JPWO2014112039 A1 JP WO2014112039A1
Authority
JP
Japan
Prior art keywords
hard disk
disk drive
reset
information processing
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014557215A
Other languages
English (en)
Inventor
正信 古越
正信 古越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2014112039A1 publication Critical patent/JPWO2014112039A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • G11B19/04Arrangements for preventing, inhibiting, or warning against double recording on the same blank or against other recording or reproducing malfunctions
    • G11B19/048Testing of disk drives, e.g. to detect defects or prevent sudden failure
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

信号変動判定部(142)は、ハードディスクドライブ(15)の出力データを基に出力異常を検出する。HDコントローラ(13)は、信号変動判定部(142)により出力異常が検出された場合、ハードディスクドライブ(15)に対してリセット信号を送信して前記ハードディスクドライブ(15)を再起動させるリセット処理を行う。復旧可否判定部(144)は、HDコントローラ(13)によるリセット処理の回数が閾値を超えた場合、ハードディスクドライブ(15)の電源のオンオフを行う。CPUは、復旧可否判定部(144)による電源のオンオフによりハードディスクドライブ(15)が起動した場合、前記ハードディスクドライブ(15)に障害記録を格納する障害記録採取処理を行う。

Description

本発明は、情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムに関する。
サーバなどの情報処理装置において、ハードディスクドライブ(HDD:Hard Disk Drive)の信号端子は、インタフェース信号バスを通じてハードディスクコントローラと接続されている。また、ハードディスクドライブの電源端子は、HDD給電線を通じて、電源回路と接続されており、動作のための電力を得ている。そして、OS(Operation System)やその他のソフトウェアは、ハードディスクドライブから読み出され、メモリ上に展開され、CPU(Central Processing Unit)により実行される。
そして、OSやその他のソフトウェアに影響を与える障害が発生し、OSがハングアップすると、以下のような処理が発生する。まず、マイクロコントローラであるBMC(Baseboard Management Controller)により、ハングアップが検出され、OSに対して強制ダンプの命令が発動される。ここで、BMCは、サーバ内蔵のCPUやメモリから独立して、それらの監視及びコントロール等を行う管理用のコントローラである。次に、OSのクラッシュダンプ機能により、メモリ上のデータが一旦ハードディスクドライブのスワップ領域に退避させられる。次に、OSのクラッシュダンプ機能により、サーバのリセット処理が動作する。さらに、OSの再起動後、OSのクラッシュダンプ機能により、OSの再起動時にスワップ領域に退避していたデータが、ハードディスクドライブ上のクラッシュダンプ格納ディレクトリにセーブされる。このようにOSのクラッシュダンプ機能によりデータを採取することにより、情報処理装置は、障害記録を残すことができる。そして、情報処理装置の管理者は、障害記録を解析することで、障害の原因究明などを行うことができる。
なお、ハードディスク制御装置のウォッチドッグタイマの状態を監視し、ウォッチドッグタイマの動作を複数回検出した場合、信号によるリセット及び電源のON及びOFFにより、ハードディスク制御装置の復旧を図る従来技術がある(例えば、特許文献1参照)。また、ハードディスクドライブからの応答が無い場合又はエラー応答の場合、ハードディスクドライブを再起動する従来技術がある(例えば、特許文献2参照)。
特開2003−9192号公報 特開2011−76662号公報
しかしながら、ハードディスクドライブが動作を停止し、さらにハードディスクドライブのファームウェアのバグなどの要因によりリセット信号などを用いても復旧しないことを要因としてハングアップが発生することが考えられる。このような場合、OSのクラッシュダンプ機能が動作しようとしても、ハードディスクドライブが動作しないため、上述したようなデータ採取などの動作を行うことができない。
システムによっては、ネットワーク上の他のサーバからpingなどを用いた応答の有無の確認によるサーバの動作正常性のチェックを行っている場合がある。しかし、ハードディスクの動作停止などの障害の場合、応答ができてしまうことが多く、障害の検出が困難である。そのため、ハングアップ前に、ハードディスクの動作停止の障害を検出することは困難である。
また、ハードディスクドライブが動作停止した場合、それ以外の部分は正常稼動であれば、ハードディスクドライブに対する電源再投入で復旧する可能性がある場合が多い。しかし、ハードディスクドライブに対する電源再投入を適切に行う手立てが無い場合、ハードディスクドライブの復旧を適切に行うことが困難である。
以上のようなことから、ハードディスクドライブの動作停止に起因してサーバに障害が発生したことをシステム上検出することは困難であり、ハードディスクドライブの動作異常時による障害記録の未採取の発生を低減することは困難である。
また、ウォッチドッグタイマの動作を基にハードディスク制御装置の復旧を図る従来技術では、ハードディスクドライブがアイドル状態なのか異常が発生しているのかの切り分けが困難であり、ハードディスクドライブの動作異常を適切に検出することが困難である。また、ハードディスクドライブからの応答の状態を基に復旧を行う従来技術においても、ハードディスクドライブがアイドル状態なのか異常が発生しているのかの切り分けが困難であり、ハードディスクドライブの動作異常を適切に検出することが困難である。そのため、これらの従来技術を用いても、ハードディスクドライブの動作異常時による障害記録の未採取の発生を低減することは困難である。
開示の技術は、上記に鑑みてなされたものであって、ハードディスクドライブの動作異常による障害記録の未採取の発生を低減する、情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムを提供することを目的とする。
本願の開示する情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムは、一つの態様において、出力異常検出部は、ハードディスクドライブの出力データを基に出力異常を検出する。リセット部は、前記出力異常検出部により出力異常が検出された場合、前記ハードディスクドライブに対してリセット信号を送信して前記ハードディスクドライブを再起動させるリセット処理を行う。HDD電源制御部は、前記リセット部による前記リセット処理の回数が閾値を超えた場合、前記ハードディスクドライブの電源のオンオフを行う。障害記録採取部は、前記HDD電源制御部による電源のオンオフにより前記ハードディスクドライブが起動した場合、障害記録の採取を行う。
本願の開示する情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムの一つの態様によれば、ハードディスクドライブの動作異常による障害記録の未採取の発生を低減することができるという効果を奏する。
図1は、実施例1に係るサーバのブロック図である。 図2は、信号監視部の詳細を表すブロック図である。 図3は、実施例1に係る情報処理装置におけるハードディスクドライブの障害検出処理のフローチャートである。 図4は、実施例2に係る情報処理装置におけるダンプ処理のフローチャートである。 図5は、各実施例に係るサーバのハードウェア構成の一例の図である。
以下に、本願の開示する情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムの実施例を図面に基づいて詳細に説明する。なお、以下の実施例により本願の開示する情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラムが限定されるものではない。
図1は、実施例1に係るサーバのブロック図である。図1に示すように、本実施例に係るサーバ1は、CPU11、メモリ12、HDコントローラ13、信号監視部14、ハードディスクドライブ15、カウンタリセットタイマ16、電源スイッチ17、BMC18、サーバ電源19及びHDD電源20を有している。
ここで、本実施例に係るサーバ1は、RAIDなどが構成されていないDAS(Direct Attached Storage)の情報処理装置である。例えば、サーバ1は、ハードディスクドライブが1台しか搭載されていない通信用の情報処理装置などである。
HDD電源20は、ハードディスクドライブ15に供給する電力の供給源である。図1では、一点鎖線によりHDD電源20からハードディスクドライブ15への電力の供給経路を表している。
電源スイッチ17は、FET(Field effect transistor)スイッチなどである。電源スイッチ17がオンの場合、HDD電源20からの電力がハードディスクドライブ15へ供給される。また、電源スイッチ17がオフの場合、HDD電源20からの電力のハードディスクドライブ15への供給が停止される。
サーバ電源19は、サーバ1に搭載されたCPU11やメモリ12といった各部への電力の供給源である。サーバ電源19は、例えば、図1における点線で囲われた内部に存在する各部へ電力を供給する。
CPU11は、HDコントローラ13に対してハードディスクドライブ15へのデータの書き込み及びデータの読み出しを指示する。このように、実際には、CPU11はHDコントローラ13を介してハードディスクドライブ15に対するデータの読み書きを行うが、以下の説明では、便宜上CPU11がハードディスクドライブ15に対してデータの読み書きを行うように説明する場合がある。CPU11は、例えば、HDコントローラ13を介してハードディスクドライブ15に格納されたOSやその他のプログラムなどを読み出しメモリ12などに展開する。そして、CPU11は、メモリ12等を使用して演算処理などの各種処理を行う。
また、ハードディスクドライブ15の応答異常時に、ハードディスクドライブ15に対してリセット信号の送信をHDコントローラ13へ指示する。ここで、ハードディスクドライブ15の応答異常には、例えば、ハードディスクドライブ15からの応答が無い状態などが含まれる。
また、OSがハングアップすると、CPU11は、BMC18から強制的にメモリ12内のデータの保存を実行する強制ダンプの割り込みを受ける。強制ダンプの割り込みを受けると、CPU11は、OSのクラッシュダンプ機能を実行し、メモリ12上のデータをメモリ12から読み出す。そして、CPU11は、OSのクラッシュダンプ機能により、読み出したデータをハードディスクドライブ15のスワップ領域に格納する。
次に、OSのクラッシュダンプ機能により、サーバ1の再起動が行われる。その後、CPU11は、OSのクラッシュダンプ機能により、ハードディスクドライブ15のスワップ領域に退避させておいたデータをハードディスクドライブ15のクラッシュダンプ格納ディレクトリに格納する。
メモリ12には、CPU11によりOSやその他のプログラムなどが展開される。また、OSのクラッシュダンプ機能が実行された場合、メモリ12上のデータが読み出されハードディスクドライブ15に格納される。
CPU11及びメモリ12が、「障害記録採取部」の一例にあたる。
HDコントローラ13は、CPU11からの指示を受け、ハードディスクドライブ15へのデータの書き込み及びハードディスクドライブ15からのデータの読み出しを行う。HDコントローラ13は、ハードディスクドライブ15から読み出したデータをCPU11へ出力する。具体的には、HDコントローラ13は、例えば、ハードディスクドライブ15との間でHDDインタフェース信号を送受信することによりデータの読み書きを行う。
また、HDコントローラ13は、ハードディスクドライブ15の応答異常時にCPU11からの指示を受けて、リセット信号を信号監視部14へ送信する。HDコントローラ13は、応答異常が復旧するまでリセット信号の送信を行う。
信号監視部14は、HDコントローラ13とハードディスクドライブ15との間に設けられる。図2は、信号監視部の詳細を表すブロック図である。図2に示すように、信号監視部14は、データ変動計測タイマ141、信号変動判定部142、リセットカウンタ143及び復旧可否判定部144を有している。
データ変動計測タイマ141は、予め決められた所定時間であるn秒毎に、信号変動判定部142に対して割り込みを行う。ここで、所定時間であるn秒は、サーバ1の運用状態、すなわち、どのようなプログラムを使用しているかなどに応じて設定することが好ましい。本実施例では、例えば、1回のデータの読み出しは1分以内で終わることが多いので、所定時間であるn秒を1分と設定する。
信号変動判定部142は、データの書き込みの場合、HDコントローラ13から書き込みデータを受信する。そして、信号変動判定部142は、受信した書き込みデータをハードディスクドライブ15へ格納する。
データの読み出しの場合、信号変動判定部142は、ハードディスクドライブ15から読み出すデータをHDインタフェース信号で受信する。そして、信号変動判定部142は、受信したHDインタフェース信号をHDコントローラ13へ出力する。また、信号変動判定部142は、n秒毎に割り込みをデータ変動計測タイマ141から受ける。そして、信号変動判定部142は、データ変動計測タイマ141からの割り込みを契機に、予め決められた所定時間に受信したHDインタフェース信号に変動があるか否かを判定する。ここで、HDインタフェース信号の変動が無いとは、同じ信号が連続していることを指す。そして、連続する信号としては、例えば、アイドルを表す信号、0などのLowを表す信号又は1などのHighを表す信号などである。
HDインタフェース信号に変動が無いと判定した場合、信号変動判定部142は、OSの指示によりCPU11から出力されるリセット信号のカウントをリセットカウンタ143に指示する。
信号変動判定部142は、リセットカウンタ143を監視し、リセットカウンタ143のカウンタ値が初期値にリセットされた場合、n秒毎のHDDインタフェース信号の変動の有無の判定を再度繰り返す。
また、信号変動判定部142は、後述する復旧可否判定部144によりハードディスクドライブ15の電源のオンオフが行われ、ハードディスクドライブ15が起動すると、ハードディスクドライブ15から起動割り込みを受信する。その場合、信号変動判定部142は、ハードディスクドライブ15の起動割り込みをHDコントローラ13及びリセットカウンタ143へ出力する。この信号変動判定部142が、「出力異常検出部」の一例にあたる。
リセットカウンタ143は、初期値及び閾値が予め与えられている。本実施例では、リセットカウンタ143の初期値は0である。また、リセットカウンタ143の閾値及びカウンタのリセット間隔は、プログラムによりハードディスクドライブ15の応答が要求する頻度に応じて設定されることが好ましい。例えば、ハードディスクドライブ15の応答が要求する頻度が高いプログラムであれば、5分間で100〜200回の応答要求が発生する場合が考えられる。そのような場合、後述するカウンタリセットタイマ16からのカウンタリセットの指示の間隔が5分であれば、例えば、閾値を100回とするなどが好ましい。ここでは、カウンタリセットタイマ16からのカウンタリセットの指示の間隔をm秒とし、閾値をM回とする。
リセットカウンタ143は、OSの指示によりCPU11から出力されたリセット信号をHDコントローラ13から受信する。そして、リセットカウンタ143は、受信したリセット信号をハードディスクドライブ15へ出力する。
リセットカウンタ143は、HDDインタフェースデータの変動がない場合、OSの指示によりCPU11から出力されるリセット信号のカウントの指示を信号変動判定部142から受ける。その後、リセットカウンタ143は、HDコントローラ13からリセット信号を受信する毎にカウンタを1ずつインクリメントしていき、リセット信号の受信した数をカウントする。
さらに、リセットカウンタ143は、カウンタリセットタイマ16に対してカウントの開始を通知する。その後、リセットカウンタ143は、m秒毎にカウンタリセットタイマ16からカウンタリセットの指示を受信する。カウンタリセットの指示を受信すると、リセットカウンタ143は、自己のカウンタを初期値に戻しカウンタをリセットする。
これに対して、カウンタリセットタイマ16からリセット信号を受信する前にカウンタが閾値Mを超えた場合、リセットカウンタ143は、ハードディスクドライブ15が無応答となっていると判定する。ここで、無応答とは、例えば、障害の発生により、ハードディスクドライブ15が、応答を返せない状態である。すなわち、本実施例に係るサーバ1は、HDインタフェース信号の変化が所定期間無く、且つ、リセット信号が所定値以上の場合に、ハードディスクドライブ15が無応答であると判定する。これにより、本実施例に係るサーバ1は、単にハードディスクドライブ15がアイドル状態(ハードディスクドライブ15にアクセスが無い状態)である場合と無応答である場合とを切り分けることができる。
そして、リセットカウンタ143は、OSの指示によりCPU11から出力されるリセット信号のカウントを停止する。そして、リセットカウンタ143は、ハードディスクドライブ15の復旧が可能か否かの判定を行う復旧可否判定処理の実施を復旧可否判定部144に指示する。
リセットカウンタ143は、信号変動判定部142からハードディスクドライブ15の起動割り込みを受信した場合、受信したハードディスクドライブ15の起動割り込みを復旧可否判定部144へ出力する。
復旧可否判定部144は、復旧可否判定を行った回数をカウントする復旧可否判定の実施回数のカウンタを有している。また、復旧可否判定部144は、ハードディスクドライブ15が復旧不可か否かを判定するための復旧可否判定の実施回数の閾値を記憶している。ここで、復旧可否判定の実施回数の閾値は、ハードディスクドライブ15の状態に応じて設定することが好ましい。通常は5〜10回程度電源のオフオンを行って復旧しなければハードディスクドライブ15は復旧の見込みは無いと考えられる。そこで、例えば、復旧可否判定部144は、復旧可否判定の実施回数の閾値を10回と記憶するなどしてもよい。以下では、復旧可否判定の実施回数の閾値をN回として説明する。
復旧可否判定部144は、リセットカウンタ143のカウンタが閾値を越えた場合、復旧可能判定処理の実施の指示をリセットカウンタ143から受ける。そして、復旧可否判定部144は、電源スイッチ17に対してスイッチ制御信号を発行する。例えば、復旧可否判定部144は、スイッチ制御信号として電源をオフしその後オンすることを指示するパルス信号を電源スイッチ17へ送信し、電源スイッチ17のオフオンを行う。復旧可否判定部144は、電源スイッチ17をオフオンさせることで、ハードディスクドライブ15への電源の供給を一旦停止した後、再度電源の供給を行う。これにより、復旧可否判定部144は、ハードディスクドライブ15を再起動させる。復旧可否判定部144は、電源スイッチ17のオフオンを行った後、予め決められた所定時間待機し、ハードディスクドライブ15が再起動するのを待つ。ここで、復旧可否判定部144が待機する時間は、ハードディスクドライブ15のタイプなどに応じて設定されることが好ましい。ハードディスクドライブ15の起動は一般的に30秒以内で完了するので、一般的なハードディスクドライブを用いた場合、復旧可否判定部144の待機時間は、例えば、30秒などに設定できる。以下では、復旧可否判定部144の待機時間をt秒とする。
復旧可否判定部144は、待機しているt秒間にハードディスクドライブ15の起動割り込みをリセットカウンタ143から受信したか否かにより、その間にハードディスクドライブ15の割り込みが発生したか否かを判定する。
電源スイッチ17をオフオンしてからt秒間にハードディスクドライブ15の起動割り込みを受信した場合、復旧可否判定部144はハードディスクドライブ15が復旧可能か否かの判定を終了して、復旧可否判定を解除する。そして、復旧可否判定部144は、強制ダンプの処理の発動を指示する判定信号をBMC18へ送信する。
これに対して、電源スイッチ17をオフオンしてからt秒間にハードディスクドライブ15の起動割り込みが無かった場合、復旧可否判定部144は、復旧可否判定の実施回数のカウンタを1つインクリメントする。そして、復旧可否判定部144は、カウンタの数を用いて復旧可否判定の実施回数が予め決められた閾値であるN回以上か否かを判定する。
復旧可否判定の実施回数が閾値N未満であれば、復旧可否判定部144は、電源スイッチ17のオフオンを行い、復旧可否判定を繰り返す。
これに対して、復旧可否判定の実施回数が閾値N以上であれば、復旧可否判定部144は、ハードディスクドライブ15の復旧が不可と判定する。そして、復旧可否判定部144は、サーバ電源のオフをBMC18に指示する。この復旧可否判定部144が、「HDD電源制御部」の一例にあたる。
ハードディスクドライブ15は、例えば、磁気ディスクドライブである。ハードディスクドライブ15は、信号変動判定部142を介してHDコントローラ13から送られたデータを受信し、指定されたアドレスに格納する。また、ハードディスクドライブ15は、HDコントローラ13から要求されたデータを、信号変動判定部142を介してHDコントローラ13へ送信する。具体的には、ハードディスクドライブ15は、HDインタフェース信号を用いて応答を送信する。
カウンタリセットタイマ16は、予め決められた所定時間であるm秒毎に、信号変動判定部142に対して割り込みを行う。ここで、所定時間であるm秒は、ハードディスクドライブ15の復旧までの許容時間などの運用状態に応じて設定することが好ましい。例えば、ハードディスクドライブ15が5分以内程度であればプログラムがデータの読み書きを行わない間隔として考えられるので、所定時間であるm秒を5分以内と設定するなどできる。
カウンタリセットタイマ16は、信号監視部14のリセットカウンタ143からカウントの開始の通知を受ける。カウントの開始の通知を受けると、カウンタリセットタイマ16は、タイマで時間の計測を開始する。そして、タイマが所定時間であるm秒になると、カウンタリセットをリセットカウンタ143に指示する。そして、カウンタリセットタイマ16は、タイマをリセットし、m秒の計測を繰り返す。
BMC18は、プロセッサやレジスタなどを有している。BMC18は、CPU11やメモリ12などの動作の監視、温度センサなどの各種センサの状態の監視及びサーバ1の電源制御などの各種のサーバ管理を行う。
また、BMC18は、管理者による入力装置などからの指示を受けて、信号監視部14に対して制御信号を送信することで、復旧可否判定部144が記憶している復旧可否判定の実行回数の閾値N及びリセットカウンタ143が記憶している閾値Mを変更できる。また、BMC18は、管理者による入力装置などからの指示を受けて、信号監視部14に対してタイマ制御信号を送信することで、データ変動計測タイマ141が記憶している待機時間n秒を変更できる。さらに、BMC18は、管理者による入力装置などからの指示を受けて、カウンタリセットタイマ16に対してタイマ制御信号を送信することで、カウンタリセットタイマ16が記憶しているカウンタリセット信号を送信する間隔m秒を変更できる。
BMC18は、ハードディスクドライブ15が復旧不可能と判定された場合、判定信号を復旧可否判定部144から受信する。そして、BMC18は、強制ダンプ処理の実行をCPU11に指示する。
また、OSがハングアップした場合も、BMC18は、強制ダンプ処理の実行をCPU11に指示する。
また、復旧可否判定部144からサーバの電源オフの指示を受けると、BMC18は、電源をオフするようにサーバ電源19を制御する。
次に、図3を参照して、本実施例に係る情報処理装置におけるハードディスクドライブ15の障害検出処理について説明する。図3は、実施例1に係る情報処理装置におけるハードディスクドライブの障害検出処理のフローチャートである。ここでは、信号監視部14の動作とOSを実行するCPU11の動作とを並行して説明するが、以下でOSが実行しているように説明する処理は、実際にはOSを実行しているCPU11が動作の主体である。
信号監視部14は、ハードディスクドライブ15から出力されるHDDインタフェース信号の監視を開始する(ステップS101)。具体的には、信号監視部14は、サーバ1が起動してハードディスクドライブ15に電源が入ると監視を開始する。この時、OSは、通常処理を行っている(ステップS201)。
信号変動判定部142は、ハードディスクドライブ15から出力されるHDDインタフェース信号が所定期間の間に変動しているか否かを判定する(ステップS102)。HDDインタフェース信号が所定期間の間に変動している場合(ステップS102:肯定)、信号変動判定部142は、n秒待機し(ステップS103)、その後、ステップS102を繰り返す。
これに対して、HDDインタフェース信号が所定期間の間に変動していない場合(ステップS102:否定)、信号変動判定部142は、リセット信号のカウントの開始をリセットカウンタ143に指示する。リセットカウンタ143は、信号変動判定部142からの指示を受けて、OSからのリセット信号の数のカウントを開始する(ステップS104)。この時、リセットカウンタ143は、カウンタリセットタイマ16にカウント開始を通知する。
リセットカウンタ143は、カウント開始の通知を受けて、時間がm秒経過するのを計測する。そして、m秒経過すると、リセットカウンタ143にカウンタリセットを指示する。このm秒の間、リセットカウンタ143は、待機している(ステップS105)。この間、OSは、ハードディスクドライブ15における応答異常に基づいて、リセット信号の発行を行っている(ステップS202)。具体的には、OSは、HDコントローラ13にリセット信号の発行を指示する。そして、OSからの指示を受けたHDコントローラ13は、リセットカウンタ143を経由させてハードディスクドライブ15へリセット信号を送信する。
リセットカウンタ143は、m秒の間にリセット信号の発行回数(ここでは、「c」とする。)がカウンタの閾値であるMを超えているか否か、すなわちc>Mか否かを判定する(ステップS106)。閾値Mを超えていない場合(ステップS106:否定)、リセットカウンタ143は、カウンタをリセットした後、ステップS102へ戻る。
これに対して、閾値Mを超えている場合(ステップS106:肯定)、リセットカウンタ143は、リセット信号のカウントを停止する(ステップS107)。そして、リセットカウンタ143は、復旧可否判定の実行を復旧可否判定部144に指示する。
復旧可否判定部144は、リセットカウンタ143からの指示を受けて、復旧可否判定を開始する(ステップS108)。この時、復旧可否判定部144は、復旧可否判定の実施回数のカウンタ(ここでは、カウンタ値を「i」とする。)を初期値にする(ここでは、i=0)。
復旧可否判定部144は、復旧可否判定の実施回数が閾値N未満(i<N)か否かを判定する(ステップS109)。
復旧可否判定の実施回数が閾値N未満の場合(ステップS109:肯定)、復旧可否判定部144は、オフオンするためのパルス信号であるスイッチ制御信号を電源スイッチ17へ送信する(ステップS110)。
電源スイッチ17がオフオンされることで、ハードディスクドライブ15は、再起動する(ステップS111)。
復旧可否判定部144は、復旧可否判定の実施回数を1つインクリメントする(i=i+1)(ステップS112)。
復旧可否判定部144は、ハードディスクドライブ15の起動割り込みが発生したか否かを判定する(ステップS113)。起動割り込みが発生していない場合(ステップS113:否定)、復旧可否判定部144は、ステップS109に戻る。
これに対して、起動割り込みが発生している場合(ステップS113:肯定)、復旧可否判定部144は、復旧可否判定を解除する(ステップS114)。
そして、復旧可否判定部144は、ハードディスクドライブ15が起動したことを通知する判定信号をBMC18へ送信する(ステップS115)。BMC18は、強制ダンプの処理の発動をCPU11に指示する。強制ダンプの処理の発動をCPU11が受けると、OSは、強制ダンプの処理を開始する(ステップS203)。
復旧可否判定の実施回数が閾値N以上の場合(ステップS109:否定)、復旧可否判定部144は、ハードディスクドライブ15の復旧が不可能と判定し、サーバ1の電源をオフするようBMC18を介してCPU11に指示する。CPU11は、復旧可否判定部144からの指示を受けて、サーバ1の電源をオフする(ステップS116)。
以上に説明したように、本実施例に係る情報処理装置は、ハードディスクドライブの出力データに変化が無く、且つ、リセット信号が発行された回数が所定数を超えた場合に、ハードディスクドライブが無応答であると判定する。さらに、本実施例に係る情報処理装置は、ハードディスクドライブが無応答の場合、ハードディスクドライブの電源をオンオフし、再起動できた場合には、強制ダンプの処理を実行する。これにより、ハードディスクドライブの障害をOSがハングアップ状態になる前に事前に検出することができる。そして、ハードディスクドライブの無応答に起因するOSのハングアップを回避でき、障害履歴の採取漏れを軽減できる。そのため、本実施例に係る情報処理装置は、障害履歴を用いた障害の原因究明に寄与することができる。
次に、実施例2について説明する。本実施例に係る情報処理装置は、実施例1で説明した処理に加えて、強制ダンプの処理中にもハードディスクドライブの無応答の検出及び再起動を行う。そこで、以下では、強制ダンプの処理中の動作について主に説明する。本実施例に係る情報処理装置のブロック図も、図1及び図2で表される。以下の説明では、実施例1の情報処理装置と同様の機能を有する各部については説明を省略する。
信号監視部14の信号変動判定部142は、強制ダンプの処理においてハードディスクドライブ15のスワップ領域にメモリ12上のデータが書き込まれている間、ハードディスクドライブ15からの書き込み応答を監視する。そして、信号変動判定部142は、所定期間内に書き込み応答としてのHDインタフェース信号が変動するか否かを判定する。HDインタフェース信号が変動しない場合、信号変動判定部142は、リセットカウンタ143にリセット信号のカウントの開始を指示する。
リセットカウンタ143は、信号変動判定部142からの指示を受けて、HDコントローラ13から送られてくるリセット信号のカウントを開始する。加えて、リセットカウンタ143は、カウンタリセットタイマ16にリセット信号のカウント開始を通知する。そして、リセットカウンタ143は、カウンタリセットタイマ16により計測されるm秒の間に、リセット信号が発行された回数が閾値Mを超えたか否かを判定する。m秒の間にリセット信号が発行された回数が閾値Mを超えた場合、リセットカウンタ143は、強制ダンプの処理を停止する指示を復旧可否判定部144を経由してBMC18へ送信する。さらに、リセットカウンタ143は、復旧可否の判定の実行を復旧可否判定部144に通知する。
復旧可否判定部144は、電源スイッチ17にスイッチ制御信号を送信し、ハードディスクドライブ15への電源のオフオンを行う。そして、復旧可否判定部144は、ハードディスクドライブ15からの軌道割り込み発生の有無により、ハードディスクドライブ15が再起動するか否かを判定する。ハードディスクドライブ15のオフオンを閾値であるN回繰り返しても再起動できない場合、復旧可否判定部144は、ハードディスクドライブ15の復旧が不可能と判定し、BMC18へサーバの電源オフを指示する。これに対して、ハードディスクドライブ15の再起動ができた場合、復旧可否判定部144は、強制ダンプの処理の発動を指示する判定信号をBMC18へ送信する。
BMC18は、強制ダンプの処理の実施中に、強制ダンプの処理を停止する指示をリセットカウンタ143から受信すると、強制ダンプの処理を中止するようCPU11に支持する。そして、BMC18は、強制ダンプの割り込みを解除する。
また、BMC18は、強制ダンプの割り込み解除後、強制ダンプの処理の発動の指示を復旧可否判定部144から受けた場合、OSに対して強制ダンプ割り込みを再度行い、CPU11に強制ダンプの処理を再度実施させる。
次に、図4を参照して、本実施例に係る情報処理装置におけるダンプ処理の流れについて説明する。図4は、実施例2に係る情報処理装置におけるダンプ処理のフローチャートである。
OSは、BMC18からの強制ダンプの割り込みを受け(ステップS301)、強制ダンプの処理を開始する。
CPU11は、OSのクラッシュダンプ機能を動作させ、メモリ12上のデータがハードディスクドライブ15のスワップ領域に書き込む(ステップS302)。
信号変動判定部142は、ハードディスクドライブ15からの書き込み応答であるHDDインタフェース信号が所定期間の間に変動しているか否かを判定する(ステップS303)。HDDインタフェース信号が所定期間の間に変動している場合(ステップS303:肯定)、CUP11は、メモリ12上のデータ全てのハードディスクドライブ15のスワップ領域に書き込みが完了したか否かを判定する(ステップS304)。書込みが完了していない場合(ステップS304:否定)、CPU11は、ステップS302に戻る。
これに対して、書込みが完了している場合(ステップS304:肯定)、CPU11は、サーバ1のリセット処理を実施する(ステップS305)。
そして、サーバ1が再起動した後、CPU11は、スワップ領域のデータをハードディスクドライブ15のクラッシュダンプ格納ディレクトリに格納する(ステップS306)。その後、CPU11は、サーバ1をシャットダウンして処理を終了する。
これに対して、HDDインタフェース信号が所定期間の間に変動していない場合(ステップS303:否定)、信号変動判定部142は、リセット信号のカウントの開始をリセットカウンタ143に指示する。リセットカウンタ143は、信号変動判定部142からの指示を受けて、OSからのリセット信号の数のカウントを開始する(ステップS307)。この時、リセットカウンタ143は、カウンタリセットタイマ16にカウント開始を通知する。
リセットカウンタ143は、カウント開始の通知を受けて、時間がm秒経過するのを計測する。そして、m秒経過すると、リセットカウンタ143にカウンタリセットを指示する。このm秒の間、リセットカウンタ143は、待機している(ステップS308)。
リセットカウンタ143は、m秒の間にリセット信号の発行回数cがカウンタの閾値であるMを超えているか否か、すなわちc>Mか否かを判定する(ステップS309)。閾値Mを超えていない場合(ステップS309:否定)、リセットカウンタ143は、カウンタをリセットした後、ステップS302へ戻る。
これに対して、閾値Mを超えている場合(ステップS309:肯定)、リセットカウンタ143は、リセット信号のカウントを停止する(ステップS310)。そして、リセットカウンタ143は、クラッシュダンプ処理の停止をBMC18に通知する。また、リセットカウンタ143は、ハードディスクドライブ15の復旧可否判定の実行を復旧可否判定部144に指示する。
BMC18は、クラッシュダンプ処理の停止の指示をリセットカウンタ143から受けて、CPU11のクラッシュダンプ処理を停止させる(ステップS311)。
さらに、BMC18は、OSに対する強制ダンプの割り込みを解除する(ステップS312)。
復旧可否判定部144は、リセットカウンタ143からの指示を受けて、復旧可否判定を開始する(ステップS313)。この時、復旧可否判定部144は、復旧可否判定の実施回数のカウンタを初期値にする(i=0)。
復旧可否判定部144は、復旧可否判定の実施回数が閾値N未満(i<N)か否かを判定する(ステップS314)。
復旧可否判定の実施回数が閾値N未満の場合(ステップS314:肯定)、復旧可否判定部144は、オフオンするためのパルス信号であるスイッチ制御信号を電源スイッチ17へ送信する(ステップS315)。
電源スイッチ17がオフオンされることで、ハードディスクドライブ15は、再起動する(ステップS316)。
復旧可否判定部144は、復旧可否判定の実施回数を1つインクリメントする(i=i+1)(ステップS317)。
復旧可否判定部144は、ハードディスクドライブ15の起動割り込みが発生したか否かを判定する(ステップS318)。起動割り込みが発生していない場合(ステップS318:否定)、復旧可否判定部144は、ステップS314に戻る。
これに対して、起動割り込みが発生している場合(ステップS318:肯定)、復旧可否判定部144は、復旧可否判定を解除する(ステップS319)。
そして、復旧可否判定部144は、ハードディスクドライブ15が起動したことを通知する判定信号をBMC18へ送信する(ステップS320)。その後、BMC18は、ステップS301へ戻る。
一方、復旧可否判定の実施回数が閾値N以上の場合(ステップS314:否定)、復旧可否判定部144は、ハードディスクドライブ15の復旧が不可能と判定し、サーバ1の電源をオフするようBMC18を介してCPU11に指示する。CPU11は、復旧可否判定部144からの指示を受けて、サーバ1の電源をオフし(ステップS321)、処理を終了する。
以上に説明したように、本実施例に係る情報処理装置は、OSのクラッシュダンプ機能によるダンプ処理の間にもハードディスクドライブの無応答の検出及び再起動を行う。これにより、OSによりダンプ処理が行われている間にハードディスクドライブの無応答が発生しても復旧を行うことができ、ハードディスクドライブに障害履歴を格納することができる。すなわち、本実施例に係る情報処理装置は、OSがハングアップする前の事前のハードディスク障害の検出及びダンプ処理時のハードディスク障害の回避ができ、より確実に障害履歴の取得漏れを回避することができる。
(ハードウェア構成)
図5は、各実施例に係るサーバのハードウェア構成の一例の図である。図5に示すように、サーバ1は、例えば、図1に例示したCPU11、メモリ12及びBMC18などを搭載するボード800と、HDコントローラ13、信号監視部14及びハードディスクドライブ15などを搭載するボード900を有する。
ボード800とボード900とはコネクタ810で接続されており、ボード800に搭載されているCPU11などとボード900に搭載されているHDコントローラ13などとは通信可能である。
さらに、ボード800には、DC/DC変換器801、UDBIF802及びシリアルIF803などが搭載されている。
DC/DC変換器801は、外部電源から供給される電力の電圧をCPU11やメモリ12が使用できる電圧まで下げて各部に電力を供給する。ここで、図5では、説明の都合上、DC/DC変換器801から各部への電力供給線を記載していないが、実際には、DC/DC変換器801からボード800上の各部に電力供給線が接続されている。
BMC18は、例えば、DC/DC変換器801からの電力の供給を停止させることで、サーバ1の電源をオフにする。
ボード900には、タイマ901、電源回路902、FETスイッチ903などがさらに搭載されている。タイマ901は、図1に例示したカウンタリセットタイマ16などの機能を実現する。電源回路902は、図1に例示したHDD電源20などの機能を実現する。FETスイッチ903は、図1に例示した電源スイッチ17などの機能を実現する。
搭載された信号監視部14によって、ハードディスクドライブ15の無応答の判定及び復旧可否判定を実施する機能が実現される。
1 サーバ
11 CPU
12 メモリ
13 HDコントローラ
14 信号監視部
15 ハードディスクドライブ
16 カウンタリセットタイマ
17 電源スイッチ
18 BMC
19 サーバ電源
20 HDD電源
141 データ変動計測タイマ
142 信号変動判定部
143 リセットカウンタ
144 復旧可否判定部

Claims (7)

  1. ハードディスクドライブの出力データを基に出力異常を検出する出力異常検出部と、
    前記出力異常検出部により出力異常が検出された場合、前記ハードディスクドライブに対してリセット信号を送信して前記ハードディスクドライブを再起動させるリセット処理を行うリセット部と、
    前記リセット部による前記リセット処理の回数が閾値を超えた場合、前記ハードディスクドライブの電源のオンオフを行うHDD電源制御部と、
    前記HDD電源制御部による電源のオンオフにより前記ハードディスクドライブが起動した場合、前記ハードディスクドライブに障害記録を格納する障害記録採取処理を行う障害記録採取部と
    を備えたことを特徴とする情報処理装置。
  2. 前記出力異常検出部は、所定時間にハードディスクドライブからの出力データに変化が無ければ出力異常と判定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記HDD電源制御部は、前記ハードディスクドライブによる起動割り込みが発生した場合に、前記ハードディスクドライブが起動したと判定し、
    前記障害記録採取部は、前記HDD電源制御部により前記ハードディスクドライブが起動したと判定された場合に、前記障害記録採取処理を行うことを特徴とする請求項1に記載の情報処理装置。
  4. 前記HDD電源制御部による電源のオンオフの回数が所定回数を超えた場合、情報処理装置の電源を落とす電源制御部をさらに備えたことを特徴とする請求項1に記載の情報処理装置。
  5. 前記出力異常検出部は、前記障害記録採取部による前記障害記録採取処理の間も、前記ハードディスクドライブの出力異常の検出を行い、
    前記リセット部は、前記障害記録採取部による前記障害記録採取処理の間に、前記出力異常検出部により出力異常が検出された場合、前記リセット処理を行い、
    前記HDD電源制御部は、前記障害記録採取部による前記障害記録採取処理の間に、前記リセット部による前記リセット処理の回数が閾値を超えた場合、前記ハードディスクドライブの電源のオンオフを行い、
    前記障害記録採取部は、前記障害記録採取処理の間に、前記HDD電源制御部による電源のオンオフが行われた場合、前記ハードディスクドライブが起動すれば再度障害記録採取処理を行う
    ことを特徴とする請求項1に記載の情報処理装置。
  6. ハードディスクドライブの出力データを基に出力異常を検出し、
    前記出力異常を検出した場合、前記ハードディスクドライブに対してリセット信号を送信して前記ハードディスクドライブを再起動させるリセット処理を繰り返し、
    前記リセット処理の回数が閾値を超えた場合、前記ハードディスクドライブの電源のオンオフを行い、
    前記電源のオンオフにより前記ハードディスクドライブが起動した場合、前記ハードディスクドライブに障害記録を格納する障害記録採取処理を行う
    ことを特徴とする情報処理装置制御方法。
  7. ハードディスクドライブの出力データを基に出力異常を検出し、
    前記出力異常を検出した場合、前記ハードディスクドライブに対してリセット信号を送信して前記ハードディスクドライブを再起動させるリセット処理を行うとともに、
    前記リセット処理の回数が閾値を超えた場合、前記ハードディスクドライブの電源のオンオフを行い、
    前記電源のオンオフにより前記ハードディスクドライブが正常に起動した場合、前記ハードディスクに障害記録を格納する
    処理をコンピュータに実行させることを特徴とする情報処理装置制御プログラム。
JP2014557215A 2013-01-15 2013-01-15 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム Pending JPWO2014112039A1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/050574 WO2014112039A1 (ja) 2013-01-15 2013-01-15 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム

Publications (1)

Publication Number Publication Date
JPWO2014112039A1 true JPWO2014112039A1 (ja) 2017-01-19

Family

ID=51209165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014557215A Pending JPWO2014112039A1 (ja) 2013-01-15 2013-01-15 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム

Country Status (2)

Country Link
JP (1) JPWO2014112039A1 (ja)
WO (1) WO2014112039A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6835422B1 (ja) * 2019-11-08 2021-02-24 Necプラットフォームズ株式会社 情報処理装置及び情報処理方法
JP7512636B2 (ja) 2020-03-25 2024-07-09 富士フイルムビジネスイノベーション株式会社 情報処理システム、情報処理装置及び情報処理プログラム
CN112650376A (zh) * 2020-11-25 2021-04-13 超越科技股份有限公司 一种控制硬盘软开关的***和方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04175838A (ja) * 1990-11-07 1992-06-23 Nec Corp オートリブート時のダンプ方式
JPH10269113A (ja) * 1997-01-24 1998-10-09 Internatl Business Mach Corp <Ibm> 情報保存方法、情報保存装置及びディスクドライブ装置
WO2007077604A1 (ja) * 2005-12-28 2007-07-12 Fujitsu Limited 情報処理装置及びハングアップ監視方法
JP2012194930A (ja) * 2011-03-18 2012-10-11 Mitsubishi Electric Corp 障害解析情報収集装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04175838A (ja) * 1990-11-07 1992-06-23 Nec Corp オートリブート時のダンプ方式
JPH10269113A (ja) * 1997-01-24 1998-10-09 Internatl Business Mach Corp <Ibm> 情報保存方法、情報保存装置及びディスクドライブ装置
WO2007077604A1 (ja) * 2005-12-28 2007-07-12 Fujitsu Limited 情報処理装置及びハングアップ監視方法
JP2012194930A (ja) * 2011-03-18 2012-10-11 Mitsubishi Electric Corp 障害解析情報収集装置

Also Published As

Publication number Publication date
WO2014112039A1 (ja) 2014-07-24

Similar Documents

Publication Publication Date Title
TWI588649B (zh) 硬體修復方法、硬體修復系統以及計算機可讀取儲存裝置
US9092453B2 (en) Monitoring device, information processing apparatus, and monitoring method
US8667315B2 (en) Synchronization control apparatus, information processing apparatus, and synchronization management method for managing synchronization between a first processor and a second processor
JP6130520B2 (ja) 多重系システムおよび多重系システム管理方法
JP5754508B2 (ja) 情報処理装置、情報処理方法、およびプログラム
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
TW201828071A (zh) 開關裝置及偵測積體電路匯流排之方法
KR20150087744A (ko) 전자 장치의 동작 상태를 변경하는 방법 및 장치
WO2014112039A1 (ja) 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム
US10235255B2 (en) Information processing system and control apparatus
US9218029B2 (en) Method and system for resetting a SoC
JP5818257B2 (ja) 計算機システム、電源切断処理装置、電源切断処理方法およびプログラム
WO2008004330A1 (fr) Système à processeurs multiples
JP2013061841A (ja) 情報処理装置および情報処理装置の試験方法
JP5579257B2 (ja) 主記憶装置における情報を復元するための装置及び方法
JP5627414B2 (ja) 動作ログ収集システム及びプログラム
JP2003256240A (ja) 情報処理装置及びその障害回復方法
JP2007265157A (ja) I/o装置の障害検出システム、及び、方法
CN108415788B (zh) 用于对无响应处理电路作出响应的数据处理设备和方法
JP2017151511A (ja) 情報処理装置、動作ログ取得方法および動作ログ取得プログラム
JP2018022402A (ja) 情報処理装置、情報処理システム、情報処理装置の制御方法および情報処理装置の制御プログラム
JP6410015B2 (ja) 情報処理装置
JP2844361B2 (ja) 異常回復処理方式
JP2006023970A (ja) 装置異常復旧方式
JP2002063051A (ja) ソフトウェア動作監視システムおよびその記録媒体およびソフトウェア動作監視方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161129