JP5170055B2 - 処理方法,ストレージシステム,情報処理装置およびプログラム - Google Patents

処理方法,ストレージシステム,情報処理装置およびプログラム Download PDF

Info

Publication number
JP5170055B2
JP5170055B2 JP2009235181A JP2009235181A JP5170055B2 JP 5170055 B2 JP5170055 B2 JP 5170055B2 JP 2009235181 A JP2009235181 A JP 2009235181A JP 2009235181 A JP2009235181 A JP 2009235181A JP 5170055 B2 JP5170055 B2 JP 5170055B2
Authority
JP
Japan
Prior art keywords
information
notification
configuration information
configuration
unit
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.)
Expired - Fee Related
Application number
JP2009235181A
Other languages
English (en)
Other versions
JP2011081706A (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 JP2009235181A priority Critical patent/JP5170055B2/ja
Priority to US12/900,381 priority patent/US8381029B2/en
Publication of JP2011081706A publication Critical patent/JP2011081706A/ja
Application granted granted Critical
Publication of JP5170055B2 publication Critical patent/JP5170055B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • 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
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, i.e. distributed RAID systems with parity

Description

本件は、ストレージ装置と複数の情報処理装置とをそなえたストレージシステムにおける構成情報を更新する技術に関する。
図20,図21はそれぞれストレージシステムの接続形態の例を示す図である。
ストレージシステムは、図20に示すように、例えば、RAID(Redundant Arrays of Inexpensive Disks)装置501とサーバ601とをそなえて構成され、サーバ601は、RAID装置501によって提供される論理ボリュームに対してデータの格納や読み出しを行なう。
図20に示すストレージシステムは、1台のRAID装置501に対して1台のサーバ601を接続して構成されている。又、サーバ601は、VDSハードウェアプロバイダ(Virtual Disk Service Hardware Provider;VDSHP)をそなえ、このVDSHPの機能を用いて、RAID装置501の構成設定が行なわれ、RAID装置501の構成情報502の書き換えが行なわれる。
VDSHPは、Microsoft Virtual Disk Service(VDS;登録商標)をサポートするためのプログラムである。このVDSHPは、VDSの代わりにAPI(Application Program Interface)を定義することにより、ディスクやRAIDボリュームの管理を行なうための標準化されたインタフェースを提供する。なお、VDSは、マイクロソフト社が Windows Server 2003(登録商標) プラットフォームの上で提供するストレージ関連インタフェースである。
そして、このVDSHPを使用する事により、Windows Server 2003R2等でサポートされているストレージ管理ソフトによるRAID装置501の構成設定(LUN(Logical Unit Number)割当やAffinity設定等)を実施することができる。
このようなVDSHPを、図21に示すように、1台のRAID装置501に対して複数(図21に示す例では3つ)のサーバ601−1,601−2,601−3を接続した形態で使用する場合について考える。
なお、以下、サーバを示す符号としては、複数のサーバのうち1つを特定する必要があるときには符号601−1〜601−3を用いるが、任意のサーバを指すときには符号601を用いる。
複数のサーバ601をRAID装置501に接続した使用形態においては、各サーバ601のVDSHPから、同時にRAID装置501の構成設定を行なうことにより構成矛盾が生じるおそれがある。
そこで、この構成矛盾の発生を回避する手法として、管理サーバをそなえ、この管理サーバが構成情報データベースを用いて、各サーバ601から行なった構成情報の変更を一元的に管理する手法が知られている(特許文献1参照)
しかしながら、このような手法においては、構成情報データベースや管理サーバをそなえる必要があるので、システムの導入コストや運用コストが増大する。
そこで、各サーバ601において、RAID装置501の構成設定を行なう前に、VDSHPがそれぞれローカルに保持している構成情報603を、RAID装置501に格納されている構成情報502で更新(リフレッシュ)する手法が考えられる。
図22は従来のストレージシステムにおける構成情報のリフレッシュ手法を説明するための図である。
例えば、サーバ601−2がRAID装置501の構成設定を行なう場合には、サーバ601−2は、RAID装置501の構成設定操作の実施前に、RAID装置501における構成情報502を参照する。
そして、サーバ601−2は、図22に示すように、RAID装置501から構成情報502の全てを取得し、この取得した構成情報502により構成情報603−2を書き換える。これにより、サーバ601−2は、その構成情報603−2を最新の状態に更新する。そして、サーバ601−2は、RAID装置501の構成情報502と、サーバ601−2の構成情報603−2とのそれぞれを変更・設定する。
特開2003−108420号公報
しかしながら、上述の如く、サーバ601の構成情報603を、RAID装置501に格納されている構成情報502の全体を用いて更新するリフレッシュ処理には、例えば2分間程度の時間を要する。ユーザがサーバ601において構成設定を行なう度にこのような待ち時間が発生することは、処理効率が悪く、又、煩雑である。
本件の目的の一つは、このような課題に鑑み創案されたもので、複数の情報処理装置からストレージ装置に対して設定変更を行なうに際して、構成矛盾が生じることをなくすとともに、低コストで導入及び運用できるようにすることである。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
このため、この処理方法は、データが格納されるとともに、第1構成情報格納部に格納された第1構成情報に基づいて該データにかかる処理を行なうストレージ装置と、該ストレージ装置と第1の通信回線を介して接続され、該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部をそなえ、該第1構成情報を変更可能な複数の情報処理装置とをそなえたストレージシステムにおける処理方法であって、該複数の情報処理装置のうちの一の情報処理装置が、該ストレージ装置の第1構成情報を変更する第1構成情報変更ステップと、該一の情報処理装置が、該第1の通信回線とは異なる第2の通信回線を介して接続された、当該ストレージシステムにおける前記複数の情報処理装置のうち該一の情報処理装置とは異なる他の情報処理装置に対して、該第1構成情報変更ステップにおいて変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知ステップと、該通知ステップにおいて該変更箇所情報を通知された該他の情報処理装置が、当該変更箇所情報を変更箇所情報格納部に格納する格納ステップと、該他の情報処理装置が、該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報格納部に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新ステップとをそなえる。
また、このストレージシステムは、データが格納されるとともに、第1構成情報格納部に格納された第1構成情報に基づいて該データにかかる処理を行なうストレージ装置と、該ストレージ装置と第1の通信回線を介して接続された複数の情報処理装置とをそなえたストレージシステムであって、該複数の情報処理装置のうちの一の情報処理装置が、該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、第2の通信回線を介して接続された、当該ストレージシステムにおける前記複数の情報処理装置のうち当該情報処理装置とは異なる他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部とをそなえる。
さらに、この情報処理装置は、第1構成情報格納部に格納された第1構成情報に基づいてデータにかかる処理を行なうストレージ装置と、第1の通信回線を介して接続された情報処理装置であって、該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、第2の通信回線を介して接続された、他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部とをそなえる。
また、このプログラムは、第1構成情報格納部に格納された第1構成情報に基づいてデータにかかる処理を行なうストレージ装置と第1の通信回線を介して接続されたコンピュータに、制御機能を実行させるためのプログラムであって、該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、第2の通信回線を介して接続された、他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部として、該コンピュータを機能させる。
開示の処理方法,ストレージシステム,情報処理装置およびプログラムによれば、以下の少なくともいずれか1つの効果ないし利点が得られる。
(1)短時間でリフレッシュを完了させることができる。
(2)情報処理装置とストレージ装置との間のデータトラフィックを軽減することができる。
(3)低コストで導入及び運用を行なうことができる。
(4)複数の情報処理装置でストレージ装置を共有する場合においても、ストレージ装置の第1構成情報と、各情報処理装置の第2構成情報との間で構成矛盾が生じることがなく信頼性が高い。
(5)複数の情報処理装置からストレージ装置に対してリフレッシュ処理による制御が集中することを回避することができる。
(6)情報処理装置の第2構成情報を確実にリフレッシュすることができ信頼性が向上する。
実施形態の一例としてのストレージシステムの機能構成例を模式的に示す図である。 実施形態の一例としてのストレージシステムのハードウェア構成例を模式的に示す図である。 実施形態の一例としてのストレージシステムにおける通知情報の例を示す図である。 (a),(b)はそれぞれ実施形態の一例としてのストレージシステムにおけるRAID装置の構成情報と通知情報との対応を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバによる構成設定操作処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバによる構成設定操作処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバによる構成設定操作処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバ間において通信不能状態が生じた場合の処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバ間において通信不能状態が生じた場合の処理を説明するための図である。 実施形態の一例としてのストレージシステムにおける複数のサーバ間において通信不能状態が生じた場合の処理を説明するための図である。 実施形態の一例としてのストレージシステムにおけるサーバAによるRAID装置の構成設定処理を説明するためのフローチャートである。 実施形態の一例としてのストレージシステムにおけるサーバの常駐プロセスを説明するためのフローチャートである。 実施形態の一例としてのストレージシステムにおけるサーバBによるRAID装置の構成設定処理を説明するためのフローチャートである。 ストレージシステムの接続形態の例を示す図である。 ストレージシステムの接続形態の例を示す図である。 従来のストレージシステムにおける構成情報のリフレッシュ手法を説明するための図である。
以下、図面を参照して本発明の実施の形態を説明する。
図1は実施形態の一例としてのストレージシステムの機能構成例を模式的に示す図、図2はそのハードウェア構成例を模式的に示す図である。
本実施形態のストレージシステム1は、図1および図2に示すように、複数(本実施形態では3つ)のサーバコンピュータ(以下、単にサーバという)2a,2b,2cに対してRAID(Redundant Arrays of Inexpensive Disks)装置10を通信可能に接続することにより構成されている。なお、以下、サーバを示す符号としては、複数のサーバのうち1つを特定する必要があるときには符号2a,2b,2cを用いるが、任意のサーバを指すときには符号2を用いる。
RAID装置(ストレージ装置)10は、複数のHDD(Hard Disk Drive)40を組み合わせて、冗長化された1つのストレージとして管理するものであり、サーバ2に対して仮想的なストレージを提供する。このRAID装置10は、図2に示すように、チャネルインタフェース101,制御モジュール102およびドライブエンクロージャ103をそなえて構成されている。
チャネルインタフェース101は、RAID装置10とサーバ2とを通信可能に接続するためのインタフェースであり、本実施形態においてはFC(Fibre Channel)の規格に従って構成されている。なお、このチャネルインタフェース101の規格としては、FCに限定されるものではなく、例えば、SCSI(Small Computer System Interface)等、種々変形して実施することができる。
ドライブエンクロージャ103は、複数のHDD40をそなえて構成されている。HDD40は、磁性体を塗布した円盤状の記録媒体に、磁気ヘッド(図示省略)を用いてデータの書き込みや読み出しを行なう記憶装置であり、図示しないHDDインタフェースを介してそれぞれ制御モジュール102と通信可能に接続されている。又、これらのHDD40は、互いにほぼ同様の構成をそなえている。
制御モジュール102は、RAIDの各種演算や制御と、HDD40へのアクセス制御とを行なう。この制御モジュール102は、図2に示すように、CPU121,RAM122,ROM123および不揮発性メモリ124をそなえて構成されている。
ROM123は、RAID装置10としての機能を実現するための各種プログラムやデータを格納するものである。CPU121は、各種演算や制御を行なう制御装置であり、ROM123に格納されたプログラムを実行することにより、RAID装置10としての種々の機能を実現する。
RAM122は、CPU121が演算や制御を行なうに際して、種々のデータやプログラムを一時的に格納するものである。
なお、RAID装置10におけるRAID機能の実現は既知の種々の手法を用いて行なうことができ、便宜上その詳細な説明は省略する。
不揮発性メモリ124は、RAID装置10における設定値等の情報を保持するものであり、例えば、RAID装置10の構成情報(第1構成情報)11が格納される。この構成情報11は、例えばRAIDを実現するための各種設定情報や状態情報であり、LUN割当,アフィニティ設定,ボリューム除法,ボリューム数,ステータス等をそなえている。すなわち、RAID装置10において、不揮発性メモリ124が、構成情報11を格納する第1構成情報格納部12として機能する。なお、構成情報は、RAID装置における既知の情報であり、その詳細な説明は省略する。
そして、制御モジュール102においては、CPU121が、この不揮発性メモリ124に格納された構成情報11を用いることにより、RAID装置10としての種々の機能(RAID機能)を実現する。
このRAID機能としては、例えば、1〜6の各レベルのRAIDの実現や、複数のサーバ2に対する排他制御権の設定・管理等が含まれる。又、RAID機能には、サーバ2から送信される構成情報変更コマンドに応じて、この構成情報を変更する機能も含まれる。なお、本ストレージシステム1においては、各サーバ2のVDSHP21の機能によりRAID装置10の構成設定が行なわれ、又、このVDSHP21の機能によりRAID装置10の構成情報11の書き換えが行なわれる。これらのRAID機能は、RAID装置における機能として既知のものであり、その詳細な説明は省略する。
サーバ2a,2b,2cは情報処理装置(コンピュータ)であり、RAID装置10により提供される論理デバイスに対してデータの書き込みや読み出しを要求する(ライト要求,リード要求)。又、これらのサーバ2a,2b,2cは、互いにほぼ同様の構成をそなえている。
各サーバ2は、RAID装置10にそれぞれ第1の通信回線としてのFC回線52を介して通信可能に接続されている。
以下、本実施形態においては、主にサーバ2aがRAID装置10の構成情報11を変更する排他制御権を取得し、RAID装置10の構成情報11の変更を行なう例について説明するが、サーバ2b,2cがRAID装置10の構成情報11の変更を行なう場合も同様である。
また、以下、サーバ2aをサーバA,サーバ2bをサーバB,サーバ2cをサーバCという場合がある。
サーバ2は、図2に示すように、CPU201,RAM202,ROM203および記憶装置204をそなえて構成されている。
CPU201は、各種演算や制御を行なう制御装置であり、ROM203は記憶装置204に格納されたOS(Operating System)やプログラムを実行することにより、種々の機能を実現する。ROM203は種々のプログラムやデータを格納するものであり、RAM202はCPU201が演算や制御を行なうに際して、種々のデータやプログラムを一時的に格納・展開するものである。記憶装置204は、例えばHDDであり、CPU201によって実行されるOSの他、種々のプログラムやデータを格納する。
また、サーバ2a,2b,2cは、第2の通信回線としての通信回線51を介して相互に通信可能に接続されている。この通信回線51は、例えばLAN(Local Area Network)の規格に基づくものである。以下、この通信回線51をLAN51という場合がある。
そして、サーバ2のCPU201がプログラムを実行することにより、後述する第1構成情報変更部23,通知部24,更新部26,検知部27,失敗通知部28,通知失敗履歴確認部29および全更新部30として機能する。
なお、これらの第1構成情報変更部23,通知部24,更新部26,検知部27,失敗通知部28,通知失敗履歴確認部29および全更新部30としての機能を実現するためのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
第1構成情報変更部23,通知部24,更新部26,検知部27,失敗通知部28,通知失敗履歴確認部29および全更新部30としての機能を実現する際には、内部記憶装置(RAM202やROM203)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではCPU201)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、サーバ2がコンピュータとしての機能を有しているのである。
また、サーバ2の記憶装置204には、VDSハードウェアプロバイダ(VDSHP)21を実現するためのプログラムが格納されており、CPU201がこのプログラムを実行することにより、サーバ2においてVDSHP21としての機能が実現される。すなわち、Microsoft Virtual Disk Service(VDS)がサポートされる。
そして、サーバ2は、このVDSHP21により、RAID装置10において任意にボリュームの作成やホストアフィニティの設定を行なうことができる。又、サーバ2は、このVDSHP21により、RAID装置10の構成設定や構成情報11の書き換えを行なう。なお、このVDSHP21としての機能は既知であり、その詳細な説明は省略する。
すなわち、サーバ2においては、CPU201(VDSHP21)が、RAID装置10の構成情報11を変更(設定)する第1構成情報変更部23(図1参照)として機能する。なお、以下、第1構成情報変更部23がRAID装置10の構成情報11を変更(設定)することを、構成設定操作という場合がある。
また、サーバ2aにおいて、RAM202もしくは記憶装置204には、RAID装置10の構成情報(第1構成情報,主構成情報)11の複写としての構成情報(第2構成情報,従構成情報)15aが格納される。同様に、サーバ2bのRAM202もしくは記憶装置204には構成情報15bが、サーバ2cのRAM202もしくは記憶装置204には、構成情報15cがそれぞれ格納される。
なお、以下、第2構成情報としての構成情報を示す符号としては、複数の構成情報のうち1つを特定する必要があるときには符号15a,15b,15cを用いるが、任意の構成情報を指すときには符号15を用いる。
すなわち、サーバ2においては、RAM202や記憶装置204が、RAID装置10の構成情報11の複写としての構成情報(第2構成情報)15を格納する第2構成情報格納部22として機能する(図1参照)。
RAID装置10へのアクセス権(排他制御権)を有するサーバ2(例えば、サーバ2a)は、VDSHP21により、RAID装置10の構成情報11を変更した後に、この変更後の構成情報11をコピー(複写)する。そして、このコピーした構成情報11を用いて、RAM202等に保持された構成情報15を上書きすることにより、構成情報15を更新する。
なお、この構成情報15の更新には、後述の如く、全更新部30による、RAID装置20の構成情報11の全体を用いた上書き更新(リフレッシュ)と、更新部26による、サーバ2から構成情報11に対して変更を行なった部分(変更箇所,構成設定領域)だけを用いた上書き更新(リフレッシュ)とがある。
また、サーバ2において、CPU201は、第2構成情報格納部22における構成情報11の格納領域と、RAID装置10の不揮発性メモリ124における構成情報11の格納領域との対応付けも行なう。この対応付けは、それぞれの格納領域のアドレスを対応付けることにより行なわれ、例えば、アドレス変換用のマトリクスや変換式を用いることにより実現することができる。
これにより、CPU201は、RAID装置10の不揮発性メモリ124における構成情報11の任意の位置について、第2構成情報格納部22における構成情報11における対応する位置を容易に把握することができる。
通知部24は、LAN51を介して接続された他の全てのサーバ2(例えば、サーバ2b,2c)に対して、第1構成情報変更部23によって変更を行なった構成情報11における変更箇所を表す通知情報(変更箇所情報)N1の通知を行なう。
図3は本ストレージシステム1における通知情報N1の例を示す図である。通知情報N1は、構成設定の実施を通知するものであり、例えば、送信元サーバの識別情報n1−1,RAID装置10の識別情報n1−2,構成変更箇所数n1−3および構成変更箇所n1−4をそなえて構成されている。
送信元サーバの識別情報n1−1は、その通知情報N1の送信元のサーバ2を特定するための情報であって、この図3に示す例においては、サーバ2のネットワークIPドレスを用いている。RAID装置10の識別情報n1−2,構成変更箇所数n1−3は、RAID装置10を識別するための情報であって、図3に示す例においては、RAID装置10のIPアドレスを用いている。構成変更箇所数n1−3は、RAID装置10の構成情報11上における構成設定(構成変更)が実施された領域(以下、構成設定領域という場合がある)の数である。
構成変更箇所n1−4は、構成設定領域の位置を示す情報であって、図3に示す例においては、構成設定領域の開始アドレスとそのバイト数とを用いている。なお、この構成変更箇所n1−4には、上述の如き構成設定領域の開始アドレスおよびバイト数に限定されるものではなく、例えば、構成設定領域の開始アドレスおよび終了アドレスを用いる等、種々変形して実施することができる。
なお、通知情報N1には、上述した情報の他、送信先のアドレスや各種制御情報等、LAN51を介したデータ通信に必要な種々の制御情報が含まれるが、便宜上、その説明は省略する。
図4(a),(b)はそれぞれ本ストレージシステム1におけるRAID装置10の構成情報11と通知情報との対応を説明するための図であり、図4(a)は通知情報を、図4(b)は構成情報11をそれぞれ例示している。
これらの図4(a),(b)に示す例においては、図4(b)に示すように、RAID装置10の不揮発性メモリ124に格納された構成情報11について、アドレス0x0200〜0x0300の0x100バイトの領域(構成設定領域1)と、アドレス0x0580〜0x08ffの0x0380バイトの領域(構成設定領域2)との2箇所に対して第1構成情報変更部23が構成変更を実施した例を示している。
この図4(b)に示すような2箇所の構成変更について、通知部24は、図4(a)に示すような情報を通知情報N1として取得、作成する。すなわち、通知部24は構成変更箇所数n1−3として“2”を設定する。又、通知部24は構成変更箇所n1−4として、構成設定領域1の開始アドレス“0x200”,構成設定領域1のバイト数“0x0100”,構成設定領域2の開始アドレス“0x0580”および構成設定領域2のバイト数“0x0380”をそれぞれ設定する。
そして、通知部24は、この作成した通知情報N1を、LAN51を介して、RAID装置10を共有する同一ストレージシステム1内の他の全てのサーバ2に対して送信する。なお、この通知情報N1の送信手法は、LAN51の通信プロトコルに則った既知の種々の手法を用いて実現することができる。
サーバ2aから通知情報N1を受信した他のサーバ2b,2cは、その受信した通知情報N1をRAM202や記憶装置204等における所定の領域(変更箇所情報格納部25;図1参照)に格納する。又、サーバ2aにおいても同様に、他のサーバ2b,2cから通知情報N1を受信した場合には、その受信した通知情報N1を変更箇所情報格納部25に格納する。
検知部27は、他のサーバ2(例えば、サーバ2b)に対する通知部24による通知情報N1の通知の失敗を検知する。検知部27は、例えば、他のサーバ2(サーバ2b)との間でセッションを確立できないことや、他のサーバ2から期待される応答がないことを検知することにより、通知情報N1の通知の失敗を検知する。他のサーバ2との通知の失敗は、例えば、LAN51においてネットワーク切断が生じ通信障害が発生した場合に生じる。
失敗通知部28は、他のサーバ2(サーバ2b)に対する変更箇所情報の通知の失敗が検知部27により検知された場合に、RAID装置10および、変更箇所情報の通知を無事完了した別の他のサーバ2(サーバ2c)に対して、他のサーバ2bに対する変更箇所情報の通知を失敗した旨の情報を通知する。
この変更箇所情報の通知を失敗した旨の情報には、少なくとも、通知情報N1の送信元(例えば、サーバA)を特定する情報と、通知情報N1が不達となった送信先(例えば、サーバ2b)を特定する情報が含まれる。又、この通知情報N1の通知を失敗した旨の情報は、RAID装置10において、その不揮発性メモリ124の所定箇所に通知失敗履歴情報13として格納される。
すなわち、RAID装置10において、不揮発性メモリ124は、失敗通知部28により他のサーバ2bに対する通知情報N1の通知を失敗した旨が通知された場合に、変更箇所情報の通知先であるサーバ2bに関する情報を通知失敗履歴情報13として格納する通知失敗履歴情報格納部として機能する(図1参照)。なお、変更箇所情報の通知先であるサーバ2bに関する情報としては、通知先のサーバ2を特定可能な識別情報であり、例えば、サーバ2のネットワークIPドレスが用いられる。
また、変更箇所情報の通知を失敗した旨の情報は、他のサーバ2cにおいて、例えば、RAM202や記憶装置204の所定箇所に通知失敗履歴情報13として格納される。
更新部26は、RAID装置10の構成情報11の変更に先立って、同一サーバ(自サーバ)2の第2構成情報格納部22に格納された構成情報15における、同一サーバ2の変更箇所情報格納部25に格納された通知情報N1によって示される変更箇所を、RAID装置10の構成情報11に基づいて更新する。
この更新部26は、そのサーバ2がRAID装置10の構成情報11を変更する排他制御権を取得し、RAID装置10の構成情報11の変更を行なう際に、この構成情報11の変更に先立って、その直前に構成情報15の更新を行なう。
具体的には、更新部26は、そのサーバ2がRAID装置10の構成情報11を変更する排他制御権を取得し、RAID装置10の構成情報11の変更を行なう際に、変更箇所情報格納部25に格納されている通知情報N1から、変更設定箇所n1−4を取得する。すなわち、更新部26は、通知情報N1から、各構成設定領域の開始アドレスおよびバイト数を取得する。
更新部26は、RAID装置10の構成情報11にアクセスして、これらの変更設定箇所n1−4によって示される領域(変更箇所)のデータを取得(コピー)する。そして、更新部26は、自サーバ2の第2構成情報格納部22に格納されている構成情報15における、変更設定箇所n1−4によって示される変更箇所に対応する領域に対して、コピーしたデータを用いて上書き更新を行なう。
通知失敗履歴確認部29は、RAID装置10の第1構成情報11の変更を行なうに先立って、RAID装置10の通知失敗履歴情報格納部14において自サーバ2に関する通知失敗履歴情報13が格納されているか否かを確認する。すなわち、サーバ2aがRAID装置10の構成情報11の変更を行なう際には、サーバ2aの通知失敗履歴確認部29は、その変更を行なうに先立って、通知失敗履歴情報格納部14にサーバ2aに関する通知失敗履歴情報13が格納されているか否かを確認する。同様に、サーバ2b,2cがRAID装置10の構成情報11の変更を行なう際には、サーバ2b,2cの通知失敗履歴確認部29は、各変更を行なうに先立って、それぞれ通知失敗履歴情報格納部14にサーバ2b,2cに関する通知失敗履歴情報13が格納されているか否かを確認する。
全更新部30は、通知失敗履歴確認部29により通知失敗履歴情報格納部14に自サーバ2に関する通知失敗履歴情報が格納されていることを確認した場合に、RAID装置10の第1構成情報11の全体を用いて、自サーバ2の第2構成情報格納部22に格納された構成情報15の全てを更新(全リフレッシュ)する。すなわち、サーバ2aにおいて、その通知失敗履歴確認部29により通知失敗履歴情報格納部14にサーバ2aに関する通知失敗履歴情報が格納されていることを確認した場合には、RAID装置10の第1構成情報11の全体で、自サーバ2aの第2構成情報格納部22に格納された構成情報15aの全体を更新する。同様に、サーバ2b,2cにおいて、その通知失敗履歴確認部29により通知失敗履歴情報格納部14にサーバ2b,2cに関する通知失敗履歴情報が格納されていることを確認した場合には、RAID装置10の第1構成情報11で、自サーバ2b,2cの第2構成情報格納部22に格納された構成情報15b,2cの全てを更新する。
上述の如く構成された本ストレージシステム1における処理を、図5〜図10を参照しながら説明する。なお、これらの図5〜図10に示す例においては、各サーバ2はLAN51を介して相互に通信可能な状態であるものとする。
本ストレージシステム1の初期状態、すなわちVDSHP起動時においては、図5に示すように、各サーバ2とRAID装置10との間で通信を行ない、全構成情報のリフレッシュを実施する。
ここで、サーバAの構成情報15aを“a”、サーバBの構成情報15bを“b”、サーバCの構成情報15cを“c”、RAID装置10の構成情報11を“r”とした場合に、リフレッシュ完了後においては、
r=a=b=c
となる。
サーバAがRAID装置10の構成設定操作を実施する場合には、図6に示すように、サーバAとRAID装置10との間FC回線52を介した通信により、第1構成情報変更部23がRAID装置10の構成情報11をr′に変更し、又、サーバAの構成情報15aもa′に変更される。すなわち、
r′=a′
r′≠b=c
となる。
その後、通知部24が、図7に示すように、LAN51を介したサーバ間通信により、他のサーバB,Cに対して通知情報N1の通知を行なう。すなわち、サーバAは、サーバB,Cに対して、通信データとして構成設定が行なわれた箇所の情報(変更箇所情報)を通知情報N1として送信する。各サーバB,CのVDSHPは、受信した変更箇所情報を各変更箇所情報格納部25に格納する。
次に、図8に示すように、サーバBが構成設定操作を実施する場合には、サーバBのVDSHPは、サーバAより通知を受けているので、構成設定操作を行なう前にリフレッシュを実施する。ここで、リフレッシュは、構成情報15bにおける変更箇所情報格納部25に格納されている変更箇所情報で特定された領域に対してのみ行なわれる。これにより構成情報15bの全体を対象としてリフレッシュを行なう場合に比べて、短時間でリフレッシュを完了させることが可能となる。すなわち、リフレッシュを高速に行なうことができる(高速リフレッシュ)。
その後、サーバBは、図9に示すように、サーバBとRAID装置10との間FC回線52を介した通信により、第1構成情報変更部23がRAID装置10の構成情報11をr″に変更し、又、サーバBの構成情報15bのb′がb″に変更される。すなわち、
r″=b″
r″≠a′≠c
となる。
その後、サーバBは、図10に示すように、LAN51を介したサーバ間通信により、通知部24が他のサーバA,Cに対して通知情報N1の通知を行なう。すなわち、サーバBは、サーバA,Cに対して、通信データとして構成設定が行なわれた箇所の情報(変更箇所情報)を通知情報N1として送信する。各サーバA,CのVDSHPは、受信した変更箇所情報を各変更箇所情報格納部25に格納する。
以降、サーバ2によりRAID装置10の構成設定が行なわれる毎に、このサーバ2から他のサーバ2に対して通知情報N1の通知が行なわれる。
なお、図5〜図10を用いて示した例においては、サーバCは変更箇所情報を2回受信している。このサーバCがRAID装置10に対して構成設定操作を行なう場合には、サーバCの変更箇所情報格納部25に格納されている2つの変更箇所情報に基づき、構成情報15cにおける2箇所に対してリフレッシュを行なう。
また、本ストレージシステム1における伝送路の状態やサーバ2での構成設定操作のタイミングによっては、以下に示すような制御も行なわれる。
図11〜図13は本ストレージシステム1における複数のサーバ2による構成設定操作処理を説明するための図である。
本ストレージシステム1において、サーバA,B,Cがほぼ同じタイミングでRAID装置10の構成設定操作を行なおうとする場合において、サーバAがRAID装置10の排他制御権を獲得した場合を例示する。
図11に示すように、サーバAがRAID装置10に対する排他制御権を獲得した場合には、サーバB,CのVDSHPは、サーバAがRAID装置10の排他制御権を獲得中であることを検出して、処理待ち状態(wait)となる。
そして、サーバAは、サーバAとRAID装置10との間FC回線52を介した通信により、第1構成情報変更部23がRAID装置10の構成情報11をr′に変更し、又、サーバAの構成情報15aのaがa′に変更される。すなわち、
r′=a′
r′≠b=c
となる。
その後、サーバAは、図12に示すように、LAN51を介したサーバ間通信により、通知部24が他のサーバB,Cに対して通知情報N1の通知を行なう。すなわち、サーバAは、サーバB,Cに対して、通信データとして構成設定が行なわれた箇所の情報(変更箇所情報)を送信する。各サーバB,CのVDSHPは、受信した変更箇所情報を各変更箇所情報格納部25に格納する。
また、サーバB,CのVDSHPは、サーバAからの通知を受けて処理待ち状態を解除する。
そして、サーバB,Cによる構成設定操作が再開され、図13に示すように、例えば、サーバBがRAID装置10に対する排他制御権を獲得する。RAID装置10の排他制御権を獲得したサーバBは、構成情報15bにおける変更箇所情報格納部25に格納されている変更箇所情報で特定された領域のみに対してリフレッシュを行なう。すなわち、構成情報15bの高速リフレッシュを行なう。
また、サーバBの第1構成情報変更部23が、サーバBとRAID装置10との間FC回線52を介した通信により、RAID装置10の構成情報11をr″に変更し、又、サーバBの構成情報15bのbがb″に変更される。すなわち、
r″=b″
r″≠a′≠c
となる。
一方、サーバCは、サーバBがRAID装置10の排他制御権を獲得中であることを検出し、再び処理待ち状態となる。
なお、処理待ち状態に移行したサーバ2は、通知を受けずに一定時間経過した場合には、自主的に処理待ち状態を解除し構成設定操作を再開することが望ましい。これにより、ネットワーク切断やサーバ2のダウン等の理由により処理待ち状態に移行したサーバ2が処理待ち状態から解除されないことを阻止することができる。
図14〜図16は本ストレージシステム1における複数のサーバ2間において通信不能状態が生じた場合の処理を説明するための図である。
図14に示すように、例えば、サーバAの通知部24は、RAID装置10の構成設定を行なった後、他のサーバB,Cに対して通知情報N1の通知を行なう。ここで、サーバAとサーバBとの間のネットワーク(LAN51)が切断されている場合には、サーバAの検知部27が、サーバA−サーバB間の通信エラーによりネットワーク切断を検出する。
なお、ここで
r′=a′
r′≠b=c
であるとする。
サーバAの失敗通知部28は、図15に示すように、サーバBとの間のネットワーク切断(A−B間の切断)、すなわち通知失敗履歴情報13をRAID装置10および他のサーバCへ通知する。これらのRAID装置10およびサーバCは、通知失敗履歴情報13を保持する。
その後、図16に示すように、サーバBがRAID装置10の構成設定操作を実施する場合には、サーバBは、変更箇所情報格納部25に変更箇所情報が格納されていないので、一旦は、構成情報15bのリフレッシュは不要と判断する。しかしながら、サーバBの通知失敗履歴確認部29は、RAID装置10の通知失敗履歴情報格納部14に格納された通知失敗履歴情報13を取得することにより、A−B間の切断を検出し、構成設定操作前のリフレッシュを実施する。ここで、リフレッシュは、構成情報15bの全体に対して行なわれる。すなわち、
r″=b″
r″≠a′≠c
となる。
なお、サーバ2間のネットワーク状態の診断は、構成設定操作の通知時の他、各サーバ2が定期的に実施することが望ましい。
次に、本ストレージシステム1におけるサーバAによるRAID装置10の構成設定処理を図17に示すフローチャート(ステップA10〜A70,B10〜B40,C10〜C40)に従って説明する。なお、ステップB10〜B40,C10〜C40は通知プロセスを説明するためのフローチャートである。
サーバAは、第1構成情報変更部23により、RAID装置10に対して構成情報の設定を実施する(ステップA10)。又、サーバAは、自サーバA上のVDSHPの構成情報15aを更新する(ステップA20)。
次に、サーバAは、通知情報N1の通知を行なうサーバ2の個数(本実施形態では2つ)だけ通知プロセスを生成し、これらの通知プロセスを並列起動する(ステップA30)。
ここで、サーバAはサーバBに対する通知プロセスとして通知プロセス1を起動し、又、サーバCに対する通知プロセスとして通知プロセス2を起動する。
すなわち、通知部24がサーバBに対して通知情報N1の通知を行ない(ステップB10)、検知部27はタイマ監視を開始する(ステップB20)。そして、検知部27は、サーバBから通知情報N1の通知に対する応答があったかを確認して(ステップB30)、サーバBから応答があった場合には(ステップB30のYESルート参照)、正常に処理を終了する。一方、サーバBから応答がない場合には(ステップB30のNOルート参照)、検知部27は、更に、所定時間が経過(タイムアウト)したかを判断する(ステップB40)。ここで、検知部27は、タイムアウトするまでステップB30の応答確認を繰り返し行ない(ステップB40のNOルート参照)、タイムアウトした場合には(ステップB40のYESルート参照)、サーバBに対する通信エラーが生じたと判断して、通知プロセス1を終了する(エラー終了)。
同様に、通知部24がサーバCに対して通知情報N1の通知を行ない(ステップC10)、検知部27は、タイマ監視を開始する(ステップB20)。そして、検知部27は、サーバCから通知情報N1の通知に対する応答があったかを確認して(ステップC30)、サーバCから応答があった場合には(ステップC30のYESルート参照)、正常に処理を終了する。一方、サーバCから応答がない場合には(ステップC30のNOルート参照)、検知部27は、更に、所定時間が経過(タイムアウト)したかを判断する(ステップC40)。ここで、検知部27は、タイムアウトするまでステップC30の応答確認を繰り返し行ない(ステップC40のNOルート参照)、タイムアウトした場合には(ステップC40のYESルート参照)、サーバCに対する通信エラーが生じたと判断して、通知プロセス2を終了する(エラー終了)。
その後、検知部27は、ステップA30において起動した全ての通知プロセスの結果を取得して、(ステップA40)、通知プロセスにおいて通信エラーが生じたサーバ2が存在するか否かを確認する(ステップA50)。通知プロセスにおいて通信エラーが生じたサーバ2がある場合には(ステップA50のYESルート参照)、失敗通知部28が、RAID装置10に対して、変更箇所情報の通知を失敗した旨の情報を通知する。すなわち、失敗通知部28は、RAID装置10に対してネットワーク切断を通知する(ステップA60)。又、失敗通知部28は、通知プロセスが正常に終了した他のサーバ2(例えば、サーバC)に対しても、変更箇所情報の通知を失敗した旨の情報を通知する。すなわち、失敗通知部28は、サーバCに対してネットワーク切断を通知して(ステップA70)、処理を終了する。又、通知プロセスにおいて通信エラーが生じたサーバ2が存在しない場合にも(ステップA50のNOルート参照)、処理を終了する。
次に、本ストレージシステム1におけるサーバ2の常駐プロセスを、図18に示すフローチャート(ステップD10〜D40)に従って説明する。
サーバ2は、通信待ち合わせを行ない(ステップD10)、他のサーバ2から通知情報N1を通知するサーバ間通信が行なわれた場合には、通知情報N1を受信する(ステップD20:変更箇所情報取得ステップ)。又、サーバ2は、取得した通知情報N1をVDSHP内部領域(変更箇所情報格納部25)に保存する(ステップD30:格納ステップ)。そして、サーバ2は、送信元サーバ2に対して応答を行ない(ステップD40)、ステップD10に移行する。
次に、本ストレージシステム1におけるサーバBによるRAID装置10の構成設定処理を、図19に示すフローチャート(ステップE10〜E150)に従って説明する。
サーバBは、RAID装置10に対する排他制御権の獲得を図り(ステップE10,E20)、排他制御権の獲得に成功しない場合には(ステップE20のNOルート参照)、図18において示した常駐プロセスの監視を行ない、サーバ間通信を受けるまで待機し(ステップE30)、ステップE10に移行する。
サーバBがRAID装置10に対する排他制御権の獲得に成功すると(ステップE20のYESルート参照)、更新部26は、VDSHP内部領域、すなわち、変更箇所情報格納部25に他のサーバ2(サーバA,C)からの通知情報N1が格納されているか否かを確認する(ステップE40)。
この変更箇所情報格納部25において通知情報N1が格納されているかの確認の結果(ステップE50)、変更箇所情報格納部25に通知情報N1が格納されている場合には(ステップE50のYESルート参照)、第2構成情報格納部22の構成情報15bに対して、通知情報N1の構成設定領域に該当する情報のみをリフレッシュ(高速リフレッシュ)する(ステップE100:更新ステップ)。すなわち、更新部26は、RAID装置10から取得した構成情報11における通知情報N1の構成設定領域に該当する情報のみを取得する。そして、更新部26は、この取得した情報を用いて、第2構成情報格納部22の構成情報15bにおける通知情報N1の構成設定領域に該当する情報を上書き更新する。
その後、更新部26は、VDSHP内部領域、すなわち、変更箇所情報格納部25に保存されている通知情報N1を削除する(ステップE110)。
第1構成情報変更部23は、第2構成情報格納部22に格納されている構成情報15bを用いて、要求された設定処理の可否を確認し(ステップE120)、構成設定が可能であるか否かを判断する(ステップE130)。ここで、構成設定が可能である場合には(ステップE130のYESルート参照)、第1構成情報変更部23は、RAID装置10に対して構成情報設定を実施する(ステップE140)。
また、通知部24が、LAN51を介して接続された他の全てのサーバ2(サーバA,C)に対して、第1構成情報変更部23によって変更を行なった構成情報11における変更箇所を表す通知情報N1の通知を行ない(ステップE150)、処理を終了する。なお、要求された構成設定が不可能である場合にも(ステップE130のNOルート参照)、処理を終了する。
一方、変更箇所情報格納部25に通知情報N1が格納されていない場合には(ステップE50のNOルート参照)、通知失敗履歴確認部29は、RAID装置10の通知失敗履歴情報格納部14において自サーバ2(サーバB)に関する通知失敗履歴情報13が格納されているか否かを確認する(ステップE60)。すなわち、通知失敗履歴確認部29は、他のサーバ2と自サーバBとの間でネットワーク切断が検出されたか否かを確認する(ステップE70)。
この確認の結果、ネットワーク切断が検出された場合(ステップE70のYESルート参照)、すなわち、通知失敗履歴情報格納部14に自サーバ2に関する通知失敗履歴情報が格納されていることを確認された場合には、全更新部30は、RAID装置10の第1構成情報11で、自サーバ2の第2構成情報格納部22に格納された構成情報15の全てをリフレッシュし(ステップE80)、ステップE120に移行する。
また、他のサーバ2と自サーバBとの間でネットワーク切断が検出された場合には(ステップE70のNOルート参照)、第2構成情報格納部22に格納された構成情報15のリフレッシュは行なわずに(ステップE90)、ステップE120に移行する。
このように、実施形態の一例としてのストレージシステム1によれば、サーバAがRAID装置10の構成情報11の構成設定操作を実施した際に、通知部24が、LAN51を介して接続された他の全てのサーバB,Cに対して、第1構成情報変更部23によって変更を行なった構成情報11における変更箇所を表す通知情報(変更箇所情報)N1の通知を行なう。
サーバB,Cにおいては、構成情報15b,27cにおける変更箇所情報格納部25に格納されている変更箇所情報で特定された領域に対してのみ行なう高速リフレッシュを行なうことにより、短時間でリフレッシュを完了させることができる。すなわち、リフレッシュ処理を高速化することができる。又、この際、サーバB,CとRAID装置10との間のFC回線52においては、構成情報11における変更箇所に対応するデータのみが送受信される。これにより、FC回線52上のデータトラフィックが軽減し、リフレッシュ処理が高速化する。
また、本ストレージシステム1においては、各サーバ2の構成情報15を管理するための専用のデータベースや装置を必要とせず、低コストで導入及び運用を行なうことができる。
さらに、複数のサーバ2でRAID装置10を共有する場合においても、RAID装置10の第1構成情報11と、各サーバ2の構成情報15との間で構成矛盾が生じることがなく信頼性が高い。
さらに、各サーバ2は、サーバ間通信により他のサーバ2から変更箇所情報を通知された場合においても、即座にリフレッシュを行なわずに、RAID装置10の構成設定を行なう前、すなわち、構成設定の前処理としてリフレッシュを行なう。これにより、複数のサーバ2からRAID装置10に対してリフレッシュ処理による制御が集中することを回避することができる。
また、通知部24が、他の全てのサーバB,Cに対して、RAID装置10とサーバ2とを接続するFC回線52とは異なるLAN51を介して変更箇所情報の通知を行なうので、これによってもFC回線52上のデータトラフィックが軽減し、リフレッシュ処理が高速化する。
さらに、例えば、サーバAからサーバBに対する通知部24による変更箇所情報の通知が通信エラー等の理由により失敗した場合に、RAID装置10の通知失敗履歴情報格納部14に通知失敗履歴情報13が格納される。そして、サーバBにおいて、全更新部30が、RAID装置10の第1構成情報の変更を行なうに先立って、自サーバBに関する通知失敗履歴情報が格納されていることを確認した場合に、構成情報15bの全リフレッシュを行なう。これにより、サーバBの構成情報15bを確実にリフレッシュすることができ信頼性が向上する。
そして、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、上述した実施形態においては、ストレージシステム1に3つのサーバ2a,2b,2c(サーバA,B,C)がそなえられている例を示しているが、これに限定されるものではなく、2つ以下、もしくは4以上のサーバ2がそなえられ、これらのサーバ2がそれぞれRAID装置10に接続されてもよい。
また、上述した実施形態においては、ストレージシステム1に1つのRAID装置10がそなえられている例を示しているが、これに限定されるものではなく、2以上のRAID装置10をそなえて構成しても、同様に実施することができる。
さらに、上述した実施形態においては、RAID制御部10が演算をハードウェアで処理するハードウェアRAIDとして構成された例を示しているが、これに限定されるものではなく、各処理をソフトウェアで行なうソフトウェアRAIDとして構成されてもよい。
また、上述した実施形態においては、複数のサーバ2を相互に通信可能に接続する第2の通信回線51としてLANを用いているが、これに限定されるものではなく、LAN以外の種々の通信手法を用いることができる。又、通知部24や検知部27,失敗通知部28等は、この通信手法の仕様に応じた種々の機能を用いて適宜実現することができる。
同様に、上述した実施形態においては、複数のサーバ2とRAID装置10とを通信可能に接続する第1の通信回線52としてFC回線を用いているが、これに限定されるものではなく、FC回線以外の種々の通信手法を用いることができる。又、失敗通知部28等は、この通信手法の仕様に応じた種々の機能を用いて適宜実現することができる。
また、上述した実施形態においては、サーバ2においてVDSHPの機能を用いて第1構成情報変更部23等の機能を実現しているが、これに限定されるものではなく、VDSHP以外の手法を用いて、サーバ2における各部の機能をそれぞれ実現してもよい。
1 ストレージシステム
2,2a,2b,2c サーバ(情報処理装置)
10 RAID装置
11 第1構成情報
12 第1構成情報格納部
13 通知失敗履歴情報
14 通知失敗履歴情報格納部
15,15a,15b,15c 第2構成情報
21 VDSHP
22 第2構成情報格納部
23 第1構成情報変更部
24 通知部
25 変更箇所情報格納部
26 更新部
27 検知部
28 失敗通知部
29 通知失敗履歴確認部
30 全更新部
40 HDD
51 LAN(通信回線,第2の通信回線)
52 FC回線(第1の通信回線)
101 チャネルインタフェース
102 制御モジュール
103 ドライブエンクロージャ
121 CPU
122 RAM
123 ROM
201 CPU
202 RAM
203 ROM
204 記憶装置

