JP6663478B2 - データ移行方法及び計算機システム - Google Patents

データ移行方法及び計算機システム Download PDF

Info

Publication number
JP6663478B2
JP6663478B2 JP2018501456A JP2018501456A JP6663478B2 JP 6663478 B2 JP6663478 B2 JP 6663478B2 JP 2018501456 A JP2018501456 A JP 2018501456A JP 2018501456 A JP2018501456 A JP 2018501456A JP 6663478 B2 JP6663478 B2 JP 6663478B2
Authority
JP
Japan
Prior art keywords
logical volume
migration
copy
virtual
instruction
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
JP2018501456A
Other languages
English (en)
Other versions
JPWO2017145272A1 (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 JPWO2017145272A1 publication Critical patent/JPWO2017145272A1/ja
Application granted granted Critical
Publication of JP6663478B2 publication Critical patent/JP6663478B2/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/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/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/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
    • 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]

Landscapes

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

Description

本発明は、概して、データ移行に関する。
一般に、計算機システムの構築のために、計算機システムの用途やシステム要件に合わせて、サーバ装置及びストレージ装置といったハードウェアが調達される。
計算機システムにおいて、データ移行が行われる。データ移行の目的の1つとして、ストレージ装置の移行がある。ストレージ装置の移行に、例えば特許文献1の技術を利用することが考えられる。特許文献1の技術によれば、異種ストレージが既設ストレージに接続され、異種ストレージのデータ管理情報が既設ストレージに設定される。この技術をストレージ装置の移行に利用すれば、移行先ストレージ装置に移行元ストレージ装置を接続することで、移行元ストレージ装置を長時間停止せずに移行を実現することが期待できる。
US6,721,841
近年、SDx(Software-defined xxx)、すなわち、計算機システムにおける対象(xxx)のソフトウェア化が採用されている。例えば、サーバを対象としたSDxは、SDC(Software-defined Computing)である。
ストレージを対象としたSDxは、SDS(Software-defined Storage)である。SDSは、仮想ストレージ、すなわち、ハードウェア非依存のストレージである。SDSは、物理装置又は仮想装置上で動作するソフトウェアの一例であってもよいし、仮想装置それ自体の一例であってもよい。「物理装置」は、物理プロセッサ及び物理メモリを含んだ複数の物理リソースを有する装置、例えば、汎用サーバのような物理計算機である。「仮想装置」は、複数の物理リソースに基づく複数の仮想リソース(例えば仮想プロセッサ及び仮想メモリ)を有する装置であり、例えば、LPAR(Logical Partition)又はVM(Virtual Machine)である。
ストレージ装置の移行と同様に、SDSの移行が行われることが考えられる。SDSの移行が行われる理由として、例えば、新しい機能を有するSDSへのリプレース、又は、SDSベンダの変更がある。
SDSの移行に特許文献1の技術を利用すれば、移行先SDSに移行元SDSを接続することで、移行元SDSを長時間停止せずに移行を実現することが期待できる。
しかし、ホストがデータを書き込む又は読み出すにあたり、データが移行元SDSを経由するため、移行後も移行元SDSを維持する必要があり、移行元SDSのための少なくとも1つのリソース(仮想リソース又は物理リソース)が必要とされたままとなってしまう。
更に、一般に、SDSには、仮想化されたリソースが割り当てられているため、リソースの確保及び解放のいずれについてもSDS自体では制御できないことが想定される。
第1論理ボリュームを提供する第1仮想ストレージの移行先である第2仮想ストレージに第2論理ボリュームを関連付けることの指示が送信される。第1仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージである。第1論理ボリュームとそれのコピー元論理ボリュームとのうちのいずれか一方から第2論理ボリュームにデータをコピーすることの指示であるコピー指示が送信される。第2論理ボリュームへのデータコピーの完了であるコピー完了が検出された場合に、第1仮想ストレージを消去することの指示である消去指示が、仮想管理部に送信される。
第1仮想ストレージに割り当てられていた仮想リソースを含む第1仮想ストレージ自体を解放することが可能となる。
実施例1の概略を示す。 実施例1に係る計算機システムの構成を示す。 移行管理テーブルの構成を示す。 コピー情報の構成を示す。 移行先SDS構築処理のシーケンス図である。 コピー準備処理のシーケンス図である。 アクセス先切替え処理のシーケンス図である。 実施例1に係る移行元SDS消去処理のシーケンス図である。 実施例2の概略を示す。 実施例2に係る並行リモートコピー処理のシーケンス図である。 実施例2に係る移行元SDS消去処理のシーケンス図である。 実施例3の概略を示す。 実施例3に係るPVOL更新状況通知処理のシーケンス図である。 実施例3に係る内部コピー処理のシーケンス図である。 実施例3に係る移行元SDS消去処理のシーケンス図である。
以下の説明では、「物理装置」は、物理プロセッサ及び物理メモリを含んだ複数の物理リソースを有する装置、例えば、汎用サーバのような物理計算機である。「仮想装置」は、複数の物理リソースに基づく複数の仮想リソース(例えば仮想プロセッサ及び仮想メモリ)を有する装置であり、例えば、LPAR(Logical Partition)又はVM(Virtual Machine)である。「プロセッサ」は、物理プロセッサ及び仮想プロセッサのうちの少なくとも1つを意味する。「メモリ」は、物理メモリ及び仮想メモリのうちの少なくとも1つを意味する。「インターフェース」は、物理インターフェース及び仮想インターフェースのうちの少なくとも1つを意味する。
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサによって実行されることで、定められた処理を、適宜にメモリ及びインターフェースのうちの少なくとも1つを用いながら行うため、処理の主語が、プロセッサ(或いは、プロセッサを有する物理装置又は仮想装置)とされてもよい。プログラムは、プログラムソースから計算機にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は計算機が読み取り可能な記録媒体であってもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
また、以下の説明では、「xxxテーブル」及び「xxxビットマップ」といった表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「xxxテーブル」及び「xxxビットマップ」をそれぞれ「xxx情報」と言うことができる。また、以下の説明において、テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部又は一部が1つのテーブルであってもよい(これは、ビットマップについても同様でよい)。
また、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号(又は参照符号における共通部分)を使用し、同種の要素を区別して説明する場合は、要素のID(又は要素の参照符号)を使用することがある。
また、以下の説明では、「VOL」は、論理ボリュームの略である。VOLは、1以上の物理記憶デバイス(又は1以上の仮想記憶デバイス)に基づく論理ボリュームであってもよいし、Thin Provisioningに従う仮想的な論理ボリュームであってもよい。
図1は、実施例1の概略を示す。
ステップ1の前の状態として、計算機システム100が、仮想管理部22、移行元SDS14、移行元VOL26S、管理VM(Virtual Machine)18及びホスト10を有する。仮想管理部22は、仮想化されたリソースを提供する仮想化プログラム(例えばハイパバイザ)である。具体的には、例えば、仮想管理部22は、物理的なサーバを仮想的にみせる基盤であり、一例として、クラウド基盤である。仮想管理部22は、仮想化されたリソースの他に、仮想化されたリソースが割り当てられた装置を提供することもできる。移行元SDS14、管理VM18及びホスト10の各々は、仮想管理部22により作成されたVMである。VMは、仮想装置の一例である。管理VM18に、移行マネージャ20がインストールされている。移行元SDS14は、第1の仮想ストレージの一例である。移行元VOL26Sは、第1の論理ボリュームの一例である。なお、仮想管理部22は、上述したような仮想化プログラムを実行する物理プロセッサでもよいし(具体的には、物理プロセッサが仮想化プログラムを実行することで実現されてもよいし)、仮想化プログラムが保持されるメモリと仮想化プログラムを実行する物理プロセッサとを含んだ装置(例えばモジュール)でもよい。
移行元VOL26Sが移行元SDS14に関連付けられている(例えばマウントされている)。移行元VOL26Sは移行元SDS14によりホスト10に提供されている。移行元SDS14は、移行元VOL26SのID(識別情報)を指定したI/O(Input/Output)要求をホスト10から受信した場合、受信したI/O要求に従うI/Oを移行元VOL26Sに対して実行する(すなわち、移行元VOL26Sからのデータの読出し、又は、移行元VOL26Sへのデータの書込みを実行する)。移行元VOL26SのIDは、例えば、移行元VOL26Sのボリューム番号(例えばLUN(Logical Unit Number))を含む。
<ステップ1>
移行マネージャ20が、仮想管理部22に、移行先SDS16の作成指示を送信する。その作成指示に応答して、仮想管理部22により、移行先SDS16が、移行元SDS14が存在する計算機システム100に構築される。本実施例では、SDS移行の理由がSDSベンダの変更であり、故に、移行元SDS14のベンダと移行先SDS16のベンダは異なる。しかし、それらのベンダは同一ベンダでもよい。移行先SDS16の構築において、移行先SDS16には、移行先VOL26Dが関連付けられる。なお、移行先SDS16が、第2の仮想ストレージの一例である。移行先VOL26Dが、第2の論理ボリュームの一例である。また、この段階では、移行元VOL26SのIDを指定したI/O要求に従うI/Oは、移行元SDS14経由で移行元VOL26Sに対して行われる。
<ステップ2>
移行マネージャ20は、移行先SDS16と移行元SDS14へ、移行先SDS16から移行元SDS14へアクセスできるよう指示を出す。これにより、移行先VOL26Dには、移行元VOL26SのIDを含んだ情報であるターゲット情報が関連付けられる。すなわち、移行元VOL26Sが、ストレージ仮想化技術に従い、移行元SDS14経由に移行先SDS16にマッピングされる(関連付けられる)。以下、VOLがストレージ経由で別のストレージに関連付けられることを、便宜上、「外部接続」と言うことがある。
外部接続の完了後、移行マネージャ20は、ホスト10へ、アクセス先を移行元SDS14から移行先SDS16へ変更するよう指示する。これにより、移行元VOL26SのIDを指定したI/O要求は、移行先SDS16が受信することになる。移行先SDS16は、そのようなI/O要求を受信した場合、移行元VOL26Dに対して実行する。
その後、移行マネージャ20は、移行元SDS14及び移行先SDS16のうちの少なくとも1つに、移行元VOL26Sのデータを移行先VOL26Dにコピーすることのコピー指示を送信する。そのコピー指示に応答して、移行元VOL26Sに格納されているデータが、移行元SDS14及び移行先SDS16を経由して、移行先VOL26Dにコピーされる。つまり、移行元VOLS26Sから移行先VOL26Dへのデータコピーが行われる。なお、このコピー中であっても、移行先SDS16は、移行元VOL26SのIDを指定したI/O要求をホスト10から受け付け、受信したI/O要求に従うI/Oを、移行元VOL26Dに対して実行できる。移行元VOL26Sにおける未コピー領域(コピー済みではない領域)に新たにデータが書き込まれた場合、先行して移行元VOL26Sから移行先VOL26Dに当該データがコピーされた上、ホスト10から受信した新たなデータが移行先VOL26Dへ書き込まれる。なお、図1において、グレーのブロックは、データを表している。図1のステップ2のブロック図は、移行元VOL26Sにおけるデータの一部が移行先VOL26Dにコピーされたことを意味している。
<ステップ3>
コピー完了が検出される。ここで言う「コピー完了」は、移行元VOL26Sの内容と移行先VOL26Dの内容に差分が無くなったこと、言い換えれば、移行元VOL26Sの内容と移行先VOL26Dの内容が一致したことであってよい。具体的には、例えば、移行マネージャ20は、移行元SDS14及び移行先SDS16のうちの少なくとも1つから、コピー完了の通知を受信する。より具体的には、例えば、移行マネージャ20は、移行元SDS14及び移行先SDS16のうちの少なくとも1つに、データコピーの進捗の問合せを送信し、その問合せに対する応答を、移行元SDS14及び移行先SDS16のうちの少なくとも1つ(その問合せの送信先)から受信し、受信した応答を基に、コピー完了を検出する。コピー完了が検出された場合、移行マネージャ20が、移行元SDS14及び移行元VOL26Sを消去する指示である消去指示を仮想管理部22に送信する。消去指示に応答して、仮想管理部22により、移行元SDS14及び移行元VOL26Sが消去される。仮想管理部22は、移行元SDS14に割り当てられている全ての仮想リソースを移行元SDS14から解放してから移行元SDS14を消去してもよいし、移行元SDS14の消去の結果として、移行元SDS14に割り当てられている全ての仮想リソースが解放されてもよい。
本実施例によれば、移行先VOL26Dが移行先SDS16に関連付けられ、移行元VOL26Sから移行先VOL26Dへのコピーが完了した場合、移行元SDS14及び移行元VOL26Sを、維持する必要が無いSDS及びVOLと位置づけることができる。このため、移行元SDS14及び移行元VOL26Sを消去できる。これにより、リソースとコストのうちの少なくとも1つの低減が期待できる。なお、少なくとも移行元SDS14が消去されればよいが、移行元VOL26Sも消去することで、一層の低減が期待できる。
また、本実施例によれば、移行マネージャ20が移行処理を一括管理することができ、移行元SDS14を長時間停止することなく最終的に移行元SDS14を消去することができる。そのため、SDS移行が容易となり、且つ、SDS運用コストを低減することが期待できる。
なお、本実施例では、外部接続が採用されているが、外部接続の採用は必須ではない。外部接続とは異なる技術を採用することでも、ホスト10からI/O要求を受け付けることを止めずに移行元VOL26Sのデータをコピーすること(2重化すること)を実現することができる。
また、本実施例では、ホスト10のアクセス先VOLの切り替えは、コピー開始前(コピー指示送信前)に行われるが、コピー中に行われてもよいし、コピー完了後に行われてもよい。外部接続が採用された場合、アクセス先VOLの切り替えは、上述したように、コピー開始前に行われる。
以下、本実施例を詳細に説明する。
図2は、計算機システム100の構成を示す。
計算機システム100は、物理リソース群200を有し、仮想管理部22を実行する。仮想管理部22により、物理リソース群200の少なくとも一部が仮想化された複数のリソースである仮想リソース群210が管理される。仮想リソース群210の少なくとも一部が割り当てられたVMが仮想管理部22により作成される。
本実施例において、「リソース」とは、物理リソースと仮想リソースの総称である。物理リソース群200は、複数種類の物理リソースを含んだ複数の物理リソースである。物理リソースとしては、例えば、物理プロセッサ(例えばCPU(Central Processing Unit))148、物理メモリ146、物理記憶デバイス126及び物理インターフェース(図示せず)のうちの少なくとも1つがある。仮想リソース群210は、複数種類の仮想リソースを含んだ複数の仮想リソースである。仮想リソースとしては、例えば、仮想プロセッサ48、仮想メモリ46、VOL26、仮想インターフェース(図示せず)及び仮想ネットワーク36のうちの少なくとも1つがある。仮想リソースは、仮想リソースの種類と同種の物理リソースに基づいていてもよいし、仮想リソースの種類とは異なる種類の物理リソースに基づいていてもよい。
少なくとも1つの物理プロセッサが、仮想管理部22を実行する。仮想管理部22は、仮想化プログラムの一例であり、例えばハイパバイザである。仮想管理部22は、VMを作成したり消去したりすることができる。各VMは、1以上の仮想プロセッサ48と、1以上の仮想メモリ46と、1以上の仮想インターフェース(図示せず)とが搭載され、且つ、1以上のVOL46がマウントされる。例えば、仮想インターフェースは、仮想ネットワーク36を通信した通信のためのインターフェースである。また、各VMは、ゲストOS(Operating System)50を実行する。
本実施例では、ホスト10、管理VM18、移行元SDS14及び移行先SDS16が、仮想管理部22により作成され管理されるVMである。ホスト10及び管理VM18は、計算機システム100に接続された物理装置であってもよいし、計算機システム100に接続された計算機システム(図示せず)における仮想装置であってもよい。また、移行先SDS16は、計算機システム100に接続された計算機システム(図示せず)に構築されてもよい。
移行元SDS14には、仮想プロセッサ48S、仮想メモリ46S及びゲストOS50S等があり、ストレージ制御プログラム(以下、移行元プログラム)51Sがインストールされる。移行元プログラム51Sは、移行元SDS14の動作を制御する。例えば、ホスト10からのI/O要求に従い、移行元VOL26Sに対するI/Oを行う。ゲストOS50S及び移行元プログラム51Sは、仮想プロセッサ48Sにより実行される。移行元SDS14には、移行元VOL26Sがマウントされる。
移行先SDS16には、仮想プロセッサ48D、仮想メモリ46D及びゲストOS50D等があり、ストレージ制御プログラム(以下、移行先プログラム)51Dがインストールされる。移行先プログラム51Dは、移行元VOL26Sから移行先VOL26Dへのデータコピー進捗状況を管理するためのコピー情報47を論理的に保持している。コピー情報47は、仮想メモリ46Dに格納されている。ゲストOS50D及び移行先プログラム51Dは、仮想プロセッサ48Dにより実行される。移行先SDS16には、移行先VOL26Dがマウントされる。コピー情報47は、管理VM18の移行マネージャ20が保持してもよい。
移行先SDS16は、移行元SDS14と同じアーキテクチャでよい。また、移行先SDS16の仮想リソースの量は、移行元SDS14の仮想リソースの量と同じでも違っていてもよい。また、移行先プログラム51Dは、移行元プログラム51Sに無い新規の機能を有していてもよいし、移行元プログラム51Sが有する機能のうちの一部の機能(例えば必要性の低い機能)を有していなくてもよい。また、移行先SDS16に関連付けられる移行先VOL26Dの容量は、移行元VOL26Sの容量と同じであるが、それらの容量は異なっていてもよい。
ホスト106には、仮想プロセッサ48H、仮想メモリ46H及びゲストOS50H等があり、VOL26Hがマウントされる。
管理VM18には、仮想プロセッサ48M、仮想メモリ46M及びゲストOS50M等があり、移行マネージャ20がインストールされる。移行マネージャ20は、移行マネージャ20の通信相手となり得るモジュールのアドレスが記録された移行管理テーブル45を論理的に保持する。移行管理テーブル45は、仮想メモリ46Mに格納される。管理VM18には、VOL26Mがマウントされる。
管理VM18、ホスト10、移行元SDS14、移行先SDS16及び仮想管理部22は、仮想ネットワーク36Aに接続されている。仮想ネットワーク36Aを介して、通信が行われる。VM同士の通信は、仮想ネットワーク36A経由で行われる。VM同士の通信に、仮想管理部22が更に経由してもよい。
図3は、移行管理テーブル45の構成を示す。
移行管理テーブル45は、仮想管理部22のアドレス、移行先SDS16のアドレス、移行元SDS14のアドレス、ホスト10のアドレス、及び、メイン移行マネージャのアドレスを保持する。不必要なアドレスの値は、無効な値(例えば“null”)となっている。本実施例では、メイン移行マネージャは、存在しないため、メイン移行マネージャのアドレスの値は“null”である(メイン移行マネージャについては、実施例2及び3で述べる)。
移行マネージャ20は、指示先のアドレスを移行管理テーブル45から特定し、特定したアドレスを用いて指示を、仮想ネットワーク36Aを介して、指示先に出す。移行管理テーブル45に記録されているアドレスは、仮想ネットワーク36A上でのアドレスであり、例えば、仮想ネットワークススイッチのポートの番号でもよい。
図4は、コピー情報47の構成を示す。
コピー情報47は、コピー進捗率情報61とコピー進捗ビットマップ62とを含む。
コピー進捗率情報61は、移行元VOL26Sから移行先VOL26Dへのコピーの進捗率を表す。コピー進捗率“100%”が、コピー完了を意味する。コピー進捗率が、移行先プログラム51Dにより、コピーの進捗に応じて更新される。
コピー進捗ビットマップ62は、移行先VOL26Dを構成する複数のVOL領域にそれぞれ対応した複数のビットを有する。ビットに対応するVOL領域に対して、未だコピーが済んでいなければ、ビットは“0”である。一方、ビットに対応するVOL領域に対して、コピーが済んだならば、ビットは“1”である。
移行元VOL26Sから移行先VOL26Dへのコピーは、VOL領域毎に行われてよい。VOL領域についてコピーが済む都度に、移行先プログラム51Dにより、ビットが“0”から“1”に更新される。移行先プログラム51Dは、コピー進捗ビットマップ62を基に、コピー進捗率を算出し、コピー進捗率情報61を更新する。なお、上述したように、コピー情報47は、管理VM18の移行マネージャ20が保持してもよく、その場合、移行マネージャ20が、データコピーの進捗の問合せに対する応答に基づき、コピー進捗率情報61を更新する。
図5は、移行先SDS構築処理のシーケンス図である。図5の処理は、図1のステップ1の詳細に対応する。
ステップ74: 移行マネージャ20は、ユーザ(例えば管理者)からの入力(例えば、移行先SDS16の作成の指示)、又は、移行開始時刻の検知等により、開始する(例えば、必要に応じて、移行管理テーブル45を更新する)。ステップ76へ進む。
ステップ76: 移行マネージャ20は、仮想管理部22に、新規VM(移行先SDS16用のVM)62を作成することの作成指示を送信する。その際、移行マネージャ20は、移行元SDS14の構成情報及び利用状況のうちの少なくとも1つを基に、移行先スペックを決定し、決定した移行先スペックを表す情報が、仮想管理部22への作成指示に含まれてもよい。「移行先スペック」とは、移行先SDSのスペックであり、例えば、移行先VOL26Dの容量と、新規VM62に割り当てられる仮想リソースの構成及び量とのうちの少なくとも1つでよい。移行元SDS14の構成情報及び利用状況のうちの少なくとも1つは、例えば、移行マネージャ20が移行元SDS14から取得してもよい。ステップ77へ進む。
ステップ77: 仮想管理部22は、移行マネージャ20からの作成指示に応答して、新規VM62を作成する。この段階で、例えば、新規VM62に、仮想プロセッサ及び仮想メモリ等を含んだ仮想リソースの少なくとも1つが割り当てられてよい。また、この段階で、新規VM62に、ゲストOSがロードされてもよい。ステップ78へ進む。
ステップ78: 次に、仮想管理部22は、新規VM62に移行先VOL26Dを関連付ける。移行元VOL26Sの容量は、例えば、作成指示に含まれている移行先スペックに従う容量である。移行元VOL26Sの容量は、上述したように移行元VOL26Sの容量と同じであるが、移行元SDS14以上の性能になるような容量とされてもよいし、移行元VOL26Sの使用量に応じた容量とされてもよい。ステップ79へ進む。
ステップ79: 仮想管理部22は、新規VM62に仮想ネットワークを割り当てる。仮想ネットワークは、例えば、移行元SDS14、ホスト10及び管理VM18へアクセスできるよう、同じサブネットマスクの仮想ネットワークスイッチでよい。その後、仮想管理部22は、作成指示に対する応答として、処理完了を、移行マネージャ20へ通知する。ステップ80へ進む。
ステップ80: 移行マネージャ20は、新規VM62に、移行先プログラム51Dをインストールすることのインストール指示を送信する。インストール指示が、移行先プログラム51Dを含んでもよいし、移行先プログラム51Dのダウンロード元へのリンク(例えばURL)を含んでいてもよい。移行先プログラム51Dは、上述したように、移行元プログラム51Sと同一でなくてもよい。ステップ82へ進む。
ステップ82: 新規VM62(例えばゲストOS)は、インストール指示に応答して、移行先プログラム51Dをインストールする。移行先プログラム51Dがインストールされ移行先VOL26Dが関連付けられている新規VM62が、移行先SDS16となる。新規VM62が、インストール指示に対する応答として、処理完了を、移行マネージャ20へ通知する。移行マネージャ20がこの処理完了を受けた場合に、図6のフローが開始される。
図6は、コピー準備処理のシーケンス図である。図6の処理は、図1のステップ2の一部の詳細に対応する。
ステップ98: 移行マネージャ20が、移行元SDS14へ、移行先SDS16から移行元VOL26Sへのアクセスを許可する指示である許可指示を送信する。ステップ100に進む。
ステップ100: 移行元SDS14(移行元プログラム51S)は、許可指示に応答して、移行元VOL26Sの識別情報と移行元VOL26Sが属する仮想ポートの識別情報とを含んだターゲット情報を設定する。仮想ネットワークのプロトコルは、FC(Fiber Channel)でもよいし、iSCSI等でもよい。その後、移行元SDS14は、許可指示に対する応答として、処理完了を、移行マネージャ20へ通知する。ステップ102へ進む。処理完了は、設定されたターゲット情報を含む。
ステップ102: 移行マネージャ20が、移行先SDS16へ、移行元VOL26Sを移行元SDS14経由で移行先SDS16に関連付ける指示である外部接続指示を送信する。ステップ104へ進む。外部接続指示は、処理完了が含んでいたターゲット情報を含む。
ステップ104: 移行先SDS16(移行先プログラム51D)は、外部接続指示に応答して、移行元SDS14のターゲット情報を登録することで移行元VOL26Sを認識する。つまり、移行元VOL26Sが、移行先SDS16に関連付けられる。移行元SDS14が移行元VOL26Sを認識できない場合、移行先SDS16は、移行先SDS16のポートをポーリングしてもよいし、移行先SDS16のゲストOSを再起動してもよい。移行先プログラム51Dが移行元VOL26Sを認識する方法として、例えば特許文献1に記載の方法が採用されてもよい。その後、移行先SDS16が、外部接続指示に対する応答として、処理完了を、移行マネージャ20に通知する。ステップ108へ進む。
ステップ108: 移行マネージャ20が、移行先SDS16へ、移行元VOL26Sから移行先VOL26Dへのコピーを準備する指示である準備指示を送信する。ステップ110へ進む。
ステップ110: 移行先SDS16は、準備指示に応答して、コピー情報47を作成する。この段階では、コピー情報47において、コピー進捗率情報61は、コピー進捗率「0%」を表しており、コピー進捗ビットマップ62を構成する全てのビットは“0”である。その後、移行先SDS16は、準備指示に対する応答として、処理完了を、移行マネージャ20へ通知する。ステップ114へ進む。
ステップ114: 移行マネージャ20は、定期的に又は不定期的に、移行先SDS16に、コピー進捗率の問合せを送信し、その問合せに対する応答として、コピー進捗率の回答を受信する。このステップ114の処理と並行して、図7のステップ124の処理が実施される。なお、移行先SDS16は、移行マネージャ20からの問合せを受けることなしに定期的に又は不定期的にコピー進捗率を移行マネージャ20に通知してもよいし、コピー進捗率が“100%”になったとことを検出したときにコピー完了を移行マネージャ20に通知してもよい。いずれにしても、移行マネージャ20は、移行先SDS16からの情報から、コピー完了の有無がわかる。
図7は、アクセス先切替え処理のシーケンス図である。図7の処理は、ステップ110の完了後にステップ114と並行に実施されてもよい。また、図7の処理は、図1のステップ2の別の一部に対応する。
ステップ124: 移行マネージャ20が、ホスト10へ、移行先SDS16のアドレス(仮想ネットワーク上のアドレス)の通知を送信する。ステップ126へ進む。
ステップ126: ホスト10は、アドレスの通知に応答して、アクセス先のアドレスを、移行元SDS14のアドレスから移行先SDS16のアドレスへ切り替える。切り替えは、手動により行われてもよいし、ホスト10で実行されるサーバエージェントにより行われてもよい。その後、アドレスの通知に対する応答として、ホスト10が、処理完了を、移行マネージャ20に通知する。ステップ127へ進む。
ステップ127: 移行マネージャ20は、移行先SDS16へ、VOL移行指示を送信する。VOL移行指示では、例えば、移行元情報(移行元VOL26Sの識別情報を含んだ情報)と移行先情報(移行先VOL26Dの識別情報を含んだ情報)とが指定されている。移行先SDS16は、VOL移行指示に応答して、移行元VOL26Sから移行先VOL26Dへのコピーを実施する。コピーの進捗に応じて、移行先SDS16によりコピー情報47が更新される。例えば、ホスト10から移行先VOL26Dに新たにデータが書き込まれたとする。データの書込み先のVOL領域のコピー先のVOL領域に対応したビットが、“0”の場合、データ書き込みの前に当該データが移行元VOL26Sから移行先VOL26Dへコピーされた上でデータ書き込みが実施され、ビットが“1”へ更新される。データの書込み先のVOL領域のコピー先のVOL領域に対応したビットが、“1”の場合、データ書き込みが実施される。全てのビットが“1”になるまで、データコピーは継続する。
図8は、移行元SDS消去処理のシーケンス図である。図8の処理は、図1のステップ3に対応する。
ステップ138: 移行マネージャ20が、定期的に又は不定期的に、コピー進捗率の問合せを移行先SDS16に送信し、その問合せに対する回答を移行先SDS16から受信する。受信した回答が表すコピー進捗率が“100%”でなければ、移行マネージャ20は、例えば一定時間後に再度、コピー進捗率の問合せを移行先SDS16に送信する。受信した回答が表すコピー進捗率が“100%”であれば、コピー完了が検出されたことに相当する。ステップ140へ進む。なお、コピー完了が検出された場合(例えば、コピー進捗率“100%”を回答して移行マネージャ20から確認を受信した場合)、移行先SDS16は、コピー進捗率情報61が表すコピー進捗率を、“100%”から“null”に更新する。
ステップ140: 移行マネージャ20が、仮想管理部22へ、移行元SDS14及び移行元VOL26Sの消去指示を送信する。ステップ142へ進む。
ステップ142: 仮想管理部22は、消去指示に応答して、移行元SDS14及び移行元VOL26Sを消去する。消去することで、移行元SDS14に対し割り当てられていた仮想メモリ等の仮想リソースが解放され(他のVMに割当て可能な状態となり)、且つ、仮想管理部22の管理対象から、仮想装置(移行元SDS14としてのVM)も解放される。よって、移行元SDS14自体が仮想管理部22の管理対象から解放されることで、管理VM18の管理対象から、移行元SDS14としてのVMも削除される。仮想管理部22は、消去指示に対する応答として、処理完了を移行マネージャ20へ通知する。ステップ144へ進む。
ステップ144: 移行マネージャ20は、処理を終了する。
SDSは、仮想化されたリソースが割り当てられるVMの一例である。SDS自体では、リソースの確保及び解放のいずれもできない。しかし、本実施例によれば、仮想リソースを提供したりVMの生成及び消去を制御したりする仮想管理部22が解釈可能な指示を送信する移行マネージャ20が別途設けられる。移行マネージャ20と仮想管理部22との連携(移行マネージャ20からの指示とその指示に応答しての仮想管理部22の動作)により、移行先VOL26Dが移行先SDS16に関連付けられ、移行元VOL26Sのデータが移行先VOL26Dにコピーされ、そのコピーの完了の検出後に、移行元SDS14に割り当てられていた仮想リソースを含む移行元SDS自体を解放することが可能となる。これにより、リソースの利用効率が向上し、又、仮想リソースやSDS管理にかかるコストの低減を図ることが可能となる。
実施例2を説明する。実施例1との相違点を主に説明し、実施例1との共通点については説明を省略又は簡略する。
図9は、実施例2の概略を示す。
メインサイト900Mにおける計算機システム100Mが、移行元ストレージ152を含む。バックアップ元であるPVOL154が移行元ストレージ152にマウントされている。移行元ストレージ152は、SDSであってもよいし、物理装置の一例であってもよい。移行元ストレージ152及び後述の移行先ストレージ150のうちの少なくとも1つから構成されるシステムを以下「メインストレージ」と総称する。「PVOL」は、プライマリVOLの略であり、第1の論理ボリュームのコピー元論理ボリュームの一例である。ホスト901がメインサイト900Mに存在する。
リモートサイト900Rにおける計算機システム100Rが、仮想管理部22を有する。仮想管理部22上に、移行元SDS14があり、バックアップ先であるSVOL26Sがマウントされている。SVOL26Sは、セカンダリVOLの略であり、第1の論理ボリュームの一例であり、上述の移行元VOLに相当する。PVOL154とSVOL26Sのペアが構成されている。
PVOL154からSVOL26Sへ、データがリモートコピー(バックアップコピー)されている。PVOL154とSVOL26Sのペアは、同期ペアであっても非同期ペアであってもよい。
「同期ペア」とは、ホスト901からのI/O要求に従いPVOL154に新たに書き込まれたデータ(この段落において「データX」)がSVOL26Sにコピーされた場合にそのI/O要求の応答がホスト901に返るペアである。「PVOL154にデータXが書き込まれた」とは、実際にPVOL154にデータXが書き込まれたことであるが、メインストレージのキャッシュメモリにデータXが書き込まれたことであってもよい。また、「SVOL26SにデータXがコピーされた」とは、実際にSVOL26SにデータXが書き込まれたことであるが、移行元SDS14のキャッシュメモリ(仮想メモリ46Sのうちの少なくとも一部の領域)にデータXが書き込まれたことであってもよい。一方、「非同期ペア」とは、ホスト901からのI/O要求に従いPVOL154に新たにデータXが書き込まれたときにそのI/O要求の応答がホスト901に返るペアである(データXのSVOL26Sへのコピーは応答が返った後に行われてよい)。
実施例2では、リモートサイト900Rにおいて移行元SDS14から移行先SDS16へ移行することに加えて、メインサイト900Mにおいて移行元ストレージ152から移行先ストレージ150へ移行することが行われる。PVOL154は、移行元ストレージ152経由に移行先ストレージ150に関連付けられる。このため、移行先ストレージ150が、ネットワーク(例えばLAN(Local Area Network))912を介して、PVOL154の識別情報を指定したI/O要求を受信した場合、そのI/O要求に従うI/Oは、移行先ストレージ150及び移行元ストレージ152経由で実行される。ネットワーク912は、物理的な通信ネットワークであっても仮想ネットワークであってもよい。
メインストレージは、管理サーバ18Mで実行されるメイン移行マネージャ20Mが管理する。管理サーバ18Mは、物理装置の一例であってもよいし仮想装置の一例であってもよい。メイン移行マネージャ20Mは、メインストレージを管理するコンピュータプログラムである。
リモートサイト900Rには、管理VM18Rがある。管理VM18Rで実行される移行マネージャを、「リモート移行マネージャ」と呼ぶ。リモート移行マネージャ20Rが、仮想管理部22に指示を出して、移行先SDS16を作成する。移行先SDS16には、移行先SVOL26Dが関連付けられている。移行先SVOL26Dは、第2の論理ボリュームの一例であり、SVOL26Sの移行先であり、上述の移行先VOLに相当する。
計算機システム100Mは、仮想管理部を含んでもよく、ホスト901、ネットワーク912、移行元ストレージ152、移行先ストレージ150152及び管理サーバ18Mのうちの少なくとも1つが仮想管理部により生成又は管理される仮想的なエレメントでもよい。
図示しないが、計算機システム100M及び100R間は、ネットワーク(以下、システム間ネットワーク)を介して接続されている。システム間ネットワーク(例えば、LAN又はWAN(Wide Area Network))経由でリモートコピーが行われる。なお、PVOL154からSVOL26Sへのリモートコピーは、移行元ストレージ152及び移行元SDS14の各々の移行前は、移行元ストレージ152、システム間ネットワーク(図示せず)及び移行元SDS14経由で行われる。
<ステップ1>
リモートサイト900Rにおいて、リモート移行マネージャ20Rからの指示に応答して、移行先SDS16が作成される。メインサイト900Mでは、PVOL154が、移行元ストレージ152経由に移行先ストレージ150に関連付けられる(POVL154の外部接続)。PVOL154からSVOL26Sへのリモートコピー(データバックアップ)と並行に、PVOL154から移行先SVOL26Dへリモートコピー(並行データバックアップ)を実施するよう、メイン移行マネージャ20Mが移行先ストレージ150へ指示する。この指示に応答して、並行リモートコピー(並行データバックアップ)が実施される。なお、PVOL154と移行先SVOL26Dとがペアにされていてもよい。つまり、PVOL154とSVOL26Sとのペアに加えて、PVOL154と移行先SVOL26Dとのペアがあってもよい。
PVOL154及び移行元SVOL26Sの各々の外部接続後、PVOL154からSVOL26Sへのリモートコピーは、移行元ストレージ152、システム間ネットワーク(図示せず)、移行元SDS14経由で行われる。PVOL154から移行先SVOL26Dへの並行リモートコピーは、移行元ストレージ152、移行先ストレージ150、システム間ネットワーク(図示せず)及び移行先SDS16経由で行われる。
<ステップ2>
並行リモートコピーの完了が検出された場合、メイン移行マネージャ20Mは、移行元ストレージ152に対し、PVOL154とSVOL26Sとのペアを分割する指示であるペア分割指示を送信する。リモート移行マネージャ20Rは、仮想管理部22に対し、移行元SDS14及びSVOL26Sの消去指示を送信する。その消去指示に応答して、仮想管理部22により、移行元SDS14及びSVOL26Sが消去される。
実施例2によれば、リモートコピー(データバックアップ)導入時にも、移行元SDS14及び移行元SVOL26Sを消去することで、リソース及びコストのうちの少なくとも1つを低減することが期待できる。また、PVOL154からSVOL26Sへのリモートコピーを止めずにSDS移行を実施できるため、PVOL154とSVOL26Sのペアが同期ペアか非同期ペアかに関わらず、リモートサイト900RでのSDS移行を実行することが可能である。本実施例では、例えば、移行元SDS14のベンダと移行先SDS16のベンダが違っており、且つ、移行先ストレージ150のベンダと移行先SDS16のベンダが同じである。
実施例2で行われる処理は、図5の処理の全部と、図6の処理の一部(ステップ98〜ステップ104まで)と、並行リモートコピーと、移行元SDS14及びSVOL26Sの消去とが行われる。実施例2では、SVOL26Sが、移行先SDS16に関連付けられてもよい。しかし、その場合でも、少なくとも並行リモートコピーが完了するまでは、PVOL154からSVOL26Sへのリモートコピー継続のために(更に、例えば、ホスト901からのI/O要求受け付けを停止することなく)、移行元SDS14は必要である。
図10は、実施例2に係る並行リモートコピー処理のシーケンス図である。
ステップ176: メイン移行マネージャ20Mが、移行先ストレージ150へ並行リモートコピー指示を送信する。並行リモートコピー指示は、PVOL154から移行先SVOL26Dへの並行リモートコピー(PVOL154からSVOL26Sへのリモートコピーと並行して行うリモートコピー)を開始する指示である。ステップ178へ進む。
ステップ178: 移行先ストレージ150は、並行リモートコピー開始指示に応答して、並行リモートコピーを開始し、そのコピーの進捗に応じてコピー情報47を更新する。実施例2では、移行先ストレージ150及び移行先SDS16のうちの少なくとも1つ、例えば、移行先ストレージ150が、コピー情報を保持し且つ更新する。もしくは、メイン移行マネージャ20M及びリモート移行マネージャ20Rのうちの少なくとも1つが、コピー情報を保持し且つ更新してもよい。コピー情報は、PVOL154からSVOL26Sへの第1のリモートコピーに関する第1のコピー情報と、PVOL154から移行先SVOL26Dへの第2のリモートコピー(並行リモートコピー)に関する第2のコピー情報とのうちの、少なくとも第2のコピー情報を含んでよい。第1及び第2のコピー情報の各々の構成は、上述のコピー情報47の構成と同じでよい。すなわち、第1のコピー情報は、第1のリモートコピーに関する進捗率である第1のコピー進捗率を表す第1のコピー進捗率情報と、PVOL154とSVOL26Sとの間の差分を表すビットマップである第1のコピー進捗ビットマップとを含んでよい。第2のコピー情報は、第2のリモートコピーの進捗率である第2のコピー進捗率を表す第2のコピー進捗率情報と、PVOL154と移行先SVOL26Dとの間の差分を表すビットマップである第2のコピー進捗ビットマップとを含んでよい。第1のコピー進捗ビットマップの全ビットが“1”であれば、第1のコピー進捗率は“100%”である。同様に、第2のコピー進捗ビットマップの全ビットが“1”であれば、第2のコピー進捗率は“100%”である。並行リモートコピー開始指示に対する応答として、移行先ストレージ150が、処理完了を、メイン移行マネージャ20Mに通知する。ステップ180へ進む。
ステップ180: メイン移行マネージャ20Mが、定期的に又は不定期的に、移行先ストレージ150に、第1及び第2のコピー進捗率のうちの少なくとも第2のコピー進捗率の問合せを送信し、その問合せに対する応答として、第2のコピー進捗率の回答を受信する。なお、移行先ストレージ150は、メイン移行マネージャ20Mからの問合せを受けることなしに定期的に又は不定期的に少なくとも第2のコピー進捗率をメイン移行マネージャ20Mに通知してもよいし、第2のコピー進捗率が“100%”になったとことを検出したときに並行リモートコピーの完了をメイン移行マネージャ20Mに通知してもよい。いずれにしても、メイン移行マネージャ20Mは、移行先ストレージ150からの情報から、並行リモートコピーの完了の有無がわかる。
図11は、実施例2に係る移行元SDS消去処理のシーケンス図である。
ステップ202: メイン移行マネージャ20Mが、定期的に又は不定期的に、第2のコピー進捗率の問合せを移行先ストレージ150に送信し、その問合せに対する回答を移行先ストレージ150から受信する。受信した回答が表す第2のコピー進捗率が“100%”でなければ、メイン移行マネージャ20Mは、例えば一定時間後に再度、第2のコピー進捗率の問合せを移行先ストレージ150に送信する。受信した回答が表す第2のコピー進捗率が“100%”であれば、並行リモートコピー完了が検出されたことに相当する。ステップ204へ進む。なお、並行リモートコピー完了が検出された場合(例えば、第2のコピー進捗率“100%”を回答してメイン移行マネージャ20Mから確認を受信した場合)、移行先ストレージ150は、第2のコピー進捗率情報が表す第2のコピー進捗率を、“100%”から“null”に更新する。
ステップ204: メイン移行マネージャ20Mが、移行元ストレージ152及び移行先ストレージ150のうちの少なくとも1つへ、PVOL154とSVOL26Sとのペアを分割する指示であるペア分割指示を送信する。本実施例では、ペア分割指示は移行元ストレージ152に送信される。ステップ206へ進む。
ステップ206: 移行元ストレージ152は、ペア分割指示に応答して、PVOL154とSVOL26Sとのペアを分割する。これにより、第1のリモートコピーが停止する。すなわち、PVOL154とSVOL26S間に差分があっても、PVOL154からSVOL26Sへのリモートコピーが行われない。移行元ストレージ152が、ペア分割指示に対する応答として、処理完了を、メイン移行マネージャ20Mに通知する。ステップ208へ進む。
ステップ208: メイン移行マネージャ20Mが、リモート移行マネージャ20Rへ、メインサイト処理完了を通知する。ステップ210へ進む。その後、ステップ214へ進み、メイン移行マネージャ20Mは処理を終了する(ステップ214)。
ステップ211: リモート移行マネージャ20Rが、メインサイト処理完了の通知に応答して、仮想管理部22へ、移行元SDS14及びSVOL26Sの消去指示を送信する。つまり、メインサイト処理完了の通知の受信が、リモート移行マネージャ20Rにとって、並行リモートコピー完了の検出である。ステップ212へ進む。
ステップ212: 仮想管理部22が、消去指示に応答して、移行元SDS14及びSVOL26Sを消去する。仮想管理部22は、消去指示に対する応答として、処理完了をリモート移行マネージャ20Rへ通知する。その後、ステップ216へ進み、リモート移行マネージャ20Rは処理を終了する(ステップ216)。
実施例3を説明する。実施例2との相違点を主に説明し、実施例2との共通点については説明を省略又は簡略する。
図12は、実施例3の概略を示す。
PVOL154とSVOL26Sとのペアである第1のペアに加えて、SVOL26Sと移行先SVOL26Dとのペアである第2のペアがある。
並行リモートコピー(並行データバックアップ)に代えて、SVOL26Sから移行先SVOL26Dへのデータコピーである内部コピーが実施される。具体的には、リモート移行マネージャ20Rが、仮想管理部22、移行元SDS14及び移行先SDS16のうちの少なくとも1つに対し、SVOL26Sから移行先SVOL26Dへの内部コピーを指示する。この指示に応答して、SVOL26Sから移行先SVOL26Dへの内部コピー(例えば、移行元SDS14及び移行先SDS16経由の内部コピー)が実行される。内部コピーの完了が検出された場合に、移行元SDS14及びSVOL26Sが消去される。
実施例3によれば、内部コピーが実施されるため、実施例2よりもメインサイト900Mとリモートサイト900R間の通信帯域(システム間ネットワーク(図示せず)の通信帯域)を節約することができる。
なお、実施例3では、第1のペア(PVOL154とSVOL26Sとのペア)は同期ペアであるが、第1のペアは非同期ペアでもよい。
ホスト書込みビットマップ(図示せず)が用意される。ホスト書込みビットマップは、PVOL154のうちのいずれのVOL領域にデータが書き込まれたかを表す。ホスト書込みビットマップは、PVOL154を構成する複数のVOL領域にそれぞれ対応した複数のビットを有する。新たにデータが書き込まれたVOL領域に対応するビットが“1”とされる。ホスト書込みビットマップは、移行先ストレージ150により保持され更新される。
ホスト書込みビットマップは、移行先ストレージ150及びメイン移行マネージャ20Mの両方に保持される。移行先ストレージ150が持つホスト書込みビットマップと、メイン移行マネージャ20Mが持つホスト書込みビットマップは同期していてよい。
図13は、実施例3に係るPVOL更新状況通知処理のシーケンス図である。
「PVOL更新状況通知処理」とは、PVOL154の更新状況を通知する処理である。この処理が必要な理由は、PVOL154にデータが新たに書き込まれたことによりコピー済領域(SVOL26SにおけるVOL領域であって内部コピーが完了した領域)に新たにデータがコピーされた場合、再度そのコピー済領域について内部コピーを必要になるためである。
メイン移行マネージャ20Mは、定期的に又は不定期的に、リモート移行マネージャ20Rからの問合せに応答して(又は問合せ無しに)、PVOL更新状況を、ホスト書込みビットマップを保持する移行先ストレージ150から特定し、リモート移行マネージャ20Rに通知する。通知されるPVOL更新状況は、メイン移行マネージャ20Mが持つホスト書込みビットマップの複製でもよいし、更新されたVOL領域のID(例えばアドレス)を含んだ情報でもよい。
図14は、実施例3に係る内部コピー処理のシーケンス図である。
ステップ222: リモート移行マネージャ20Rが、移行先SDS16へ、内部コピー開始指示を送信する。ステップ224へ進む。
ステップ224: 移行先SDS16は、内部コピー開始指示に応答して、SVOL26Sから移行先SVOL26Dへの内部コピーを開始し、内部コピーの進捗に応じてコピー情報47を更新する。移行先SDS16は、内部コピー開始指示に対する応答として、処理完了をリモート移行マネージャ20Rに通知する。ステップ226へ進む。
ステップ226: リモート移行マネージャ20Rは、PVOL更新状況(ホスト書込みビットマップを基に特定された情報)を参照する。リモート移行マネージャ20Rは、追加で内部コピーを実施しなければならない箇所である対象箇所(VOL領域)があれば、対象箇所のアドレスを指定した追加内部コピー指示を移行先SDS16へ通知し、且つ、対象箇所に対応したビット(リモート移行マネージャ20Rが保持するホスト書込みビットマップ中のビット)を“1”から“0”に更新する。追加内部コピー指示に応答して、SVOL26S内のVOL領域(対象箇所アドレスに該当するVOL領域)から、移行先SVOL26D内のVOL領域(対象箇所アドレスに該当するVOL領域)にデータがコピーされる(追加内部コピー)。また、対象箇所に対応したビットの更新は、図13に示した通信により、リモート移行マネージャ20Rからメイン移行マネージャ20Mに通知され、メイン移行マネージャ20Mが、対象箇所に対応したビット(メイン移行マネージャ20Mが保持するホスト書込みビットマップ中のビット)を“1”から“0”に更新する。この更新は、移行先ストレージ150が持つホスト書込みビットマップにも反映される。
内部コピーが完了するまで、ステップ226が定期的又は不定期的に繰り返される。
図15は、実施例3に係る移行元SDS消去処理のシーケンス図である。
ステップ246: リモート移行マネージャ20Rは、定期的に又は不定期的に、コピー進捗率(内部コピーの進捗率)の問合せを移行先SDS16に送信し、その問合せに対する回答を移行先SDS16ら受信する。受信した回答が表すコピー進捗率が“100%”であれば、リモート移行マネージャ20Rは、ホスト書込みビットマップを参照し、追加の内部コピーの要否を判断する。要の場合、追加の内部コピーと、それに伴うホスト書込みビットマップ更新とが行われる。不要の場合、ステップ248へ進む。なお、ステップ246を開始するとき、メイン移行マネージャ20Mが、移行先ストレージ150に対し、ホスト901からPVOL154を指定したI/O要求(例えば書込み要求)を受けることを一時停止させてもよい。そして、ステップ246が完了したとき、メイン移行マネージャ20Mが、移行先ストレージ150に対し、その一時停止を解除させてもよい。
ステップ248: リモート移行マネージャ20Rが、移行元SDS14へ、PVOL154とSVOL26Sとのペアを分割するペア分割指示を送信する。ペア分割指示に応答して、図11のステップ206以降が行われてよい。なお、リモート移行マネージャ20Rが、メイン移行マネージャ20Mにペアの分割を指示し、メイン移行マネージャ20Mが、その指示に応答して、PVOL154とSVOL26Sとのペアを分割するペア分割指示を、移行元ストレージ152に送信してもよい。
実施例3で移行完了した移行先SVOL26Dは、PVOL154とペア操作を実施してもよいし(PVOL154とペアにされてもよいし)、バックアップデータとして保持していてもよい(PVOL154とペアにされず独立していてもよい)。
以上、幾つかの実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
例えば、実施例1〜3では、移行元SDS14及び移行先SDS16の各々は、VMである。しかし、移行元SDS14は、第1のVMで実行されるソフトウェアでよく、移行先SDS16は、第2のVMで実行されるソフトウェアであってもよい。第1及び第2のVMが、仮想管理部22により提供された同一種類の第1及び第2のゲストOSをそれぞれ実行するようになっていてよい。第1及び第2のゲストOSの各々が、移行マネージャ20(20R)又は仮想管理部22から指示を受けた場合に、その指示に従う処理を実行するようになっていてよい。移行マネージャ20(20R)は、移行元SDS14の消去指示を、仮想管理部22非経由に第1のVMに送信してもよいし、仮想管理部22に送信してもよい。第1のゲストOSが、移行マネージャ20(20R)又は仮想管理部22から消去指示を受信し、消去指示に応答して、移行元SDS14を消去してもよい。
また、実施例1〜3のうちの少なくとも1つにおいて、移行マネージャ20、メイン移行マネージャ20M及びリモート移行マネージャ20Rのうちの少なくとも1つが、プログラムソースからインストールされてもよい。プログラムソースは、プログラム配布サーバ又は計算機が読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。
16…移行先SDS

