JP2006227964A - ストレージシステム、処理方法及びプログラム - Google Patents

ストレージシステム、処理方法及びプログラム Download PDF

Info

Publication number
JP2006227964A
JP2006227964A JP2005041688A JP2005041688A JP2006227964A JP 2006227964 A JP2006227964 A JP 2006227964A JP 2005041688 A JP2005041688 A JP 2005041688A JP 2005041688 A JP2005041688 A JP 2005041688A JP 2006227964 A JP2006227964 A JP 2006227964A
Authority
JP
Japan
Prior art keywords
raid
data
request
devices
storage system
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
JP2005041688A
Other languages
English (en)
Inventor
Yasuo Noguchi
泰生 野口
Kazutaka Ogiwara
一隆 荻原
Seiji Toda
誠二 戸田
Mitsuhiko Ota
光彦 太田
Riichiro Take
理一郎 武
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 JP2005041688A priority Critical patent/JP2006227964A/ja
Priority to US11/138,267 priority patent/US20060190682A1/en
Publication of JP2006227964A publication Critical patent/JP2006227964A/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/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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/1092Rebuilding, e.g. when physically replacing a failing disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • 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/2056Error 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 by mirroring
    • G06F11/2082Data synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】RAID装置間でミラー化した場合のRAID装置内で復旧可能な障害に対し復旧のための入出力回数を低減して修復時間を短縮する。
【解決手段】 ストレージシステムは、複数のRAID装置をネットワークに接続し、RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化する。RAID構成により装置内で復旧可能なディスク装置の障害が発生すると、ミラーリング先のRAID装置に障害ディスク装置に対応したディスク装置のデータを要求し、転送されたデータをスペアディスク装置に書き込んで復旧させる。データ修復時には、プライマリデータの入出力について、RAID構成ディスク装置群のアクセス権と個別デバイス装置のアクセス権とを排他制御する。
【選択図】 図1

Description