Claims (8)

  1. データが格納されるとともに、第1構成情報格納部に格納された第1構成情報に基づいて該データにかかる処理を行なうストレージ装置と、
    該ストレージ装置と第1の通信回線を介して接続され、該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部をそなえ、該第1構成情報を変更可能な複数の情報処理装置とをそなえたストレージシステムにおける処理方法であって、
    該複数の情報処理装置のうちの一の情報処理装置が、該ストレージ装置の第1構成情報を変更する第1構成情報変更ステップと、
    該一の情報処理装置が、該第1の通信回線とは異なる第2の通信回線を介して接続された、当該ストレージシステムにおける前記複数の情報処理装置のうち該一の情報処理装置とは異なる他の情報処理装置に対して、該第1構成情報変更ステップにおいて変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知ステップと、
    該通知ステップにおいて該変更箇所情報を通知された該他の情報処理装置が、当該変更箇所情報を変更箇所情報格納部に格納する格納ステップと、
    該他の情報処理装置が、該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報格納部に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新ステップとをそなえることを特徴とする、処理方法。
  2. 該一の情報処理装置において、該他の情報処理装置に対する該変更箇所情報の通知の失敗を検知する検知ステップと、
    該検知ステップにおいて該他の情報処理装置に対する該変更箇所情報の通知の失敗が検知された場合に、該第一の通信回線を介して、該ストレージ装置に対して、該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨を通知する失敗通知ステップと、
    該ストレージ装置において、該失敗通知ステップにおいて該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨が通知された場合に、該変更箇所情報の通知先である該他の情報処理装置に関する情報を通知失敗履歴情報として、通知失敗履歴情報格納部に格納する通知失敗履歴情報格納ステップと、
    該他の情報処理装置が、該ストレージ装置の該第1構成情報の変更に先立って、該通知失敗履歴情報格納部に当該他の情報処理装置に関する該通知失敗履歴情報が格納されているか否かを確認する通知失敗履歴確認ステップと、
    該他の情報処理装置において、該通知失敗履歴確認ステップにおいて当該他の情報処理装置に関する通知失敗履歴情報が格納されていることを確認した場合に、該ストレージ装置の該第1構成情報で、当該他の情報処理装置の該第2構成情報の全てを更新する全更新ステップとをそなえることを特徴とする、請求項1記載の処理方法。
  3. データが格納されるとともに、第1構成情報格納部に格納された第1構成情報に基づいて該データにかかる処理を行なうストレージ装置と、該ストレージ装置と第1の通信回線を介して接続された複数の情報処理装置とをそなえたストレージシステムであって、
    該複数の情報処理装置のうちの一の情報処理装置が、
    該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、
    該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、
    第2の通信回線を介して接続された、当該ストレージシステムにおける前記複数の情報処理装置のうち当該情報処理装置とは異なる他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、
    該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報格納部に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部とをそなえることを特徴とする、ストレージシステム。
  4. 該複数の情報処理装置のうちの一の情報処理装置が、
    該他の情報処理装置に対する該変更箇所情報の通知の失敗を検知する検知部と、
    該検知部により該他の情報処理装置に対する該変更箇所情報の通知の失敗が検知された場合に、該ストレージ装置に対して、該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨を通知する失敗通知部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該ストレージ装置において当該他の情報処理装置に関する通知失敗履歴情報が格納されているか否かを確認する通知失敗履歴確認部と、
    該通知失敗履歴確認部により当該他の情報処理装置に関する通知失敗履歴情報が格納されていることを確認した場合に、該ストレージ装置の該第1構成情報で、当該情報処理装置の該第2構成情報の全てを更新する全更新部とをそなえ、
    該ストレージ装置が、
    該失敗通知部により該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨が通知された場合に、該変更箇所情報の通知先である該他の情報処理装置に関する情報を通知失敗履歴情報として格納する通知失敗履歴情報格納部をそなえることを特徴とする、請求項3記載のストレージシステム。
  5. 第1構成情報格納部に格納された第1構成情報に基づいてデータにかかる処理を行なうストレージ装置と、第1の通信回線を介して接続された情報処理装置であって、
    該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、
    該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、
    第2の通信回線を介して接続された、他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、
    該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報格納部に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部とをそなえることを特徴とする、情報処理装置。
  6. 該他の情報処理装置に対する該変更箇所情報の通知の失敗を検知する検知部と、
    該検知部により該他の情報処理装置に対する該変更箇所情報の通知の失敗が検知された場合に、該ストレージ装置に対して、該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨を通知する失敗通知部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該ストレージ装置において当該他の情報処理装置に関する通知失敗履歴情報が格納されているか否かを確認する通知失敗履歴確認部と、
    該通知失敗履歴確認部により当該他の情報処理装置に関する通知失敗履歴情報が格納されていることを確認した場合に、該ストレージ装置の該第1構成情報で、当該情報処理装置の該第2構成情報の全てを更新する全更新部とをそなえることを特徴とする、請求項5記載の情報処理装置。
  7. 第1構成情報格納部に格納された第1構成情報に基づいてデータにかかる処理を行なうストレージ装置と第1の通信回線を介して接続されたコンピュータに、制御機能を実行させるためのプログラムであって、
    該第1構成情報の複写としての第2構成情報を格納する第2構成情報格納部と、
    該ストレージ装置の第1構成情報を変更する第1構成情報変更部と、
    第2の通信回線を介して接続された、他の情報処理装置に対して、該第1構成情報変更部によって変更を行なった該第1構成情報における変更箇所を表す変更箇所情報を通知する通知部と、
    該他の情報処理装置から通知される該変更箇所情報を格納する変更箇所情報格納部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該第2構成情報における、該変更箇所情報格納部に格納された該変更箇所情報によって示される該変更箇所を、該第1構成情報に基づいて更新する更新部として、該コンピュータを機能させることを特徴とする、プログラム。
  8. 該プログラムが、
    該他の情報処理装置に対する該変更箇所情報の通知の失敗を検知する検知部と、
    該検知部により該他の情報処理装置に対する該変更箇所情報の通知の失敗が検知された場合に、該ストレージ装置に対して、該他の情報処理装置に対する該変更箇所情報の通知を失敗した旨を通知する失敗通知部と、
    該ストレージ装置の該第1構成情報の変更に先立って、該ストレージ装置において当該他の情報処理装置に関する通知失敗履歴情報が格納されているか否かを確認する通知失敗履歴確認部と、
    該通知失敗履歴確認部により当該他の情報処理装置に関する通知失敗履歴情報が格納されていることを確認した場合に、該ストレージ装置の該第1構成情報で、当該情報処理装置の該第2構成情報の全てを更新する全更新部として、該コンピュータを機能させることを特徴とする、請求項7記載のプログラム。
