JP6606235B1 - ストレージシステム - Google Patents

ストレージシステム Download PDF

Info

Publication number
JP6606235B1
JP6606235B1 JP2018133731A JP2018133731A JP6606235B1 JP 6606235 B1 JP6606235 B1 JP 6606235B1 JP 2018133731 A JP2018133731 A JP 2018133731A JP 2018133731 A JP2018133731 A JP 2018133731A JP 6606235 B1 JP6606235 B1 JP 6606235B1
Authority
JP
Japan
Prior art keywords
storage device
physical volume
write
command
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.)
Active
Application number
JP2018133731A
Other languages
English (en)
Other versions
JP2020013227A (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
Priority to JP2018133731A priority Critical patent/JP6606235B1/ja
Priority to CN201910179163.3A priority patent/CN110716882B/zh
Priority to US16/354,375 priority patent/US10860235B2/en
Application granted granted Critical
Publication of JP6606235B1 publication Critical patent/JP6606235B1/ja
Publication of JP2020013227A publication Critical patent/JP2020013227A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • 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/0215Addressing or allocation; Relocation with look ahead addressing means
    • 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0647Migration 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/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

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 Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】移行元ボリュームグループがPVOL及びSVOL1を有し、移行先ボリュームグループが当該PVOL及びSVOL2を有する場合、ライト対象のデータをPVOL、SVOL1及びSVOL2に並列に書き込むと、いわゆるデータ化けが起こり得る。【解決手段】第1乃至3のストレージ装置が、それぞれ、SVOL1、SVOL2及びPVOLを有する。ライトコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、第1乃至第3のストレージ装置の少なくとも一つが、当該ライトコマンドに従うライト対象のデータをPVOLに書き込み、その後に、当該ライト対象のデータを並列にSVOL1及びSVOL2に書き込む。リードコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、第1乃至第3のストレージ装置の少なくとも一つが、当該リードコマンドに従うリード対象のデータをPVOLから読み出す。【選択図】図1

Description

本発明は、概して、ストレージシステムに関し、特に、ストレージシステムにおけるボリュームグループの移行に関する。
背景技術として、特許文献1がある。特許文献1は、「移行前ボリュームグループから移行後ボリュームグループへの移行を行う複数ストレージ装置、を含むストレージシステムであって、前記複数ストレージ装置は、前記移行中において、前記移行前ボリュームグループ及び前記移行後ボリュームグループの複数ボリューム内の任意ボリュームへのホストからのライトコマンドを受け付け、前記複数ストレージ装置は、前記複数ボリュームのそれぞれに、予め定められた順番で、前記ライトコマンドのライトデータを書き込み、前記複数ストレージ装置における第1ストレージ装置は、前記複数ボリュームにおける最後において、最後ボリュームに前記ライトデータを書き込み、前記複数ストレージ装置において前記最後ボリュームと異なるボリュームを提供するストレージ装置は、前記異なるボリュームそれぞれにおいて、排他ロックを行ってから前記ライトデータを書き込み、前記最後ボリュームへの前記ライトデータの書き込み完了後に前記排他ロックを解除する。」を開示する。
特許第6234557号明細書
エンタプライズクラスのストレージシステムでは、ストレージ装置のクラスタ構成によるHigh Availability(HA)機能が求められている。HA機能は、ストレージシステムの高可用性を実現する。HA構成は、二重化された系を有し、障害発生時には自動的に故障した系を切り離し、正常な系のみを用いて動作を継続する。
さらに、Active-Active型HA構成は、全ての系を稼動系として運用する。Active-Active型HA構成において、ストレージシステムは、ボリュームペアのいずれのI/O(Input/Output)アクセスも受け付ける。
Active-Active型HA構成のストレージシステムにおけるデータ移行では、ホストI/O無停止かつActive-Active型HA構成を維持したまま、データを移行することが求められる。つまり、Active-Active型HA構成の高可用性を維持しながらのデータ移行が求められる。
Active-Active型HA構成に従うボリュームグループとして、仮想ボリュームの基になる複数の物理ボリュームを含んだ第1及び第2のボリュームグループがあるとする。第1のボリュームグループは、いずれもI/Oコマンドで指定され得るPVOL(プライマリ物理ボリューム)とSVOL1(第1のセカンダリ物理ボリューム)とを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループである。第2のボリュームグループは、いずれもI/Oコマンドで指定され得る上記PVOLとSVOL2(第2のセカンダリ物理ボリューム)とを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループである。第1のボリュームグループは移行元であり、第2のボリュームグループは移行先である。
受け付けられたライトコマンドに従うライト先がPVOL、SVOL1及びSVOL2のいずれかの場合、ライト対象のデータをPVOL、SVOL1及びSVOL2に並列に書き込むことで、高速に当該ライトコマンドを処理することが期待できる。しかし、ライト対象のデータが同時にPVOL、SVOL1及びSVOL2の全てに必ずしも書き込まれるわけではない。このため、例えば、上述の仮想ボリュームの或るアドレス(例えばLBA(Logical Block Address))についてPVOL、SVOL1及びSVOL2のうちのいずれか一つから読み出されたデータが、その後に同一のアドレスについてPVOL、SVOL1及びSVOL2のうちの別のいずれか一つから読み出されたデータが異なっていること、つまり、いわゆるデータ化けが起こることがあり得る。
ストレージシステムにおいて、第1のストレージ装置がSVOL1を有し、第2のストレージ装置がSVOL2を有し、第3のストレージ装置がPVOLを有する。ライトコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、第1乃至第3のストレージ装置の少なくとも一つが、当該ライトコマンドに従うライト対象のデータをPVOLに書き込み、その後に、当該ライト対象のデータを並列にSVOL1及びSVOL2に書き込む。リードコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、第1乃至第3のストレージ装置の少なくとも一つが、当該リードコマンドに従うリード対象のデータをPVOLから読み出す。
PVOL、SVOL1及びSVOL2に並列に書き込むことが行われても、いわゆるデータ化けが起こり得ることを防ぐことができる。
HAマルチターゲット構成におけるボリュームペア移行の概要を説明する図である。 計算機システムの構成例を示す図である。 ホスト計算機の構成例を示す図である。 物理ストレージ装置のハードウェア構成例を示す図である。 物理ストレージ装置のソフトウェア構成例を示す図である。 リソース管理テーブルの構成例を示す図である。 ホストグループ管理テーブルの構成例を示す図である。 仮想ストレージボックス管理テーブルの構成例を示す図である。 仮想ストレージ管理テーブルの構成例を示す図である。 ボリュームコピーペア管理テーブルの構成例を示す図である。 排他ロック管理テーブルの構成例を示す図である。 HAボリューム移行ステップを示す図である。 ホスト計算機からのWRITEコマンドでPVOLが指定されているケースについてのライト処理の流れを示す図である。 ホスト計算機からのWRITEコマンドでSVOL1が指定されているケースについてのライト処理の流れを示す図である。 ホスト計算機からのWRITEコマンドでSVOL2が指定されているケースについてのライト処理の流れを示す図である。 ホスト計算機からのREADコマンドでPVOLが指定されているケースについてのライト処理の流れを示す図である。 ホスト計算機からのREADコマンドでSVOL1が指定されているケースについてのライト処理の流れを示す図である。 ホスト計算機からのREADコマンドでSVOL2が指定されているケースについてのライト処理の流れを示す図である。
以下の説明では、「インタフェース部」は、一つ以上のインタフェースでよい。当該一つ以上のインタフェースは、一つ以上の同種の通信インタフェースデバイス(例えば一つ以上のNIC(Network Interface Card))であってもよいし二つ以上の異種の通信インタフェースデバイス(例えばNICとHBA(Host Bus Adapter))であってもよい。
また、以下の説明では、「メモリ部」は、一つ以上のメモリであり、典型的には主記憶デバイスでよい。
また、以下の説明では、「記憶デバイス部」は、一つ以上の記憶デバイスであり、典型的には補助記憶デバイスでよい。「記憶デバイス」は、特に、物理的な記憶デバイス(Physical storage DEVice)を意味し、典型的には、不揮発性の記憶デバイスである。
また、以下の説明では、「記憶部」は、メモリ部と記憶デバイス部の少なくとも一部とのうちの少なくとも一つ(典型的には少なくともメモリ部)である。
また、以下の説明では、「プロセッサ部」は、一つ以上のプロセッサである。少なくとも一つのプロセッサは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサであるが、GPU(Graphics Processing Unit)のような他種のプロセッサでもよい。少なくとも一つのプロセッサは、シングルコアでもよいしマルチコアでもよい。少なくとも一つのプロセッサは、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)又はASIC(Application Specific Integrated Circuit))といった広義のプロセッサでもよい。
また、以下の説明では、「xxxテーブル」といった表現にて、入力に対して出力が得られる情報を説明することがあるが、この種の情報は、どのような構造のデータでもよいし、入力に対する出力を発生するニューラルネットワークのような学習モデルでもよい。従って、「xxxテーブル」を「xxx情報」と言うことができる。また、以下の説明において、各テーブルの構成は一例であり、一つのテーブルは、二つ以上のテーブルに分割されてもよいし、二つ以上のテーブルの全部又は一部が一つのテーブルであってもよい。
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ部によって実行されることで、定められた処理を、適宜に記憶部及び/又はインタフェース部等を用いながら行うため、処理の主語が、プロセッサ部(或いは、そのプロセッサ部を有するコントローラのようなデバイス)とされてもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は計算機が読み取り可能な(例えば非一時的な)記録媒体であってもよい。また、以下の説明において、二つ以上のプログラムが一つのプログラムとして実現されてもよいし、一つのプログラムが二つ以上のプログラムとして実現されてもよい。
また、以下の説明では、「ストレージシステム」は、複数の物理ストレージ装置で構成されるが、それら複数の物理ストレージ装置のうちの少なくとも一つが汎用計算機でもよい。当該少なくとも一つの汎用計算機が所定のソフトウェアを実行することにより、当該汎用計算機、又は、当該物理的な計算機を含んだシステムに、SDx(Software-Defined anything)が構築されてもよい。SDxとしては、例えば、SDS(Software Defined Storage)又はSDDC(Software-defined Datacenter)を採用することができる。例えば、ストレージ機能を有するソフトウェアが汎用計算機で実行されることにより、SDSとしてのストレージ装置が構築されてもよい。
また、以下の説明では、「物理VOL」は、HAペアを構成するボリュームであり、論理的な記憶デバイス(例えばアドレス空間)でよい。物理ボリュームは、ストレージシステムが有する物理的な記憶資源(例えば、一つ以上の記憶デバイス)に基づく実体的なボリュームでもよいし、仮想化技術(例えば、Thin Provisioning)に従う仮想的なボリュームでもよい。
以下、添付図面を参照して本発明の一実施例を説明する。本実施例は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。各図において共通の構成については同一の参照符号が付されている。
以下に説明するストレージシステムは、Active-Active型HA構成を有する。HA構成は、二重化された系を有し、障害発生時には自動的に故障した系を切り離し、正常な系のみを用いて動作を継続するための自動障害回復機能を備える。Active-Active型HA構成は、全ての系を稼動系として運用することで、リソースの有効活用及び負荷分散を実現する。以下の説明において、HA構成及びHAペアは、Active-Active型のHA構成及びHAペアを意味する。ストレージシステムは、HAペアのいずれに対するI/Oアクセスも受け付ける。
以下においては、HAペアの移行を説明する。具体的には、HAペアの移行は、移行前HAペアの一つを別のボリュームに移行し、移行前HAペアの他方と新たなボリュームとで、移行後HAペアを構成する。ストレージシステムは、移行中において、全てのボリュームへのI/Oアクセスを受け付ける。ストレージシステムは、移行完了後に、HAペアを切り替える。なお、HAペアが、Active-Active型HA構成のボリュームグループの一例である。移行前HAペアが、移行元である第1のボリュームグループの一例である。移行後HAペアが、移行先である第2のボリュームグループの一例である。なお、「Active-Active型HA構成のボリュームグループ」とは、いずれもI/O(Input/Output)コマンドで指定され得る二つ以上の物理ボリュームを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループである。
HAペアは、Primary Volume(PVOL)とSecondary Volume(SVOL)とで構成される。一例において、ストレージシステムは、ペア作成時に、PVOLのデータをSVOLにコピーする。
非移行時において、ストレージシステムは、SVOLへのWRITEコマンドを受信すると、PVOLへのライトデータの書き込み(ライトキャッシュへの書き込み又は記憶ドライブへの書き込みのいずれか)終了後に、SVOLへのライトデータの書き込みを行う。一例において、PVOLへのI/Oアクセスは、PVOLの排他ロックを伴い、SVOLへのI/Oアクセスにおいて排他ロックは使用されない。SVOLへのアクセスにおいて排他ロックが使用されてもよい。
移行時において、ライト処理に関し、PVOLについての排他ロックは、他のライト処理及びリード処理を禁止するが、SVOLについての排他ロックは、他のライト処理を禁止するものの、リード処理を禁止しない。リード処理における排他ロックは、他のライト処理を禁止し、他のリード処理を禁止しても禁止しなくともよい。リード処理における排他ロックは、他のリード処理を許可することでホストへの応答遅延を抑制できる。
図1は、ボリューム移行における、HAマルチターゲット構成の概要を示す図である。図1の例によれば、HAマルチターゲット構成は、一つのボリュームを二つのHAペアの共通のPVOLとし、それらの三つのボリュームで二つのHAペアを構成する。
図1のシステムは、ホスト計算機1000と、物理ストレージ装置(単にストレージ装置とも呼ぶ)2000と、仮想ストレージ装置3000とを含む。仮想ストレージ装置3000は、ストレージシステムを構成する複数の物理ストレージ装置2000に基づく。
本システムは、複数物理ストレージ装置2000によるActive-Active型HA構成(以下、HAボリューム構成とも呼ぶ)を有する。複数物理ストレージ装置2000は、単一の仮想ストレージ装置3000として、ホスト計算機1000に提供される。各物理ストレージ装置2000は、ホスト計算機1000からの要求に対して、同一のストレージ装置構成情報、すなわち仮想ストレージ装置1(3000)の構成情報を提供する。
図1の例において、物理ストレージ装置1(2000)の物理VOL1(2900)と、物理ストレージ装置2(2000)の物理VOL2(2900)とは、HAペア7100を構成している。物理VOL1(2900)はPVOLであり、物理VOL2(2900)はSVOLである。
物理VOL1(2900)及び物理VOL2(2900)について、ホスト計算機1000に対して、同一のVOL情報、すなわち仮想VOL11(3900)の情報が提供される。ホスト計算機1000は、OS(Operating System)1310及び交替パスプログラム1320を実行し、仮想VOL11(3900)にアクセスする。このため、ホスト計算機1000は、交替パスプログラム1320により、物理VOL1(2900)へのパス8100と物理VOL2(2900)へのパス8200のいずれも使用することができる。
一方の物理VOL2900に対するライトデータは、他方の物理VOL2900に転送される。これにより、物理VOL1(2900)及び物理VOL2(2900)の間のデータ同一性が維持される。
このように、物理VOL1(2900)及び物理VOL2(2900)は、ホスト計算機1000から一つのボリュームとしてI/Oアクセス可能であり、また、いずれかの物理ボリュームにおいて障害が発生しても、他の物理ボリュームへのI/Oアクセスが可能である。
本実施例は、ホストI/O無停止かつActive-Active型HA構成を維持したボリュームペアの移行を説明する。一例として、物理VOL2(2900)を物理VOL3へ移行する例を説明する。物理VOL1及び物理VOL2は移行前ボリュームペアを構成し、物理VOL1(2900)及び物理VOL3(2900)は移行後ボリュームペアを構成する。
まず、物理VOL1(2900)と物理VOL3(2900)で、HAペア7200が形成される。ここでは、物理VOL1(2900)はPVOL、物理VOL3(2900)はSVOLとする。移行において、PVOLである物理VOL1(2900)からSVOLである物理VOL3(2900)にデータがコピーされる。
ホスト計算機1000及び物理ストレージ装置3(2000)において、ホスト計算機1000から物理VOL3(2900)へのパス8300が定義される。物理ストレージ装置3(2000)は、物理VOL3(2900)について、ホスト計算機1000からの要求に対して、物理VOL1(2900)及び物理VOL2(2900)と同様に、仮想VOL11(3900)の情報を返す。
次に、ホスト計算機1000及び物理ストレージ装置2(2000)において、ホスト計算機1000から物理VOL2(2900)へのパス8200が削除される。さらに、物理ストレージ装置1(2000)及び物理ストレージ装置2(2000)は、HAペア7100を削除する。これにより、物理ストレージ装置2(2000)の物理VOL2(2900)から物理ストレージ装置3(2000)の物理VOL3(2900)への移行が完了する。
図2は、本実施例における計算機システムの構成例を示す。図2の計算機システムは、ホスト計算機1000と、物理ストレージ装置2000と、管理計算機4000と、を含む。
計算機システムに含まれる各種装置(システム)の数は、設計に依存する。物理ストレージ装置1〜3(2000)は、一台の仮想的なストレージ装置である仮想ストレージ装置を構成する。本例の仮想ストレージ環境において、二台または三台の物理ストレージ装置が一台の仮想ストレージを構成するが、その仮想ストレージを構成する物理ストレージの数は設計に依存する。
物理ストレージ装置A(2000)は、Quorum Diskを持つ。Quorum Diskは、HA構成における物理ストレージ装置2000間で通信不可となった場合に、HA構成が組まれた物理ストレージ装置2000のうち、継続稼動させるものと停止させるものを決定する機能を提供する。Quorum Diskにより、スプリットブレイン問題を防ぐことができる。
ホスト計算機1000、管理計算機4000及び物理ストレージ装置2000は、LAN6000で構成された管理ネットワークにより、通信可能に接続されている。例えば、管理ネットワーク6000は、IPネットワークである。管理ネットワーク6000は、管理データ通信用のネットワークであればどのタイプのネットワークでもよい。
ホスト計算機1000及び物理ストレージ装置2000は、SAN(Storage Area Network)5000で構成されたデータネットワークにより接続されている。ホスト計算機1000は、SAN5000を介して、物理ストレージ装置2000のボリュームにアクセスする。データネットワーク5000はデータ通信用のネットワークであれば、どのようなタイプのネットワークでもよい。データネットワーク5000と管理ネットワーク6000は同一のネットワークでもよい。
図3は、ホスト計算機1000の構成例を模式的に示す。ホスト計算機1000は、プロセッサであるCPU(Central Processing Unit)1100、不揮発性の二次記憶デバイス1200、主記憶デバイスであるメモリ1300、入出力デバイス1400、I/O要求発行側インタフェースであるイニシエータポート1600、管理インタフェース(管理I/F)1700を含む。各構成要素は、バス1500により通信可能に接続されている。
CPU1100は、メモリ1300に格納されたプログラムに従って動作する。典型的には、二次記憶デバイス1200に格納されているプログラム及びデータが、メモリ1300にロードされる。本例において、メモリ1300は、OS(Operating System)1310、交替パスプログラム1320及びアプリケーションプログラム1330を保持する。アプリケーションプログラム1330は、物理ストレージ装置2000が提供するボリュームへデータの読み書きを行う。
イニシエータポート1600は、SAN4000に接続するネットワークインタフェースである。イニシエータポート1600は、SAN5000を介して物理ストレージ装置2000とデータ及び要求を送受信する。
管理インタフェース1700は、LAN6000に接続するネットワークインタフェースである。管理インタフェース1700は、LAN6000を介して物理ストレージ装置2000と管理データ及び制御命令を送受信する。管理インタフェース1700は、さらに、LAN6000を介して管理計算機4000と、管理データ及び制御命令を送受信する。
図4は、物理ストレージ装置2000の構成例を模式的に示す図である。本例において、全物理ストレージ装置2000の基本構成は同じであるが、構成要素の数や記憶容量等は各物理ストレージ装置2000に依存する。これらは異なる基本構成を有していてもよい。
物理ストレージ装置2000は、複数の記憶デバイス(例えば、ハードディスクドライブ及び/又はSSD(Solid State Drive))2200と、物理ストレージ装置2000を制御し、ボリューム管理や、ホスト計算機1000又は他の物理ストレージ装置2000とのデータ通信等を行うストレージコントローラとを含む。
ストレージコントローラは、プロセッサであるCPU2100、メモリ2300、I/O要求発行側インタフェースであるイニシエータポート2600、I/O要求受信側インタフェースであるターゲットポート2700、管理インタフェース(管理I/F)2800、データ転送のためのキャッシュメモリ2400、を含む。ストレージ装置2000の構成要素は、バス2500で通信可能に接続されている。
物理ストレージ装置2000は、イニシエータポート2600を介して、外部(他)の物理ストレージ装置2000に接続し、外部の物理ストレージ装置2000にI/O要求及びライトデータを送信し、外部の物理ストレージ装置2000からリードデータを受信することができる。イニシエータポート2600は、SAN5000に接続する。
イニシエータポート2600は、外部の物理ストレージ装置2000との通信に用いられるFC、Fibre Channel Over Ethernet(FCoE)、iSCSI等のプロトコルを、ストレージコントローラ内部で用いられるプロトコル、例えば、PCIeに変換する機能を有する。
物理ストレージ装置2000は、ターゲットポート2700において、ホスト計算機1000又は外部の物理ストレージ装置2000に接続する。物理ストレージ装置2000は、ターゲットポート2700を介して、ホスト計算機1000又は外部の物理ストレージ装置2000からI/O要求及びライトデータを受信し、また、ホスト計算機1000又は外部の物理ストレージ装置2000にリードデータを送信する。ターゲットポート2700は、SAN5000に接続する。
ターゲットポート2700は、ホスト計算機1000又は外部の物理ストレージ装置2000との通信に用いられるFC、Fibre Channel Over Ethernet(FCoE)、iSCSI等のプロトコルを、ストレージコントローラ内部で用いられるプロトコル、例えば、PCIeに変換する機能を有する。
管理インタフェース2800は、LAN6000に接続するためのデバイスである。管理インタフェース2800は、LAN6000で使用されるプロトコルを、ストレージコントローラ内部で用いられるプロトコル、例えば、PCIeに変換する機能を有する。
CPU2100は、物理ストレージ装置2000の制御のためのプログラムを実行し、ホスト計算機1000からのI/Oの制御及び物理ストレージ装置2000ボリュームの管理、制御を含む所定の機能を実現する。本実施例で説明するCPU2100により実現される機能の少なくとも一部は、CPU2100と異なるロジック回路によって実現されてもよい。
プログラムはプロセッサ(CPU)によって実行されることで、定められた処理をメモリ及びインタフェースを用いながら行う。従って、本開示においてプログラムを主語とする説明は、プロセッサを主語とした説明でもよい。若しくは、プログラムが実行する処理は、そのプログラムが動作する装置(例えば物理ストレージ装置2000又はホスト計算機1000)及びシステムが行う処理である。
メモリ2300は、CPU2100が扱うデータやプログラムを格納する。メモリ2300のデータは、例えば、物理ストレージ装置2000内のいずれかの記憶デバイス2200、フラッシュメモリ(不図示)、又はLAN5000を介して接続された他の装置等、非一時的記憶媒体を備える記憶デバイスからメモリ2300にロードされる。
図5は、物理ストレージ装置2000それぞれのメモリ2300におけるソフトウェア構成例を示す。メモリ2300は、データ入出力処理プログラム2350、リソース管理プログラム2360及びボリュームコピー制御プログラム2370を保持する。さらに、メモリ2300は、リソース管理テーブル2310、仮想ストレージボックス管理テーブル2320、仮想ストレージ管理テーブル2330、ボリュームコピーペア管理テーブル2340、ホストグループ管理テーブル2380、排他ロック管理テーブル2390を保持する。
データ入出力処理プログラム2350は、ホスト計算機1000からのI/O要求に従って、ユーザデータのリード及びライトを行い、ホスト計算機1000及び他の物理ストレージ装置2000との間の必要なデータ通信を行う。
リソース管理プログラム2360は、物理ストレージ装置2000のリソースを管理する。リソース管理プログラム2360は、ボリュームの作成や削除の他、以下に説明するテーブル(情報)の作成及び更新を行う。リソース管理プログラム2360は、リソース管理のために必要な情報を、管理計算機4000との間で送受信する。
ボリュームコピー制御プログラム2370は、HAペアにおける物理ボリューム間のコピーを制御する。
以下において、物理ストレージ装置2000がそれぞれ保持し、本実施例の説明において参照されるテーブル(情報)について説明する。同一名称のテーブルは、各物理ストレージ装置2000において、同一の構成(欄)を有する。以下において図を参照して説明するテーブルは、物理ストレージ装置1(2000)が保持するテーブルである。なお、各装置が保持する情報は、テーブル以外の構造体に格納されていてもよい。
図6Aは、リソース管理テーブル2310の構成例を示す。リソース管理テーブル2310は、当該物理ストレージ装置1(2000)のリソースを管理するためのテーブルである。
リソース管理テーブル2310は、物理ストレージ装置1(2000)のリソースの種類を格納するリソース種別欄2311、リソースIDを格納するリソースID欄2312、当該リソースが属するリソースグループIDを格納するリソースグループID欄2313、当該リソースに付与された仮想リソースIDを格納する仮想リソースID欄2314を有する。
図6Bは、ホストグループ管理テーブル2380の構成例を示す。ホストグループは、ポートに接続されたホスト計算機1000のWWN(World Wide Name)を、ホスト計算機1000のOS種別毎にグループ化したものである。ホストグループ管理テーブル2380は、ポートIDを格納するポートID欄2381、当該ポートに関連するホストグループIDを格納するホストグループID欄2382、ホスト計算機1000のOS種別を示すホストモード欄2383、当該ホストグループに登録されたホストWWNを格納するホストWWN欄2384、ホストグループID2382に属するホスト計算機1000がアクセス可能なボリュームIDを格納するボリュームID欄2385を有する。
図7は、仮想ストレージボックス管理テーブル2320の構成例を示す。仮想ストレージボックスは、一物理ストレージ装置内で一仮想ストレージ装置が持つリソースグループの集合である。仮想ストレージボックス管理テーブル2320は、仮想ストレージ装置3000の仮想ストレージボックスを管理するためのテーブルである。
仮想ストレージボックス管理テーブル2320は、仮想ストレージボックスIDを格納する仮想ストレージボックスID欄2321、当該仮想ストレージボックスに属するリソースグループIDを格納するリソースグループID欄2322を有する。
図8は、仮想ストレージ管理テーブル2330の構成例を示す。仮想ストレージ管理テーブル2330は、仮想ストレージ装置3000を管理するためのテーブルである。仮想ストレージ管理テーブル2330は、仮想ストレージIDを格納する仮想ストレージID欄2331、当該仮想ストレージ装置に属する仮想ストレージボックスIDを格納する仮想ストレージボックスID欄2332を有する。
図9Aは、ボリュームコピーペア管理テーブル2340の構成例を示す。ボリュームコピーペア管理テーブル2340は、当該物理ストレージ装置2000が提供するボリュームを含むボリュームコピーペアを管理するためのテーブルである。
ボリュームコピーペア管理テーブル2340は、ボリュームコピーペアのペアIDを格納するペアID欄2341、当該ペアの種別を格納するペア種別欄2342、当該ペアの状態を格納するペア状態欄2343を有する。
ボリュームコピーペア管理テーブル2340は、さらに、PVOLIDを格納するPVOLID欄2344、SVOLIDを格納するSVOLID欄2345を有する。本例において、PVOLID及びSVOLIDは、物理ストレージ装置2000の識別情報及び当該物理ストレージ装置における物理ボリュームの識別情報により構成されている。
ボリュームコピーペア管理テーブル2340は、さらに、当該ペアに関連するペアのIDを格納する関連ペアID欄2346、当該ペアと関連ペアの優先度を格納する優先度欄2347を有する。本例では、優先度の数値が小さい程、優先度が高い。
ペア種別欄2342に格納するペア種別は、HAであれば“HA”、物理ストレージ内のボリュームローカルコピーであれば“LC”、物理ストレージ間のボリュームリモートコピーであれば“RC”、HAマルチターゲット構成であれば“HA‐MLT”など、ボリュームコピーペアの種類を示す。
ペア状態欄2343に格納するペア状態は、データコピー中であれば“COPY”、データコピー完了後の同期状態であれば“PAIR”、データコピー中断中であれば“SUSPEND”など、ボリュームコピーペア間のデータコピーの状態を示す文字列や数字を格納する。
優先度欄2347に格納する優先度は、HAマルチターゲット構成におけるデータ書き込み順序を決定する情報を示す。HAマルチターゲット構成に関し、本実施例では、第1ペア及び第2ペアの優先度は同じであり、故に、まず、第1ペア及び第2ペアのPVOLに書き込みが行われ、その後、並列に、第1ペアのSVOLと第2ペアのSVOLに書き込みが行われる。
図9Bは、排他ロック管理テーブル2390の構成例を示す。排他ロック管理テーブル2390は、物理ボリュームの排他ロックを管理するための情報を保持する。排他ロック管理テーブル2390は、排他ロックのIDを格納する排他ロックID欄2391、物理ボリュームのIDを格納するボリュームID欄2392、及び、排他ロックがかかっているLBA(Logical Block Address)を格納するLBA欄2393を有する。
排他ロック管理テーブル2390は、排他ロックされているデータ記憶領域を管理している。各エントリは、排他ロックされているボリューム内の領域を示し、ボリュームIDと当該ボリューム内のアドレス(LBA)を使用して、例えば、開始LBAとデータ長で指定される。本例において、ボリューム内の部分領域が排他ロックされるが、ボリューム単位で排他ロックされてもよい。また、排他ロックの種別を格納する欄が設けられてもよいし、排他ロックIDが排他ロックの種別を示す情報を含んでもよい。例えば、或る符号で始まる排他ロックIDに対応した排他ロックは、ライト不可且つリード不可の排他ロックでよく、別の符号で始まる排他ロックIDに対応した排他ロックは、ライト不可且つリード可の排他ロックでよい。
図10は、物理ストレージ装置2(ST2)(2000)の物理VOL2(SVOL)2900を、物理ストレージ装置3(ST3)(2000)の物理VOL3(SVOL)2900に移行するステップを示す。物理VOL1、VOL2、VOL3(2900)は、仮想VOL11(3000)の構成要素である。なお、一部の符号を省略している。
物理VOL2(SVOL)2900と物理ストレージ装置2(2000)の物理VOL1(PVOL)2900は、移行前ボリュームペア(第1ボリュームペア)である。
物理VOL3(2900)と物理VOL1(PVOL)2900は、移行後ボリュームペア(第2ボリュームペア)である。移行において、物理VOL1(PVOL)2900のデータが、物理VOL3(2900)にコピーされる。本例では、ホスト管理及びストレージ管理の両方を実施可能なシステム管理者が、パス及びボリュームの設定を行う。
図10において、ステップA‐0は、初期状態を示す。ホスト計算機1000と、物理VOL1、VOL2との間にパスが定義されている。物理VOL1、VOL2は、ボリュームペアを構成している。物理VOL1、VO2は、仮想VOL11の構成要素であり、ホスト計算機1000は、仮想VOL11のアクセスのために、いずれの物理VOL1、VOLにもアクセスすることができる。
ステップA‐1において、システム管理者からの指示に従って、物理ストレージ装置3は、物理VOL3を作成する。システム管理者からの指示に従って、物理ストレージ装置1(ST1)及び物理ストレージ装置3は、物理VOL1と物理VOL3のHAペアを作成する。VOL3への仮想IDを付与する。このとき、VOL1、VOL2及びVOL3はHAマルチターゲット構成である。
ステップA‐2において、システム管理者からの指示に従って、ホスト計算機1000及び物理ストレージ装置3は、ホスト計算機1000から物理VOL3へのパスを定義する。物理ストレージ装置3は、ホストグループ管理テーブル2380に、ホストのWWN、ポートID、VOL3のボリュームIDの情報を追加する。
次に、ステップA‐3において、システム管理者からの指示に従って、ホスト計算機1000及び物理ストレージ装置2は、ホスト計算機1000から物理VOL2へのパスを削除する。物理ストレージ装置2は、ホストグループ管理テーブル2380から、ホストのWWN、ポートID、VOL2のボリュームIDの情報を削除する。
次に、ステップA‐4において、システム管理者からの指示に従って、物理ストレージ装置1、2は、物理VOL1と物理VOL2のHAペアを削除し、さらに、物理ストレージ装置2は物理VOL2の仮想IDを削除する。
HAマルチターゲット構成に関し本実施例でのライト処理及びリード処理を説明する。なお、以下、説明を簡単にするために、仮想VOL11(仮想ボリュームの一例)の基になる複数の物理ボリュームが、HAペア1(移行元である第1のボリュームグループの一例)を構成するPVOL(プライマリ物理ボリュームの一例であり、例えば物理VOL1)とSVOL1(第一のセカンダリ物理ボリュームの一例であり、例えば物理VOL2)であるとする。HAペア2(移行先である第2のボリュームグループの一例)が、移行先として新たに作成されたHAペアの一例であり、同PVOLとSVOL3(第二のセカンダリ物理ボリュームの一例であり、例えば物理VOL3)で構成されるとする。また、SVOL1を有する物理ストレージ装置(第1のストレージ装置の一例)が、ストレージ装置1であり、SVOL2を有する物理ストレージ装置(第2のストレージ装置の一例)が、ストレージ装置2であり、PVOLを有する物理ストレージ装置(第3のストレージ装置の一例)が、ストレージ装置3であるとする。
本実施例では、HAペア1からHAペア2への移行中において、ストレージシステムがI/OコマンドとしてWRITEコマンドを受け付け、且つ、当該受け付けられたWRITEコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、ストレージ装置1乃至3の少なくとも一つが、当該WRITEコマンドに従うライト対象のデータをPVOLに書き込み、その後に、当該ライト対象のデータを並列にSVOL1及びSVOL2に書き込む。また、本実施例では、HAペア1からHAペア2への移行中において、ストレージシステムがI/OコマンドとしてREADコマンドを受け付け、且つ、当該受け付けられたREADコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、ストレージ装置1乃至3の少なくとも一つが、当該READコマンドに従うリード対象のデータをPVOLから読み出す、言い換えれば、SVOL1及びSVOL2からの読出しを行わない。このように、ライト対象のデータは、まずPVOLに格納され、その後に、SVOL1及び2に格納される。リード対象のデータは、必ずPVOLから読み出される。つまり、順序性及び整合性が保証される。結果として、SVOL1及びSVOL2に並列にデータを書き込むことが行われても、読出しに関し、いわゆるデータ化けが起こり得ることを防ぐことができる。
具体的には、本実施例では、ストレージ装置1乃至3のいずれがWRITEコマンド又はREADコマンドを受信しても、当該コマンドを受信したストレージ装置で実行されるデータ入出力処理プログラム2350及びボリュームコピー制御プログラム2370の少なくとも一つ(以下、便宜上、「プログラムユニット」)が、下記(w)及び(r)を行う。
(w)受信したコマンドがWRITEコマンドの場合、当該WRITEコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、当該WRITEコマンドに従うライト対象のデータをPVOLに書き込み、その後に、当該ライト対象のデータをSVOL1及びSVOL2の少なくとも一つに書き込む。
(r)受信したコマンドがREADコマンドの場合、当該READコマンドがPVOL、SVOL1及びSVOL2のいずれを指定していても、当該READコマンドに従うリード対象のデータをPVOLから読み出す。
(w)の詳細は、下記の通りである。
・WRITEコマンドがストレージ装置3で受け付けられた場合、プログラムユニットは、ライト対象のデータをPVOLに書き込み、その後に、当該ライト対象のデータをSVOL1に書き込むためにSVOL1を指定したWRITEコマンドをストレージ装置1に送信することと、当該ライト対象のデータをSVOL2に書き込むためにSVOL2を指定したWRITEコマンドをストレージ装置2に送信することとを並列に行う。ストレージ装置1及び2の各々から完了応答を受けた場合、プログラムユニットは、完了応答をホスト計算機1000に返す。
・WRITEコマンドがストレージ装置1で受け付けられた場合、プログラムユニットは、当該WRITEコマンドに従うライト対象のデータをSVOL1に書き込むこと無しに、当該ライト対象のデータをPVOLに書き込むためにPVOLを指定したWRITEコマンドをストレージ装置3に送信する。ストレージ装置3は、ライト対象のデータをPVOLに書き込み、その後に、SVOL2に当該ライト対象のデータを書き込み、完了応答をストレージ装置1に返す。ストレージ装置1において、プログラムユニットは、SVOL1に上記ライト対象のデータを書き込み、完了応答をホスト計算機1000に返す。
・WRITEコマンドがストレージ装置2で受け付けられた場合、プログラムユニットは、当該WRITEコマンドに従うライト対象のデータをSVOL2に書き込むこと無しに、当該ライト対象のデータをPVOLに書き込むためにPVOLを指定したWRITEコマンドをストレージ装置3に送信する。ストレージ装置3は、ライト対象のデータをPVOLに書き込み、その後に、SVOL1に当該ライト対象のデータを書き込み、完了応答をストレージ装置2に返す。ストレージ装置2において、プログラムユニットは、SVOL2に上記ライト対象のデータを書き込み、完了応答をホスト計算機1000に返す。
以下、HAマルチターゲット構成に関するライト処理及びリード処理の各々の詳細を説明する。なお、ストレージシステム(仮想ストレージ装置3000)に発行されたWRITEコマンド及びREADコマンドについて、図6A〜図8に示したテーブルを基に所定の処理が行われ、PVOL、SVOL1及びSVOL2のいずれかを指定したWRITEコマンド及びREADコマンドが受け付けられるが、以下の説明では、図6A〜図8に示したテーブルを参照した処理については説明を割愛する。
まず、HAマルチターゲット構成に関するライト処理の詳細を説明する。なお、図11〜図13では、下記の表記ルールが採用されている。
・「WRITE CMD」=WRITEコマンド
・「WRITE RSP」=WRITEコマンドに対する完了応答又はエラー応答
・「WRITE RSP (OK)」=WRITEコマンドに対する完了応答
・「WRITE RSP (NG)」=WRITEコマンドに対するエラー応答
・「ロックW/R)」=ライト不可且つリード不可の排他ロック
・「ロックW)」=ライト不可且つリード可の排他ロック
図11は、ホスト計算機1000からのWRITEコマンドでPVOLが指定されているケース(図1のパス8100がWRITEコマンドの送信に使用されたケース)についてのライト処理の流れを示す図である。
ストレージ装置3のデータ入出力処理プログラム2350が、ホスト計算機1000からWRITEコマンドを受信する(S1101)。
ストレージ装置3のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、PVOLについて、ライト不可且つリード不可の排他ロックをする、具体的には、例えば、当該排他ロックのID、PVOLのID、及び、当該排他ロックがされたLBAを含んだエントリを、排他ロック管理テーブル2390に追加する(S1102)。ストレージ装置3のデータ入出力処理プログラム2350が、PVOLにライト対象のデータを書き込む(S1104)。なお、ここでは、ライト対象のデータは、PVOLに実際に書き込まれてもよいし、ストレージ装置3のキャッシュメモリ2400に書き込まれPVOLには後に非同期に書き込まれてもよい。ライト不可且つリード不可の排他ロックがかかっている領域については、データを書き込むこともデータを読み出すこともできない。
ストレージ装置3のボリュームコピー制御プログラム2370が、SVOL1を指定したWRITEコマンドをストレージ装置1に送信すること(S1104A)と、SVOL2を指定したWRITEコマンドをストレージ装置2に送信すること(S1104B)とを並列に行う。PVOLの相手がSVOL1及びSVOL2であることは、ボリュームコピーペア管理テーブル2340から特定される。また、HAペア1とHAペア2の優先度が同じであるため、S1104AとS1104Bが並列に行われる。
ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置3からのWRITEコマンドに応答して、SVOL1について、ライト不可且つリード可の排他ロックをする(S1105A)。ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、SVOL1に、ライト対象のデータを書き込み(S1106A)、ストレージ装置3からのWRITEコマンドに対する応答を返す(S1107A)。なお、S1105A〜S1107Aと同様の処理が、SVOL2に関し、ストレージ装置2のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370により行われる(S1105B〜S1107B)。
ストレージ装置3のボリュームコピー制御プログラム2370が、ストレージ装置1及び2の両方から完了応答を受信したか否かを判断する(S1108)。S1108の判断結果が偽の場合、ストレージ装置3のデータ入出力処理プログラム2350が、ホスト計算機1000にエラー応答を返す(S1109)。エラー応答は、例えば、リトライを促す応答(例えばCheck応答)でよい。これにより、ホスト計算機1000は、同じWRITEコマンドを再送することができる。
S1108の判断結果が真の場合、ストレージ装置3のデータ入出力処理プログラム2350が、ホスト計算機1000に完了応答を返す(S1110)。
ストレージ装置1乃至3の各々について、排他ロックが解除される(S1111A、S1111B、S1111C)。例えば、S1110の後、ストレージ装置3のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ホスト計算機1000に完了応答を返したことを、ストレージ装置1及び2の各々に報告し、PVOLについて、ライト不可且つリード不可の排他ロックを解除する、具体的には、例えば、当該排他ロックのID、PVOLのID、及び、当該排他ロックがされたLBAを含んだエントリを、排他ロック管理テーブル2390から削除する(S1111A)。ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置3からの報告を受けて、SVOL1について、ライト不可且つリード可の排他ロックを解除する(S1111B)。同様に、ストレージ装置2のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置3からの報告を受けて、SVOL2について、ライト不可且つリード可の排他ロックを解除する(S1111C)。
図11によれば、SVOL1及びSVOL2に並列にデータが書き込まれるようになっていても、PVOLに先にデータを書き込むという順序性が維持されており、且つ、リード処理では、READコマンドでPVOL、SVOL1及びSVOL2のいずれが指定されていても、データの読出し元はPVOLに制限されるため、整合性も維持される。また、PVOLについてのライト不可且つリード不可の排他ロック、及び、SVOL1及びSVOL2の各々についてのライト不可且つリード可の排他ロックは、整合性の維持に貢献する。
図12は、ホスト計算機1000からのWRITEコマンドでSVOL1が指定されているケース(図1のパス8200がWRITEコマンドの送信に使用されたケース)についてのライト処理の流れを示す図である。
ストレージ装置1のデータ入出力処理プログラム2350が、ホスト計算機1000からWRITEコマンドを受信する(S1201)。
ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、SVOL1について、ライト不可且つリード可の排他ロックをする(S1202)。そして、ストレージ装置1のボリュームコピー制御プログラム2370が、PVOLを指定したWRITEコマンドをストレージ装置3に送信する(S1203)。SVOL1の相手がPVOLであることは、ボリュームコピーペア管理テーブル2340から特定される。
ストレージ装置3のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置1からのWRITEコマンドに応答して、PVOL1について、ライト不可且つリード不可の排他ロックをし(S1204)、PVOLにライト対象のデータを書き込む(S1205)。そして、ストレージ装置3のボリュームコピー制御プログラム2370が、SVOL2を指定したWRITEコマンドをストレージ装置2に送信する(S1206)。PVOLの相手がSVOL2であることは、ボリュームコピーペア管理テーブル2340から特定され、且つ、WRITEコマンドをSVOL1側から受けたため、WRITEコマンドをSVOL1側に送信する必要が無いことが特定される。
ストレージ装置2のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置3からのWRITEコマンドに応答して、SVOL2について、ライト不可且つリード可の排他ロックをし(S1207)、SVOL2にライト対象のデータを書き込む(S1208)。そして、ストレージ装置2のボリュームコピー制御プログラム2370が、ストレージ装置3からのWRITEコマンドに対する応答を返す(S1209)。
ストレージ装置3のボリュームコピー制御プログラム2370が、ストレージ装置2から応答を受けた場合、ストレージ装置1からのWRITEコマンドに対する応答を返す(S1210)。
ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置3から応答を受けた場合、SVOL1にライト対象のデータを書き込み(S1211)、S1201で受信したWRITEコマンドに対する応答をホスト計算機1000に返す(S1212)。
ストレージ装置1乃至3の各々について、排他ロックが解除される(S1213A、S1213B、S1213C)。例えば、S1212の後、ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ホスト計算機1000に完了応答を返したことを、ストレージ装置3に報告し、当該報告が、ストレージ装置3からストレージ装置2にも送信される。その後、S1213A〜S1213Cのようなロック解除が行われる。
図12によれば、ホスト計算機1000からのWRITEコマンドでSVOL1が書込み先として指定されていても、SVOL1にデータが書き込まれる前に、PVOLにデータが書き込まれる。つまり、PVOLに先にデータを書き込むという順序性が維持されている。リード処理では、READコマンドでPVOL、SVOL1及びSVOL2のいずれが指定されていても、データの読出し元はPVOLに制限される。このため、整合性も維持される。
なお、図12の例によれば、PVOL→SVOL2→SVOL1という順でデータが書き込まれるが、PVOLにWRITEコマンドが送信された場合、SVOL2とSVOL1に並列にデータが書き込まれてよい。すなわち、S1205の後、S1206と並列に、SVOL1を指定したWRITEコマンドがストレージ装置3からストレージ装置1に送信されてよい。そして、ストレージ装置1及び2の各々から完了応答を受けた場合に、ストレージ装置3が、ストレージ装置1に、完了を報告してよい。ストレージ装置1が、その報告を受けた場合に、完了応答をホスト計算機1000に返してもよい。
図13は、ホスト計算機1000からのWRITEコマンドでSVOL2が指定されているケース(図1のパス8300がWRITEコマンドの送信に使用されたケース)についてのライト処理の流れを示す図である。
図13によれば、図12のSVOL1がSVOL2であり、図12のSVOL2がSVOL1である点を除き、S1201〜S1213Cと同様の処理がそれぞれ行われる(S1301〜S1313C)。
以上が、HAマルチターゲット構成に関するライト処理の詳細の説明である。次に、HAマルチターゲット構成に関するリード処理の詳細を説明する。なお、図14〜図16では、下記の表記ルールが採用されている。
・「READ CMD」=READコマンド
・「READ RSP」=READコマンドに対する完了応答(リード対象のデータを含む応答)又はエラー応答
・「READ RSP (OK)」=READコマンドに対する完了応答
・「READ RSP (NG)」=READコマンドに対するエラー応答
・「ロックW/R)」=ライト不可且つリード不可の排他ロック
・「ロックW)」=ライト不可且つリード可の排他ロック
図14は、ホスト計算機1000からのREADコマンドでPVOLが指定されているケース(図1のパス8100がREADコマンドの送信に使用されたケース)についてのリード処理の流れを示す図である。
ストレージ装置3のデータ入出力処理プログラム2350が、ホスト計算機1000からREADコマンドを受信する(S1401)。
ストレージ装置3のデータ入出力処理プログラム2350が、当該READコマンドに従うリード対象のデータを、PVOLから読み出す(S1402)。
ストレージ装置3のデータ入出力処理プログラム2350が、当該リード対象のデータを含んだ応答を、ホスト計算機1000に返す(S1403)。
図15は、ホスト計算機1000からのREADコマンドでSVOL1が指定されているケース(図1のパス8200がREADコマンドの送信に使用されたケース)についてのリード処理の流れを示す図である。
ストレージ装置1のデータ入出力処理プログラム2350が、ホスト計算機1000からREADコマンドを受信する(S1501)。
ストレージ装置1のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、SVOL1からリード対象のデータを読み出すこと無しに、PVOLを指定したREADコマンドをストレージ装置3に送信する(S1502)。
ストレージ装置3のデータ入出力処理プログラム2350又はボリュームコピー制御プログラム2370が、ストレージ装置1からのREADコマンドに応答して、PVOLからリード対象のデータを読み出し(S1503)、当該リード対象のデータを含んだ応答を返す(S1504)。
ストレージ装置1のデータ入出力処理プログラム2350が、S1502で送信したREADコマンドに従う読出しに成功したか否か(リード対象のデータを含んだ応答を受信できたか否か)を判断する(S1505)。
S1505の判断結果が真の場合、ストレージ装置1のデータ入出力処理プログラム2350が、リード対象のデータを含んだ応答を、S1501で受信したREADコマンドに対する応答として返す(S1506)。
S1505の判断結果が偽の場合、ストレージ装置1のデータ入出力処理プログラム2350が、ホスト計算機1000にエラー応答を返す(S1507)。エラー応答は、例えば、リトライを促す応答(例えばCheck応答)でよい。これにより、ホスト計算機1000は、同じREADコマンドを再送することができる。
図15によれば、ホスト計算機1000からのREADコマンドでSVOL1が読出し元として指定されていても、最先にデータが書き込まれるPVOLからデータが読み出される。このため、整合性が維持される。
図16は、ホスト計算機1000からのREADコマンドでSVOL2が指定されているケース(図1のパス8300がREADコマンドの送信に使用されたケース)についてのライト処理の流れを示す図である。
図16によれば、図15のSVOL1がSVOL2であり、図15のSVOL2がSVOL1である点を除き、S1501〜S1507と同様の処理がそれぞれ行われる(S1601〜S1607)。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成・機能・処理部等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード等の記録媒体に置くことができる。
2000:物理ストレージ装置

Claims (8)

  1. 仮想ボリュームの基になる複数の物理ボリュームを含んだ第1のボリュームグループを第2のボリュームグループに移行する複数のストレージ装置を備え、
    前記第1のボリュームグループは、いずれもI/O(Input/Output)コマンドで指定され得る物理ボリュームであるプライマリ物理ボリュームと第1のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記第2のボリュームグループは、いずれもI/Oコマンドで指定され得る物理ボリュームである前記プライマリ物理ボリュームと第2のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記複数のストレージ装置は、前記第1のセカンダリ物理ボリュームを有するストレージ装置である第1のストレージ装置と、前記第2のセカンダリ物理ボリュームを有するストレージ装置である第2のストレージ装置と、前記プライマリ物理ボリュームを有するストレージ装置である第3のストレージ装置とを含み、
    I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれを指定していても、前記第1乃至第3のストレージ装置の少なくとも一つが、当該ライトコマンドに従うライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームに書き込み、
    I/Oコマンドとしてリードコマンドが受け付けられ、且つ、当該受け付けられたリードコマンドが前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれを指定していても、前記第1乃至第3のストレージ装置の少なくとも一つが、当該リードコマンドに従うリード対象のデータを前記プライマリ物理ボリュームから読み出す、
    ストレージシステム。
  2. I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが、前記第1のセカンダリ物理ボリュームを指定している場合、
    前記第1のストレージ装置が、当該ライトコマンドに従うライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込むこと無しに、当該ライト対象のデータを前記プライマリ物理ボリュームに書き込むために前記プライマリ物理ボリュームを指定したライトコマンドを前記第3のストレージ装置に送信し、
    前記第3のストレージ装置が、当該ライトコマンドに応答して、前記ライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込むために前記第2のセカンダリ物理ボリュームを指定したライトコマンドを前記第2のストレージ装置に送信し、
    前記第2のストレージ装置が、前記第3のストレージ装置からのライトコマンドに応答して、前記ライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込み、完了応答を前記第3のストレージ装置に返し、
    前記第3のストレージ装置が、当該完了応答を受けた場合、前記第1のストレージ装置からのライトコマンドに対する完了応答を前記第1のストレージ装置に返し、
    前記第1のストレージ装置が、当該完了応答を受けた場合、前記ライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込み、前記受け付けられたライトコマンドに対する完了応答を返し、
    I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが、前記第2のセカンダリ物理ボリュームを指定している場合、
    前記第2のストレージ装置が、当該ライトコマンドに従うライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込むこと無しに、当該ライト対象のデータを前記プライマリ物理ボリュームに書き込むために前記プライマリ物理ボリュームを指定したライトコマンドを前記第3のストレージ装置に送信し、
    前記第3のストレージ装置が、当該ライトコマンドに応答して、前記ライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込むために前記第1のセカンダリ物理ボリュームを指定したライトコマンドを前記第1のストレージ装置に送信し、
    前記第1のストレージ装置が、前記第3のストレージ装置からのライトコマンドに応答して、前記ライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込み、完了応答を前記第3のストレージ装置に返し、
    前記第3のストレージ装置が、当該完了応答を受けた場合、前記第2のストレージ装置からのライトコマンドに対する完了応答を前記第2のストレージ装置に返し、
    前記第2のストレージ装置が、当該完了応答を受けた場合、前記ライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込み、前記受け付けられたライトコマンドに対する完了応答を返す、
    請求項1に記載のストレージシステム。
  3. I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが、前記プライマリ物理ボリュームを指定している場合、
    前記第3のストレージ装置が、当該ライトコマンドに応答して、前記ライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込むために前記第1のセカンダリ物理ボリュームを指定したライトコマンドを前記第1のストレージ装置に送信することと、当該ライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込むために前記第2のセカンダリ物理ボリュームを指定したライトコマンドを前記第2のストレージ装置に送信することとを並列に行い、
    前記第1のストレージ装置が、前記第3のストレージ装置からのライトコマンドに応答して、前記ライト対象のデータを前記第1のセカンダリ物理ボリュームに書き込み、完了応答を前記第3のストレージ装置に返し、
    前記第2のストレージ装置が、前記第3のストレージ装置からのライトコマンドに応答して、前記ライト対象のデータを前記第2のセカンダリ物理ボリュームに書き込み、完了応答を前記第3のストレージ装置に返し、
    前記第3のストレージ装置が、前記第1及び第2のストレージ装置の各々から完了応答を受けた場合、前記受け付けられたライトコマンドに対する完了応答を返す、
    請求項1に記載のストレージシステム。
  4. I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれを指定していても、
    前記第3のストレージ装置は、
    前記プライマリ物理ボリュームについて、ライト不可且つリード不可の排他ロックをし、
    前記ライト対象のデータを、前記プライマリ物理ボリュームに書き込み、
    当該排他ロックを解除し、
    前記第1のストレージ装置は、
    前記第1のセカンダリ物理ボリュームについて、ライト不可且つリード可の排他ロックをし、
    前記ライト対象のデータを、前記第1のセカンダリ物理ボリュームに書き込み、
    当該排他ロックを解除し、
    前記第2のストレージ装置は、
    前記第2のセカンダリ物理ボリュームについて、ライト不可且つリード可の排他ロックをし、
    前記ライト対象のデータを、前記第2のセカンダリ物理ボリュームに書き込み、
    当該排他ロックを解除する、
    請求項1に記載のストレージシステム。
  5. I/Oコマンドとしてリードコマンドが受け付けられ、且つ、当該受け付けられたリードコマンドが前記第1のセカンダリ物理ボリュームを指定している場合、
    前記第1のストレージ装置が、当該リードコマンドに従うリード対象のデータを前記第1のセカンダリ物理ボリュームから読み出すこと無しに、当該リード対象のデータを前記プライマリ物理ボリュームから読み出すために前記プライマリ物理ボリュームを指定したリードコマンドを前記第3のストレージ装置に送信し、
    前記第3のストレージ装置が、当該リードコマンドに応答して前記リード対象のデータを前記プライマリ物理ボリュームから読み出し、当該リード対象のデータを前記第1のストレージ装置に返し、
    前記第1のストレージ装置が、前記第3のストレージ装置からの前記リード対象のデータを、前記受け付けられたリードコマンドの応答として返し、
    I/Oコマンドとしてリードコマンドが受け付けられ、且つ、当該受け付けられたリードコマンドが前記第2のセカンダリ物理ボリュームを指定している場合、
    前記第2のストレージ装置が、当該リードコマンドに従うリード対象のデータを前記第2のセカンダリ物理ボリュームから読み出すこと無しに、当該リード対象のデータを前記プライマリ物理ボリュームから読み出すために前記プライマリ物理ボリュームを指定したリードコマンドを前記第3のストレージ装置に送信し、
    前記第3のストレージ装置が、当該リードコマンドに応答して前記リード対象のデータを前記プライマリ物理ボリュームから読み出し、当該リード対象のデータを前記第2のストレージ装置に返し、
    前記第2のストレージ装置が、前記第3のストレージ装置からの前記リード対象のデータを、前記受け付けられたリードコマンドの応答として返し、
    請求項1に記載のストレージシステム。
  6. 前記第1のストレージ装置は、前記リード対象のデータを前記第3のストレージ装置から受信できない場合、前記受け付けられたリードコマンドに応答して前記第1のセカンダリ物理ボリュームからの読出しを行うこと無しに、前記受け付けられたリードコマンドの応答としてエラーを返し、
    前記第2のストレージ装置は、前記リード対象のデータを前記第3のストレージ装置から受信できない場合、前記受け付けられたリードコマンドに応答して前記第2のセカンダリ物理ボリュームからの読出しを行うこと無しに、前記受け付けられたリードコマンドの応答としてエラーを返す、
    請求項5に記載のストレージシステム。
  7. 仮想ボリュームの基になる複数の物理ボリュームを含んだ第1のボリュームグループを第2のボリュームグループに移行する複数のストレージ装置を備えたストレージシステムが行う記憶制御方法であって、
    前記第1のボリュームグループは、いずれもI/O(Input/Output)コマンドで指定され得る物理ボリュームであるプライマリ物理ボリュームと第1のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記第2のボリュームグループは、いずれもI/Oコマンドで指定され得る物理ボリュームである前記プライマリ物理ボリュームと第2のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記複数のストレージ装置は、前記第1のセカンダリ物理ボリュームを有するストレージ装置である第1のストレージ装置と、前記第2のセカンダリ物理ボリュームを有するストレージ装置である第2のストレージ装置と、前記プライマリ物理ボリュームを有するストレージ装置である第3のストレージ装置とを含み、
    前記記憶制御方法は、
    I/Oコマンドとしてライトコマンドが受け付けられ、且つ、当該受け付けられたライトコマンドが前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれを指定していても、当該ライトコマンドに従うライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームに書き込み、
    I/Oコマンドとしてリードコマンドが受け付けられ、且つ、当該受け付けられたリードコマンドが前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれを指定していても、当該リードコマンドに従うリード対象のデータを前記プライマリ物理ボリュームから読み出す、
    記憶制御方法。
  8. 仮想ボリュームの基になる複数の物理ボリュームを含んだ第1のボリュームグループを第2のボリュームグループに移行する複数のストレージ装置のうちのいずれのストレージ装置で実行されても、当該ストレージ装置である対象ストレージ装置に、
    I/O(Input/Output)コマンドとしてライトコマンドが受け付けられ、且つ、前記対象ストレージ装置が有する物理ボリュームと当該ライトコマンドで指定されている物理ボリュームが、プライマリ物理ボリューム、第1のセカンダリ物理ボリューム及び第2のセカンダリ物理ボリュームのいずれであっても、当該ライトコマンドに従うライト対象のデータを前記プライマリ物理ボリュームに書き込み、その後に、当該ライト対象のデータを前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームの少なくとも一つに書き込み、
    I/Oコマンドとしてリードコマンドが受け付けられ、且つ、前記対象ストレージ装置が有する物理ボリュームと当該リードコマンドで指定されている物理ボリュームが、前記プライマリ物理ボリューム、前記第1のセカンダリ物理ボリューム及び前記第2のセカンダリ物理ボリュームのいずれであっても、当該リードコマンドに従うリード対象のデータを前記プライマリ物理ボリュームから読み出す、
    ことを実行させ、
    前記第1のボリュームグループは、いずれもI/Oコマンドで指定され得る物理ボリュームであるプライマリ物理ボリュームと第1のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記第2のボリュームグループは、いずれもI/Oコマンドで指定され得る物理ボリュームである前記プライマリ物理ボリュームと第2のセカンダリ物理ボリュームとを含んだグループであって、当該グループにおける物理ボリューム間でデータが同期するグループであり、
    前記複数のストレージ装置は、前記第1のセカンダリ物理ボリュームを有するストレージ装置である第1のストレージ装置と、前記第2のセカンダリ物理ボリュームを有するストレージ装置である第2のストレージ装置と、前記プライマリ物理ボリュームを有するストレージ装置である第3のストレージ装置とを含む、
    コンピュータプログラム。
JP2018133731A 2018-07-13 2018-07-13 ストレージシステム Active JP6606235B1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018133731A JP6606235B1 (ja) 2018-07-13 2018-07-13 ストレージシステム
CN201910179163.3A CN110716882B (zh) 2018-07-13 2019-03-08 存储系统
US16/354,375 US10860235B2 (en) 2018-07-13 2019-03-15 Storage system having a plurality of storage apparatuses which migrate a first volume group to a second volume group

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018133731A JP6606235B1 (ja) 2018-07-13 2018-07-13 ストレージシステム

Publications (2)

Publication Number Publication Date
JP6606235B1 true JP6606235B1 (ja) 2019-11-13
JP2020013227A JP2020013227A (ja) 2020-01-23

Family

ID=68532217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018133731A Active JP6606235B1 (ja) 2018-07-13 2018-07-13 ストレージシステム

Country Status (3)

Country Link
US (1) US10860235B2 (ja)
JP (1) JP6606235B1 (ja)
CN (1) CN110716882B (ja)

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4500057B2 (ja) * 2004-01-13 2010-07-14 株式会社日立製作所 データ移行方法
JP2007272357A (ja) 2006-03-30 2007-10-18 Toshiba Corp ストレージクラスタシステム、データ処理方法、及びプログラム
JP4224077B2 (ja) * 2006-04-04 2009-02-12 株式会社東芝 ストレージシステム
US20090077097A1 (en) * 2007-04-16 2009-03-19 Attune Systems, Inc. File Aggregation in a Switched File System
JP5090941B2 (ja) * 2008-01-29 2012-12-05 株式会社日立製作所 ストレージサブシステム及びストレージシステム
CN102483683B (zh) * 2009-12-24 2014-12-10 株式会社日立制作所 提供虚拟卷的存储系统
US9229869B1 (en) * 2012-12-19 2016-01-05 Amazon Technologies, Inc. Multi-lock caches
WO2014174570A1 (ja) * 2013-04-22 2014-10-30 株式会社日立製作所 ストレージ管理計算機、ストレージ管理方法、およびストレージシステム
WO2015056301A1 (ja) * 2013-10-15 2015-04-23 株式会社日立製作所 ストレージシステム及びキャッシュ制御方法
WO2015162674A1 (ja) * 2014-04-21 2015-10-29 株式会社日立製作所 ストレージシステム
JP5718533B1 (ja) * 2014-04-22 2015-05-13 株式会社日立製作所 ストレージシステムのデータ移行方法
WO2016117040A1 (ja) * 2015-01-21 2016-07-28 株式会社日立製作所 計算機システム、計算機システムにおけるデータの移行方法
US10348836B2 (en) * 2017-02-22 2019-07-09 Microsoft Technology Licensing, Llc Migrating clients between servers

Also Published As

Publication number Publication date
JP2020013227A (ja) 2020-01-23
CN110716882B (zh) 2023-10-20
US20200019334A1 (en) 2020-01-16
US10860235B2 (en) 2020-12-08
CN110716882A (zh) 2020-01-21

Similar Documents

Publication Publication Date Title
US7702866B2 (en) Use of volume containers in replication and provisioning management
US10191685B2 (en) Storage system, storage device, and data transfer method
US20140143391A1 (en) Computer system and virtual server migration control method for computer system
WO2015114745A1 (ja) 計算機及び計算機のi/o制御方法
JP6234557B2 (ja) ストレージシステム
US9405484B2 (en) System of managing remote resources
JP7012010B2 (ja) 情報処理システム、及び、情報処理システムの制御方法
US10152270B2 (en) Storage system
JP4629413B2 (ja) 優先順位を割り当てるための方法、システム、およびプログラム
JP2007310448A (ja) 計算機システム、管理計算機、および、ストレージシステム管理方法
US10761767B2 (en) Computer system and method for controlling storage apparatus that has replication direction from first logical device (in first storage) to second logical device (in second storage) and from said second logical device to third logical device (in said second storage), wherein said replication direction is reversed when second computer takes over for first computer
US8819351B2 (en) Management of host passthrough and session commands using resource groups
JP5470594B2 (ja) 計算機システム及びストレージ・ボリューム管理方法
JP6606235B1 (ja) ストレージシステム
JP6643524B2 (ja) ストレージシステム及び記憶制御方法
WO2014087465A1 (ja) ストレージ装置及びストレージ装置移行方法
US9652165B2 (en) Storage device and data management method
JP6884165B2 (ja) 複数のストレージノードを含むストレージシステム
WO2016038722A1 (ja) ストレージシステム及びデータ書込み方法
WO2018011881A1 (ja) ストレージ装置及び計算機システム
WO2018016041A1 (ja) ストレージシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190130

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191017

R150 Certificate of patent or registration of utility model

Ref document number: 6606235

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150