JP4542163B2 - ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置 - Google Patents

ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置 Download PDF

Info

Publication number
JP4542163B2
JP4542163B2 JP2008045451A JP2008045451A JP4542163B2 JP 4542163 B2 JP4542163 B2 JP 4542163B2 JP 2008045451 A JP2008045451 A JP 2008045451A JP 2008045451 A JP2008045451 A JP 2008045451A JP 4542163 B2 JP4542163 B2 JP 4542163B2
Authority
JP
Japan
Prior art keywords
error
disk
score
path
occurred
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.)
Active
Application number
JP2008045451A
Other languages
English (en)
Other versions
JP2009205316A (ja
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
Priority to JP2008045451A priority Critical patent/JP4542163B2/ja
Priority to US12/289,214 priority patent/US7900083B2/en
Publication of JP2009205316A publication Critical patent/JP2009205316A/ja
Application granted granted Critical
Publication of JP4542163B2 publication Critical patent/JP4542163B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Description

本発明は、ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置に関し、特に、ディスク異常に見える経路異常が発生した場合に、その異常経路を正しく縮退させることができるディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置に関するものである。
記憶装置において、切り離し可能な部位毎に障害検出回数をカウントし、その結果を用いた統計的分析により故障発生部位の判定及び切り離しを行う技術が提案されている(特許文献1参照)。
また、アレイディスク制御装置において、障害の発生時に、管理テーブルの値を増加させ、その値が閾値を上回った場合に、当該インタフェースを切り離す技術が提案されている(特許文献2参照)。
また、ディスクアレイ装置において、障害の発生時に、部品の障害ポイントを減点して、そのポイントがポイント基準値を下回った場合に、当該部品を縮退する技術が提案されている(特許文献3参照)。
特開平11−296311号公報 特開平10−275060号公報 特開2004−252692号公報
本発明者は、図7に示すディスクアレイ装置について、単にディスクD00 〜D2B のみならず、複数の経路P1〜P7についても、統計加点処理を行って縮退させることを検討した。しかし、ディスク及び経路の双方について統計加点処理による縮退を行う場合、以下のような問題があることを発見した。
即ち、このようなディスクアレイ装置において、コントローラモジュールCM#0に内蔵される制御部RoC#0 とスイッチ部BE Exp(SAS スイッチ)間の経路P1(又はP2)に異常が発生したとする。この場合、ディスクD00 〜D2B のいずれにアクセスしても、制御部RoC#0 からはSAS エラータイムアウトに見える。SAS エラータイムアウトは、通常、ディスク異常の場合に返るエラーである。このため、制御部RoC#0 は、アクセスしたディスクが異常と判断して統計加点を行い、その点数が閾値を超えた場合(SAS エラータイムアウトが4回発生した場合に相当する)に、当該ディスクを縮退させる。縮退させたディスクは、保守を行なわない限り、再び使用することができない。
以下、図7のディスクアレイ装置における、経路異常又はディスク異常を縮退させる処理を、図8〜図10に従って説明する。
今、制御部RoC#0 とスイッチ部BE Exp#0との間の経路P1が異常であるとする。これに起因して、制御部RoC#0 からは、複数のディスクD00 〜D2B において、同一のSAS エラータイムアウトが発生したように見える。例えば、説明の簡単化のために、制御部RoC#0 から、ディスクD19 、D05 、D20 、D19 、D05 、D20 、D19 、D05 、D20 、D19 において、この順にエラーが発生したように見えたとする。なお、「D19 」において数字19は当該ディスクのIDを示す(他についても同じ)。
図8(A)に示すように、ディスクアレイ装置の初期状態においては、統計加点表25における全ての経路及びディスクの点数が「0」とされる。統計加点表25において、経路及びディスクの点数が「255」を越えると、当該経路又はディスクは切り離される(縮退される)。
最初に、制御部RoC#0 からディスクD19 へのアクセスにおいて、制御部RoC#0 が、SAS エラータイムアウトを検出する。これに応じて、制御部RoC#0 は、統計加点表25において、制御部RoC#0 から当該ディスクD19 までの経路である経路P1及びP4に「10」を加算し、当該ディスクD19 に「80」を加算する。SAS エラータイムアウトは、前述のように、ディスク異常の場合に返るエラーであるので、当該ディスクに対して当該経路よりも十分に高い点数を加える。具体的には、ディスクの点数を経路の点数の数倍(この場合は8倍)を加える。これにより、図8(B)に示すように、更新された統計加点表25が得られる。なお、これらにおいて、加算された部分に下線を付して示す(以下、図8(C)〜図10において同じ)。
この後、制御部RoC#0 が、更新された統計加点表25をチェックして、切り離すべき、即ち、「255」以上の点数を持つ経路又はディスクが存在するか否かを調べる。この場合、切り離すべき経路又はディスクが存在しないので、制御部RoC#0 は、これ以後のディスクへのアクセスを通常通りに実行する。
この後、以上と同様にして、複数のディスクへのアクセスが繰り返され、その都度、当該経路に「10」が加算され、当該ディスクに「80」が加算される。これにより、図8(C)〜図10(C)に示すように、順次、統計加点表25が更新され、その都度、「255」以上の点数を持つ経路又はディスクが存在するか否かが調べられる。
即ち、統計加点表25は、ディスクD05 へのアクセスにより図8(C)に示すように、ディスクD20 へのアクセスにより図8(D)に示すように、ディスクD19 へのアクセスにより図9(A)に示すように、ディスクD05 へのアクセスにより図9(B)に示すように、ディスクD20 へのアクセスにより図9(C)に示すように、ディスクD19 へのアクセスにより図9(D)に示すように、ディスクD05 へのアクセスにより図10(A)に示すように、ディスクD20 へのアクセスにより図10(B)に示すように、ディスクD19 へのアクセスにより図10(C)に示すように、順次、更新される。
制御部RoC#0 が図10(C)の統計加点表25をチェックすると、ディスクD19 の点数が「255」を越えているので、制御部RoC#0 は、このディスクD19 を当該ディスクアレイ装置から切り離す(縮退させる)。
以上から判るように、相当回数のディスクD へのアクセスを経ても、本来の異常個所である制御部RoC#0 とスイッチ部BE Exp#0との間の経路P1を切り離すことができない。その一方で、正常なディスクD19 が切り離されてしまう。
更に、ディスクD19 が切り離された後も、統計加点表25の点数はそのままであるので、その後も他の正常なディスクが切り離されてしまう。例えば、図10(C)の状態の後、ディスクD05 へのアクセスがあると、正常なディスクD05 は切り離されてしまう。ディスクD20 についても同様である。従って、ディスクD へのアクセスを繰り返すうちに、全てのディスクD について同じエラーが発生し、複数の正常なディスクD が縮退されてしまう。この結果、RAID閉塞となってしまい、ホストコンピュータ1の入出力処理が実行できず、ジョブ異常となってしまう。
本来であれば、制御部CM#0を縮退させ、ホストコンピュータ1から制御部CM#1の経路を経由したリトライを行ない、制御部CM#1から当該ディスクD へアクセスし、入出力処理を続行させることが望ましい。このためには、ディスク異常ではない場合には、ディスクD の縮退を起こすことなく、正しい異常個所(又は、被疑箇所)を縮退させることが望ましい。
本発明は、ディスクへのアクセス時にディスクが異常であるかのように見えるエラーが発生した場合に、正しい異常箇所を縮退させることができるディスクアレイ装置を提供することを目的とする。
また、本発明は、ディスクアレイ装置において、ディスクへのアクセス時にディスクが異常であるかのように見えるエラーが発生した場合に、正しい異常箇所を縮退させることができるディスクアレイ制御方法を提供することを目的とする。
また、本発明は、ディスクアレイ装置において、ディスクへのアクセス時にディスクが異常であるかのように見えるエラーが発生した場合に、正しい異常箇所を縮退させることができるディスクアレイ制御装置を提供することを目的とする。
このディスクアレイ装置は、複数のディスクと、エラー表と、統計加点表と、制御部とを備える。エラー表は、発生し得るエラーの種類毎に、前記複数のディスクについて、エラーの発生を示す情報を格納する。統計加点表は、前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する。制御部は、前記エラー表を予め定められた時間間隔で周期的に初期化すると共に、エラーが発生した場合、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す。
好ましくは、このディスクアレイ装置の一実施態様によれば、前記制御部が、前記閾値を、前記経路について、前記ディスクについての前記閾値より小さい値とし、前記統計加点表においてその点数が前記小さい値の閾値を超えた経路を、当該ディスクアレイ装置から切り離す。
好ましくは、このディスクアレイ装置の一実施態様によれば、前記ディスクへの経路の各々が、二重化された経路であり、前記制御部が、前記ディスクを当該ディスクアレイ装置から切り離す場合、前記二重化された経路の各々を介して、前記切り離すべきとされたディスクに対して予め定められた同一の命令を発行して、前記二重化された経路を介しての前記切り離すべきとされたディスクからの前記命令に対する応答に基づいて、前記切り離すべきとされたディスクを当該ディスクアレイ装置から切り離すか否かを決定する。
このディスクアレイ装置の制御方法は、複数のディスクと、発生し得るエラーの種類毎に、前記複数のディスクについて、エラーの発生を示す情報を格納するエラー表と、前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する統計加点表と、前記エラー表と統計加点表とに基づいて所定の経路又はディスクを当該ディスクアレイ装置から切り離す制御部とを備えるディスクアレイ装置の制御方法である。このディスクアレイ装置の制御方法において、前記制御部が、前記エラー表を予め定められた時間間隔で周期的に初期化し、エラーが発生した場合、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す。
このディスクアレイ制御装置は、エラー表と、統計加点表と、制御部とを備える。エラー表は、発生し得るエラーの種類毎に、前記複数のディスクについて、エラーの発生を示す情報を格納する。統計加点表は、前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する。制御部は、前記エラー表を予め定められた時間間隔で周期的に初期化すると共に、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す。
このディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置によれば、あるエラーが発生した場合において、これと同一種類のエラーが未だ発生していない場合、エラーが発生した(と推定される)ディスク(エラーディスク)への経路に第2の点数が加算される。同一種類のエラーが既に発生している場合、前記経路に第3の点数が加算される。即ち、異常が発生していると考えられる経路へ加算される点数が、一時的に変更される(大きくされる)。具体的には、当該経路への加点は、異常が発生していない場合、エラーディスクへの加点である第1の点数より小さく、異常が発生している場合、第1の点数より大きくされる。そして、その点数が予め定められた閾値を超えた経路又はディスクが、当該ディスクアレイ装置から切り離される。
これにより、ディスクへの多数回のアクセスが繰り返される前に、正常なディスクを切り離すことなく、本来の異常個所である異常経路を、ディスクアレイ装置から切り離すことができる(縮退させることができる)。また、ディスクへの多数回のアクセスが繰り返されても、他の正常なディスクが切り離されてしまうことを防止することができる。更に、エラーが発生した(ように見えた)ディスクへ他の経路からアクセスして(リトライして)、入出力処理を続行させることができる。以上から、ディスクへのアクセスを繰り返すうちに、全てのディスクについて同じエラーが発生し、複数の正常なディスクが縮退されてしまうことを防止することができ、RAID閉塞によりホストコンピュータの入出力処理の実行が停止してジョブ異常となることを防止することができる。
このディスクアレイ装置の一実施態様によれば、経路についての閾値がディスクについての閾値より小さくされる。これにより、経路の異常がある場合に、より早く異常経路をディスクアレイ装置から切り離すことができる。
このディスクアレイ装置の一実施態様によれば、ディスクを当該ディスクアレイ装置から切り離す場合、切り離すべきとされたディスクに対して発行された命令に対する応答に基づいて、ディスクを当該ディスクアレイ装置から切り離すか否かが決定される。これにより、経路の異常がある場合に、切り離すべきとされたディスクを切り離すことを防止して、結果として、異常経路をディスクアレイ装置から切り離すことができる。
図1は、この例のディスクアレイ装置の構成の一例を示す図である。ディスクアレイ装置(RAID装置)は、ホストコンピュータ(HOST)1に接続され、制御装置(コントロールエンクロージャ:CE)2と、ディスクエンクロージャ(DE)3とを備える。ディスクエンクロージャ3は、複数個設けられ、制御装置2に直列に接続される。このディスクアレイ装置は、後述するように、その書込み及び読出しの経路が二重化されている。
ホストコンピュータ1は、周知のように、ホストバスアダプタ(HBA )11により、ディスクアレイ装置にデータの書込み及び読出しを依頼する(要求する)。ホストバスアダプタは、例えばチャネル制御装置からなる。この例のホストコンピュータ1は、例えば4個のホストバスアダプタ11を備え、書込み及び読出しの経路を二重化する。例えば、ホストバスアダプタHBA#0 及びHBA#2 は偶数のIDを持つディスクD への書込み及び読出しを行い、そのために、コントローラモジュールCM#0に接続される。ホストバスアダプタHBA#1 及びHBA#3 は奇数のIDを持つディスクD への書込み及び読出しを行い、そのために、コントローラモジュールCM#1に接続される。
なお、個々のホストバスアダプタHBA#0 等を区別する場合、「HBA#0 」等のように表す。他についても同様である。
制御装置2は、このディスクアレイ装置の全体を制御するディスクアレイ制御装置であり、2個のコントローラモジュール(CM)20と複数のディスクD00〜D0Bとを備える。2個のコントローラモジュール20により、全てのディスクD へのデータの書込み及び読出しの経路が二重化される。
コントローラモジュール20は、各々、2個のチャネルアダプタ(AC)21と、制御部(RoC )22と、スイッチ部(BE Exp)23とを備える。制御部22は、各々、エラー表24と、経路/ディスク統計加点表(以下、統計加点表)25とを備える。2個のチャネルアダプタ21により、ホストコンピュータ1からコントローラモジュール20へのデータの書込み及び読出しの経路が二重化される。
即ち、コントローラモジュールCM#0の2個のチャネルアダプタCAが、ホストバスアダプタHBA#0 及びHBA#2 に接続される。また、コントローラモジュールCM#1の2個のチャネルアダプタCAが、ホストバスアダプタHBA#1 及びHBA#3 に接続される。これにより、ホストコンピュータ1と制御部RoC#0 及びRoC#1 との間の経路が、前述のように、二重化(実際には、四重化)される。
制御装置2は、実際には、1個のディスクエンクロージャ3(DE#0)を含む。このディスクエンクロージャDE#0は、直列に接続されるディスクエンクロージャ3の先頭に接続される。2個のスイッチ部(BE Exp)23と複数のディスクD00 〜D0B とが、制御装置2内のディスクエンクロージャ3(DE#0)を構成する。このディスクエンクロージャ3(DE#0)のみが、2個のスイッチ部(BE Exp)23の間を接続する経路P3を備える。この点を除いて、ディスクエンクロージャDE#0はディスクエンクロージャDE#0等と同様の構成を備え、また、スイッチ部23はスイッチ部30と同様の構成を備え、例えばSAS (Serial Attached SCSI)スイッチからなる。
ディスクエンクロージャ3は、2個のスイッチ部30(Exp )と、これらの間を接続する経路(DE内経路)と、このDE内経路に接続された複数のディスク(例えば、磁気ディスク装置)とを備える。スイッチ部30は、例えばSAS スイッチからなる。2個のスイッチ部30により、ディスクエンクロージャ3内におけるディスクD へのデータの書込み及び読出しの経路が二重化される。
2個のスイッチ部30は、各々、他のディスクエンクロージャ3における対応するスイッチ部30と接続される。例えば、スイッチ部BE Exp#0はスイッチ部EXP#10と接続され、スイッチ部EXP#10はスイッチ部EXP#20と接続される。これにより、前述のように、複数のディスクエンクロージャ3は直列に接続される。
ディスクエンクロージャ3において、図面の簡単化のために、例えば「D00 」等の記号が、1個のディスクD を表す。ディスクD00 は、例えばID=00 のディスクである。ディスクD のIDは、ディスクD の識別情報であり、当該ディスクアレイ装置において一意に定まる。ディスクD のID「00」において、上位桁は当該ディスクD の属するディスクエンクロージャ3の順番(識別情報)を表し、下位桁は当該ディスクD の当該ディスクエンクロージャ3における順番(識別情報)を表す。
この例では、1個のディスクエンクロージャ3には例えば12個のディスクD が設けられる。また、この例では、例えば10個のディスクエンクロージャ3が設けられる。従って、この例のディスクアレイ装置は120個のディスクD を備える。なお、図1は、図面の簡単化のために、3個のディスクエンクロージャ3のみを示す。ディスクD は、例えばハードディスクドライブからなる。この例のハードディスクドライブは、SAS インタフェースを備える。
なお、ハードディスクドライブが、他のインタフェース、例えばSATA(Serial ATA)又はFC(Fibre Channel)を備えるものであっても良い。この場合、エラーの種類がSAS エラータイムアウトではない他の種類のエラーとなるので、各々のインタフェースで規定されているエラーの種類に応じて、エラー表24が構成される。また、スイッチ部23及び30も、当該インタフェースで規定されているスイッチング等を行うスイッチ部に変更される。
また、ディスクD が、ハードディスクドライブ以外の不揮発性記憶装置、例えば不揮発性半導体メモリ(フラッシュメモリ等)を用いた半導体ディスクであっても良い。即ち、ディスクD は円盤状の記憶媒体を備えるものには限られない。
例えば、ホストコンピュータ1のホストバスアダプタ11が、チャネルアダプタ21を介して、制御部22にデータの書込み又は読出しを依頼する。これに応じて、制御部22は、当該データを格納すべき又は格納されているディスクD にアクセスして、当該データの書込み又は読出しを行う。このアクセス時、当該ディスクD に応じて、その書込み又は読出しの経路も定まる。
このようにディスクD にアクセスした場合、制御部22は、周知のように、ディスクD からの応答を監視して、当該ディスクアクセスにおけるエラーの発生を検出する。そして、制御部22は、エラーが発生した場合、当該エラーの種類についてのエラー表(当該エラー表という)24を参照して、当該エラー表24に当該エラーの発生を示す情報が格納されているか否かを判断する。即ち、当該エラーの種類(同一の種類)のエラーが、いずれかのディスクD (当該エラーの発生したディスクD を含む、以下同じ)において、既に発生しているか否かを調べる。
図2(A)はエラー表24の構成を示す。エラー表24は、複数のディスクにおいて、同一のエラーが発生しているか否かを判断するためのものである。このため、エラー表24は、発生し得るエラーの種類毎に、複数のディスクD について、エラーの発生を示す情報を格納する。従って、エラー表24は、当該ディスクアレイ装置において起こり得るエラーの種類n毎に設けられる。エラーの種類は約30種類ある。従って、例えばエラーの種類が30であれば、n=30 である。
エラーの種類としては、例えば以下のようなものがある。即ち、ディスクに発生した何らかのエラーである「SAS エラータイムアウト」、フレーム転送中に発生した何らかのエラーである「Request Completed With Error」、データオーバーランが発生した場合のエラーである「Data Overrun」、タイムアウトが発生した場合のエラーである「Command Timeout 」、データアンダーランが発生した場合のエラーである「Data Underrun 」、指定されたポートが使用出来ない場合のエラーである「Port Unavailable」等である。
エラー表24は、各々、全てのディスクについて、各々のエラーの発生を示す情報(エラー情報)を格納可能なビットマップからなる。即ち、ディスクアレイ装置が10個のエンクロージャを備えるので、エラー表24は、各々、10個のエントリを備える。1個のエントリが1個のディスクエンクロージャ3に対応する。1個のディスクのエラー情報が1ビットで管理される。即ち、あるディスクD にエラーが発生した場合、当該ディスクD に対応するビットが「0」から「1」とされる。
1個のエントリのビットマップは、16桁の2進数(b)又は4桁の16進数(h)で表される。1個のエントリのビットマップにおいて、先頭のビットから順に、スロットSlot#0等に対応する。スロットSlot#0は1個のディスクD#X0に対応する。ここで、「X 」は当該ディスクエンクロージャ3のIDである。先頭から12ビットが各々のディスクD に対応する。残りの4ビットは予備のビットである(使用されない)。これにより、エラー表24は、起こり得るエラーの種類毎に、全てのディスクD について当該エラーの発生の有無を示すことができる。
また、制御部22は、エラー表24を所定の時間間隔で周期的に初期化する。即ち、全てのビットを「0」とする。所定の時間間隔は、例えば5秒とされ、経験的に予め定められる。従って、エラー表24は、発生し得るエラーの種類毎に、当該エラーが最初に発生していずれかのビットが「1」とされてから5秒を経過すると、初期化される。
これにより、制御部22は、当該初期化の後に同一の種類のエラーが発生したとしても、通常時の加点処理(後述する)を行う。従って、統計加点表25において、縮退されなかったディスクD (及び経路)の点数はそのまま残り加点が続行されるので、ディスクD に異常がある場合には、正しく当該ディスクD を縮退させることができる。
なお、この初期化処理において、制御部22が、統計加点表25において、縮退された経路及びディスクの点数を「0」とするようにしても良い。
当該エラー表24に当該エラーの発生を示す情報が格納されていない場合、制御部22は、同一種類のエラーは未だ発生していないと判断し、通常時の加点処理を行う。即ち、制御部22は、統計加点表25において、当該エラーが発生したディスクD (以下、エラーディスクD という)に第1の点数を加算すると共に、当該エラーディスクD への経路に、第1の点数より小さい第2の点数を加算する。更に、制御部22は、当該エラーの種類についてのエラー表24に、当該エラーディスクD についてのエラーの発生を示す情報を格納する。即ち、当該ディスクD に対応するビットを「1」とする(以下同じ)。
当該エラー表24に当該エラーの発生を示す情報が格納されている場合、制御部22は、同一種類のエラーは既に発生していると判断し、異常時の加点処理を行う。即ち、制御部22は、統計加点表25において、当該エラーディスクD に第1の点数を加算すると共に、当該エラーディスクD への経路(加算すべき経路)に、第1の点数より大きい第3の点数を加算する。制御部22は、当該加算に先立って、加算すべき経路を抽出する。更に、制御部22は、当該エラーについてのエラー表24に、当該エラーディスクD についてのエラーの発生を示す情報を格納する。
図2(B)は統計加点表25の構成を示す。統計加点表25は、複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する。統計加点表25は、経路部251とディスク部252とを備える。なお、図3以降においては、両者を一体として示している。
経路部251は、当該ディスクアレイ装置における全ての経路について、当該経路毎に、当該経路において発生した(と推定される)エラーに応じた点数(統計加点)を格納する。例えば、経路P1について、点数「10」を格納する。ディスク部252は、当該ディスクアレイ装置が備える全てのディスクD について、当該ディスクD 毎に、当該ディスクD において発生した(と推定される)エラーに応じた点数(統計加点)を格納する。例えば、ディスクD00 について、点数「0」を格納する。
第1及び第2の点数は、通常時の加点であり、閾値(後述する)が定まると、これに応じて経験により予め定められる。この時、第1の点数が第2の点数より十分に大きくされる。これは、種々の要因に依るが、SAS エラータイムアウトが本来はディスク異常を示すエラーであるので第1の点数の方が大きくされ、その比率は、例えば当該ディスクアレイ装置における経路故障とディスク故障の比率に依存して定まる。例えば、閾値が「255」である場合、第1の点数は「80(閾値の約1/3)」とされ、第2の点数は「10(閾値の約1/25)」とされる。
加算すべき経路は、制御部22から当該エラーディスクまでの経路と、制御部22から当該エラーと同一のエラーの発生したいずれかのディスクまでの経路とを比較して、重なる経路である。
第3の点数は、異常時の加点であり、第1の点数が定まると、これに基づいて経験により予め定められる。第3の点数は、第1の点数より十分に大きくされ、例えば、第1の点数「80」の1.5倍の「120」とされる。これは、当該エラーと同一のエラーが既に発生しているので、ディスクに異常が発生している確率よりも経路に異常が発生している確率が高いためである。これにより、経路異常をより早く検出することができる。
以上のように、異常時の加点処理は、経路へ加算する点数を、「10」から「120」へと一時的に大きくして加算する処理である。これにより、複数のディスクD においてエラーが発生している場合には、当該ディスクに至る経路が異常であると判断し、当該経路を縮退させることができ、かつ、特定のディスクD でのみエラーが発生している場合には、ディスクが異常(不良)であると判断し、当該ディスクD を縮退させることができる。
この後、制御部22は、統計加点表25を調べて、統計加点表25において、その点数が予め定められた閾値を超えた経路又はディスクを抽出し、これを当該ディスクアレイ装置から切り離す。このように、制御部22は、エラー表24と統計加点表25とに基づいて、所定の経路又はディスクを当該ディスクアレイ装置から切り離すことができる。
以上により、このディスクアレイ装置においては、ディスクアクセスにおいて、同一の種類のエラーが発生した場合、統計加点表25への加点が、ディスク(の切り離し)より経路(の切り離し)に寄与するようにされる。これにより、ディスクより経路を優先的に切り離すことができる。従って、当該ディスクへ他の経路(ホストコンピュータ1経由又は他の内部経路) でのリトライを行うことができ、複数のディスクD の切り離しによるAID 閉塞を防止して、ホストコンピュータ1の入出力命令を続行することができる。
以下、図1のディスクアレイ装置において、ディスク異常に見える経路異常を正しく縮退させる処理を、図3〜図5に従って説明する。なお、この例では、制御部RoC#0 が処理を行うが、制御部RoC#1 についても同様である。また、この例では、経路P1の異常が検出されるが、他の経路P2等についても同様である。
今、制御部RoC#0 とスイッチ部BE Exp#0との間(経路P1)が異常であるとする。この異常に起因して、制御部RoC#0 からは、複数のディスクD において、同一のエラー(SAS エラータイムアウト)が発生したように見える(認識される)。説明の簡単化のために、例えば、制御部RoC#0 が、ID= 19のディスクD19(DE#1/Slot#9)、ID= 05のディスクD05(DE#0/Slot#5)、ID= 20のディスクD20(DE#2/Slot#0)の3個のディスクに、この順に、アクセスするとする。この場合、制御部RoC#0 からは、当該3個のディスクにおいて、この順に、エラーが発生したように見える。
図3(A)に示すように、ディスクアレイ装置の初期状態においては、SAS エラータイムアウトについてのエラー表24における全てのビットは「0」とされ、統計加点表25における全ての経路及びディスクの点数も「0」とされる。統計加点表25において、経路及びディスクの点数が「255」を越えると、当該経路又はディスクは切り離される(縮退される)。即ち、「255」が経路及びディスクの切り離しの閾値である。閾値はディスクの切り離し(又は縮退)処理における閾値である。
なお、図3〜図5において、エラー表24については、SAS エラータイムアウトについてのエラー表24のみを示す。
最初に、制御部RoC#0 からディスクD19 へのアクセスにおいて、制御部RoC#0 が、SAS エラータイムアウトを検出する。実際には、経路P1が異常であり、ディスクD19は異常ではない。しかし、制御部RoC#0 は、ディスクD19 においてSAS エラータイムアウトが発生したように認識する。この時点では、制御部RoC#0 は、経路P1が異常であることを検出できない。
SAS エラータイムアウトの検出に応じて、制御部RoC#0 は、図3(A)のSAS エラータイムアウトについてのエラー表24(以下、単にエラー表24と言う)をチェックし、当該ディスクD19 以外のディスクにおいて当該エラーと同一のエラーが発生しているか否かを調べる。これにより、この時点では、全てのビットが「0」であるので、制御部RoC#0 は、いずれかのディスクにおいて当該エラーと同一のエラーは発生していないと判断する。
そこで、制御部RoC#0 は、エラー表24について所定の処理を行い、統計加点表25について通常時(異常を検出しない場合)の処理を行なう。即ち、エラー表24において、当該ディスクD19 のビットが「1」とされる。また、統計加点表25において、当該ディスクD19 に第1の点数「80」が加算される。また、制御部RoC#0 から当該ディスクD19 までの経路において加算すべき経路が求められ、統計加点表25において、これらに第2の点数「10」が加算される。
この場合における加算すべき経路は、当該エラーと同一のエラーは発生していないので、制御部RoC#0 から当該ディスクD19 までの経路「P1」及び経路「P4」である。
これにより、図3(B)に示すように、更新されたエラー表24及び統計加点表25が得られる。なお、これらにおいて、加算された部分に下線を付して示す(以下、図4〜図5において同じ)。
この後、制御部RoC#0 が、更新された統計加点表25をチェックして、切り離すべき経路又はディスクが存在するか否かを調べる。即ち、統計加点表25において、「255」以上の点数を持つ経路又はディスクが存在するか否かが調べられる。この場合、切り離すべき経路又はディスクが存在しないので、制御部RoC#0 は、これ以後のディスクへのアクセスを通常通りに実行する。
次に、制御部RoC#0 からディスクD05 へのアクセスにおいて、制御部RoC#0 が、SAS エラータイムアウトを検出する。これに応じて、制御部RoC#0 は、エラー表24(図3(B))をチェックし、当該ディスクD05 以外のディスクにおいて当該エラーと同一のエラーが発生しているか否かを調べる。これにより、制御部RoC#0 は、この時点で、他のディスクD19 のビットが「1」であるので、当該ディスクD19 において当該エラーと同一のエラーが発生していると判断する。
そこで、制御部RoC#0 は、エラー表24について所定の処理を行い、統計加点表25について異常時(異常を検出しない場合)の処理を行なう。即ち、エラー表24において、当該ディスクD05 のビットが「1」とされる。また、統計加点表25において、制御部RoC#0 から当該ディスクD05 までの経路において加算すべき経路が求められ、これらに第3の点数が加算され、当該ディスクD05 に第1の点数(「80」)が加算される。
ここで、加算すべき経路は、ディスクD05 までの経路と他のディスクD19 までの経路とを比較して重なる経路であるので、経路「P1」である。
これにより、図4(A)に示すように、更新されたエラー表24及び統計加点表25が得られる。この後、制御部RoC#0 が、更新された統計加点表25をチェックして、切り離すべき経路又はディスクが存在しないと判断して、これ以後のディスクへのアクセスを通常通りに実行する。
次に、制御部RoC#0 からディスクD20 へのアクセスにおいて、制御部RoC#0 が、SAS エラータイムアウトを検出する。これに応じて、制御部RoC#0 は、エラー表24(図4(A))をチェックし、当該ディスクD05 において当該エラーと同一のエラーが発生していると判断する。なお、制御部RoC#0 は、エラー表24の先頭(ディスクD00 )から順にチェックするので、ディスクD19 より先にディスクD05 のビット「1」を検出し、この検出の時点でエラー表24のチェックを終了する。
制御部RoC#0 は、エラー表24について所定の処理を行い、統計加点表25について異常時の処理を行なう。即ち、エラー表24において、当該ディスクD20 のビットが「1」とされる。また、統計加点表25において、制御部RoC#0 から当該ディスクD05 までの経路において加算すべき経路「P1」が求められ、これに第3の点数「120」が加算され、当該ディスクD20 に第1の点数「80」が加算される。
これにより、図4(B)に示すように、更新されたエラー表24及び統計加点表25が得られる。この後、制御部RoC#0 が、更新された統計加点表25をチェックして、切り離すべき経路又はディスクが存在しないと判断して、これ以後のディスクへのアクセスを通常通りに実行する。
次に、制御部RoC#0 からディスクD19 へのアクセスにおいて、制御部RoC#0 が、SAS エラータイムアウトを検出する。これに応じて、制御部RoC#0 は、エラー表24(図4(B))をチェックし、当該ディスクD05 において当該エラーと同一のエラーが発生していると判断する。
制御部RoC#0 は、エラー表24について所定の処理を行い、統計加点表25について異常時の処理を行なう。即ち、エラー表24において、当該ディスクD19 のビットが「1」とされる。なお、実際には、当該ビットの「1」を新たな値「1」で上書きするので、変更されない。また、統計加点表25において、制御部RoC#0 から当該ディスクD19 までの経路において加算すべき経路「P1」が求められ、これに第3の点数「120」が加算され、当該ディスクD19 に第1の点数「80」が加算される。
これにより、図5に示すように、更新されたエラー表24及び統計加点表25が得られる。この後、制御部RoC#0 が、更新された統計加点表25をチェックして、切り離すべき経路又はディスクが存在するか否かを調べる。この場合、統計加点表25において、制御部RoC#0 とスイッチ部BE Exp#0との間の経路P1の点数「370」が閾値「255」を越えていることが検出される。そこで、制御部RoC#0 は、本来の故障箇所(正しくは被疑箇所)は経路「P1」と判断する。
制御部RoC#0 は、当該経路P1及びこれに接続されたスイッチ部BE Exp#0を、周知の手段により、当該ディスクアレイ装置から論理的に切り離す(縮退させる)。これにより、制御部RoC#0 は、本来の故障箇所を正常に切り離すことができたものと判断する。
以上の図3〜図5に示す処理と図8〜図10に示す処理との比較から、以下のことがわかる。
即ち、図3〜図5に示す処理によれば、本来の故障箇所である制御部RoC#0 とスイッチ部BE Exp#0との間の経路P1を正しく検出することができるのに対し、図8〜図10に示す処理によれば多数回のディスクへのアクセスを経ても、なお、経路P1を正しく検出することができないことに加えて、本来正常なディスクを縮退させてしまうという不都合を生じる。従って、図3〜図5に示す処理の方が正しく本来の故障箇所を検出することができ、かつ、ディスクの不要な縮退を生じることを防止することができる。
また、本来の故障箇所である経路P1を検出するまでに、図3〜図5に示す処理によればディスクへのアクセスが4回で済む。これに対し、図8〜図10に示す処理によれば10回のアクセスを経ても、当該経路P1を検出できない。従って、図3〜図5に示す処理の方がより早く本来の故障箇所を検出することができる。
以上、ディスクアレイ装置を、その実施の形態に基づいて説明したが、このディスクアレイ装置は、その主旨の範囲内で種々変形することができる。
例えば、図1の例においては経路への点数の加算を「80」から一時的に「120」に大きくしたが、これに代えて(又は、これに加えて)、経路の点数の閾値を「255」から一時的により小さい点数、例えば「200」にするようにしても良い。即ち、制御部22が、閾値を、経路について、ディスクについての閾値より小さい値とし、経路/ディスク統計加点表25においてその点数が小さい値の閾値を超えた経路を、当該ディスクアレイ装置から切り離す。
具体的には、制御部22(例えば制御部RoC#0 )は、エラー表24をチェックして、当該エラーと同一のエラーが発生していると判断した場合に、当該エラーについての閾値を「255」から小さい値「200」とする。この場合、ディスクの点数の閾値は「255」のままとする。これにより、ディスクの異常検出は通常通り行うことができると共に、より早く、例えば統計加点表25が図4(B)のように更新された(点数が「250」となった)時点で、当該経路P1及びこれに接続されたスイッチ部BE Exp#0を、縮退させることができる。
また、図1の例においては経路及びディスクの点数が閾値を超えた場合に当該経路及びディスクを切り離すが、更に、ディスクの切り離し処理に先立って、そのディスクを切り離すか否かを判断する最終判断処理を実行するようにしても良い。即ち、制御部22が、ディスクを当該ディスクアレイ装置から切り離す場合、切り離すべきとされたディスクに対して予め定められた命令を発行して、この命令に対する応答に基づいて、ディスクを当該ディスクアレイ装置から切り離すか否かを決定する。
具体的には、制御部20(例えば制御部RoC#0 )が、あるディスクの点数が閾値を超えて当該切り離しの前に、当該ディスクが接続されているスイッチ部BE Expに対して複数のI/O(Test Unit Ready)命令を発行する。I/O(Test Unit Ready)命令は、各々のディスクへの経路が二重化されていることを利用して、2個発行される。例えば、ディスクD19 の点数が閾値を越えた場合、制御部RoC#0 が、I/O(Test Unit Ready)命令を、経路P1及び経路P4(経路A)を介してスイッチ部BE Exp(EXP#10) に対して発行し、かつ、経路P1、経路P3及び経路P5(経路B)を介してスイッチ部BE Exp(EXP#11) に対して発行する。制御部RoC#0 は、2個のI/O(Test Unit Ready)命令に対する応答に基づいて、図6に示すように、ディスクの切り離しを行うか否かを判断する。
パターン1の場合、経路A及び経路Bを介して2個の命令が共に正常に返信されたのであるから、ディスク、経路A及び経路Bには異常が無い。従って、制御部RoC#0 は、当該ディスクを切り離す。パターン2の場合、経路Aについては正常に返信されたのであるから、ディスク、経路Aには異常が無い。従って、制御部RoC#0 は、当該ディスクを切り離すことなく、経路Aを構成せず経路Bを構成する経路P3及びP5に点数「120」を加算する。パターン3の場合、パターン2とは逆であるので、制御部RoC#0 は、当該ディスクを切り離すことなく、経路Bを構成せず経路Aを構成する経路P1及びP4に点数「120」を加算する。パターン4の場合、2個の命令の返信が異常であるから、ディスクではなく、経路A及び経路Bに共通の経路P1が異常である確率が高い。従って、制御部RoC#0 は、当該ディスクを切り離すことなく、経路P1に点数「120」を加算する。
これにより、ディスクの異常検出は通常通り行うことができると共に、所定の命令を発行し応答を待つ必要はあるが、より早く、かつ、正確に、当該経路P1及びこれに接続されたスイッチ部BE Exp#0を、縮退させることができる。
以上説明したように、このディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置によれば、同一種類のエラーが既に発生している場合、異常が発生していると考えられる経路へ加算される点数を一時的に大きくすることにより、正常なディスクを切り離すことなく、本来の異常個所である異常経路を、ディスクアレイ装置から切り離すことができ、他の正常なディスクが切り離されることを防止することができる。これにより、エラーが発生した(ように見えた)ディスクへ他の経路からアクセスして(リトライして)、入出力処理を続行させることができる。この結果、ディスクへのアクセスを繰り返すうちに複数の正常なディスクが縮退されてRAID閉塞を引き起こし、ホストコンピュータの入出力処理の実行が停止してジョブ異常となることを防止することができる。
本発明のディスクアレイ装置の構成の一例を示す図である。 エラー表及び統計加点表の説明図である。 図1のディスクアレイ装置の経路異常検出の説明図である。 図1のディスクアレイ装置の経路異常検出の説明図である。 図1のディスクアレイ装置の経路異常検出の説明図である。 図1のディスクアレイ装置の経路異常検出の説明図である。 本発明者の検討したディスクアレイ装置の構成図である。 図7のディスクアレイ装置の経路異常検出の説明図である。 図7のディスクアレイ装置の経路異常検出の説明図である。 図7のディスクアレイ装置の経路異常検出の説明図である。
符号の説明
1 ホストコンピュータ(HOST)
2 制御装置(CE)
3 ディスクエンクロージャ(DE)
11 ホストバスアダプタ(HBA )
20 コントローラモジュール(CM)
21 チャネルアダプタ(AC)
22 制御部(RoC )
23 スイッチ部(BE Exp)
24 エラー表
25 経路/ディスク統計加点表
30 スイッチ部(Exp )

Claims (5)

  1. 複数のディスクと、
    発生し得るエラーの種類毎に、前記複数のディスクについて、エラーの発生を示す情報を格納するエラー表と、
    前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する統計加点表と、
    前記エラー表を予め定められた時間間隔で周期的に初期化すると共に、エラーが発生した場合、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す制御部とを備える
    ことを特徴とするディスクアレイ装置。
  2. 前記制御部が、前記閾値を、前記経路について、前記ディスクについての前記閾値より小さい値とし、前記統計加点表においてその点数が前記小さい値の閾値を超えた経路を、当該ディスクアレイ装置から切り離す
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  3. 前記ディスクへの経路の各々が、二重化された経路であり、
    前記制御部が、前記ディスクを当該ディスクアレイ装置から切り離す場合、前記二重化された経路の各々を介して、前記切り離すべきとされたディスクに対して予め定められた同一の命令を発行して、前記二重化された経路を介しての前記切り離すべきとされたディスクからの前記命令に対する応答に基づいて、前記切り離すべきとされたディスクを当該ディスクアレイ装置から切り離すか否かを決定する
    ことを特徴とする請求項1に記載のディスクアレイ装置。
  4. 複数のディスクと、発生し得るエラーの種類毎に、前記複数のディスクについて、エラーの発生を示す情報を格納するエラー表と、前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する統計加点表と、前記エラー表と統計加点表とに基づいて所定の経路又はディスクを当該ディスクアレイ装置から切り離す制御部とを備えるディスクアレイ装置の制御方法であって、
    前記制御部が、
    前記エラー表を予め定められた時間間隔で周期的に初期化し、
    エラーが発生した場合、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、
    前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、
    前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、
    前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す
    ことを特徴とするディスクアレイ制御方法。
  5. 発生し得るエラーの種類毎に、複数のディスクについて、エラーの発生を示す情報を格納するエラー表と、
    前記複数のディスク及びこれらへの読出し及び書込みの経路について、発生したエラーに応じた点数を格納する統計加点表と、
    前記エラー表を予め定められた時間間隔で周期的に初期化すると共に、エラーが発生した場合、当該エラーの種類についての前記エラー表に当該エラーの発生を示す情報が格納されているか否かを判断し、前記情報が格納されていない場合、前記統計加点表において当該エラーが発生したディスクに第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より小さい第2の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記情報が格納されている場合、前記統計加点表において当該エラーが発生したディスクに前記第1の点数を加算すると共に当該エラーが発生したディスクへの経路に前記第1の点数より大きい第3の点数を加算し、かつ、当該エラーの種類についての前記エラー表に当該エラーが発生したディスクについてのエラーの発生を示す情報を格納し、前記統計加点表においてその点数が予め定められた閾値を超えた経路又はディスクを、当該ディスクアレイ装置から切り離す制御部とを備える
    ことを特徴とするディスクアレイ制御装置。
JP2008045451A 2008-02-27 2008-02-27 ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置 Active JP4542163B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008045451A JP4542163B2 (ja) 2008-02-27 2008-02-27 ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置
US12/289,214 US7900083B2 (en) 2008-02-27 2008-10-22 Disk array apparatus, disk array control method and disk array controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008045451A JP4542163B2 (ja) 2008-02-27 2008-02-27 ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置

Publications (2)

Publication Number Publication Date
JP2009205316A JP2009205316A (ja) 2009-09-10
JP4542163B2 true JP4542163B2 (ja) 2010-09-08

Family

ID=40999527

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008045451A Active JP4542163B2 (ja) 2008-02-27 2008-02-27 ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置

Country Status (2)

Country Link
US (1) US7900083B2 (ja)
JP (1) JP4542163B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101615145B (zh) * 2009-07-24 2011-12-07 中兴通讯股份有限公司 一种提高存储器数据缓存可靠性的方法和装置
JP5573118B2 (ja) * 2009-11-18 2014-08-20 日本電気株式会社 ディスクアレイ装置の故障診断システム、故障診断方法、故障診断プログラムおよびディスク装置
JP5721344B2 (ja) * 2010-05-07 2015-05-20 キヤノン株式会社 システム、システムの制御方法、及び、プログラム
JP5545108B2 (ja) 2010-08-04 2014-07-09 富士通株式会社 ストレージシステム、制御装置および制御方法
US8533539B2 (en) * 2010-09-17 2013-09-10 Symantec Corporation Fault handling systems and methods
JP5760585B2 (ja) 2011-03-29 2015-08-12 富士通株式会社 ストレージシステムおよび異常発生箇所判定方法
JP5983420B2 (ja) * 2013-01-18 2016-08-31 富士通株式会社 故障通知装置、故障通知方法、及び故障通知プログラム
US10055272B2 (en) 2013-10-24 2018-08-21 Hitachi, Ltd. Storage system and method for controlling same
JP6252285B2 (ja) * 2014-03-24 2017-12-27 富士通株式会社 ストレージ制御装置、制御方法、及びプログラム
WO2017081748A1 (ja) * 2015-11-10 2017-05-18 株式会社日立製作所 ストレージシステム、及び、ストレージ管理方法
CN110083470B (zh) * 2018-01-26 2023-07-21 浙江宇视科技有限公司 磁盘分析方法、装置及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132413A (ja) * 1998-10-22 2000-05-12 Nec Corp エラーリトライ方法、エラーリトライシステム及びその記録媒体
JP2000148655A (ja) * 1998-11-13 2000-05-30 Hitachi Ltd 情報処理システムの制御方法
JP2004252692A (ja) * 2003-02-20 2004-09-09 Nec Corp ディスクアレイ装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2855019B2 (ja) * 1992-02-10 1999-02-10 富士通株式会社 外部記憶装置のデータ保証方法及び外部記憶装置
JPH0651914A (ja) 1992-04-20 1994-02-25 Nec Corp 磁気ディスクサブシステム
JP3078972B2 (ja) * 1993-11-05 2000-08-21 富士通株式会社 ディスクアレイ装置
US5758057A (en) * 1995-06-21 1998-05-26 Mitsubishi Denki Kabushiki Kaisha Multi-media storage system
JP3063666B2 (ja) * 1997-03-31 2000-07-12 日本電気株式会社 アレイディスク制御装置
JP3184171B2 (ja) * 1998-02-26 2001-07-09 日本電気株式会社 ディスクアレイ装置、そのエラー制御方法、ならびにその制御プログラムを記録した記録媒体
JPH11296311A (ja) * 1998-04-08 1999-10-29 Hitachi Ltd 記憶装置の耐故障制御方式
JP2002007077A (ja) * 2000-06-21 2002-01-11 Nec Corp ディスクアレイ装置のループ診断システム及びその方法
JP2002108573A (ja) * 2000-09-28 2002-04-12 Nec Corp ディスクアレイ装置、そのエラー制御方法、ならびにその制御プログラムを記録した記録媒体
US6886108B2 (en) * 2001-04-30 2005-04-26 Sun Microsystems, Inc. Threshold adjustment following forced failure of storage device
US6854071B2 (en) * 2001-05-14 2005-02-08 International Business Machines Corporation Method and apparatus for providing write recovery of faulty data in a non-redundant raid system
JP3536829B2 (ja) * 2001-06-14 2004-06-14 日本電気株式会社 Fc−alシステムのリンク診断方法及び装置
JP3620527B2 (ja) * 2002-09-03 2005-02-16 日本電気株式会社 ループ状インタフェースの障害解析方法及び障害解析機能を有するシステム
US6982842B2 (en) * 2002-09-16 2006-01-03 Seagate Technology Llc Predictive disc drive failure methodology
JP4426262B2 (ja) * 2003-11-26 2010-03-03 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の障害回避方法
JP2006079418A (ja) * 2004-09-10 2006-03-23 Fujitsu Ltd 記憶制御装置、制御方法及びプログラム
JP4303187B2 (ja) * 2004-11-10 2009-07-29 富士通株式会社 プログラム、記憶制御方法及び記憶装置
US7389379B1 (en) * 2005-04-25 2008-06-17 Network Appliance, Inc. Selective disk offlining
JP4799273B2 (ja) * 2006-05-25 2011-10-26 富士通株式会社 ストレージシステム及びループ異常時の自動復旧方法
US7779306B1 (en) * 2007-03-23 2010-08-17 Emc Corporation Method for automatically diagnosing hardware faults in a data storage system
JP4747203B2 (ja) * 2009-01-30 2011-08-17 富士通株式会社 ディスクアレイ装置、ディスクアレイ装置制御プログラム及びディスクアレイ装置制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132413A (ja) * 1998-10-22 2000-05-12 Nec Corp エラーリトライ方法、エラーリトライシステム及びその記録媒体
JP2000148655A (ja) * 1998-11-13 2000-05-30 Hitachi Ltd 情報処理システムの制御方法
JP2004252692A (ja) * 2003-02-20 2004-09-09 Nec Corp ディスクアレイ装置

Also Published As

Publication number Publication date
JP2009205316A (ja) 2009-09-10
US20090217086A1 (en) 2009-08-27
US7900083B2 (en) 2011-03-01

Similar Documents

Publication Publication Date Title
JP4542163B2 (ja) ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置
US8839030B2 (en) Methods and structure for resuming background tasks in a clustered storage environment
JP5511960B2 (ja) 情報処理装置、及びデータの転送方法
US20070113006A1 (en) Apparatus and method to configure one or more storage arrays
US20070109883A1 (en) Apparatus and method to reconfigure a storage array
US8677181B2 (en) Storage apparatus and method of detecting power failure in storage apparatus
US20050149650A1 (en) Data storage systems for assigning control of serial ATA storage devices
US20110314325A1 (en) Storage apparatus and method of detecting power failure in storage apparatus
US9529674B2 (en) Storage device management of unrecoverable logical block addresses for RAID data regeneration
JP2002007077A (ja) ディスクアレイ装置のループ診断システム及びその方法
US8886993B2 (en) Storage device replacement method, and storage sub-system adopting storage device replacement method
US7653831B2 (en) Storage system and data guarantee method
US10346073B2 (en) Storage control apparatus for selecting member disks to construct new raid group
US8065556B2 (en) Apparatus and method to manage redundant non-volatile storage backup in a multi-cluster data storage system
US7506201B2 (en) System and method of repair management for RAID arrays
US9535791B2 (en) Storage control device, non-transitory computer-readable recording medium having stored therein program, and control method
US9116859B2 (en) Disk array system having a plurality of chassis and path connection method
JP5505329B2 (ja) ディスクアレイ装置及びその制御方法
US10409663B2 (en) Storage system and control apparatus
JP5273185B2 (ja) 記録媒体制御システム、記録媒体制御方法、記録媒体制御プログラム
JP2000276308A (ja) ディスクサブシステム及びディスクサブシステムにおけるデータ復元方法
JP2868003B1 (ja) 磁気ディスク装置
US9189350B2 (en) Disk array control apparatus, disk array apparatus, and disk array control method
JPH11149351A (ja) 情報転送制御システム及びディスクアレイ装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100622

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100624

R150 Certificate of patent or registration of utility model

Ref document number: 4542163

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130702

Year of fee payment: 3