JP2009235181A 2009-10-09 2009-10-09 処理方法,ストレージシステム,情報処理装置およびプログラム Expired - Fee Related JP5170055B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009235181A JP5170055B2 (ja) 2009-10-09 2009-10-09 処理方法,ストレージシステム,情報処理装置およびプログラム
US12/900,381 US8381029B2 (en) 2009-10-09 2010-10-07 Processing method, storage system, information processing apparatus, and computer-readable storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009235181A JP5170055B2 (ja) 2009-10-09 2009-10-09 処理方法,ストレージシステム,情報処理装置およびプログラム

Publications (2)

Publication Number Publication Date
JP2011081706A JP2011081706A (ja) 2011-04-21
JP5170055B2 true JP5170055B2 (ja) 2013-03-27

Family

ID=43855794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009235181A Expired - Fee Related JP5170055B2 (ja) 2009-10-09 2009-10-09 処理方法,ストレージシステム,情報処理装置およびプログラム

Country Status (2)

Country Link
US (1) US8381029B2 (ja)
JP (1) JP5170055B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819208B2 (en) 2010-03-05 2014-08-26 Solidfire, Inc. Data deletion in a distributed data storage system
US9838269B2 (en) 2011-12-27 2017-12-05 Netapp, Inc. Proportional quality of service based on client usage and system metrics
US9054992B2 (en) 2011-12-27 2015-06-09 Solidfire, Inc. Quality of service policy sets
US9602170B2 (en) * 2012-03-27 2017-03-21 Panasonic Intellectual Property Management Co., Ltd. Electrical instrument
JP5966765B2 (ja) * 2012-08-22 2016-08-10 富士通株式会社 情報処理システム、中継装置、情報処理プログラム、及び情報処理方法
ES2659491T3 (es) 2012-09-05 2018-03-15 E3D Agricultural Cooperative Association Ltd. Dispositivo de autoinyección electrónico
US9170746B2 (en) 2014-01-07 2015-10-27 Netapp, Inc. Clustered raid assimilation management
US20150244795A1 (en) 2014-02-21 2015-08-27 Solidfire, Inc. Data syncing in a distributed system
US9798728B2 (en) 2014-07-24 2017-10-24 Netapp, Inc. System performing data deduplication using a dense tree data structure
US10133511B2 (en) 2014-09-12 2018-11-20 Netapp, Inc Optimized segment cleaning technique
US9671960B2 (en) 2014-09-12 2017-06-06 Netapp, Inc. Rate matching technique for balancing segment cleaning and I/O workload
US9836229B2 (en) 2014-11-18 2017-12-05 Netapp, Inc. N-way merge technique for updating volume metadata in a storage I/O stack
US9720601B2 (en) 2015-02-11 2017-08-01 Netapp, Inc. Load balancing technique for a storage array
US9762460B2 (en) 2015-03-24 2017-09-12 Netapp, Inc. Providing continuous context for operational information of a storage system
US9710317B2 (en) 2015-03-30 2017-07-18 Netapp, Inc. Methods to identify, handle and recover from suspect SSDS in a clustered flash array
US9740566B2 (en) 2015-07-31 2017-08-22 Netapp, Inc. Snapshot creation workflow
US10235059B2 (en) 2015-12-01 2019-03-19 Netapp, Inc. Technique for maintaining consistent I/O processing throughput in a storage system
US10929022B2 (en) 2016-04-25 2021-02-23 Netapp. Inc. Space savings reporting for storage system supporting snapshot and clones
US10642763B2 (en) 2016-09-20 2020-05-05 Netapp, Inc. Quality of service policy sets
CN110058963B (zh) * 2018-01-18 2023-05-09 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003108420A (ja) 2001-09-27 2003-04-11 Hitachi Ltd データストレージシステム及びこの制御方法
JP2003108412A (ja) * 2001-10-02 2003-04-11 Hitachi Ltd ストレージ管理方式
JP4662117B2 (ja) 2004-03-05 2011-03-30 株式会社日立製作所 ストレージシステム
JP4451687B2 (ja) * 2004-03-22 2010-04-14 株式会社日立製作所 ストレージシステム
JP4585217B2 (ja) 2004-03-29 2010-11-24 株式会社日立製作所 ストレージシステムおよびその制御方法
ES2582364T3 (es) * 2005-12-19 2016-09-12 Commvault Systems, Inc. Sistemas y métodos para realizar replicación de datos
US7617262B2 (en) * 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7636743B2 (en) * 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
JP5091704B2 (ja) * 2008-02-06 2012-12-05 株式会社日立製作所 ストレージ構成回復方法及びストレージ管理システム

