JP2005031928A - 記憶システム及び記憶システムの障害特定方法 - Google Patents

記憶システム及び記憶システムの障害特定方法 Download PDF

Info

Publication number
JP2005031928A
JP2005031928A JP2003195450A JP2003195450A JP2005031928A JP 2005031928 A JP2005031928 A JP 2005031928A JP 2003195450 A JP2003195450 A JP 2003195450A JP 2003195450 A JP2003195450 A JP 2003195450A JP 2005031928 A JP2005031928 A JP 2005031928A
Authority
JP
Japan
Prior art keywords
controller
failure
storage system
loop
storage medium
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
JP2003195450A
Other languages
English (en)
Other versions
JP2005031928A5 (ja
Inventor
Koji Iwamitsu
幸治 岩満
Kenji Onabe
賢二 大鍋
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003195450A priority Critical patent/JP2005031928A/ja
Priority to US10/658,530 priority patent/US7047450B2/en
Publication of JP2005031928A publication Critical patent/JP2005031928A/ja
Priority to US11/130,188 priority patent/US7437615B2/en
Publication of JP2005031928A5 publication Critical patent/JP2005031928A5/ja
Pending legal-status Critical Current

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • G06F11/201Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media between storage system components
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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/079Root cause analysis, i.e. error or fault diagnosis
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality

Abstract

【課題】記憶システムにおいて、通常処理を停止させることなく、障害部位を特定し、回復作業を行うことが可能な記憶システムを提供することにある
【解決手段】少なくとも一つの記憶媒体と、記憶媒体を制御する少なくとも一つのコントローラと、記憶媒体及びコントローラをループ状に接続し、コントローラと記憶媒体との通信を相互に行うループ状通信手段とを含み、通常のリード・ライト処理を行いながら、障害部位を特定することができることを特徴とする。
【選択図】 図3

Description

【0001】
【発明の属する技術分野】
本発明は、記憶システムおよび情報処理技術に関し、特に、複数の構成要素をファイバチャネルループ等のループ状通信手段にて接続した構成の記憶システムおよび情報処理システム等に適用して有効な技術に関する。
【0002】
【従来の技術】
近年の情報処理技術の発展によって、情報処理システムおよび記憶システムの役割が急速に大きくなってきている。情報処理システムおよび記憶システムに対する高性能化、高信頼性化や大容量化の要求は、高まる一方である。また、ネットワーク技術においても高速化の要求は、高まる一方である。
【0003】
このような超高速ギガビット・ネットワーク技術の一つとして、ファイバチャネル(FC)という技術が知られている。FCを使用することによって複数のハードディスクドライブを記憶システムのコントローラとをループ状に接続し、一つの記憶記憶システムを構築することが可能である。ファイバチャネル(FC)のループを用いた接続方式には、FC−AL(Fibre Channel−Arbitrated Loop)がある。記憶システムのコントローラとハードディスクドライブをループ状に接続する。
【0004】
FCループの規格上、FCループの一ヵ所でも切断や障害等が発生すると、コントローラとハードディスクドライブとの通信ができなくなるため、障害が発生したFCループ全体が使用不可能となる。
【0005】
そこで、ハードディスクドライブの交換や障害の場合等に対応するため、FCループの一部やハードディスクドライブをバイパス(切り離し)するポートバイパス回路(PBC: Port Bypass Circuit)が設けられている。
【0006】
コントローラは、PBCを切替えてループ全体が通信不可能とならないように、ループを制御する必要がある。
【0007】
【特許文献1】
特開2001−222385号公報
【0008】
【発明が解決しようとする課題】
情報処理システムの中でも特に記憶システムは、無停止稼動を要求されるものであるため、保守作業に伴って記憶システムの処理を停止させることは、無停止稼動という要求に反することになる。
【0009】
従って、本発明の目的は、記憶システムにおいて、通常処理を停止させることなく、障害部位を特定し、回復作業を行うことが可能な記憶システムを提供することにある。
【0010】
また、本発明の他の目的は、記憶システムにおいて、障害部位の特定の精度を向上させ、回復作業を迅速、簡便かつ的確に行うことが可能な記憶システムを提供することにある。
【0011】
また、本発明の他の目的は、記憶システムにおいて、信号の劣化を検出し、障害が発生した場合、信号の劣化が検出された部位から障害の特定処理を行うことによって、迅速、簡便、かつ的確に障害部位の特定を行うことが可能な記憶システムを提供することにある。
【0012】
【課題を解決するための手段】
上記目的を達成するために、本発明は、少なくとも一つの記憶媒体と、記憶媒体を制御する少なくとも一つのコントローラと、記憶媒体及びコントローラをループ状に接続し、コントローラと記憶媒体との通信を相互に行うループ状通信手段とを含み、上位装置からのリード・ライト等の処理を行いながら、障害部位を特定することができることを特徴とする。
【0013】
また、本発明は、障害の予測を行うために、ループ状通信手段に少なくとも一つの信号の劣化の検出を行う信号検出手段を有することを特徴とする。
【0014】
本発明によれば、通常処理を行っている状態で、障害部位を特定することができる。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて説明する。
【0016】
(第1の実施の形態)
図1は、本実施の形態の記憶システム150における装置概観図の一例である。ラックフレーム120は、基本筐体100とその他の増設筐体110を格納するものである。基本筐体100の内部には、ハードディスクドライブ130とコントローラ群140が格納されている。さらに、増設筐体110は、記憶システムの記憶容量を増大させる目的で利用されるものであり,複数のハードディスクドライブ130を有する。さらに記憶容量を増大させたい場合には、ラックフレーム及び増設筐体110を設けることも可能である。
【0017】
図2は、記憶システムに150おける内部構成の概念図である。本実施の形態では、記憶システムにおけるループ状通信手段の一例としてFC−AL(Fibre Channel Arbitrated Loop)(以下、FCループという)を用いた場合の例について説明する。
【0018】
記憶システム150は、コントローラ群140とFCループ270〜273と複数のハードディスクドライブ130とで構成される。コントローラ群140は、冗長化のために二つのコントローラ220、221を有している。コントローラ群140は、ハードディスクドライブ130等の情報を格納する管理情報と一時的に情報を格納するキャッシュメモリ230、231及び、上位装置210とコントローラ間の通信を行い、信号の変換を行うFCアダプタ240,241とコントローラ群140とハードディスクドライブ130との信号の変換等を行うFCアダプタに接続されている。ハードディスクドライブ130とFCアダプタ242,243との間には、PBC260〜263とFCループ270〜273に接続されている。コントローラ220、221は、FCループ270〜273を制御する。
【0019】
2つのコントローラ間の通信は、コントローラ間通信線250によって行う。コントローラ220、221は、上位装置210からのコマンドに基づいて、ハードディスクドライブ130の制御を行う。FCアダプタ240、241は、コントローラ220、221と上位装置210とでやりとりされる信号の変換等の処理を行う。FCアダプタ242、243は、コントローラ220、221とハードディスクドライブ130とで通信される信号の変換を行うと共に、PBC260〜263の切替え処理も行う。PBC260〜263は、交替パス281〜283に接続することにより、コントローラ220、221が使用するFCループを切替えることができる。例えば、PBC260は、FCループ270から交替パス280に切替えることによって、FCループ272と接続することができる。本実施の形態では、FCループの切替えを行う手段の一例としてPBCで行っているが、PBCに限らず、スイッチ等の他の手段を用いることもできる。
【0020】
FCループ270〜273は、基本筐体100と増設筐体130内に格納されている。FCループ270〜273と筐体との関係は、後述する。
【0021】
ハードディスクドライブ130は、簡略化のために、図1の複数のハードディスクドライブ130の台数により少なくしてある。複数のハードディスクドライブ130は、FCループ270、271及び、FCループ272、273に対して交互に接続されている。障害が発生していない正常な場合、PBC260〜263は、それぞれ、FCループ270〜273に接続されており、コントローラ220は、FCループ270、271を制御し、また、コントローラ221は、FCループ272、273を制御する。
【0022】
上記の制御方法に適している一例として、たとえば、コントローラ220、221は、上位装置から送られるデータを分散して複数のハードディスクドライブ130に対して格納することにより、スループットの向上を実現するディスクアレイシステムが考えられる。ディスクアレイシステムにおいて、コントローラ220、221は、複数のハードディスクドライブ130に、上位装置との間で授受されるデータおよび、データから生成された冗長データを、論理ユニット285〜287のように分散して格納される。これにより、格納データの信頼性の向上が図れる。例えば、論理ユニット285において、一つのハードディスクドライブ130が故障した場合、正常なハードディスクドライブにあるデータと冗長データから故障したハードディスクにあったデータを復元することができる。さらに、本実施の形態において、2つのコントローラ220、221が同じ論理ユニットを制御すると、データの整合性を2つのコントローラ間で調整する必要があるため、データの処理速度が低下する。そこで、本実施の形態においては、コントローラごとに制御する論理ユニットが決められているものとする。どのコントローラがどの論理ユニットを制御するかについての情報は、キャッシュメモリ230、231に格納されている。
【0023】
FCループ270〜273やハードディスクドライブ130に障害がある時、コントローラ220、221は、PBC260〜263によって、交替パス280〜283に接続させ、障害部位を含まないFCループとは異なる別のFCループ(以下、冗長ループという)を使用することができる。本実施の形態では、一例として、FCループを切り替える単位は、FCループ270、271または、FCループ272,273の2本単位とする。しかし、それぞれのFCループ毎にFCループを切り替えることも可能である。
【0024】
障害が発生した場合、コントローラ221に接続された管理端末の画面に、障害部位が表示される。管理端末により、FCループ270〜273からハードディスクドライブ130の切り離しや、論理ユニットの設定の作業を行うことができる。本実施例において、管理端末280と記憶システム150は、管理端末用信号線281によって接続されている。管理端末用信号線281は、LANケーブル、RS−232Cや光ファイバー等を用いることができる。また、管理端末280の機能を上位装置210に移し、管理端末280を省略することもできる。
【0025】
図3は、図2のFCループの詳細図である。以下、図3と図1、2との対応関係を説明する。上述の通り、FCループは、基本筐体と増設筐体を跨って構成され、さらに筐体内ループ、PBCと筐体間ループによって構成されている。図2のFCループ270は、筐体内のFCループ350、354、358及び、筐体間のPBC300、310、320、330、340及び、筐体内のPBC370、374、378にによって構成されている。同様にFCループ271は、図3のFCループ351、391、355と359に、FCループ272は、図3のFCループ352、392、356と360に対応する。
【0026】
一方、ハードディスクドライブ390〜395は、筐体内のPBC370〜381を介してFCループ350〜361に接続されている。ハードディスクドライブ390、392、394は、FCループ270とFCループ272に接続されている。ハードディスクドライブ391、393、395は、FCループ271とFCループ273に接続されている。
【0027】
バイパス制御信号線1801は、各PBCとFCアダプタ242に接続されている。同様に、バイパス制御信号線1802は、各PBCとFCアダプタ243に接続されている。コントローラ220、221は、FCアダプタ242、243を経由し、バイパス制御信号線1801、1802に接続されたPBCにより、切り離し(バイパス)を行う。
【0028】
図4は、本実施の形態におけるPBCの構成の一例を示す。図4(a)のPBCのセレクタ410は、各FCループに対するハードディスクドライブ、コントローラ又はFCループの一部分をバイパスする。LED420は、バイパス制御信号線430がON(バイパス状態)のときに点灯して外部にバイパス状態であることを報知する。バイパス制御信号線430は、記憶システム外部の制御端子等からも入力可能である。
【0029】
FCループまたは、ハードディスクドライブに障害が発生した場合、コントローラは、FCアダプタにバイパスの指示することによって、PBCにFCループをバイパスさせ、障害部位を切り離す。その後、コントローラは、障害部位を切り離した縮退運転をすることになるが、通常処理を継続させることができる。
【0030】
また、図4(b)のPBCは、PBC260〜263に使用され、ループの切替えをする。
【0031】
本実施の形態の記憶システムでは、一例として、FCループにおけるファイバチャネルプロトコルのデータリンク層として、SCSI−FCP(SCSI−3Fibre Channel Protocol)を用いる。
【0032】
このSCSI−FCPを用いる場合、記憶システムはSCSI−FCPのイニシエータであるコントローラからターゲットとしてのハードディスクドライブの各々に対して発行されるFCPコマンドのSCSI Send Diagnosticsにて、パラメータ・リストで指定することにより、バイパス制御信号線430のON/OFFの出力指令を、ハードディスクドライブの各々に指示することが可能である。
【0033】
これにより、コントローラ220、221は、PBCのバイパス動作を制御する。また、同様に、現在のPBCにおけるバイパスの有無の状態は、FCPコマンドのSCSI Receive Diagnostic Resultsにて、ハードディスクドライブの各々を介して、コントローラが知ることができる。
【0034】
一方、図4に例示されるように、FCループの途中に設けられたPBCの各々は、FCループの途中の切り離し(バイパス)を行うセレクタ410と、外部からこのセレクタ410の切換え動作の制御のために入力されるバイパス制御信号線430と、バイパス状態のときに点灯し、外部にバイパス状態であることを報知するLED等の表示ランプ420等で構成されている。
【0035】
例えば、ハードディスクドライブ392をバイパスする場合を考える。コントローラ220は、バイパスするようにコマンドを発行する。コマンドを受領したFCアダプタ242は、バイパス制御信号線1801を介して、PBC374のセレクタ410により、ハードディスクドライブ392をFCループ354からバイパスさせる。一方、LED420は、バイパス状態であるので、点灯する。
【0036】
なお、本実施の形態の記憶システムでは、FCループとして、光ファイバや導線等の通信媒体を用いることに限らず、実装ボード上の配線パターンにてFCループを構成することも含まれる。
【0037】
以下、図面を使用して、記憶システムが上位装置からの読み込みや書き込みの通常処理を行いつつ、障害を特定する方法を説明する。
【0038】
図5は、障害特定処理の全体のフローチャートである。FCループ又はハードディスクドライブで障害が発生した場合(ステップ501)、コントローラは、冗長ループに切替える(ステップ502)。冗長ループに切替え終了後、再び、上位装置210からの読込や書き込みの処理を再開する(ステップ503)。書き込み処理の場合、障害が記憶システムに発生していても、上位装置から書き込み処理を記憶システムが受け取り、キャッシュメモリに格納した段階でコントローラは、上位装置に、書き込み完了を通知する。
【0039】
一方、読み込み処理で、記憶システムに障害が発生している場合、記憶システムが上位装置から読み込み処理を受け取った場合、冗長データを使用してデータを復元した後、障害ループから冗長ループに切替え、コントローラは、障害特定処理を実行できる条件を満たすかどうかの判断を行う。所定の条件を満たせば(ステップ504)、コントローラは、障害特定処理の準備として、上位装置からの処理をキャッシュメモリに蓄積した後、冗長ループから障害が発生したFCループに再び切替える(ステップ505)。切替え完了後、コントローラは、障害が発生した筐体を調べるために、順番に筐体を切り離す。この操作を繰り返して障害が発生した障害筐体を調べる(ステップ506)。
【0040】
コントローラは、障害が発生した障害筐体を特定できた段階で、管理端末に通知する。管理端末は、図示しない管理端末の表示画面に図2または図3の構成を表示する。コントローラは、この段階で障害特定処理を一時中断することも出来るし、このまま続けて障害特定処理を行うこともできる。事前に保守員は、障害特定処理を続けるかどうかの可否を設定しておいてもよいし、障害特定処理の続行をするかどうかについて所定の条件を設定して決めてもよい(ステップ507)。
【0041】
コントローラが障害特定を一時中断するのであれば、通常処理を行うために、障害ループから冗長ループに切替える(ステップ515)。冗長ループに切替えた後、上位装置からの処理を行う(ステップ516)。コントローラは、ステップ504と同様に障害特定処理を行う所定の条件を満たせば、再び障害特定処理を行う(ステップ517)。
【0042】
筐体毎の障害特定処理が終了し、筐体内の障害であると特定した場合、コントローラは、筐体内の障害特定処理を行う。同様に、障害特定処理を一時中断していた状態から再び障害特定処理を行う場合も、コントローラは、筐体内の障害特定処理を行う(ステップ509)。筐体内の障害では、ハードディスクドライブの障害又はFCループの障害が考えられる。一方、筐体間ループの障害であれば、障害特定処理を完了し(ステップ524)、通常処理を行う(ステップ525)。
【0043】
筐体内の障害特定処理は、各ハードディスクドライブに設けてあるPBCにより、FCループを切替えることによって、障害特定処理を行う。まず、コントローラは、筐体内のハードディスクに設けてられている全てのPBCにより、FCループを切り離す。その後、コントローラは、ハードディスクドライブに設けてあるPBCを一つだけ接続して、障害特定を行う。繰り返してこの処理を繰り返すと、障害が発生した部位に接続されたPBCを発見することができる。
【0044】
この段階で、ハードディスクドライブかまたは、PBCからハードディスクドライブまでのFCループに障害が発生していることになる。上記2つの部位のうち、一方に障害が発生していることになるため、コントローラは、ハードディスクドライブの障害であるかを確認するために、障害ループから冗長ループに切替える。コントローラは、障害が発生している可能性があるハードディスクドライブを冗長ループから調べることによって、ハードディスクドライブの障害であるかを確認することが出来る(ステップ511、512)。ハードディスクドライブの障害でない場合、PBCからハードディスクドライブまでのFCループに障害があることになる。
【0045】
筐体内の障害がこの段階まで特定できると、コントローラは、管理端末に障害部位を通知する。管理端末は、管理端末の画面に障害部位を表示する。さらに、コントローラは、障害特定処理を完了し、通常処理に戻る(ステップ514、528)。
【0046】
障害特定処理の一時中断は、本実施の形態において、筐体毎の障害特定処理の終了後と筐体内の障害特定処理の終了後に行うことにしたが、これに限定されることはない。例えば、筐体毎の障害特定処理で、一つの筐体に対して障害特定処理を終了した段階で、中断することもできる。あるいは、上位装置からの処理をキャッシュメモリに蓄積することが困難になった場合、障害特定処理を中断し、通常処理を行う。その後、再び障害特定処理を行うことができる。あるいは、コントローラは、上位装置で決められた記憶システムに対する応答時間内に障害特定処理が終了しない場合、コントローラは、障害特定処理を一時中断し上位装置の処理を再開する。その後、再び、コントローラは、障害特定処理を行う。
【0047】
図6から図11までは、図5の全体のフローチャートを詳細に説明したものである。ここで、障害が発生する部位は、FCループ270かFCループ270に接続されたハードディスクドライブであるとする。
【0048】
図6は、上位装置からの処理に対して、記憶システムが行う通常処理から障害が発生するまでの処理を説明したフローチャートである。上位装置から送られる書き込みまたは読み込みのコマンドは、上位装置とコントローラとの間に接続されたFCアダプタ242を介してコントローラ220へ送られる(ステップ604)。コントローラ220は、コマンドを解釈し書き込みのコマンドかまたは、読み込みのコマンド等を解釈する。コントローラは、コマンドが要求するデータ範囲に自コントローラが処理を行うものであるかを確認するため、キャッシュメモリ230に確認する。ここで、コントローラ220がキャッシュメモリ230に確認しているのは、処理を高速化するために、ハードディスクドライブに割り当てられた論理ユニットの処理を行うことができるコントローラが決められているからである。どのコントローラが、どの論理ユニットの処理を行うことができるかについては、予め決めてあり、キャッシュメモリ230、231に対応テーブルが格納されているものとする。
【0049】
書き込み処理で担当する論理ユニットが自コントローラの場合、コントローラ220は、キャッシュメモリ231に書き込み完了をした通知を受けた後、上位装置に書き込みが完了したことを通知する(ステップ606)。キャッシュメモリにある書き込みのデータを2重化のため、キャッシュメモリ231に書き込む。コントローラ220は、コントローラ間通信線250を使用して、書き込みデータをコントローラ221へ送信する。コントローラ221は、データを受領し、キャッシュメモリ231に書き込んだ後、コントローラ220へ書き込み完了を通知する。上位装置に書き込み完了を通知した後、ハードディスクドライブに書き込む処理を行う。ここで、上位装置からのデータをキャッシュメモリに2重に格納したのは、記憶システムの信頼性を向上させるためである。処理を高速に行う場合、コントローラ220は、もう一方のキャッシュメモリに書き込まない方法も考えられる。
【0050】
FCループに障害が起こっていない場合、データをハードディスクドライブ側のFCアダプタを介してハードディスクドライブに書き込み処理を行う。
【0051】
しかし、コントローラがハードディスクドライブに書き込みのコマンドを発行して、所定の時間経過後、何の応答もない場合、再び書き込みのコマンドを再発行する(ステップ619)。コマンドの再発行回数が所定の回数を超過した場合、障害が発生したものと判定する(ステップ622)。コントローラ220は、障害が発生したものと判定したら、障害特定処理に移る。
【0052】
一方、読み込み処理は、以下のように行う。上位装置から読み込み処理を受け、コントローラ220がキャッシュメモリ230から読み込むべきデータがない場合、コントローラ220は、ハードディスクドライブからデータを読み込むように、読み込みのコマンドを発行する。書き込みの場合と同様に、所定の時間経過後、応答がない場合、タイムアウトとなる。コントローラは、再び読み込みのコマンドの再発行をし、コマンドの再発行回数が所定の回数を超過した場合、障害が発生したものと判定する。読み込み処理は、書き込み処理と異なり、上位装置にデータを送らないと読み込み処理が終了しない。コントローラ220は、障害が発生したものと判定した後、上位装置にデータを送るため他の正常なハードディスクドライブからデータを復元できるかを試みる。他の正常なハードディスクかデータを復元できない場合、FCループを冗長ループに切替える。冗長ループを使用しても、コントローラ220がデータを計算または読み込めない場合、上位装置へ読み込み失敗を通知する。その後、コントローラ220は、障害特定処理に移る。
【0053】
図7は、冗長ループを使用している記憶システムが上位装置からの読み込み書込みの処理を行いながら、障害特定処理を開始するまでのフローチャートである。図5のステップ502からステップ504に対応する。コントローラ220は、障害が発生した障害ループから、冗長ループへ切替えるために、もう一方のコントローラ221にコントローラ間通信線250を使用して、冗長ループを使用することができるように指示する。指示を受け取ったコントローラ221は、現在の処理を終了後、次の処理を、一時的にキャッシュメモリ231に蓄積させ、コントローラ220に処理完了を通知する(ステップ704)。通知を受領したコントローラ220は、冗長ループを使用するためにFCアダプタに対してFCループ切替えの指示を出す(ステップ716)。指示を受領したFCアダプタ243は、PBC260、261に交替パス280、281を使用して、FCループ272、FCループ273にFCループを切替えさせる。切替え完了後、FCアダプタ243は、コントローラ220へ切替え完了を通知する(ステップ706)。コントローラ220は、切替え完了を受領後(ステップ707)、コントローラ221に切替え完了を通知する(ステップ708)。コントローラ221は、切替え完了の通知を受けた後(ステップ709)、キャッシュメモリ231に蓄積されていた処理を再開する。その後、コントローラ220も、上位装置からの処理を再開する(ステップ711)。この状態は、冗長ループを使用した縮退運転となる。このため、通信の帯域が2つのFCループを使用していた場合に比べて半減し、性能が低下する。
【0054】
縮退運転の間、コントローラ220は、障害部位を特定するため、所定の条件を満たすかを判定する。本実施の形態においては、コントローラ220が、コントローラ220とコントローラ221の両方の負荷が低く(ステップ712)、キャッシュメモリ230と231の空き容量が十分にあり(ステップ713)、かつ、過去の負荷状況の履歴から今後、負荷が高くなる可能性が低いと判定した場合(ステップ714)、障害特定を開始する。尚、障害特定を開始する条件は、上記の条件に限られない。例えば、上記の条件で、何れか一つのみを満たす場合、障害特定を開始するようにしてもよい。
【0055】
図8は、筐体毎の障害特定処理の開始準備から筐体毎の障害特定処理を行うフローチャートである。図5のステップ505とステップ506に対応する。障害特定処理は、上位装置からの書き込みや読み込み処理の影響を与えないように行われる。そのために、通常処理の途中に段階的に断続的に障害特定処理を行う。コントローラ220は、障害特定処理を行うために、もう一方のコントローラ221に障害特定処理の開始を通知する。コントローラ221は、通知を受領したら、上位装置からの現在の処理を終了させた後、次に行う処理をキャッシュメモリ231に蓄積する。ここで、障害ループコントローラ221の処理を一時中断させるのは、障害特定処理を迅速に行うためである。尚、コントローラ221を稼動させたまま、障害特定処理を行うこともできる。しかし、この場合、コントローラ221は、通常処理を行うことができるが、コントローラ220が障害特定処理を完了させる時間は、コントローラ221を停止させる方法に比べて、増大することになる。
【0056】
コントローラ220は、コントローラ221の通常処理の停止を確認後(ステップ807)、冗長ループから障害ープに切替えるために、FCアダプタ243にコマンドを発行する(ステップ808)。コマンドを受領したFCアダプタ243は、PBC260、261に、冗長ループから障害ループに切替えさせる(ステップ811)。
【0057】
コントローラ220は、冗長ループから障害ループに切替え完了後、どの筐体で障害が発生しているかを確認するために、コントローラから一番遠い筐体を切り離して確認する。尚、本実施の形態では、一番遠い筐体から切り離すが、逆に一番近い筐体から切り離して、障害が発生した筐体を確認することも可能である。
【0058】
コントローラ220は、一番遠い筐体をバイパスするようにFCアダプタ242に指示を出す(ステップ814)。FCアダプタ242は、PBC330によって、筐体をバイパスさせる。筐体のバイパス完了後、コントローラ220は、短縮したFCループが正常であるかを確認するために、短縮したFCループに障害特定コマンドを発行する(ステップ819)。障害特定コマンドの一例として、ファイバチャネルのLIP(Loop Initialization Primitive)を使用することができる。また、障害特定コマンドも通常時のコマンドと同様に、リトライ回数とタイムアウト時間を設定することができる。障害特定コマンドを発行した後、FCループから応答があれば、前回バイパスした筐体または筐体間FCループに障害が発生していることになる。
【0059】
一方、障害特定コマンドを発行しても、短縮したFCループから応答がない場合、FCループをさらに短縮させる必要がある。FCループをさらに短縮させるために、コントローラ220は、FCアダプタ242にFCループを短縮させるようにコマンドを発行する。FCアダプタ242は、PBC320によって、筐体間FCループをバイパスする。この後、コントローラ220は、障害特定コマンドを発行することによって、応答を確認する。コントローラ220は、応答があるまでFCループを短縮させる処理を行う。コントローラ220は、応答を受領後、さらに、障害特定処理を続行するかまたは、ここで、上位装置からの処理がタイムアウトにならないように障害特定処理を一時中断することになる。
【0060】
図9は、筐体内の障害特定処理を行うフローチャートである。図5のステップ509に対応する。障害が発生した部位が筐体間ループか筐体そのものであるかによって処理が異なる(ステップ901)。筐体間ループに障害がある場合、コントローラ220は、さらに障害特定処理を行う必要がない。コントローラ220は、筐体間ループに障害が発生した障害ループが使用可能であるかを判断する(ステップ903)。コントローラ220から障害が発生した部位より遠いFCループに接続されたハードディスクドライブを使用していない場合、コントローラ220は、冗長ループを使用せずに、障害が発生した筐体間ループを切り離すことによって、障害ループを使用することができる。コントローラ220が障害ループを使用することができない場合、コントローラ220は、冗長ループを使用する(ステップ904)。
【0061】
ステップ901に戻って、障害が発生した部位が筐体内である場合、コントローラ220は、筐体内の障害を特定するために、障害が発生した筐体内の全ての接続されたハードディスクドライブをPBCに切り離させる。この状態で、コントローラ220は、障害特定コマンドを発行する(ステップ922)。障害特定コマンドに対する応答がない場合、障害部位は、筐体内のFCループに障害があることになる(ステップ934)。一方、コントローラ220は、全てのハードディスクドライブに接続されるPBCをバイパスさせ、障害がない場合、障害が発生した部位は、ハードディスクドライブになる。
【0062】
コントローラ220は、筐体内のPBCにより、ハードディスクドライブを順番に一つずつ接続させる(ステップ918)。障害部位に接続したPBCがある場合、コントローラ220が発行した障害特定コマンドの応答がなければ、障害部位は、ハードディスクドライブまたは、PBCとハードディスクドライブの間にあるFCループに障害があることになる。
【0063】
図11は、ハードディスクドライブで障害が発生しているものと判明した場合に、コントローラが行う処理についてのフローチャートである。図5の512から514に対応する。ハードディスクドライブに障害があるかどうかを確認するために、コントローラ220は、障害ループから冗長ループに切替える(ステップ1101)。コントローラ220は、冗長ループに切替えた後、障害特定コマンドを発行する(ステップ1106)。冗長ループで障害特定コマンドの応答があれば、PBCとハードディスク間のループに障害が発生していると特定することができる(ステップ1114)。その後、障害部位をバイパスして障害ループを使用する方法と冗長ループを使用して、通常処理を行なうことになる。
【0064】
一方、ステップ1110で、冗長ループで障害特定コマンドの応答がなければ、ハードディスクドライブに障害が発生していることになる。ハードディスクドライブの故障であれば、コントローラ220は、障害が発生したハードディスクドライブの表示ランプ160を点灯させて、障害であることを保守員に知らせる(ステップ1123)。障害が発生したハードディスクドライブの表示ランプ160を点灯させることによって、保守員は、簡便に障害が発生したハードディスクドライブを発見することができる。また、管理端末280の画面に障害が発生したことを表示する(ステップ1120)。
【0065】
障害特定処理が終了すれば、通常処理に戻るための処理を行う。コントローラ220は、障害特定処理を終了させるために、コントローラ221に障害特定処理の完了を通知する(ステップ1132)。完了の通知を受けたコントローラ221は、キャッシュメモリ231に蓄積された処理を再開する(ステップ1134)。コントローラ221の通常処理再開後、コントローラ220も処理を再開する(ステップ1135)。コントローラ220が障害特定処理を段階毎に中断する場合も障害特定処理の終了の処理と同様にコントローラ221に障害特定処理完了を通知する。コントローラ220は、コントローラ220の通常処理の開始を確認後、通常処理に移る。但し、中断処理の場合は、再び障害特定処理を開始する必要がある。コントローラ220は、コントローラ221との互いの負荷と、キャッシュメモリ230とキャッシュメモリ231との容量と将来の負荷状況を監視し、所定の条件で再び障害特定処理を開始する。
【0066】
コントローラ220が障害特定処理を段階的に行うことで、1回あたりに必要とする障害特定処理の時間を大幅に短縮することができ、上位装置からの通常処理の影響を与えることなく障害特定処理を行うことができる。また、管理端末に障害部位の詳細を通知することで、保守員は、迅速かつ正確に障害部位の交換することができる。
【0067】
図10は、障害特定処理を一時中断し、再び障害特定処理を行うまでの処理である。コントローラ220は、障害特定処理をステップ823やステップ825等で中断することができる。または、上位装置からの読み込みや書き込み等の処理が上位装置の制限時間内に上位装置に対して応答できない場合、コントローラ220は、障害特定処理を一時中断することができる。図10は、図5のステップ515からステップ518に対応する。コントローラ220は、障害特定処理の中断箇所をキャッシュメモリに格納する。キャッシュメモリに格納された中断箇所の情報は、再び障害回復処理を行う際、使用する。コントローラ220は、キャッシュメモリに格納終了後、コントローラ220が、障害ループを引き続き使用可能であるなら、コントローラ220は、その障害したFCループを使用する(ステップ1000)。コントローラ220は、コントローラ221に通常処理再開を通知した後(ステップ1001)、コントローラ220とコントローラ221は、通常処理を行う。その後、コントローラ220は、障害特定処理を行う所定の条件を満たせば、障害特定処理を再開する(ステップ1005〜1008)。コントローラ220は、障害特定処理再開するために、コントローラ221に障害特定再開を通知する(ステップ1014)。通知を受けたコントローラ221は、現在の処理を終了後、上位装置からの処理をキャッシュメモリに蓄積する(ステップ1017)。その後、コントローラ220は、キャッシュメモリから障害特定処理の中断した情報を読み出し、障害特定処理を再開する。
【0068】
本実施の形態において、バイパス制御信号線1801、1802を設けて、コントローラがハードディスクドライブやFCループをバイパスしたが、バイパス制御信号線をFCループに含ませることも可能である。
【0069】
(第2の実施の形態)
障害が発生する前にFCループの信号の劣化を監視する回路として信号劣化検出回路1104をFCループ中に設けることができる。図12は、信号劣化検出回路1104の構成図である。信号物理検出部1102は、FCループ中の物理的な信号の振幅を監視する。信号論理検出部1101は、信号の論理的な形式を監視する。ファイバチャネルプロトコルの一例として、信号論理検出部1101は、シーケンスやフレームの異常を検出することができる。信号物理検出部1102または信号論理検出部1101は、信号の劣化が所定の条件より悪化すると、劣化検出制御部1103に通知する。劣化検出制御部1103は、信号の劣化をFCループを使用してコントローラに通知する。または、劣化検出制御部1103は、後述する信号線を使用してもよい。
【0070】
図13は、図12の信号劣化検出回路を筐体毎に記憶システムに組み込んだ場合における記憶システムの一部分の構成図である。信号劣化検出回路1201〜1206は、各筐体に2つずつ設けてある。本実施の形態では、一つの筐体に2つの信号劣化検出回路を設けたが、FCループのそれぞれの出入り口に信号劣化検出回路を設け信号劣化検出回路は、筐体間PBCの回路とともに設けることもできる。本実施の形態では、一例としてFCループのような単方向信号の場合について説明する。
【0071】
図14は、図13における信号劣化検出回路が信号の劣化を検出し、コントローラが障害特定処理を行うまでのフローチャートである。信号劣化検出回路が信号の劣化を検出した場合、コントローラに劣化を通知する(ステップ1301)。コントローラ220は、信号劣化検出回路から送られた信号劣化情報をキャッシュメモリに格納する。FCループの場合、単方向信号であるので、FCループの上流で障害が発生した場合、その障害が発生したFCループより下流のFCループの信号は、正常な信号とならない。よって、信号の劣化が発生した箇所は、正常な信号であるとした信号劣化検出回路と異常であると検出した信号劣化検出回路との間となる(ステップ1304)。ここで、コントローラ220に情報格納は図15のようにキャッシュメモリに格納される情報は、信号劣化検出回路番号と信号劣化検出回路が設けられている場所と信号の状態コントローラ220は、その信号劣化の発生した箇所を管理端末へ通知する(ステップ1305)。通知を受けた管理端末は、管理端末の画面に信号が劣化した箇所を表示し(ステップ1308)、保守員は、画面に表示された箇所を点検することができる。また、保守員は、故障が発生する前に信号を劣化させた部品を交換することができる。
【0072】
仮に、図13において、信号劣化検出回路1203は、正常であるが、信号劣化検出回路1204が信号の劣化を検出した場合、信号を劣化させる箇所は、信号劣化検出回路1204より上流であり、かつ、信号劣化検出回路1203より、下流にあることになる。さらに、信号劣化検出回路1203、1204は、筐体のFCループの出入り口に設けられているので、信号を劣化させた箇所は、筐体内にあることになる。
【0073】
また、信号劣化検出回路1202は、正常であるが、信号劣化検出回路1203が信号の劣化を検出した場合、信号劣化検出回路1203より上流であり、かつ、信号劣化検出回路1202より下流にあることになる。よって、信号を劣化させた箇所は、筐体間のFCループにあることになる。
【0074】
信号を劣化させた箇所は、障害になる可能性が高い。そこで、信号を劣化させたFCループで、障害が発生した場合、信号を劣化させた筐体から障害特定処理を行うことで、障害特定処理に要する時間を短縮することができる。
【0075】
図15は、信号を劣化させた筐体から障害特定処理を行う概略を示したフローチャートである。最初に、コントローラは、信号を劣化させた筐体内部から障害特定処理を行う(ステップ1400)。ここで、障害部位を特定することができれば、終了する。しかし、コントローラが信号を劣化させた筐体内部の障害特定処理を行っても、障害部位を特定できない場合、他の筐体に障害が発生していることになる。この場合、順番に筐体を調べることになる(ステップ1402)。ステップ1402で、信号を劣化させた筐体は、一度、調べているので、障害特定処理を行う必要はない。コントローラが別の筐体で障害を特定できた場合、さらに、障害が発生した筐体内部を調べる(ステップ1403)。コントローラは、障害が発生した筐体内部で障害部位を特定できれば、障害特定処理を終了する。
【0076】
本実施の形態において、信号劣化検出回路が各筐体に設けられているので、障害が発生する前に信号の劣化を検出することができる。FCループに障害が発生した場合、コントローラは、予め、信号を劣化させている筐体を把握しているため、信号を劣化させた筐体から障害特定処理を行うことができ、短時間で障害特定処理を終了させることができる。
【0077】
(第3の実施の形態)
図13の変形例では、筐体毎ではなく、ハードディスクドライブ毎に信号劣化検出回路を設けた記憶システムである。本実施の形態を図示すると、図16になる。図16で、信号劣化検出回路は、ハードディスクドライブから出力される信号の劣化検出を行う。信号劣化検出回路が各ハードディスクドライブからの出力信号をチェックすることにより、筐体毎に信号劣化検出回路を設けた場合と比較して、コントローラは、信号を劣化させた部位について詳細に知ることができる。信号を劣化させた部位の精度は、信号劣化検出回路の間であるので、ハードディスクドライブかまたはFCループで信号を劣化させているかまで推定することができる。
【0078】
信号を劣化させた部位の特定する流れは、図14とほぼ同じである。異なる点は、ステップ1304で信号劣化箇所の推定を筐体毎ではなく、ハードディスク毎で行うことである。
【0079】
さらに、障害が信号の劣化を検出したFCループで発生した場合、処理の流れは、図17のようになる。障害が発生したFCループで、信号を劣化させた箇所で障害が発生している可能性が高いので、信号を劣化させた部分について障害が発生していないか障害特定処理を行う(ステップ1600)。この処理では、信号を劣化させた部位である一部のFCループとハードディスクドライブの障害特定処理を行う。まず、FCループに障害が発生しているかを確認するために、PBCによりハードディスクドライブとPBCからハードディスクドライブまでのFCループを切り離し、障害が発生しているかを確認する。次に、ハードディスクドライブで障害が発生しているかを特定するために、反対側のコントローラから信号を劣化させた可能性があるハードディスクドライブについて障害特定処理を行う。
【0080】
障害を発生させた部位を特定できない場合、同一筐体内の他の部位について障害特定処理を行う(ステップ1602)。コントローラは、同一の筐体内で障害を部位を特定できない場合、他の筐体について障害特定処理を行う(ステップ1604)。
【0081】
ハードディスクドライブの信号が出力される部分に信号劣化検出回路を設けることによって、筐体に信号劣化検出回路を設けた場合と異なり、信号を劣化させた部位を詳細に知ることができる。
【0082】
(第4の実施の形態)
図18は、図13,16の変形例として信号劣化検出回路をハードディスクドライブの信号が入力される箇所と信号が出力される箇所にそれぞれ設けた記憶システムの変形例の一例である。本実施の形態における信号劣化検出回路は、ハードディスクドライブに入力される信号及びハードディスクドライブから出力される信号の両方について信号の劣化を検出することができるので、ハードディスクドライブの片方に設けた場合と比較して、信号を劣化させた部位をさらに特定することができる。特に、ハードディスクドライブが信号を劣化させた部位であるかを判定できる可能性が高い。
【0083】
信号が劣化したFCループで障害が発生した場合、信号を劣化させた部位で障害が発生した可能性が高いため、コントローラは、信号を劣化させた部位について最初に障害特定処理を行う。処理の流れは、図17とほぼ同じであるが、異なる点は、図17のステップ1600の処理である。信号を劣化させた部位がハードディスクドライブである場合、コントローラは、冗長ループを使用してハードディスクドライブの障害特定処理を行う。また、ハードディスクドライブ間のFCループで信号が劣化している場合、障害ループを使用してその信号を劣化させたFCループに対して障害特定処理を行う。本実施の形態では、ハードディスクドライブから入力される信号と出力される信号箇所のそれぞれに信号劣化検出回路を設けることによって、FCループが信号を劣化させているのかハードディスクドライブで信号を劣化させているのかを判定することができる。
【0084】
信号劣化検出回路を設けた記憶システムでは、FCループで信号の劣化を検出した段階で、信号を劣化させた部位を特定し、障害が発生する前に保守員等に知らせることができる。さらに、信号を劣化させた部位が接続されているFCループに障害が発生したら、コントローラは、信号を劣化させた部位から障害特定処理を行うことによって、障害部位の発見を迅速にでき、性能や信頼性の低下を最小限に抑えることができる。さらに、障害の回復操作等の保守管理作業を迅速かつ的確に行うことが可能になる。
【0085】
(第5の実施の形態)
図19は、本実施の形態の概念図である。正常な場合、コントローラ1910は、FCループ1901〜1904を制御し、コントローラ1911は、FCループ1905〜1908を制御する。奇数筐体1912は、FCループ1901、1902と、FCループ1905、1906に接続されている。また、偶数筐体1913は、FCループ1903、1904と、FCループ1907、1908に接続されている。
【0086】
偶数筐体1913と奇数筐体1912は、各々使用するFCループが異なるため、隣接する筐体に影響を与えない。これにより、偶数筐体1913と奇数筐体1912は、別々に障害特定処理を行うことができ、信頼性を高めることができる。また、図2,3と比較してFCループを多重に設けていることからコントローラは、ハードディスクドライブと高速に読み込みや書き込みの処理をすることができる。
【0087】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で変更可能であることはいうまでもない。
【0088】
たとえば、障害特定処理において、上述の説明では障害ありと特定した筐体内のハードディスクドライブのみ切り離して障害特定処理を行う。しかし、この方法だけに限らない。例えば、コントローラは、障害が発生したFCループに接続されている全てのハードディスクドライブを全て切り離した後、障害が発生した筐体のハードディスクドライブを一台毎に障害の発生を調べる方法も考えれる。あるいは、障害が発生している筐体が複数ある場合、複数の障害が発生している筐体のハードディスクを切り離した後、障害を特定すべき筐体のハードディスクドライブを一台毎に接続して障害特定処理を行う。上記の方法においては、障害が発生したハードディスクドライブが2台以上であっても障害を回復することができる。
【0089】
また、障害箇所の表示方法としては、表示ランプ等を用いる方法に限らず、例えば、コントローラを外部から制御する管理端末280等の画面に図3のようにシステム構成図を表示し、このシステム構成図上に可視化して表示する方法でもよい。
【0090】
また、通信手段は、FCループだけに限られず、その他、光ファイバや銅線等のループ状の通信手段であれば、応用可能である。
【0091】
また、記憶手段は、ハードディスクドライブだけに限られず、光ディスクやメモリにも応用可能である。
【0092】
また、障害がある一定の確率でしか起こらず、再現性が困難な場合、コントローラは、障害とみなす確率を設定することができる。これにより、障害特定処理においても、コントローラは、障害特定コマンドを複数回発行し、応答した回数で応答率を算出し、所定の応答率以下なら、障害が発生しているとすることができる。
【0093】
【発明の効果】
本発明によれば、上位装置からの書き込みまたは読み込みなどの通常処理に影響を与えず、上位装置のタイムアウト時間内で記憶システムの障害特定処理を行うという効果が得られる。
【0094】
また、本発明によれば、ループ状通信手段を備えた構成において障害発生時の性能や信頼性の低下を最小限に止めることができる、という効果が得られる。
【0095】
本発明によれば、ループ状通信手段を備えた構成において、障害部位の特定、回復作業を迅速、簡便かつ的確に行うことができる、という効果が得られる。
【0096】
本発明によれば、ループ状通信手段を多重に備えた構成において、複数のループ状通信手段に及ぶ多重障害発生時の復旧を確実に行うことができる、という効果が得られる。
【図面の簡単な説明】
【図1】第1の実施の形態における記憶システムの外観図である。
【図2】第1の実施の形態における記憶システムのループ構成の概念図である。
【図3】図2のループ構成の概念図における詳細な構成図である。
【図4】PBCの構成図である。
【図5】障害特定処理の全体フローチャートである。
【図6】図5のフローチャートの一部である。
【図7】図5のフローチャートの続きである。
【図8】図5のフローチャートの続きである。
【図9】図5のフローチャートの続きである。
【図10】図5のフローチャートの続きである。
【図11】図5のフローチャートの続きである。
【図12】信号劣化検出回路の構成図である。
【図13】信号劣化検出回路を記憶システムの筐体毎に組み込んだ構成図である。
【図14】信号の劣化の検出から障害特定処理を行うまでのフローチャートである。
【図15】信号を劣化させた筐体から障害特定処理を行う概略を示したフローチャートである。
【図16】信号劣化検出回路を記憶システムのハードディスクドライブの出口に設けた構成図である。
【図17】信号劣化検出回路を設けた場合の障害特定処理のフローチャートである。
【図18】信号劣化検出回路を記憶システムのハードディスクドライブの出入口に設けた構成図である。
【図19】奇数筐体と偶数筐体に分けた場合の記憶システムの構成図である。
【符号の説明】
基本筐体…100、
増設筐体…110、
ハードディスクドライブ…130、
表示ランプ…160、
上位装置…210、
コントローラ…220、221、
キャッシュメモリ…230、231、
FCループ…270〜273、350〜361、390〜397、
管理端末…280
PBC…260〜263、300〜340、370〜381、
信号劣化検出回路…1104、
信号線…1801、1802

Claims (18)

  1. 情報を格納する複数の記憶媒体と、
    前記記憶媒体を制御するコントローラと、
    前記記憶媒体および前記コントローラをループ状に接続し、前記コントローラおよび前記記憶媒体の相互間における情報の授受を行うループ状通信手段と、
    前記コントローラは、障害が発生したループ状通信手段または、障害が発生した記憶媒体を認識した場合、上位装置から送られる情報の処理を行いながら、前記障害が発生したループ状通信手段または、前記障害が発生した記憶媒体を特定する処理を行うものであることを特徴とする記憶システム。
  2. 情報を格納する記憶媒体と、
    前記記憶媒体を制御するコントローラと、
    前記記憶媒体および前記コントローラをループ状に接続し、前記コントローラおよび前記記憶媒体の相互間における情報の授受を行うループ状通信手段と、
    前記ループ状通信手段に信号の劣化を検出する信号劣化検出手段とを有するものであることを特徴とする記憶システム。
  3. 請求項2記載の記憶システムにおいて、
    前記信号劣化検出手段が信号の劣化を検出し、信号が劣化したループ状通信手段で障害が発生した場合、前記コントローラは、前記信号劣化検出手段によって信号の劣化を検出した部位から障害の特定の処理を行うものであることを特徴とする記憶システム。
  4. 請求項1記載の記憶システムにおいて、
    前記コントローラが記憶媒体に障害があることを特定できた場合、記憶媒体に障害があることを示す表示手段を有するものであることを特徴とする記憶システム。
  5. 請求項2記載の記憶システムにおいて、
    前記コントローラが記憶媒体に障害があることを特定できた場合、記憶媒体に障害があることを示す表示手段を有するものであることを特徴とする記憶システム。
  6. 請求項3記載の記憶システムにおいて、
    前記コントローラが記憶媒体に障害があることを特定できた場合、記憶媒体に障害があることを示す表示手段を有するものであることを特徴とする記憶システム。
  7. 請求項1記載の記憶システムにおいて、
    障害を特定できた段階毎に、障害部位を画面に表示する管理端末を有するものであることを特徴とする記憶システム。
  8. 請求項2記載の記憶システムにおいて、
    障害を特定できた段階毎に、障害部位を画面に表示する管理端末を有するものであることを特徴とする記憶システム。
  9. 請求項3記載の記憶システムにおいて、
    障害を特定できた段階毎に、障害部位を画面に表示する管理端末を有するものであることを特徴とする記憶システム。
  10. 請求項1記載の記憶システムにおいて、
    前記コントローラは、前記障害が発生した部位を特定する処理を中断し、再開することができるものであることを特徴とする記憶システム。
  11. 請求項2記載の記憶システムにおいて、
    前記コントローラは、前記障害が発生した部位を特定する処理を中断し、再開することができるものであることを特徴とする記憶システム。
  12. 請求項4乃至6記載の記憶システムにおいて、
    前記表示手段は、LEDであることを特徴とする記憶システム。
  13. 請求項3記載の記憶システムにおいて、
    前記コントローラは、前記障害が発生した部位を特定する処理を中断し、再開することができるものであることを特徴とする記憶システム。
  14. 情報を格納する記憶媒体と、前記記憶媒体を格納する筐体と、前記記憶媒体を制御するコントローラと、前記コントローラに接続され、前記記憶媒体および前記コントローラをループ状に接続し、前記コントローラおよび前記記憶媒体の相互間における情報の授受を行うループ状通信手段とを有する記憶システムであって、
    前記コントローラは、障害が発生したループ状通信手段または、障害が発生した記憶媒体を認識した場合、上位装置から送られる情報の処理を行いながら、障害が発生した部位を特定するために筐体毎にループ状通信手段を切り離し、
    前記切り離されたループ状通信手段に対して障害が発生した筐体の特定を行い、障害が発生した筐体を特定できた場合、前記障害が発生した筐体内の記憶媒体またはループ状通信手段に対して障害の特定を行うことを特徴とする障害特定方法。
  15. 請求項14記載の記憶システムにおいて、
    前記コントローラが記憶媒体に障害があることを特定できた場合、記憶媒体に障害があることを示す表示手段を点灯させることを特徴とする障害特定方法。
  16. 請求項14記載の記憶システムにおいて、
    前記コントローラが記憶媒体に障害があることを特定できた場合、障害部位を画面に表示する管理端末を有することを特徴とする障害特定方法。
  17. 請求項14記載の障害特定方法において、
    前記コントローラに所定以上の負荷がかかる場合、障害特定を一時的に中断し、前記コントローラにかかる負荷が所定以下になる場合、再び障害特定を行うことを特徴とする障害特定方法。
  18. 請求項15記載の障害特定方法において、
    前記表示手段は、LEDであることを特徴とする障害特定方法。
JP2003195450A 2003-07-11 2003-07-11 記憶システム及び記憶システムの障害特定方法 Pending JP2005031928A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003195450A JP2005031928A (ja) 2003-07-11 2003-07-11 記憶システム及び記憶システムの障害特定方法
US10/658,530 US7047450B2 (en) 2003-07-11 2003-09-10 Storage system and a method for diagnosing failure of the storage system
US11/130,188 US7437615B2 (en) 2003-07-11 2005-05-17 Storage system and a method for diagnosing failure of the storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003195450A JP2005031928A (ja) 2003-07-11 2003-07-11 記憶システム及び記憶システムの障害特定方法

Publications (2)

Publication Number Publication Date
JP2005031928A true JP2005031928A (ja) 2005-02-03
JP2005031928A5 JP2005031928A5 (ja) 2006-08-17

Family

ID=33562548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003195450A Pending JP2005031928A (ja) 2003-07-11 2003-07-11 記憶システム及び記憶システムの障害特定方法

Country Status (2)

Country Link
US (2) US7047450B2 (ja)
JP (1) JP2005031928A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257633A (ja) * 2006-03-21 2007-10-04 Internatl Business Mach Corp <Ibm> 障害部分を分離するストレージ・システム、障害を分離するプログラム、及びその方法
EP1881407A2 (en) 2006-07-10 2008-01-23 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
JP2008217234A (ja) * 2007-03-01 2008-09-18 Nec Corp リンク診断装置および方法
JP2009129075A (ja) * 2007-11-21 2009-06-11 Fujitsu Ltd ストレージシステム

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7152791B2 (en) * 2004-03-30 2006-12-26 Honeywell International, Inc. Identifying the location of an asset
US8266406B2 (en) 2004-04-30 2012-09-11 Commvault Systems, Inc. System and method for allocation of organizational resources
US7343356B2 (en) 2004-04-30 2008-03-11 Commvault Systems, Inc. Systems and methods for storage modeling and costing
JP2005339216A (ja) * 2004-05-27 2005-12-08 Hitachi Ltd 記憶制御システム
JP4305336B2 (ja) * 2004-09-02 2009-07-29 日本電気株式会社 ディスクエンクロージャ装置及びそのプログラム
US20060112303A1 (en) * 2004-11-09 2006-05-25 Arco Computer Products, Llc. Local backup device with remote management capability and method for remote backup management
US8015568B2 (en) * 2005-02-28 2011-09-06 Hitachi Global Storage Technologies Netherlands B.V. Disk drive/CPU architecture for distributed computing
JP2006252733A (ja) * 2005-03-14 2006-09-21 Fujitsu Ltd 媒体記憶装置及び媒体記憶装置のライト系経路診断方法。
JP2007094996A (ja) * 2005-09-30 2007-04-12 Fujitsu Ltd データストレージシステム、データストレージ制御装置及びその障害箇所診断方法
US20110010518A1 (en) * 2005-12-19 2011-01-13 Srinivas Kavuri Systems and Methods for Migrating Components in a Hierarchical Storage Network
JPWO2007096956A1 (ja) * 2006-02-22 2009-07-09 富士通株式会社 中央処理装置
US7676694B2 (en) * 2006-03-31 2010-03-09 Emc Corporation Managing system components
JP2007280258A (ja) * 2006-04-11 2007-10-25 Hitachi Ltd 記憶制御装置
US7853821B2 (en) * 2006-04-17 2010-12-14 Hewlett-Packard Development Company, L.P. Identifying one or more storage devices causing a failure condition during discovery of storage devices
US7761738B2 (en) * 2006-09-07 2010-07-20 International Business Machines Corporation Establishing communications across virtual enclosure boundaries
US7596723B2 (en) * 2006-09-22 2009-09-29 International Business Machines Corporation Apparatus, system, and method for selective cross communications between autonomous storage modules
US7661017B2 (en) * 2007-01-30 2010-02-09 International Business Machines Corporaion Diagnostic operations within a switched fibre channel arbitrated loop system
US7783917B2 (en) * 2007-02-26 2010-08-24 International Business Machines Corporation Selection of data arrays
DE102007046440B3 (de) * 2007-09-28 2009-01-15 Siemens Ag Kommunikationsverfahren und Master-Slave-System für einen nach dem AS-Interface Standard ausgeführten Feldbus
WO2009050761A1 (ja) * 2007-10-15 2009-04-23 Fujitsu Limited ストレージシステム、ストレージ制御装置、ストレージシステムの制御方法及びそのプログラム
WO2009062280A1 (en) * 2007-11-15 2009-05-22 Mosaid Technologies Incorporated Methods and systems for failure isolation and data recovery in a configuration of series-connected semiconductor devices
US8473779B2 (en) * 2008-02-29 2013-06-25 Assurance Software And Hardware Solutions, Llc Systems and methods for error correction and detection, isolation, and recovery of faults in a fail-in-place storage array
US8782471B2 (en) * 2008-05-09 2014-07-15 Dell Products L.P. Storage device procurement system
US8122294B2 (en) * 2008-11-03 2012-02-21 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for rapid grading of computer storage operating condition
US8650328B1 (en) * 2008-12-15 2014-02-11 American Megatrends, Inc. Bi-directional communication between redundant storage controllers
US8301822B2 (en) * 2009-09-23 2012-10-30 Sandisk Il Ltd. Multi-protocol storage device bridge
US8214551B2 (en) * 2010-01-09 2012-07-03 International Business Machines Corporation Using a storage controller to determine the cause of degraded I/O performance
JP5531625B2 (ja) * 2010-01-13 2014-06-25 日本電気株式会社 通信システム及びその障害検出方法
US8938552B2 (en) * 2010-08-02 2015-01-20 Cleversafe, Inc. Resolving a protocol issue within a dispersed storage network
US8255737B1 (en) * 2010-04-29 2012-08-28 Netapp, Inc. System and method for a redundant communication fabric in a network storage system
US8954780B1 (en) * 2012-10-11 2015-02-10 Symantec Corporation Systems and methods for transferring input/output operations within computer clusters
JP6281175B2 (ja) * 2012-12-07 2018-02-21 株式会社ジェイテクト Plc通信システム
US10379988B2 (en) 2012-12-21 2019-08-13 Commvault Systems, Inc. Systems and methods for performance monitoring
JP6204058B2 (ja) * 2013-05-07 2017-09-27 株式会社ジェイテクト Plc通信システム
EP2881812B1 (de) * 2013-12-03 2016-08-31 Siemens Aktiengesellschaft Verfahren zum Betreiben einer Automatisierungseinrichtung
US9378082B1 (en) 2013-12-30 2016-06-28 Emc Corporation Diagnosis of storage system component issues via data analytics
US9396061B1 (en) 2013-12-30 2016-07-19 Emc Corporation Automated repair of storage system components via data analytics
US9996437B2 (en) * 2015-03-31 2018-06-12 EMC IP Holding Company LLC Failover in a san environment
US10275320B2 (en) 2015-06-26 2019-04-30 Commvault Systems, Inc. Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation
US10248494B2 (en) 2015-10-29 2019-04-02 Commvault Systems, Inc. Monitoring, diagnosing, and repairing a management database in a data storage management system
CN108228377B (zh) * 2017-12-29 2020-07-07 华中科技大学 一种面向磁盘故障检测的smart阈值优化方法
US10831591B2 (en) 2018-01-11 2020-11-10 Commvault Systems, Inc. Remedial action based on maintaining process awareness in data storage management
CN109240883A (zh) * 2018-08-30 2019-01-18 郑州云海信息技术有限公司 定位smart报错硬盘的方法、系统、设备及存储介质
US20200192572A1 (en) 2018-12-14 2020-06-18 Commvault Systems, Inc. Disk usage growth prediction system

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US149956A (en) * 1874-04-21 Improvement in machines for matching, measuring, singeing, brushing
JPS57101950A (en) 1980-12-17 1982-06-24 Oki Electric Ind Co Ltd Double storage device control system
JPS58114125A (ja) 1981-12-26 1983-07-07 Fujitsu Ltd 障害処理方式
US5392302A (en) * 1991-03-13 1995-02-21 Quantum Corp. Address error detection technique for increasing the reliability of a storage subsystem
JP3078972B2 (ja) * 1993-11-05 2000-08-21 富士通株式会社 ディスクアレイ装置
US5922077A (en) * 1996-11-14 1999-07-13 Data General Corporation Fail-over switching system
US5991891A (en) * 1996-12-23 1999-11-23 Lsi Logic Corporation Method and apparatus for providing loop coherency
US5941992A (en) * 1997-08-13 1999-08-24 Mci Communications Corporation Distributed method and system for excluding components from a restoral route in a communications network
US6338110B1 (en) * 1997-11-14 2002-01-08 Sun Microsystems, Inc. Partitioning of storage channels using programmable switches
US6247077B1 (en) * 1998-02-06 2001-06-12 Ncr Corporation Highly-scalable parallel processing computer system architecture
US6188668B1 (en) * 1998-05-01 2001-02-13 Emulex Corporation Automatic isolation in loops
US6219753B1 (en) * 1999-06-04 2001-04-17 International Business Machines Corporation Fiber channel topological structure and method including structure and method for raid devices and controllers
JP2001167040A (ja) * 1999-12-14 2001-06-22 Hitachi Ltd 記憶サブシステム及び記憶制御装置
US6574687B1 (en) * 1999-12-29 2003-06-03 Emc Corporation Fibre channel data storage system
US6571355B1 (en) * 1999-12-29 2003-05-27 Emc Corporation Fibre channel data storage system fail-over mechanism
JP2001216206A (ja) * 2000-02-01 2001-08-10 Nec Corp ループ状インターフェースの障害解析方法及び障害解析機能を有するシステム
JP2001222385A (ja) * 2000-02-10 2001-08-17 Hitachi Ltd 記憶装置および情報処理システム
US6643795B1 (en) * 2000-03-30 2003-11-04 Hewlett-Packard Development Company, L.P. Controller-based bi-directional remote copy system with storage site failover capability
US6598174B1 (en) * 2000-04-26 2003-07-22 Dell Products L.P. Method and apparatus for storage unit replacement in non-redundant array
US6658504B1 (en) * 2000-05-16 2003-12-02 Eurologic Systems Storage apparatus
JP2002007077A (ja) 2000-06-21 2002-01-11 Nec Corp ディスクアレイ装置のループ診断システム及びその方法
US7200108B2 (en) * 2001-06-29 2007-04-03 International Business Machines Corporation Method and apparatus for recovery from faults in a loop network
WO2003048346A1 (en) * 2001-12-04 2003-06-12 Genome Biosciences, Llc Gene targeting methods and vectors
US7007042B2 (en) * 2002-03-28 2006-02-28 Hewlett-Packard Development Company, L.P. System and method for automatic site failover in a storage area network
US7055068B2 (en) * 2002-07-25 2006-05-30 Lsi Logic Corporation Method for validating operation of a fibre link

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257633A (ja) * 2006-03-21 2007-10-04 Internatl Business Mach Corp <Ibm> 障害部分を分離するストレージ・システム、障害を分離するプログラム、及びその方法
EP1881407A2 (en) 2006-07-10 2008-01-23 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
US7761657B2 (en) 2006-07-10 2010-07-20 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
US7831767B2 (en) 2006-07-10 2010-11-09 Hitachi, Ltd. Storage control system, control method for storage control system, port selector, and controller
JP2008217234A (ja) * 2007-03-01 2008-09-18 Nec Corp リンク診断装置および方法
JP4640356B2 (ja) * 2007-03-01 2011-03-02 日本電気株式会社 リンク診断装置および方法
JP2009129075A (ja) * 2007-11-21 2009-06-11 Fujitsu Ltd ストレージシステム
JP4500346B2 (ja) * 2007-11-21 2010-07-14 富士通株式会社 ストレージシステム
US8522075B2 (en) 2007-11-21 2013-08-27 Fujitsu Limited Storage system having storage devices for storing data and control devices for controlling the storage devices

Also Published As

Publication number Publication date
US20050223266A1 (en) 2005-10-06
US7047450B2 (en) 2006-05-16
US7437615B2 (en) 2008-10-14
US20050010843A1 (en) 2005-01-13

Similar Documents

Publication Publication Date Title
JP2005031928A (ja) 記憶システム及び記憶システムの障害特定方法
US8037362B2 (en) Storage system that finds occurrence of power source failure
US6795934B2 (en) Storage subsystem and information processing system
US20090265584A1 (en) Storage control unit with control signal path between coupled controllers
JP3620527B2 (ja) ループ状インタフェースの障害解析方法及び障害解析機能を有するシステム
EP1788482A2 (en) Storage control device, and error information management method for storage control device
US20040153914A1 (en) System and method for isolating a faulty switch, storage device or SFP in a daisy-chained configuration
US7236454B2 (en) Loop diagnosis system and method for disk array apparatuses
JP5296878B2 (ja) 1つまたは複数の交換ユニットのテストを管理するために1つまたは複数の交換可能ユニットを含むコンピュータ化ストレージ・システムで使用するための方法、装置、およびプログラム(交換ユニットのテストを管理するために交換可能ユニットを含むコンピュータ化ストレージ・システム)
JP2005222379A (ja) ディスクアレイ装置およびその障害回避制御方法
JP2005339216A (ja) 記憶制御システム
JP2006285519A (ja) データ転送システムの障害診断方法、データ転送システム及びデータ記憶装置
JP2009282823A (ja) 管理装置、ストレージシステム、記憶装置管理方法
JP6187150B2 (ja) ストレージ制御装置、ストレージ装置、及びストレージ制御プログラム
JP2001306262A (ja) 情報処理システムの制御方法および情報処理システム
JP4799273B2 (ja) ストレージシステム及びループ異常時の自動復旧方法
US8151049B2 (en) Input/output control unit, disk array apparatus, input/output control method, and program
JP4024475B2 (ja) 情報ネットワークの制御方法および情報処理システム
JP2008250929A (ja) リンク障害診断方法、ディスクアレイ・システム、及びリンク障害診断プログラム
JP4658114B2 (ja) 記憶装置
WO2010041294A1 (en) Storage system detecting physical storage device suffering failure, and method of performing processing for additional storage device provision
JP2001256000A (ja) ディスクアレイ装置及びそれに用いる縮退制御方法
JP2001005739A (ja) データパスにおける障害部位の特定方法および装置
JPH1027072A (ja) データディスクアレイ装置
JP2007004297A (ja) 記憶ユニット管理装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060420

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060621

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060621

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060621

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071012

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090518

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090709

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100115