JP4234730B2 - Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム - Google Patents

Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム Download PDF

Info

Publication number
JP4234730B2
JP4234730B2 JP2006130737A JP2006130737A JP4234730B2 JP 4234730 B2 JP4234730 B2 JP 4234730B2 JP 2006130737 A JP2006130737 A JP 2006130737A JP 2006130737 A JP2006130737 A JP 2006130737A JP 4234730 B2 JP4234730 B2 JP 4234730B2
Authority
JP
Japan
Prior art keywords
raid
disk
raid group
belonging
disks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006130737A
Other languages
English (en)
Other versions
JP2007304728A (ja
Inventor
孝一 塚田
悟史 矢澤
章二 大嶋
達彦 町田
宏和 松林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006130737A priority Critical patent/JP4234730B2/ja
Priority to US11/537,230 priority patent/US7779203B2/en
Publication of JP2007304728A publication Critical patent/JP2007304728A/ja
Application granted granted Critical
Publication of JP4234730B2 publication Critical patent/JP4234730B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • 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/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
    • 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

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)

Description

本発明は、RAID装置における閉塞判定等に関する。
従来のRAIDシステムの概略構成を図11に示す。図11において、RAID装置100は、CM(Centralized Module)101、BRT(Backend Router)102,103、及び複数のディスクから成るRAIDグループ104を有する。尚、図では、RAIDグループ104は1つのみ示すが、実際には複数ある場合が多い。ホスト110は、任意の通信線を介してCM101に対して、任意のRAIDグループへのアクセスを要求する。
CM101は、RAID装置100内における各種ディスクアクセス処理、エラーリカバリ処理等を管理・制御する。BRT102、103は、CM101とRAIDグループ104との間に位置し、CM101とRAIDグループ104とを繋ぐ為のスイッチの役割を果たす。ホスト110がCM101を介してRAIDグループ104にアクセスする経路(パス)は2つあり(図では1つのアクセス経路のみ示しているが)、この2つのアクセス経路の各々にBRT102、103が設けられている。従って、どちらか一方のアクセス経路が何等かの理由(例えば、BRTの故障等)によって使用不可となっても、他方のアクセス経路を用いてアクセスすることができる。
しかしながら、例えば、両方の経路(両系とも)が使用不可となる場合がある。図示の例では、BRT102、103が故障しており、この場合、当然、全てのRAIDグループ104にアクセスすることが出来なくなる(図では、RAIDグループは1つのみであるが、実際には、複数のRAIDグループが存在する場合が多い)。
この様に、RAID装置において、あるRAIDグループへアクセスできなくなった場合、そのままホスト110がアクセス要求し続けると、RAID装置100側でディスク故障と判断し、最終的にはRAIDグループ故障となりユーザデータが消失する可能性がある。また、ホスト110は、アクセス出来ないにも係らずアクセスしようとする為、ホスト処理遅延の原因となる。
その為、アクセスできない理由がディスク要因である場合を除いては、RAIDを一旦閉塞状態にさせる。RAID閉塞とは、上記アクセス出来なくなったRAIDグループの状態を、閉塞前と同じ状態で保持し、ホストアクセスを禁止している状態を意味する。これによって、ユーザデータを保護し、ホストからのアクセスを、即、異常終了とさせる。
ホストアクセスは、閉塞したRAIDグループにおいて、閉塞となった要因が解消された時点から受付可能となる。
ここで問題になるのが、RAID閉塞を行うか否かの判定方法である。
図12に、従来のRAID閉塞判定方法の一例を示す。尚、図12には、判定対象となるRAIDグループがRAID1の場合に対応した閉塞判定方法を示す。
図12に示す表の通り、従来では、各“RAIDが閉塞し得る事象”(装置として発生した事象(3))と“DLU単位での各ディスクの状態”(2)との組み合わせに応じて、RAIDグループを閉塞させるか否かを登録しており、各“RAIDが閉塞し得る事象”のうちの1つが発生したときに、この表を参照して、RAIDグループを閉塞させるか否かを判定する。尚、この表は、例えば、CM101内のメモリ等に記憶されており、この判定はCM101が行う。また、尚、この表において「○」は閉塞させること、「×」は閉塞させないことを意味している。
“RAIDが閉塞し得る事象”は、図示の例では、「ペアとなるBRTの故障」、「ペアとなるBRTのポートの故障」、「ペアとなるBRTの故障(BRT跨ぎ)」、「ペアとなるBRTのポートの故障(BRT跨ぎ)」、「P1がNe(Not Exist)へ遷移」等であるが、これら以外にも様々な事象が発生し得る。
「ペアとなるBRTの故障」とは、例えば上記BRT102、103の両方が故障したことを意味する。従って、この場合には、当然、図示の通り、各ディスクの状態は関係なく、全て「○(閉塞させる)」となる。
「ペアとなるBRTのポートの故障」とは、例えば上記BRT102、103において、同一の1つのRAIDグループに接続しているポートが、両方とも故障した場合である。 また、上記“BRT跨ぎ”とは、同一のRAIDグループに属するディスクが、別々の系統に接続されている場合である。例えば、図15に示すように、BRT0とBRT1の系統に接続されたディスクP1と、BRT2とBRT3の系統に接続されたディスクP2とが、同じRAIDグループである場合である。
また、図12において示す各記号(状態を示す記号)の意味について以下に説明する。
まず、DLUについて説明する。図13(a)、(b)に示すように、RLUはRAIDグループそのものを意味し、DLUは、RLUという論理ボリュームと、ディスクという物理的ボリュームを結合する為の概念である。尚、DISKは、各ハードディスクそのものである。また、尚、図13(a)に示すように、RAID1の場合には、DLUとRLUとは同じ内容となる。よって、図12に示すDLUはRLUに置き換えても良い。
図12に示すP1,P2,HS1,HS2は、1つのRAIDグループを構成する各ディスクに仮に与えた名称である。尚、図13(a)に示す通り、RAID1においてはRAIDグループは2つのディスク(P1,P2)より構成され、ディスクP1,P2の両方に同一のデータが書き込まれるが、実際には更にスペア用のディスク(Hot Spareと呼ぶ)が用意されており、これが図12に示すHS1、HS2である。
また、図12に示すDLU又は各ディスクの状態を示すAv,Br等の記号の意味を、以下に記す。
すなわち、
Av(Available;通常状態)、Br(Broken;故障状態)、Fu(Failed Usable;RAID故障時にRead(読出し)のみ許可状態)、Ex(Exposed;縮退状態)、Ne(Not Exist;loop down等が原因でDiskが一時的に見えなくなる状態)、Rb(Rebuild;Rebuild状態)、Spr(Sparing;Redundant Copy状態)、SiU(Spare In Use;Hot Spare使用状態)、Cp(Copyback;Copyback状態)、SpW(Spr+WF)である。
図12に示す通り、DLU/RLUを構成する各ディスクの上記何れかの状態によって、そのDLU/RLUの状態が決まる。例えば、ディスクP1,P2の両方が通常状態(Av)であれば、当然、DLUは通常状態(Av)となる。これについて、図14を参照して説明する。
図14(a)については、上記の通りであり、この通常状態から、どちらか一方のディスクが故障状態(Br)になったら、そのDLUは縮退状態(Ex)となる(図14(b))。
尚、図12に示す通り、故障状態(Br)ではなく、Ne状態になった場合でも、そのDLUは縮退状態となる。あるいは、例えば、ディスクP1が不調になった為に、ディスクP1をSpr状態にしディスクHS1をRb状態にして、ディスクP1のデータをディスクHS1にコピーしている状態で、更にディスクP2がBrとなった場合も、そのDLUは縮退状態となる。
そして、図14(b)の状態になったら、レイド1では2つ以上のディスクに同一データを格納する必要があるので、上記Hot Spare(ここではHS1)を使用する為に、図14(c)に示す通り、ディスクP1の格納データをディスクHS1にコピーする。この状態では、ディスクHS1はRb状態であり、DLUもRb状態である。そして、コピー完了したら、図14(d)に示す通り、ディスクHS1は通常状態となり、この様にHot Spareを用いて通常運用しているDLUの状態は、SiU状態となる。
また、例えば故障ではないが多少の不具合が生じた為、そのままそのディスク(ここではP2とする)を使い続けるのは不安である場合等には、図14(e)に示すように、ディスクP2をSpr状態にすると共に、Hot Spare(ここではHS1)をRb状態にして、ディスクP2のデータをHot Spareにコピーする。このときのDLUの状態はRedundant Copy(Spr)状態である。
上記Hot Spareを使用して通常運用を行っている状態で、例えばディスクP2が正常になったら、図14(f)に示すように、ディスクP2をRb状態にして、Hot Spareの格納データをディスクP2にコピーする。このときのDLUの状態は、Copyback(Cp)状態となる。
また、図14(g)に示すように、ディスクP1,P2の何れか一方がFu状態、他方がBr状態の場合、DLUはBr状態である。尚、そのRAIDグループが使用不能状態となった場合(ここでは、ディスクP1,P2の両方が故障した場合)、そのときに故障したディスクはBr状態とはしないようにしている。図示の例では最初にディスクP2が故障した為にディスクP2をBr状態にしたが、その後にディスクP1が故障したときには、BrではなくFuとすることで、格納されているデータを少しでも救出するように試みる。尚、RAID1の場合は1台のディスクが故障しただけでは使用不能状態とはならないが、RAID0の場合は一台故障しただけで使用不能状態となるので、Br状態となるディスクは存在しないことになる。
また、DLUがSiU状態となるのは、図14(d)の状態以外にも、図14(h)の状態がある。図14(h)では、図14(d)の状態から更にディスクP1が不調になった為に、ディスクP1をSpr状態にしてそのデータをディスクHS2にコピー中の状態である(当然、ディスクHS2はRb状態である)。
また、図12の図上右端に示すように、例えばディスクP2が、Sprではなく、SpW(Spr+WF)の状態のときも、そのDLUはSpr状態として扱う。この「Spr+WF」について、図14(i),(j)を用いて説明する。
まず、図14(i)に示すように、ディスクP1がAv状態、ディスクP2がSpr状態、ディスクHS1がRb状態で、ディスクP1からディスクHS1にコピーを行っているときに、Writeが発生したものとする。この場合、Writeは、図示の通り、全ディスクに対して行われる。そして、図示の通り、ディスクP2に対するWriteが失敗したものとする。この場合、ディスクP2にはOLDデータが格納されている状態(Write前の状態)である為、ディスクP2からリードすることは出来ない。よって、図14(j)に示す通り、ディスクP2は「Spr+WF」状態にする。但し、この状態でも、ディスクP2からディスクHS1へのコピーは続行する。この状態が、図12の図上右端に示す状態である。
また、特許文献1、特許文献2、特許文献3に記載の公知技術が知られている。
特許文献1の発明は、ディスク装置を有する周辺装置に対する入出力動作要求で障害が発生した場合に、コンピュータによる判断処理の軽減を図ると共に、障害回復処理における無駄なリトライ処理を低減できるエラーリトライ方法である。
特許文献2の発明は、FC-AL接続されているシステムで障害が発生した場合に、各種モニターの連携により、HUBに接続されている装置をポート単位に自動バイパスさせ、T&Dを実行させて障害情報を収集し、ログ情報とペアにして管理する方法である。
特許文献3の発明は、ディスク・サブシステムからの障害通知が、デバイスパスに依存する障害であれば、該当するデバイスパスのみを閉塞してチャネルパスへの影響を防ぐデバイスパス閉塞方式である。
特開2000−132413号公報 特開2000−215086号公報 特開平4−291649号公報
上記図12で説明した従来の方式では、以下の(1)〜(4)等の問題点がある。
(1)“RAIDが閉塞し得る事象”が増えた場合、その都度、この事象を表に追加すると共に、この追加事象と各種“RAIDグループがとりうる状態”との組み合わせに応じたRAID閉塞の可否の設定を行わなければならず、非常に手間が掛かる。
(2)図12に示す表だけでは対応できない事象が発生した場合、例外処理を追加しなければならなかった。
(3)(2)の例外処理を追加していった結果、論理が複雑化し、メンテナンスし難くなる。
(4)“RAIDが閉塞し得る事象”を特定している関係上、論理の共通化ができず、ソースコードの増大に繋がる。
尚、上記特許文献1〜3は、上記問題点を解決することには何等関係がない。すなわち、特許文献1の発明は、ディスク装置に対するリトライ処理に係るものであり、ディスク装置内でのエラー発生時の対処方法とは関係ない。特許文献2の発明は、システムとして、あるサブシステムにおいて障害が発生した場合の、システムとしてのリカバリ方法と障害情報/ログ情報の採取に係るものであり、サブシステム(ここではディスク装置)内でのエラー発生時の対処方法とは関係ない。特許文献3は、デバイスパスに着目し、デバイスパス異常時にはデバイスパスを自律的に閉塞させ、システムへの影響を最小限にする発明であり、デバイスパス閉塞後に閉塞されたデバイスパスに存在するRAIDグループのデータ保護に関するものではない。
本発明の課題は、RAID閉塞の可否の判定処理に係わり、その設定の手間を大幅に軽減し、メンテナンス性を向上させ、コーディング量の削減し、各RAIDレベルに共通の判定論理を用いることができるRAID装置におけるRAID閉塞判定方法、RAID装置、そのコントローラ・モジュール、プログラム等を提供することである。
本発明による第1のコントローラ・モジュールは、複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおいて、前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクの状態又は前記各ディスクへのアクセスパスの有無に基づいて、前記各ディスクを複数のカテゴリに分類して当該分類単位毎に該当するディスクの数を集計し、該各集計結果と予め設定される閾値条件とを比較することによって、該RAIDグループを閉塞させるか否かを判定するRAID管理・制御手段を有する。
上記第1のコントローラ・モジュールでは、“RAIDが閉塞し得る事象”が何であるかに関係なく、所定の分類方法によって分類・集計し、集計結果と閾値条件とを比較することで、RAID閉塞可否を判定できる。この様に、判定論理が共通化できるので、“RAIDが閉塞し得る事象”が増えた場合でも判定論理を追加する必要なく、例外処理の追加等も必要なく、メンテナンス性が向上する。また、各RAIDレベル毎に閾値条件を設定すれば済む。
本発明による第2のコントローラ・モジュールは、複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおいて、該コントローラ・モジュールと外部の任意のホスト装置とのインタフェースであるI/O制御手段と、前記RAID装置内の任意の前記RAIDグループの閉塞可否の判定、閉塞の実行を管理・制御するRAID管理・制御手段とを有し、前記RAID管理・制御手段は、任意の前記RAIDグループの閉塞を実行する場合、該RAIDグループが短時間でリカバリ可能か否かを判定し、短時間でリカバリ可能と判定した場合、その旨を前記I/O制御手段に通知し、前記I/O制御手段は、該通知を受けた場合であって前記ホスト装置が前記閉塞されたRAIDグループへのアクセスを要求した場合には、該ホスト装置に対してダミーの応答を返信する。
RAIDグループの閉塞を実行した場合、通常であれば、ホスト装置からのアクセスは全て受け付けなくなる為、ホスト装置側ではそれまで実行していた処理は異常終了することになる。しかし、閉塞させたRAIDグループが短時間でリカバリ可能な状況であるならば、ホスト側にダミーの応答を返信することで、ホストをしばらく待たせる。これによって、それまで実行していた処理が異常終了されることを回避できる。
本発明のRAID閉塞判定方法、RAID装置、そのコントローラ・モジュール、プログラム等によれば、RAID閉塞の可否の判定処理に係わり、その設定の手間を大幅に軽減し、メンテナンス性を向上させ、コーディング量の削減し、各RAIDレベルに共通の判定論理を用いることができる。
また、RAID閉塞した場合でも、ホスト側でそれまで実行していた処理が異常終了されることを回避できる。
以下、図面を参照して、本発明の実施の形態について説明する。
図1に、本例のRAID装置1の構成図を示す。
図示のRAID装置1は、2つのCM10(10a、10b)、FRT3、BRT4、BRT5、DE6、DE7を有する。
CM10とBRT4、5に関しては、上記従来技術で説明した通りであり、CMはCentralized Module、BRTはBackend Routerである。但し、ここでは、CM10aは、BRT4とBRT5の両系統に接続しており、CM10bも、BRT4とBRT5の両系統に接続している。尚、後述するRAID閉塞可否判定処理等は、CM10a、10bが各々個別に実行する。また、FRT3は、CM10a−10b間の通信を中継制御するものである。
DE(ドライブエンクロージャー)6は、PBC6a,6bと、ディスク群6cを有する。同様に、DE(ドライブエンクロージャー)7は、PBC7a,7bと、ディスク群7cとを有する。そして、例えば、ディスク群6cにおける図示のディスクP1とディスク群6cにおける図示のディスクP2とで、1つのRAIDグループ(例えばRAID1)を形成している。勿論、この例に限らない。例えば、従来技術で説明した「BRT跨ぎ」のRAIDグループが構成されている場合もあり得るし、1つのディスク群内でRAIDグループが構成されている場合もあり得る。更に、複数のRAIDグループがあったときに、全て同じRAIDレベルであるとは限らず、RAIDレベルが異なる場合もあり得る。各RAIDグループのRAIDレベルは、CM10が記憶・管理している。
PBCはポート・バイパス・サーキットである。
BRT4の各ポートはPBC6a、PBC7aに接続しており、BRT5の各ポートはPBC6b、PBC7bに接続しており、各CM10は、BRT4又はBRT5とPBCを介して、ディスク群6c、ディスク群7cにアクセスする。
各CM10は、任意の通信線を介してホスト2(2a、2b)に接続している。各CM10は、I/O制御部21を有しており、I/O制御部21がホスト2とのやりとり(ホストアクセスの受付、応答等)を実行する。また、各CM10は、RAID管理・制御部22を有している。
RAID管理・制御部22は、RAID装置1内の各部品(BRT、PBC等)や各ディスクの状態を随時取得して構成情報22aとして記憶している。これ自体は、従来と同様であるので、特に説明しないし、構成情報22aの具体例も示さない。そして、RAID管理・制御部22は、構成情報22a等を参照し、更に各ディスクに対するアクセスパスをチェックして、RAID閉塞可否の判定を行う。従来でも、上述した通り、構成情報22aにおける各ディスクの状態等を参照して、RAID閉塞可否の判定を行っているが、本発明では判定方法が異なる。本発明の特徴は、主にRAID管理・制御部22にある。すなわち、RAID管理・制御部22によるRAID閉塞可否の判定方法、短時間リカバリ可否の判定方法等にある。詳しくは後述する。
但し、RAID閉塞可否の判定結果自体は、従来と同様である。すなわち、RAIDを閉塞させるべき状態であるか否かを判定する為の根拠(理由)自体は、従来と同じであり、従って判定結果自体は、従来と変わらない。しかし、本手法では、後述する“分類”と“閾値”を用いた判定を行うことで、上述した従来の問題点を解決できる。
尚、RAID管理・制御部22は、RAID閉塞の実行、閉塞の解除等も行っている。
尚、各CM10と各BRT4,5とは、Back Panelによって接続されており、I/F(インタフェース)はFC(ファイバーチャネル)である。各BRT4,5と各DE6,7とは、FCケーブルによって接続されており、I/F(インタフェース)はFC(ファイバーチャネル)である。各DE6,7内の各ディスクは、Back Panelによって接続されており、I/F(インタフェース)はFC(ファイバーチャネル)である。そして、各ディスクへのアクセスは、FCループにより行う。この為、FCループ上の複数のディスクのうち、上流のディスクの不具合等によってループが途切れると、下流のディスクにアクセスできなくなる場合がある。
図2に上記CM10のハードウェア構成図を示す。
図2に示すCM10は、各DI31、各DMA32、2つのCPU33,34、MCH(Memory Controller Hub)35、メモリ36、及びCA37を有する。
DI31は、各BRTと接続するFCコントローラである。DMA32はFRT3に接続する通信回路である。MCH35は、CPU33,34の外部バス等の所謂ホスト側のバスを、PCIバスと接続し、相互に通信できるようにする為の回路である。CA37は、ホストと接続する為のアダプタである。
以下、まず、本発明の第1の実施形態について説明する。
第1の実施形態における後述する各種フローチャートの処理は、メモリ36に予め格納されているアプリケーションプログラムを、CPU33又はCPU34が読出し・実行することにより実現される。尚、これは、後述する第2の実施形態についても同様である。また、後述する図3(b)に示す閾値条件データ等も、予めメモリ36に格納されており、この閾値条件データは後述するように上記閉塞可否判定処理の際に参照される。
図3は、第1の実施形態による閉塞可否判断方法を説明する為の図である。
本例の閉塞可否判断処理は、例えば、上記“RAIDが閉塞し得る事象”の何れかが発生すると処理開始する。本手法では、従来のように各“RAIDが閉塞し得る事象”毎に閉塞可否を登録しておくものではない。“RAIDが閉塞し得る事象”の発生は、単なる処理開始のトリガとなるに過ぎず、閉塞可否の判断は、各ディスクの状態や各ディスクへのアクセスパスの有無等に基づいて、図3(a)に示す基準に従った集計を行い(各ディスクを複数のカテゴリ(ここでは、図示の3種類の集計単位)に分類して、各カテゴリ毎に該当したディスクの数をカウントする)、この集計結果を図3(b)に示す閾値条件と比較することにより行う。
まず、図3(a)について説明する。
ここで、RAID閉塞判定を行ううえでは、任意のRAIDグループ毎に、どのディスクが使用でき、どのディスクが使用できないかを区別し、RAIDグループとしてアクセスが可能なのかを判定する必要がある。
その為、RAIDグループ内の各ディスクを、その状態に応じて分類する。図3(a)に示す通り、“Use Disk”、“Unuse Disk”、“Loop Down Disk”の何れかに分類する。尚、従来で説明した通り、RAIDグループとは上記RLUを意味する。従って、本例の分類・集計処理及び閾値条件との比較・判定処理(つまり、RAID閉塞判定処理)は、RLU単位で行うものである。
基本的には、“Use Disk” はアクセス可能なディスクであり、“Unuse Disk”はアクセスが不可能なディスクである。但し、“Unuse Disk”は、ディスクの故障によってアクセスできなくなった場合が該当する。アクセスパス消失によってアクセスできなくなったディスクは、“Loop Down Disk”に分類するものとし、ディスク故障とは区別する。
以上述べたことを、具体的なディスク状態を示して一覧表にしたものが図3(a)である。
図3(a)に示すように、“Use Disk”に分類されるディスクは、そのディスクの状態が、Available(通常状態)、Failed Usable(RAID故障時にRead(読出し)のみ許可状態)、Sparing(Redundant Copy状態)の何れかの状態であるディスクである。但し、これらの状態であっても、後述する“Loop Down Disk”の条件に該当するものは、“Loop Down Disk”に分類する。
“Unuse Disk” に分類されるディスクは、そのディスクの状態が、“Use Disk”に該当しないディスクである。例えば、Broken(故障状態)、Rebuild、Not Existの何れかの状態であるディスクである(但し、後述する特例2を適用する場合には、この限りではない)。また、Not Existに関しては、後述する(5)のケースに該当する場合には、“Loop Down Disk”にカウントする。
但し、ディスクの状態は、図12に示した種類に限らない。以下、図12には示していないが“Unuse Disk” に分類されるべき状態の例を列挙しておく。但し、本説明においては、図12に示していない状態は考慮せずに説明するものとする。
『・Not Available;ディスクが搭載されていない状態。
・Not Supported;定義よりも容量が小さいディスクが搭載された状態。
・Present;Rebuild/Copyback待ちディスク。
・Readying;ディスク組み込み処理中の状態。
・Spare;Hot Spareとして正常状態のディスク(RAIDグループに含まれない為、Unuse Diskとして扱う) 』
“Loop Down Disk”に分類されるディスクは、以下の(4)、(5)の何れかの条件に該当するディスクである。
(4)Available、Failed Usable、Sparingの何れかの状態であり、且つ当該ディスクのアクセスパスが無い場合
(5)Available、Failed Usable、Sparingの何れかの状態であるが、Not Exist状態へ遷移(変更)途中の場合
但し、特例として、以下の条件が加わる形態もある。
特例1;Redundant中のRebuild Diskは、集計に含めない。
特例2;Sparing状態であっても“Write Failあり”のディスクは、“Use Disk”ではなく、“Unuse Disk” に分類する。
ここで、上記(5)について説明しておく。まず、前提として、図1には示していないが、従来より、CM10は、RAID装置1内の各部品(BRT、PBC等)の状態や各ディスクへのアクセスパスや各ディスクの状態を監視・検出する機能部(RASと呼ぶ)が存在する。そして、RASは、各検出結果を、上記RAID管理・制御部22に通知する。RAID管理・制御部22は、この通知を受けて、自己が保持・管理する構成情報22aを更新する。そして、上記分類の判断は、基本的には、RAID管理・制御部22が、この構成情報22aを参照して行う。
上記(5)における“遷移(変更)途中”とは、RAID管理・制御部22が上記RASから新たなディスク状態の通知を受けたが、未だ構成情報22aの更新を行なっていない状態を意味する。従って、上記(5)の意味は、上記RASが任意のディスクの状態がNot Exist状態に変化したことをRAID管理・制御部22に通知しているが、RAID管理・制御部22が未だこの変化を構成情報22aに反映させていない状況を意味している。
CM(Centralized Module)のRAID管理・制御部22は、上記の通り基本的には構成情報22aを参照して各ディスクの状態を認識し、更に必要に応じてディスクへのアクセスパスをチェックして、これら処理結果に基づいて上記分類を行い、“Use Disk”、“Unuse Disk”、“Loop Down Disk”それぞれに分類されたディスクの数を集計する。そして、図3(b)に示すRAID閉塞閾値表(閾値条件)を参照して集計値と比較して、閉塞可否を判定する。図3(b)に示すRAID閉塞閾値表には、図示の通り、各RAIDレベル毎に対応した閾値条件が格納されており、CMは、判定対象のRAIDグループのRAIDレベルに対応する閾値条件を参照して、上記集計値と比較して、閉塞可否を判定する。集計値が閾値条件に該当する場合には、閉塞させるものと判定する。
図示の通り、判定対象のRAIDグループのRAIDレベルがRAID0の場合には、“Use Disk”の数は関係なく、“Unuse Disk”の数が‘0’で且つ“Loop Down Disk”の数が‘1’以上である場合には、このRAIDグループは閉塞状態にさせるものと判定する。尚、既に従来で述べた通り、RAID0の場合には、“Unuse Disk”は存在し得ない。なぜなら、RAID0の場合、1つでもディスクが故障したら、使用不能状態となるので、上記図14(g)で説明した通り、BrではなくFuとして扱うからである。よって、Rebuildとなるディスクもあり得ないし、Hot Spareにコピー中となることもない。従って「“Unuse Disk”の数が‘0’」という条件は、上記のことを確認の意味で明示しているだけであると考えても良いので、この条件は無くてもよい。
判定対象のRAIDグループのRAIDレベルがRAID1又はRAID0+1の場合には、“Unuse Disk”の数は関係なく、“Use Disk”の数が‘0’で且つ“Loop Down Disk”の数が‘1’以上である場合には、このRAIDグループは閉塞状態にさせるものと判定する。
判定対象のRAIDグループのRAIDレベルがRAID5又はRAID0+5の場合には、2種類の閾値条件のうち、どちらか一方に該当した場合には、RAIDグループは閉塞状態にさせるものと判定する。すなわち、2種類の閾値条件は、どちらも、“Use Disk”の数は関係ない(幾つでもよい)。そして、一方の閾値条件は「“Unuse Disk”の数が‘0’で且つ“Loop Down Disk”の数が‘2’以上」、他方の閾値条件は「“Unuse Disk”の数が‘1’で且つ“Loop Down Disk”の数が‘1’以上」である。
図3(b)に示す閾値は、各RAIDレベル毎に、ユーザデータを保障できなくなる状態を一意に決定する為のものである。例えば、RAID0の場合、ストライピングである為、1台でもディスクが故障すれば、ユーザデータは消失する。RAID1の場合、ミラーリングである為、ディスクが1台故障しても、ミラーディスクが存在しており、ユーザデータは保障される。
以上説明した閉塞可否判定手法では、以下の(1)〜(4)の効果が得られる。
(1)論理共通化によるコーディング量の削減
(2)論理共通化によるメンテナンス性の向上
(3)発生事象が増えても論理を追加・変更する必要がない(処理開始のトリガが増えるだけ)
(4)RAIDレベルが増えても、新たな閾値条件を追加することで対応可能
図4〜図7に、本例のRAID閉塞判定処理のフローチャート図を示す。これらフローチャート図は、基本的には、上記図3(a)、(b)で説明して分類方法、閾値を用いた判定方法を、コンピュータによる実行処理手順として示したものである。尚、ここでいうコンピュータとは、上記CMのことである。CM内のメモリには、図4〜図7に示すRAID閉塞判定処理をCPU33又はCPU34によって実行させる為のプログラムが格納されている。但し、機能的に言えば、図4〜図7に示すフローチャートの処理は、RAID管理・制御部22が行なう。他のフローチャートの処理も同様である。
まず、図4の処理について説明する。図4の処理は、上記特例1、特例2を考慮しない場合の処理である。
図示の処理において、本例のRAID閉塞判定処理(ステップS14以降)は、何等かの部品故障が発生したときに(ステップS11)、この故障によって両系ともFC Loop Down状態となった場合に(ステップS12,YES)実行する。よって、両系ともFC Loop Down状態となる状況にならない場合には(ステップS12,NO)、本処理は実行しない(ステップS13)。
尚、上記ステップS11、S12の判定自体は、従来と同じである。従来では、ステップS12の判定がYESの場合、上述した“RAIDが閉塞し得る事象”を特定する処理を行い、この特定した事象を用いて、図12の表を参照して、RAID閉塞可否を判定していた。
一方、本手法では、上記ステップS12の判定がYESの場合、上記故障部品が接続される全てのRAIDグループを対象として、各RAIDグループ毎にステップS14〜S24の処理を実行する。すなわち、まず、そのRAIDグループ内の各ディスクの状態をチェックする(ステップS14)。そして、各ディスク毎にステップS16〜S21の処理を実行する。
まず、処理対象のディスクの状態が、Av(Available)、Fu(Failed Usable)、Spr(Sparing)の何れかの状態である場合には(ステップS16、YES)、このディスクへのアクセスパス(このディスクから見て上位側のパス)があるか否かをチェックし(ステップS18)、Pathがある場合には(ステップS18,YES)“Use Disk”としてカウントし(ステップS19)、Pathが無い場合には(ステップS18,NO)“Loop Down Disk”としてカウントする(ステップS20)。また、ディスクの状態が、Av、Fu、Spr以外の状態である場合には(ステップS16,NO)、“Unuse Disk”としてカウントする(ステップS17)。
以上の集計処理を、上記処理対象のRAIDグループ内の全てのディスクについて実行したら(ステップS21,YES)、上記処理によって得られた、“Use Disk”、“Unuse Disk”、“Loop Down Disk”のカウント値を用いて、図3(b)に示すRAID閉塞閾値表を参照して(上記処理対象のRAIDグループのRAIDレベルに対応する閾値条件を参照して)、RAID閉塞の可否を判定する(ステップS22)。そして、ステップS22の判定がYESであれば当該RAIDグループを閉塞させ(ステップS23)、NOであれば何も処理しない(ステップS24)。
一方、本手法のRAID閉塞可否判定処理は、上記部品故障発生の場合だけでなく、任意のディスクの状態が変化した場合にも実行する。つまり、上記の通り、RASは、各ディスクの状態を監視・検出してRAID管理・制御部22に通知しており、RAID管理・制御部22は、構成情報22aを参照して、状態が変化したディスクがある場合には図5の処理を開始する。
すなわち、任意のディスクの状態が変化した場合には(ステップS81)、少なくとも当該状態変化したディスクが属するRAIDグループを処理対象として、このRAIDグループに属する全てのディスクの状態をチェックし、各ディスク毎にステップS83〜S93の処理を実行することで、集計を行う。
すなわち、まず、処理対象のディスクの状態(但し、構成情報22aに記録されている状態)が、Av、Fu、Spr以外の状態である場合には(ステップS83,NO)、“Unuse Disk”としてカウントする(ステップS88)。処理対象のディスクの状態が、Av、Fu、Sprの何れかの状態である場合には(ステップS83,YES)、この処理対象ディスクが変更対象ディスク(状態が変化したディスク)であるか否かを判定する(ステップS84)。そして、変更対象ディスクではない場合には(ステップS84,NO)、上記ステップS18,S19,S20と同じ処理を行う(ステップS85,S91,S92)。すなわち、処理対象ディスクへのアクセスパス(このディスクから見て上位側のパス)があるか否かをチェックし(ステップS85)、Pathがある場合には(ステップS85,YES)“Use Disk”としてカウントし(ステップS91)、Pathが無い場合には(ステップS85,NO)“Loop Down Disk”としてカウントする(ステップS92)。
一方、処理対象ディスクが変更対象ディスク(状態が変化したディスク)である場合には(ステップS84,YES)、もし上記Av、Fu、Sprの何れかの状態からNe状態(Not Exist)へ変化したのであれば(ステップS86,YES)、“Loop Down Disk”としてカウントする(ステップS90)。一方、もし上記Av、Fu、Sprの何れかの状態からNe状態(Not Exist)以外の状態に変化したならば(ステップS86,NO)、変化後の状態がAv、Fu、Sprの何れかの状態であれば(ステップS87,NO)、“Use Disk”としてカウントし(ステップS89)、Av、Fu、Spr以外の状態へと変化したのであれば(ステップS87,YES)、“Unuse Disk”としてカウントする(ステップS88)。
そして、全ての処理対象ディスクについて上述した集計処理を実行したら(ステップS93,YES)、ステップS94,S95,S96の処理を実行する。ステップS94,S95,S96の処理は、上記ステップS22,S23,S24の処理と同じであるので、ここでは説明しない。
次に、図6の処理について説明する。図6の処理は、図4の処理において上記特例1を考慮した処理である。図6において図4の処理と同じ処理ステップには同じステップ番号を付してあり、その説明は省略するものとし、以下、図4の処理と違う部分についてのみ説明する。尚、ここでは、図4の処理に上記特例1を適用した処理を示すが、当然、図5の処理に上記特例1を適用してもよい。この処理は特に図示しないが、上記ステップS83の判定がNOの場合に、後述するステップS31の処理が加わることになる。
図6の処理が図4の処理と異なる点は、ステップS16の判定がNOとなった場合に、図示のステップS31の処理が加わっている点である。ステップS31の処理は、処理対象ディスクがRedundant Copy中のCopy先Disk( Redundant中のRebuild Disk)であるか否かを判定し、そうである場合には(ステップS31,YES)、ステップS17の処理は実行しないようにする処理である。ステップS31の判定がNOであれば、“Unuse Disk”としてカウントする(ステップS17)。
すなわち、図4の処理では、ステップS16の判定がNOであれば必ず“Unuse Disk”としてカウントしたが、本処理では、処理対象ディスクがRedundant Copy先Diskである場合には集計対象から除外する。
次に、図7の処理について説明する。図7の処理は、上記特例1、特例2の両方を考慮した処理である。図7において図6の処理と同じ処理ステップには同じステップ番号を付してあり、その説明は省略するものとし、以下、図6の処理と違う部分についてのみ説明する。
図7の処理が図6の処理と異なる点は、ステップS18の判定がYESとなった場合に、上記ステップS19の処理の代わりに、図示のステップS41〜S43の処理を実行する点である。
ステップS18の判定がYESとなる場合、すなわち、処理対象ディスクの状態がAv(Available)、Fu(Failed Usable)、Spr(Sparing)の何れかの状態であり且つPathが存在する場合には、上記図4、図6の処理では必ず“Use Disk”としてカウントしたが、本処理では、処理対象ディスクが“Sparing状態で且つWrite失敗あり”の状態である場合には(つまり、上記図12に示すSpWの状態であれば)(ステップS41,YES)、“Unuse Disk”としてカウントする(ステップS42)。勿論、これ以外の場合には(ステップS41,NO)、“Use Disk”としてカウントする(ステップS43)。
尚、ここでは、図4の処理に上記特例1、特例2を適用した処理を示すが、当然、図5の処理に上記特例1、特例2を適用してもよい。この処理は特に図示しないが、上記ステップS83の判定がNOの場合に対して上記ステップS31の処理が加わり、ステップS91の処理の代わりに上記ステップS41,S42,S43の処理を行うことになる。
以上説明した処理を、具体例を挙げて説明する。
まず、図8(a)に具体例の1つを示す。ここでは、RAIDレベルがRAID1のRAIDグループの2つのディスクP1,P2のうち、ディスクP1がBr状態(故障状態)、ディスクP2がAv状態(通常状態)であったが、何等かの原因でディスクP2に対するアクセスパスが消失した例を示す。この例では、図4の処理を実行すると、ディスクP1に関してはステップS16でNOとなるので“Unuse Disk”としてカウントし、ディスクP2に関してはステップS18でNOとなるので“Loop Down Disk”としてカウントする。尚、Br状態のディスクは、通常、RAIDグループから外れるものとして管理されるが、図8(a)の例から明らかなように、本例の集計処理に関してはBr状態のディスクもRAIDグループに属するものとして集計対象に含めている。
従って、集計結果は、“Use Disk”=‘0’、“Unuse Disk”=‘1’、“Loop Down Disk”=‘1’となる。図3(b)においてRAID1に対応する閾値は、“Unuse Disk”=‘1’、“Loop Down Disk”=‘1以上’であるので、閉塞条件に合致し、当該RAIDグループは閉塞させるものと判定される。
図8(a)のような例であれば、図4の処理であっても問題なく閉塞可否を判定できる。しかし、本処理は、冗長性が無いRAIDグループを対象に考えている為、例えばRedundant Copy等のように冗長性を保ちながらRebuildするケースを想定していない為、誤判定が生じる場合がある。
その一例を図8(b)に示す。尚、図8(b)のRAIDグループのRAIDレベルはRAID5であるものとする。
図8(b)に示す通り、この例では、ディスクP2が故障(Br)した為、上記Hot Spare(ここではHS1)を使用し、ディスクHS1がAv状態になった。その後、ディスクP1にも不具合が生じた為、ディスクP1をSpr状態にして、Hot Spare(ここではHS2)に対してディスクP1のデータをコピーする処理(Redundant Copy)を実行している。しかし、コピー処理実行中に、ディスクP1に対するアクセスパスが、何等かの理由により消失してしまったケースを示している。
この様なケースでは、このRAIDグループは閉塞させなければならない。
しかしながら、図4の処理に従うと、ディスクP1はステップS18でYESとなるので“Loop Down Disk”としてカウントされ、ディスクHS1は“Use Disk” としてカウントされ、ディスクP2とHS2は“Unuse Disk”としてカウントされるので、集計結果は以下の通りとなる。
“Use Disk”=‘1’、“Unuse Disk”=‘2’、“Loop Down Disk”=‘1’
一方、図3(b)において、RAID5に対応する閉塞条件は、以下の2種類ある。
・“Unuse Disk”=‘0’、“Loop Down Disk”=‘2以上’
・“Unuse Disk”=‘1’、“Loop Down Disk”=‘1以上’
従って、上記集計結果は、上記2種類の閉塞条件のどちらにも該当しないので、閉塞しないと判定されてしまう。
この為、上記特例1を採用しており、図6の処理を実行する。すなわち、Redundant Copy中のCopy先Disk(この例ではディスクHS2)は、集計対象から除外する。よって、図6の処理を実行した場合の集計結果は以下の通りとなる。
“Use Disk”=‘1’、“Unuse Disk”=‘1’、“Loop Down Disk”=‘1’
従って、上記2種類の閉塞条件のうち、
・“Unuse Disk”=‘1’、“Loop Down Disk”=‘1以上’
に該当することになるので、当該RAIDグループは閉塞させるものと判定される(誤判定しない)ことになる。
次に、以下、特例2を用いる理由について、具体例を用いて説明する。
まず、既に説明してあるが、図12の図上右側に示すように、Redundant Copy(Sparing)には、“Write失敗あり”(SpW)という状態が存在する。この状態は、Redundant Copyの完了率を向上させる為に設けられたものである。すなわち、上記従来技術で説明した通り、全てのディスクに対してWriteを行った結果、Redundant Copyのコピー元でWriteが失敗する場合がある。この場合に、直ぐに故障状態とはせずに、Copyを継続させる場合がある。この状態の一例を図8(c)に示す。図8(c)に示す一例では、ディスクP2とHS1はAv状態であり、ディスクP1をコピー元としてディスクHS2をコピー先としてRedundant Copyを実行したが、ディスクP1でWriteが失敗している。この場合、図示の通り、ディスクP1の状態は、Br状態とはせずに、“Spr+WF”状態とし、コピーを継続させる。この状態で、図示の例では、ディスクP2に対するアクセスパスが、何等かの理由により消失してしまったケースを示している。
ここで、上記Writeが失敗しているディスクP1は、Old Dataが書かれている為、このディスクP1からReadすることはできない。また、RAID5の場合は、Read可能なディスク(Av状態のディスク)が最低2つ残っていなければならず、図8(c)に示す状態では、閉塞させなければ、Old DataがReadされ、データ化けに繋がる可能性がある。
しかしながら、図8(c)の状態に対して図6の処理を実行すると、集計結果は以下の通りとなる。
“Use Disk”=‘2’、“Unuse Disk”=‘0’、“Loop Down Disk”=‘1’
従って、上記2種類の閉塞条件のどちらにも該当しないので、閉塞しないことになってしまう。そこで、図7の処理では、ディスクP1は、“Use Disk”ではなく、“Unuse Disk”としてカウントするようにしている。つまり、Writeが失敗したRedundant Copyのコピー元ディスクは、故障状態と同様に扱い、RAIDグループの状態は冗長性がない状態と同じに扱う。
図8(c)の状態に対して図6の処理を実行すると、集計結果は以下の通りとなる。
“Use Disk”=‘1’、“Unuse Disk”=‘1’、“Loop Down Disk”=‘1’
従って、上記2種類の閉塞条件の一方に該当することになるので、当該RAIDグループは閉塞させるものと判定される(適切な判定が行われる)。
ところで、ここで、以上説明した図4〜図7の何れかの処理、あるいは上記従来技術又は何等かの既存技術によって、任意のRAIDグループを閉塞させた場合、当然、ホスト装置からのアクセスは全て受け付けなくなる為、ホスト装置側ではそれまで実行していた処理は異常終了することになる。これは、ミッションクリティカルなシステムであれば問題無いが(下手にアクセスを滞らせるより、処理を、即、中止させたほうが、システム的に影響は少ない)、そうでないシステム(ホスト側で、レスポンス時間が長くなってもよいから、RAID装置の復旧を優先させてほしいような事情があるシステム)を考慮して、以下の第2の実施形態を提案する。すなわち、閉塞したRAIDグループの復旧に時間が掛かるならば仕方ないが、短時間で復旧出来る場合には、実際はRAIDグループは閉塞していても、ホストに対しては閉塞を知らせない方がよいと考えられる。
この為、第2の実施形態では、実際はRAIDグループは閉塞していても、短時間で復旧出来る場合には、ホストアクセスに対してダミーの応答(ここでは、Busy)を返すようにする。Busyを返された場合、ホストは、しばらく時間をおいてリトライ処理を行うことになり、それまで実行していた処理を異常終了することにはならない。リトライ処理に対してもBusyを返す。この様にして、ホストがリトライ処理を繰返している間に、閉塞したRAIDグループを復旧させる(リカバリ処理を行う)。但し、リカバリが失敗した場合には、ホストが延々とリトライ処理を繰返すことになるので、結果的にシステムに悪影響を与える為、即時、RAID閉塞の発生を通知する。
短時間でリカバリ可能な場合とは、以下の場合である。
(a)RAID装置による自動リカバリ機能が動作する部品故障の場合(但し、自動リカバリ機能が動作する故障と動作しない故障が同時に発生した場合は、短時間でリカバリ可能な場合として扱う。2つのBRTによる2系統によってアクセスする為、一方の系統だけでも自動リカバリ機能によって復旧すれば、使用可能となるからである。)。
(b)あるディスクの故障により他のディスクがSpindownしてしまうような部品故障の場合
上記(a)に関して、具体的には、例えば、BRTのポートが故障した場合、CE(作業者:人)が強制的に故障させた場合等には、自動リカバリ機能は動作しない。一方、同じくBRTのポートが故障した場合に、RAID装置側で異常として切り離した場合(例えばPBCが異常と判断したディスク切り離した場合)は、自動リカバリ機能が動作する。
上記PBCが異常と判断したディスク切り離すことについて説明する。例えば、BRTの任意のポートに複数のディスクA,B,Cが接続されてFCループを形成している場合であって、ディスクA→ディスクB→ディスクCの順にループするとした場合に、仮にディスクAが不調になってループが途切れてしまうと、実際にはディスクAが原因であっても、BRTのポートが故障したと判定されてしまう場合がある。この場合、PBCが従来より有するチェック機能により各ディスクをチェックすると、ディスクAが原因であることが分かるので、PBCがディスクAを切り離せば、問題は解決する。
RASは、RAID管理・制御部22に故障発生を通知する際に、どのルートで故障と判断したのか(上記例では、作業者によるものか、装置側で判断したのか)という情報(Factor)を付加して通知する。RAID管理・制御部22は、この情報(Factor)も、構成情報22a内に記録する。上記自動リカバリ機能が動作するものであるか否かの判定は、構成情報22aを参照して行ってもよいし、Factorを構成情報22aに反映させるタイミングで行っても良い。これは上記(b)に関して同様である。すなわち、部品故障だけでなく、ディスクについても故障と扱う場合には、上記Factorが付加され、構成情報22aに反映されるので、このFactorを参照して上記判断を行う。
図9に、上記図7の処理に基づく上記第2の実施形態の処理フローチャート図を示す。
図9において、図7における処理ステップと同じ処理ステップには、同一のステップ番号を付してあり、その説明は省略する。
図7の処理では、ステップS22においてRAIDを閉塞する(ステップS22,YES)と判定した場合には、ステップS23の処理(RAIDを閉塞させる処理)を実行したが、図9の処理では、ステップS23の代わりに、ステップS51〜S53の処理を実行する。
すなわち、上記ステップS22の判定がYESの場合、このRAID閉塞の原因となった故障が、上記(a)、(b)の何れかの部品故障であるか否かを判定し(ステップS51)、上記(a)、(b)の何れかの部品故障である場合には(ステップS51,YES)、RAIDグループを閉塞させると共に、I/O制御部21に対してリカバリ中である旨を通知する(ステップS52)。この通知を受けたI/O制御部21は、上記ホストアクセスに対してダミーの応答(ここでは、Busy)を返す。
一方、上記(a)、(b)の部品故障に該当しない場合には(ステップS51,NO)、図7の場合と同様、通常通りのRAID閉塞処理を実行する(ステップS53)。
図10に、RAID閉塞からの復旧時の処理フローチャート図を示す。
図10において、ステップS61〜S66の処理は、従来通りの処理である。すなわち、故障部品が、部品交換や自動リカバリ等を経て再びシステムに組み込み可能となり(ステップS61)、組み込みに成功したならば(ステップS62,YES)、RAID復旧判断処理を実施する(ステップS63)。そして、RAIDを復旧できると判定したならば(ステップS64,YES)、そのRAIDグループを復旧させる(ステップS65)。RAIDを復旧できないと判定したならば(ステップS64,NO)、何もしない。
ここで、組み込みに失敗したならば(ステップS62,NO)、通常であれば何も行わないが(ステップS69)、上記ステップS52の処理を行っていた場合(ステップS67,YES)、ホストはリトライ処理を続けていることになるので、リカバリ失敗をI/O制御部21に通知して、ホストアクセスをError終了させる必要がある(ステップS68)。
以上説明したように、第2の実施形態では、RAID閉塞が生じても短時間で復旧可能な場合には、ホストをしばらく待たせておき、RAID復旧完了と同時にホストアクセスを許可するので、ホストアクセスを異常終了させずにアクセスを再開させることができる。一方、もしRAID復旧失敗した場合には、即、ホストアクセスを異常終了させ、ホストが無駄なリトライ処理を続けないようにする。
(付記1) 複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおいて、
前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクの状態又は前記各ディスクへのアクセスパスの有無に基づいて、前記各ディスクを複数のカテゴリに分類して当該分類単位毎に該当するディスクの数を集計し、該各集計結果と予め設定される閾値条件とを比較することによって、該RAIDグループを閉塞させるか否かを判定するRAID管理・制御手段、
を有することを特徴とするコントローラ・モジュール。
(付記2) 前記複数のカテゴリは、“Use Disk”、“Unuse Disk”、“Loop Down Disk”であり、
前記閾値条件は各RAIDレベル毎に設定され、前記判定は処理対象の前記RAIDグループのRAIDレベルに応じた閾値条件を用いて行うことを特徴とする付記1記載のコントローラ・モジュール。
(付記3) 基本的には、前記“Use Disk”はアクセス可能なディスクであり、前記“Unuse Disk”はディスクの故障によってアクセスできないディスクであり、前記“Loop Down Disk”はアクセスパス消失によってアクセスできないディスクであることを特徴とする付記1又は2記載のコントローラ・モジュール。
(付記4) 前記RAIDレベルがRAID0の場合、前記閾値条件は、“Unuse Disk”が0且つ“Loop Down Disk”が1以上であり、
RAIDレベルがRAID0の前記RAIDグループであって前記集計結果が該閾値条件に該当したRAIDグループは、閉塞させると判定することを特徴とする付記2記載のコントローラ・モジュール。
(付記5) 前記RAIDレベルがRAID1又はRAID0+1の場合、前記閾値条件は、“Use Disk”が0且つ“Loop Down Disk”が1以上であり、
RAIDレベルがRAID1又はRAID0+1の前記RAIDグループであって前記集計結果が該閾値条件に該当したRAIDグループは、閉塞させると判定することを特徴とする付記2記載のコントローラ・モジュール。
(付記6) 前記RAIDレベルがRAID5又はRAID0+5の場合、前記閾値条件は、“Unuse Disk”が0且つ“Loop Down Disk”が2以上、又“Unuse Disk”が1且つ“Loop Down Disk”が1以上であり、
RAIDレベルがRAID5又はRAID0+5の前記RAIDグループであって前記集計結果が該2種類の閾値条件の何れか一方に該当したRAIDグループは、閉塞させると判定することを特徴とする付記2記載のコントローラ・モジュール。
(付記7) Redundant コピー中のコピー先ディスクは、前記集計の対象外とすることを特徴とする付記2記載のコントローラ・モジュール。
(付記8) Sparing状態であっても“Write失敗あり”のディスクは、前記“Use Disk”ではなく、前記“Unuse Disk” に分類することを特徴とする付記2記載のコントローラ・モジュール。
(付記9) 複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおいて、
該コントローラ・モジュールと外部の任意のホスト装置とのインタフェースであるI/O制御手段と、
前記RAID装置内の任意の前記RAIDグループの閉塞可否の判定、閉塞の実行を管理・制御するRAID管理・制御手段とを有し、
前記RAID管理・制御手段は、任意の前記RAIDグループの閉塞を実行する場合、該RAIDグループが短時間でリカバリ可能か否かを判定し、短時間でリカバリ可能と判定した場合、その旨を前記I/O制御手段に通知し、
前記I/O制御手段は、該通知を受けた場合であって前記ホスト装置が前記閉塞されたRAIDグループへのアクセスを要求した場合には、該ホスト装置に対してダミーの応答を返信することを特徴とするコントローラ・モジュール。
(付記10) 前記ダミーの応答は、Busyであり、
該Busyの応答により、前記ホスト装置は、リトライ処理を繰返すことを特徴とする付記9記載のコントローラ・モジュール。
(付記11) 前記短時間でリカバリ可能な場合とは、前記RAID装置による自動リカバリ機能が動作する部品故障の場合、又は任意のディスクの故障により他のディスクがSpindownした場合であることを特徴とする付記9記載のコントローラ・モジュール。
(付記12) RAID装置において、
複数のディスクより成るRAIDグループと、
前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクの状態又は前記各ディスクへのアクセスパスの有無に基づいて、該各ディスクを複数のカテゴリに分類して当該分類単位毎に該当するディスクの数を集計し、該各集計結果と予め設定される閾値条件とを比較することによって、該RAIDグループを閉塞させるか否かを判定するコントローラ・モジュールと、
を有することを特徴とするRAID装置。
(付記13) RAID装置において、
該RAID装置と外部の任意のホスト装置とのインタフェースであるI/O制御手段と、
該RAID装置内の任意のRAIDグループの閉塞可否の判定、閉塞の実行を管理・制御するRAID管理・制御手段とを有し、
前記RAID管理・制御手段は、前記任意のRAIDグループの閉塞を実行する場合、該RAIDグループが短時間で復旧するか否かを判定し、短時間で復旧すると判定した場合、その旨を前記I/O制御手段に通知し、
前記I/O制御手段は、該通知を受けた場合、前記ホスト装置が前記閉塞されたRAIDグループへのアクセスを要求した場合、該ホスト装置に対してダミーの応答を返信することを有することを特徴とするRAID装置。
(付記14) 複数のディスクより成るRAIDグループを有するRAID装置におけるコンピュータに、
前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクの状態や前記各ディスクへのアクセスパスの有無に基づいて、該各ディスクを複数のカテゴリに分類して当該分類単位毎に該当するディスクの数を集計する機能と
該各集計結果と予め設定される閾値条件とを比較することによって、該RAIDグループを閉塞させるか否かを判定する機能と、
を実現させる為のプログラム。
(付記15) RAID装置におけるコンピュータに、
該RAID装置内の任意のRAIDグループの閉塞可否の判定、閉塞の実行を管理・制御する機能と、
前記任意のRAIDグループの閉塞を実行する場合、該RAIDグループが短時間で復旧するか否かを判定し、短時間で復旧すると判定した場合であって該閉塞されるRAIDグループへのアクセスを外部のホスト装置が要求する場合、該ホスト装置に対してダミーの応答を返信する機能と、
を実現させる為のプログラム。
(付記16) 複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおけるRAID閉塞判定方法であって、
前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクの状態や前記各ディスクへのアクセスパスの有無に基づいて、該各ディスクを複数のカテゴリに分類して当該分類単位毎に該当するディスクの数を集計し、
該各集計結果と予め設定される閾値条件とを比較することによって、該RAIDグループを閉塞させるか否かを判定することを特徴とするRAID閉塞判定方法。
本例のRAID装置の構成図である。 図1に示すCMのハードウェア構成図である。 (a)、(b)は、本手法による閉塞可否判断方法を説明する為の図である。 本例のRAID閉塞判定処理のフローチャート図(その1)である。 本例のRAID閉塞判定処理のフローチャート図(その2)である。 本例のRAID閉塞判定処理のフローチャート図(その3)である。 本例のRAID閉塞判定処理のフローチャート図(その4)である。 (a)〜(c)は、図4〜図7の処理を具体例を用いて説明する為の図である。 本例の第2の実施形態の処理フローチャート図(その1)である。 本例の第2の実施形態の処理フローチャート図(その2)である。 従来のRAIDシステムの概略構成図である。 従来のRAID閉塞判定方法を説明する為の図である。 (a)、(b)は、RLU/DLUを説明する為の図である。 (a)〜(j)は、RAIDグループがとりえる状態を説明する為の図である。 “BRT跨ぎ”を説明する為の図である。
符号の説明
1 RAID装置
2(2a、2b) ホスト
10(10a、10b) CM
3 FRT
4,5 BRT
6,7 DE
6a,6b、7a、7b PBC
6c、7c ディスク群
21 I/O制御部
22 RAID管理・制御部
22a 構成情報
31 DI
32 DMA
33,34 CPU
35 MCH(Memory Controller Hub)
36 メモリ
37 CA

Claims (8)

  1. 複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールにおいて、
    前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクを、前記RAIDグループに属する前記各ディスクへのアクセスパスの有無および前記RAIDグループに属する前記各ディスクの状態に基づいた複数の分類単位に分類した上で、前記複数の分類単位にそれぞれ属する前記RAIDグループに属する前記特定の事象が発生したディスクの数を集計し、
    ここで前記複数の分類単位は前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた分類単位を含み、
    該各集計結果のうちの少なくとも前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果対応する予め設定される閾値条件とを比較し、
    前記各集計結果のうちの前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果が対応する前記閾値条件を満たしたときに該RAIDグループを閉塞させる判定する
    RAID管理・制御手段、
    を有することを特徴とするコントローラ・モジュール。
  2. 前記閾値条件は各RAIDレベル毎に設定され、前記判定は処理対象の前記RAIDグ
    ループのRAIDレベルに応じた閾値条件を用いて行うことを特徴とする請求項1記載のコントローラ・モジュール。
  3. 前記複数の分類単位が、第一の分類単位および第三の分類単位を含み、
    前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位が、前記第三の分類単位に相当し、
    前記RAIDレベルがRAID1又はRAID0+1の場合、前記閾値条件は、前記第一の分類単位に属する前記特定の事象が発生したディスクの数が0且つ前記第三の分類単位に属する前記特定の事象が発生したディスクの数が1以上、であり、
    RAIDレベルがRAID1又はRAID0+1の前記RAIDグループであって前記集計結果が該閾値条件に該当したRAIDグループは、閉塞させると判定することを特徴とする請求項2記載のコントローラ・モジュール。
  4. 前記複数の分類単位が、第二の分類単位および第三の分類単位を含み、
    前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位が、前記第三の分類単位に相当し、
    前記RAIDレベルがRAID5又はRAID0+5の場合、前記閾値条件は、前記第二の分類単位に属する前記特定の事象が発生したディスクの数が0且つ前記第三の分類単位に属する前記特定の事象が発生したディスクの数が2以上、であるか又は、前記第二の分類単位に属する前記特定の事象が発生したディスクの数が1且つ前記第三の分類単位に属する前記特定の事象が発生したディスクの数が1以上、であり、
    RAIDレベルがRAID5又はRAID0+5の前記RAIDグループであって前記集計結果が該2種類の閾値条件の何れか一方に該当したRAIDグループは、閉塞させると判定することを特徴とする請求項2記載のコントローラ・モジュール。
  5. コントローラ・モジュールと外部の任意のホスト装置とのインタフェースであるI/O制御手段
    をさらに含み
    前記RAID管理・制御手段は、任意の前記RAIDグループの閉塞を実行する場合、該RAIDグループが短時間でリカバリ可能か否かを判定し、短時間でリカバリ可能と判定した場合、その旨を前記I/O制御手段に通知し、
    前記I/O制御手段は、該通知を受けた場合であって前記ホスト装置が前記閉塞されたRAIDグループへのアクセスを要求した場合には、該ホスト装置に対してダミーの応答を返信することを特徴とする請求項1記載のコントローラ・モジュール。
  6. RAID装置において、
    複数のディスクより成るRAIDグループと、
    前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクを、前記RAIDグループに属する前記各ディスクへのアクセスパスの有無および前記RAIDグループに属する前記各ディスクの状態に基づいた複数の分類単位に分類した上で、前記複数の分類単位にそれぞれ属する前記RAIDグループに属する前記特定の事象が発生したディスクの数を集計し、
    ここで前記複数の分類単位は前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた分類単位を含み、
    該各集計結果のうちの少なくとも前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果対応する予め設定される閾値条件とを比較し、
    前記各集計結果のうちの前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果が対応する前記閾値条件を満たしたときに該RAIDグループを閉塞させる判定する
    コントローラ・モジュールと、
    を有することを特徴とするRAID装置。
  7. 複数のディスクより成るRAIDグループを有するRAID装置内のコントローラ・モジュールが実行するRAID閉塞判定方法であって、
    前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクを、前記RAIDグループに属する前記各ディスクへのアクセスパスの有無および前記RAIDグループに属する前記各ディスクの状態に基づいた複数の分類単位に分類した上で、前記複数の分類単位にそれぞれ属する前記RAIDグループに属する前記特定の事象が発生したディスクの数を集計し、
    ここで前記複数の分類単位は前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた分類単位を含み、
    該各集計結果のうちの少なくとも前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果対応する予め設定される閾値条件とを比較し、
    前記各集計結果のうちの前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果が対応する前記閾値条件を満たしたときに該RAIDグループを閉塞させる判定する
    ことを特徴とするRAID閉塞判定方法。
  8. 複数のディスクより成るRAIDグループを有するRAID装置におけるコンピュータに、
    前記RAID装置内でRAID閉塞可否を判定すべき特定の事象が発生する毎に、閉塞判定対象となる前記各RAIDグループ毎に、前記RAIDグループに属する前記各ディスクを、前記RAIDグループに属する前記各ディスクへのアクセスパスの有無および前記RAIDグループに属する前記各ディスクの状態に基づいた複数の分類単位に分類した上で、前記複数の分類単位にそれぞれ属する前記RAIDグループに属する前記特定の事象が発生したディスクの数を集計し、ここで前記複数の分類単位は前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた分類単位を含む、という機能と
    該各集計結果のうちの少なくとも前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果対応する予め設定される閾値条件とを比較し、前記各集計結果のうちの前記RAIDグループに属する前記各ディスクへのアクセスパスが無い場合に応じた前記分類単位に属する前記特定の事象が発生したディスクの数の集計結果が対応する前記閾値条件を満たしたときに該RAIDグループを閉塞させる判定する機能と、
    を実現させる為のプログラム。