Also Published As

Publication number Publication date
US20110087929A1 (en) 2011-04-14
US8381029B2 (en) 2013-02-19
JP2011081706A (ja) 2011-04-21

Similar Documents

Publication Publication Date Title
JP5170055B2 (ja) 処理方法,ストレージシステム,情報処理装置およびプログラム
US8839030B2 (en) Methods and structure for resuming background tasks in a clustered storage environment
CN101571815B (zh) 信息系统及i/o处理方法
JP4520755B2 (ja) データ移行方法およびデータ移行装置
US7555575B2 (en) Method and apparatus for migrating data between storage volumes of different data pattern
KR100962883B1 (ko) 소스 데이터를 타겟 데이터로 이전하는 방법, 시스템 및제조물
US20090150629A1 (en) Storage management device, storage system control device, storage medium storing storage management program, and storage system
US20090043982A1 (en) Automated on-line capacity expansion method for storage device
TW200401970A (en) Method and apparatus for reliable failover involving incomplete raid disk writes in a clustering system
JP2004507813A (ja) 一の記憶システムから他の記憶システムへデータをコピーするための方法及び装置
JP5853649B2 (ja) ストレージ装置,制御装置及びプログラム
US8131957B2 (en) Splitting writes between a storage controller and replication engine
JP2007537522A (ja) 仮想テープ内の仮想ボリューム・データの動的ローディング
US7689786B1 (en) Techniques for overriding device reservations
JP2007265403A (ja) 階層型ストレージシステム間でのリモートミラー方式
US9092144B2 (en) Information processing apparatus, storage apparatus, information processing system, and input/output method
JP6005446B2 (ja) ストレージシステム、仮想化制御装置、情報処理装置、および、ストレージシステムの制御方法
JP2006072435A (ja) ストレージシステムおよびデータ記録方法
US7587530B2 (en) Method and apparatus for managing device reservation
US20160224273A1 (en) Controller and storage system
US20140297981A1 (en) Information processing system, storage device, and backup method
US20140040349A1 (en) Server computer, server computer system, and server computer control method
JP2013029911A (ja) 制御装置、制御方法およびストレージ装置
JP2014032515A (ja) ストレージ装置及びストレージシステム
JP5729043B2 (ja) ストレージ装置および制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121217

R150 Certificate of patent or registration of utility model

Ref document number: 5170055

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees