JP2012504790A - ストレージシステム及びストレージシステムの制御方法 - Google Patents

ストレージシステム及びストレージシステムの制御方法 Download PDF

Info

Publication number
JP2012504790A
JP2012504790A JP2011514922A JP2011514922A JP2012504790A JP 2012504790 A JP2012504790 A JP 2012504790A JP 2011514922 A JP2011514922 A JP 2011514922A JP 2011514922 A JP2011514922 A JP 2011514922A JP 2012504790 A JP2012504790 A JP 2012504790A
Authority
JP
Japan
Prior art keywords
storage
data
storage device
storage area
remote copy
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
JP2011514922A
Other languages
English (en)
Other versions
JP5226125B2 (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2012504790A publication Critical patent/JP2012504790A/ja
Application granted granted Critical
Publication of JP5226125B2 publication Critical patent/JP5226125B2/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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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/0617Improving the reliability of storage systems in relation to availability
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/825Indexing scheme relating to error detection, to error correction, and to monitoring the problem or solution involving locking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories
    • G06F2212/284Plural cache memories being distributed

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

ストレージシステム1は、外部装置300と通信可能に接続されている第1のストレージ装置100、及び第2のストレージ装置100を備える。前記第1のストレージ装置及び前記第2のストレージ装置は、それぞれ前記外部装置から選択的にアクセス可能な第1の記憶領域VDEV及び第2の記憶領域VDEVと、第1の一時記憶領域113及び第2の一時記憶領域113と、データコピー処理を制御するリモートコピー制御部1122とを有する。ストレージシステム1はデータI/O処理権限情報を記憶するデータI/O処理権限情報記憶部LDKを備え、前記いずれかのリモートコピー制御部は、前記データI/O処理権限情報に従って、自身の属する第1又は第2のストレージ装置が有する前記第1の記憶領域及び第1の一時記憶領域、又は前記第2の記憶領域及び第2の一時記憶領域に格納されているデータを他方のストレージ装置側にコピーする。
【選択図】図1

Description

本発明は、ストレージシステム及び複数のストレージ装置を備えたストレージシステムの制御方法に係わり、特にストレージ装置が提供する記憶領域をより効率的に、かつ有効に利用することを可能とするストレージシステム及び複数のストレージ装置を備えたストレージシステムの制御方法に関する。
ホスト装置等の外部装置にデータの記憶領域を提供するストレージ装置について、当該ストレージ装置内に設けられているハードディスクドライブ(Hard Disk Drive、以下「HDD」)だけでなく、当該ストレージ装置のディスク制御部(DisK Controller。以下「DKC」)に対して外部接続された、他の外部ストレージ装置のHDDが提供する物理的記憶領域に基づいて仮想的な単位記憶領域である仮想論理デバイス(Virtual logical DEVice、以下「VDEV」)を外部装置に提供する、ストレージの仮想化機構が利用されるようになってきている。
このような仮想化機構によれば、あらかじめ外部装置への記憶領域を固定的に割り当てるのではなく、外部装置が必要とする記憶容量に応じて動的に記憶領域を割り当てることができるため、ストレージ装置のハードウェア資源を有効に利用することができる。このようなストレージの仮想化機構の一例が、例えば特許文献1〜特許文献3に開示されている。
しかしながら、前記仮想化機構によると、例えばストレージ装置のDKCに障害が生じた場合、外部ストレージ装置によって提供されているVDEVがすべて利用することができなくなるという問題があった。この問題については、例えば特許文献3に、外部装置から交代パス接続によって2台のDKCを接続し、外部装置に対するDKCを二重系で使用する構成が提案されている。
特開2006−285876号公報 特開2007−72538号公報 特開2005−107645号公報 特開2008−225753号公報
しかし、単にDKCを二重化した構成では、なお、各DKCのキャッシュメモリ(Cache Memory、以下「CM」)に格納されているデータに相互の整合がとられていない場合、CM内のデータを各DKCが外部ストレージ装置のHDDに書き込むデステージ処理を行ったときに、HDDのデータが不正な旧データで上書きされてしまうおそれがあるという問題があった。
本発明は、例えば上記の課題を解決するためになされたもので、ストレージ装置が外部装置に対して提供する記憶領域をより効率的に、かつ有効に利用することを可能とするストレージシステム及びストレージシステムの制御方法を提供する
上記の、及び他の課題を解決するために、本発明の一態様は、外部装置300と通信可能に接続されている第1のストレージ装置100、及び第2のストレージ装置100を備え、前記第1のストレージ装置及び前記第2のストレージ装置は、それぞれ前記外部装置のデータを格納するために、前記外部装置から選択的にアクセス可能な第1の記憶領域VDEV及び第2の記憶領域VDEVと、前記第1の記憶領域及び第2の記憶領域に対する入出力データを一時的に記憶する第1の一時記憶領域113及び第2の一時記憶領域113と、前記第1の記憶領域と前記第2の記憶領域との間、及び前記第1の一時記憶領域と前記第2の一時記憶領域との間でのデータコピー処理を制御するリモートコピー制御部1122とを有し、前記第1の記憶領域及び前記第2の記憶領域は、前記第1のストレージ装置及び第2のストレージ装置と通信可能に接続されている第3のストレージ装置400に設けられている、少なくとも1の物理記憶媒体から生成される論理デバイスが仮想的に割り当てられることによって形成されているストレージシステム1であって、前記第1の記憶領域及び前記第2の記憶領域のいずれが前記外部装置のデータI/Oを処理する権限を有しているかを示すデータI/O処理権限情報を記憶するデータI/O処理権限情報記憶部LDKを備え、前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記データI/O処理権限情報記憶部に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、自身の属する第1又は第2のストレージ装置が有する前記第1の記憶領域及び第1の一時記憶領域、又は前記第2の記憶領域及び第2の一時記憶領域に格納されているデータを他方のストレージ装置側にコピーするストレージシステムである。
本発明によれば、ストレージ装置が提供する記憶領域をより効率的に、かつ有効に利用することを可能とするストレージシステム及びストレージシステムの制御方法が提供される。
図1は、本発明の一実施形態に係るストレージシステムの概略構成を示す図である。 図2は、ホスト装置、管理装置として使用されるコンピュータの一般的な構成を示す図である。 図3は、ホスト装置のソフトウェア構成の一例を示す図である。 図4は、管理装置のソフトウェア構成の一例を示す図である。 図5は、ストレージ装置及び外部ストレージ装置の構成の一例を示す図である。 図6は、ストレージ装置が備える共有メモリの構成の一例を示す模式図である。 図7は、ストレージ装置の筐体外観の一例を示す図である。 図8は、複数の外部ストレージ装置を備えるストレージシステムの構成の一例を示す図である。 図9は、ホスト装置、ストレージ装置、及び外部ストレージ装置間の通信経路の一例を示す模式図である。 図10は、本実施形態のストレージシステムにおける制御の概要を示す模式図であるである。 図11は、本実施形態のストレージシステムにおけるVDEV間のコピーペア状態とオーナー権との関係を示す図である。 図12は、P−VOL側のストレージ装置からデステージする場合の制御の概要を示す模式図である。 図13は、S−VOL側のストレージ装置からデステージする場合の制御の概要を示す模式図である。 図14は、外部ストレージ装置管理テーブル(ストレージ装置1側)の一例を示す図である。 図15は、外部ストレージ装置管理テーブル(ストレージ装置2側)の一例を示す図である。 図16は、ロックディスク管理テーブル(ストレージ装置1側)の一例を示す図である。 図17は、ロックディスク管理テーブル(ストレージ装置2側)の一例を示す図である。 図18は、コピーペア管理テーブルの一例を示す図である。 図19は、本発明の一実施形態におけるロックディスク登録処理フローの一例を示す図である。 図20は、本発明の一実施形態におけるコピーペア作成処理フローの一例を示す図である。 図21は、本発明の一実施形態におけるVDEV同一判定処理フローの一例を示す図である。 図22は、本発明の一実施形態におけるストレージ装置1側への書き込み処理フローの一例を示す図である。 図23は、本発明の一実施形態におけるストレージ装置1側からの読み出し処理フローの一例を示す図である。 図24は、本発明の一実施形態におけるストレージ装置2側への書き込み処理フローの一例を示す図である。 図25は、本発明の一実施形態におけるストレージ装置2側からの読み出し処理フローの一例を示す図である。 図26は、本発明の一実施形態におけるコピーペアのサスペンド処理フローの一例を示す図である。 図27は、本発明の一実施形態におけるストレージ装置1側からのデステージ処理フローの一例を示す図である。 図28は、本発明の一実施形態におけるストレージ装置2側からのデステージ処理フローの一例を示す図である。 図29は、本発明の一実施形態におけるスワップリシンク処理フローの一例を示す図である。 図30は、本発明の一実施形態におけるキャッシュメモリの非同期フルコピー処理フローの一例を示す図である。
以下、添付図面を参照して、本発明の一実施形態について説明する。
<本実施形態に係るストレージシステムの構成>
まず、図1を参照して、本実施形態に係るストレージシステムの構成について説明する。図1は、本実施形態に係るストレージシステム1の構成の一例を示す図である。図1に示すように、本実施形態のストレージシステム1は、2台のストレージ装置100と、本システム1の管理装置200と、外部装置としてのホスト装置300と、2台の外部ストレージ装置400とを備えている。
なお、以下の説明では、複数のストレージ装置100、外部ストレージ装置400について、互いに区別する場合には、それぞれストレージ装置1,2、あるいは外部ストレージ装置1,2と呼ぶことにする。
ホスト装置300とストレージ装置100、及びストレージ装置100と外部ストレージ装置400との間は、それぞれ通信ネットワークN1によって相互に通信可能に接続されている。この通信ネットワークN1は、本実施形態では例えばファイバチャネル(Fibre Channel、以下「FC」)プロトコルによって通信可能なSAN(Storage Area Network)であり、各通信ネットワークN1は、通常複数のFCスイッチ(図示略)を備えた冗長構成となるように構成されている。
管理装置200と、ストレージ装置100、外部ストレージ装置400、ホスト装置30それぞれとの間は、通信ネットワークN2によって相互に通信可能に接続されている。この通信ネットワークN2は、本実施形態では例えばIP(Internet Protocol)接続を可能とするLAN(Local Area Network)である。
図1に模式的に示しているように、各外部ストレージ装置400に設けられているHDDが提供する物理記憶領域から、論理的な単位記憶領域である論理デバイス(Logical DEVice、以下「LDEV」)が作成されている。そして、後述するように、この外部ストレージ装置400のLDEVが、ストレージ装置100のVDEVとして、ホスト装置300に提供されている。図1の例では、2台の外部ストレージ装置400(外部ストレージ装置1,2)のうち、外部ストレージ装置1のLDEVが、2台のストレージ装置100(ストレージ装置1,2)それぞれのVDEVにマッピングされており、ホスト装置300で稼働するアプリケーションは、あたかも1つのVDEVとの間でデータの書き込み、読み出しを行っているように認識する。
ホスト装置300と各ストレージ装置100との間のデータI/Oパスは、ストレージ装置1及びストレージ装置2との間で交代パスとして構成されており、ホスト装置300は、通常はストレージ装置1との間でデータI/O処理を行い、所定の条件の下で、ストレージ装置2との間でデータI/O処理を行うようにデータI/Oパスが切り換えられる。
(管理装置200、ホスト装置300の構成)
次に、管理装置200、及びホスト装置300の構成について説明する。図2に、管理装置200、及びホスト装置300として利用可能なコンピュータ10のハードウェア構成の一例を示している。このコンピュータ10は、中央処理装置11(例えばCPU(Central Processing Unit)やMPU(Micro Processing Unit)、以下簡単のため「CPU」と称する)、主記憶装置12(例えばRAM(Random Access Memory)やROM(Read Only Memory))、補助記憶装置13(例えばハードディスク)、ユーザの操作入力を受け付ける入力装置14(例えばキーボードやマウス)、出力装置15(例えば液晶モニタ)、他の装置との間の通信を実現する通信インターフェース16(例えばNIC(Network Interface Card)やHBA(Host Bus Adapter))を備えている。
次に、管理装置200について説明する。管理装置200は、図2に示すように、その内部に、CPU11、主記憶装置12、及び通信インターフェース16を備えている。CPU11、主記憶装置12、及び通信インターフェース16は相互にバスを介して接続されている。CPU11は、主記憶装置12に格納されている各種プログラムを実行する演算処理装置である。主記憶装置12は、いわゆる内部記憶装置であり、各種プログラム等を記憶する不揮発性メモリおよび演算処理結果を一時的に格納する揮発性メモリの双方を含む。通信インターフェース16は、本実施形態ではLANである通信ネットワークN2を介してストレージ装置100、外部ストレージ装置400、及びホスト装置300と接続されている。
図3に、管理装置200のソフトウェア構成の一例を示す。管理装置200は、通信ネットワークN2を介して、各ストレージ装置100の構成を管理し、ホスト装置300に指示を与える機能を有する。管理装置200は、ストレージシステム1を管理するために必要とされる基本的機能に加えて、ロックディスク設定部211とリモートコピー設定部212とを備える。管理装置200の主記憶装置12には、ロックディスク設定部211及びリモートコピー設定部212の機能を実現するためのプログラムが格納されている。データI/O部213は、ストレージ装置100、外部ストレージ装置400、及びホスト装置300との間のデータ入出力を制御する。
ロックディスク設定部211は、本実施形態のストレージシステム1が有するストレージ装置1,2のうち、どちらがホスト装置300からのデータI/Oを受け付ける権限を有しているかを管理するために用いられる「オーナー権」(データI/O処理権限情報)を記録するHDDである、ロックディスク(Lock DisK、以下「LDK」)を設定する機能を有する。なお、オーナー権及びLDKについてはあらためて後述する。
リモートコピー設定部212は、ストレージ装置1,2内のVDEVを、いずれかをコピー元となる主論理デバイス(ここでは、一般的な用語として以下「P−VOL」(Primary Volume、主論理デバイス)と称する。)、他方をコピー先となる副論理デバイス(同様に、以下「S−VOL」(Secondary Volume、副論理デバイス)と称する。)とし、P−VOLとS−VOLとをコピーペアとして設定する機能、及びこのコピーペアとLDKとを関連付ける機能を有する。
次に、ホスト装置300について説明する。ホスト装置300のハードウェア構成については、図2に関して説明したのと同様であるから省略する。図4に、ホスト装置300のソフトウェア構成の一例を示している。このホスト装置300は、ホスト装置300の基本的な機能を提供するためのOS(Operation System)と、このOS上で動作するアプリケーションプログラム311、パス管理制御部312、及びデータI/O部313を備えている。
アプリケーションプログラム311は、種々の業務プログラムを含み、一又は複数のアプリケーションプログラムを実装することができる。パス管理制御部312は、ホスト装置300とストレージ装置1,2との間でのデータI/Oパスの設定を管理する。具体的には、例えば通常はストレージ装置1との間にデータI/Oパスを設定しておき、当該データI/Oパスの状態を監視し、ストレージ装置1から書込要求に対してエラーが返される場合、あるいは書き込み要求をリトライしても応答が返ってこないと判定した場合に、データI/Oパスをストレージ装置2に切り換える。
データI/O部313は、ストレージ装置100、外部ストレージ装置400、及び管理装置200との間のデータ入出力を制御する。なお、ホスト装置300のOSとして、仮想サーバ機能を提供する仮想化ソフトウェア、例えばXen(登録商標)、VMWare(登録商標)を実装して、仮想サーバとして運用するようにしてもよい。
(ストレージ装置100、外部ストレージ装置400の構成)
次に、ストレージ装置100、外部ストレージ装置400について説明する。図5に、ストレージ装置100、及び外部ストレージ装置400の構成の一例を示している。ストレージ装置100は、ディスク制御部(DKC)110と、複数のハードディスクドライブ(HDD)121を含むディスクユニット120とを備えて構成される。本実施形態のストレージ装置100は、複数のHDD121を適宜のRAID構成で編成してなるディスクアレイ装置であり、一又は複数のRAID構成されたRAIDグループ122を提供する。RAIDグループ122は、一又は複数の論理デバイス(LDEV)を提供する。なお、HDD500に代えて半導体記憶デバイス(Solid State Drive、「SSD」)等の他の記憶媒体を採用することができる。
本実施形態のストレージ装置100は、上記の装置内部に設けられているHDD121から作成されるLDEVとともに、後述する外部ストレージ装置400のHDD421によって作成されるLDEVを仮想化して得られる仮想論理デバイス(VDEV)を、ホスト装置300のデータ記憶領域として提供することができる。なお、ストレージ装置100自身はLDEVを提供せず、外部ストレージ装置400のLDEVから作成されたVDEVのみをホスト装置300に提供する構成とすることができる。本実施形態では、以下各ストレージ装置100が外部ストレージ装置400のLDEVから作成されたVDEVを一つ備えているものとする。
ストレージ装置100のディスク制御部110は、図5に示すように、CPU111、共有メモリ(Shared Memory、以下「SM」)112、キャッシュメモリ(CM)113、チャネルアダプタ(CHannel Adapter、以下「CHA」)114、ディスクアダプタ(DisK Adapter、以下「DKA」)115、及びサービスプロセッサ(SerVice Processor、以下「SVP」)116と、これらを接続する内部ネットワーク117とを備えている。
CPU111は、後述する共有メモリ112に格納されている各種プログラムを実行する演算処理装置である。
共有メモリ112は、いわゆる内部記憶装置であり、各種プログラムとそれらが使用するテーブル等を記憶する不揮発性メモリおよび演算処理結果を一時的に格納する揮発性メモリの双方を含む。キャッシュメモリ(一時記憶領域)113は、後述するDKA115及びCHA114からの読み出しデータを一時的に格納しておきデータ読み出し時間の短縮を図るためのデータバッファ用メモリである。DKA115は、HDD121と接続されて、ディスク制御部110とHDD121との間でのデータ入出力を制御している。なお、ストレージ装置100内にHDD121を設けない場合、DKA115は設けられないことがある。
CHA114は、本実施形態ではFCプロトコルを用いたSANである通信ネットワークN1とのデータ入出力を制御する通信インターフェースであり、複数の通信ポートを備え、通信ネットワークN1を介して、ホスト装置300及び外部ストレージ装置400と接続されている。CHA114を通じて、外部ストレージ装置400のHDD412へのデータ書き込み、データ読み出しが実行される。
SVP116は、ストレージ装置100の構成情報及び動作状態情報等を収集し、あるいはディスク制御部110へ指示を与えるための機能を有するプログラムを記憶するメモリと、それらのプログラムを実行するプロセッサとを含むコンピュータであり、本実施形態ではIP接続されたLANである通信ネットワークN2とのデータ入出力を制御する通信インターフェースの機能も有する。SVP116は、通信ネットワークN2を介して管理装置200と接続されている。なお、SVP116としての機能を有しない、単なる通信インターフェースとしてのネットワークインターフェースカード(Network Interface Card)を設けてもよい。
次に、共有メモリ112について説明する。図6に、共有メモリ112の構成の一例を示している。共有メモリ112には、仮想化管理部1121、リモートコピー制御部1122、及びデータI/O部1123と、外部ストレージ装置管理テーブル1124、ロックディスク管理テーブル1125、及びコピーペア管理テーブル1126が格納されている。
仮想化管理部1121は、外部ストレージ装置400が提供するLDEVと、ホスト装置300に対して提供される仮想論理デバイスであるVDEVとの対応関係をマッピングし、ホスト装置300が透過的に外部ストレージ装置400の記憶領域をストレージ装置100の記憶領域として認識し、データ入出力を実行できるようにする機能を備える。
リモートコピー制御部1122は、本実施形態のストレージシステム1における主要な処理を実現する機能を有し、ホスト装置300とのデータ入出力に関するオーナー権の制御、ストレージ装置100間でのCM113のデータコピーの制御、及びストレージ装置100のCM113に格納されているデータを外部ストレージ装置400のHDD412に書き込むデステージ処理の制御等の処理を行う。これらの処理については、フローチャート等を参照して後述する。データI/O部1123は、DKC110のデータ入出力制御を行う。外部ストレージ装置管理テーブル1124、ロックディスク管理テーブル1125、及びコピーペア管理テーブル1126の構成と役割については後述する。
次に、外部ストレージ装置400について、図5を参照して説明する。図5に示すように、外部ストレージ装置400の構成は、基本的にストレージ装置100と同じであるが、共有メモリ112の構成において、例えば仮想化管理部1121、及びリモートコピー制御部1122と、これらが使用するテーブルは省略される。
図7にストレージ装置100の外観斜視図(一例)を示している。ストレージ装置100は、DKC110が実装される基本筐体101と、増設用のハードディスクドライブ171が実装される増設筐体102とを備えている。
(複数のVDEV及びLDEVを有する構成例)
図8に、本実施形態のストレージシステム1のより一般的な構成例を示している。図8の例では、4台の外部ストレージ装置400にそれぞれLDEV1〜LDEV4が設けられており、このLDEVそれぞれに対して、ストレージ装置100内に、VDEV1〜VDEV4が作成されている。ホスト装置300は、外部ストレージ装置400のLDEVによって提供される記憶領域を、ストレージ装置1又はストレージ装置2内のVDEVを介して使用することができる。なお、ストレージ装置100内の各VDEVを、さらに複数の論理ユニット(Logical Unit、「LU」)としてホスト装置300に提供してもよい。
<本実施形態のストレージシステム1の機能>
次に、本実施形態のストレージシステム1によって実現される主要な機能の概要を説明する。図9に、ストレージシステム1のホスト装置300、ストレージ装置1,2(100)、外部ストレージ装置400、及びロックディスク(LDK)との間に設けられている通信経路を模式的に示している。ホスト装置300は図2及び図3に関して説明した構成を有し、ホストバスアダプタ(HBA)320によって、各ストレージ装置100のCHA1(114)に接続されている。これにより、ホスト装置300からストレージ装置100へデータ書き込み/読み出し要求が送信されると共に、ホスト装置300はストレージ装置100から読み出されたデータを受信する。
各ストレージ装置100のDKC110の間は、CHA2(114)を介して互いに通信可能に接続されており、後述するように、CM113に格納されているデータのコピー、あるいは各種制御信号の授受が行われる。
各ストレージ装置100のCHA3(114)と外部ストレージ装置400との間では、ストレージ装置100のDKC110にある仮想化管理部1121の機能により、ホスト装置300からストレージ装置100のVDEVへのデータI/Oが、外部ストレージ装置400の所定のLDEVへの送受信として実行される。
各ストレージ装置100のCHA4(114)は、外部ストレージ装置400のHDD412と通信可能に接続されている。これにより、管理装置200のロックディスク設定部211によって、ロックディスク(LDK)が後述の外部ストレージ装置管理テーブル1124に登録される。
図10に、ストレージシステム1の機能の概要を模式的に示している。図9に示した通信経路によって、ストレージ装置1のVDEVとストレージ装置2のVDEVとは、リモートコピーの正論理ボリューム(P−VOL)と、副論理ボリューム(S−VOL)のペアとして設定されている。正常状態では、ホスト装置300からのデータI/Oは、P−VOLであるストレージ装置1のVDEVとの間で行われる。P−VOLであるストレージ装置1のVDEVにデータ書き込みがあった場合、そのデータ書き込みは、適時にS−VOLであるストレージ装置2のVDEVに差分コピー等によって反映される。したがって、P−VOLを有するストレージ装置1に障害が発生した場合にも、S−VOLを有するストレージ装置2を用いてホスト装置300を稼働させることができる。
また、ストレージ装置1のCM113とストレージ装置2のCM113との間では、格納されているデータのコピーが行われ、ホスト装置300のデータI/O対象が変更された場合でも、ただちにCM113の格納データを利用して効率的なデータI/Oを実行することができる。
<リモートコピーペア状態とオーナー権との関係>
ここで、リモートコピーのペアを構成しているP−VOL(ストレージ装置1のVDEV)とS−VOL(ストレージ装置2のVDEV)との状態と、ホスト装置300からのデータI/O対象を決定するオーナー権との関係を説明する。図11に、リモートコピーペア状態とオーナー権との関係を表形式で示している。
P−VOLとS−VOLとのペアが正常に機能している「ペア」の状態では、ホスト装置300のデータI/Oを受け付ける権限であるオーナー権は、P−VOLが保持しており、当該P−VOLはホスト装置300との間でデータI/Oが可能である。このとき、S−VOLに対してホスト装置300のデータI/Oは行われない。S−VOLとホスト装置300との間のデータI/Oは、ペアの状態が後述するSSWS(S-VOL SWap Suspend)状態になったときに許可される。
P−VOLからS−VOLへのデータコピーが、S−VOL側のストレージ装置2、あるいはDKC110間のデータ通信経路等の障害など、なんらかの理由で実行できなくなった場合、ペアの状態は「障害サスペンド」状態に遷移する。この状態では、オーナー権は依然P−VOL側のストレージ装置1が保持しており、S−VOLとホスト装置300とはデータI/Oを行わない。
正常な状態である「ペア」状態において、ホスト装置300からP−VOLへのデータI/Oに対して、ストレージ装置1から所定のリトライ回数を超えても応答がない、等、ストレージ装置1あるいはホスト装置300とストレージ装置1との間の通信経路上の異常等が存在すると、ホスト装置300のパス管理制御部312が判定した場合、ホスト装置300のパス管理制御部312は、データI/OパスをS−VOL側のストレージ装置2に移動させる。このとき、オーナー権はS−VOLに移動し、ホスト装置300は以後S−VOLとの間でデータI/Oを行う。
<本実施形態におけるキャッシュメモリデータのデステージの態様>
次に、図12及び図13を参照して、本実施形態におけるキャッシュメモリ(CM)格納データの、外部ストレージ装置400のHDD412へのデステージについて説明する。図12はP−VOL側のストレージ装置1にあるCM113から外部ストレージ装置400のLDEVを構成しているHDD412へのデステージ手順を示す模式図、図13はS−VOL側のストレージ装置2からの同様のデステージ手順を示す模式図である。
(P−VOL側のCM113からのデステージ手順)
図12を参照すると、ホスト装置300は、P−VOLとの間でデータI/Oを行っており、ホスト装置300からのデータ書き込み要求は、P−VOL側のCM113に格納される((a)Writeデータ)。次に、ストレージ装置1のリモートコピー制御部1122が、自身のCM113に格納されたWriteデータを、ストレージ装置2のCM113へ、ストレージ装置1のCHA2(114)とストレージ装置2のCHA2(114)間のパス(DKC間パス)を通じてコピーする((b)キャッシュデータコピー)。
このとき、ストレージ装置1のCM113とストレージ装置2のCM113にそれぞれ格納されているデータは整合しているので、ストレージ装置1のリモートコピー制御部1122は、自身のCM113に格納されているデータを外部ストレージ装置400へデステージする((c)デステージ)。デステージが成功したと判定した場合、ストレージ装置1のリモートコピー制御部1122は、DKC間パスを介して、ストレージ装置2のリモートコピー制御部1122に対してストレージ装置2のCM113に格納されているデータの削除要求を送信する((d)キャッシュデータ削除要求)。ストレージ装置2のリモートコピー制御部1122は、この削除要求を受信して、自身のCM113のデータを削除して、CM113の記憶領域を解放する。
さらに、ストレージ装置1のリモートコピー制御部1122は、再度自身のCM113内のデータとストレージ装置2のCM113内のデータを整合させるために、自身のCM113に格納されている全データをストレージ装置2のCM113へコピーする。以上のP−VOLからのデステージ処理の詳細については、フローチャートを参照して後述する。
(S−VOL側のCM113からのデステージ手順)
図13を参照すると、図12の場合と同様に、ホスト装置300は、P−VOLとの間でデータI/Oを行っており、ホスト装置300からのデータ書き込み要求は、P−VOL側のCM113に格納される((a)Writeデータ)。次に、ストレージ装置1のリモートコピー制御部1122が、自身のCM113に格納されたWriteデータを、ストレージ装置2のCM113へ、ストレージ装置1のCHA2(114)とストレージ装置2のCHA2(114)間のパス(DKC間パス)を通じてコピーする((b)キャッシュデータコピー)。
このとき、図12の場合と同様に、ストレージ装置1のCM113とストレージ装置2のCM113にそれぞれ格納されているデータは整合している。ここで、ストレージ装置1のリモートコピー制御部1122は、ストレージ装置2のリモートコピー制御部1122に対して、ストレージ装置2のCM113に格納されているデータを外部ストレージ装置400へデステージするように要求する((c)デステージ要求)。ストレージ装置2のリモートコピー制御部1122は、この要求を受信して、自身のCM113に格納されているデータを外部ストレージ装置400へデステージする((d)デステージ)。
ストレージ装置2のリモートコピー制御部1122は、デステージが成功したと判定した場合、ストレージ装置1のリモートコピー制御部1122に、DKC間パスを介して、デステージが完了した旨の通知を送信する((e)デステージ完了通知)。以上のS−VOLからのデステージ処理の詳細については、フローチャートを参照して後述する。
<本実施形態で使用するテーブルの説明>
次に、本実施形態のストレージシステム1における処理で使用されるテーブルについて、図14から図18を参照して説明する。
(外部ストレージ装置管理テーブル1124)
図14,図15に、外部ストレージ装置管理テーブル1124の一例を示す。これらの外部ストレージ装置管理テーブル1124は、ストレージ装置1及び2のSM112にそれぞれ格納されるもので、本ストレージシステム1の運用開始前に、管理装置200から管理者によって設定される。図示の例では、1台の外部ストレージ装置400に、4つのLDEVが構成されており、他の1台の外部ストレージ装置400が、オーナー権を管理するためのロックディスク(LDK)として登録されていることを示している。なお、図示の外部ストレージ装置管理テーブル1124に記録されている情報は、説明のための例示であって、実際の記録内容を示すものではない。以下、他のテーブルの説明についても、同様に図示されているのはあくまでも例示である。
外部ストレージ装置管理テーブル1124には、製番11241、ベンダー名11242、装置名11243、LDEV識別情報11244、LDEV容量11245、VDEV番号11246、管理情報11247、及びパス情報11248の各項目が記録される。この外部ストレージ装置管理テーブル1124の各レコードは、外部ストレージ装置400に構成されているLDEVそれぞれと、ストレージ装置1又は2のVDEVとの間の対応関係を規定している。
製番11241のコラムには、LDEVを提供している、あるいはロックディスクとして登録されている外部ストレージ装置400の製造番号が格納される。図13、図14の例では、LDEVを提供している外部ストレージ装置400の製造番号は「11234」、LDKとして使用されている外部ストレージ装置400の製造番号は「AB555」である。
ベンダー名11242のコラムには、各外部ストレージ装置400を供給したベンダーの名称が記録される。図示の例では、ベンダー名称「HITACHI」が記録されている。
装置名11243のコラムには、各外部ストレージ装置400の装置名称が記録される。図示の例では、HDD412により編成されるRAIDグループによってLDEVを提供している外部ストレージ装置400には「RAID」が、LDKである外部ストレージ装置400には「DF」がそれぞれ記録されている。
LDEV識別情報11244のコラムには、外部ストレージ装置400によって提供されている各LDEVを互いに識別するための符号が記録される。この符号は、図13に示すように、「0000」、「0010」の例のように記録することができ、適宜定めればよい。
LDEV容量11245のコラムには、各LDEVが提供可能な容量が、例えばMByte単位で記録される。
VDEV番号11246のコラムには、外部ストレージ装置400が提供する各LDEVと対応付けられている、ストレージ装置100のVDEVを互いに識別するための符号が記録される。図示の例では4桁の番号が用いられているが、任意に規定した符号を用いてよい。
管理情報11247のコラムには、外部ストレージ装置400がLDKとして登録されていることを示す情報が記録される。図示の例では、「ロックディスク0x00」が記録されている。
パス情報11248のコラムには、外部ストレージ装置400が提供している各LDEVとストレージ装置1,2それぞれとの間に設定されているデータI/Oパスの識別情報が記録されている。
(ロックディスク管理テーブル1125)
図16,図17に、ロックディスク管理テーブル1125の一例を示す。これらのロックディスク管理テーブル1125は、ストレージ装置1及び2のSM112にそれぞれ格納されるもので、本ストレージシステム1の運用開始前に、管理装置200から管理者によって設定される。ロックディスク管理テーブル1125は、ストレージ装置1,2のそれぞれのリモートコピー制御部1122が、自身がホスト装置300からのデータI/Oを受け付ける権限であるオーナー権を保持しているかどうか判定するために使用される。
ロックディスク管理テーブル1125には、ロックディスクID11251、テーブル有効/無効11252、自DKC製番11253、相手DKC製番11254、及び自DKCロック情報11255の各項目が記録される。
ロックディスクID11251のコラムには、LDKを互いに識別するための符号であるロックディスクIDが記録される。このロックディスクID11251は、外部ストレージ装置管理テーブル1124の管理情報11247のコラムに記録されているLDKに関する情報と対応している。
テーブル有効/無効11252のコラムには、そのロックディスク管理テーブル1125が有効であるか無効であるかを示す情報が記録される。この情報は、例えばLDKとしての登録は残したまま、その設定のみを一時的に無効とする場合に利用される。
自DKC製番11253のコラムには、そのロックディスク管理テーブル1125を格納しているSM112を有するDKC110の製造番号が記録される。図16の例では、5桁の数字「64036」であるが、適宜に定めた符号を用いてよい。相手DKC製番11254のコラムには、そのロックディスク管理テーブル1125を格納しているSM112を有するDKC110とDKC間パスで接続されている相手方のDKC110の製造番号が記録される。自DKC製番11253と相手DKC製番11254の組は、互いのVDEV同士がリモートコピーペアを構成しているストレージ装置1,2それぞれのDKC110のペアを意味する。
自DKCロック情報11255のコラムには、自身のDKC110がオーナー権を有しているかどうかを判定するための情報が記録される。本実施形態の図15,16の場合、自身がオーナー権を有しているかどうかをビットマップ情報として記録しており、例えば「オーナー権なし」の場合には全ビットに0を記録し、いずれかのDKC110がオーナー権を有している場合には、所定のビットをオンとしたビットマップ情報を記録することとしている。自DKCロック情報11255として、他の形式で情報を記録することとしてもよい。
(コピーペア管理テーブル1126)
図18に、コピーペア管理テーブル1126の一例を示す。このコピーペア管理テーブル1126は、ストレージ装置1及び2のSM112にそれぞれ格納されるもので、本ストレージシステム1の運用開始前に、管理装置200から管理者によって設定される。コピーペア管理テーブル1126は、ストレージ装置1のVDEVとストレージ装置2のVDEVとの間でリモートコピーのペアが構成されている場合に、そのコピーペアの状態を管理するために用いられる。
コピーペア管理テーブル1126には、製番11261と、ロックディスクID11265と、各製番11261について、P/S種別11262、VDEV識別情報11263、及びペア状態11264の各項目が記録される。
製番11261の項目には、コピーペアを構成している各VDEVを有するストレージ装置100のDKC110の製造番号がそれぞれ記録される。この製番11261は、ロックディスク管理テーブル1125の自DKC製番11253又は相手DKC製番11254と対応している。P/Sを管理しているロックディスクID11265のコラムには、LDKを互いに識別するための符号であるロックディスクIDが記録される。このロックディスクID11265は、外部ストレージ装置管理テーブル1124の管理情報11247のコラムに記録されているLDKに関する情報と対応している。
P/S種別11262のコラムは、各製番11261に対して記録される。P/S種別11262は、対応付けられている製番11261を有するDKC110が管理しているVDEVがP−VOLであるかS−VOLであるかを示している。図17の例では、対応する製番11261を有するDKC110が管理するVDEVがP−VOLである場合には「P」が、S−VOLである場合には「S」が記録される。このP/S種別11262のコラムにおいて、「P」と「S」が入れ替わった場合には、ホスト装置300からストレージ装置1,2へのデータI/Oパスが交代されたことを示す。
VDEV識別情報11263のコラムには、対応する製番11261を有するDKC110によって管理されているVDEVを相互に識別するための符号が記録される。VDEV識別情報11263の組み合わせが、コピーペアを構成しているP−VOLとS−VOLとをそれぞれ特定することになる。
ペア状態11264のコラムには、各コピーペアの状態が、図11によって説明したペア状態とオーナー権の状態に従って記録される。図17の例では、ペア状態が正常である、すなわちホスト装置300からP−VOLへのデータI/O及びP−VOLからS−VOLへのリモートコピーが正常に実行されている状態では、「PAIR状態」が記録される。ホスト装置300からP−VOLへのデータI/Oは正常であるが、P−VOLからS−VOLへのリモートコピーに障害がある場合には、リモートコピー処理を停止する「サスペンド状態」が記録される。
ホスト装置300からP−VOLへのデータI/Oに障害が発生し、ホスト装置300がデータI/OパスをS−VOL側に切り換えた場合、データI/Oを受け付けたS−VOL側のリモートコピー制御部1122は、S−VOL側のペア状態を「SSWS状態」とし、自身のS−VOLがホスト装置300からのデータI/Oを受け付けられる状態とする。
さらに、後述するスワップリシンク処理によってP−VOLとS−VOLとが入れ替えられた場合には、図18の最下行に示されているように、P/S種別11262の「P」、「S」が入れ替えられると共に、ペア状態11264の項目は「ペア状態」と記録される。
ロックディスクID11265のコラムには、各コピーペアの管理に使用されるLDKの識別符号であるロックディスクIDが記録される。このロックディスクID11265は、ロックディスク管理テーブル1125に記録されているロックディスクID11251に対応している。
<本実施形態における処理フローの説明>
次に、以上説明した本実施形態に係るストレージシステム1の構成によって実行される処理について、フローチャートに従って説明する。
(ロックディスク登録処理)
図19に、ロックディスク登録処理フローの一例を示している。ロックディスク登録処理は、ストレージシステム1の運用開始前に、管理装置200のロックディスク設定部211を通じて管理者が設定する。
まず、ストレージ装置1のリモートコピー制御部1122は、管理装置200のロックディスク設定部211から、ロックディスクID、ストレージ装置1製番、及びストレージ装置2製番を受け付ける(S1801)。次いで、SM112から外部ストレージ装置管理テーブル1124からLDEVに関する情報として、ベンダー名、装置名、LDEVID、及びLDEV容量を取得する(S1802)。
リモートコピー制御部1122は、LDEV情報に基づいて当該LDEVが正常であるか判定し(S1803)、正常であると判定した場合(S1803、Yes)、当該LDEV情報を読み込む(S1805)。正常でないと判定した場合は(S1803、No)、エラー表示を通知して処理を終了する(S1804)。
次に、リモートコピー制御部1122は、前記読み込んだLDEV情報によって特定されるLDEVがLDKとして使用されているか判定する(S1806)。すでにLDKとして使用されている、言い換えればすでに当該LDEVがストレージ装置2のリモートコピー制御部1122によってLDKとして登録されていると判定した場合(S1806、Yes)、当該LDEVのLDEV情報であるロックディスクID、ストレージ装置1製番、及びストレージ装置2製番を比較し(S1808)、これらの情報が一致すると判定した場合(S1808、Yes)、外部ストレージ装置管理テーブル1124のLDKID情報に「ストレージ装置1が使用中」であることを示すビットマップ情報を記録する(S1810)。
比較したLDEV情報が一致しないと判定した場合(S1808、No)、LDKとして使用しようとしているLDEVを有するストレージ装置1が一致しないことを意味しているので、エラーを通知して処理を終了する(S1809)。
一方、S1806でLDKとして使用されていないと判定した場合(S1806、No)、外部ストレージ装置管理テーブル1124に、LDKID、ストレージ装置1製番、ストレージ装置2製番、LDK情報初期値(例えば全ビット0に設定したビットマップ情報)、及び「ストレージ装置1が使用中」であることを示すビットマップ情報を記録する(S1807)。次いで、S1807の処理で外部ストレージ装置管理テーブル1124への書き込みが正常に実行されたか判定し(S1811)、正常に実行されたと判定した場合(S1811、Yes)、リモートコピー制御部1122は、SM112のロックディスク管理テーブル1125に、LDKID11251、自DKC(ストレージ装置1のDKC110)製番11253、及び相手DKC(ストレージ装置2のDKC110)製番11254に書き込む。
S1811の処理で、書き込みが正常に終了しなかったと判定した場合(S1811、No)、エラーを通知して処理を終了する(S1804)。
なお、以上図19を参照して説明したLDK登録処理フローは、ストレージ装置1側から登録処理を行った場合を示している。図19においてストレージ装置1をストレージ装置2と置き換えることによって、図19の処理フローはストレージ装置2からのLDK登録処理フローを表すこととなる。
上記の構成により、ストレージ装置1,2は、それぞれ自身がホスト装置300からのデータI/Oを受け付ける権限を有しているか判定し、その判定結果に基づいて、自身がデータI/Oを受け付ける権限であるオーナー権を保持していない場合に、不正にこれを処理することが防止される。
(リモートコピーペア作成処理)
図20に、ストレージ装置1,2がそれぞれ備えるVDEVを組み合わせてリモートコピーのペアを作成するペア作成処理フローを示している。
まず、管理装置200のリモートコピー設定部212によって、リモートコピーのペアを構成させるP−VOL側(ストレージ装置1側)のVDEVID、S−VOL側(ストレージ装置2側)のVDEVID、S−VOL側であるストレージ装置2の製番、及びLDKIDを含むペア作成指示をストレージ装置1に入力する(S1901)。
ストレージ装置1は、S1901で管理装置200から入力された情報を、SM112に設定されているコピーペア管理テーブル1126に格納すると共に(S1902)、同じ情報をストレージ装置2に送信する(S1903)。ストレージ装置2は、ストレージ装置1から受信した情報を、自身のSM112に設定されているコピーペア管理テーブル1126に格納すると共に(S1904)、受信したVDEVに関する情報から自身のVDEVと一致するか判定する(S1905)。このVDEV同一判定処理は、図21に関して後述する。
S1905でストレージ装置2が自身のVDEVと同一と判定した場合、ストレージ装置2はその旨の情報をストレージ装置1に送信する。ストレージ装置1は、当該情報を受信すると、自身のSM112に設定されているLDK管理テーブル1125の自DKCロック情報に全ビット0のビットマップ情報を用いて「オーナー権なし」の情報を記録する(S1906)。以上でストレージ装置1,2のVDEVがリモートコピーペアを形成したので、ストレージ装置1は自身のCM113に格納されている全データを、DKC間パスを通じてストレージ装置2のCM113にコピーして処理を終了する(S1907)。
上記の構成により、同一の外部ストレージ装置400に対応付けられているVDEVのペアについて、リモートコピー処理が実行されるように設定することができる。
(VDEV同一判定処理)
図21にVDEV同一判定処理フローの一例を示している。ストレージ装置2は、自身がSM112に保持している外部ストレージ装置管理テーブル1124を参照し、ストレージ装置1から受信したリモートコピーペアを構成するVDEVに関する情報に基づいて、当該VDEVに関するベンダー名11242、装置名11243が一致するかどうか判定する(S2001)。一致すると判定した場合(S2001、Yes)、さらにVDEVID11244及びVDEV容量11245が一致するか判定する(S2003)。
一致すると判定した場合、ストレージ装置1から指定されたLDEVと自身のVDEVが対応付けられているLDEVとが一致すると判定し処理を終了する(S2004)。S2001、S2003の処理のいずれかで一致しないと判定された場合(S2001又はS2003、No)、ストレージ装置1から指定されたLDEVと自身のVDEVが対応付けられているLDEVとが異なると判定し処理を終了する(S2002)。この場合、処理を図20のペア作成処理に戻さずに、そのまま例えばエラーを通知して終了させることとしてもよい。
上記の構成により、同一の外部ストレージ装置400に対応付けられているVDEVのペアについて、リモートコピー処理が実行されるように設定することができる。
(ストレージ装置1へのデータ書き込み処理)
図22にホスト装置300からストレージ装置1へのデータ書き込み処理フローの一例を示す。この処理フローは、P−VOL側のストレージ装置1にホスト装置300からデータを書き込む場合の処理フローである。この処理フローは、ストレージ装置1のDKC110にあるリモートコピー制御部1122によって実行される。
まず、ホスト装置300からのデータ書き込み先がコピーペアを構成しているVDEVであるかどうか判定する(S2101)。コピーペアを構成していないVDEVであると判定した場合(S2101、No)、リモートコピー制御部1122は、受信したデータI/Oに関わるデータを自身のCM113に書き込んでその旨の情報をホスト装置300へ送信して処理を終了する(S2102、S2103)。
S2101で書き込み先VDEVがコピーペアを構成していると判定した場合(S2101、Yes)、その書き込み先VDEVがP−VOLであるか判定する(S2104)。P−VOLでないと判定した場合(S2104、No)、後述するS−VOLへのデータ書き込み処理に移行する。
書き込み先VDEVがP−VOLであると判定した場合(S2104、Yes)、リモートコピー制御部1122は、自身のコピーペア管理テーブル1126のペア状態11264を参照して正常を示す「ペア状態」が記録されているか判定する(S2105)。ペア状態が正常でないと判定した場合(S2105、No)、S2102に移行してCM113にデータを書き込む。
ペア状態が正常であると判定した場合(S2105、Yes)、ホスト装置300から受信したデータを自身のCM113に書き込むと共に、ストレージ装置2へDKC間パスを通じてデータを転送する(S2106、S2107)。ストレージ装置2では受信したデータを自身のCM113に書き込み、その結果に関する情報をストレージ装置1へ送信する(S2108)。
ストレージ装置1では、ストレージ装置2から受け取った結果情報に基づいてデータが正常に転送されたか判定し(S2109)、正常に転送されたと判定した場合(S2109、Yes)、その旨の情報をホスト装置300に送信して処理を終了する(S2103)。正常に転送されなかったと判定した場合(S2109、No)、ストレージ装置1のリモートコピー制御部1122は、LDKに自身がオーナー権を有している旨の情報を書き込み(S2110)、自身のSM112に保持されているロックディスク管理テーブル1125の自DKCロック情報11256にもオーナー権を示すビットマップ情報を記録する(S2111)。次いでリモートコピー制御部1122はS−VOL側へのリモートコピー処理を停止するサスペンド処理を行ってその旨自身のコピーペア管理テーブル1126のペア状態11264に記録する(S2112)。次いで、ホスト装置300にデータ書き込みが終了した旨の情報を送信して処理を終了する(S2103)。
上記の構成により、P−VOL側ストレージ装置1は、S−VOL側ストレージ装置2へのリモートコピー処理に障害がある場合、リモートコピー処理を停止して自身の単独動作でホスト装置300からのデータI/Oを処理することができる。
(ストレージ装置1からのデータ読み出し処理)
図23にホスト装置300からストレージ装置1のデータを読み出す処理フローの一例を示している。
まず、ストレージ装置1のリモートコピー制御部1122は、ホスト装置300からのデータ読み出し要求に関するデータが自身のCM113に格納されているかどうか判定する(S2201)。格納されていると判定した場合(S2201、Yes)、当該データをCM113から読み出してホスト装置300へ送信する(S2203)。CM113に該当データが格納されていないと判定した場合(S2201、No)、該当データを外部ストレージ装置400の対応するLDEV(HDD412)からCM113へ読み込み(S2202)、当該データをCM113からホスト装置300へ送信して処理を終了する。
上記の構成により、ホスト装置300はP−VOLからデータを読み出すことができる。
(ストレージ装置2へのデータ書き込み処理)
図24にホスト装置300からストレージ装置2へのデータ書き込み処理フローの一例を示す。この処理フローは、S−VOL側のストレージ装置2にホスト装置300からデータを書き込む場合の処理フローである。この処理フローが実行されることは、P−VOL側のストレージ装置1へのデータ書込要求が正常に処理されなかったことを示している。この処理フローは、ストレージ装置2のDKC110にあるリモートコピー制御部1122によって実行される。
まず、ホスト装置300からのデータ書き込み先がコピーペアを構成しているVDEVであるかどうか判定する(S2301)。コピーペアを構成していないVDEVであると判定した場合(S2301、No)、リモートコピー制御部1122は、受信したデータI/Oに関わるデータを自身のCM113に書き込んでその旨の情報をホスト装置300へ送信する(S2310、S2311)。次いで、コピーペア管理テーブル1126のP/S種別11262を入れ替えることによってP−VOLとS−VOLとを入れ替えるスワップリシンク処理を実行して終了する。スワップリシンク処理の詳細フローは、関連図面を参照して後述する。
S2301で書き込み先VDEVがコピーペアを構成していると判定した場合(S2301、Yes)、その書き込み先VDEVがS−VOLであるか判定する(S2302)。S−VOLでないと判定した場合(S2302、No)、ストレージ装置1による、先述のP−VOLへのデータ書き込み処理に移行する。
書き込み先VDEVがS−VOLであると判定した場合(S2302、Yes)、リモートコピー制御部1122は、自身のLDK管理テーブル1265に記録されている自DKCロック情報11256を参照してオーナー権がP−VOL、S−VOLのどちらにあるかを判定する(S2303)。S−VOLにあると判定された場合(S2303、S−VOL)、データ書込要求に関わるデータをCM113に書き込み(S2310)、書き込み終了の情報をホスト装置300へ送信する(S2311)。次いで、前述のスワップリシンク処理へ移行する。
オーナー権がP−VOLにあると判定した場合(S2303、P−VOL)、リモートコピー制御部1122は、当該データ書込要求を受け付けることができない旨の情報をホスト装置300へ送信し(S2307)、スワップリシンク処理へ移行する。
S2303でオーナー権が記録されていないと判定された場合、リモートコピー制御部1122は、LDKのデータを読み込んで(S2304)、オーナー権がP−VOLにあるか判定する(S2305)。オーナー権がP−VOLにあると判定した場合(S2305、Yes)、リモートコピー制御部1122は、当該データ書込要求を受け付けることができない旨の情報をホスト装置300へ送信し(S2307)、スワップリシンク処理へ移行する。
オーナー権がP−VOLにないと判定した場合(S2305、No)、リモートコピー制御部1122は自身がオーナー権を取得するためにLDKにオーナー権情報を書き込む(S2306)。次いで、自身のSM112に保持されているLDK管理テーブル1125の自DKCロック情報11255に、オーナー情報を保持していることを示すビットマップ情報を記録する(S2308)。さらに、コピーペア管理テーブル1126のペア状態11264に「SSWS状態」である旨を記録し(S2309)、データ書込要求に係るデータを自身のCM113に書き込み(S2310)、書き込み終了の情報をホスト装置300へ送信する(S2311)。次いで、前述のスワップリシンク処理へ移行する。
上記の構成により、S−VOL側ストレージ装置2は、自身がオーナー権を保持していると判定した場合にのみホスト装置300のデータI/Oを処理することができ、P−VOL側のCM113との間でのデータ不整合が防止される。
(ストレージ装置2からのデータ読み出し処理)
図25にホスト装置300からストレージ装置2のデータを読み出す処理フローの一例を示している。
まず、ホスト装置300からのデータ読み出し先がコピーペアを構成しているVDEVであるかどうか判定する(S2401)。コピーペアを構成していないVDEVであると判定した場合(S2401、No)、ストレージ装置2のリモートコピー制御部1122は、ホスト装置300からのデータ読み出し要求に関するデータが自身のCM113に格納されているかどうか判定する(S2407)。格納されていると判定した場合(S2407、Yes)、当該データをCM113から読み出してホスト装置300へ送信する(S2409)。CM113に該当データが格納されていないと判定した場合(S2407、No)、該当データを外部ストレージ装置400の対応するLDEV(HDD412)からCM113へ読み込み(S2408)、当該データをCM113からホスト装置300へ送信して処理を終了する(S2409)。
S2401で読み出し先VDEVがコピーペアを構成していると判定した場合(S2401、Yes)、その読み出し先VDEVがS−VOLであるか判定する(S2402)。S−VOLでないと判定した場合(S2402、No)、ストレージ装置1による、先述のP−VOLからのデータ読み出し処理に移行する。
読み出し先VDEVがS−VOLであると判定した場合(S2402、Yes)、リモートコピー制御部1122は、自身のコピーペア管理テーブル1126に記録されているペア状態11264を参照してペア状態が正常であるか判定する(S2403)。正常でないと判定された場合(S2403、No)、自身のCM113に格納されているデータは正常に更新されていない可能性があるため、データ読み出し要求を受け付けることができない旨の情報をホスト装置300へ送信する(S2406)。
S2403でペア状態が正常であると判定された場合(S2403、Yes)、リモートコピー制御部1122は、LDKのデータを読み込んで(S2404)、オーナー権がP−VOLにあるか判定する(S2405)。オーナー権がP−VOLにあると判定した場合(S2405、Yes)、リモートコピー制御部1122は、当該データ読み出し要求を受け付けることができない旨の情報をホスト装置300へ送信して処理を終了する(S2406)。
オーナー権がP−VOLにないと判定した場合(S2405、No)、前述したS2407以降の処理を実行して終了する。
上記の構成により、S−VOL側ストレージ装置2は自身がオーナー権を保持している場合のみホスト装置300からのデータI/Oを処理することができ、ホスト装置300が誤って不正なデータを読み込んでしまうことが防止される。
なお、ある種のOSが実装されているホスト装置は、ホスト装置をリブートする際に、ストレージ装置に対してデータ読み出し要求を発行する場合がある。上記の構成では、このようなホスト装置のリブート時にS−VOL側ストレージ装置2に対してデータ読み込み要求が発行された場合でも、S−VOL側ストレージ装置2はLDKにオーナー権情報を書き込まず、P−VOL側ストレージ装置1がオーナー権を保持していないことのみを判定するようにしている(S2405)。したがって、S−VOL側ストレージ装置2が上記ホスト装置リブート時にデータ読み出し要求を受信しても、S−VOL側ストレージ装置2が不当にオーナー権を取得することはない。
(ストレージ装置1によるサスペンド処理)
図26にストレージ装置1によるリモートコピーペアのサスペンド処理フローの一例を示す。このサスペンド処理は、ストレージ装置1へのデータ書込要求処理フロー(図21)におけるS2112において実行される処理である。
まず、ストレージ装置1のリモートコピー制御部1122は、ストレージ装置2のリモートコピー制御部1122に対して、DKC間パスを通じてS−VOLサスペンド要求を送信する(S2501)。ストレージ装置2のリモートコピー制御部1122はこの要求を受信して、自身のSM112に保持されているコピーペア管理テーブル1126のペア状態11264に「サスペンド」を記録して、ストレージ装置1へその旨の情報を送信する。当該情報を受信して、ストレージ装置1のリモートコピー制御部1122は、自身のSM112にあるコピーペア管理テーブル1126のペア状態11264に「サスペンド」を記録し(S2503)、LDKにオーナー権情報を設定する旨の情報を、LDKとして登録されている外部ストレージ装置400に送信する(S2504)。
オーナー権情報設定要求を受信した外部ストレージ装置400は、P−VOL側のストレージ装置1についてLDKにオーナー権情報を書き込み(S2505)、オーナー権情報設定が完了した旨の情報をストレージ装置1へ送信する。その情報を受信して、ストレージ装置1のリモートコピー制御部1122は、自身のSM112にあるコピーペア管理テーブル1126の自DKCロック情報11256に自身がオーナー権を取得した旨のビットマップ情報を記録して終了する(S2506)。
上記の構成により、P−VOL側ストレージ装置1からS−VOL側ストレージ装置2へデータ転送ができなくなった場合に、両者間でのリモートコピー処理を停止されると共に、P−VOL側ストレージ装置1でホスト装置300からのデータI/Oを処理することができる。
(P−VOL側ストレージ装置1によるデステージ処理)
図27に、P−VOL側のストレージ装置1からデステージ処理を行うフローの一例を示している。
まず、ストレージ装置1のリモートコピー制御部1122は、自身のCM113に格納されているデータをデステージするため、このデータを読み出して自身のVDEVと対応付けられているLDEVを提供する外部ストレージ装置400に転送して書込要求する(S2601)。外部ストレージ装置400は、この書き込み要求を受信して当該データをHDD421に書き込み、その結果をストレージ装置1へ送信する(S2602)。
ストレージ装置1は外部ストレージ装置400での書き込みが成功したか判定し(S2603)、成功したと判定した場合(S2603、Yes)、自身のCM113に格納されているデータを削除するとともに、ストレージ装置2に対してそのCM113のデータ削除要求を送信する(S2605)。ストレージ装置2はCM113のデータ削除要求を受信して、自身のCM113に格納されているデータを削除して処理を終了する(S2606)。
S2603で外部ストレージ装置400へのデータ書き込みが成功しなかったと判定した場合(S2603、No)、ストレージ装置1は当該外部ストレージ装置400に対して所定の回数書込要求を再試行した後、CM113のデータをデステージできない自身のVDEVを閉塞して処理を終了する(S2607)。
上記の構成により、P−VOL側ストレージ装置1は、自身のCM113に格納されていたデータのデステージ処理と同期させてS−VOL側ストレージ装置2のCM113のデータを削除してその記憶領域を解放することができる。
(S−VOL側ストレージ装置2によるデステージ処理)
図28に、S−VOL側のストレージ装置2からデステージ処理を行うフローの一例を示している。
まず、ストレージ装置1のリモートコピー制御部1122は、ストレージ装置2のCM113に格納されているデータをデステージするため、ストレージ装置2のリモートコピー制御部1122に対して、DKC間パスを通じてストレージ装置2のCM113に格納されているデータを、ストレージ装置2のVDEVに対応するLDEVを提供している外部ストレージ装置400に転送する旨のデステージ要求を送信する(S2701)。
このデステージ要求を受けてストレージ装置2のリモートコピー制御部1122は、自身のCM113のデータを読み出して外部ストレージ装置400に転送して書込要求する(S2702)。外部ストレージ装置400は、この書き込み要求を受信して当該データをHDD421に書き込み、その結果をストレージ装置2へ送信する(S2703)。
ストレージ装置2は外部ストレージ装置400での書き込みが成功したか判定し(S2704)、成功したと判定した場合(S2704、Yes)、自身のCM113に格納されているデータを削除するとともに、ストレージ装置1に対してデステージが正常に終了した旨の情報を送信する(S2705)。ストレージ装置1はストレージ装置2のデステージ正常終了情報を受信して、自身のCM113に格納されているデータを削除して処理を終了する(S2706)。
S2704で外部ストレージ装置400へのデータ書き込みが成功しなかったと判定した場合(S2704、No)、ストレージ装置2は当該外部ストレージ装置400に対して所定の回数書込要求を再試行した後、ストレージ装置1にCM113のデータをデステージできない旨の情報を送信する。ストレージ装置1は、この情報を受信して、CM113のデータをデステージすることができない自身のVDEVを閉塞して処理を終了する(S2707)。
上記の構成により、P−VOL側ストレージ装置1は、S−VOL側ストレージ装置2のCM113に格納されていたデータのデステージ処理と同期させて自身のCM113のデータを削除してその記憶領域を解放することができる。
(スワップリシンク処理)
図29に本実施形態におけるスワップリシンク処理フローの一例を示している。このスワップリシンク処理では、S−VOLがオーナー権を保持してホスト装置300からのデータI/Oを処理しているSSWS状態から、再度、自身のVDEVとP−VOL側ストレージ装置1のVDEVとの間のコピーペアを作成し、自身がP−VOLになってホスト装置300からのデータI/Oを処理する、ペア状態に移行するための処理である。
まず、現在S−VOL側であるストレージ装置2のリモートコピー制御部1122は、ホスト装置300のパス管理制御部312に、通信ネットワークN2を介してP−VOL側ストレージ装置1との間のデータI/Oパスが正常であるか問い合わせ(S2801)、異常であると判定した場合(S2801、No)、そのまま処理を終了する。このとき、ホスト装置300の出力装置15を通じて、「スワップリシンク処理」を実行できない旨の情報を出力してもよい。
P−VOL側ストレージ装置1との間のデータI/Oパスが正常であると判定した場合(S2801、Yes)、ストレージ装置2のリモートコピー制御部1122は、自身のSM112に保持されているコピーペア管理テーブル1126に記録されているP/S種別11262をストレージ装置1との間で入れ替え(S2802)、ストレージ装置1のリモートコピー制御部1122に、DKC間パスを通じて同様のP/S種別11262の入れ替え処理を行うように要求する。
ストレージ装置2からの要求を受けて、ストレージ装置1のリモートコピー制御部1122は、自身のSM112に保持されているコピーペア管理テーブル1126に記録されているP/S種別11262をストレージ装置2との間で入れ替え(S2804)、自身のCM113に格納されているデータを削除する(S2805)。次いで、ストレージ装置2のリモートコピー制御部1122に、P/S種別11262の入れ替え処理の結果に関する情報を送信する。
ストレージ装置1からの入れ替え結果に関する情報を受信して、ストレージ装置2のリモートコピー制御部1122は、入れ替えが正常に実行されたか、及び自身のVDEVが正常であるかを判定し、いずれも正常であると判定した場合(S2806、Yes)、LDKに「オーナー権なし」の情報を記録する(S2807)。いずれかが正常でないと判定した場合(S2806、No)、図25に例示したペアサスペンド処理を実行してリモートコピー処理を呈し、自身がS−VOLとして単独で動作する。
ストレージ装置2のリモートコピー制御部1122は、自身のCM113に格納されているデータ全部を、ストレージ装置1のCM113に、DKC間パスを通じてコピーする(S2808)。
この時点で、ストレージ装置2のVDEVがP−VOL、ストレージ装置1のVDEVがS−VOLであるコピーペアがあらたに構成されたので、ストレージ装置2のリモートコピー制御部1122は、自身のコピーペア管理テーブル1126のペア状態11264に、正常なコピーペアが存在することを示す「ペア状態」を記録し、処理を終了する(S2809)。
上記の構成により、いったんP−VOL側ストレージ装置1でのデータI/O処理が停止された後、S−VOL側ストレージ装置2にホスト装置300からデータI/Oが送信された場合、P−VOL側ストレージ装置1での障害が回復されていれば、P−VOLとS−VOLとを入れ替えて、リモートコピー処理を再開させることができる。
(キャッシュデータの非同期フルコピー処理)
図29に、キャッシュデータの非同期フルコピー処理フローの一例を示している。このキャッシュデータの非同期フルコピー処理は、2台のストレージ装置100のVDEV間でコピーペアを作成する場合の初期化処理の一つであり、例えば図19に例示するコピーペア作成処理のS1907において実行される。
まず、P−VOL側ストレージ装置100のリモートコピー制御部1122は、自身のCM113に格納されているデータをS−VOL側ストレージ装置100のCM113にコピーするため、格納されているデータをS−VOL側ストレージ装置100へDKC間パスを通じて送信する(S2901)。P−VOL側ストレージ装置100からデータを受信したS−VOL側ストレージ装置100のリモートコピー制御部1122は、自身のCM113に受信したデータを書き込み(S2902)、その書き込み結果をP−VOL側ストレージ装置100に送信する。
S−VOL側ストレージ装置100での書き込み結果を受信したP−VOL側ストレージ装置100のリモートコピー制御部1122は、自身のCM113のデータが正常にS−VOL側ストレージ装置100へコピーされたかを判定し、正常にコピーされたと判定した場合(S2903、Yes)、継続してCM113内の残りのデータをS−VOL側ストレージ装置100へ転送し(S2904、No)、自身のCM113に格納されているデータをすべてコピーしたと判定した場合(S2904、Yes)、自身のコピーペア管理テーブル1126のペア状態11264に、正常なコピーペアが存在することを示す「ペア状態」を記録し、処理を終了する(S2905)。
S2903でデータコピーが正常に実行されなかったと判定した場合(S2903、No)、図25に例示したペアサスペンド処理を実行してリモートコピー処理を停止し、自身がP−VOLとして単独で動作する(S2906)。
上記の構成によれば、リモートコピー処理の開始に先立ってP−VOL側ストレージ装置1及びS−VOL側ストレージ装置2のCM113に格納されているデータが一致しているので、ホスト装置300のデータI/O処理要求先がP−VOL側ストレージ装置1からS−VOL側ストレージ装置2へ変更された場合でも、ホスト装置300は、CM113内のデータを有効に利用することができる。
以上詳細に説明したように、本実施形態のストレージシステム1によれば、ストレージ装置が提供する記憶領域をより効率的に、かつ有効に利用することを可能とするストレージシステム及びストレージシステムの制御方法が提供される。

Claims (15)

  1. 外部装置と通信可能に接続されている第1のストレージ装置、及び第2のストレージ装置を備え、
    前記第1のストレージ装置及び前記第2のストレージ装置は、それぞれ前記外部装置のデータを格納するために、前記外部装置から選択的にアクセス可能な第1の記憶領域及び第2の記憶領域と、前記第1の記憶領域及び第2の記憶領域に対する入出力データを一時的に記憶する第1の一時記憶領域及び第2の一時記憶領域と、前記第1の記憶領域と前記第2の記憶領域との間、及び前記第1の一時記憶領域と前記第2の一時記憶領域との間でのデータコピー処理を制御するリモートコピー制御部とを有し、
    前記第1の記憶領域及び前記第2の記憶領域は、前記第1のストレージ装置及び第2のストレージ装置と通信可能に接続されている第3のストレージ装置に設けられている、少なくとも1の物理記憶媒体から生成される論理デバイスが仮想的に割り当てられることによって形成されているストレージシステムであって、
    前記第1の記憶領域及び前記第2の記憶領域のいずれに前記外部装置のデータI/Oを処理する権限が与えられているかを示すデータI/O処理権限情報を記憶するデータI/O処理権限情報記憶部を備え、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記データI/O処理権限情報記憶部に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、自身の属する第1又は第2のストレージ装置が有する前記第1の記憶領域及び第1の一時記憶領域、又は前記第2の記憶領域及び第2の一時記憶領域に格納されているデータを他方のストレージ装置側にコピーする、
    ストレージシステム。
  2. 請求項1に記載のストレージシステムであって、
    前記データI/O処理権限情報記憶部は、前記第1のストレージ装置及び前記第2のストレージ装置とそれぞれ通信可能に接続されている第4の外部ストレージ装置が有する記憶領域であり、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記第4の外部ストレージ装置の前記記憶領域に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、自身の属する第1又は第2のストレージ装置が有する前記第1の記憶領域及び第1の一時記憶領域、又は前記第2の記憶領域及び第2の一時記憶領域に格納されているデータを他方のストレージ装置側にコピーする、
    ストレージシステム。
  3. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記データI/O処理権限情報記憶部設定要求を受信した場合、前記データI/O処理権限情報記憶部がすでに設定されているかを判定し、
    まだ設定されていないと判定した場合、所定の外部ストレージ装置が有する記憶領域に、自身が属するストレージ装置に関する所定の識別情報及び他方のストレージ装置の識別情報と、当該外部ストレージ装置を識別するための識別情報を当該外部ストレージ装置の記憶領域に記録し、
    すでに設定されていると判定した場合、前記ストレージ装置に関する所定の識別情報及び当該外部ストレージ装置が有する識別情報を読み出して、自身が使用している前記データI/O処理権限情報記憶部と一致しているかを検査する、
    ストレージシステム。
  4. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信した場合に前記データI/O処理権限情報記憶部に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、前記データI/O要求を受け付ける、
    ストレージシステム。
  5. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信した場合に、自身の前記一時記憶領域に当該データを書き込むと共に、同一データを他方のストレージ装置の前記一時記憶領域に転送し、転送が正常に実行されなかったと判定した場合、前記他方のストレージ装置へのリモートコピー処理を停止する、
    ストレージシステム。
  6. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信し、自身がリモートコピー制御における副論理デバイスであると判定した場合に、自身が正論理デバイスとなる設定変更処理を実行すると共に、他方のストレージ装置の前記リモートコピー制御部に、当該他方のストレージ装置の前記記憶領域を副側論理デバイスとして設定するように要求する、
    ストレージシステム。
  7. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、自身が属するストレージ装置が前記リモートコピー制御における正論理デバイスである場合、自身の前記一時記憶領域に格納されているデータを前記外部ストレージ装置の前記記憶領域にデステージするか、又は他方のストレージ装置の前記リモートコピー制御部に、当該ストレージ装置に属する前記一時記憶領域に格納されているデータを前記外部ストレージ装置の記憶領域にデステージするように要求するかのいずれかの処理を実行する、
    ストレージシステム。
  8. 請求項1に記載のストレージシステムであって、
    前記第1のストレージ装置、前記第2のストレージ装置、前記外部ストレージ装置、及び前記データI/O処理権限情報記憶部に通信可能に接続された管理装置を備え、前記管理装置は、
    前記第1のストレージ装置の前記第1の記憶領域と、前記第2のストレージ装置の前記第2の記憶領域とをリモートコピー制御のペアとして設定するためのリモートコピー設定部と、
    前記データI/O処理権限情報記憶部の設定を前記第1のストレージ装置又は前記第2のストレージ装置に要求するためのデータI/O処理権限情報記憶部設定部とを備えている、
    ストレージシステム。
  9. 外部装置と通信可能に接続されている第1のストレージ装置、及び第2のストレージ装置を備え、
    前記第1のストレージ装置及び前記第2のストレージ装置は、それぞれ前記外部装置のデータを格納するために、前記外部装置から選択的にアクセス可能な第1の記憶領域及び第2の記憶領域と、前記第1の記憶領域及び第2の記憶領域に対する入出力データを一時的に記憶する第1の一時記憶領域及び第2の一時記憶領域と、前記第1の記憶領域と前記第2の記憶領域との間、及び前記第1の一時記憶領域と前記第2の一時記憶領域との間でのデータコピー処理を制御するリモートコピー制御部とを有し、
    前記第1の記憶領域及び前記第2の記憶領域は、前記第1のストレージ装置及び第2のストレージ装置と通信可能に接続されている第3のストレージ装置に設けられている、少なくとも1の物理記憶媒体から生成される論理デバイスが仮想的に割り当てられることによって形成されているストレージシステムの制御方法であって、
    前記第1の記憶領域及び前記第2の記憶領域のいずれが前記外部装置のデータI/Oを処理する権限を有しているかを示すデータI/O処理権限情報を記憶するデータI/O処理権限情報記憶部を備え、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記データI/O処理権限情報記憶部に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、自身の属する第1又は第2のストレージ装置が有する前記第1の記憶領域及び第1の一時記憶領域、又は前記第2の記憶領域及び第2の一時記憶領域に格納されているデータを他方のストレージ装置側にコピーする、
    ストレージシステムの制御方法。
  10. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記データI/O処理権限情報記憶部設定要求を受信した場合、前記データI/O処理権限情報記憶部がすでに設定されているかを判定し、
    まだ設定されていないと判定した場合、所定の外部ストレージ装置が有する記憶領域に、自身が属するストレージ装置に関する所定の識別情報及び他方のストレージ装置の識別情報と、当該外部ストレージ装置を識別するための識別情報を当該外部ストレージ装置の記憶領域に記録し、
    すでに設定されていると判定した場合、前記ストレージ装置に関する所定の識別情報及び当該外部ストレージ装置が有する識別情報を読み出して、自身が使用している前記データI/O処理権限情報記憶部と一致しているかを検査する、
    ストレージシステムの制御方法。
  11. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信した場合に前記データI/O処理権限情報記憶部に記録されている前記データI/O処理権限情報を読み出して、当該データI/O処理権限情報が記録されておらず、かつ自身がリモートコピー制御における主論理デバイスであると判定した場合、前記データI/O要求を受け付ける、
    ストレージシステムの制御方法。
  12. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信した場合に、自身の前記一時記憶領域に当該データを書き込むと共に、同一データを他方のストレージ装置の前記一時記憶領域に転送し、転送が正常に実行されなかったと判定した場合、前記他方のストレージ装置へのリモートコピー処理を停止する、
    ストレージシステムの制御方法。
  13. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、前記外部装置からのデータI/O要求を受信し、自身がリモートコピー制御における副論理デバイスであると判定した場合に、自身が正論理デバイスとなる設定変更処理を実行すると共に、他方のストレージ装置の前記リモートコピー制御部に、当該他方のストレージ装置の前記記憶領域を副側論理デバイスとして設定するように要求する、
    ストレージシステムの制御方法。
  14. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置又は前記第2のストレージ装置の前記リモートコピー制御部は、自身が属するストレージ装置が前記リモートコピー制御における正論理デバイスである場合、自身の前記一時記憶領域に格納されているデータを前記外部ストレージ装置の前記記憶領域にデステージするか、又は他方のストレージ装置の前記リモートコピー制御部に、当該ストレージ装置に属する前記一時記憶領域に格納されているデータを前記外部ストレージ装置の記憶領域にデステージするように要求するかのいずれかの処理を実行する、
    ストレージシステムの制御方法。
  15. 請求項9に記載のストレージシステムの制御方法であって、
    前記第1のストレージ装置、前記第2のストレージ装置、前記外部ストレージ装置、及び前記データI/O処理権限情報記憶部に通信可能に接続された管理装置を備え、前記管理装置は、
    前記第1のストレージ装置の前記第1の記憶領域と、前記第2のストレージ装置の前記第2の記憶領域とをリモートコピー制御のペアとして設定するためのリモートコピー設定部と、
    前記データI/O処理権限情報記憶部の設定を前記第1のストレージ装置又は前記第2のストレージ装置に要求するためのデータI/O処理権限情報記憶部設定部とを備えている、
    ストレージシステムの制御方法。
JP2011514922A 2009-03-19 2009-03-19 ストレージシステム及びストレージシステムの制御方法 Expired - Fee Related JP5226125B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2009/001235 WO2010106579A1 (en) 2009-03-19 2009-03-19 Storage system and method for controlling storage system

Publications (2)

Publication Number Publication Date
JP2012504790A true JP2012504790A (ja) 2012-02-23
JP5226125B2 JP5226125B2 (ja) 2013-07-03

Family

ID=41059927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011514922A Expired - Fee Related JP5226125B2 (ja) 2009-03-19 2009-03-19 ストレージシステム及びストレージシステムの制御方法

Country Status (3)

Country Link
US (1) US8275958B2 (ja)
JP (1) JP5226125B2 (ja)
WO (1) WO2010106579A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022153378A (ja) * 2017-01-06 2022-10-12 オラクル・インターナショナル・コーポレイション クラウドデータストアにわたるファイルシステム階層ミラーリング

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8843783B2 (en) * 2006-03-31 2014-09-23 Emc Corporation Failover to backup site in connection with triangular asynchronous replication
WO2013046273A1 (en) 2011-09-29 2013-04-04 Hitachi, Ltd. Reservation of volumes having a copy pair relationship
WO2014142898A1 (en) * 2013-03-14 2014-09-18 Hitachi, Ltd. Method and apparatus of disaster recovery virtualization
DE112013006658T5 (de) * 2013-05-08 2015-12-03 Hitachi, Ltd. Speichersystem und Datenverwaltungsverfahren
JP6230707B2 (ja) * 2014-06-26 2017-11-15 株式会社日立製作所 ストレージシステム
US9912832B2 (en) 2014-08-14 2018-03-06 Kabushiki Kaisha Toshiba Image forming apparatus and control method of the same

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981431A (ja) * 1995-09-19 1997-03-28 Fuji Facom Corp データベース処理システム及びデータベースの更新方法
WO2007063944A1 (ja) * 2005-11-30 2007-06-07 International Business Machines Corporation 無停止トランザクション処理システム
US20080104443A1 (en) * 2006-10-30 2008-05-01 Hiroaki Akutsu Information system, data transfer method and data protection method
JP2008134988A (ja) * 2006-10-30 2008-06-12 Hitachi Ltd 情報システム及びデータ転送方法
JP2012504793A (ja) * 2009-01-20 2012-02-23 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5889935A (en) 1996-05-28 1999-03-30 Emc Corporation Disaster control features for remote data mirroring
US6681339B2 (en) * 2001-01-16 2004-01-20 International Business Machines Corporation System and method for efficient failover/failback techniques for fault-tolerant data storage system
JP4307202B2 (ja) 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
JP4990505B2 (ja) 2005-04-04 2012-08-01 株式会社日立製作所 記憶制御装置及びストレージシステム
JP4842593B2 (ja) 2005-09-05 2011-12-21 株式会社日立製作所 ストレージ仮想化装置のデバイス制御引継ぎ方法
JP5090022B2 (ja) 2007-03-12 2012-12-05 株式会社日立製作所 計算機システム、アクセス制御方法及び管理計算機
JP2008269469A (ja) * 2007-04-24 2008-11-06 Hitachi Ltd ストレージシステム及びその管理方法
JP5124183B2 (ja) * 2007-06-27 2013-01-23 株式会社日立製作所 非同期リモートコピーシステムの制御方法及び非同期リモートコピーシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981431A (ja) * 1995-09-19 1997-03-28 Fuji Facom Corp データベース処理システム及びデータベースの更新方法
WO2007063944A1 (ja) * 2005-11-30 2007-06-07 International Business Machines Corporation 無停止トランザクション処理システム
US20080104443A1 (en) * 2006-10-30 2008-05-01 Hiroaki Akutsu Information system, data transfer method and data protection method
JP2008134988A (ja) * 2006-10-30 2008-06-12 Hitachi Ltd 情報システム及びデータ転送方法
JP2012504793A (ja) * 2009-01-20 2012-02-23 株式会社日立製作所 ストレージシステム及びストレージシステムの制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022153378A (ja) * 2017-01-06 2022-10-12 オラクル・インターナショナル・コーポレイション クラウドデータストアにわたるファイルシステム階層ミラーリング
JP7379599B2 (ja) 2017-01-06 2023-11-14 オラクル・インターナショナル・コーポレイション クラウドデータストアにわたるファイルシステム階層ミラーリング

Also Published As

Publication number Publication date
US20110264876A1 (en) 2011-10-27
US8275958B2 (en) 2012-09-25
WO2010106579A1 (en) 2010-09-23
JP5226125B2 (ja) 2013-07-03

Similar Documents

Publication Publication Date Title
JP5226125B2 (ja) ストレージシステム及びストレージシステムの制御方法
US7680984B2 (en) Storage system and control method for managing use of physical storage areas
JP5124103B2 (ja) 計算機システム
US8347060B2 (en) Storage system, storage extent release method and storage apparatus
JP4927408B2 (ja) 記憶システム及びそのデータ復元方法
US8751467B2 (en) Method and apparatus for quickly accessing backing store metadata
US7360037B2 (en) Storage controller, storage control system, and storage control method
US8423796B2 (en) Storage device and data processing method of storage device
US8200631B2 (en) Snapshot reset method and apparatus
JP4832862B2 (ja) ディスクアレイシステム及びセキュリティ方法
US7305530B2 (en) Copy operations in storage networks
US20130159651A1 (en) Storage system and storage migration method
US20060155944A1 (en) System and method for data migration and shredding
US20050015415A1 (en) Method, system, and program for performing an input/output operation with respect to a logical storage device
JP2007066192A (ja) ストレージシステム及びその制御方法並びにコンピュータプログラム
JP2005242690A (ja) ストレージサブシステムおよび性能チューニング方法
JP2002082775A (ja) 計算機システム
JP2013510360A (ja) ストレージシステム及びストレージシステムにおけるキャッシュの構成変更方法
JP2007115221A (ja) ボリューム移行方法およびストレージネットワークシステム
TWI551988B (zh) 計算系統、用以控制存取記憶體之方法及相關電腦可讀儲存媒體
US7472307B2 (en) Recovery operations in storage networks
JP2006331458A (ja) ストレージサブシステムおよび性能チューニング方法
US8392568B2 (en) Computer system and method of managing single name space
CN112379827A (zh) 一种存储双活的应用方法
WO2015132946A1 (ja) ストレージシステム及びストレージシステムの制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120626

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120824

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130313

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160322

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees