(57)【要約】【課題】ストレージ装置のアクセス性能を低下させる冷却ファンを検出できる。【解決手段】ストレージ制御装置１は、ストレージ装置２が筐体内に備える複数の記憶装置３（３ａ，３ｂ，３ｃ，３ｄ）と、複数の冷却ファン４（４ａ，４ｂ，４ｃ，４ｄ）とを制御対象とする。ストレージ異常取得部１ａは、複数の記憶装置３のそれぞれにおけるアクセスの異常に関するストレージ異常情報５を取得する。ファン制御部１ｂは、複数の冷却ファン４のそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、第１の制御状態と異なる第２の制御状態とに切替制御する。ファン異常検出部１ｃは、第１の制御状態におけるストレージ異常情報７と、第２の制御状態におけるストレージ異常情報８とから記憶装置３の異常に関係する、複数の冷却ファン４のうちの少なくとも１の冷却ファン４を検出する。【選択図】図１
2015099625.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置と該記憶装置を冷却する複数のファンを筐体内に備えるストレージ装置の制御をおこなうストレージ制御装置であって、
前記複数の記憶装置のそれぞれにおけるアクセスの異常に関するストレージ異常情報を取得するストレージ異常取得部と、
前記複数のファンのそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、前記第１の制御状態と異なる第２の制御状態とに切替制御するファン制御部と、
前記第１の制御状態におけるストレージ異常情報と、前記第２の制御状態におけるストレージ異常情報とから前記記憶装置の異常に関係する、前記複数のファンのうちの少なくとも１のファンを検出するファン異常検出部と、
を備えることを特徴とするストレージ制御装置。
【請求項２】
前記ファン異常検出部は、前記第１の制御状態における前記記憶装置の異常発生頻度と前記第２の制御状態における前記記憶装置の異常発生頻度との比較により、前記複数のファンのうち前記第１の制御状態と前記第２の制御状態とで運転態様の異なるファンを前記記憶装置の異常に関係するファンとして検出することを特徴とする請求項１記載のストレージ制御装置。
【請求項３】
前記ストレージ異常取得部は、前記ストレージ異常情報のストレージ異常情報取得履歴を記録し、
前記ファン制御部は、所定の契機に前記第１の制御状態と前記第２の制御状態とを切り替え、前記第１の制御状態と前記第２の制御状態との制御状態切替履歴を記録し、
前記ファン異常検出部は、前記ストレージ異常情報取得履歴と前記制御状態切替履歴とから、前記第１の制御状態におけるストレージ異常情報と前記第２の制御状態におけるストレージ異常情報とを比較し、前記記憶装置の異常に関係する前記複数のファンのうちの少なくとも１のファンを検出することを特徴とする請求項１記載のストレージ制御装置。
【請求項４】
前記第２の制御状態は、前記ストレージ装置を冷却する能力が前記第１の制御状態のときと比較して低下するような、前記複数のファンのそれぞれの運転態様の組み合わせで定まる制御状態であることを特徴とする請求項１乃至請求項３のいずれか１項記載のストレージ制御装置。
【請求項５】
前記第２の制御状態は、前記第１の制御状態と比較して、２以上の前記ファンの運転態様が異なることを特徴とする請求項１乃至請求項４のいずれか１項記載のストレージ制御装置。
【請求項６】
前記運転態様は、通常運転、通常運転より回転速度を低下させた低速運転、運転停止の運転態様を少なくとも含むことを特徴とする請求項１乃至請求項５のいずれか１項記載のストレージ制御装置。
【請求項７】
前記ファン制御部は、所定回数のアクセスの異常を検出した場合に、前記第１の制御状態から前記第２の制御状態に切り替えることを特徴とする請求項１記載のストレージ制御装置。
【請求項８】
前記ストレージ異常情報は、前記記憶装置におけるオフトラックエラーを含むことを特徴とする請求項１乃至７のいずれか１項記載のストレージ制御装置。
【請求項９】
複数の記憶装置と該記憶装置を冷却する複数のファンを筐体内に備えるストレージ装置のストレージ制御プログラムであって、
コンピュータに、
前記複数の記憶装置のそれぞれにおけるアクセスの異常に関するストレージ異常情報を取得し、
前記複数のファンのそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、前記第１の制御状態と異なる第２の制御状態とに切替制御し、
前記第１の制御状態におけるストレージ異常情報と、前記第２の制御状態におけるストレージ異常情報とから前記記憶装置の異常に関係する、前記複数のファンのうちの少なくとも１のファンを検出する、
処理を実行させることを特徴とするストレージ制御プログラム。
【請求項１０】
複数の記憶装置と該記憶装置を冷却する複数のファンを筐体内に備えるストレージ装置のストレージ制御方法であって、
コンピュータが、
前記複数の記憶装置のそれぞれにおけるアクセスの異常に関するストレージ異常情報を取得し、
前記複数のファンのそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、前記第１の制御状態と異なる第２の制御状態とに切替制御し、
前記第１の制御状態におけるストレージ異常情報と、前記第２の制御状態におけるストレージ異常情報とから前記記憶装置の異常に関係する、前記複数のファンのうちの少なくとも１のファンを検出する、
処理を実行することを特徴とするストレージ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法に関する。
【背景技術】
【０００２】
近年のディスクドライブの高記録密度化に伴い、ディスクドライブのアクセス性能に対する外来振動の影響が増大している。ストレージ装置に備えられる冷却ファンは、こうした外来振動の発生源の１つになっている場合がある。冷却ファンの動作不良、あるいは組み付け不良などに起因してストレージ装置に異常な振動が発生し、ライトオフトラックエラーなどの異常が発生してディスクドライブのアクセス性能が低下する。こうした異常は、ＲＡＩＤ（Redundant Array Inexpensive(Independent) Disks）データの保存機能に障害をもたらす場合があり、冷却ファンに関する不良を検出する要請がある。
【０００３】
多くのストレージ装置は、冷却性能を保持するために冷却ファンの回転数を監視し外来振動を検出するものではないが、加速度センサを搭載するなどして外来振動を検出可能にするものもある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−９４２１４号公報
【特許文献２】特開２００９−３６６５号公報
【特許文献３】特開２００８−２０８８０６号公報
【特許文献４】特開２００４−２０７４５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ストレージ装置にとって外来振動は、必ずしもディスクドライブのアクセス性能を低下させるものでない。そのため、過剰な異常検出は、正常な冷却ファンの切り離しによる冷却性能の低下や、過剰な異常報知による異常報知の信頼性の低下につながる。
【０００６】
１つの側面では、本発明は、ストレージ装置のアクセス性能を低下させる冷却ファンを検出可能なストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、以下に示すような、ストレージ制御装置が提供される。ストレージ制御装置は、複数の記憶装置と該記憶装置を冷却する複数のファンを筐体内に備えるストレージ装置の制御をおこなう。ストレージ制御装置は、ストレージ異常取得部と、ファン制御部と、ファン異常検出部と、を備える。ストレージ異常取得部は、複数の記憶装置のそれぞれにおけるアクセスの異常に関するストレージ異常情報を取得する。ファン制御部は、複数のファンのそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、第１の制御状態と異なる第２の制御状態とに切替制御する。ファン異常検出部は、第１の制御状態におけるストレージ異常情報と、第２の制御状態におけるストレージ異常情報とから記憶装置の異常に関係する、複数のファンのうちの少なくとも１のファンを検出する。
【発明の効果】
【０００８】
１態様によれば、ストレージ制御装置、ストレージ制御プログラム、およびストレージ制御方法において、ストレージ装置のアクセス性能を低下させる冷却ファンを検出できる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態のストレージ制御装置の構成の一例を示す図である。
【図２】第２の実施形態のストレージ装置の構成の一例を示す図である。
【図３】第２の実施形態の冷却ファン監視制御部と冷却ファンの一例を示す図である。
【図４】第２の実施形態の冷却ファン監視制御部のハードウェア構成の一例を示す図である。
【図５】第２の実施形態の冷却ファン監視制御部の機能構成の一例を示す図である。
【図６】第２の実施形態のエラー通知処理のフローチャートを示す図である。
【図７】第２の実施形態のエラー記録処理のフローチャートを示す図である。
【図８】第２の実施形態のファン異常判定処理のフローチャートを示す図である。
【図９】第２の実施形態の異常ファン検出処理のフローチャートを示す図である。
【図１０】第２の実施形態の異常運転パタン検出処理のフローチャートを示す図である。
【図１１】第２の実施形態の運転パタンテーブルの一例を示す図である。
【図１２】第２の実施形態の温度監視制御処理のフローチャートを示す図である。
【図１３】第３の実施形態のファン運転処理のフローチャートを示す図である。
【図１４】第３の実施形態の運転パタンテーブルの一例を示す図である。
【図１５】第３の実施形態のファン異常判定処理のフローチャートを示す図である。
【図１６】第３の実施形態のエラー集計テーブルの一例を示す図である。
【図１７】第４の実施形態のストレージ装置におけるディスクと冷却ファンの配置構成の一例を示す図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照して実施の形態を詳細に説明する。
［第１の実施形態］
まず、第１の実施形態のストレージ装置について図１を用いて説明する。図１は、第１の実施形態のストレージ制御装置の構成の一例を示す図である。
【００１１】
ストレージ制御装置１は、ストレージ装置２の制御をおこなう。ストレージ装置２は、複数の記憶装置３と、記憶装置３を冷却する複数の冷却ファン４を筐体内に備える。ストレージ制御装置１は、ストレージ装置２が備える記憶装置３と、ストレージ装置２が備える冷却ファン４とを制御対象とする。なお、ストレージ制御装置１は、ストレージ装置２と別体に設けられる場合に限らず、ストレージ装置２と一体にして設けられるものであってもよい。
【００１２】
ストレージ装置２は、複数の記憶装置３（３ａ，３ｂ，３ｃ，３ｄ）を備える。記憶装置３は、機械的要素を有する記憶装置であり、たとえば、ハードディスク（ＨＤＤ：Hard Disk Drive）などのディスク媒体である。ハードディスクの場合、機械的要素は、Ｒ／Ｗヘッドの駆動機構や、スピンドルの回転機構などがある。
【００１３】
記憶装置３は、外来振動を原因の１つとしてエラーを発生しえる。エラーは、記憶装置３のアクセスの以上として検出可能であり、たとえば、ディスク媒体のトラッキングを失敗するオフトラックエラー、読出エラー、書込エラーなどがある。ストレージ装置２は、記憶装置３のエラーが記憶装置３のアクセス性能を低下させるため、エラーを惹起する外来振動を抑制することが望ましい。なお、図１は、ストレージ装置２が４つの記憶装置３を備える場合を示すが、ストレージ装置２が１または２以上の記憶装置３を備えるものであってもよい。
【００１４】
また、ストレージ装置２は、複数の冷却ファン４（４ａ，４ｂ，４ｃ，４ｄ）を備える。冷却ファン４は、ストレージ装置２の筺体の吸排気、または筺体内の空気流の生成によりストレージ装置２の排熱を補助する。なお、図１は、ストレージ装置２が４つの冷却ファン４を備える場合を示すが、ストレージ装置２が冗長性を有して２以上の冷却ファン４を備えるものであればよい。
【００１５】
ストレージ制御装置１は、ストレージ異常取得部１ａと、ファン制御部１ｂと、ファン異常検出部１ｃと、を備える。ストレージ異常取得部１ａは、複数の記憶装置３のそれぞれにおけるアクセスの異常に関するストレージ異常情報５を取得する。ストレージ異常情報５は、たとえば、記憶装置３へのデータの書込エラーや、記憶装置３からのデータの読出エラーがある。
【００１６】
ファン制御部１ｂは、複数の冷却ファン４のそれぞれの運転態様の組み合わせで定まる制御状態を、第１の制御状態と、第１の制御状態と異なる第２の制御状態とに切替制御する。第１の制御状態と第２の制御状態は、複数の冷却ファン４のそれぞれの運転態様の組み合わせで定まる制御状態である。第２の制御状態は、ストレージ装置２を冷却する能力が第１の制御状態のときと比較して低下するような制御状態である。
【００１７】
冷却ファン４は、ファン制御６にしたがい、それぞれ独立して運転態様（たとえば、運転状態、停止状態、低速運転状態など）を変更可能である。たとえば、冷却ファン４は、ＡＣ（Alternating Current）モータが駆動源であり、パルス幅変調（ファン制御６）により運転態様を変更可能である。
【００１８】
第１の制御状態と第２の制御状態は、複数の冷却ファン４の運転態様の組合せ態様が異なる制御状態である。たとえば、第１の制御状態は、冷却ファン４ａ，４ｂ，４ｃ，４ｄのすべてを運転状態とする制御状態であり、第２の制御状態は、冷却ファン４ａ，４ｂ，４ｃを運転状態として、冷却ファン４ｄを停止状態とする制御状態である。
【００１９】
ファン異常検出部１ｃは、第１の制御状態におけるストレージ異常情報７と、第２の制御状態におけるストレージ異常情報８とから記憶装置３の異常に関係する、複数の冷却ファン４のうちの少なくとも１つの冷却ファン４を検出する。ストレージ異常情報７は、たとえば、第１の制御状態における記憶装置３のエラー頻度であり、ストレージ異常情報８は、たとえば、第２の制御状態における記憶装置３のエラー頻度である。ストレージ異常情報７とストレージ異常情報８とに相違がある場合、ファン異常検出部１ｃは、第１の制御状態における冷却ファン４の運転態様の組合せと第２の制御状態における冷却ファン４の運転態様の組合せとの相違が原因であると推定する。これにより、ファン異常検出部１ｃは、複数の冷却ファン４のうち第１の制御状態と第２の制御状態とで運転態様の異なる冷却ファン４を、記憶装置３の異常に関係する冷却ファン４として検出できる。
【００２０】
このようにして、ストレージ制御装置１は、ストレージ装置２のアクセス性能を低下させる冷却ファン４を検出できる。
［第２の実施形態］
次に、第２の実施形態のストレージ装置の構成について図２を用いて説明する。図２は、第２の実施形態のストレージ装置の構成の一例を示す図である。
【００２１】
ストレージ装置１０は、大容量の記憶領域を有する。ストレージ装置１０は、コントローラモジュール１１と、ディスクエンクロージャ１４とを含む。ストレージ装置１０は、コントローラモジュール１１と、ディスクエンクロージャ１４とを１つの格納筺体に納める。なお、ストレージ装置１０は、コントローラモジュール１１と、ディスクエンクロージャ１４とを、それぞれ別個の格納筺体に納めるものであってもよい。
【００２２】
コントローラモジュール１１は、ＲＡＩＤ制御部１２と、冷却ファン監視制御部１３とを備える。ディスクエンクロージャ１４は、複数のディスク（記憶装置）１５（１５１，１５２，１５３，１５４）と、複数の冷却ファン１６（１６１，１６２，１６３，１６４）を備える。なお、図２は、ディスク１５１，１５２，１５３，１５４を図示するが、ディスクエンクロージャ１４が備えるディスク１５は、４つに限らずいくつでもよい。また、図２は、冷却ファン１６１，１６２，１６３，１６４を図示するが、ディスクエンクロージャ１４が備える冷却ファン１６は、４つに限らず２以上であればいくつでもよい。
【００２３】
ディスク１５は、機械的要素を有する記憶装置であり、たとえば、ハードディスクである。冷却ファン１６は、ディスク１５を収容する格納筺体の吸排気、または格納筺体内の空気流の生成により格納筺体からの排熱を補助する。冷却ファン１６は、回転数を制御可能なモータにより駆動される。複数の冷却ファン１６のそれぞれは、外部からの指示にしたがい運転態様を変更可能であり、運転中の回転数を検出して外部に通知可能にしている。
【００２４】
ＲＡＩＤ制御部１２は、複数のディスク１５によりＲＡＩＤを構成し、図示しない外部装置からＩ／Ｏ要求に応えてディスク１５のＲｅａｄ／Ｗｒｉｔｅ制御をおこなう。また、ＲＡＩＤ制御部１２は、複数のディスク１５のそれぞれからエラー情報を含む状態情報を収集可能である。ＲＡＩＤ制御部１２は、ディスク１５からの通知により、あるいはディスク１５への問い合わせによりエラー情報を収集可能にしている。
【００２５】
冷却ファン監視制御部１３は、ディスク１５を収容する格納筺体の温度を検出する温度センサ１７から温度情報を取得する。冷却ファン監視制御部１３は、取得した温度情報にもとづいて冷却ファン１６を運転し、ディスク１５の稼働環境を好適に保つ。
【００２６】
冷却ファン監視制御部１３は、各冷却ファン１６に対して運転態様を指示し、各冷却ファン１６の回転数を収集して運転態様を監視する。また、冷却ファン監視制御部１３は、ＲＡＩＤ制御部１２を介して複数のディスク１５のエラー情報を収集する。冷却ファン監視制御部１３は、各冷却ファン１６の運転態様と、複数のディスク１５のエラー状況とからディスク１５のエラー発生要因となっている冷却ファン１６を検出する。
【００２７】
なお、図２に示すストレージ装置１０は、１つのコントローラモジュール１１と１つのディスクエンクロージャ１４を備えるが、１つのコントローラモジュール１１と２以上のディスクエンクロージャ１４を備えるものであってもよい。
【００２８】
次に、冷却ファン監視制御部と冷却ファンについて図３を用いて説明する。図３は、第２の実施形態の冷却ファン監視制御部と冷却ファンの一例を示す図である。
冷却ファン監視制御部１３は、冷却ファン１６１，１６２，１６３，１６４のそれぞれに対して交流パルス幅変調方式で指示する電圧信号（回転数指示）により運転態様を制御する。冷却ファン１６１，１６２，１６３，１６４は、交流を印加されて駆動するＡＣモータによりファンを駆動し空気流を生成する。冷却ファン１６１，１６２，１６３，１６４は、それぞれＡＣモータの回転数を検出する図示しないセンサを有し、検出した回転数を電圧信号でパルス出力する。冷却ファン監視制御部１３は、冷却ファン１６１，１６２，１６３，１６４がそれぞれ出力するパルス（回転数出力）を計数することで回転数（運転態様）を検出することができる。
【００２９】
冷却ファン監視制御部１３は、冷却ファン１６１，１６２，１６３，１６４の運転態様が指示した運転態様に一致するか否かを判定することにより、冷却ファン１６１，１６２，１６３，１６４の異常を検出可能にしている。このような異常検出は、冷却ファン１６１，１６２，１６３，１６４の動作不良を好適に検出する。
【００３０】
次に、冷却ファン監視制御部１３のハードウェア構成について図４を用いて説明する。図４は、第２の実施形態の冷却ファン監視制御部のハードウェア構成の一例を示す図である。
【００３１】
冷却ファン監視制御部１３は、プロセッサ１０１によって装置全体が制御されている。プロセッサ１０１には、バス１０６を介してＲＡＭ（Random Access Memory）１０２と複数の周辺機器が接続されている。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、たとえばＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＰＬＤ（Programmable Logic Device）である。またプロセッサ１０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＰＬＤのうちの２以上の要素の組合せであってもよい。
【００３２】
ＲＡＭ１０２は、冷却ファン監視制御部１３の主記憶装置として使用される。ＲＡＭ１０２には、プロセッサ１０１に実行させるオペレーティングシステム（Operating System）のプログラムやファームウェア、アプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、プロセッサ１０１による処理に必要な各種データ（たとえば、システム制御の情報管理）が格納される。また、ＲＡＭ１０２は、各種データの格納に用いるメモリと別体にキャッシュメモリを含むものであってもよい。
【００３３】
バス１０６に接続されている周辺機器としては、不揮発性メモリ１０３、入出力インタフェース１０４、および通信インタフェース１０５がある。
不揮発性メモリ１０３は、冷却ファン監視制御部１３の電源遮断時においても記憶内容を保持する。不揮発性メモリ１０３は、たとえば、ＥＥＰＲＯＭ（Electrically Erasable and Programmable Read-Only Memory）やフラッシュメモリなどの半導体記憶装置や、ＨＤＤなどである。また、不揮発性メモリ１０３は、冷却ファン監視制御部１３の補助記憶装置として使用される。不揮発性メモリ１０３には、オペレーティングシステムのプログラムやファームウェア、アプリケーションプログラム、および各種データが格納される。
【００３４】
入出力インタフェース１０４は、冷却ファン１６１，１６２，１６３，１６４、温度センサ１７、および図示しない入出力装置と接続して入出力をおこなう。
通信インタフェース１０５は、ＲＡＩＤ制御部１２と接続して所要のデータの送受信をおこなう。また、通信インタフェース１０５は、図示しないネットワーク経由で外部装置と接続し所要のデータの送受信をおこなう。
【００３５】
以上のようなハードウェア構成によって、第２の実施形態の冷却ファン監視制御部１３の処理機能を実現することができる。なお、冷却ファン監視制御部１３の他、ＲＡＩＤ制御部１２、第１の実施形態に示したストレージ制御装置１も、図示した冷却ファン監視制御部１３と同様のハードウェアにより実現することができる。
【００３６】
冷却ファン監視制御部１３は、たとえばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第２の実施形態の処理機能を実現する。冷却ファン監視制御部１３に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。たとえば、冷却ファン監視制御部１３に実行させるプログラムを不揮発性メモリ１０３に格納しておくことができる。プロセッサ１０１は、不揮発性メモリ１０３内のプログラムの少なくとも一部をＲＡＭ１０２にロードし、プログラムを実行する。また冷却ファン監視制御部１３に実行させるプログラムを、図示しない光ディスク、メモリ装置、メモリカードなどの可搬型記録媒体に記録しておくこともできる。光ディスクには、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などがある。メモリ装置は、入出力インタフェース１０４あるいは図示しない機器接続インタフェースとの通信機能を搭載した記録媒体である。たとえば、メモリ装置は、メモリリーダライタによりメモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しをおこなうことができる。メモリカードは、カード型の記録媒体である。
【００３７】
可搬型記録媒体に格納されたプログラムは、たとえばプロセッサ１０１からの制御により、不揮発性メモリ１０３にインストールされた後、実行可能となる。またプロセッサ１０１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００３８】
次に、冷却ファン監視制御部１３の機能構成について図５を用いて説明する。図５は、第２の実施形態の冷却ファン監視制御部の機能構成の一例を示す図である。
冷却ファン監視制御部１３は、温度検出部１３１と、エラー検出部１３２と、ファン制御部１３３と、エラー検出履歴記録部１３４と、異常ファン特定部１３５と、異常処理部１３６とを備える。温度検出部１３１は、ディスク１５を収容する格納筺体の温度を検出する。ファン制御部１３３は、ディスク１５を収容する格納筺体の温度にもとづいて冷却ファン１６の運転制御をおこなう。また、ファン制御部１３３は、外来振動源としての冷却ファン１６を検出するための冷却ファン１６の運転制御をおこなう。
【００３９】
エラー検出部１３２は、ディスク１５のエラー（たとえば、オフトラックエラー）を検出する。エラー検出履歴記録部１３４は、ディスク１５のエラー検出履歴（ストレージ異常情報取得履歴）を記録する。なお、エラー検出履歴の記録は、エラー検出時の冷却ファン１６の運転態様との対応関係を有する。
【００４０】
異常ファン特定部１３５は、エラー検出履歴と、エラー検出履歴に対応する冷却ファン１６の運転態様とからエラーの原因となっている冷却ファン１６を異常ファンとして特定する。異常処理部１３６は、異常ファンを報知する。また、異常処理部１３６は、異常ファンとして特定された冷却ファン１６の運転態様を変更する。
【００４１】
次に、第２の実施形態のエラー通知処理について図６を用いて説明する。図６は、第２の実施形態のエラー通知処理のフローチャートを示す図である。エラー通知処理は、ＲＡＩＤ制御部１２がＲＡＩＤ制御中に実行する処理である。
【００４２】
［ステップＳ１１］ＲＡＩＤ制御部１２は、ディスク１５からエラー通知があるか否かを判定する。ＲＡＩＤ制御部１２は、ディスク１５からエラー通知がない場合にステップＳ１２にすすみ、ディスク１５からエラー通知がある場合にステップＳ１３にすすむ。
【００４３】
［ステップＳ１２］ＲＡＩＤ制御部１２は、ディスク１５に対してリクエスト（たとえば、Ｉ／Ｏ要求）をおこなっていてリクエストから所定時間内に応答がないとき、タイムアウトエラーを検出する。ＲＡＩＤ制御部１２は、ディスク１５のタイムアウトエラーを検出の有無を判定する。ＲＡＩＤ制御部１２は、ディスク１５のタイムアウトエラーを検出していない場合にステップＳ１１にすすみ、ディスク１５のタイムアウトエラーを検出した場合にステップＳ１３にすすむ。
【００４４】
［ステップＳ１３］ＲＡＩＤ制御部１２は、ディスク１５から通知されたエラー、およびＲＡＩＤ制御部１２が検出したタイムアウトエラーを冷却ファン監視制御部１３に通知する。
【００４５】
次に、第２の実施形態のエラー記録処理について図７を用いて説明する。図７は、第２の実施形態のエラー記録処理のフローチャートを示す図である。エラー記録処理は、冷却ファン監視制御部１３がストレージ装置１０の稼働中に実行する処理である。
【００４６】
［ステップＳ２１］冷却ファン監視制御部１３（エラー検出部１３２）は、ディスク１５がＲＡＩＤ制御部１２に通知したエラー、またはＲＡＩＤ制御部１２が検出したタイムアウトエラーを、ＲＡＩＤ制御部１２から通知されたか否かを判定する。冷却ファン監視制御部１３は、エラーの通知があればステップＳ２２にすすみ、エラーの通知がなければエラーの通知を待ち受ける。
【００４７】
［ステップＳ２２］冷却ファン監視制御部１３（エラー検出履歴記録部１３４）は、通知されたエラーをエラー検出履歴として記録する。冷却ファン監視制御部１３は、併せて冷却ファン１６の運転態様を記録する。なお、通知されたエラーについてエラー検出時の冷却ファン１６の運転態様との対応関係を特定可能であればよく、エラー検出履歴は、必ずしも冷却ファン１６の運転態様の記録を要しない。なお、エラー検出履歴は、エラー種別、ディスク１５の識別情報、ディスク１５の搭載位置（たとえば、スロット番号）などを含むものであってもよい。
【００４８】
これにより、冷却ファン監視制御部１３は、ディスク１５のエラーの検出と、エラー検出履歴の記録とをおこなうことができる。
次に、第２の実施形態のファン異常判定処理について図８を用いて説明する。図８は、第２の実施形態のファン異常判定処理のフローチャートを示す図である。ファン異常判定処理は、冷却ファン監視制御部１３がストレージ装置１０の稼働中に実行する処理である。
【００４９】
［ステップＳ３１］冷却ファン監視制御部１３（異常ファン特定部１３５）は、エラー検出履歴記録部１３４が記録するエラー検出履歴にもとづいて、所定の監視時間内のエラー発生異常の有無を判定する。たとえば、冷却ファン監視制御部１３は、直近１０分のディスク１５のオフトラックエラーの発生頻度が所定の閾値を超えたか否かにより、エラー発生異常の有無を判定する。冷却ファン監視制御部１３は、エラー発生異常があるとした場合にステップＳ３２にすすみ、エラー発生異常がないとした場合にエラー発生異常を待ち受ける。
【００５０】
［ステップＳ３２］冷却ファン監視制御部１３（異常ファン特定部１３５）は、異常ファン検出処理を実行する。異常ファン検出処理は、ディスク１５のオフトラックエラーの発生原因となる冷却ファン１６（異常ファン）を検出する処理である。異常ファン検出処理の詳細は、図９を用いて後で説明する。
【００５１】
［ステップＳ３３］冷却ファン監視制御部１３（異常ファン特定部１３５）は、異常ファンを検出したか否かを判定する。冷却ファン監視制御部１３は、異常ファンを検出した場合にステップＳ３６にすすみ、異常ファンを検出していない場合にステップＳ３４にすすむ。
【００５２】
［ステップＳ３４］冷却ファン監視制御部１３（異常ファン特定部１３５）は、異常運転パタン検出処理を実行する。異常運転パタン検出処理は、ディスク１５のオフトラックエラーの発生原因となる冷却ファン１６の運転パタン（異常運転パタン）を検出する処理である。異常運転パタンは、複数の冷却ファン１６の運転態様の組合せのうちディスク１５のオフトラックエラーの発生原因となる特定の組合せである。異常運転パタン検出処理の詳細は、図１０を用いて後で説明する。
【００５３】
［ステップＳ３５］冷却ファン監視制御部１３（異常ファン特定部１３５）は、異常運転パタンを検出したか否かを判定する。冷却ファン監視制御部１３は、異常運転パタンを検出した場合にステップＳ３６にすすみ、異常運転パタンを検出していない場合にステップＳ３１にすすむ。
【００５４】
［ステップＳ３６］冷却ファン監視制御部１３（異常処理部１３６）は、検出した異常ファンまたは異常運転パタンをあらかじめ設定した態様で報知する。たとえば、冷却ファン監視制御部１３は、図示しない表示部により報知内容を表示出力することができる。また、冷却ファン監視制御部１３は、図示しない外部装置に対して報知内容を送信することができる。
【００５５】
［ステップＳ３７］冷却ファン監視制御部１３（異常処理部１３６）は、検出した異常に対処する。具体的には、冷却ファン監視制御部１３は、検出した異常ファンの運転態様を変更、または異常運転パタンの除外をおこなう。たとえば、冷却ファン監視制御部１３は、検出した異常ファンを停止、あるいは通常運転から低速運転に変更する。冷却ファン監視制御部１３は、検出した異常に対処した後、ステップＳ３１にすすむ。
【００５６】
このように、冷却ファン監視制御部１３は、オフトラックエラーの発生原因の特定と除去とをおこなうことができる。したがって、ストレージ装置１０は、ストレージ装置１０におけるディスク１５のアクセス性能を低下させる冷却ファン１６を検出できる。
【００５７】
なお、ステップＳ３１における所定の監視時間内のエラー発生異常の有無の判定は、異常ファン検出処理および異常運転パタン検出処理の実行契機を決定するものである。冷却ファン監視制御部１３は、所定の監視時間内のエラー発生異常の有無の判定に代えて、所定の設定タイミングや、所定の稼働時間経過タイミングを、異常ファン検出処理および異常運転パタン検出処理の実行契機としてもよい。
【００５８】
次に、第２の実施形態の異常ファン検出処理について図９を用いて説明する。図９は、第２の実施形態の異常ファン検出処理のフローチャートを示す図である。異常ファン検出処理は、冷却ファン監視制御部１３（異常ファン特定部１３５）がファン異常判定処理のステップＳ３２で実行する処理である。
【００５９】
［ステップＳ４１］冷却ファン監視制御部１３は、複数の冷却ファン１６のうちから１つを、検証対象ファンとして選択する。
［ステップＳ４２］冷却ファン監視制御部１３は、検証対象ファンの運転態様を変更する。たとえば、冷却ファン監視制御部１３は、検証対象ファンの運転態様が通常運転である場合に、検証対象ファンの運転態様を低速運転に変更し、検証対象ファンの運転態様が低速運転である場合に、検証対象ファンの運転態様を停止に変更する。
【００６０】
［ステップＳ４３］冷却ファン監視制御部１３は、検証対象ファンの検証時間を設定する。たとえば、冷却ファン監視制御部１３は、検証時間として１０分を設定する。
［ステップＳ４４］冷却ファン監視制御部１３は、ステップＳ４３で設定した検証時間が経過したか否かを判定する。冷却ファン監視制御部１３は、検証時間が経過した場合にステップＳ４５にすすみ、検証時間が経過していない場合に検証時間の経過を待つ。
【００６１】
［ステップＳ４５］冷却ファン監視制御部１３は、検証時間のエラー検出履歴を取得する。
［ステップＳ４６］冷却ファン監視制御部１３は、検証前と比較して、検証時間中のエラー発生頻度が改善（減少）しているか否かを判定する。冷却ファン監視制御部１３は、検証時間中のエラー発生頻度が改善している場合にステップＳ４７にすすみ、検証時間中のエラー発生頻度が改善していない場合にステップＳ４８にすすむ。
【００６２】
［ステップＳ４７］冷却ファン監視制御部１３は、運転態様の変更により検証時間中のエラー発生頻度を改善した検証対象ファンを異常ファンとして特定（検出）し、異常ファン検出処理を終了する。
【００６３】
［ステップＳ４８］冷却ファン監視制御部１３は、検証対象ファンについてすべての運転態様を検証したか否かを判定する。冷却ファン監視制御部１３は、すべての運転態様を検証した場合にステップＳ４９にすすみ、未だすべての運転態様を検証していない場合にステップＳ４２にすすむ。これにより、冷却ファン監視制御部１３は、検証対象ファンについてすべての運転態様（たとえば、停止、通常運転、低速運転）がオフトラックエラーの発生原因となっているかを検証することができる。
【００６４】
［ステップＳ４９］冷却ファン監視制御部１３は、すべての冷却ファン１６を検証したか否かを判定する。冷却ファン監視制御部１３は、すべての冷却ファン１６を検証した場合にステップＳ５０にすすみ、未だすべての冷却ファン１６を検証していない場合にステップＳ４１にすすむ。これにより、冷却ファン監視制御部１３は、すべての冷却ファン１６についてオフトラックエラーの発生原因となっているかを検証することができる。
【００６５】
［ステップＳ５０］冷却ファン監視制御部１３は、すべての冷却ファン１６について単独でオフトラックエラーの発生原因となっていないと判定し、異常ファンを特定できないことから異常ファンを非検出とし、異常ファン検出処理を終了する。
【００６６】
これにより、冷却ファン監視制御部１３は、冷却ファン１６が単独でオフトラックエラーの発生原因となっている場合に、異常ファンを特定することができる。したがって、ストレージ装置１０は、ストレージ装置１０におけるディスク１５のアクセス性能を低下させる冷却ファン１６を検出できる。
【００６７】
なお、冷却ファン監視制御部１３は、検証時間中のエラー発生頻度が改善している場合に、冷却ファン１６の以降の検証をステップＳ４６で打ち切っているが、すべての冷却ファン１６の検証を待って異常ファン検出処理を終了するようにしてもよい。
【００６８】
次に、第２の実施形態の異常運転パタン検出処理について図１０を用いて説明する。図１０は、第２の実施形態の異常運転パタン検出処理のフローチャートを示す図である。異常運転パタン検出処理は、冷却ファン監視制御部１３（異常ファン特定部１３５）がファン異常判定処理のステップＳ３４で実行する処理である。
【００６９】
［ステップＳ５１］冷却ファン監視制御部１３は、複数の冷却ファン１６の運転パタンの組合せから１つの運転パタンを、検証対象運転パタンとして選択する。なお、複数の冷却ファン１６の運転パタンの組合せは、図１１に示すような運転パタンテーブルとしてあらかじめ用意されるものであってもよい。図１１は、第２の実施形態の運転パタンテーブルの一例を示す図である。運転パタンテーブル５０は、あらかじめ複数の運転パタンＰ１，Ｐ２，Ｐ３，…を定義する。運転パタンは、冷却ファン１６（１６１，１６２，１６３，１６４）に対応する冷却ファン（ファンＡ，ファンＢ，ファンＣ，ファンＤ）毎の運転態様の組合せを定義する。たとえば、運転パタンＰ１は、ファンＡとファンＢが「低速」運転、ファンＣとファンＤが「通常」運転である。運転パタンテーブルは、すべての運転パタンを定義したものであってもよいし、限定した運転パタンを定義したものであってもよい。このような運転パタンテーブル５０を用いることにより、冷却ファン監視制御部１３は、運転パタンテーブル５０に定義されている運転パタンから検証対象運転パタンを選択することができる。
【００７０】
［ステップＳ５２］冷却ファン監視制御部１３は、冷却ファン１６について検証対象運転パタンに対応する運転態様に変更する。
［ステップＳ５３］冷却ファン監視制御部１３は、検証対象運転パタンの検証時間を設定する。たとえば、冷却ファン監視制御部１３は、検証時間として１０分を設定する。
【００７１】
［ステップＳ５４］冷却ファン監視制御部１３は、ステップＳ５３で設定した検証時間が経過したか否かを判定する。冷却ファン監視制御部１３は、検証時間が経過した場合にステップＳ５５にすすみ、検証時間が経過していない場合に検証時間の経過を待つ。
【００７２】
［ステップＳ５５］冷却ファン監視制御部１３は、検証時間のエラー検出履歴を取得する。
［ステップＳ５６］冷却ファン監視制御部１３は、検証前と比較して、検証時間中のエラー発生頻度が改善（減少）しているか否かを判定する。冷却ファン監視制御部１３は、検証時間中のエラー発生頻度が改善している場合にステップＳ５７にすすみ、検証時間中のエラー発生頻度が改善していない場合にステップＳ５８にすすむ。
【００７３】
［ステップＳ５７］冷却ファン監視制御部１３は、運転態様の変更により検証時間中のエラー発生頻度を改善した検証対象運転パタンを異常運転パタンとして特定（検出）し、異常運転パタン検出処理を終了する。
【００７４】
［ステップＳ５８］冷却ファン監視制御部１３は、すべての検証対象運転パタンを検証したか否かを判定する。冷却ファン監視制御部１３は、すべての検証対象運転パタンを検証した場合にステップＳ５９にすすみ、未だすべての検証対象運転パタンを検証していない場合にステップＳ５１にすすむ。これにより、冷却ファン監視制御部１３は、冷却ファン１６の運転態様（たとえば、停止、通常運転、低速運転）の組合せがオフトラックエラーの発生原因となっているかを検証することができる。
【００７５】
［ステップＳ５９］冷却ファン監視制御部１３は、すべての検証対象運転パタンについてオフトラックエラーの発生原因となっていないと判定し、異常運転パタンを特定できないことから異常運転パタンを非検出とし、異常運転パタン検出処理を終了する。
【００７６】
これにより、冷却ファン監視制御部１３は、冷却ファン１６の運転態様の組合せがオフトラックエラーの発生原因となっている場合に、異常ファンを特定することができる。したがって、ストレージ装置１０は、ストレージ装置１０におけるディスク１５のアクセス性能を低下させる冷却ファン１６を検出できる。
【００７７】
なお、冷却ファン監視制御部１３は、検証時間中のエラー発生頻度が改善している場合に、運転パタンの以降の検証をステップＳ５６で打ち切っているが、すべての運転パタンの検証を待って異常運転パタン検出処理を終了するようにしてもよい。
【００７８】
次に、第２の実施形態の温度監視制御処理について図１２を用いて説明する。図１２は、第２の実施形態の温度監視制御処理のフローチャートを示す図である。温度監視制御処理は、冷却ファン監視制御部１３がストレージ装置１０の稼働中に実行する処理である。
【００７９】
［ステップＳ６１］冷却ファン監視制御部１３（温度検出部１３１）は、ストレージ装置１０のディスク１５の格納筺体内の温度（装置内温度）を取得する。
［ステップＳ６２］冷却ファン監視制御部１３（ファン制御部１３３）は、装置内温度があらかじめ設定している第１の閾値温度を超える第１の温度異常であるか否かを判定する。冷却ファン監視制御部１３は、第１の温度異常である場合にステップＳ６３にすすみ、第１の温度異常でない場合にステップＳ６１にすすむ。
【００８０】
［ステップＳ６３］冷却ファン監視制御部１３（ファン制御部１３３）は、冷却ファン監視制御部１３（異常ファン特定部１３５）が異常ファン検出処理または異常運転パタン検出処理を実行中であるか否かを判定する。冷却ファン監視制御部１３（ファン制御部１３３）は、冷却ファン監視制御部１３（異常ファン特定部１３５）が異常ファン検出処理または異常運転パタン検出処理を実行中である場合にステップＳ６４にすすむ。
【００８１】
［ステップＳ６４］冷却ファン監視制御部１３（異常ファン特定部１３５）は、実行中の異常ファン検出処理、または実行中の異常運転パタン検出処理を中止する。
［ステップＳ６５］冷却ファン監視制御部１３（ファン制御部１３３）は、装置内温度があらかじめ設定している第２の閾値温度を超える第２の温度異常であるか否かを判定する。なお、第２の閾値温度は、第１の閾値温度よりも高い温度である。たとえば、第２の閾値温度は、ストレージ装置１０の正常な動作を保証できない温度である。冷却ファン監視制御部１３は、第２の温度異常である場合にステップＳ６６にすすみ、第２の温度異常でない場合にステップＳ６１にすすむ。
【００８２】
［ステップＳ６６］冷却ファン監視制御部１３（ファン制御部１３３）は、異常温度検出処理を実行する。冷却ファン監視制御部１３は、異常温度検出処理を実行後、ステップＳ６１にすすむ。冷却ファン監視制御部１３は、異常温度検出処理において温度異常を示す警報（ワーニング）出力をおこなう。なお、異常温度検出処理は、不良部品の特定、点検を管理者に促すために、ストレージ装置１０を安全に停止するための処理を含むものであってもよい。
【００８３】
これにより、ストレージ装置１０は、ストレージ装置１０の稼働環境を安全に維持しながら、オフトラックエラーの発生原因を特定することができる。
また、ストレージ装置１０は、単に、冷却ファン１６の共振を検出して冷却ファン１６の異常を判定するものではないことから、冷却ファン１６に対して過剰な不良特定や、運転停止をおこなうことがない。これにより、ストレージ装置１０は、冷却性能が逼迫するような冗長性の喪失機会を低減することができる。また、冷却ファン１６に対して不必要な不良特定や、運転停止を排除することから、ストレージ装置１０の冷却ファン１６にかかる管理コスト（たとえば、交換部品の手配や、異常監視に係る人的コストなど）を低減することもできる。
【００８４】
また、冷却ファン１６の共振を検出できないような場合であっても、ストレージ装置１０は、オフトラックエラーの発生原因となる冷却ファン１６を特定することができる。これにより、ストレージ装置１０は、ディスク１５がオフトラックエラーを繰り返すことによるディスク１５の寿命劣化を低減することもできる。ストレージ装置１０は、ディスク１５の寿命劣化を低減することにより、ストレージ装置１０のディスク１５にかかる管理コスト（たとえば、交換部品の手配や、異常監視に係る人的コストなど）を低減することもできる。
【００８５】
［第３の実施形態］
次に、第３の実施形態について説明する。第３の実施形態は、通常時から運転パタンの切替をおこなう点で、エラー発生異常時に異常ファン検出処理または異常運転パタン検出処理を実行する第２の実施形態と異なる。なお、第３の実施形態の説明では、第２の実施形態との相違点について説明し、第２の実施形態と同様の構成については説明を省略する。
【００８６】
まず、第３の実施形態のファン運転処理について図１３を用いて説明する。図１３は、第３の実施形態のファン運転処理のフローチャートを示す図である。ファン運転処理は、冷却ファン監視制御部１３がストレージ装置１０の稼働中に実行する処理である。
【００８７】
［ステップＳ７１］冷却ファン監視制御部１３（温度検出部１３１）は、ストレージ装置１０のディスク１５の格納筺体内の温度（装置内温度）を取得する。
［ステップＳ７２］冷却ファン監視制御部１３（ファン制御部１３３）は、装置内温度に対応する冷却ファン１６の運転パタンを選択し、冷却ファン１６の運転態様を更新する。なお、複数の冷却ファン１６の運転パタンの組合せは、図１４に示すような運転パタンテーブルとしてあらかじめ用意されるものであってもよい。図１４は、第３の実施形態の運転パタンテーブルの一例を示す図である。運転パタンテーブル５１は、あらかじめ複数の運転パタンＰ０１，Ｐ０２，Ｐ０３，…を定義する。運転パタンは、冷却ファン１６（１６１，１６２，１６３，１６４）に対応する冷却ファン（ファンＡ，ファンＢ，ファンＣ，ファンＤ）毎の運転態様の組合せを定義する。たとえば、運転パタンＰ０２は、ファンＡが停止、ファンＢとファンＣとファンＤが「通常」運転である。運転パタンＰ０１０は、ファンＡとファンＣが「低速」運転、ファンＢとファンＤが「通常」運転である。運転パタンテーブルは、すべての運転パタンを定義したものであってもよいし、限定した運転パタンを定義したものであってもよい。また、各運転パタンは、冷却ファン１６毎の運転態様の組合せに加え、その運転パタンを選択可能な装置内温度が設定されている。たとえば、運転パタンＰ０２は、装置内温度が「Ｔ１」以下で選択可能であり、装置内温度が「Ｔ１」を超えると選択不可となる。
【００８８】
このような運転パタンテーブル５１を用いることにより、冷却ファン監視制御部１３は、運転パタンテーブル５１に定義されている運転パタンから装置内温度に応じて運転パタンを選択することができる。
【００８９】
［ステップＳ７３］冷却ファン監視制御部１３（ファン制御部１３３）は、選択した運転パタンの運転時間を設定する。たとえば、冷却ファン監視制御部１３は、運転時間として６０分を設定する。選択した運転パタンの運転時間は、通常時におこなうことから、第２の実施形態の検証時間と比較して長い時間を採用できる。
【００９０】
［ステップＳ７４］冷却ファン監視制御部１３（ファン制御部１３３）は、冷却ファン１６の運転パタンを運転履歴（制御状態切替履歴）として記録する。
［ステップＳ７５］冷却ファン監視制御部１３（温度検出部１３１）は、ストレージ装置１０のディスク１５の格納筺体内の温度（装置内温度）を取得する。
【００９１】
［ステップＳ７６］冷却ファン監視制御部１３（ファン制御部１３３）は、装置内温度が冷却ファン１６の運転パタンの選択条件の範囲内であるか否かを判定する。冷却ファン監視制御部１３は、装置内温度が冷却ファン１６の運転パタンの選択条件の範囲内である場合にステップＳ７７にすすみ、装置内温度が冷却ファン１６の運転パタンの選択条件の範囲外である場合にステップＳ７１にすすむ。すなわち、冷却ファン監視制御部１３は、装置内温度に応じた運転パタンを選択し直すことで、ストレージ装置１０の装置内温度の上昇を抑制する。
【００９２】
［ステップＳ７７］冷却ファン監視制御部１３（ファン制御部１３３）は、ステップＳ７３で設定した運転時間が経過したか否かを判定する。冷却ファン監視制御部１３は、運転時間が経過した場合にステップＳ７１にすすみ、運転時間が経過していない場合にステップＳ７４にすすみ、運転時間の経過を待つ。すなわち、冷却ファン監視制御部１３は、設定した運転時間の経過毎に運転パタンを選択し直すことで、ストレージ装置１０における冷却ファン１６の多様な運転履歴を蓄積する。
【００９３】
なお、ステップＳ７２でおこなう運転パタンの選択は、運転パタンテーブル５１から運転パタンを順次選択するものであってもよいし、無作為に選択するものであってもよい。また、ステップＳ７２でおこなう運転パタンの選択は、あらかじめスケジュールされたものであってもよい。
【００９４】
このように、冷却ファン監視制御部１３は、通常時から多様な運転履歴を蓄積することができるので、異常発生時に冷却ファン１６の冷却能力を低減するような検証運転を必要としない。
【００９５】
次に、第３の実施形態のファン異常判定処理について図１５を用いて説明する。図１５は、第３の実施形態のファン異常判定処理のフローチャートを示す図である。第３の実施形態のファン異常判定処理は、冷却ファン監視制御部１３が所定の契機で実行する処理である。たとえば、所定の契機は、２４時間毎などのタイマ契機、あるいはエラー率の上昇検出などのイベント契機がある。
【００９６】
［ステップＳ８１］冷却ファン監視制御部１３（異常ファン特定部１３５）は、ファン運転処理で蓄積した運転履歴を取得する。
［ステップＳ８２］冷却ファン監視制御部１３（異常ファン特定部１３５）は、第２の実施形態で説明したエラー記録処理で蓄積したファン運転処理で蓄積したエラー検出履歴を取得する。
【００９７】
［ステップＳ８３］冷却ファン監視制御部１３（異常ファン特定部１３５）は、運転履歴とエラー検出履歴とから運転パタン毎のエラーを集計する。冷却ファン監視制御部１３は、運転履歴から運転パタン毎の運転時間を特定し、エラー検出履歴から運転パタン毎のエラー発生回数を特定できる。冷却ファン監視制御部１３は、運転パタン毎の運転時間と運転パタン毎のエラー発生回数とから運転パタン毎のエラー頻度を算出できる。
【００９８】
これにより、冷却ファン監視制御部１３（異常ファン特定部１３５）は、図１６に示すようなエラー集計テーブルを生成するようにしてもよい。図１６は、第３の実施形態のエラー集計テーブルの一例を示す図である。エラー集計テーブル５２は、運転パタン毎の運転時間とエラー発生回数とエラー頻度とを保持する。たとえば、運転パタンＰ０１の運転時間はＯＴ１であり、エラー発生回数はＥＴ１、エラー頻度はＥＦ１である。冷却ファン監視制御部１３は、エラー集計テーブル５２を参照して運転パタンとエラーの関係を評価することができる。
【００９９】
［ステップＳ８４］冷却ファン監視制御部１３（異常ファン特定部１３５）は、運転パタン毎のエラー頻度を比較する。なお、エラー頻度の比較において、冷却ファン監視制御部１３は、誤差を排除するため比較対象となる運転パタンを所定の運転時間を超えるものに制限してもよい。
【０１００】
［ステップＳ８５］冷却ファン監視制御部１３（異常ファン特定部１３５）は、運転パタンのうちから高頻度にエラーを発生する運転パタン（異常運転パタン）があるか否かを判定する。たとえば、冷却ファン監視制御部１３は、運転パタン毎のエラー頻度のばらつきを評価し、あらかじめ設定した範囲内にない場合にエラー頻度が高頻度であるとする。冷却ファン監視制御部１３は、異常運転パタンがある場合にステップＳ８６にすすみ、異常運転パタンがない場合にファン異常判定処理を終了する。
【０１０１】
［ステップＳ８６］冷却ファン監視制御部１３（異常処理部１３６）は、検出した異常運転パタンをあらかじめ設定した態様で報知する。たとえば、冷却ファン監視制御部１３は、図示しない表示部により報知内容を表示出力することができる。また、冷却ファン監視制御部１３は、図示しない外部装置に対して報知内容を送信することができる。
【０１０２】
［ステップＳ８７］冷却ファン監視制御部１３（異常処理部１３６）は、検出した異常に対処する。具体的には、冷却ファン監視制御部１３は、検出した異常運転パタンの除外をおこなう。たとえば、冷却ファン監視制御部１３は、検出した異常運転パタンでの運転を制限する。冷却ファン監視制御部１３は、検出した異常に対処した後、ファン異常判定処理を終了する。
【０１０３】
これにより、ストレージ装置１０は、ストレージ装置１０の稼働環境を安全に維持しながら、オフトラックエラーの発生原因を特定することができる。また、冷却ファン監視制御部１３は、具体的なストレージ装置１０の障害を検出する前に、異常運転パタンを除外することができる。
【０１０４】
また、ストレージ装置１０は、単に、冷却ファン１６の共振を検出して冷却ファン１６の異常を判定するものではないことから、冷却ファン１６に対して過剰な不良特定や、運転停止をおこなうことがない。これにより、ストレージ装置１０は、冷却性能が逼迫するような冗長性の喪失機会を低減することができる。また、冷却ファン１６に対して不必要な不良特定や、運転停止を排除することから、ストレージ装置１０の冷却ファン１６にかかる管理コスト（たとえば、交換部品の手配や、異常監視に係る人的コストなど）を低減することもできる。
【０１０５】
ここで、ストレージ装置におけるディスクと冷却ファンの配置構成について図１７を用いて説明する。図１７は、第４の実施形態のストレージ装置におけるディスクと冷却ファンの配置構成の一例を示す図である。
【０１０６】
ストレージ装置１０は、２つの電源ユニット６２と、２つの筐体監視制御ユニット６３と、複数のディスク１５を筐体６１内に収容して備える。筐体監視制御ユニット６３は、筐体６１内の各部の監視制御をおこない、たとえば、コントローラモジュール１１に相当する機能を有する。
【０１０７】
ストレージ装置１０は、筺体６１の前面（紙面右上方向）側にディスク１５を配置し、筺体６１の背面（紙面左下方向）側に電源ユニット６２と筐体監視制御ユニット６３を配置する。電源ユニット６２は、筺体６１の底面側に位置し、筐体監視制御ユニット６３は、対となる電源ユニット６２の上面側に位置する。電源ユニット６２は、２つの通風口６４を筺体６１の背面側に臨ませ、それぞれの通風口６４に臨むようにして２つの冷却ファン１６を備える。冷却ファン１６は、大きな熱源となる電源ユニット６２の冷却をおこなうほか、筐体６１内に空気の流れを作り、ディスク１５を含めて筺体６１内を冷却する。このような冷却ファン１６は、ストレージ装置１０の振動源となり得る。また、冷却ファン１６とディスク１５の位置関係によっては、振動を直接観測することにより振動源を特定することが容易でない。
【０１０８】
このようなストレージ装置１０において、冷却ファン１６の振動あるいは共振を検出できないような場合であっても、ストレージ装置１０は、オフトラックエラーの発生原因となる冷却ファン１６を特定することができる。これにより、ストレージ装置１０は、ディスク１５がオフトラックエラーを繰り返すことによるディスク１５の寿命劣化を低減することもできる。ストレージ装置１０は、ディスク１５の寿命劣化を低減することにより、ストレージ装置１０のディスク１５にかかる管理コスト（たとえば、交換部品の手配や、異常監視に係る人的コストなど）を低減することもできる。
【０１０９】
なお、異常ファン検出の対象となるディスク１５のエラーとしてオフトラックエラーを例示したが、これはライトオフトラックエラー（ライト時のオフトラックエラー）と、リードオフトラックエラー（リード時のオフトラックエラー）を含むものである。また、ディスク１５のエラーとしてオフトラックエラーに限らないエラーを、異常ファン検出の対象となるディスク１５のエラーとしてもよい。また、ストレージ装置１０は、すべてのディスク１５のエラーのうちいずれを異常ファン検出の対象となるディスク１５のエラーとするかを、あらかじめ設定可能にしてもよい。
【０１１０】
なお、ストレージ装置１０は、既知の統計的手法を用いて異常ファンまたは異常運転パタンを特定するようにしてもよい。また、ストレージ装置１０は、エラー種別、ディスク１５の識別情報、ディスク１５の搭載位置などの情報を、運転履歴、エラー検出履歴、およびエラー集計テーブルに含めて記録するようにしてもよい。この場合、ストレージ装置１０は、エラー種別、ディスク１５の識別情報、ディスク１５の搭載位置などの条件毎に統計処理をおこない、既知の統計的手法を用いて異常ファンまたは異常運転パタンを特定することができる。
【０１１１】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、ストレージ装置１０、第１の実施形態に示したストレージ制御装置１が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。磁気記憶装置には、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープなどがある。光ディスクには、ＤＶＤ、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ／ＲＷなどがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。
【０１１２】
プログラムを流通させる場合には、たとえば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
【０１１３】
プログラムを実行するコンピュータは、たとえば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。
【０１１４】
また、上記の処理機能の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤなどの電子回路で実現することもできる。
【符号の説明】
【０１１５】
１  ストレージ制御装置
１ａ  ストレージ異常取得部
１ｂ  ファン制御部
１ｃ  ファン異常検出部
２  ストレージ装置
３，３ａ，３ｂ，３ｃ，３ｄ  記憶装置
４，４ａ，４ｂ，４ｃ，４ｄ  冷却ファン
５  ストレージ異常情報
６  ファン制御
７，８  ストレージ異常情報
１０  ストレージ装置
１１  コントローラモジュール
１２  ＲＡＩＤ制御部
１３  冷却ファン監視制御部
１４  ディスクエンクロージャ
１５，１５１，１５２，１５３，１５４  ディスク
１６，１６１，１６２，１６３，１６４  冷却ファン
１７  温度センサ
５０，５１  運転パタンテーブル
５２  エラー集計テーブル
６１  筐体
６２  電源ユニット
６３  筐体監視制御ユニット
６４  通風口
１０１  プロセッサ
１０２  ＲＡＭ
１０３  不揮発性メモリ
１０４  入出力インタフェース
１０５  通信インタフェース
１０６  バス
１３１  温度検出部
１３２  エラー検出部
１３３  ファン制御部
１３４  エラー検出履歴記録部
１３５  異常ファン特定部
１３６  異常処理部
【図１】
2015099625.tif 000003
【図２】
2015099625.tif 000004
【図３】
2015099625.tif 000005
【図４】
2015099625.tif 000006
【図５】
2015099625.tif 000007
【図６】
2015099625.tif 000008
【図７】
2015099625.tif 000009
【図８】
2015099625.tif 000010
【図９】
2015099625.tif 000011
【図１０】
2015099625.tif 000012
【図１１】
2015099625.tif 000013
【図１２】
2015099625.tif 000014
【図１３】
2015099625.tif 000015
【図１４】
2015099625.tif 000016
【図１５】
2015099625.tif 000017
【図１６】
2015099625.tif 000018
【図１７】
2015099625.tif 000019