JP2006130737A 2006-05-09 2006-05-09 Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム Active JP4234730B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006130737A JP4234730B2 (ja) 2006-05-09 2006-05-09 Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム
US11/537,230 US7779203B2 (en) 2006-05-09 2006-09-29 RAID blocking determining method, RAID apparatus, controller module, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006130737A JP4234730B2 (ja) 2006-05-09 2006-05-09 Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム

Publications (2)

Publication Number Publication Date
JP2007304728A JP2007304728A (ja) 2007-11-22
JP4234730B2 true JP4234730B2 (ja) 2009-03-04

Family

ID=38838620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006130737A Active JP4234730B2 (ja) 2006-05-09 2006-05-09 Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム

Country Status (2)

Country Link
US (1) US7779203B2 (ja)
JP (1) JP4234730B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5729084B2 (ja) 2011-03-30 2015-06-03 富士通株式会社 ストレージシステム、ストレージ制御装置およびストレージ制御方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04291649A (ja) 1991-03-20 1992-10-15 Fujitsu Ltd デバイスパス閉塞方式
JP3139548B2 (ja) 1998-10-22 2001-03-05 日本電気株式会社 エラーリトライ方法、エラーリトライシステム及びその記録媒体
JP3211799B2 (ja) 1999-01-25 2001-09-25 日本電気株式会社 Fc−alの障害情報収集装置、障害情報収集方法および記録媒体
JP4248164B2 (ja) 2001-06-14 2009-04-02 株式会社東芝 ディスクアレイのエラー回復方法、ディスクアレイ制御装置及びディスクアレイ装置

