JP2013210959A - ストレージ管理方法、システム、およびプログラム - Google Patents

ストレージ管理方法、システム、およびプログラム Download PDF

Info

Publication number
JP2013210959A
JP2013210959A JP2012082253A JP2012082253A JP2013210959A JP 2013210959 A JP2013210959 A JP 2013210959A JP 2012082253 A JP2012082253 A JP 2012082253A JP 2012082253 A JP2012082253 A JP 2012082253A JP 2013210959 A JP2013210959 A JP 2013210959A
Authority
JP
Japan
Prior art keywords
group
raid
detected
data
raid group
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.)
Granted
Application number
JP2012082253A
Other languages
English (en)
Other versions
JP5884606B2 (ja
Inventor
Kazutaka Ogiwara
一隆 荻原
Yasuo Noguchi
泰生 野口
Tatsuo Kumano
達夫 熊野
Masatoshi Tamura
雅寿 田村
Kazuichi Oe
和一 大江
Toshihiro Ozawa
年弘 小沢
Munenori Maeda
宗則 前田
Takeshi Iizawa
健 飯澤
Jun Kato
純 加藤
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 JP2012082253A priority Critical patent/JP5884606B2/ja
Priority to US13/845,217 priority patent/US8972777B2/en
Publication of JP2013210959A publication Critical patent/JP2013210959A/ja
Application granted granted Critical
Publication of JP5884606B2 publication Critical patent/JP5884606B2/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/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/1088Reconstruction on already foreseen single or plurality of spare disks
    • 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

Landscapes

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

Abstract

【課題】冗長性の回復処理の影響が波及することを抑止する。
【解決手段】複数の制御装置2a,2bは、1または2以上の記憶装置で構成されるグループが割り当てられると、割り当てられたグループを指定したデータを、該グループに属する記憶装置に冗長化して格納するように、データ格納を制御する。情報処理装置3は、データの冗長性が失われたグループが検出されると、検出された該グループが割り当てられた制御装置には、検出された該グループ以外のグループが割り当てられないように、グループの制御装置への割り当て関係を変更する。さらに情報処理装置3は、変更後に検出された該グループが割り当てられた制御装置に、検出された該グループのデータの冗長性の回復処理を実行させる。
【選択図】図1

Description

本発明は、データを冗長化して管理するストレージ管理方法、システム、およびプログラムに関する。
コンピュータシステムで管理するデータの信頼性を向上させる技術として、例えばRAID(Redundant Array of Inexpensive Disks)がある。RAIDでは、複数台のハードディスクを組み合わせて、冗長化された1台の論理的なボリュームとして管理することができる。RAIDには、データ配置やデータの冗長化方法の異なる複数のレベルが定義されている。例えば、RAIDには、同一のデータを複数のディスクに書き込むミラーリング技術(RAID1)や、複数のデータからパリティデータを生成し、失ったデータを、パリティデータを用いて復元可能とする技術(RAID5など)が定義されている。
データを冗長化させて管理していても、ディスクの故障などにより、データの冗長性が損なわれる場合がある。その場合、残ったデータを用いて冗長性を回復させる処理が行われる。データの冗長性を回復させる処理は、リビルド(Rebuild)処理と呼ばれる。
リビルド処理を行う技術として、例えばホットスペアディスクを使用する柔軟性のある磁気ディスク装置のディスクの共有方法が考えられている。この方法では、同一論理ボリューム内の1台の磁気ディスク装置が故障した場合、同一論理ボリューム内の残りの磁気ディスク装置にあるデータを使用して、磁気ディスク装置のオンライン状態で故障した磁気ディスク装置のデータをリビルド機能により復元する。
特開2005−099995号公報
RAIDコントローラは、複数のRAIDグループを制御することができる。制御対象の1つのRAIDグループに属するディスクが故障した場合、そのRAIDグループに対するリビルド処理が実行される。
しかし、RAIDコントローラが制御する複数のRAIDグループの1つに対してリビルド処理が実行されると、RAIDコントローラの負荷が増大し、結果として、そのRAIDコントローラに属する他のRAIDグループが悪影響を受ける。例えば、リビルドを行う必要がない正常なRAIDグループへのアクセスが阻害され、アクセス遅延が生じる。
このような問題は、RAIDグループに限らず、データを冗長化して管理し、冗長性が損なわれた場合に、冗長性の回復処理を行うシステム全般に発生する。
1つの側面では、本発明は、冗長性の回復処理の影響が他の処理に波及することを抑止するシステム、ストレージ管理方法、およびプログラムを提供することを目的とする。
1つの案では、複数の記憶装置と、1または2以上の記憶装置で構成されるグループが割り当てられると、割り当てられたグループを指定したデータを、該グループに属する記憶装置に冗長化して格納するように、データ格納を制御する複数の制御装置と、データの冗長性が失われたグループが検出されると、検出された該グループが割り当てられた制御装置には、検出された該グループ以外のグループが割り当てられないように、検出された該グループ以外のグループの制御装置への割り当て関係を変更し、変更後に検出された該グループが割り当てられた制御装置に、検出された該グループのデータの冗長性の回復処理を実行させる情報処理装置と、を有するシステムが提供される。
1態様によれば、冗長性の回復処理の影響が他の処理に波及することが抑止される。
第1の実施の形態に係るシステムの機能の構成例を示す図である。 第1の実施の形態における割り当て変更とリビルド処理の一例を示す図である。 第2の実施の形態のシステム構成例を示す図である。 サーバのハードウェア構成の一例を示す図である。 管理ユニットとCPUユニットとの内部構造の一例を示す図である。 サーバで実現されるRAID機能の一例を示すブロック図である。 RAIDシステムの第1の状態遷移例における第1の状態を示す図である。 RAIDシステムの第1の状態遷移例における第2の状態を示す図である。 RAIDコントローラとリビルド管理部との内部機能の一例を示すブロック図である。 「RC−A」のRAIDコントローラが有するRAIDグループ管理テーブルの一例を示す図である。 「RC−B」のRAIDコントローラが有するRAIDグループ管理テーブルの一例を示す図である。 RAIDシステム管理部が有するCPU管理テーブルの一例を示す図である。 RAIDシステム管理部が有するディスク管理テーブルの一例を示す図である。 RAIDシステム管理部が有するRAIDグループ管理テーブルの一例を示す図である。 RAIDコントローラへのディスク群の接続手順を示すシーケンス図である。 故障検出時のRAIDコントローラの切り替えおよびリビルド処理の手順の一例を示すシーケンス図である。 RAIDシステムの第2の状態遷移例における第1の状態を示す図である。 RAIDシステムの第2の状態遷移例における第2の状態を示す図である。 RAIDシステムの第2の状態遷移例における第3の状態を示す図である。 RAIDシステムの第2の状態遷移例における第4の状態を示す図である。 RAIDシステムの第3の状態遷移例における第1の状態を示す図である。 RAIDシステムの第3の状態遷移例における第2の状態を示す図である。 RAIDシステムの第3の状態遷移例における第3の状態を示す図である。 RAIDコントローラとディスク群との接続の切り替え制御処理の手順の一例を示すフローチャートである。 縮退RAIDグループ接続切り替え処理の手順の一例を示すフローチャートである。 正常RAIDグループ接続切り替え処理の手順の一例を示すフローチャートである。
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
図1は、第1の実施の形態に係るシステムの機能の構成例を示す図である。第1の実施の形態に係るシステムは、複数の記憶装置1a,1b,1c,1d,1eと、複数の制御装置2a,2b、および情報処理装置3を有する。
記憶装置1a,1b,1c,1d,1eは、データを格納する。
制御装置2a,2bは、1または2以上の記憶装置で構成されるグループ(記憶装置群)が割り当てられると、割り当てられたグループを指定したデータを、そのグループに属する記憶装置に冗長化して格納するように、データ格納を制御する。制御装置2a,2bそれぞれは、記憶装置1a,1b,1c,1d,1eそれぞれとの通信経路を有している。なお、制御装置2a,2bと記憶装置1a,1b,1c,1d,1eとの間の通信経路は、常時接続された経路であってもよいし、スイッチ装置を介して、通信を接続する際に適宜接続される経路であってもよい。1つの制御装置には、例えば0以上のグループを割り当て可能である。換言すると、複数のグループを制御装置に割り当てることが可能であると共に、グループを割り当てない制御装置も存在可能である。
例えば、データの冗長化技術としてRAIDを適用した場合、制御装置2a,2bは、RAIDコントローラに相当する。なお、RAIDコントローラには、RAIDコントローラのロジック回路はもちろん、RAIDコントローラ相当の機能を実現するコンピュータも含む。
情報処理装置3は、データの冗長性が失われたグループが検出されると、検出されたグループが割り当てられた制御装置には、検出されたグループ以外のグループが割り当てられないように、グループの制御装置への割り当て関係を変更する。そして情報処理装置3は、変更後に検出されたグループが割り当てられた制御装置に、検出されたグループのデータの冗長性の回復処理を実行させる。
このように、制御装置2a,2bとは別に管理機構として機能する情報処理装置3が設けられている。情報処理装置3は、制御装置2a,2bと記憶装置1a,1b,1c,1d,1eとの割り当て変更することが可能である。
このようなシステムでは、グループの冗長性が失われると、情報処理装置3の指示に従って、グループの制御装置の割り当てが変更され、その後、リビルド処理が行われる。
図2は、第1の実施の形態における割り当て変更とリビルド処理の一例を示す図である。第1の状態は、正常動作中を示している。図2の例では、記憶装置1a,1bが属するグループ4aと、記憶装置1c,1dが属するグループ4bとが設けられている。2つのグループ4a,4bは、共に制御装置2aに割り当てられている。従って、各グループ4a,4bに格納するデータは、制御装置2aによって冗長化して格納される。
第2の状態は、データの冗長性が失われた状態である。図2の例では、記憶装置1dの故障により、グループ4bのデータの冗長性が失われている。この場合、例えば情報処理装置3により、グループ4bの割り当て先が、制御装置2bに変更される。また、グループ4bから故障した記憶装置1dが除外され、代わりに記憶装置1eがグループ4bに追加される。
第3の状態は、冗長性回復処理(リビルド処理)中を示している。図2の例では、制御装置2bが、記憶装置1cからデータを読み出し、読み出したデータを記憶装置1eに書き込んでいる。このように記憶装置1cから記憶装置1eへデータをコピーすることで、データの冗長性を回復させることができる。
なお図2に示した処理は、以下のように言い換えることができる。
第1の状態では、制御装置2aが、グループ4a(第1の記憶装置群)に含まれる各記憶装置を用いて第1のデータを冗長化して格納する制御を行っている。また制御装置2aが、グループ4b(第2の記憶装置群)に含まれる各記憶装置を用いて第2のデータを冗長化して格納する制御を行っている。第2の状態では、情報処理装置3が、第1の記憶装置群における第1のデータの冗長化した格納状態が失われたことを検出している。そして情報処理装置3が、第2のデータを冗長して格納する前記第2の記憶装置群に含まれる各記憶装置の管理を他の制御装置に変更する処理を実行している。そして第3の状態では、情報処理装置が、制御装置2bを制御することで、第1の記憶装置群に含まれる各記憶装置を用いた第1のデータの冗長化した格納状態を再構築する処理を実行している。
このように、第1の実施の形態では、冗長性が損なわれたグループが発生した場合には、グループが割り当てられていない制御装置2bに、冗長性が損なわれたグループが割り当てられ、その制御装置2bでリビルド処理が行われる。このときグループ4aについては制御装置2aに割り当てられているため、リビルド処理が行われても、正常なグループ4aへのデータアクセスが阻害されない。すなわち、グループ4bの冗長性の回復処理の影響が、グループ4aに波及することが抑止されている。
なお、図1に示す情報処理装置3は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ハードディスクドライブ(HDD:Hard Disk Drive)などを有するハードウェアにより実現することができる。
また、図1に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、データの信頼性保証技術としてRAIDを用いるものである。第2の実施の形態では、サーバ内に実装された複数のCPU(CPUプール)のなかから選択したCPUを、RAIDコントローラとして機能させる。また第2の実施の形態では、サーバ内に実装された複数のHDD(ストレージドライブプール)のなかの数台のHDDを組み合わせて、RAIDグループが構成される。
図3は、第2の実施の形態のシステム構成例を示す図である。サーバ100は、複数のCPUと複数のハードディスクドライブ(HDD)とを内蔵している。サーバ100には、管理用の端末装置21が接続されている。またサーバ100には、ネットワークスイッチ22を介して、ユーザが使用する複数の端末装置31,32,33,34,・・・が接続されている。
図4は、サーバのハードウェア構成の一例を示す図である。サーバ100には、複数のCPUユニット120−1,120−2,120−3,120−4,・・・と複数のHDD131〜142,・・・とが実装されている。複数のCPUユニット120−1,120−2,120−3,120−4,・・・は、CPUプール102に属している。複数のHDD131〜142,・・・は、ストレージドライブプール103に属している。
CPUユニット120−1,120−2,120−3,120−4,・・・は、ネットワークスイッチ22に接続されている。またCPUユニット120−1,120−2,120−3,120−4,・・・は、DAN(Disk Area Network)を介して、複数のHDD131〜142,・・・に接続されている。
DAN101は、CPUユニット120−1,120−2,120−3,120−4,・・・とHDD131〜142,・・・とをインターコネクトする。
DAN101には、管理ユニット110が接続されている。管理ユニット110は、DAN101におけるCPUユニットとHDDとの接続・切断を管理する。また管理ユニット110は、CPUユニットに実行させる機能を管理する。例えば管理ユニット110は、複数のCPUユニット120−1,120−2,120−3,120−4,・・・のなかから、RAIDコントローラとして機能させるCPUユニットを選択する。そして管理ユニット110は、選択したCPUユニットに対してRAIDコントローラとしての動作を指示する。また管理ユニット110には、端末装置21が接続されている。管理ユニット110は、端末装置21を介して、管理者からの指示を受け付ける。
図5は、管理ユニットとCPUユニットとの内部構造の一例を示す図である。管理ユニット110は、CPU111によって装置全体が制御されている。CPU111には、バス117を介してRAM112と複数の周辺機器が接続されている。なお管理ユニット110が有するCPU数は1つに限定されず、複数であってもよい。管理ユニット110が複数のCPUを有する場合、複数のCPUが連係動作し、管理ユニット110を制御する。
RAM112は、管理ユニット110の主記憶装置として使用される。RAM112には、CPU111に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM112には、CPU111による処理に必要な各種データが格納される。
バス117に接続されている周辺機器としては、フラッシュメモリ113、機器接続インタフェース114、通信インタフェース115、およびDAN制御インタフェース116がある。
フラッシュメモリ113は、不揮発性の半導体記憶装置である。フラッシュメモリ113は、管理ユニット110の補助記憶装置として使用される。フラッシュメモリ113には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお補助記憶装置としては、フラッシュメモリ113に代えて、HDDなどの磁気記憶装置を使用することもできる。また管理ユニット110内にフラッシュメモリ113などの補助記憶装置を設けずに、DAN101経由で接続されたHDDの1つを、管理ユニット110の補助記憶装置として使用することも可能である。
機器接続インタフェース114は、管理ユニット110に周辺機器を接続するためのインタフェースである。例えば機器接続インタフェース114には、メモリ装置15やメモリリーダライタ16を接続することができる。メモリ装置15は、機器接続インタフェース114との通信機能を搭載した記録媒体である。メモリリーダライタ16は、メモリカード17へのデータの書き込み、またはメモリカード17からのデータの読み出しを行う装置である。メモリカード17は、カード型の記録媒体である。
通信インタフェース115は、端末装置21との間で通信を行う。通信インタフェース115は、端末装置21から入力されたデータをCPU111に送信する。また通信インタフェース115は、CPU111から送られたデータを、端末装置21に送信する。
DAN制御インタフェース116は、DAN101のスイッチ回路の切り替え指示、およびCPUユニットとの通信を行うインタフェースである。
CPUユニット120−1は、CPU121によって装置全体が制御されている。CPU121には、バス126を介してRAM122と複数の周辺機器が接続されている。なおCPUユニット120−1が有するCPU数は1つに限定されず、複数であってもよい。CPUユニット120−1が複数のCPUを有する場合、複数のCPUが連係動作し、CPUユニット120−1を制御する。
RAM122は、CPUユニット120−1の主記憶装置として使用される。RAM122には、CPU121に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、RAM122には、CPU121による処理に必要な各種データが格納される。
バス126に接続されている周辺機器としては、フラッシュメモリ123、通信インタフェース124、およびホストバスアダプタ(HBA)125がある。
フラッシュメモリ123は、不揮発性の半導体記憶装置である。フラッシュメモリ123は、CPUユニット120−1の補助記憶装置として使用される。フラッシュメモリ113には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお補助記憶装置としては、フラッシュメモリ113に代えて、HDDなどの磁気記憶装置を使用することもできる。またCPUユニット120−1内にフラッシュメモリ113などの補助記憶装置を設けずに、DAN101経由で接続されたHDDの1つを、CPUユニット120−1の補助記憶装置として使用することも可能である。
通信インタフェース124は、ネットワークスイッチ22を介して、端末装置31,32,33,34,・・・と通信を行う。
HBA125は、DAN101を介して、HDD131,132,133,・・・にアクセスする。例えばHBA125は、CPU121からの指示に従って、HDD131,132,133,・・・へのデータの書き込み、またはHDD131,132,133,・・・からのデータの読み出しを行う。
以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお図5には、CPUユニット120−1の内部ハードウェア構成を示したが、他のCPUユニット120−2,120−3,120−4,・・・も同様のハードウェア構成で実現できる。また第1の実施の形態に示した情報処理装置3も、図5に示した管理ユニット110と同様のハードウェアにより実現することができる。
管理ユニット110は、コンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。管理ユニット110に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、管理ユニット110に実行させるプログラムをフラッシュメモリ113に格納しておくことができる。CPU111は、フラッシュメモリ113内のプログラムの少なくとも一部をRAM112にロードし、プログラムを実行する。また管理ユニット110に実行させるプログラムを、メモリ装置15、メモリカード17などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体としては、光ディスクがある。光ディスクには、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。可搬型記録媒体に格納されたプログラムは、例えばCPU111からの制御により、フラッシュメモリ113にインストールされた後、実行可能となる。またCPU111が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。なおプログラムを記録する記録媒体には、一時的な伝搬信号自体は含まれない。
プログラムを流通させる場合には、例えば、そのプログラムが記録された可搬型記録媒体が販売される。また、プログラムを他のコンピュータの記憶装置に格納しておき、ネットワークを介して、他のサーバコンピュータから管理ユニット110にそのプログラムを転送することもできる。管理ユニット110は、ネットワークを介してプログラムを取得する場合、例えば取得したプログラムをフラッシュメモリ113に格納する。そして管理ユニット110のCPU111がフラッシュメモリ113内のプログラムを実行する。また管理ユニット110は、サーバコンピュータからプログラムの一部が転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。
図4、図5に示したハードウェア構成のサーバ100により、サーバ100をRAID装置として機能させることができる。
図6は、サーバで実現されるRAID機能の一例を示すブロック図である。図6の例では、2つのCPUユニット120−1,120−2が、RAIDコントローラ127,128として機能している。RAIDコントローラ127の識別子は「RC−A」、RAIDコントローラ128の識別子は「RC−B」である。
ストレージドライブプール103内のHDDにより、複数のRAIDグループ171〜174が構成されている。RAIDグループ171は、HDD131〜134で構成されている。RAIDグループ172は、HDD135〜138で構成されている。RAIDグループ173は、HDD139〜142で構成されている。RAIDグループ174は、HDD143〜146で構成されている。
HDD147〜150は、未使用状態であり、いずれのRAIDグループにも属していない。
管理ユニット110は、RAIDシステム管理部118として機能する。RAIDシステム管理部118は、CPUユニットを複数のHDDと組み合わせて、RAIDシステムとして動作させ、そのRAIDシステムの運用を管理する。例えばRAIDシステム管理部118は、1つのCPUユニットをRAIDコントローラとして機能させ、複数のHDDを、そのRAIDコントローラで制御されるRAIDグループとして機能させる。またRAIDシステム管理部118は、例えばRAIDグループに含まれるHDDのいずれかで障害が発生した際に、そのHDDが属するRAIDグループのリビルド処理を実行するRAIDコントローラを選択する。そしてRAIDシステム管理部118は、選択したRAIDコントローラへのリビルド処理の実行指示を行う。
なおRAIDコントローラ127,128とRAIDグループ171〜174との間の通信は、RAIDシステム管理部118からの制御によって接続・切断される。例えば障害が発生したRAIDグループのリビルド処理を行う際には、管理ユニット110のRAIDシステム管理部118からの制御によって、リビルド処理対象のRAIDグループを制御するRAIDコントローラの切り替えが行われる。
以下、図7、図8を参照し、リビルド処理対象のRAIDグループを制御するRAIDコントローラの切り替え例について説明する。
図7は、RAIDシステムの第1の状態遷移例における第1の状態を示す図である。図7の例では、4つのRAIDグループ171〜174が、RAIDコントローラ127で制御されている。
端末装置31はRAIDグループ171を使用し、端末装置32はRAIDグループ172を使用し、端末装置33はRAIDグループ173を使用し、端末装置34はRAIDグループ174を使用するものとする。そのため、端末装置31〜34は、RAIDコントローラ127を介して、RAIDグループにアクセスする。
このような状況下で、RAIDグループ174に属するHDD146に障害が発生したものとする。障害の発生は、RAIDコントローラ127で検知される。RAIDコントローラ127は、HDD146での障害の発生を検知すると、障害が発生したHDDの識別番号をRAIDシステム管理部118に通知する。すると、RAIDシステム管理部118の制御により、RAIDグループ174を制御するRAIDコントローラが、RAIDコントローラ127からRAIDコントローラ128に切り替えられる。
図8は、RAIDシステムの第1の状態遷移例における第2の状態を示す図である。故障したHDD146が属していたRAIDグループ174は、RAIDコントローラ128で制御されている。またRAIDグループ174から故障したHDD146が除外され、別のHDD147が追加されている。
HDD147をRAIDグループ174に追加した直後は、RAIDグループ174は、縮退状態(データの冗長性が損なわれている状態)である。そこで、RAIDコントローラ128は、RAIDグループ174のリビルド処理を実行する。リビルド処理では、RAIDコントローラ128は、RAIDグループ174内の既存のHDD143〜145のデータに基づいて、故障したHDD146に格納されていたデータが再現する。そしてRAIDコントローラ128は、再現したデータを、HDD147に書き込む。これにより、RAIDグループ174におけるデータの冗長性が回復する。
このように、リビルドを実行するRAIDコントローラ128は、リビルド対象のRAIDグループ174のみを制御している。また、RAIDグループ174以外のRAIDグループ171〜173は、リビルド処理を実行するRAIDコントローラ128とは別のRAIDコントローラ127で制御されている。これによりRAIDコントローラ128がリビルド処理を実行しても、RAIDコントローラ127を介したRAIDグループ171〜173へのアクセスを、リビルド処理実行前と同等以上の処理効率で実行できる。すなわち、リビルド処理を実行することによる、リビルド対象外のRAIDグループへの悪影響が抑止される。
次に、図7、図8に示すような処理を実現するためのRAIDコントローラ127,128とRAIDシステム管理部118との機能について、詳細に説明する。
図9は、RAIDコントローラとリビルド管理部との内部機能の一例を示すブロック図である。なお図9には、RAIDグループ171をRAIDコントローラ127が制御し、RAIDグループ174をRAIDコントローラ128が制御している状況下での接続関係が示されている。
RAIDコントローラ127は、端末装置31からの要求に応じて、RAIDグループ171にアクセスする。RAIDコントローラ127は、RAIDグループ171を制御するために、データアクセス部127a、管理情報通信部127b、RAIDグループ制御部127c、および記憶部127dを有する。
データアクセス部127aは、RAIDグループ171へのデータアクセスを行う。例えばデータアクセス部127aは、RAIDグループ171を構成するHDD内の物理アドレスを指定したデータの書き込み、またはデータの読み出しを行う。
管理情報通信部127bは、RAIDシステム管理部118との間の管理情報の通信を行う。管理情報としては、例えばHDDの故障を検知した場合に、RAIDコントローラ127からRAIDシステム管理部118に送信する異常通知がある。また別の管理情報としては、例えばRAIDシステム管理部118からRAIDコントローラ127に送信される、RAIDグループの接続指示がある。
RAIDグループ制御部127cは、制御対象のRAIDグループ171を制御する。例えばRAIDグループ制御部127cは、端末装置31からの要求に応じて、RAIDグループ171に対して、RAIDグループ171のRAIDレベルに応じたアクセス制御を行う。例えばRAIDグループ制御部127cは、RAIDグループ171のRAIDレベルがRAID5であれば、データ書き込みの際には、パリティデータを含むデータのストライピングによるデータの書き込み指示を、データアクセス部127aに行う。ストライピングとは、複数のHDDにデータを分散させて格納する技術である。パリティデータは、データの誤り訂正符号である。複数のHDDのうちの1台のHDDの故障によりデータが消失しても、パリティデータと、故障していないHDD内のデータとに基づいて、消失したデータを再生できる。またRAIDグループ制御部127cは、例えばRAIDグループ171のRAIDレベルがRAID1であれば、データ書き込みの際には、データをミラーリング(二重化)した複数のHDDへの書き込み指示を、データアクセス部127aに行う。
またRAIDグループ制御部127cは、制御対象のRAIDグループを構成するHDDの故障を検出する。例えばRAIDグループ制御部127cは、RAIDグループへのデータアクセスがエラーとなった場合、エラーとなったアクセス先のHDDが故障したと判断する。RAIDグループ制御部127cは、HDDの故障を検出した場合、異常通知を、管理情報通信部127bを介してRAIDシステム管理部118に送信する。
さらにRAIDグループ制御部127cは、制御対象のRAIDグループが縮退状態となると、そのRAIDグループに対して、冗長性を回復するためのリビルド処理を実行する。例えばRAIDグループ制御部127cは、RAIDシステム管理部118からのリビルド開始指示に応じて、リビルド処理を開始する。
記憶部127dは、RAIDコントローラ127で制御するRAIDグループの情報を記憶する。例えば記憶部127dには、RAIDグループ管理テーブル127eが格納されている。RAIDグループ管理テーブル127eには、RAIDグループを制御するために使用される各種の情報が登録される。RAIDグループ管理テーブル127eの詳細は後述する(図10参照)。記憶部127dとしては、例えば、CPUユニット120−1のRAM122またはフラッシュメモリ123の記憶領域の一部が使用される。
RAIDコントローラ128は、端末装置34からの要求に応じて、RAIDグループ174にアクセスする。RAIDコントローラ128は、RAIDグループ174を制御するために、データアクセス部128a、管理情報通信部128b、RAIDグループ制御部128c、および記憶部128dを有する。データアクセス部128a、管理情報通信部128b、RAIDグループ制御部128c、および記憶部128dは、それぞれRAIDコントローラ127内の同名の要素と同じ機能を有する。
RAIDシステム管理部118は、RAIDコントローラ127,128に対するリビルド処理の実行指示を行う。なおリビルド処理の実行指示には、リビルドを実行するRAIDコントローラへの、リビルド対象のRAIDグループの接続指示も含まれる。RAIDシステム管理部118は、リビルド処理の実行指示を行うために、管理情報通信部118a、外部通信部118b、コントローラ−ディスク管理部118c、RAIDグループ管理部118d、および記憶部118eを有する。
管理情報通信部118aは、RAIDコントローラ127,128との間で管理情報を通信する。
外部通信部118bは、管理用の端末装置21との間で通信する。例えば外部通信部118bは、端末装置21から、RAIDコントローラとRAIDグループとの接続指示を受信する。外部通信部118bは、受信した接続指示を、コントローラ−ディスク管理部118cに転送する。
コントローラ−ディスク管理部118cは、RAIDコントローラと、そのRAIDコントローラが制御するRAIDグループを構成するHDDとの接続関係を管理する。例えば、コントローラ−ディスク管理部118cは、DAN101を制御し、RAIDコントローラとHDDとの間の通信を接続する。
RAIDグループ管理部118dは、RAIDグループを管理すると共に、RAIDコントローラに対してRAIDグループの制御指示を行う。例えばRAIDグループ管理部118dは、各RAIDグループに適用されているRAIDレベルや、RAIDグループの状態(ステータス)を管理する。RAIDグループのステータスには、例えばそのRAIDグループの冗長性が保たれている状態(正常)や、冗長性が損なわれている状態(縮退)がある。またRAIDグループ管理部118dは、例えば縮退状態のRAIDグループを制御しているRAIDコントローラに対して、リビルド開始指示を行う。
記憶部118eは、RAIDシステム管理部118がRAIDシステムを管理するのに使用する情報を記憶する。例えば記憶部118eには、CPU管理テーブル118f、ディスク管理テーブル118g、およびRAIDグループ管理テーブル118hが格納される。記憶部118eに格納される情報の詳細は後述する(図12〜図14参照)。
なお、図9に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。
次に、各記憶部127d,128d,118eに格納される情報について詳細に説明する。
図10は、「RC−A」のRAIDコントローラが有するRAIDグループ管理テーブルの一例を示す図である。識別子が「RC−A」のRAIDコントローラ127の記憶部127dには、例えば図10に示すようなRAIDグループ管理テーブル127eが格納される。RAIDグループ管理テーブル127eには、RAID−ID、レベル、ステータス、属性、およびディスクリストの欄が設けられている。
RAID−IDの欄には、識別子が「RC−A」のRAIDコントローラ127が制御するRAIDグループの識別子(RAID−ID)が設定される。レベルの欄には、対応するRAIDグループのRAIDレベルが設定される。ステータスの欄には、対応するRAIDグループのステータス(状態)が設定される。ステータスの欄には、例えば正常・縮退・リビルド中・故障のいずれかの状態が設定される。正常の状態とは、冗長性が維持された状態である。縮退の状態とは、冗長性が損なわれており、まだリビルド処理が実施されていない状態である。リビルド中の状態とは、冗長性を回復するためのリビルド処理を実行中の状態である。故障の状態とは、冗長性が損なわれており、かつリビルドが不可能な状態である。例えばRAID5のRAIDグループにおいて複数のHDDが同時に故障すると、リビルド不可能な状態となる場合がある。属性の欄には、対応するRAIDグループの管理に用いられる情報が設定される。例えば、RAIDグループにアクセスするためのIPアドレスが、属性の欄に設定される。ディスクリストの欄には、対応するRAIDグループに属している1以上のHDDの識別子(HDD−ID)が設定される。
図10の例では、RAIDコントローラ127は、RAID−IDが「RAID−a」のRAIDグループを制御している。そのRAIDグループは、HDD−IDが「DISK−A,DISK−B,DISK−C,DISK−D」のHDDを用いて、RAIDレベル「RAID5」で正常に動作している。
図11は、「RC−B」のRAIDコントローラが有するRAIDグループ管理テーブルの一例を示す図である。識別子が「RC−B」のRAIDコントローラ128の記憶部128dには、例えば図11に示すようなRAIDグループ管理テーブル128eが格納される。RAIDグループ管理テーブル128eには、RAID−ID、レベル、ステータス、属性、およびディスクリストの欄が設けられている。RAIDグループ管理テーブル128eの各欄には、図10に示したRAIDグループ管理テーブル127eの同名の欄と同種の情報が設定される。
図11の例では、RAIDコントローラ128は、RAID−IDが「RAID−b」のRAIDグループを制御している。そのRAIDグループは、RAIDレベル「RAID1」で運用されているが、現在そのRAIDグループに属しているHDDは、HDD−IDが「DISK−E,DISK−F」のHDDであるが、一方のHDDの故障によりステータスは縮退となっている。
図12は、RAIDシステム管理部が有するCPU管理テーブルの一例を示す図である。CPU管理テーブル118fには、CPU−ID、ステータス、属性、および接続ディスクリストの欄が設けられている。CPU−IDの欄には、サーバ100に搭載されているCPUユニットの識別子(CPU−ID)が設定される。ステータスの欄には、対応するCPUユニットのステータス(状態)が設定される。CPUユニットの状態としては、例えば割当済・未割当・故障などがある。割当済の状態は、CPUユニットに対して、RAIDコントローラとしての機能が割り当てられている状態である。未割当の状態は、CPUユニットに対して、RAIDコントローラとしての機能が割り当てられていない状態である。故障の状態は、CPUユニットが故障中であることを示す状態である。属性の欄には、対応するCPUユニットの管理に用いる情報が設定される。接続ディスクリストの欄には、対応するCPUユニットに接続されている1以上のHDDの識別子(HDD−ID)が設定される。
図12の例では、識別子が「CPU−01」と「CPU−02」とのCPUユニットがRAIDコントローラとして機能しており、それぞれのCPUユニットにHDDが接続されている。
図13は、RAIDシステム管理部が有するディスク管理テーブルの一例を示す図である。ディスク管理テーブル118gは、DISK−ID、ステータス、属性、および接続CPU−IDの欄が設けられている。DISK−IDの欄には、サーバ100に搭載されているHDDの識別子(DISK−ID)が設定される。ステータスの欄には、対応するHDDのステータス(状態)が設定される。HDDの状態としては、例えば割当済・未割当・故障などがある。割当済の状態は、HDDがRAIDグループに割り当てられている状態である。未割当の状態は、HDDがいずれのRAIDグループにも割り当てられていない状態である。故障の状態は、HDDが故障中であることを示す状態である。属性の欄には、対応するHDDの管理に用いる情報が設定される。接続CPU−IDの欄には、対応するHDDが接続されているCPUユニットの識別子(CPU−ID)が設定される。
図13の例では、識別子が「DISK−A,DISK−B,DISK−C,DISK−D,DISK−E,DISK−F」の各HDDは、RAIDグループに割り当てられている。また識別子が「DISK−G」のHDDは、いずれのRAIDグループにも割り当てられていない。識別子が「DISK−H」のHDDは、故障中である。
図14は、RAIDシステム管理部が有するRAIDグループ管理テーブルの一例を示す図である。RAIDグループ管理テーブル118hには、RAID−ID、レベル、ステータス、属性、接続先CPU、およびディスクリストの欄が設けられている。RAIDグループ管理テーブル118hの接続先CPUを除く各欄には、図10に示したRAIDグループ管理テーブル127eの同名の欄と同種の情報が設定される。ただしRAIDシステム管理部118が有するRAIDグループ管理テーブル118hには、サーバ100内に構築されたすべてのRAIDグループの情報が設定される。接続先CPUの欄には、RAID−IDで示されるRAIDグループを制御しているRAIDコントローラを有するCPUユニットの識別子(CPU−ID)が設定される。
図10〜図14に示した各テーブルに登録された情報を用いて、サーバ100内にRAIDシステムが構築され、そのRAIDシステムが管理される。RAIDシステムの構築では、RAIDコントローラへの複数のHDD(ディスク群)の接続処理が行われる。そして、RAIDコントローラは、接続されたディスク群をRAIDグループとして制御し、そのRAIDグループへのアクセス環境を、端末装置に提供する。
図15は、RAIDコントローラへのディスク群の接続手順を示すシーケンス図である。図15は、RAIDコントローラ127に、端末装置31で使用するRAIDグループ171を接続する場合の処理手順を示している。以下、図15に示す処理をステップ番号に沿って説明する。
[ステップS101]RAIDシステム管理部118は、識別子「RC−A」のRAIDコントローラ127とディスク群とを接続する。例えば管理者が端末装置31に、RAIDコントローラ127へのディスク群の接続指示を入力する。すると端末装置31からRAIDシステム管理部118に、RAIDコントローラ127へのディスク群の接続指示が送信される。RAIDシステム管理部118の外部通信部118bが、接続指示を受信し、受信した接続指示をコントローラ−ディスク管理部118cに転送する。コントローラ−ディスク管理部118cは、DAN101を制御して、RAIDコントローラ127にHDD131〜134を接続する。
コントローラ−ディスク管理部118cは、接続が完了すると、CPU管理テーブル118fとディスク管理テーブル118gとを更新する。例えばコントローラ−ディスク管理部118cは、CPU管理テーブル118fのCPUユニット120−1のCPU−IDに対応するエントリのステータスを「割当済」とし、接続ディスクリストにHDD131〜134のDISK−IDを設定する。またコントローラ−ディスク管理部118cは、ディスク管理テーブル118gのHDD131〜134それぞれに対応するエントリのステータスを「割当済」とし、接続CPU−IDとしてCPUユニット120−1のCPU−IDを設定する。
[ステップS102]RAIDシステム管理部118は、RAIDコントローラ127に対して、HDD131〜134の接続指示を送信する。例えばRAIDシステム管理部118のコントローラ−ディスク管理部118cは、管理情報通信部118aを介して、RAIDコントローラ127へHDD131〜134の接続指示を送信する。
[ステップS103]RAIDコントローラ127は、ディスク群をOSで認識し、ソフトウェア的にディスク群の接続処理を行う。この接続処理は、DAN101を介した通信が可能なように、論理的な接続状態を確立する処理である。例えばRAIDコントローラ127のRAIDグループ制御部127cは、管理情報通信部127bを介して、RAIDシステム管理部118からのHDD131〜134の接続指示を受信する。RAIDグループ制御部127cは、例えばプラグアンドプレイと呼ばれる機能を用いて、DAN経由で接続されたHDD131〜134をOS上で認識する。さらにRAIDグループ制御部127cは、例えば、HDD131〜134との間で通信用のコネクションを確立する。なおRAIDグループ制御部127cは、HDD131〜134の接続指示を待たずに、DAN101経由でHDD131〜134が接続されたことを検出し、OS上でHDD131〜134を認識することもできる。RAIDグループ制御部127cは、ディスク群を接続した場合、RAIDグループ管理テーブル127eに、接続したディスク群を示すエントリを登録する。登録されるエントリには、例えばRAIDグループ171のRAID−ID、RAIDグループ171のRAIDレベル、ステータス「正常」、およびRAIDグループ171を構成するHDD131〜134のDISK−IDのリストが含まれる。
[ステップS104]RAIDコントローラ127は、RAIDグループ171用のエイリアスIPアドレスをOSに設定する。エイリアスIPアドレスとは、RAIDコントローラ127の本来のIPアドレス以外に、ネットワークスイッチ22を介した通信でパケットを受信するためのIPアドレスである。エイリアスIPアドレスを設定することで、RAIDコントローラ127は、RAIDグループ171に一意に対応付けられたIPアドレスを宛先とするパケットを受信することが可能となる。エイリアスIPアドレスをOSに設定後、例えばRAIDコントローラ127は、エイリアスIPアドレスとして設定したIPアドレスを、RAIDグループ管理テーブル127eにおけるステップS103で登録したエントリの属性の欄に設定する。
[ステップS105]RAIDコントローラ127のRAIDグループ制御部127cは、接続されたRAIDグループ171を、iSCSIターゲットディスクとして公開する。RAIDグループ171がiSCSIターゲットディスクとして公開されることで、端末装置からRAIDグループ171への接続が可能となる。
[ステップS106]RAIDコントローラ127のRAIDグループ制御部127cは、ARP(Address Resolution Protocol)テーブルの更新要求を、ネットワークスイッチ22経由でブロードキャスト送信する。ARPテーブルの更新要求には、RAIDグループ171用のIPアドレスが含まれる。
[ステップS107]ブロードキャスト送信されたARPテーブルの更新要求を、端末装置31が受信する。
[ステップS108]RAIDコントローラ127のRAIDグループ制御部127cは、RAIDシステム管理部118に、ディスク群の接続指示に対するレスポンスを送信する。RAIDシステム管理部118では、レスポンスに応じてRAIDグループ管理部118dが、RAIDグループ管理テーブル118hに、RAIDグループ171の情報を含むエントリを登録する。登録されるエントリには、例えばRAIDグループ171のRAID−ID、RAIDグループ171のRAIDレベル、ステータス「正常」、およびRAIDグループ171を構成するHDD131〜134のDISK−IDのリストが含まれる。また登録されるエントリには、接続先のCPUとして、CPUユニット120−1のCPU−ID「CPU−01」が含まれる。さらに、登録されるエントリの属性には、RAIDグループ171用のIPアドレスが設定される。
[ステップS109]端末装置31は、RAIDグループ171用のIPアドレスを指定して、iSCSIターゲットディスク接続要求を送信する。
[ステップS110]RAIDコントローラ127のRAIDグループ制御部127cは、端末装置31から送信されたiSCSIターゲットディスク接続要求を受信する。そしてRAIDグループ制御部127cは、端末装置31に対するiSCSIターゲットディスクの接続処理を行う。
[ステップS111]RAIDコントローラ127のRAIDグループ制御部127cは、iSCSIターゲットディスク接続処理の結果を、端末装置31に応答する。
これにより、端末装置31は、RAIDグループ171のIPアドレスを指定したアクセス要求を送信することで、RAIDグループ171へのアクセスが可能となる。
図15にはRAIDグループ171のRAIDコントローラ127への接続処理を示したが、他のRAIDグループ172〜174も同様にしてRAIDコントローラ127に接続できる。4つのRAIDグループ171〜174がRAIDコントローラ127に接続されると、図7に示した状態となり、4つのRAIDグループ171〜174を用いたRAIDシステムが運用される。そして、いずれかのRAIDグループ内のHDDが故障すると、故障したHDDが属するRAIDグループを制御するRAIDコントローラの切り替えと、リビルド処理とが行われる。
図16は、故障検出時のRAIDコントローラの切り替えおよびリビルド処理の手順の一例を示すシーケンス図である。以下、RAIDグループ174のHDD146(図7参照)が故障した場合を想定し、図16に示す処理をステップ番号に沿って説明する。
[ステップS121]RAIDコントローラ127は、HDD146の故障を検出する。例えばRAIDコントローラ127のRAIDグループ制御部127cは、HDD146へのデータの書き込み、またはHDD146からのデータの読み出しに失敗したときに、HDD146が故障していると判断する。
[ステップS122]RAIDコントローラ127のRAIDグループ制御部127cは、RAIDシステム管理部118に対して、HDD146の故障を示す異常通知を送信する。
[ステップS123]RAIDシステム管理部118のRAIDグループ管理部118dは、RAIDコントローラ127からの異常通知を受信する。そしてRAIDグループ管理部118dは、RAIDコントローラ127に対して、RAIDグループ174の接続解除指示を送信する。
[ステップS124]RAIDコントローラ127のRAIDグループ制御部127cは、RAIDグループ174を制御対象から解除する。さらにRAIDグループ制御部127cは、RAIDグループのIPアドレスの、エイリアスIPアドレスとしての設定を解除する。この際、RAIDグループ制御部127cは、例えばRAIDグループ管理テーブル127eから、RAIDグループ174に対応するエントリを削除する。
[ステップS125]RAIDコントローラ127のRAIDグループ制御部127cは、RAIDシステム管理部118に、接続解除が終了したことを示すレスポンスを送信する。
[ステップS126]RAIDシステム管理部118のRAIDグループ管理部118dは、RAIDコントローラ127からのレスポンスを受信する。そしてRAIDグループ管理部118dは、コントローラ−ディスク管理部118cに、RAIDグループ174の異常ディスクの正常ディスクへの入れ替えと、RAIDグループ174の接続先のRAIDコントローラの切り替えとを指示する。するとコントローラ−ディスク管理部118cは、DAN101を制御し、RAIDコントローラ127と、RAIDグループ174を構成するディスク群(HDD143〜146)の接続を解除する。このときコントローラ−ディスク管理部118cは、CPU管理テーブル118fとディスク管理テーブル118gとを更新する。例えばコントローラ−ディスク管理部118cは、CPU管理テーブル118fのCPUユニット120−1のCPU−IDに対応するエントリの接続ディスクリストから、HDD143〜146のDISK−IDを削除する。またコントローラ−ディスク管理部118cは、ディスク管理テーブル118gのHDD143〜146に対応するエントリのステータスを「未割当」に変更し、接続CPU−IDに設定されているCPU−IDを削除する。
[ステップS127]RAIDシステム管理部118は、RAIDグループ174を構成するディスク群から、HDD146を除外し、HDD147を加える。そしてRAIDシステム管理部118は、DAN101を制御し、RAIDグループ174を構成するディスク群(HDD143〜145,147)を、識別子「RC−B」のRAIDコントローラ128に接続する。このときコントローラ−ディスク管理部118cは、CPU管理テーブル118fとディスク管理テーブル118gとを更新する。例えばコントローラ−ディスク管理部118cは、CPU管理テーブル118fのCPUユニット120−2のCPU−IDに対応するエントリの接続ディスクリストに、HDD143〜145,147のDISK−IDを登録する。またコントローラ−ディスク管理部118cは、ディスク管理テーブル118gのHDD143〜145,147に対応するエントリのステータスを「割当済」に変更し、接続CPU−IDにCPUユニット120−2のCPU−IDを設定する。
[ステップS128]RAIDコントローラ127がRAIDグループ174の接続を解除すると、RAIDグループ174を使用する端末装置34は、RAIDグループ174との間のコネクションの遮断を認識する。
[ステップS129]端末装置43は、RAIDコントローラ127に対して、RAIDグループ174との再接続を試みるが、失敗する。
[ステップS130]一方、識別子「RC−B」のRAIDコントローラ128にストレージ群を接続したRAIDシステム管理部118は、RAIDグループ174用のIPアドレスを含む接続指示を、RAIDコントローラ128に送信する。
[ステップS131]RAIDコントローラ128は、ディスク群(HDD143〜145,147)をOSで認識し、ソフトウェア的にディスク群の接続処理を行う。この処理の詳細は、図15のステップS103の処理と同様である。
[ステップS132]RAIDコントローラ128は、接続指示に含まれるIPアドレスを、RAIDグループ174用のエイリアスIPアドレスとしてOSに設定する。この処理の詳細は、図15のステップS104の処理と同様である。
[ステップS133]RAIDコントローラ128のRAIDグループ制御部128cは、接続されたRAIDグループ174を、iSCSIターゲットディスクとして公開する。
[ステップS134]RAIDコントローラ128のRAIDグループ制御部128cは、ARPテーブルの更新要求を、ネットワークスイッチ22経由でブロードキャスト送信する。
[ステップS135]ブロードキャスト送信されたARPテーブルの更新要求を、端末装置34が受信する。
[ステップS136]端末装置34は、ARPテーブルの更新要求に応じて、自身のARPテーブルを更新する。そして端末装置34は、RAIDコントローラ128を介して、RAIDグループ174との接続処理を行う。この処理の詳細は、図15のステップS109〜S122の処理と同様である。
[ステップS137]RAIDコントローラ128のRAIDグループ制御部128cは、RAIDシステム管理部118に、ディスク群の接続指示に対するレスポンスを送信する。
[ステップS138]RAIDシステム管理部118のRAIDグループ管理部118dは、RAIDコントローラ128に対して、RAIDグループ174のリビルド開始指示を送信する。
[ステップS139]RAIDコントローラ128のRAIDグループ制御部128cは、リビルド開始指示を受信する。
[ステップS140]RAIDコントローラ128のRAIDグループ制御部128cは、RAIDグループ174のリビルド処理を開始する。例えばRAIDグループ174のRAIDレベルがRAID5であれば、RAIDグループ制御部128cは、HDD143〜145のデータおよびパリティデータを用いて、故障したHDD146に格納されていたデータまたはパリティデータを再現する。そしてRAIDグループ制御部128cは、再現したデータまたはパリティデータを、HDD147に格納する。またRAIDグループ制御部128cは、RAIDグループ174のRAIDレベルがRAID1であれば、HDD146と同じデータを格納していたHDD内のデータを、HDD147にコピーする。
以上のようにして、故障したHDDが属するRAIDグループ174をRAIDコントローラ128に接続し、RAIDコントローラ128に、RAIDグループ174のリビルド処理を実行させることができる。
なお図7、図8に示したRAIDコントローラの切り替え例では、HDD146が故障したとき、ディスク群が接続されていないRAIDコントローラ128が存在している。一方、HDD146が故障したとき、ディスク群が接続されていないRAIDコントローラが存在していない場合も考えられる。このような場合、例えば、いずれかのCPUユニットでRAIDコントローラを起動させ、そのRAIDコントローラに縮退RAIDグループが接続される。以下、図17〜図20を参照して、RAIDグループ縮退時に新たなRAIDコントローラを起動する場合の、RAIDシステムの状態遷移について説明する。
図17は、RAIDシステムの第2の状態遷移例における第1の状態を示す図である。第1の状態は、正常運用中の状態である。この状態では、RAIDコントローラ127が、4つのRAIDグループ171〜174を制御している。
図18は、RAIDシステムの第2の状態遷移例における第2の状態を示す図である。第2の状態は、HDD146に異常が発生した状態である。HDD146に異常が発生することで、HDD146が属するRAIDグループ174は縮退状態となる。そこで、RAIDシステム管理部118の制御により、いずれかのCPUユニットを用いて、RAIDコントローラ128が起動される。
図19は、RAIDシステムの第2の状態遷移例における第3の状態を示す図である。第3の状態は、縮退したRAIDグループ174の接続先を、新たに起動したRAIDコントローラ128に切り替えた後の状態である。RAIDコントローラ128には、RAIDグループ174のみが接続されている。そこで、RAIDコントローラ128は、RAIDグループ174のリビルド処理を実行する。その間、他のRAIDグループ171〜173は、RAIDコントローラ127によって平常通り運用される。なお、RAIDグループ174を使用する端末装置34は、RAIDコントローラ128を介して、RAIDグループ174内のデータにアクセス可能である。
図20は、RAIDシステムの第2の状態遷移例における第4の状態を示す図である。第4の状態は、リビルド処理終了後の状態である。リビルド処理が終了したRAIDグループ174は、RAIDコントローラ127に再接続されている。そして、リビルド処理を実行するために起動されたRAIDコントローラ128は、動作が停止している。端末装置34は、RAIDコントローラ127を介して、RAIDグループ174内のデータにアクセス可能となっている。
図17〜図20に示したように、リビルド処理を実行する間だけ新たなRAIDコントローラ128を稼働させることで、リビルド用のRAIDコントローラを予め用意しておく必要がなくなる。しかも、リビルド処理の終了後には、リビルド処理を実行したRAIDコントローラを停止させることで、サーバ100の省電力化を図ることができる。なお図17〜図20に示した動作は、RAIDシステム管理部118の制御によって実行される。
RAIDグループの縮退時に、RAIDグループが接続されていないRAIDコントローラが存在しておらず、かつ新たなRAIDコントローラを起動することもできない場合も考えられる。このような場合、縮退したRAIDグループが接続されているRAIDコントローラから、縮退したRAIDグループ以外のRAIDグループを切り離すことで、リビルド処理を実行することができる。これにより、縮退したRAIDグループ以外のRAIDグループへの悪影響を抑止できる。以下、図21〜図23を参照して、縮退したRAIDグループ以外のRAIDグループを、RAIDコントローラから切り離す場合の、RAIDシステムの状態遷移について説明する。
図21は、RAIDシステムの第3の状態遷移例における第1の状態を示す図である。第1の状態は、正常運用中の状態である。この状態では、RAIDコントローラ127に2つのRAIDグループ171,172が接続され、RAIDコントローラ128にも2つのRAIDグループ173,174が接続されている。RAIDグループ171,172それぞれを使用する端末装置31,32は、RAIDコントローラ127を介してRAIDグループ171,172内のデータにアクセスする。RAIDグループ173,174それぞれを使用する端末装置33,34は、RAIDコントローラ128を介してRAIDグループ173,174内のデータにアクセスする。
図22は、RAIDシステムの第3の状態遷移例における第2の状態を示す図である。第2の状態は、HDD146に異常が発生した状態である。HDD146に異常が発生することで、HDD146が属するRAIDグループ174は縮退状態となる。そしてRAIDコントローラ128からRAIDグループ174が切り離されている。RAIDグループ173は、新たにRAIDコントローラ127に接続されている。この状態で、RAIDコントローラ128は、RAIDグループ174のリビルド処理を実行する。なお、RAIDグループ173を使用する端末装置33は、RAIDコントローラ127を介して、RAIDグループ173内のデータにアクセス可能である。
図23は、RAIDシステムの第3の状態遷移例における第3の状態を示す図である。第3の状態は、リビルド処理終了後の状態である。リビルド処理が終了すると、RAIDグループ173は、再度、RAIDコントローラ128に接続される。これにより、運用状態が、異常発生前と同様となる。
このように図21〜図23の例では、縮退したRAIDグループが接続されているRAIDコントローラから、縮退したRAIDグループ以外のRAIDグループを切り離す。これにより、RAIDグループが接続されていないRAIDコントローラが存在しなくても、リビルド処理の影響を、正常に動作しているRAIDグループに波及させずにすむ。なお図21〜図23に示した動作は、RAIDシステム管理部118の制御によって実行される。
次に、RAIDシステム管理部118における、RAIDコントローラとディスク群との接続の切り替え制御処理について詳細に説明する。
図24は、RAIDコントローラとディスク群との接続の切り替え制御処理の手順の一例を示すフローチャートである。以下、図24に示す処理をステップ番号に沿って説明する。
[ステップS151]RAIDグループ管理部118dは、いずれかのRAIDコントローラから異常通知を受信したか否かを判断する。異常通知を受信した場合、RAIDグループ管理部118dは、処理をステップS152に進める。また異常通知を受信していなければ、RAIDグループ管理部118dは、ステップS151の処理を繰り返す。
[ステップS152]RAIDグループ管理部118dは、異常ディスクが属するRAIDグループ(縮退RAIDグループ)を判断する。例えばRAIDグループ管理部118dは、異常が発生したHDDのDISK−IDを異常通知から抽出する。次にRAIDグループ管理部118dは、抽出したDISK−IDを検索キーとして、RAIDグループ管理テーブル118hを検索する。RAIDグループ管理部118dは、検索で該当したエントリのRAID−IDで示されるRAIDグループを、縮退RAIDグループと判断する。RAIDグループ管理部118dは、検索で該当したエントリの接続先CPUに設定されているCPU−IDのCPUユニットで動作しているRAIDコントローラが、縮退RAIDグループを制御していると判断する。
[ステップS153]RAIDグループ管理部118dは、RAIDグループ管理テーブル118hを参照し、縮退RAIDグループとRAIDコントローラ(接続先CPU)が共通の正常のRAIDグループがあるか否かを判断する。RAIDグループ管理部118dは、該当するRAIDグループがあれば、処理をステップS154に進める。RAIDグループ管理部118dは、該当するRAIDグループがなければ、処理をステップS158に進める。
[ステップS154]RAIDグループ管理部118dは、RAIDグループが未割当のRAIDコントローラを検索する。例えばRAIDグループ管理部118dは、CPU管理テーブル118fを参照し、ステータスが「未割当」のCPUユニットの1つを選択し、縮退RAIDグループの新たな接続先とする。
なおRAIDグループ管理部118dは、選択したCPUユニットと通信し、RAIDコントローラが起動されているか否かを確認することもできる。RAIDグループ管理部118dは、RAIDコントローラが稼働していなければ、選択したCPUユニットに対して、RAIDコントローラの起動を指示することもできる。
[ステップS155]RAIDグループ管理部118dは、RAIDグループが未割当のRAIDコントローラが検出できたか否かを判断する。RAIDグループ管理部118dは、検出できた場合、処理をステップS156に進める。またRAIDグループ管理部118dは、検出できなかった場合、処理をステップS157に進める。
[ステップS156]RAIDグループ管理部118dは、縮退RAIDグループの接続切り替え処理を行う。この処理の詳細は後述する(図25参照)。その後、RAIDグループ管理部118dは、処理をステップS158に進める。
[ステップS157]RAIDグループ管理部118dは、正常RAIDグループの接続切り替え処理を行う。この処理の詳細は後述する(図26参照)。
[ステップS158]RAIDグループ管理部118dは、縮退RAIDグループ内の異常ディスクのRAIDコントローラからの切り離しを、コントローラ−ディスク管理部118cに指示する。またRAIDグループ管理部118dは、代替ディスクと、縮退RAIDグループが接続されているRAIDコントローラとの接続を、コントローラ−ディスク管理部118cに指示する。コントローラ−ディスク管理部118cは、指示に従って、異常ディスクの切り離しと、代替ディスクの接続とを行う。
[ステップS159]RAIDグループ管理部118dは、縮退RAIDグループが接続されているRAIDコントローラに、代替ディスクの接続を指示する。
[ステップS160]RAIDグループ管理部118dは、代替ディスクを接続したことを示すレスポンスを受信したか否かを判断する。RAIDグループ管理部118dは、レスポンスを受信した場合、処理をステップS161に進める。またRAIDグループ管理部118dは、レスポンスを受信していなければ、ステップS160の処理を繰り返すことで、レスポンスを待つ。
[ステップS161]RAIDグループ管理部118dは、縮退RAIDグループが接続されているRAIDコントローラに、リビルド処理の開始を指示する。
[ステップS162]RAIDグループ管理部118dは、リビルド処理が終了したか否かを判断する。例えばRAIDグループ管理部118dは、リビルド処理を実行しているRAIDコントローラから、リビルド終了の通知を受け取ると、リビルド処理が終了したと判断する。RAIDグループ管理部118dは、リビルド処理が終了した場合、処理をステップS163に進める。またRAIDグループ管理部118dは、リビルド処理が終了しなければ、ステップS162の処理を繰り返すことで、リビルド処理の終了を待つ。
[ステップS163]RAIDグループ管理部118dは、RAIDグループとRAIDコントローラとの接続関係を、異常通知前の状態に戻す。例えばRAIDグループ管理部118dは、縮退RAIDグループの接続切り替えを行った場合、以前のRAIDコントローラに接続されるように、リビルドを実施したRAIDグループの接続切り替えを行う。またRAIDグループ管理部118dは、正常なRAIDグループの接続切り替えを行った場合、正常RAIDグループを、リビルドを実施したRAIDグループと同じRAIDコントローラに接続するように、接続切り替えを行う。またRAIDグループ管理部118dは、ステップS154において、CPUユニット上に新たなRAIDコントローラを起動させていた場合、そのRAIDコントローラを停止させる。
次に、縮退RAIDグループ接続切り替え処理の詳細について説明する。
図25は、縮退RAIDグループ接続切り替え処理の手順の一例を示すフローチャートである。以下、図25に示す処理をステップ番号に沿って説明する。
[ステップS171]RAIDグループ管理部118dは、縮退RAIDグループを制御しているRAIDコントローラに対して、縮退RAIDグループの接続解除指示を送信する。例えば接続解除指示には、縮退RAIDグループのRAID−IDが含まれる。
[ステップS172]RAIDグループ管理部118dは、接続解除指示に対する、接続解除が終了したことを示すレスポンスの有無を判断する。RAIDグループ管理部118dは、接続解除が終了したことを示すレスポンスがあった場合、処理をステップS173に進める。またRAIDグループ管理部118dは、接続解除が終了したことを示すレスポンスがなければ、ステップS172の処理を繰り返す。
[ステップS173]RAIDグループ管理部118dは、接続解除が終了したことを示すレスポンスを受信すると、まず、コントローラ−ディスク管理部118cに、縮退RAIDグループに属するディスク群のRAIDコントローラからの切断を指示する。この指示に応じて、コントローラ−ディスク管理部118cは、縮退RAIDグループに属するディスク群と、縮退RAIDグループを制御しているRAIDコントローラとの、DAN101上での接続を切断する。
[ステップS174]RAIDグループ管理部118dは、コントローラ−ディスク管理部118cに、縮退RAIDグループの正常ディスク(異常ディスク以外のHDD)と新たな接続先のRAIDコントローラとの接続を指示する。コントローラ−ディスク管理部118cは、接続指示に応じて、DAN101を制御し、正常ディスクを、ステップS156で接続先に特定されたRAIDコントローラに接続する。
[ステップS175]RAIDグループ管理部118dは、代替ディスクと、新たに接続先となったRAIDコントローラとの接続を、コントローラ−ディスク管理部118cに指示する。例えばRAIDグループ管理部118dは、ディスク管理テーブル118gを参照し、ステータスが「未割当」のHDDを、代替ディスクとして選択する。そしてRAIDグループ管理部118dは、縮退グループを制御するRAIDコントローラへの代替ディスクの接続を、コントローラ−ディスク管理部118cに指示する。するとコントローラ−ディスク管理部118cが、DAN101を制御し、縮退グループを制御するRAIDコントローラに代替ディスクを接続する。
[ステップS176]RAIDグループ管理部118dは、縮退RAIDグループに属するHDDが接続されたRAIDコントローラに、縮退RAIDグループとの接続(通信可能状態の確立)を指示する。
[ステップS177]RAIDグループ管理部118dは、接続の指示に対するレスポンスを受信したか否かを判断する。RAIDグループ管理部118dは、レスポンスを受信した場合、縮退RAIDグループ接続切り替え処理を終了する。またRAIDグループ管理部118dは、レスポンスを受信していなければ、ステップS177の処理を繰り返すことで、レスポンスを待つ。
次に、縮退RAIDグループ接続切り替え処理の詳細について説明する。
図26は、正常RAIDグループ接続切り替え処理の手順の一例を示すフローチャートである。以下、図26に示す処理をステップ番号に沿って説明する。
[ステップS181]RAIDグループ管理部118dは、縮退RAIDグループを制御しているRAIDコントローラに対して、そのRAIDコントローラに接続されている正常なRAIDグループ(単に、正常RAIDグループと呼ぶ)の接続解除指示を送信する。
[ステップS182]RAIDグループ管理部118dは、接続解除指示に対する、接続解除が終了したことを示すレスポンスの有無を判断する。RAIDグループ管理部118dは、接続解除が終了したことを示すレスポンスがあった場合、処理をステップS183に進める。またRAIDグループ管理部118dは、接続解除が終了したことを示すレスポンスがなければ、ステップS182の処理を繰り返す。
[ステップS183]RAIDグループ管理部118dは、接続解除が終了したこと示すレスポンスを受信すると、まず、コントローラ−ディスク管理部118cに、正常RAIDグループに属するディスク群のRAIDコントローラからの切断を指示する。この指示に応じて、コントローラ−ディスク管理部118cは、まず正常RAIDグループに属するディスク群とRAIDコントローラとの、DAN101上での接続を切断する。
[ステップS184]RAIDグループ管理部118dは、コントローラ−ディスク管理部118cに、正常RAIDグループのディスク群と、既に運用されているRAIDコントローラとの接続を指示する。このRAIDコントローラは、縮退RAIDグループが接続されているRAIDコントローラ以外のRAIDコントローラである。コントローラ−ディスク管理部118cは、接続指示に応じて、DAN101を制御し、ディスク群を、RAIDコントローラに接続する。
[ステップS185]RAIDグループ管理部118dは、正常RAIDグループを接続したRAIDコントローラに、正常RAIDグループとの接続(通信可能状態の確立)を指示する。
[ステップS186]RAIDグループ管理部118dは、接続の指示に対するレスポンスを受信したか否かを判断する。RAIDグループ管理部118dは、レスポンスを受信した場合、正常RAIDグループ接続切り替え処理を終了する。またRAIDグループ管理部118dは、レスポンスを受信していなければ、ステップS186の処理を繰り返すことで、レスポンスを待つ。
このような処理により、異常ディスクが属するRAIDグループに対し、運用中の他のRAIDグループとは別のRAIDコントローラでリビルド処理を行うことができる。これにより、リビルド処理を実行しても、リビルド処理対象外のRAIDグループに影響が及ぶことを抑止できる。
以上説明したように、第2の実施の形態では、RAIDグループに属するHDDが故障した場合、縮退したRAIDグループのみが接続されたRAIDコントローラによってリビルド処理が実行される。その結果、リビルド処理を行うことによる、正常なRAIDグループへの悪影響が抑止される。
〔その他の実施の形態〕
第2の実施の形態では、管理ユニットのCPUがプログラムを実行することによってRAIDシステム管理部の機能を実現するものとしたが、プログラムで記述された処理の一部を、電子回路に置き換えることが可能である。例えば、上記の処理機能の少なくとも一部を、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
1a,1b,1c,1d,1e 記憶装置
2a,2b 制御装置
3 情報処理装置
4a,4b グループ
21,31,32,33,34 端末装置
22 ネットワークスイッチ
100 サーバ
101 DAN
102 CPUプール
103 ストレージドライブプール
110 管理ユニット
120−1,120−2,120−3,120−4,・・・ CPUユニット
131〜142,・・・ HDD

Claims (9)

  1. 複数の記憶装置と、
    1または2以上の記憶装置で構成されるグループが割り当てられると、割り当てられたグループを指定したデータを、該グループに属する記憶装置に冗長化して格納するように、データ格納を制御する複数の制御装置と、
    データの冗長性が失われたグループが検出されると、検出された該グループが割り当てられた制御装置には、検出された該グループ以外のグループが割り当てられないように、検出された該グループ以外のグループの制御装置への割り当て関係を変更し、変更後に検出された該グループが割り当てられた制御装置に、検出された該グループのデータの冗長性の回復処理を実行させる情報処理装置と、
    を有するシステム。
  2. 前記情報処理装置は、データの冗長性が失われたグループが検出されると、前記複数の制御装置のなかから、グループが割り当てられていない制御装置を特定し、検出された該グループの割り当て先を、該特定した制御装置に変更する、
    請求項1記載のシステム。
  3. 前記情報処理装置は、データの冗長性が失われたグループが検出されると、前記複数の制御装置のうち、稼働していない制御装置を起動し、検出された該グループの割り当て先を、該起動した制御装置に変更する、
    請求項1記載のシステム。
  4. 前記情報処理装置は、前記起動した制御装置による検出された前記グループのデータの冗長性の回復処理が完了すると、検出された前記グループの割り当て先を、前記起動した制御装置以外の制御装置に変更し、前記起動した制御装置の稼働を停止させる、
    請求項3記載のシステム。
  5. 前記情報処理装置は、データの冗長性が失われたグループが検出されると、検出された該グループと同じ制御装置に割り当てられている他のグループの割り当て先を、該制御装置以外の制御装置に変更する、
    請求項1記載のシステム。
  6. 前記情報処理装置は、検出された前記グループのデータの冗長性の回復処理が完了すると、前記他のグループの割り当て先を、検出された前記グループと同じ制御装置に戻す、
    請求項5記載のシステム。
  7. 情報処理装置が、
    1または2以上の記憶装置で構成され、割り当てられた制御装置によりデータが冗長化して格納されるグループのなかから、データの冗長性が失われたグループが検出されると、検出された該グループが割り当てられた制御装置には、検出された該グループ以外のグループが割り当てられないように、グループの制御装置への割り当て関係を変更し、
    変更後に検出された該グループが割り当てられた制御装置に、検出された該グループのデータの冗長性の回復処理を実行させる、
    ストレージ管理方法。
  8. 1または2以上の記憶装置で構成され、割り当てられた制御装置によりデータが冗長化して格納されるグループのなかから、データの冗長性が失われたグループが検出されると、検出された該グループが割り当てられた制御装置には、検出された該グループ以外のグループが割り当てられないように、グループの制御装置への割り当て関係を変更し、
    変更後に検出された該グループが割り当てられた制御装置に、検出された該グループのデータの冗長性の回復処理を実行させる、
    処理を情報処理装置に実行させるプログラム。
  9. 複数の記憶装置と、
    前記複数の記憶装置のうち1または複数の記憶装置を含む第1の記憶装置群に含まれる各記憶装置を用いて第1のデータを冗長化して格納する制御を行うと共に、前記複数の記憶装置のうち1または複数の記憶装置を含む第2の記憶装置群に含まれる各記憶装置を用いて第2のデータを冗長化して格納する制御を行う制御装置と、
    前記第1の記憶装置群における前記第1のデータの冗長化した格納状態が失われたことを検出すると、前記第2のデータを冗長して格納する前記第2の記憶装置群に含まれる各記憶装置の管理を他の制御装置に変更する処理を実行し、該変更する処理の後に、前記第1の記憶装置群に含まれる各記憶装置を用いた前記第1のデータの冗長化した格納状態を再構築する処理を実行する情報処理装置と、
    を備えたシステム。
JP2012082253A 2012-03-30 2012-03-30 ストレージ管理方法、システム、およびプログラム Active JP5884606B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012082253A JP5884606B2 (ja) 2012-03-30 2012-03-30 ストレージ管理方法、システム、およびプログラム
US13/845,217 US8972777B2 (en) 2012-03-30 2013-03-18 Method and system for storage management

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012082253A JP5884606B2 (ja) 2012-03-30 2012-03-30 ストレージ管理方法、システム、およびプログラム

Publications (2)

Publication Number Publication Date
JP2013210959A true JP2013210959A (ja) 2013-10-10
JP5884606B2 JP5884606B2 (ja) 2016-03-15

Family

ID=49236732

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012082253A Active JP5884606B2 (ja) 2012-03-30 2012-03-30 ストレージ管理方法、システム、およびプログラム

Country Status (2)

Country Link
US (1) US8972777B2 (ja)
JP (1) JP5884606B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6040612B2 (ja) * 2012-07-24 2016-12-07 富士通株式会社 ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
DE102013105516A1 (de) * 2013-05-29 2014-12-04 Weidmüller Interface GmbH & Co. KG Basismodul für ein elektronisches Gerät
JP6213130B2 (ja) * 2013-10-09 2017-10-18 富士通株式会社 ストレージ制御装置、ストレージ制御プログラム及びストレージ制御方法
US10764235B2 (en) * 2018-03-21 2020-09-01 Huawei Technologies Co., Ltd. Method and system for network access discovery

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11296313A (ja) * 1998-04-10 1999-10-29 Hitachi Ltd 記憶サブシステム
JP2004094977A (ja) * 2003-11-27 2004-03-25 Hitachi Ltd ディスクサブシステム
JP2006252328A (ja) * 2005-03-11 2006-09-21 Toshiba Corp ディスクアレイ制御装置、ストレージシステム、およびディスクアレイ制御方法
JP2007102409A (ja) * 2005-10-03 2007-04-19 Hitachi Ltd ストレージシステムの省電力化方法及びストレージシステム
JP2008046986A (ja) * 2006-08-18 2008-02-28 Hitachi Ltd ストレージシステム
JP2008299359A (ja) * 2007-05-29 2008-12-11 Fujitsu Ltd Raid装置及びraid装置のストライプ変換制御方法
WO2009019772A1 (ja) * 2007-08-08 2009-02-12 Fujitsu Limited 記憶部制御装置,データ処理装置,記憶部制御システム,及び記憶部制御プログラム
JP2010140493A (ja) * 2006-06-30 2010-06-24 Seagate Technology Llc 二重アクティブ・コントローラ内のライト・キャッシュ・データのフェイルオーバーおよびフェイルバック
JP2010224954A (ja) * 2009-03-24 2010-10-07 Toshiba Corp ストレージ装置及び論理ディスク管理方法
JP2010267037A (ja) * 2009-05-14 2010-11-25 Fujitsu Ltd ディスクアレイ装置
JP2012194867A (ja) * 2011-03-17 2012-10-11 Fujitsu Ltd ストレージ装置および制御装置
JP2012531653A (ja) * 2009-10-09 2012-12-10 株式会社日立製作所 記憶制御装置及び仮想ボリュームの制御方法
JP2013045118A (ja) * 2011-08-22 2013-03-04 Fujitsu Ltd ストレージシステム、ストレージ制御装置およびストレージ制御方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005055995A (ja) 2003-08-07 2005-03-03 Hitachi Ltd ストレージ制御方法、および、冗長化機能を有するサーバシステム
JP2005099995A (ja) 2003-09-24 2005-04-14 Fujitsu Ltd 磁気ディスク装置のディスク共有方法及びシステム
JP4320314B2 (ja) 2005-08-05 2009-08-26 株式会社日立製作所 計算機システム、同期化処理方法、およびプログラム
JP4842719B2 (ja) * 2006-06-28 2011-12-21 株式会社日立製作所 ストレージシステム及びそのデータ保護方法
EP2092530B1 (en) * 2006-12-07 2012-10-31 Nxp B.V. Method and device for reconfiguration of reliability data in flash eeprom storage pages
JP2009151393A (ja) * 2007-12-18 2009-07-09 Nec Corp 記憶媒体制御装置、記憶媒体管理システム、記憶媒体の制御方法、及び記憶媒体の制御プログラム
US8966310B2 (en) * 2012-11-15 2015-02-24 Elwha Llc Redundancy for loss-tolerant data in non-volatile memory

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11296313A (ja) * 1998-04-10 1999-10-29 Hitachi Ltd 記憶サブシステム
JP2004094977A (ja) * 2003-11-27 2004-03-25 Hitachi Ltd ディスクサブシステム
JP2006252328A (ja) * 2005-03-11 2006-09-21 Toshiba Corp ディスクアレイ制御装置、ストレージシステム、およびディスクアレイ制御方法
JP2007102409A (ja) * 2005-10-03 2007-04-19 Hitachi Ltd ストレージシステムの省電力化方法及びストレージシステム
JP2010140493A (ja) * 2006-06-30 2010-06-24 Seagate Technology Llc 二重アクティブ・コントローラ内のライト・キャッシュ・データのフェイルオーバーおよびフェイルバック
JP2008046986A (ja) * 2006-08-18 2008-02-28 Hitachi Ltd ストレージシステム
JP2008299359A (ja) * 2007-05-29 2008-12-11 Fujitsu Ltd Raid装置及びraid装置のストライプ変換制御方法
WO2009019772A1 (ja) * 2007-08-08 2009-02-12 Fujitsu Limited 記憶部制御装置,データ処理装置,記憶部制御システム,及び記憶部制御プログラム
JP2010224954A (ja) * 2009-03-24 2010-10-07 Toshiba Corp ストレージ装置及び論理ディスク管理方法
JP2010267037A (ja) * 2009-05-14 2010-11-25 Fujitsu Ltd ディスクアレイ装置
JP2012531653A (ja) * 2009-10-09 2012-12-10 株式会社日立製作所 記憶制御装置及び仮想ボリュームの制御方法
JP2012194867A (ja) * 2011-03-17 2012-10-11 Fujitsu Ltd ストレージ装置および制御装置
JP2013045118A (ja) * 2011-08-22 2013-03-04 Fujitsu Ltd ストレージシステム、ストレージ制御装置およびストレージ制御方法

Also Published As

Publication number Publication date
JP5884606B2 (ja) 2016-03-15
US20130262924A1 (en) 2013-10-03
US8972777B2 (en) 2015-03-03

Similar Documents

Publication Publication Date Title
US11163653B2 (en) Storage cluster failure detection
US8086895B2 (en) Management method and system for managing replication by taking into account cluster storage accessibility a host computer
JP6344798B2 (ja) データ送信方法、データ受信方法、及びストレージデバイス
US20190310925A1 (en) Information processing system and path management method
JP4958739B2 (ja) 障害の発生した記憶装置に記憶されているデータを修復するストレージシステム
CN101651559B (zh) 一种存储服务在双控制器存储系统中故障切换的方法
JP6237406B2 (ja) 情報処理装置、ストレージシステム、およびプログラム
JP6199508B2 (ja) 情報記憶システム
JP6089884B2 (ja) 情報処理システム,情報処理装置,情報処理装置の制御プログラム,及び情報処理システムの制御方法
JP2018500648A (ja) クラスタ間冗長構成におけるスムーズな制御部交代
US20070271481A1 (en) Storage controller
JP6040612B2 (ja) ストレージ装置、情報処理装置、情報処理システム、アクセス制御方法、およびアクセス制御プログラム
JP2011128917A (ja) データ割当制御プログラム、データ割当制御方法、およびデータ割当制御装置
WO2013190590A1 (en) Computer system and data migration method
JP2010097385A (ja) データ管理プログラム、ストレージ装置診断プログラム、およびマルチノードストレージシステム
JP2005326935A (ja) 仮想化ストレージを備える計算機システムの管理サーバおよび障害回避復旧方法
WO2016013116A1 (ja) ストレージ装置
JP5884606B2 (ja) ストレージ管理方法、システム、およびプログラム
WO2011042939A1 (en) Storage control device building a logical unit based on storage devices coupled with different switches
US7650463B2 (en) System and method for RAID recovery arbitration in shared disk applications
JP2018073231A (ja) ストレージシステムおよびストレージ装置
JP2008250458A (ja) ストレージシステム及びストレージシステムの管理方法
JP2017041181A (ja) ストレージシステム、ストレージ制御装置、及びストレージ制御方法
JP6569476B2 (ja) ストレージ装置、ストレージシステムおよびストレージ制御プログラム
US20180241820A1 (en) Software-defined storage apparatus, and system and storage method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151214

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: 20160112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160125

R150 Certificate of patent or registration of utility model

Ref document number: 5884606

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150