JP2021033782A - リモートコピーシステム - Google Patents

リモートコピーシステム Download PDF

Info

Publication number
JP2021033782A
JP2021033782A JP2019154963A JP2019154963A JP2021033782A JP 2021033782 A JP2021033782 A JP 2021033782A JP 2019154963 A JP2019154963 A JP 2019154963A JP 2019154963 A JP2019154963 A JP 2019154963A JP 2021033782 A JP2021033782 A JP 2021033782A
Authority
JP
Japan
Prior art keywords
storage system
storage
journal
remote copy
volume
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019154963A
Other languages
English (en)
Inventor
里山 愛
Ai Satoyama
愛 里山
彰 出口
Akira Deguchi
彰 出口
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
Priority to JP2019154963A priority Critical patent/JP2021033782A/ja
Priority to CN202010114907.6A priority patent/CN112445652B/zh
Priority to US16/805,901 priority patent/US11308122B2/en
Publication of JP2021033782A publication Critical patent/JP2021033782A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Abstract

【課題】正サイトに障害が発生した際に早期にかつ確実に副サイトにおいて運用環境を再現することを可能にする。【解決手段】リモートコピーシステムの第一のストレージシステム200Aはデータボリューム150A、ジャーナルボリューム160A及びストレージコントローラ101Aを有し、ストレージコントローラ101Aは、第一のサーバシステム201Aからオペレーションを受信したら、このオペレーションに基づき、オペレーションによる更新内容をジャーナルボリューム160Aに格納する作業、またはオペレーションを受信したらこのオペレーションを実行する作業のいずれかを実行する。【選択図】図2

Description

本発明は、リモートコピーシステムに関する。
ディザスタリカバリ(Disaster Recovery(DR))の自動化の需要が高まってきている。DRでは、地震や火災といった災害が発生した場合のデータロストに備えて、複数のサイトに配置された複数ストレージシステム間でデータを多重化して保持するリモートコピー機能、及び、当機能を用いたストレージシステムの運用が知られている。
正サイトの災害発生時には、サーバシステム及びストレージシステム双方の業務を副サイトへ交替する運用を行う。リモートコピー機能は、長距離の離れたサイト間では、サーバシステムからの書込み応答まで時間がかかってしまうことから、サーバシステムからの書き込みコマンドへの完了応答後にストレージシステムがデータをコピー先のストレージシステムに転送する、非同期リモートコピーを用いることが一般的である。
特許文献1には、元データの更新に関する履歴を表す情報であるジャーナルを用いて非同期リモートコピーを行う技術が開示されている。
正サイトのコピー元ストレージシステムでは、書込みコマンドを受領するとデータ書込み用のボリュームへデータを、ジャーナルボリュームへジャーナルデータを書込み、サーバシステムに応答を返す。リモートサイトのコピー先ストレージシステムでは、書込みコマンドとは非同期にコピー元ストレージシステムのジャーナルボリュームからジャーナルデータを読出し、自身のジャーナルボリュームに格納する。そして、コピー先ストレージシステムは、格納したジャーナルデータに基づいて、コピー先のデータ書込み用ボリュームにコピーしたデータを復元する。
コピー元ストレージシステムに障害が発生した場合、コピー元ストレージシステムへのI/Oを停止し、コピー元ストレージシステムと同じ運用環境をコピー先ストレージシステムで再現処理が完了した後、I/Oを再開し業務を継続することができる。
米国特許出願公開第2005/0033827号明細書
前記障害が発生した時にI/Oを停止することは性能低下を引き起こす。I/Oを停止せずに、コピー元ストレージシステムと同じ運用環境をコピー先ストレージシステムに再現したい。さらに、サーバシステムで稼動するアプリケーションプログラム(AP)はストレージシステムの構成を意識することなく、障害後時コピー先ストレージシステムへフェイルオーバ(Failover(F.O.))後、直ちに業務を継続したい。F.O.時、コピー先ストレージシステムに未転送のジャーナルがある場合、それらのジャーナルが反映される前の少し前の時点での状態であることをAPが認識してコピー先ストレージシステムにて運用を継続したい。
一方、コピー元ストレージシステムでは、ボリュームオペレーションによりボリュームに対して、機能(例えば重複排除や圧縮)を実施するか否かや、LDEV Gurad(ボリュームを読み取り専用またはアクセス不可にする設定)などのQoSの設定を行う。QoS設定もコピー先ストレージシステムに引き継ぎ運用環境を再現する。
本発明は上記の課題に鑑みてなされたもので、正サイトに障害が発生した際に早期にかつ確実に副サイトにおいて運用環境を再現することが可能なリモートコピーシステムを提供することにある。
上記課題を解決すべく、本発明の一つの観点に従うリモートコピーシステムは、第一のサーバシステム及びこの第一のサーバシステムに接続された第一のストレージシステムからなる正サイトと、第二のサーバシステム及びこの第二のサーバシステムに接続された第二のストレージシステムからなる副サイトとを有する。
第一のサーバシステム及び第二のサーバシステムはクラスタリングされ、第一のストレージシステム及び第二のストレージシステムにより仮想ストレージシステムが構築され、第一のストレージシステムがコピー元で第二のストレージシステムがコピー先として非同期リモートコピーされるように構成され、第一及び第二のストレージシステムは非同期リモートコピーの相手先である第二または第一のストレージシステムの障害を検知するように構成されている。
第一のストレージシステムはデータボリューム、ジャーナルボリューム及びストレージコントローラを有し、ストレージコントローラは、第一のサーバシステムからオペレーションを受信したら、オペレーションに基づき、オペレーションによる更新内容をジャーナルボリュームに格納する作業、またはオペレーションを受信したらこのオペレーションを実行する作業のいずれかを実行する。
本発明によれば、正サイトに障害が発生した際に早期にかつ確実に副サイトにおいて運用環境を再現することが可能なリモートコピーシステムを実現することができる。
実施例1に係るリモートコピーシステムの物理構成を示す図である。 実施例1に係るリモートコピーシステムの論理構成を示す図である。 実施例1に係るリモートコピーシステムのストレージコントローラのメモリの構成の一例を示す図である。 実施例1に係るリモートコピーシステムのVOL管理テーブルの一例を示す図である。 実施例1に係るリモートコピーシステムのVOLマッピング管理テーブルの一例を示す図である。 実施例1に係るリモートコピーシステムのペアVOL管理テーブルの一例を示す図である。 実施例1に係るリモートコピーシステムのジャーナルテーブルの一例を示す図である。 実施例1に係るリモートコピーシステムのオペレーション反映方法テーブルの一例を示す図である。 実施例1に係るリモートコピーシステムの設定時の動作の一例を説明するためのフローチャートである。 実施例1に係るリモートコピーシステムのジャーナル処理の一例を説明するためのフローチャートである。 実施例1に係るリモートコピーシステムのフェイルオーバ処理の一例を説明するためのフローチャートである。 実施例2に係るリモートコピーシステムにおける反映方法選択処理の一例を示すフローチャートである。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態の中で説明されている諸要素及びその組み合わせの全てが発明の解決手段に必須であるとは限らない。
以下の説明において、「インターフェース部」は、1以上のインターフェースでよい。この1以上のインターフェースは、1以上の同種の通信インターフェースデバイス(例えば1以上のNIC(Network Interface Card))であってもよいし、2以上の異種の通信インターフェースデバイス(例えばNICとHBA(Host Bus Adapter))であってもよい。
また、以下の説明において、「メモリ部」は、1以上のメモリであり、典型的には主記憶デバイスでよい。メモリ部における少なくとも1つのメモリは、揮発性メモリであってもよいし不揮発性メモリであってもよい。
また、以下の説明において、「PDEV部」は、1以上のPDEVであり、典型的には補助記憶デバイスでよい。「PDEV」は、物理的な記憶デバイス(Physical storage DEVice)を意味し、典型的には、不揮発性の記憶デバイス、例えばHDD(Hard Disk Drive)又はSSD(Solid State Drive)である。もしくは、フラッシュパッケージでもよい。
フラッシュパッケージは不揮発性記憶媒体を含む記憶デバイスである。フラッシュパッケージの構成例としては、コントローラと、計算機システムからのライトデータを記憶するための記憶媒体であるフラッシュメモリを有する。コントローラは、ドライブI/F、プロセッサ、メモリ、フラッシュI/Fを有する論理回路を有し、これらは内部ネットワークを介して相互接続されている。
また、以下の説明において、「記憶部」は、メモリ部とPDEV部の少なくとも1つ(典型的には少なくともメモリ部)である。
また、以下の説明において、「プロセッサ部」は、1以上のプロセッサである。少なくとも1つのプロセッサは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサであるが、GPU(Graphics Processing Unit)のような他種のプロセッサでもよい。少なくとも1つのプロセッサは、シングルコアでもよいしマルチコアでもよい。
また、少なくとも1つのプロセッサは、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)又はASIC(Application Specific Integrated Circuit))といった広義のプロセッサでもよい。
また、以下の説明において、「xxxテーブル」といった表現により、入力に対して出力が得られる情報を説明することがあるが、この情報は、どのような構造のデータでもよいし、入力に対する出力を発生するニューラルネットワークのような学習モデルでもよい。従って、「xxxテーブル」を「xxx情報」と言うことができる。
また、以下の説明において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部又は一部が1つのテーブルであってもよい。
また、以下の説明において、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ部によって実行されることで、定められた処理を、適宜に記憶部及び/又はインターフェース部などを用いながら行うため、処理の主語が、プロセッサ部(或いは、そのプロセッサ部を有するコントローラのようなデバイス)とされてもよい。
プログラムは、計算機のような装置にインストールされてもよいし、例えば、プログラム配布サーバ又は計算機が読み取り可能な(例えば非一時的な)記録媒体にあってもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
また、以下の説明において、「計算機システム」は、1以上の物理的な計算機を含んだシステムである。物理的な計算機は、汎用計算機でも専用計算機でもよい。物理的な計算機は、I/O(Input/Output)要求を発行する計算機(例えばホスト計算機やサーバシステムと呼ぶ)として機能してもよいし、I/O要求に応答してデータのI/Oを行う計算機(例えばストレージ装置)として機能してもよい。
すなわち、計算機システムは、I/O要求を発行する1以上のサーバシステム、及び、I/O要求に応答してデータのI/Oを行う1以上のストレージ装置であるストレージシステムのうちの少なくとも1つでよい。少なくとも1つの物理的な計算機において、1以上の仮想的な計算機(例えばVM(Virtual Machine))が実行されてもよい。仮想的な計算機は、I/O要求を発行する計算機でもよいし、I/O要求に応答してデータのI/Oを行う計算機でもよい。
また、計算機システムは、1以上(典型的には複数)の物理的なノード装置で構成された分散システムでよい。物理的なノード装置は、物理的な計算機である。
また、物理的な計算機(例えばノード装置)が所定のソフトウェアを実行することにより、その物理的な計算機、又は、その物理的な計算機を含んだ計算機システムに、SDx(Software-Defined anything)が構築されてもよい。SDxとしては、例えば、SDS(Software Defined Storage)又はSDDC(Software-defined Datacenter)が採用されてもよい。
例えば、ストレージ機能を有するソフトウェアが物理的な汎用の計算機で実行されることにより、SDSとしてのストレージシステムが構築されてもよい。
また、少なくとも1つの物理的な計算機(例えばストレージ装置)が、サーバシステムとしての1以上の仮想的な計算機と、ストレージシステムのストレージコントローラ(典型的には、I/O要求に応答してデータをPDEV部に対して入出力する装置)としての仮想的な計算機とが実行されてもよい。
言い換えれば、このような少なくとも1つの物理的な計算機は、サーバシステムの少なくとも一部としての機能と、ストレージシステムの少なくとも一部としての機能の両方を有してもよい。
また、計算機システム(典型的にはストレージシステム)は、冗長構成グループを有してよい。冗長構成は、Erasure Coding、RAIN(Redundant Array of Independent Nodes)及びノード間ミラーリングのように複数のノード装置での構成でもよいし、PDEV部の少なくとも一部としての1以上のRAID(Redundant Array of Independent (or Inexpensive) Disks)グループのように単一の計算機(例えばノード装置)での構成でもよい。
また、以下の説明において、種々の対象の識別情報として、識別番号が使用されるが、識別番号以外の種類の識別情報(例えば、英字や符号を含んだ識別子)が採用されてもよい。
また、以下の説明において、同種の要素を区別しないで説明する場合には、参照符号(又は、参照符号のうちの共通符号)を使用し、同種の要素を区別して説明する場合は、要素の識別番号(又は参照符号)を使用することがある。
本実施形態のリモートコピーシステムは、一例として次のような構成を有する。
HA構成として、非同期リモートコピー構成を組む。正サイト側で受けたI/O、および、正サイト側のボリュームに対するQoS設定を行うボリュームオペレーションを正サイトのジャーナルボリュームに記録し、ジャーナルを副サイトへ転送することで、副サイト側でI/Oおよび前記QoS設定を再現できる。
更なる構成として、以下の構成がある。ジャーナルが副サイトへ未転送のまま障害が発生した場合、未転送のジャーナルで示された内容は副サイトでは再現できない。ジャーナルにはQoS設定のボリュームオペレーションも記録される。しかし、前記QoS設定はI/Oと異なり順序性を保証しなくてもよいものである。このことから、QoS設定のボリュームオペレーションは、正サイトで要求を受けたらジャーナルに登録せずに副サイトにも要求を出してもよい。このようにすることで、QoS設定のボリュームオペレーションは、ジャーナル化する方法よりも早くに副サイトに反映できる。
このように、ライト要求かQoS設定かのボリュームのオペレーションによって、副サイトへの反映方法を選択するために、オペレーション毎に副サイトへの反映方法を事前に決めておく処理を行う。
オペレーションを受信したら、オペレーションの種類を判定し、前記決定した方法に基づき副サイトへの反映方法を選択する。
以下、図面を参照して、実施例1を説明する。
<システム構成>
図1は、実施例1に係るリモートコピーシステム1の物理構成を示す図、図2は実施例1に係るリモートコピーシステム1の論理構成を示す図である。
地震などの災害への対策としてディザスタリカバリ(DR)の重要性が高まっている。リモートコピーはストレージシステムの高可用性(HA(High Availability))を実現する構成の一つである。
ストレージシステム200はリモートコピー構成を構築するため、2つ以上のサイト、例えば、プライマリサイト(正サイト)100A、セカンダリサイト100B(副サイト)がある。以下、説明を分かりやすくするため、プライマリサイト100Aが有する要素の参照符号は、親番号と子符号「A」の組合せであり、セカンダリサイト100Bが有する要素の参照符号は、親番号と子符号「B」の組合せである。また、プライマリサイト100Aとセカンダリサイト100Bを区別する必要がないときは、参照符号を親番号のみとする。
リモートコピー構成のプライマリサイトとセカンダリサイトでは、同一機種のストレージシステムにて構築する場合が多いが、今回は障害発生時にフェイルオーバして処理を継続できるシステムの提供が目的であり、リモートコピー構成を組むそのことを目的とせずその手段のひとつとしてリモートコピー機能を使用しているため、リモートコピー構成を組むストレージシステムの機種をそろえることは発明の本質では無い。
リモートコピーによるデータ複製のコピー元となるプライマリサイト100A側のストレージシステム200Aが有するデータボリューム222A(図2参照)を、以下「PVOL(プライマリボリューム、正ボリューム)」といい、PVOLに格納されるデータの複製先となるセカンダリ側のストレージシステム200Bが有するデータボリューム(図2において図略)を、以下「SVOL(セカンダリボリューム、セカンダリ側(S)ボリューム)」ということにする。複製データの格納元をプライマリサイト又は正サイト又はローカルサイトと呼び、複製を格納する先をセカンダリサイト又は副サイト又はリモートサイトと呼ぶ。
リモートコピー機能は、サーバシステムからの書き込みコマンドと同期してストレージシステムがデータをコピー先のストレージシステムに転送する「同期リモートコピー」と、サーバシステムからの書き込みコマンドへの完了応答後にストレージシステムがデータをコピー先のストレージシステムに転送する「非同期リモートコピー」の二種類に大別される。
どちらのリモートコピー機能を用いる場合でも、正サイトの災害発生時には、サーバシステム及びストレージ装置の双方の業務を副サイトへ交替する。これにより、サイトに災害が発生した場合でもデータ喪失や業務停止を最小化することができる。
また、同期リモートコピーはコピー元とコピー先のデータが常に同期されている利点がある一方、サーバシステムからの書込みの応答まで時間がかかってしまうため、長距離のサイトの間では非同期リモートコピーを用いることが一般的である。さらに、ストレージシステムがフラッシュ媒体を搭載することもあり、フラッシュ媒体の高性能を生かすためにも非同期リモートコピーを用いる。
以降は非同期リモートコピー機能を採用した説明とする。
HAの別の方法として、ボリューム単位にリモートコピー構成を組む方法もある。ここでは、ストレージシステム200単位にコピー元およびコピー先を決定する方法で説明する。
ストレージシステム200は、図1に示すようにストレージコントローラ101を有する。ストレージコントローラ101は、プロセッサ211を含むコントローラの一例である。ストレージコントローラ101は、仮想ストレージシステム機能、非同期リモートコピー機能、障害検出やフェイルオーバを処理する障害管理機能を有する。
ストレージシステム200は、複数(又は1つ)の物理的記憶デバイスであるPDEV220と、PDEV220に接続されたストレージコントローラ101とを有する。
ストレージコントローラ101は、I/F214と、I/F215と、I/F213と、メモリ212と、それらに接続されたプロセッサ211とを有する。I/F214、I/F216、及びI/F213が、インターフェース部の一例である。メモリ212が、記憶部の一例である。プロセッサ211が、プロセッサ部の一例である。
I/F214は、サーバシステム201とストレージコントローラ101との間のデータのやり取りを仲介する通信インターフェースデバイスである。I/F214に、FC(Fibre Channel)ネットワーク203を介して、サーバシステム201が接続される。
サーバシステム201は、ストレージコントローラ101に対して、I/O先(例えばLUN(Logical Unit Number)のような論理ボリューム番号や、LBA(Logical Block Address)のような論理アドレス)を指定したI/O要求(ライト要求又はリード要求)を送信する。サーバシステム201は、例えば、入力デバイス、出力デバイス、CPU(Central Processing Unit)、メモリ、ディスクアダプタ、ネットワークアダプタ、及び、記憶デバイスを備える(図示なし)。なお、各サーバシステム201では、ユーザが使用するアプリケーションプログラム(AP)202(図2参照)や、ストレージコントローラ101とのインターフェース制御をおこなうストレージシステム制御プログラムもサーバシステム201が有するCPUにて実行される。
I/F216は、ストレージシステム200Aとストレージシステム200Bとの間でHA構成をつくるためのやり取りを仲介する通信インターフェースデバイスである。HA構成は非同期リモートコピーを使用する為、リモートコピー用I/Fでもよい。I/F216は、ストレージシステム間ネットワーク206を介して他のストレージシステム200に接続される。ストレージシステム間ネットワーク206は、ディザスタリカバリの観点から公衆回線などのグローバルネットワークであることが多いが、ストレージシステム同士が同じ部屋の中、同じビルの中、近隣ビルの中にある場合などはローカルネットワークであってもよい。ただし、このようなネットワークの形態によって本発明が限定されるものではない。
I/F213は、複数のPDEV220とストレージコントローラ101の間のデータのやり取りを仲介する通信インターフェースデバイスである。I/F213には、複数のPDEV220が接続される。
メモリ212は、プロセッサ211が実行するプログラムと、プロセッサ211が使用するデータを記憶する。プロセッサ211は、メモリ212に格納されているプログラムを実行する。例えば、メモリ212及びプロセッサ211の組が二重化されている。
PDEV220は、複数の記憶デバイスによって構成される。記憶デバイスは、例えばハードディスクドライブで構成され、主としてユーザデータを格納する。記憶デバイスとしては、フラッシュメモリなどの半導体メモリからなるドライブでもよい。記憶デバイスは、RAID構成に基づいてRAIDグループを構成する。
PDEV220には、RAIDグループに基づいて一つ以上の論理記憶領域(論理ボリューム)221、222(図2参照)が作成される。論理ボリュームは、PDEV220が有する物理的な記憶領域と関連付けられる。これらの論理ボリュームはユーザの指定によりPVOL150AやSVOL150B等のデータボリュームとジャーナルを格納するボリュームのジャーナルボリューム160として使用される。
ボリューム150および160はボリューム容量と実際の容量が一致するいわゆるLDEVでも、プールからページ(記憶領域の単位)を割当てるシンプロビジョニングボリュームでもよい。また、全てのボリュームは図示しない他のストレージシステムの備える記憶媒体に基づいて構成されてもよい。この場合、当該ボリュームにサーバシステムからアクセスされた場合には、アクセスをされたストレージシステムは記憶媒体を備える他のストレージシステムと通信を行いサーバシステムに応答する。
なお、ストレージシステム200は、ストレージ装置、あるいはストレージサブシステムと言うこともできる。
Quorum250は、ストレージシステム200A、ストレージシステム200B以外の装置で、例えばストレージシステム200に置かれる記憶領域である。前記HA構成のストレージシステム200Aとストレージシステム200B間で通信不可となった場合に、前記HA構成のストレージシステム200Aとストレージシステム200Bのうち、継続稼動させるものと停止させるものを決定する機能を提供する。
例えば、ストレージシステム200Aとストレージシステム200Bはそれぞれのストレージシステムの状態やそれぞれのストレージシステムから見た他方のストレージシステムへの通信状態をQuorum250に書き込む。互いのストレージシステムはQuorum250を定期的またはI/Oの応答に同期して参照し、Quorum250に書き込まれた情報に基づいて継続稼動させるものと停止させるものを決定する。
ネットワーク203及びネットワーク207は、ストレージネットワークでもよい。ストレージネットワークを介してサーバシステム201A(サーバシステム201B)とストレージシステム200A(ストレージシステム200B)間でデータを送受信する。ストレージシステム200はストレージネットワークを介して互いに通信する。
図2に示すように、ストレージシステム200A及びストレージシステム200Bはサーバシステム201A及びサーバシステム201Bに対して仮想ストレージシステム110を提供している。
ストレージシステム200Aのボリュームであるボリューム150Aおよびストレージシステム200Bのボリュームであるボリューム150Bは同一のデータが格納され、サーバシステム201に対して同じ識別子(例えばID)を示し、仮想ストレージシステム110の一つの仮想ボリューム111として提供されている。
仮想ストレージシステム110の識別子、(例えば、製造番号(S/N))は、XXXである。一方、ストレージシステム200A、ストレージシステム200B、それぞれ、製造番号AAA、製造番号BBBを有している。サーバシステム201は、仮想ストレージシステム110を、ターゲットポート102A、ターゲットポート102Bを含む、製造番号XXXのストレージシステムと認識する。
ボリューム150A、150BはHAボリュームペアを構成し、一つの仮想ボリューム111を構成する。ボリューム150A、150BのIDは、それぞれ、10:00、30:00である。一方、仮想ボリューム111のIDは、20:00である。
サーバシステム201は、仮想ストレージシステム110から仮想ボリューム111を提供され、VOL IDが20:00のボリュームと認識する。ストレージシステム200Aは通常業務を実施する正サイト(正常系)であり、ストレージシステム200Bは正サイトに障害が起こったときに業務を引き続き実施するために正サイトのデータ状態を再現する副サイト(待機系、スタンバイサイト)である。サーバシステム201は、ターゲットポート102A、102Bのいずれを介しても、仮想ボリューム111にアクセスすることができる。サーバシステム201Aは、ターゲットポート102Aのみを介して仮想ボリューム111にアクセスし、サーバシステム201Bは、ターゲットポート102Bのみを介して仮想ボリューム111にアクセスする。
サーバシステム201Aとサーバシステム201Bはクラスタリングソフトウェアによって連携して一つのシステムとして運用する。これにより、サーバシステム201Aに障害に発生しても、サーバシステム201Bで業務を継続できる。
なお、図1、図2には記載しないが、リモートコピーシステム1に管理装置を設けてもよい。管理装置は、ストレージシステム200の記憶領域の構成を管理し、例えば、入力デバイス、出力デバイス、CPU、メモリ、ネットワークアダプタ、及び、記憶デバイスを有する。Quorum250が管理装置を担ってもよい。
図3は、実施例1に係るリモートコピーシステム1のストレージコントローラ101のメモリ212の構成の一例を示す図であり、より詳細には、メモリ212の構成と、メモリ212内のプログラム及び管理情報との例を示す図である。
メモリ212は、ローカルメモリ401、キャッシュメモリ402、及び共有メモリ404というメモリ領域を含む。これらのメモリ領域のうちの少なくとも1つは、独立したメモリであってもよい。ローカルメモリ401は、このローカルメモリ401を含むメモリ212と同一組に属するプロセッサ211により使用される。
ローカルメモリ401には、リードライトプログラム411、リモートコピー制御プログラム412、ジャーナル管理プログラム413、障害管理プログラム414、オペレーション反映方法決定プログラム415、及び、反映方法選択プログラム416が格納される。これらのプログラムについては後述する。また、他、図示していないプログラムも共有メモリ404に格納される。
キャッシュメモリ402には、PDEV220に対してライト又はリードされるデータセットが一時的に格納される。
共有メモリ404は、この共有メモリ404を含むメモリ212と同一組に属するプロセッサ211、及び異なる組に属するプロセッサ211の両方により使用される。共有メモリ404には、管理情報が格納される。
管理情報は、VOL管理テーブル421、VOLマッピング管理テーブル422、ペアVOL管理テーブル423、ジャーナルテーブル424、オペレーション反映方法テーブル425を含む。ボリュームをVOLと表記する。
<管理情報>
次に、管理情報である各テーブルの構成例を説明する。
図4は、実施例1に係るリモートコピーシステム1のVOL管理テーブル421の一例を示す図である。
VOL管理テーブル421は、VOLに関する情報を保持する。例えば、VOL管理テーブル421は、VOL毎にエントリを有する。各エントリは、VOL ID801、VOL容量802、及び、ペア ID803といった情報を格納する。以下、1つのVOL(「対象VOL」と呼ぶ)を例に取って説明する。
VOLID801は、対象VOLの番号(識別番号)の情報である。VOL容量802は、対象VOLの容量の情報であり、いわゆるボリュームサイズを示す。ペア ID803はVOLID801とHA構成を組んでいるペア情報であり、ペアVOL管理テーブル423のペア IDを示す。
VOL管理テーブル421は、その他、図示していないが、ボリュームの属性(I/Oを行うボリュームかジャーナルボリュームか)、ボリュームを構成する物理ハードディスク番号群や、その物理ハードディスクからボリュームを構成するRAIDレベルや、LU番号、物理ポート番号などの情報を管理する。
図5は、実施例1に係るリモートコピーシステム1のVOLマッピング管理テーブル422の一例を示す図である。
VOLマッピング管理テーブル422は、ストレージシステム200が有するボリュームの実構成情報と仮想構成情報とを関連付ける。具体的には、VOLマッピング管理テーブル422は、VOL ID701、仮想VOL ID702、仮想ストレージシステムID(例として製品番号)703、HAフラグ704を有する。
各エントリは、ボリュームが対応付けられている仮想VOL ID、当該仮想ボリュームを提供する仮想ストレージシステム ID、及び、当該ボリュームがHAボリュームペアを構成するか否かを示している。HAフラグの値がONのとき、当該ボリュームは、他のボリュームとHAボリュームペアを構成する。ここでは、全ボリュームがHA構成をとるため全てONである。HA構成はリモートコピー構成である。
図6は、実施例1に係るリモートコピーシステム1のペアVOL管理テーブル423の一例を示す図である。
ペアVOL管理テーブル423は、リモートコピーペアを管理する情報である。ペアVOL管理テーブル423は、少なくともストレージシステム200A側に格納される。ここではストレージシステム200に格納する。
PVOL IDは、リモートコピーのコピー元であるボリュームを示す。SVOLは、リモートコピーのコピー先であるボリュームを示す。
ペアVOL管理テーブル423には、リモートコピーペアを識別するペアID901、リモートコピーデータの複製元であるPVOL情報として、PVOLのストレージシステムID902とPVOL ID903とジャーナルを格納するためのジャーナルVOL ID904、リモートコピーデータの複製先であるSVOL情報として、SVOLのストレージシステムID905と、SVOL ID906、ジャーナルを格納するためのジャーナルVOL ID907、およびペア状態908が含まれる。
ストレージシステムID902とストレージシステムID904は、当該ボリュームが存在する各ストレージシステム200の識別子、例えば、製造番号(S/N)である。
PVOL ID903とジャーナルVOL ID904、および、SVOL ID905とジャーナルVOL ID907は、各ストレージシステム200の中での当該ボリュームの識別子である。これらの各IDにより、当該ボリュームが一意に決まることになる。
ペア状態906は、複製状態を示す、ペアの一方のボリュームから他方のボリュームにデータをコピーしている状態「COPY」、ペアである二つのボリュームが同期している状態「PAIR」、ペアである二つのボリュームが非同期の状態「SUSPEND」のうち、いずれかを表わすものである。
図7は、実施例1に係るリモートコピーシステム1のジャーナルテーブル424の一例を示す図である。
ジャーナルとは、元データの更新に関する履歴を表す情報である。ジャーナルは、データのコピーであるデータ部分と、データの管理情報とから構成される。管理情報はPVOL150Aで行われたデータ更新の情報を持ち、例えば、VOL ID1001、開始LBA1002、ブロック数1003、シーケンス番号1004、時刻1005、データ1006、オペレーション1007を挙げることができる。
VOL ID1001は、PVOL150Aを特定するための情報である。開始LBA1002は、PVOL150Aに書き込まれるライトデータの先頭を示す論理ブロックアドレスである。ブロック数1003は、ライトデータのデータサイズを示す情報である。シーケンス番号1004は、ジャーナルデータに連番で設定される識別番号である。時刻1005は、ライト要求が発行された時刻である。データ1006は、データ本体が格納されている位置(アドレス)を示すポインタ情報である。オペレーション1007は、ライト要求以外の要求、例えば、QoS設定およびスナップショット取得を処理する要求(コマンドなど)があった場合に格納する。ライト要求の場合はオペレーション1007にライト要求を格納してもよいが、原則この情報は使用しない。ボリュームに対する設定等の要求があったらオペレーション1007に登録し、ライト要求以外の場合は、開始LBA1002及びブロック数1003、データ1006は使用しない。
図8は、実施例1に係るリモートコピーシステム1のオペレーション反映方法テーブル425の一例を示す図である。
オペレーションの種類501は、正サイト側が受信するボリュームに対する処理要求で、ライト要求やQoS設定やスナップショットなどがある。実行者502は前記オペレーションの要求元であり、サーバシステム201のAP202またはストレージ管理者である。ストレージ管理者は管理装置やリモートコピーシステム1に接続した端末等の機器を介して要求を出す。副サイト再現方法503は、前記オペレーションを副サイトに再現する際の再現方法を選択し登録する。
副サイト再現方法503は、例えば、方法1は要求を受けたら副サイトにも要求を送信する方法、方法2はジャーナル化して副サイトに再現する方法である。
図9は、実施例1に係るリモートコピーシステム1の設定時の動作の一例を説明するためのフローチャートである。
サーバシステム201Aとサーバシステム201Bは、クラスタリングソフトウェアによって連携する(S1010)。クラスタリングソフトウェアによって連携された複数のサーバシステム201は一つのシステムとして運用される。
正サイト100A側のサーバシステム201Aは正常系で通常業務を行い、副サイト100B側のサーバシステム201Bは待機系でスタンバイし、正常系が稼動している間はI/Oは受け付けない。正常系のサーバシステム201Aが障害により稼動できなくなったら、サーバシステム201Bにフェイルオーバし、サーバシステム201Bが正常系となり、AP202Aの替わりにAP202Bが処理を継続して行う。このため、正サイト100Aと副サイト100Bのストレージシステム200内に格納されるデータ及びボリュームへのQoS設定等を一致させる必要がある。
そこで、正サイト100Aのストレージシステム200Aと、副サイト100Bのストレージシステム200Bとを、ストレージシステム間ネットワーク206を介して接続し、リモートコピーを構成する。
リモートコピー制御プログラム412は、ストレージシステム200A内のボリュームをリモートコピーの正ボリューム(PVOL)150Aとし、ストレージシステム200B内のボリュームをリモートコピーの副ボリューム(SVOL)150Bとでリモートコピーのペアを形成する。
例えば、サーバシステム201、あるいは、ストレージシステム200に設置された保守端末(あるいは、管理装置)が持つGUI(Graphical User Interface)等からストレージシステム200にペア生成コマンドを発行し、データ複製のコピー元となるストレージシステム200Aが有するPVOL150Aと、PVOL150Aに格納されるデータの複製先となるストレージシステム200Bが有するSVOL150Bとを、ペアとして関連付ける(S1012)。ペアを生成したらペアVOL管理テーブル423に登録する。
ここでは、従来のリモートコピー構成を設定して構築する必要はなく、ストレージシステム200間のオペレーションとデータの転送をリモートコピーのジャーナル転送技術で行いたい。ペアを作成することで後述の仮想ボリュームに割り当てる。仮想ストレージシステムを構築して仮想ボリュームに2つのストレージシステム200のボリュームを割当てることでペアとして登録してもよい。正サイト100Aと副サイト100Bのハードウェア構成やハードウェア性能及び数は同じであってもよいし、異なるところがあってもよい。
さらに、各々のサイトのジャーナル管理プログラム413を用いて、PVOL150AおよびSVOL150Bのペアに対応するジャーナルを格納するジャーナルボリュームを割り当て、ペアVOL管理テーブル423に登録する。これにより、データとI/Oやボリュームに対するコマンド等の操作の順序どおりに副サイト側であるコピー先ストレージシステム200Bに正サイト側のコピー元ストレージシステム200Aのデータ及びを反映できる。
次に、仮想ストレージシステム110を設定する(S1014)。設定の方法は図2を参照して既に説明したとおりである。
仮想ストレージシステム110の仮想ボリューム111に、前記作成したペアの、正サイトのストレージシステム200AのPVOL150Aと、副サイトのストレージシステム200BのSVOL150Bの両方をマッピングし、VOLマッピング管理テーブル422に登録する(S1016)
これにより、サーバシステム201Aに障害に発生しても、サーバシステム201Bにフェイルオーバして業務を継続できる。
サーバシステム201A及びサーバシステム201Bは一つの仮想ボリューム111にリード/ライト指示を送信し、実際にはボリューム150Aに前記指示が送信される。
図10は、実施例1に係るリモートコピーシステム1のジャーナル処理の一例を説明するためのフローチャートである。
図9により、リモートコピー技術及び仮想ストレージシステム技術を使ったHA構成を構築したシステムでは、通常運用時、正サイト100Aのストレージシステム200Aへの要求を受け付ける。
ストレージシステム200Aのリードライトプログラム411は、サーバシステム201Aからリモートコピー元ボリュームPVOL150Aへのライト要求を受信すると(S1110)、前記ライト要求に従って、受信したデータを指定されたPVOL150Aのアドレスに書き込む処理を実施する。ライト要求を実施すると、ジャーナル管理プログラム413Aは、実施したライト要求のジャーナルを作成する。ライト要求の対象となったボリュームのVOL IDをVOL管理テーブル421から参照し、ライト要求に示されるライト対象位置を開始LBA1002及びブロック数1003に、それぞれ登録する。ライト要求を受信した時刻を時刻1005に登録する。
ライトデータはジャーナル用に複製して別途ジャーナル専用エリアの記憶領域に格納し、前記記憶領域へのアドレスをデータ1006に登録する。以上のように作成したジャーナルはジャーナルテーブル424に登録され、ジャーナルテーブル424はジャーナルボリューム160Aに格納する(S1112)。
ここで、ジャーナル管理プログラム413は、ストレージシステム200Aの共有メモリ404上に格納されているVOL管理テーブル421とペアVOL管理テーブル423とジャーナルテーブル424を参照し、ジャーナル格納先を決定し、ジャーナルテーブル424の最新シーケンス番号1004の次の番号をシーケンス番号として取得し、新規ジャーナルを作成し、ジャーナルボリューム160A内のジャーナルテーブル424に追加する。
ストレージシステム200Aは、ストレージシステム200Aへの書き込みが完了した時点で、サーバシステム201Aへの書き込み完了応答を行う。ストレージシステム200Aからストレージシステム200Bへのジャーナルの転送は、ライト要求とは非同期に行われる。
ストレージシステム200Bは、一定周期ごと等、所定のタイミングで、ストレージシステム200Aのジャーナルの情報を取得する。ストレージシステム200Bにおいて、ジャーナル管理プログラム413Bは、ストレージシステム200Aから、ジャーナル作成状況に関する情報を取得するための要求を、ストレージシステム200Aに送信する(S1114)。ジャーナル作成状況に関する情報は、例えば、ジャーナルボリューム内のジャーナルの容量、ジャーナルの一番古い時刻等である。
ジャーナル管理プログラム413Aは、前記要求に従ってジャーナル作成状況に関する情報をストレージシステム200Bに転送する(S1115)。ジャーナル管理プログラム413Bは、この取得した情報を利用してジャーナル転送要求を作成する。
次に、ストレージシステム200Aからストレージシステム200Bにジャーナルを転送する処理について説明する。
ストレージシステム200Bにおいて、GUIを介したユーザからの指示の入力あるいは予め定められたスケジュールに従って、ジャーナル転送指示が発生すると、ジャーナル管理プログラム413Bは、ストレージシステム200Aに対し、ジャーナル転送要求を出す(S1116)。スケジュールは、例えば、ストレージシステム200Aで一定量のジャーナルがジャーナルボリューム160Aに格納されたときや、一定期間ごと等である。
ジャーナル転送要求には、コピーすべきジャーナル(複数でも良い)、そのジャーナルが格納されているジャーナルボリューム160A、そのジャーナルボリュームを有するストレージシステム200Aを指定する情報、および、コピーしたジャーナルが格納されるジャーナルボリューム160Bを指定する情報が含まれている。ジャーナル管理プログラム413Bは、共有メモリ404上のVOL管理テーブル421やペアVOL管理テーブル423から取得した情報から、ジャーナル転送要求を作成する。
ジャーナル転送要求を受けたジャーナル管理プログラム413Bは、ジャーナル転送要求で指定されたジャーナルに対するリードコマンドをストレージシステム200Aに対して発行する(S1118)。
このリードコマンドを受けたストレージシステム200Aのジャーナル管理プログラム413Aは、リードコマンドで指定されたジャーナルをストレージシステム200Bに送信する(S1120)。ジャーナルを受信したストレージシステム200Bのジャーナル管理プログラム413Bは、ジャーナル転送要求で指定されたジャーナルボリューム160Bに、受信したジャーナルを格納する(S1121)。
その後、ストレージシステム200Bのジャーナル管理プログラム413Bは、ジャーナル反映要求を発行する(S1122)。ジャーナル反映要求を受けたジャーナル管理プログラム413Bは、ジャーナルボリューム160Bのジャーナルのシーケンス番号に従って、ジャーナルデータをSVOL150Bに書込むことで、SVOL150BにPVOL150Aのデータの反映をおこなう(S1124)。
その後、反映に用いられたジャーナルが格納されていた領域をパージする(S1125)。これにより、その領域は、新たなジャーナルの格納に利用されることができる。従来のジャーナルはライト要求だけであったため、スナップショットを取得する場合は、ストレージシステム200Aとストレージシステム200BへのI/Oを停止し、ストレージ管理者がストレージシステム200Aとストレージシステム200Bとに同時にスナップショット指示を出していた。ジャーナルにスナップショット取得のオペレーションを入れることで、スナップショット取得を自動化できる。
また、ジャーナル管理プログラム413Bは、SVOL150Bにデータが反映されたジャーナルのシーケンス番号を、ストレージシステム200Aのジャーナル管理プログラム413Aに通知する。これにより、ジャーナル管理プログラム413Aは、SVOL150Bに反映されたジャーナルが格納されていた、ストレージシステム200Aのジャーナルボリューム160Aの領域を解放する(S1126)。この領域は、新たなジャーナルの格納に利用することができる。なお、ジャーナルのパージを、通知の受領後すぐにおこなう必要はない。ジャーナルのパージを定期的におこなっても良いし、ユーザからの指示に従ってパージしても良い。
以上のジャーナル処理によれば、PVOL150AからSVOL150Bへの非同期リモートコピーを行うことができる。リモートコピー技術により、遠隔地のストレージシステム同士でのオペレーションの順序を守ることが実現できる。
前記では、前述のジャーナル処理のようにストレージシステム200Aがストレージシステム200Bからのリードコマンドを待つ方法で説明したが、ストレージシステム200Aからストレージシステム200Bに対してデータを書き込むライトコマンドを発行することにより、ジャーナルの転送を行ってもよい。
ストレージシステム200Bは、ストレージシステム200Aから転送されたジャーナルのデータをジャーナルに格納されたSVOL情報に対応するSVOL150Bの対応箇所に更新する。
実施例はライト要求について説明したが、ストレージシステム200AのボリュームにQoS設定の要求等が来た場合も同様にジャーナルに登録して実行する。例えば、ストレージシステム200Aがスナップショット作成したら、ジャーナルテーブル424のオペレーション1007にスナップショット作成を登録し、ストレージシステム200Bがジャーナルを読み出し、スナップショット作成の検出に応じてSVOL150Bのスナップショットを作成する。
図11は、実施例1に係るリモートコピーシステム1のフェイルオーバ処理の一例を説明するためのフローチャートである。
ストレージシステム200とQuorum250間で死活確認処理を定期的に実行する。
前述のとおり、Quorum250は、正サイトのストレージシステム200A、副サイトのストレージシステム200B以外のストレージシステム200に置かれる記憶領域である。ストレージシステム200Aとストレージシステム200Bは、それぞれのストレージシステムの状態やそれぞれのストレージシステムから見た他方のストレージシステムへの通信状態をQuorum250に書き込む。
例として、ストレージシステム200Bがストレージシステム200Aの死活状態を監視する処理を説明する。ストレージシステム200Aの障害管理プログラム414Aは定期的またはI/Oの応答に同期して、Quorum250の所定ビットに1を設定する(S1210)。障害管理プログラム414Bは、予め決めた時間間隔で定期的に、Quorum250内の前記所定ビットに1が設定されているか判定する(S1220)。所定ビットに基づいて継続稼動させるものと停止させるものを決定する。
Quorum250の所定ビットの値を確認した時に、所定ビットが1に設定されていた場合、ストレージシステム200Aが正常に動作していることが確認できる。確認したら、障害管理プログラム414Bは、Quorum250の所定ビットを0(ゼロ)にリセットする。ストレージシステム200Aが正常に動作していれば定期的に自身でまたビットを1にする。それを監視するためである。S1210へ戻り、定期的にQuorum250の所定ビットを参照する。
これに対し、Quorum250の所定ビットの値を確認した時に、所定ビットが0(ゼロ)に設定されていた場合、ストレージシステム200Aに障害が発生しているために所定ビットをリセットできなくなっていると判定することができる。障害管理プログラム414Bは、ストレージシステム200Aに障害が発生したことを検知する。S1230の処理へ進む。
障害を検出したら、ストレージシステム200Aをリセットさせるためのリセット指示を発行する。Quorum250に発行させてもよい。ストレージシステム200Aは障害によってはリセット指示を受けつけられない可能性もある。可能な場合だけ、ストレージシステム200Aはリセット指示を受信すると、Quorum250にリセット完了を応答した後、リセット処理を実行する。
ストレージシステム200Bはストレージシステム200Aが障害であることを検知したため、サーバシステム201BのAP202Bに対して再起動を指示する(S1230)。クラスタリングソフトウェアはAP202Bを正常系として動作し、フェイルオーバ処理を開始する。以降AP202Bからストレージシステム200Bへアクセスに切り替わる。
ストレージシステム200Bは障害ストレージシステム200Aが担当していた論理ボリュームへの要求をAP202Bから受信する(S1240)。AP202が認識している論理ボリュームは仮想ボリューム111であるため仮想ボリューム111へのアクセスは変わらず、仮想ボリューム111にSVOL150Bをマッピングして処理を継続して行う。即ち、同じ識別子(ID)をもつ仮想ボリューム111をフェイルオーバのペアであるにストレージシステム200Aとストレージシステム200Bに同時に提供していて、正常時にはストレージシステム200Aを、障害時にはストレージシステム200Bにアクセスする。
フェイルオーバしたら、ジャーナルが実行完了している時点を復元時点として、前記復元時点のストレージシステム200Bをサーバシステム201Bに提供する。AP202Bは復元時点のストレージシステム200Bを認識し処理を継続する。障害の旧正サイトから未転送のジャーナルの分は再現できない。最新状態より少し過去の状態にて業務を続けることができる。
このように構成される本実施例によれば、サーバシステム201のAP202にストレージシステム200の構成を意識させずに、ボリュームオペレーションも含めてコピー先ストレージシステム200に運用環境を反映しF.O.することができる。
また、本実施例によれば、正サイトに障害が発生し、正サイトから副サイトへ未転送のジャーナルが存在した場合でも、副サイトへフェイルオーバし、ボリュームへのQoS設定を含め副サイトでの運用環境を再現でき、業務を継続できるResurrectableなリモートコピーシステム1を提供できる。
また、本実施例のリモートコピーシステム1は高可用性を示し得る。AP202にも負荷をかけずに、AP202とストレージ管理者で認識するストレージの構成情報と同じ構成を正副サイトに実現できる。従来、ストレージシステム200内の障害が起こった場合、障害状況を調査しフェイルオーバするには専門の知識をもつ管理者及び技術者の操作が必要であったが、本実施例により、クラスタリングソフトとQuorum250と連携して自動フェイルオーバを実現できる。障害からの復旧を容易化、迅速化できる。ジャーナルを利用することでI/O単位にコピー処理を行えるため、RPO(Recovery Point Objective)が小さい。専門知識をもつ技術者が必要なくなる。
なお、Quorum250自身が管理装置として、ストレージシステム200の状況を管理し、いずれかのストレージシステム200内での障害発生を検知した場合、障害発生元ストレージシステムに対してリセット指示を出し、フェイルオーバ先のストレージシステム200に対してフェイルオーバ指示を発行してもよい。
障害によっては応答できない場合は、タイムオーバによりフェイルオーバ処理を開始するか決定してもよい。
ストレージシステム200Aはペアを形成する相手のストレージシステム200Bとハードビート通信を行うことで相手ストレージシステムが正常に稼動しているかを監視する経路を持ってもよい。
前述のとおり、ストレージシステム200Aに更新があると、前記更新内容をジャーナルに登録し、前記ジャーナルは更新時刻順に前記更新内容を管理し、前記ジャーナルをストレージシステム200Aからストレージシステム200B転送する。ストレージシステム200Bは、受け取ったジャーナルの更新時刻順にストレージシステム200Bに再現する。これは、ライト要求は、要求時刻順に処理を実施しないと、データが異なる場合があるためである。
例えば、同一ボリュームの同一アドレスに、ライト要求が2回、データXとデータYの順にライトが要求された場合、最初にライトされたデータXに上書きされて最後にライト要求されたデータYが最終的に格納されるが、順番を入れ替えてライト処理を実行すると、データYに上書きされてデータXが最終的に格納される。
このように、ライト処理においては、処理された順番を遵守して実行することが重要であり、順番を遵守しなければ副サイト側で正サイトのデータが再現できない。ライト要求に関しては、ジャーナル化して、更新順序を管理することが必要である。
一方、ボリュームに対するQoS設定のボリュームオペレーションにおいては、ライト要求などの他の処理との実行順序が異なっても結果が変わらないため、実行順序による影響は無い。更に言えば、実行順序を遵守する必要はなく、正サイトでボリュームオペレーションが行われたら、直ちに副サイトへボリュームオペレーション指示を出してもよい。従って、ジャーナルで管理しなくてもよい。
正サイトで要求を受けたら直ちに副サイトへ指示することで、ジャーナルを介して副サイトに再現していたときより、早いタイミングで副サイト側に再現することが可能であり、障害が発生した時にも、ボリュームオペレーションを副サイトに引き継げる可能性が高くなる。
図12は、実施例2に係るリモートコピーシステムにおける反映方法選択処理の一例を示すフローチャートである。
図12を参照して、本実施例である、オペレーションによりジャーナル化するか、ジャーナル化せずに副サイト側にオペレーションを転送するかを選択する方法を説明する。
正サイトで受けたオペレーション(ライト要求を含む)のうち、どれをジャーナルで管理すべきかを決定するための、図8のオペレーション反映方法テーブル425を作成する(S11)。これは、リモートコピーシステム1の初期設定時点で作成してよい。
まず、正サイト側が受信するボリュームに対する処理要求全てをオペレーションの種類501に登録する。オペレーションには、ライト要求やQoS設定やスナップショットがある。各オペレーションをストレージシステム200に対して指示できる要求元を実行者502に登録する。実行者はサーバシステム201のAP202またはストレージ管理者がある。同じオペレーションに複数の実行者がある場合は、エントリを分けて登録する。オペレーションと実行者の組み合わせに対して、オペレーションの実行順序を保証すべきものか否かを判断し、副サイトで再現する方法を登録する。
オペレーション反映方法テーブル425を作成する方法は、例えば、システム管理者やユーザが手動で入力してもよい。入力を支援するツールを設けてもよい。過去にオペレーションを実行した実績から判断して自動作成してもよい。AIを使って、マニュアル等の情報を取り出して自動で作成する方法でもよい。
サーバシステム201からオペレーションを受信する(S12)と、オペレーション反映方法テーブル425を参照して、受信したオペレーションの種類501の副サイト再現方法503を判定する(S13)。副サイト再現方法503が方法1の場合は、ジャーナル化する(S15)。副サイト再現方法503が方法2の場合は、ジャーナル化せずに副サイトにオペレーション指示を送る(S14)。
このように構成される本実施例によれば、サーバシステム201からオペレーションを受信したら、このオペレーションに基づき、オペレーションによる更新内容をジャーナルボリューム160に格納する作業、またはオペレーションを受信したらこのオペレーションを実行する作業のいずれかを実行している。
従って、本実施例によれば、正サイトに障害が発生した際に早期にかつ確実に副サイトにおいて運用環境を再現することが可能となる。
なお、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、CD−ROM、DVD−ROM、ハードディスク、SSD(Solid State Drive)、光ディスク、光磁気ディスク、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどが用いられる。
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、C/C++、perl、Shell、PHP、Java(登録商標)等の広範囲のプログラム又はスクリプト言語で実装できる。
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
1…リモートコピーシステム 100A…正サイト 100B…副サイト 101、101A、101B…ストレージコントローラ 110…仮想ストレージシステム 111…仮想ボリューム 150、150A、150B…ボリューム 160、160A、160B…ジャーナルボリューム 200…ストレージシステム 200A…第一のストレージシステム 200B…第二のストレージシステム 201…サーバシステム 201A…第一のサーバシステム 201B…第二のサーバシステム

Claims (7)

  1. 第一のサーバシステム及びこの第一のサーバシステムに接続された第一のストレージシステムからなる正サイトと、
    第二のサーバシステム及びこの第二のサーバシステムに接続された第二のストレージシステムからなる副サイトと
    を有し、
    前記第一のサーバシステム及び前記第二のサーバシステムはクラスタリングされ、
    前記第一のストレージシステム及び前記第二のストレージシステムにより仮想ストレージシステムが構築され、
    前記第一のストレージシステムがコピー元で前記第二のストレージシステムがコピー先として非同期リモートコピーされるように構成され、
    前記第一及び第二のストレージシステムは非同期リモートコピーの相手先である前記第二または第一のストレージシステムの障害を検知するように構成されたリモートコピーシステムであって、
    前記第一のストレージシステムはデータボリューム、ジャーナルボリューム及びストレージコントローラを有し、
    前記ストレージコントローラは、前記第一のサーバシステムからオペレーションを受信したら、前記オペレーションに基づき、前記オペレーションによる更新内容を前記ジャーナルボリュームに格納する作業、または前記オペレーションを受信したらこのオペレーションを実行する作業のいずれかを実行する
    ことを特徴とするリモートコピーシステム。
  2. 前記ストレージコントローラは、前記正サイトにフェイルオーバが発生した後に、前記ジャーナルボリュームに格納された前記更新内容を前記第二のサーバシステムに反映させることを特徴とする請求項1に記載のリモートコピーシステム。
  3. 前記ストレージコントローラは、前記オペレーションの種類に基づいていずれの作業を実行するかを決定することを特徴とする請求項2に記載のリモートコピーシステム。
  4. 前記ストレージコントローラは、前記オペレーションの種類に基づいて、前記ジャーナルボリュームに格納された前記更新内容を前記第二のサーバシステムに反映する方法を選択することを特徴とする請求項3に記載のリモートコピーシステム。
  5. 前記ストレージコントローラは、前記オペレーションの要求元にも基づいて、前記ジャーナルボリュームに格納された前記更新内容を前記第二のサーバシステムに反映する方法を選択することを特徴とする請求項4に記載のリモートコピーシステム。
  6. 前記ストレージコントローラは前記オペレーションの種類、前記オペレーションの前記要求元及び前記更新内容の反映方法との対応関係が記述されたテーブルを有し、このテーブルの内容に基づいて前記更新内容の前記反映方法を選択することを特徴とする請求項5に記載のリモートコピーシステム。
  7. 前記ストレージコントローラは、前記第一のサーバシステムから前記オペレーションを受信したら、前記オペレーションによる更新内容を前記ジャーナルボリュームに格納する作業を必ず実行することを特徴とする請求項1に記載のリモートコピーシステム。

JP2019154963A 2019-08-27 2019-08-27 リモートコピーシステム Pending JP2021033782A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019154963A JP2021033782A (ja) 2019-08-27 2019-08-27 リモートコピーシステム
CN202010114907.6A CN112445652B (zh) 2019-08-27 2020-02-25 远程复制系统
US16/805,901 US11308122B2 (en) 2019-08-27 2020-03-02 Remote copy system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019154963A JP2021033782A (ja) 2019-08-27 2019-08-27 リモートコピーシステム

Publications (1)

Publication Number Publication Date
JP2021033782A true JP2021033782A (ja) 2021-03-01

Family

ID=74678789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019154963A Pending JP2021033782A (ja) 2019-08-27 2019-08-27 リモートコピーシステム

Country Status (3)

Country Link
US (1) US11308122B2 (ja)
JP (1) JP2021033782A (ja)
CN (1) CN112445652B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113625944B (zh) * 2021-06-25 2024-02-02 济南浪潮数据技术有限公司 一种基于多路径和远程复制技术的容灾方法、系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004013367A (ja) * 2002-06-05 2004-01-15 Hitachi Ltd データ記憶サブシステム
JP2005222110A (ja) * 2004-02-03 2005-08-18 Hitachi Ltd ストレージサブシステム
US20070180000A1 (en) * 2006-01-30 2007-08-02 Hiroshi Mine Storage apparatus and storage system
JP2007286860A (ja) * 2006-04-17 2007-11-01 Hitachi Ltd データ転送方法及び情報処理装置
JP2008117342A (ja) * 2006-11-08 2008-05-22 Hitachi Ltd ストレージシステムおよびリモートコピーを制御するためのコントローラ
WO2017145223A1 (ja) * 2016-02-22 2017-08-31 株式会社日立製作所 計算機システム、計算機システムの制御方法、および記録媒体

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004259079A (ja) * 2003-02-27 2004-09-16 Hitachi Ltd データ処理システム
US7065589B2 (en) * 2003-06-23 2006-06-20 Hitachi, Ltd. Three data center remote copy system with journaling
US7577805B2 (en) * 2004-11-01 2009-08-18 Hitachi, Ltd. Using bandwidth and capacity parameters to control remote copy operations in storage systems
JP5042644B2 (ja) * 2007-01-24 2012-10-03 株式会社日立製作所 リモートコピーシステム
US10747624B2 (en) * 2015-10-14 2020-08-18 Hitachi, Ltd. Storage system and control method of storage system using asynchronous remote copying to backup volume at specific time points

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004013367A (ja) * 2002-06-05 2004-01-15 Hitachi Ltd データ記憶サブシステム
JP2005222110A (ja) * 2004-02-03 2005-08-18 Hitachi Ltd ストレージサブシステム
US20070180000A1 (en) * 2006-01-30 2007-08-02 Hiroshi Mine Storage apparatus and storage system
JP2007286860A (ja) * 2006-04-17 2007-11-01 Hitachi Ltd データ転送方法及び情報処理装置
JP2008117342A (ja) * 2006-11-08 2008-05-22 Hitachi Ltd ストレージシステムおよびリモートコピーを制御するためのコントローラ
WO2017145223A1 (ja) * 2016-02-22 2017-08-31 株式会社日立製作所 計算機システム、計算機システムの制御方法、および記録媒体

Also Published As

Publication number Publication date
CN112445652A (zh) 2021-03-05
US11308122B2 (en) 2022-04-19
US20210064638A1 (en) 2021-03-04
CN112445652B (zh) 2024-06-07

Similar Documents

Publication Publication Date Title
US8504765B2 (en) Method of improving efficiency of capacity of volume used for copy function and apparatus thereof
JP4551096B2 (ja) ストレージサブシステム
US8271761B2 (en) Storage system and management method thereof
JP4927408B2 (ja) 記憶システム及びそのデータ復元方法
US8090979B2 (en) Information system and data transfer method
EP1785833B1 (en) Storage control system
US8909985B2 (en) Multiple hyperswap replication sessions
JP5286212B2 (ja) ストレージクラスタ環境でのリモートコピー制御方法及びシステム
GB2539829A (en) Storage system
US10747624B2 (en) Storage system and control method of storage system using asynchronous remote copying to backup volume at specific time points
US20170220249A1 (en) Systems and Methods to Maintain Consistent High Availability and Performance in Storage Area Networks
US20090177916A1 (en) Storage system, controller of storage system, control method of storage system
WO2015198449A1 (ja) ストレージシステム
US11308122B2 (en) Remote copy system
JP6039818B2 (ja) 情報システム、ホストシステム、及びアクセス制御方法
US10846012B2 (en) Storage system for minimizing required storage capacity during remote volume replication pair duplication
WO2016084156A1 (ja) ストレージシステム
JP2021149773A (ja) ハイブリッドクラウドにおけるデータを保護する方法
US11256586B2 (en) Remote copy system and remote copy management method
US11379328B2 (en) Transitioning from a donor four site data replication system to a target four site data replication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210427

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210609

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211026