Also Published As

Publication number Publication date
JP2007304728A (ja) 2007-11-22
US7779203B2 (en) 2010-08-17
US20080010495A1 (en) 2008-01-10

Similar Documents

Publication Publication Date Title
CN100353328C (zh) 用于控制存储的装置和方法
JP5887757B2 (ja) ストレージシステム、ストレージ制御装置およびストレージ制御方法
US7529965B2 (en) Program, storage control method, and storage system
US7457916B2 (en) Storage system, management server, and method of managing application thereof
US8806125B2 (en) Storage system comprising power saving function
US7565573B2 (en) Data-duplication control apparatus
US8219748B2 (en) Storage system comprising both power saving and diagnostic functions
US8677181B2 (en) Storage apparatus and method of detecting power failure in storage apparatus
WO2011141963A1 (en) Information processing apparatus and data transfer method
US7698592B2 (en) Apparatus and method for controlling raid array rebuild
JPH11345095A (ja) ディスクアレイ装置およびその制御方法
JP2005100259A (ja) ドライブの2重障害を防止するアレイ型ディスク装置、プログラム、及び方法
WO2017158666A1 (ja) 計算機システム、計算機システムのエラー処理方法
JP2007058419A (ja) Pld上のメモリ内の情報に従って構築される論理回路を備えたストレージシステム
CN102880522A (zh) 面向硬件故障的系统关键文件故障纠正方法及装置
WO2014132373A1 (ja) ストレージシステム及び記憶デバイス障害回復方法
JP2002007077A (ja) ディスクアレイ装置のループ診断システム及びその方法
JP2009205316A (ja) ディスクアレイ装置、ディスクアレイ制御方法及びディスクアレイ制御装置
JP2006268673A (ja) 記憶制御装置及び記憶デバイスのエラー制御方法
JP2009026240A (ja) 記憶制御システムおよび記憶制御方法
JP4516993B2 (ja) 仮想テープシステム
JP4234730B2 (ja) Raid閉塞判定方法、raid装置、そのコントローラ・モジュール、プログラム
JP2006164304A (ja) ドライブの2重障害を防止するアレイ型ディスク装置、プログラム、及び方法
JP3063666B2 (ja) アレイディスク制御装置
JP5760585B2 (ja) ストレージシステムおよび異常発生箇所判定方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080707

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081211

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4234730

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111219

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121219

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131219

Year of fee payment: 5