本発明は、ネットワークに接続した複数のRAID装置をミラーリングして多重化したストレージシステム、処理方法及びプログラムに関し、特に、RAID装置内のデバイス障害により縮退状態になった際に効率的な復旧処理を行うストレージシステム、処理方法及びプログラムに関する。
従来、電子文書や観測データやログなどのテラオーダとなる大規模な蓄積するデータを常時アクセス可能な媒体に蓄積して高速に参照できることが、ビジネスプロセスの改善やセキュリティの要求から望まれている。
このようなデータを格納するには大容量で長期保存に耐える安価なストレージシステムが必要である。これを実現するために複数のRAID装置をネットワークで接続し、仮想ストレージシステムとして利用することが行なわれている。
大規模なストレージシステムではRAID装置単体の信頼性では不十分なため、RAID装置内の冗長性に加えて、ネットワークを介してRAID間でミラーリングを行ない、RAID装置間での冗長化を行なっている。
図15(A)は従来のRAID多重化システムであり、ネットワーク100に対しパーソナルコンピュータ102〜1〜102−4を介してRAID装置104−1〜104−4を接続している。RAID装置104−1〜104−4のそれぞれは、図16のRAID装置104−1のように、RAIDコントローラ106に対し複数のストレージデバイスとしてディスク装置108−1〜108−4を接続してデータD1〜D3とパリティPを格納して例えばRAID4を構成している。なお、RAID4はパリティPを固定したディスク装置に格納している。なお、112はスペアディスク装置である。
図15(A)のRAID装置間のミラーリングは、例えばRAID装置104−1にプライマリデータAを格納すると、このミラー先としてRAID装置104−3に同じ内容のセカンダリデータAを格納している。またRAID装置104−2,104−4でミラー化し、プライマリデータBとセカンダリデータBを格納している。
RAID装置間でミラーリングしたストレージシステムにおいて、例えば図15(B)のように、RAID装置104−2でノード障害を起した場合には、修復後にミラーリング先となるRAID装置104−4のセカンダリデータBをネットワーク100を経由して書き込むことで復旧させることができる。
図17(A)は、RAID装置間でミラーリングした別のストレージシステムであり、RAID装置104−1〜104−4の各々の記憶領域を管理単位に分割し、管理単位ごとに異なるRAID装置にミラーリングしている。例えばRAID装置104−4には管理単位でプライマリデータAが格納され、これに対応してミラー先となるRAID装置104−2に同じ内容のセカンダリデータAを格納している。
このようなストレージシステムにおいて、例えば図17(B)のように、RAID装置104−2がノード障害を起した場合、障害で失われたセカンダリデータAについては、ミラー先のRAID装置104−1からネットワーク経由で読み出してRAID装置104−3の空き領域にコピーデータAとして書き込んで復旧し、また障害で失われたセカンダリデータCについては、ミラー先のRAID装置104−4からネットワーク経由で読み出してRAID装置104−1の空き領域にコピーデータCとして書き込んで復旧する。
一方、RAID装置内で障害復旧可能な場合は、ネットワーク経由のデータコピーは行なわず、RAID装置固有の障害復旧を行なう。図18はRAID装置104−1のディスク装置108−2が故障して縮退した場合であり、RAID4を例にとっていることから、正常なディスク装置108−1,108−3,108−4からデータD1,D3及びパリティPをRAIDコントローラ106で読出して排他論理和110を取ることで喪失したデータD1を復元してスペアディスク装置112に書込み、書込みの済んだスペアディスク装置112を故障したディスク装置108−2に置き換えるRAID構成の変更で復旧させている。
特開2002−108571号公報
しかしながら、このような従来のRAID装置間でミラー化したストレージシステムにあっては、RAID構成デバイスの1つが故障するといった装置内で復旧可能な障害に対しては、図18に示したように、装置内でRAIDの冗長性を活用して喪失したデータを復旧しているが、この復旧処理はデータの入出力回数が多くなるため処理に時間がかかり、その間、ユーザによるデータアクセスが遅延するなどの影響を受ける。
即ち図18の場合には、ディスク装置108−1,108−3,108−4についての3回のリード、1回の排他論理和計算、更にスペアディスク装置112に対する1回のライトを必要とし、入出力回数が多くなる。この入出力回数は、RAIDを構成するディスク装置が増加すると更に増加する。同様な問題はパリティを分散させるRAID5でも生ずる。
本発明は、RAID装置間でミラー化した場合のRAID装置内で復旧可能な障害に対し復旧のための入出力回数を低減して修復時間を短縮するストレージシステム、処理方法及びプログラムを提供することを目的とする。
図1は本発明の原理説明である。
本発明は、図1(A)のように、複数のRAID装置10をネットワーク14に接続し、RAID装置10間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムを対象する。
このようなストレージシステムにつき本発明は、RAID装置10の各々に、図1(B)のように、RAID構成デバイス及びスペアデバイスを備えた複数のデバイス(ディスク装置18)と、上位装置からの要求に対しプライマリデータを格納した前記RAID構成デバイスを対象に要求処理を実行するRAID処理部(RAIDコントローラ38)と、RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理部28と、障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理部30と、RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他機構36とを設けたことを特徴とする。
ここで、コピー要求処理部は、障害デバイスがプライマリデータを格納していた場合、ミラーリング先のRAID装置にセカンダリデータを要求し、転送されたセカンダリデータをスペアデバイスに書き込んで復旧させ、コピー応答処理部は、障害先のRAID装置からセカンダリデータ要求を受けた際に、対象デバイスのセカンダリデータを読出して要求元に転送する。
この場合、排他機構は、コピー要求処理部のセカンダリデータ要求に先立ってスペアデバイスに対する排他アクセス権を取得し、転送されたセカンダリデータをスペアデバイスに書き込んだ後に排他アクセス権を開放する。
コピー要求処理部は、障害デバイスがセカンダリデータを格納していた場合、ミラーリング先のRAID装置にプライマリデータを要求し、転送されたプライマリデータをスペアデバイスに書き込んで復旧させた後に書込み終了を通知し、コピー応答処理部は、障害先のRAID装置からプライマリデータ要求を受けた際に、対象デバイスのプライマリデータを読出して要求元に転送する。
この場合、排他機構は、コピー応答処理部が障害先のRAID装置からプライマリデータ要求を受けた際に、アクセス対象デバイスに対する排他アクセス権を取得してプライマリデータを読み出して転送させ、転送後に障害先のRAID装置から書込み終了通知を受信して排他アクセス権を開放する。
RAID装置は、ミラーリング先のRAID装置を示すミラー構成情報及びRAID構成デバイスの構成を示すRAID構成情報を保持し、コピー要求処理部はデバイス障害時にミラー構成情報からミラーリング先のRAID装置を検索すると共に、RAID構成情報から障害デバイスに対応したデバイスを検索してデータを要求する
RAID装置は装置全体でミラーリングしてデータを多重化する。RAID装置は管理単位ごとにミラーリング先を変えてデータを多重化しても良い。RAID装置は、ネットワーク接続された計算機のクラスタで構成された各ノード装置の配下に接続される。
本発明は、複数のRAID装置をネットワークに接続し、RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムの処理方法を提供する。
本発明の処理方法は、
上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
を備えたことを特徴とする。
本発明は、複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したプログラムの前記RAID装置のコンピュータにより実行されるプログラムを提供する。
本発明のプログラムは、前記RAID装置のコンピュータに、
上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
を実行させることを特徴とする。
なお、本発明の処理方法及びプログラムの詳細は、本発明のストレージシステムと基本的に同じである。
本発明によれば、RAID装置内でRAID構成の冗長性を利用して復元可能なデバイス故障について、ミラー先のRAID装置における障害デバイスに対応したデバイスのデータをネットワークを介して読み出してスペアデバイスに書込むことで、即ちネットワーク経由でコピーすることで、復旧のための入出力回数をミラー先のリードと障害元のライトの2回に減らし、これによって障害発生時の修復時間を短縮し、データ修復の際のユーザによるアクセスへの影響を必要最小限に抑えることができる。
またネットワーク経由のコピーにより故障デバイスのデータを修復する際に、コピーに必要な入出力の対象となるプライマリデータを格納している個別デバイスにつき排他アクセス権を獲得することで、修復中のユーザによるRAID構成デバイスに対する入出力処理を抑止し、アクセスの競合を確実に防止することができる。
図2は本発明によるストレージシステムのシステム構成を示したブロック図である。図2において、RAID装置10−1〜10−4はノード装置12−1〜12−4を介してネットワーク14により接続されており、ホスト16からのユーザによる入出力要求を処理する。ノード装置12−1〜12−4はパーソナルコンピュータで構成され、このコンピュータ群によりクラスタシステムを構築している。
RAID装置10−1は、この例にあってはデータ用のデバイスとしてディスク装置18−11〜18−14の4台が設置され、更にスペアディスク装置20−1を設置している。ディスク装置18−11〜18−14及びスペアディスク装置20−1は磁気ディスク装置を使用する。磁気ディスク装置以外に光ディスク装置、半導体メモリなど適宜のデバイスを使用することができる。
残りのRAID装置10−2〜10−4についても同様にデータ用のディスク装置18−21〜18−24,18−31〜18−34,18−41〜18−44及びスペアディスク装置20−2〜20−4を設けている。
RAID装置10−1〜10−4は装置間でデータをミラーリングして多重化している。RAID装置間でのミラーリングによる多重化は、図15の従来例に示したのと同じRAID装置全体でミラー化する構成と、図18の従来例に示したようにRAID装置内における管理単位ごとにミラーリング先を変えてデータを多重化するミラー化のいずれかを採用している。
図3は図2のストレージシステムに設けているノード装置12−1及びRAID装置10−1の機能構成を示したブロック図であり、図2に示したRAID装置10−1〜10−4全体でミラー化した場合の機能構成を示している。
図3において、ノード装置12−1にはネットワークインタフェース22、ノードコントローラ24及びミラー構成情報として機能する他ノード情報26が設けられている。ノード装置12−1としては具体的にはマイクロコンピュータを使用する。ノードコントローラ24には本発明の障害デバイスに対するネットワークを経由したデータ修復を実行するためコピー要求処理部28とコピー応答処理部30が設けられている。
RAID装置10−1にはRAIDインタフェース32、ディスクインタフェース34、排他機構36、RAIDコントローラ38及びRAID構成情報40が設けられている。RAID装置10−1におけるRAIDインタフェース32、RAIDコントローラ38及びRAID構成情報40は、通常のRAID装置が備えた機能であり、これに加えて本発明にあっては新たにディスクインタフェース34と排他機構36の機能を設けている。
ノード装置14−1のノードコントローラ24に設けているコピー要求処理部28は、RAID構成をとるディスク装置18−11〜18−14のいずれかが故障した障害発生時に、ミラー構成情報としての他ノード情報26からミラーリング先のRAID装置を検索し、検索したミラーリング先のRAID装置に対し障害デバイスに対応したデバイスのデータを要求し、この要求に対し転送されたデータをスペアディスク装置20−1に書き込んで復旧させる。
コピー応答処理部30は障害先のRAID装置からデータ要求を受けた際に、対象となるディスク装置のデータを読み出して要求元に転送する。排他機構36はRAIDインタフェース32によるRAID構成デバイスとしてのディスク装置18−11〜18−14に対する排他アクセス権とディスク装置18−11〜18−14及びスペアディスク装置20−1の個別のディスク装置に対する排他アクセス権を排他制御する。
ここで図2に示したネットワークに接続したRAID装置全体でミラーリングしたストレージシステムにあっては、例えばRAID装置10−1にホスト16からの入出力によるプライマリデータを格納し、このプライマリデータに対応して予めミラー先として設定された例えばRAID装置10−3に同じデータをセカンダリデータとして格納している。
このため図3のRAID装置10−1における排他機構36はディスク装置18−11〜18−14がプライマリデータを格納している場合に、ユーザによるRAID構成に対するアクセス権と障害ディスク修復時のコピー処理における個別ディスクに対するアクセス権とを排他制御することになる。これに対しセカンダリデータを記録したRAID装置、例えば図2のRAID装置10−3にあっては、ホスト16からのユーザによる入出力要求がないことからRAID構成のディスク装置と個別ディスク装置の入出要求を排他制御する処理は必要ない。
RAID装置10−1のRAID構成情報40にあっては、ディスク装置18−11〜18−14について例えばRAID4を例にとると、ディスク装置18−11〜18−13がデータディスク装置であり、ディスク装置18−14がパリティディスク装置であり、スペアディスク装置20−1が存在し、更にディスク装置18−11〜18−14に格納しているデータがプライマリデータであることを登録している。
RAIDコントローラ38はRAID構成情報40に従いRAIDインタフェース32に対するノード装置12−1を経由したネットワークからの入出力要求を処理する。
ノード装置12−1の他ノード情報26にはRAID装置10−1とミラーリングしたミラー先のノードアドレスが登録されている。ここで他ノード情報26としてはノードコントローラ24がネットワークインタフェース22を経由して他ノードのノードコントローラにノード情報を問い合わせるインタフェースであってもよい。この点はRAID構成情報40についても同様であり、ノードコントローラ24がRAIDコントローラ38にRAID構成情報を問い合わせるインタフェースとして実現してもよい。
図4は、RAID装置全体をミラーリングしている場合の本発明のストレージシステムにおける障害発生時の処理を示した説明図である。図4において、RAID装置10−1のディスク装置18−12が故障などの障害を起こしたとすると、図3のRADI装置10−1に設けているRAIDコントローラ38がディスク装置18−12の障害を検出してRAID構成情報40に記録し、さらにノードコントローラ24に障害発生を通知する。
RAID装置10−1からの障害通知を受けてノード装置12−1のノードコントローラ24はコピー要求処理部28を起動し、他ノード情報26の参照によりミラー先のノード情報として例えばノード装置12−3を検索し、ノード装置12−3に対し故障ディスク装置18−12に対応したディスク装置18−32からのデータ要求を行う。
障害側ノード装置12−1からのデータ要求に対しミラーリング先のノード装置12−3は故障ディスク装置18−12に対応して同じデータを格納しているディスク装置18−32からデータを読み出し、ネットワーク14を介して要求元のノード装置12−1に対しコピー転送50を行う。
ミラーリング先のノード装置12−3からの読み出しデータの転送を受けたノード装置12−1は、RAID装置10−1のスペアディスク装置20−1に対し転送された読み出しデータを書き込む。スペアディスク装置20−1に対するコピー転送されたデータの書き込みが完了すると、図3のRAID装置10−1に設けているRAID構成情報40について、故障したディスク装置18−12をデータの修復の済んだスペアディスク装置20−1に置き換えてRAID構成情報を更新し、修復処理を終了する。
このように本発明のRAID装置全体をミラーリングしている場合のRADI装置内でRAID構成の冗長性を利用して修復可能な障害が発生した場合、ネットワーク14を経由してミラーリング先の障害ディスクに対応するディスクからデータを読み出してデータを修復することで、データ修復のための入出力処理はミラーリング先のディスクからのデータの読み出し1回と、修復元のスペアディスク装置に対する転送データの書き込み1回という最小の入出力要求でデータの修復処理を完了することができ、データ修復に要する時間を短縮し、その間におけるホスト16からのユーザの入出力要求に対する影響を最小限に抑えることができる。
図4の障害の修復処理にあっては、RAID装置10−1のデータはプライマリデータであり、ミラーリング先のRAID装置10−3のデータはセカンダリデータである。この場合には、プライマリデータを格納しているRAID装置10−1に設けた排他機構36がスペアディスク装置20−1に対する個別入出力要求を実行するために、排他アクセス権を獲得しており、これによってデータ修復中におけるホスト16からのRAID構成ディスク装置に対する入出力要求は抑止されることになる。
図5は図4に示したプライマリデータを格納しているRAID装置10−1でディスク装置が故障して障害を起こした場合の修復処理を、障害発生ノードであるノード装置12−1とミラー先となるノード装置12−3の間のやり取りを含めて示したタイムチャートである。尚、ここでは障害発生元のノード装置を単に障害発生ノード12−1とし、ミラー先をミラーノード12−3としている。
図5において、障害発生ノード装置12−1にあっては、ステップS1でディスク装置の故障であるプライマリデータの喪失を認識すると、ステップS2でプライマリデータの要求処理を開始し、ステップS3でスペアディスク装置20−1の個別アクセスのための排他アクセス権を獲得する。
次にステップS4で他のノード情報26からミラーノード12−3を特定し、ステップS5でミラーノード12−3に対しデータ要求のコマンドを送信する。ミラーノード12−3にあっては、ステップS101で障害発生ノード12−1からのデータ要求のコマンドに基づきセカンダリデータ送信処理を開始する。このセカンダリデータ送信処理はステップS102で故障ディスク装置18−12に対応したミラーディスク装置18−32からセカンダリデータを読み出し、ステップS103で読み出したセカンダリデータを障害発生ノード12−1にネットワーク14を経由して転送する。
障害発生ノード12−1にあっては、ステップS6でミラーノード12−3からのセカンダリデータを受信してスペアディスク装置20−1に書き込み、書き込み終了でRAID構成情報40を更新する。続いてステップS7でデータ修復が終了したことから排他アクセス権を開放し、RAID構成のディスク装置に対するホスト16からのアクセスを可能とする。
図6は図4のセカンダリデータを格納したRAID装置10−3のディスク装置が故障した場合の修復処理のタイムチャートであり、RAID装置10−3のノード装置12−3を障害ノードとしRAID装置10−1のノード装置12−3をミラーノードとしている。
図6において、障害ノード12−3にあってはステップS1でディスク装置故障でセカンダリデータの喪失を検知し、ステップS2でセカンダリデータ要求処理を開始する。このセカンダリデータ要求処理はステップS3で他ノード情報26からミラーノード12−1を特定し、ステップS4でミラーノード12−1に対しデータ要求のコマンドを送信する。
ミラーノード12−1にあってはステップS101で障害ノード12−3からのコマンドに基づくデータ要求にしたがってプライマリデータ送信処理を開始する。このプライマリデータ送信処理はステップS102で故障ディスク装置に対応したミラーノード12−1のRAID装置におけるディスク装置に対する排他アクセス権を獲得した後、ステップS103でミラーディスク装置からプライマリデータを読み出し、ステップS104で読み出したプライマリデータを障害発生ノード12−3にネットワーク14を経由して転送する。
障害発生ノード12−3にあってはステップS5でミラーノード12−1から受信したプライマリデータをスペアディスク装置に書き込んだ後にRAID構成情報を更新し、ステップS6で書き込み完了通知のコマンドをミラーノード10−1に送信する。ミラーノード12−1にあってはステップS105で障害発生ノード12−3からの書き込み完了通知を受信し、ステップS102で獲得したスペアディスク装置に対する排他アクセス権を開放し、ミラーノード12−1に対するホスト16からのユーザによる入出力処理を可能とする。
図7は図3に示したRAID装置全体をミラーリングした実施形態におけるノードコントローラ24によるコピー要求処理のフローチャートである。図7において、ノードコントローラ24によるコピー要求処理は、RAIDコントローラ38がディスク装置の障害を検知してノードコントローラ24に通知することにより開始される。このノード処理の開始時にはRAIDコントローラ38によってRAID構成情報40に故障ディスク装置の記録が行われている。
このようにしてノード処理が開始されると、ステップS1でRAID構成情報40から故障ディスク装置を特定し、続いてステップS2でスペアディスク装置20−1が書き込み修復中であることをRAID構成情報40に記録する。続いてステップS3で管理単位の領域を選択し、ステップS4でミラーノードに対しデータ要求処理を実行する。
続いてステップS5でミラーノードからコピー転送されたデータをスペアディスク装置20−1に書き込む、書込処理を実行する。ステップS6にあっては全管理単位の処理終了の有無をチェックしており、全管理単位の処理が終了するまでステップS3からの処理を繰り返す。
全管理単位の処理が終了するとステップS7に進み、スペアディスク装置20−1をデータディスク装置またはパリティディスク装置とするようにRAID構成情報40を変更して一連の処理を終了する。この図7のコピー要求処理におけるステップS4のデータ要求処理及びステップS5のデータ書込処理にあっては後の説明でさらに詳細に説明する。
図8は図3のノードコントローラ24に設けたコピー応答処理部30におけるコピー応答処理のフローチャートである。図8において、コピー応答処理は、ステップS1でコマンド受信の有無をチェックしており、コマンドを受信するとこれを解読し、ステップS2でセカンダリデータを格納しているノード装置からのデータ要求か否かチェックする。
セカンダリデータを格納しているノード装置からのデータ要求であった場合にはステップS3に進み、プライマリデータ送信処理を開始する。このプライマリデータ送信処理はステップS4で対象ディスク装置に対する排他アクセス権を獲得し、この状態でステップS5に進みディスク装置からプライマリデータを読み出し、ステップS6で要求元に対する読み出したプライマリデータを送信する。
ステップS7にあっては受信コマンドがセカンダリデータの書込終了応答か否かチェックしており、書込終了応答であった場合にはステップS4で取得した排他アクセス権をステップS8で開放する。
ステップS9にあっては受信コマンドの内容がプライマリデータを格納したノード装置からのデータ要求か否かチェックしており、プライマリデータを格納したノード装置からのデータ要求であった場合にはステップS10に進み、セカンダリデータの送信処理を開始する。
このセカンダリデータの送信処理はステップS11で対象ディスク装置からセカンダリデータを読み出して、ステップS12で読み出したセカンダリデータを要求元のノードに送信する。このステップS9〜S12のセカンダリデータの要求に対する読み出し処理にあっては排他アクセス権の制御は行わない。このようなステップS1〜S12の応答処理をステップS13で停止指示があるまで繰り返すことになる。
図9は図7のステップS4のデータ要求処理のフローチャートである。図9のデータ要求処理にあっては、ステップS1でデータ要求元となるRAID装置がプライマリデータを格納したプライマリノードか否かチェックする。プライマリノードであった場合にはステップS2に進み、プライマリデータの要求処理を開始する。
プライマリデータの要求処理はステップS3でデータを修復するスペアディスク装置に対する排他アクセス権を獲得した後、ステップS4で他ノード情報からミラーディスク装置をもつミラーノードを特定し、ステップS5で指定された管理単位の領域を送信するようにセカンダリデータを格納したRAID装置のノード、すなわちセカンダリノードに対しデータ要求のコマンドを送信する。
一方、ステップS1で要求元がセカンダリノードであった場合にはステップS6のセカンダリノード要求処理を開始する。このセカンダリノード要求処理はステップS7で他ノード情報からミラーディスク装置をもつミラーノードを特定した後、ステップS8で指定された管理単位の領域を送信するようにセカンダリノードにコマンドを送信する。このセカンダリノード送信要求処理にあっては排他アクセス権の制御は行わない。
図10は図7のステップS5におけるデータ書込処理のフローチャートである。図10において、データ書込処理はステップS1でコマンド受信をチェックしており、コマンドを受信するとそれを解読し、ステップS2でセカンダリデータの書き込みか否かチェックする。
セカンダリデータの書き込みであった場合にはステップS3に進み、スペアディスク装置に受信したセカンダリデータを書き込み、ステップS4で排他アクセス権を開放する。このステップS4で開放する排他アクセス権は図9のステップS3で獲得されたアクセス権である。
一方、受信コマンドからステップS2においてプライマリデータの書き込みであることを認識した場合には、ステップS5に進み、スペアディスク装置に受信したプライマリデータを書き込んだ後、ステップS6で書き込み完了通知をミラーノードに対し送信する。このステップS6の書き込み完了通知を受けたミラーノードは図8のフローチャートのステップS7でセカンダリデータの書き込み完了通知を受信し、ステップS8で排他アクセス権を開放することになる。
図11は図2のストレージシステムにおいてRAID装置における管理単位ごとにミラー先が異なる場合の修復処理の説明図である。
図11において、RAID装置10−1のディスク装置には管理単位ごとにプライマリデータ(A1,A2,A3,PA)が格納されており、ミラーリング先となるRAID装置10−2にはセカンダリデータ(A1,A2,A3,PA)が格納されている。またRAID装置10−3の管理単位としてプライマリデータ(D1,D2,D3,PD)が格納され、このミラー先となるノード装置12−3にセカンダリデータ(B1,B2,B3,PB)が格納されている。
このような管理単位ごとにミラー先が異なるストレージシステムにおいて例えばRAID装置10−1のディスク装置18−12が故障して障害を起こした場合にはノード装置12−1は管理単位ごとにデータ要求を行ってスペアディスク装置20−1にデータを修復する。
すなわちディスク装置18−12の故障で喪失したプライマリデータA2については,ミラー先となるRAID装置10−2のディスク装置18−22からセカンダリデータA2を読み出して、コピー転送52を行うことでスペアディスク装置20−1に修復する。また故障したディスク装置18−12の別の管理単位となるプライマリデータB2についてはミラー先となるRAID装置10−3のディスク装置18−32のセカンダリデータB2を読み出してコピー転送54を行い、スペアディスク装置20−1に修復する。
この図11のように管理単位ごとにミラー先を異なるようにした場合のノード装置12−1〜12−3及びRAID装置10−1〜10−3の構成は、基本的に図3の実施形態と同じであり、障害を修復する際のコピー要求処理及びコピー応答処理がRAID装置における管理単位ごとに行われる点が相違する。
図12は図11のRAID装置の管理単位ごとにミラー先が異なる場合のコピー要求処理のフローチャートである。図12のコピー要求処理は、図7のRAID装置全体をミラー化している場合と同様、図3のRAID装置10−1におけるRAIDコントローラ38がディスク装置の障害を検知してノードコントローラ24に対しRAIDインタフェース32を経由して通知することにより開始され、このときRAIDコントローラ38によってRAID構成情報40に故障ディスク装置の記録が行われている。
図12において、コピー要求処理は、まずステップS1でRAID構成情報40から故障ディスク装置を特定し、ステップS2でスペアディスク装置が書き込み修復中であることをRAID構成情報40に記録した後、ステップS3でRAID装置における管理単位の領域を選択する。
続いてステップS4で他ノード情報から選択したミラーノードに対し管理単位のデータ要求処理を実行する。続いてステップS5で全管理単位の処理を終了したか否かチェックし、処理が終了するまでステップS3からの処理を繰り返す。このステップS4におけるミラーノードに対する管理単位ごとのデータ要求処理は管理単位ごとにミラー先が異なることから、異なったミラーノードに対しデータ要求を行うことになる。
ステップS5で全管理単位の処理が終了すると、ステップS6に進み、受信したミラーノードからのデータをスペアディスク装置に書き込む。この書き込み処理をステップS7で全管理単位の書き込みが終了するまで繰り返す。
書き込みが終了するとステップS8に進み、スペアディスク装置をデータディスク装置またはパリティディスク装置とするようにRAID構成情報を変更し、一連の修復処理を終了する。
このRAID装置における管理単位ごとにミラー先が異なる場合のコピー要求処理におけるステップS4のデータ要求処理は図9のフローチャートと同じであり、またステップS6のデータ書き込み処理は図10のフローチャートと同じになる。さらにRAID装置の管理単位ごとにミラー先が異なる場合の図3のコピー応答処理部30によるコピー応答処理は図8のコピー応答処理のフローチャートと同じになる。
図13は本発明のストレージシステムにおけるノード及びRAID装置の他の実施形態であり、この実施形態にあってはパーソナルコンピュータとディスク装置でノード装置及びRAID装置を構成するようにしたことを特徴とする。
図13において、ネットワーク14に対してはパーソナルコンピュータ15−1を複数のディスク装置18−11〜18−14及びスペアディスク装置20−1が設けられる。パーソナルコンピュータ15−1上にはネットワークインタフェース22、ノードコントローラ24、ソフトウェアRAIDモジュール62及びディスクインタフェース64が設けられ、ノードコントローラ24には排他機構66と他ノード情報インタフェース68が設けられ、ソフトウェアRAIDモジュール62にはRAIDインタフェース70、RAID構成情報インタフェース72が設けられている。
この実施形態にあってはノードコントローラ24はパーソナルコンピュータ15−1のソフトウェアで実現している。またソフトウェアRAIDモジュール62はディスクインタフェース64を経由してディスク装置18−11〜18−14及びスペアディスク装置20−1をRAID構成デバイスとしてアクセス可能とする仮想ドライバである。
ノードコントローラ24はディスクインタフェース64を経由してディスク装置18−11〜18−14及びスペアディスク装置20−1の個別アクセスを行うこともソフトウェアRAIDモジュール62のRAIDインタフェース70を経由してディスク装置18−11〜18−14によるRAID構成に対するアクセスを行うことも可能であり、故障ディスク装置に対する修復の際にプライマリデータの入出力を行う際には排他アクセス権を獲得して個別ディスク装置のアクセスを要求し、ユーザによるRAID構成に対するアクセスを抑止する排他機構66の制御機能を実現する。
更に、この実施形態にあってはノード情報を保持するかわりにノードコントローラ24の機能によりミラー先を特定するために使用する他ノード情報インタフェース68の機能を設けている。またソフトウェアRAIDモジュール62にあってはRAID構成情報を保持するかわりにRAID構成情報インタフェース72によりRAID構成情報を取得する機能を実現している。
図14は本発明のストレージシステムのノードを構成する他の実施形態の説明図であり、この実施形態にあってはノード装置及びRAID装置をパーソナルコンピュータ15−1とストレージエリアネットワーク(SAN)76で構成したことを特徴とする。
図14において、パーソナルコンピュータ15−1にネットワークインタフェース22、ノードコントローラ24、ソフトウェアRAIDモジュール62を設けた点は図13の実施形態と同じであるが、ディスク装置18−11〜18−13をストレージエリアネットワーク(SAN)76を用いて構成しており、このためパーソナルコンピュータ15−1にはストレージエリアネットワークインタフェース74が設けられている。
ストレージエリアネットワーク76を設けたディスク装置18−11〜18−13にあっては、スペアディスク装置を常時接続する必要はなく、いずれかのディスク装置が故障したデータ修復時に新規にディスク装置を接続すればよい。
また図14の実施形態はストレージエリアネットワーク(SAN)76のディスク装置を使用する場合を例にとっているが、同様な機能をもつiSCSIなどのネットワークディスク装置を使用するようにしてもよい。
更に本発明はネットワークに接続されたRAID装置を有するノードで使用されるプログラムを提供するものであり、このプラグラムはノードを提供するコンピュータにより実行され、プログラムの内容は図7、図8、図9、図10及び図12のフローチャートに示した内容となる。
また本発明のプログラムを実行するコンピュータのハードウェア環境は、CPUのバスにRAM、ハードディスクドコントローラ(ソフト)、フロッピィディスクドライバ(ソフト)、CD−ROMドライバ(ソフト)、マウスコントローラ、キーボードコントローラ、ディスプレイコントローラ、通信用ボードが接続される。ハードディスクコントローラはハードディスクドライブを接続し、本発明のプログラムをローディングしており、コンピュータの起動時にハードディスクドライブから必要なプログラムを呼び出して、RAM上に展開し、CPUにより実行する。
尚、本発明はその目的と利点を損なうことのない適宜の変形を含み、また上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴を列挙すると次の付記のようになる。
(付記)
(付記1)
複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムに於いて、
前記RAID装置の各々に、
RAID構成デバイス及びスペアデバイスを備えた複数のデバイスと、
上位装置からの要求に対しプライマリデータを格納した前記RAID構成デバイスを対象に要求処理を実行するRAID処理部と、
RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理部と、
障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理部と、
前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他機構と、
を設けたことを特徴とするストレージシステム。(1)
(付記2)
付記1記載のストレージシステムに於いて、
前記コピー要求処理部は、前記障害デバイスがプライマリデータを格納していた場合、ミラーリング先のRAID装置にセカンダリデータを要求し、転送されたセカンダリデータをスペアデバイスに書き込んで復旧させ、
前記コピー応答処理部は、障害先のRAID装置からセカンダリデータ要求を受けた際に、対象デバイスのセカンダリデータを読出して要求元に転送することを特徴とするストレージシステム。(2)
(付記3)
付記2記載のストレージシステムに於いて、前記排他機構は、前記コピー要求処理部のセカンダリデータ要求に先立って前記スペアデバイスに対する排他アクセス権を取得し、転送されたセカンダリデータをスペアデバイスに書き込んだ後に前記排他アクセス権を開放することを特徴とするストレージシステム。(3)
(付記4)
付記1記載のストレージシステムに於いて、
前記コピー要求処理部は、前記障害デバイスがセカンダリデータを格納していた場合、ミラーリング先のRAID装置にプライマリデータを要求し、転送されたプライマリデータをスペアデバイスに書き込んで復旧させた後に書込み終了を通知し、
前記コピー応答処理部は、障害先のRAID装置からプライマリデータ要求を受けた際に、対象デバイスのプライマリデータを読出して要求元に転送することを特徴とするストレージシステム。(4)
(付記5)
付記4記載のストレージシステムに於いて、前記排他機構は、前記コピー応答処理部が障害先のRAID装置からプライマリデータ要求を受けた際に、アクセス対象デバイスに対する排他アクセス権を取得してプライマリデータを読み出して転送させ、転送後に障害先のRAID装置からの前記書込み終了通知を受信して前記排他アクセス権を開放することを特徴とするストレージシステム。(5)
(付記6)
付記1記載のストレージシステムに於いて、
前記RAID装置は、ミラーリング先のRAID装置を示すミラー構成情報及びRAID構成デバイスの構成を示すRAID構成情報を保持し、
前記コピー要求処理部はデバイス障害時に前記ミラー構成情報からミラーリング先のRAID装置を検索すると共に、前記RAID構成情報から障害デバイスに対応したデバイスを検索してデータを要求することを特徴とするストレージシステム。(6)
(付記7)
付記1記載のストレージシステムに於いて、前記RAID装置は装置全体でミラーリングしてデータを多重化したことを特徴とするストレージシステム。(7)
(付記8)
付記1記載のストレージシステムに於いて、前記RAID装置は管理単位ごとにミラーリング先を変えてデータを多重化したことを特徴とするストレージシステム。(8)
(付記9)
付記1記載のストレージシステムに於いて、前記RAID装置は、ネットワーク接続された計算機のクラスタで構成される各ノードの配下に接続されたことを特徴とするストレージシステム。
(付記10)
複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムの処理方法に於いて、
上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
を備えたことを特徴とするストレージシステムの処理方法。(9)
(付記11)
付記10記載のストレージシステムの処理方法に於いて、
前記コピー要求処理ステップは、前記障害デバイスがプライマリデータを格納していた場合、ミラーリング先のRAID装置にセカンダリデータを要求し、転送されたセカンダリデータをスペアデバイスに書き込んで復旧させ、
前記コピー応答処理ステップは、障害先のRAID装置からセカンダリデータ要求を受けた際に、対象デバイスのセカンダリデータを読出して要求元に転送することを特徴とするストレージシステムの処理方法。
(付記12)
付記11記載のストレージシステムの処理方法に於いて、前記排他制御ステップは、前記コピー要求処理ステップのセカンダリデータ要求に先立って前記スペアデバイスに対する排他アクセス権を取得し、転送されたセカンダリデータをスペアデバイスに書き込んだ後に前記排他アクセス権を開放することを特徴とするストレージシステムの処理方法。
(付記13)
付記10記載のストレージシステムの処理方法に於いて、
前記コピー要求処理ステップは、前記障害デバイスがセカンダリデータを格納していた場合、ミラーリング先のRAID装置にプライマリデータを要求し、転送されたプライマリデータをスペアデバイスに書き込んで復旧させた後に書込み終了を通知し、
前記コピー応答処理ステップは、障害先のRAID装置からプライマリデータ要求を受けた際に、対象デバイスのプライマリデータを読出して要求元に転送することを特徴とするストレージシステムの処理方法。
(付記14)
付記13記載のストレージシステムの処理方法に於いて、前記排他制御ステップは、前記コピー応答処理ステップが障害先のRAID装置からプライマリデータ要求を受けた際に、アクセス対象デバイスに対する排他アクセス権を取得してプライマリデータを読み出して転送させ、転送後に障害先のRAID装置から前記書込み終了通知を受信して前記排他アクセス権を開放することを特徴とするストレージシステムの処理方法。
(付記15)
付記10記載のストレージシステムの処理方法に於いて、
前記RAID装置は、ミラーリング先のRAID装置を示すミラー構成情報及びRAID構成デバイスの構成を示すRAID構成情報を保持し、
前記コピー要求処理ステップはデバイス障害時に前記ミラー構成情報からミラーリング先のRAID装置を検索すると共に、前記RAID構成情報から障害デバイスに対応したデバイスを検索してデータを要求することを特徴とするストレージシステムの処理方法
(付記16)
付記10記載のストレージシステムの処理方法に於いて、前記RAID装置は装置全体でミラーリングしてデータを多重化したことを特徴とするストレージシステムの処理方法。
(付記17)
付記10記載のストレージシステムの処理方法に於いて、前記RAID装置は管理単位ごとにミラーリング先を変えてデータを多重化したことを特徴とするストレージシステムの処理方法。
(付記18)
付記10記載のストレージシステムの処理方法に於いて、前記RAID装置は、ネットワーク接続された計算機のクラスタとの各ノードの配下に接続されたことを特徴とするストレージシステムの処理方法。
(付記19)
複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化した前記RAID装置のコンピュータに、
上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
を実行させることを特徴とするプログラム。(10)
(付記20)
付記19記載のプログラムに於いて、
前記コピー要求処理ステップは、前記障害デバイスがプライマリデータを格納していた場合、ミラーリング先のRAID装置にセカンダリデータを要求し、転送されたセカンダリデータをスペアデバイスに書き込んで復旧させ、
前記コピー応答処理ステップは、障害先のRAID装置からセカンダリデータ要求を受けた際に、対象デバイスのセカンダリデータを読出して要求元に転送することを特徴とするプログラム。
(付記21)
付記20記載のプログラムに於いて、前記排他制御ステップは、前記コピー要求処理ステップのセカンダリデータ要求に先立って前記スペアデバイスに対する排他アクセス権を取得し、転送されたセカンダリデータをスペアデバイスに書き込んだ後に前記排他アクセス権を開放することを特徴とするプログラム。
(付記22)
付記19記載のプログラムに於いて、
前記コピー要求処理ステップは、前記障害デバイスがセカンダリデータを格納していた場合、ミラーリング先のRAID装置にプライマリデータを要求し、転送されたプライマリデータをスペアデバイスに書き込んで復旧させた後に書込み終了を通知し、
前記コピー応答処理ステップは、障害先のRAID装置からプライマリデータ要求を受けた際に、対象デバイスのプライマリデータを読出して要求元に転送することを特徴とするプログラム。
(付記23)
付記22記載のプログラムに於いて、前記排他制御ステップは、前記コピー応答処理ステップが障害先のRAID装置からプライマリデータ要求を受けた際に、アクセス対象デバイスに対する排他アクセス権を取得してプライマリデータを読み出して転送させ、転送後に障害先のRAID装置から前記書込み終了通知を受信して前記排他アクセス権を開放することを特徴とするプログラム。
(付記24)
付記19記載のプログラムに於いて、
前記RAID装置は、ミラーリング先のRAID装置を示すミラー構成情報及びRAID構成デバイスの構成を示すRAID構成情報を保持し、
前記コピー要求処理ステップはデバイス障害時に前記ミラー構成情報からミラーリング先のRAID装置を検索すると共に、前記RAID構成情報から障害デバイスに対応したデバイスを検索してデータを要求することを特徴とするプログラム
(付記25)
付記19記載のプログラムに於いて、前記RAID装置は装置全体でミラーリングしてデータを多重化したことを特徴とするプログラム。
(付記26)
付記19記載のプログラムに於いて、前記RAID装置は管理単位ごとにミラーリング先を変えてデータを多重化したことを特徴とするプログラム。
(付記27)
付記19記載のプログラムに於いて、前記RAID装置は、ネットワーク接続された計算機のクラスタとの各ノードの配下に接続されたことを特徴とするプログラム。
本発明の原理説明図 本発明によるストレージシステムのブロック図 図2のノード装置及びRAID装置の機能構成のブロック図 RAID装置全体をミラー化した場合のデータ修復処理の説明図 図4でプライマリデータを格納したノードの障害発生によるデータ修復処理のタイムチャート 図4でセカンダリデータを格納したノードの障害発生によるデータ修復処理のタイムチャート 図3のノードコントローラによるコピー要求処理のフローチャート 図3のノードコントローラによるコピー応答処理のフローチャート 図7のステップS4のデータ要求処理のフローチャート 図7のステップS5のデータ書込処理のフローチャート RAID装置での管理単位毎にミラー先が異なる本発明のストレージシステムのデータ修復処理の説明図 図11のデータ修復処理で実行されるノードコントローラのコピー要求処理のフローチャート ソフトウェアRAIDモジュールを用いた本発明のノード装置の他の実施形態のブロック図 ストレージエリアネットワークのディスク装置を使用する本発明のノード装置の他の実施形態のブロック図 RAID装置全体をミラー化した従来のストレージシステムの説明図 図15のRAID装置の説明図 RAID装置内の管理領域毎にミラー先の異なる従来のストレージシステムの説明図 従来のRAID装置内で故障ディスク装置のデータを修復する処理の説明図
符号の説明
10,10−1〜10−4:RAID装置
12,12−1〜12−4:ノード装置
14:ネットワーク
15−1:パーソナルコンピュータ
16: ホスト
18,18−11〜18−44:ディスク装置
20−1〜20−4:スペアディスク装置
22:ネットワークインタフェース
24:ノードコントローラ
26:他ノード情報
28:コピー要求処理部
30:コピー応答処理部
32,70:RAIDインタフェース
34,64:ディスクインタフェース
36,66:排他機構
38:RAIDコントローラ
40:RAID構成情報
50,52,54:コピー転送
62:ソフトウェアRAIDモジュール
68:他ノード情報インタフェース
72:RAID構成情報インタフェース
74:ストレージエリアネットワークインタフェース
76:ストレージエリアネットワーク(SAN)

Claims (10)

  1. 複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムに於いて、
    前記RAID装置の各々に、
    RAID構成デバイス及びスペアデバイスを備えた複数のデバイスと、
    上位装置からの要求に対しプライマリデータを格納した前記RAID構成デバイスを対象に要求処理を実行するRAID処理部と、
    RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理部と、
    障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理部と、
    前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他機構と、
    を設けたことを特徴とするストレージシステム。
  2. 請求項1記載のストレージシステムに於いて、
    前記コピー要求処理部は、前記障害デバイスがプライマリデータを格納していた場合、ミラーリング先のRAID装置にセカンダリデータを要求し、転送されたセカンダリデータをスペアデバイスに書き込んで復旧させ、
    前記コピー応答処理部は、障害先のRAID装置からセカンダリデータ要求を受けた際に、対象デバイスのセカンダリデータを読出して要求元に転送することを特徴とするストレージシステム。
  3. 請求項2記載のストレージシステムに於いて、前記排他機構は、前記コピー要求処理部のセカンダリデータ要求に先立って前記スペアデバイスに対する排他アクセス権を取得し、転送されたセカンダリデータをスペアデバイスに書き込んだ後に前記排他アクセス権を開放することを特徴とするストレージシステム。
  4. 請求項1記載のストレージシステムに於いて、
    前記コピー要求処理部は、前記障害デバイスがセカンダリデータを格納していた場合、ミラーリング先のRAID装置にプライマリデータを要求し、転送されたプライマリデータをスペアデバイスに書き込んで復旧させた後に書込み終了を通知し、
    前記コピー応答処理部は、障害先のRAID装置からプライマリデータ要求を受けた際に、対象デバイスのプライマリデータを読出して要求元に転送することを特徴とするストレージシステム。
  5. 請求項4記載のストレージシステムに於いて、前記排他機構は、前記コピー応答処理部が障害先のRAID装置からプライマリデータ要求を受けた際に、アクセス対象デバイスに対する排他アクセス権を取得してプライマリデータを読み出して転送させ、転送後に障害先のRAID装置からの前記書込み終了通知を受信して前記排他アクセス権を開放することを特徴とするストレージシステム。
  6. 請求項1記載のストレージシステムに於いて、
    前記RAID装置は、ミラーリング先のRAID装置を示すミラー構成情報及びRAID構成デバイスの構成を示すRAID構成情報を保持し、
    前記コピー要求処理部はデバイス障害時に前記ミラー構成情報からミラーリング先のRAID装置を検索すると共に、前記RAID構成情報から障害デバイスに対応したデバイスを検索してデータを要求することを特徴とするストレージシステム。
  7. 請求項1記載のストレージシステムに於いて、前記RAID装置は装置全体でミラーリングしてデータを多重化したことを特徴とするストレージシステム。
  8. 請求項1記載のストレージシステムに於いて、前記RAID装置は管理単位ごとにミラーリング先を変えてデータを多重化したことを特徴とするストレージシステム。
  9. 複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化したストレージシステムの処理方法に於いて、
    上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
    RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
    障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
    前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
    を備えたことを特徴とするストレージシステムの処理方法。
  10. 複数のRAID装置をネットワークに接続し、前記RAID装置間でデータをプライマリデータとセカンダリデータにミラーリングして多重化した前記RAID装置のコンピュータに、
    上位装置からの要求に対しプライマリデータを格納した複数のデバイスによるRAID構成デバイスを対象に要求処理を実行するRAID処理ステップと、
    RAID構成により装置内で復旧可能なデバイスの障害発生時に、ミラーリング先のRAID装置に障害デバイスに対応したデバイスのデータを要求し、転送されたデータをスペアデバイスに書き込んで復旧させるコピー要求処理ステップと、
    障害先のRAID装置からデータ要求を受けた際に、対象デバイスのデータを読出して要求元に転送するコピー応答処理ステップと、
    前記RAID構成デバイスのアクセス権と個別デバイスのアクセス権とを排他制御する排他制御ステップと、
    を実行させることを特徴とするプログラム。
JP2005041688A 2005-02-18 2005-02-18 ストレージシステム、処理方法及びプログラム Pending JP2006227964A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005041688A JP2006227964A (ja) 2005-02-18 2005-02-18 ストレージシステム、処理方法及びプログラム
US11/138,267 US20060190682A1 (en) 2005-02-18 2005-05-27 Storage system, method for processing, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005041688A JP2006227964A (ja) 2005-02-18 2005-02-18 ストレージシステム、処理方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2006227964A true JP2006227964A (ja) 2006-08-31

Family

ID=36914198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005041688A Pending JP2006227964A (ja) 2005-02-18 2005-02-18 ストレージシステム、処理方法及びプログラム

Country Status (2)

Country Link
US (1) US20060190682A1 (ja)
JP (1) JP2006227964A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117151A (ja) * 2006-11-02 2008-05-22 Hitachi Information & Control Solutions Ltd 映像蓄積配信システム及び映像蓄積配信方法
JP2008191966A (ja) * 2007-02-06 2008-08-21 Hitachi Ltd ストレージシステム及びその制御方法
JP2009128981A (ja) * 2007-11-20 2009-06-11 Nec Corp ディスクアレイ記憶システムとその新設・増設時における初期化方法、及び初期化プログラム
JP2010256975A (ja) * 2009-04-21 2010-11-11 Nec System Technologies Ltd ディスクアレイ制御装置及び方法並びにプログラム
JP2012504794A (ja) * 2009-02-26 2012-02-23 株式会社日立製作所 Raidグループを備えたストレージシステム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4333846B2 (ja) * 2005-06-10 2009-09-16 富士通株式会社 磁気ディスク装置、その制御方法並びに制御プログラム
TWI285313B (en) * 2005-06-22 2007-08-11 Accusys Inc XOR circuit, RAID device capable of recover a plurality of failures and method thereof
JP4345979B2 (ja) * 2005-06-30 2009-10-14 富士通株式会社 Raid装置、通信接続監視方法及びプログラム
US7752388B2 (en) * 2007-04-24 2010-07-06 International Business Machines Corporation Apparatus and method to store information in multiple holographic data storage media
US8214621B2 (en) * 2009-04-29 2012-07-03 Microsoft Corporation Storage optimization across media with differing capabilities
US8688643B1 (en) * 2010-08-16 2014-04-01 Symantec Corporation Systems and methods for adaptively preferring mirrors for read operations
JP6212934B2 (ja) * 2013-05-07 2017-10-18 富士通株式会社 ストレージシステム、情報処理装置の制御プログラム、およびストレージシステムの制御方法
US10007432B2 (en) * 2015-10-13 2018-06-26 Dell Products, L.P. System and method for replacing storage devices
CN110737393B (zh) * 2018-07-20 2023-08-11 伊姆西Ip控股有限责任公司 数据读取方法、设备和计算机程序产品
DE102021102378A1 (de) * 2021-02-02 2022-08-04 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Konfigurationsdaten-zwischenspeicherung

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US6519677B1 (en) * 1999-04-20 2003-02-11 International Business Machines Corporation Managing access to shared data in data processing networks
US20010044879A1 (en) * 2000-02-18 2001-11-22 Moulton Gregory Hagan System and method for distributed management of data storage
US6985956B2 (en) * 2000-11-02 2006-01-10 Sun Microsystems, Inc. Switching system
US6785783B2 (en) * 2000-11-30 2004-08-31 International Business Machines Corporation NUMA system with redundant main memory architecture
US20020138559A1 (en) * 2001-01-29 2002-09-26 Ulrich Thomas R. Dynamically distributed file system
US20020124137A1 (en) * 2001-01-29 2002-09-05 Ulrich Thomas R. Enhancing disk array performance via variable parity based load balancing
US20020165942A1 (en) * 2001-01-29 2002-11-07 Ulrich Thomas R. Data path accelerator with variable parity, variable length, and variable extent parity groups
US6807611B2 (en) * 2002-04-05 2004-10-19 International Business Machine Corporation High speed selective mirroring of cached data
GB0320494D0 (en) * 2003-09-02 2003-10-01 Ibm Methods apparatus and controllers for a raid storage system
US7376862B2 (en) * 2004-06-24 2008-05-20 International Business Machines Corporation Multiple sourcing storage devices for ultra reliable mirrored storage subsystems
US7263583B2 (en) * 2004-10-05 2007-08-28 International Business Machines Corporation On demand, non-capacity based process, apparatus and computer program to determine maintenance fees for disk data storage system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117151A (ja) * 2006-11-02 2008-05-22 Hitachi Information & Control Solutions Ltd 映像蓄積配信システム及び映像蓄積配信方法
JP2008191966A (ja) * 2007-02-06 2008-08-21 Hitachi Ltd ストレージシステム及びその制御方法
JP2009128981A (ja) * 2007-11-20 2009-06-11 Nec Corp ディスクアレイ記憶システムとその新設・増設時における初期化方法、及び初期化プログラム
JP2012504794A (ja) * 2009-02-26 2012-02-23 株式会社日立製作所 Raidグループを備えたストレージシステム
JP2010256975A (ja) * 2009-04-21 2010-11-11 Nec System Technologies Ltd ディスクアレイ制御装置及び方法並びにプログラム

Also Published As

Publication number Publication date
US20060190682A1 (en) 2006-08-24

Similar Documents

Publication Publication Date Title
JP2006227964A (ja) ストレージシステム、処理方法及びプログラム
US6912669B2 (en) Method and apparatus for maintaining cache coherency in a storage system
JP5285610B2 (ja) グローバルホットスペアディスクが存在するときに、故障したドライブを復元、及びコピーバックする最適化された方法
US7971011B2 (en) Remote copy method and storage system
JP4434543B2 (ja) 分散ストレージシステム、ストレージ装置、およびデータのコピー方法
US6345368B1 (en) Fault-tolerant access to storage arrays using active and quiescent storage controllers
US7975168B2 (en) Storage system executing parallel correction write
CN101755257B (zh) 管理在不同的网络上将写入从首要存储器拷贝到次要存储器
JP5285611B2 (ja) グローバルホットスペアディスクが存在するときに、切断されたドライブを復元、及びコピーバックする最適化された方法
US20060179218A1 (en) Method, apparatus and program storage device for providing geographically isolated failover using instant RAID swapping in mirrored virtual disks
WO2012075845A1 (zh) 分布式文件***
US11204709B2 (en) Storage system and storage control method
JP2006139339A (ja) プログラム、記憶制御方法及び記憶装置
JPH09146842A (ja) 記憶サブシステム
JPH09269871A (ja) ディスクアレイ装置におけるデータ再冗長化方式
JP2011028520A (ja) ディスクアレイ装置及び物理ディスクの復元方法
US8555007B2 (en) Storage system with journal disks dynamically assigned
JP2006114064A (ja) 記憶サブシステム
US11513956B2 (en) Maintaining availability of a non-volatile cache
US20220114061A1 (en) System and Method for Promoting Fractured Volumes
JP2008276281A (ja) データ同期システム、方法、及び、プログラム
JP3614328B2 (ja) ミラーディスク制御装置
JP2011253400A (ja) 分散ミラードディスクシステム、コンピュータ装置、ミラーリング方法およびそのプログラム
JP2002278706A (ja) ディスクアレイ装置
JP5773446B2 (ja) 記憶装置、冗長性回復方法、およびプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090529

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091124