Claims (13)

  1. 第1論理ボリュームを提供する第1仮想ストレージの移行先である第2仮想ストレージに第2論理ボリュームに前記第1論理ボリュームのターゲット情報を関連付けることで前記第2論理ボリュームに前記第1論理ボリュームをマッピングする指示を送信し、前記第1仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
    前記第1論理ボリュームにアクセスを行うホストに、アクセス先を前記第1論理ボリュームから、前記第1論理ボリュームがマッピングされた前記第2論理ボリュームに変更する指示を送ることで、前記ホストが前記第2論理ボリュームを介して前記第1論理ボリュームのデータにアクセス可能にし、
    前記第1論理ボリュームと前記第1論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から、そのマッピング元である前記第2論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
    前記第2論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第1仮想ストレージの前記第1論理ボリュームを消去することの指示である消去指示を、前記仮想管理部に送信する、
    データ移行方法。
  2. 前記コピー指示の送信先は、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つであり、
    前記コピー完了の検出は、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つから前記コピー完了の通知を受信することである、
    請求項1記載のデータ移行方法。
  3. 前記仮想管理部が、前記消去指示に応答して、前記第1仮想ストレージを消去する、
    請求項1記載のデータ移行方法。
  4. 前記第2仮想ストレージは、前記仮想管理部に前記第2仮想ストレージの作成指示を送信することにより生成された仮想ストレージである、
    請求項1記載のデータ移行方法。
  5. 前記データコピーの進捗の問合せを、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つに送信し、
    前記問合せに対する応答を、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つから受信し、
    前記コピー完了は、前記受信した応答を基に検出される、
    請求項1記載のデータ移行方法。
  6. 前記第1仮想ストレージに仮想リソースを提供する前記仮想管理部を有する第1計算機システムにネットワーク経由で接続され移行元ストレージ装置を有する第2計算機システムが存在し、
    前記第1論理ボリュームは、前記移行元ストレージ装置によって提供されるプライマリボリュームとコピーペアを形成するセカンダリボリュームであり、
    前記コピー元論理ボリュームは、前記プライマリボリュームである、
    請求項1記載のデータ移行方法。
  7. 前記第2論理ボリュームへのコピーは、前記プライマリボリュームから行われ、
    前記第1計算機システムの管理プログラムが実行されることにより実現される第1移行マネージャが、前記第2計算機システムの管理プログラムが実行されることにより実現される第2移行マネージャと通信可能であり、
    前記第1移行マネージャが、前記第2論理ボリュームへのデータコピーの完了を検出した前記第2移行マネージャからの指示に応答して、前記仮想管理部に前記消去指示を送信する、
    請求項6記載のデータ移行方法。
  8. 前記データコピーと並行して、前記プライマリボリュームから前記セカンダリボリュームへのデータのコピーが行われる、
    請求項6記載のデータ移行方法。
  9. 前記仮想管理部は、物理プロセッサが仮想化プログラムを実行することで実現される、
    請求項1記載のデータ移行方法。
  10. 仮想リソースを提供する仮想管理部と、
    移行マネージャと
    を有し、
    前記移行マネージャは、
    第1論理ボリュームを提供する第1仮想ストレージの移行先である第2仮想ストレージに第2論理ボリュームに前記第1論理ボリュームのターゲット情報を関連付けることで前記第2論理ボリュームに前記第1論理ボリュームをマッピングする指示を送信し、前記第1仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
    前記第1論理ボリュームにアクセスを行うホストに、アクセス先を前記第1論理ボリュームから、前記第1論理ボリュームがマッピングされた前記第2論理ボリュームに変更する指示を送ることで、前記ホストが前記第2論理ボリュームを介して前記第1論理ボリュームのデータにアクセス可能にし、 前記第1論理ボリュームと前記第1論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から、そのマッピング元である前記第2論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
    前記第2論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第1仮想ストレージの第1論理ボリュームを消去することの指示である消去指示を、前記仮想管理部に送信し、
    前記仮想管理部が、前記消去指示に応答して、前記第1仮想ストレージの第1論理ボリュームを消去する、
    計算機システム。
  11. 第1論理ボリュームを提供する第1仮想ストレージの移行先である第2仮想ストレージに第2論理ボリュームに前記第1論理ボリュームのターゲット情報を関連付けることで前記第2論理ボリュームに前記第1論理ボリュームをマッピングする指示を送信し、前記第1仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
    前記第1論理ボリュームにアクセスを行うホストに、アクセス先を前記第1論理ボリュームから、前記第1論理ボリュームがマッピングされた前記第2論理ボリュームに変更する指示を送ることで、前記ホストが前記第2論理ボリュームを介して前記第1論理ボリュームのデータにアクセス可能にし、
    前記第1論理ボリュームと前記第1論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から、そのマッピング元である前記第2論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
    前記第2論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第1仮想ストレージの第1論理ボリュームを消去することの指示である消去指示を、前記仮想管理部に送信する、
    ことをコンピュータに実行させるためのコンピュータプログラムを記録したコンピュータ読取り可能な記録媒体。
  12. 前記コピー指示の送信先は、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つであり、
    前記コピー完了の検出は、前記第1仮想ストレージ及び前記第2仮想ストレージのうちの少なくとも1つから前記コピー完了の通知を受信することである、
    請求項11記載の記録媒体。
  13. 前記第2仮想ストレージは、前記仮想管理部に前記第2仮想ストレージの作成指示を送信することにより生成された仮想ストレージである、
    請求項11記載の記録媒体。
JP2018501456A 2016-02-24 2016-02-24 データ移行方法及び計算機システム Active JP6663478B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/055329 WO2017145272A1 (ja) 2016-02-24 2016-02-24 データ移行方法及び計算機システム

Publications (2)

Publication Number Publication Date
JPWO2017145272A1 JPWO2017145272A1 (ja) 2018-08-30
JP6663478B2 true JP6663478B2 (ja) 2020-03-11

Family

ID=59685020

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018501456A Active JP6663478B2 (ja) 2016-02-24 2016-02-24 データ移行方法及び計算機システム

Country Status (3)

Country Link
US (1) US10496294B2 (ja)
JP (1) JP6663478B2 (ja)
WO (1) WO2017145272A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201659B (zh) * 2016-07-12 2019-07-05 腾讯科技(深圳)有限公司 一种虚拟机热迁移的方法及宿主机
JP2018010507A (ja) * 2016-07-14 2018-01-18 富士通株式会社 メモリ管理プログラム、メモリ管理方法及びメモリ管理装置
CN109842636A (zh) * 2017-11-24 2019-06-04 阿里巴巴集团控股有限公司 云服务迁移方法、装置以及电子设备
JP7113698B2 (ja) * 2018-08-10 2022-08-05 株式会社日立製作所 情報システム
US10572271B1 (en) * 2018-08-29 2020-02-25 Red Hat, Inc. Efficient instantiation of encrypted guests
US10768837B2 (en) * 2018-10-31 2020-09-08 EMC IP Holding Company LLC Non-disruptive migration of a virtual volume in a clustered data storage system
US20230153007A1 (en) * 2021-11-15 2023-05-18 Hitachi, Ltd. Information processing system and method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3671595B2 (ja) 1997-04-01 2005-07-13 株式会社日立製作所 複合計算機システムおよび複合i/oシステム
JP4282464B2 (ja) * 2003-12-17 2009-06-24 株式会社日立製作所 リモートコピーシステム
JP5037881B2 (ja) * 2006-04-18 2012-10-03 株式会社日立製作所 ストレージシステム及びその制御方法
JP2009217466A (ja) 2008-03-10 2009-09-24 Hitachi Ltd ストレージ装置、計算機システム及びデータ管理方法
WO2012143965A1 (en) * 2011-04-18 2012-10-26 Hitachi, Ltd. Plurality of coupled storage subsystems and method for setting port access limitation in a storage subsystem when migrating a logical volume
JP2013029911A (ja) * 2011-07-27 2013-02-07 Fujitsu Ltd 制御装置、制御方法およびストレージ装置
US8935496B2 (en) * 2012-08-31 2015-01-13 Hitachi, Ltd. Management method of virtual storage system and remote copy system

Also Published As

Publication number Publication date
US10496294B2 (en) 2019-12-03
WO2017145272A1 (ja) 2017-08-31
JPWO2017145272A1 (ja) 2018-08-30
US20180121112A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
JP6663478B2 (ja) データ移行方法及び計算機システム
US10713074B2 (en) Method, apparatus, and system for accessing storage device
US8402220B2 (en) Storage controller coupled to storage apparatus
JP5459811B2 (ja) 仮想ストレージ移行のための方法およびシステム、ならびに仮想マシンモニタ
JP5427574B2 (ja) 仮想計算機の移動管理方法、前記移動管理方法を用いた計算機、前記移動管理方法を用いた仮想化機構および前記移動管理方法を用いた計算機システム
US8959323B2 (en) Remote restarting client logical partition on a target virtual input/output server using hibernation data in a cluster aware data processing system
US9223501B2 (en) Computer system and virtual server migration control method for computer system
US8473692B2 (en) Operating system image management
US20190012110A1 (en) Information processing apparatus, and control method of information processing system
JP5352132B2 (ja) 計算機システム及びそのi/o構成変更方法
JP5718533B1 (ja) ストレージシステムのデータ移行方法
JP5542788B2 (ja) 仮想計算機システムおよび仮想計算機の移行制御方法
US8954706B2 (en) Storage apparatus, computer system, and control method for storage apparatus
WO2019061352A1 (zh) 数据加载方法及装置
US8286163B2 (en) Coupling between server and storage apparatus using detected I/O adaptor and allowing application execution based on access group and port connection group in virtualized environment
JP2013531283A (ja) ストレージの仮想化機能と容量の仮想化機能との両方を有する複数のストレージ装置を含んだストレージシステム
JP2004227558A (ja) 仮想化制御装置およびデータ移行制御方法
US8516209B2 (en) Computer system, storage volume management method, and computer-readable storage medium
US10503440B2 (en) Computer system, and data migration method in computer system
US10528279B2 (en) Storage management server, method of controlling storage management server, and computer system
WO2019071431A1 (zh) 处理i/o请求的方法、设备及主机
EP2565771A1 (en) Computer system, method of managing storage volume and computer-readable recording medium
US20160259559A1 (en) Storage system and control method thereof
JP6000391B2 (ja) ストレージシステムのデータ移行方法
JP2014063356A (ja) 情報処理方法、プログラム、情報処理装置、及び情報処理システム。

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190802

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200214

R150 Certificate of patent or registration of utility model

Ref document number: 6663478

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150