(57)【要約】  第１論理ボリュームを提供する第１仮想ストレージの移行先である第２仮想ストレージに第２論理ボリュームを関連付けることの指示が送信される。第１仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージである。第１論理ボリュームとそれのコピー元論理ボリュームとのうちのいずれか一方から第２論理ボリュームにデータをコピーすることの指示であるコピー指示が送信される。第２論理ボリュームへのデータコピーの完了であるコピー完了が検出された場合に、第１仮想ストレージを消去することの指示である消去指示が、仮想管理部に送信される。
2017145272.tif 000002
【特許請求の範囲】
【請求項１】
第１論理ボリュームを提供する第１仮想ストレージの移行先である第２仮想ストレージに第２論理ボリュームを関連付ける指示を送信し、前記第１仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
前記第１論理ボリュームと前記第１論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から前記第２論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
前記第２論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第１仮想ストレージを消去することの指示である消去指示を、前記仮想管理部に送信する、
データ移行方法。
【請求項２】
前記コピー指示の送信先は、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つであり、
前記コピー完了の検出は、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つから前記コピー完了の通知を受信することである、
請求項１記載のデータ移行方法。
【請求項３】
前記仮想管理部が、前記消去指示に応答して、前記第１仮想ストレージを消去する、
請求項１記載のデータ移行方法。
【請求項４】
前記第２仮想ストレージは、前記仮想管理部に前記第２仮想ストレージの作成指示を送信することにより生成された仮想ストレージである、
請求項１記載のデータ移行方法。
【請求項５】
ホストからのＩ／Ｏが前記第２論理ボリュームで受けつけられつつ前記データコピーが行われるようにするために、前記第２論理ボリュームに前記第１論理ボリュームのターゲット情報を関連付けることで前記第２論理ボリュームに前記第１論理ボリュームをマッピングする、
請求項１記載のデータ移行方法。
【請求項６】
前記データコピーの進捗の問合せを、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つに送信し、
前記問合せに対する応答を、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つから受信し、
前記コピー完了は、前記受信した応答を基に検出される、
請求項１記載のデータ移行方法。
【請求項７】
前記第１仮想ストレージに仮想リソースを提供する前記仮想管理部を有する第１計算機システムにネットワーク経由で接続され移行元ストレージ装置を有する第２計算機システムが存在し、
前記第１論理ボリュームは、前記移行元ストレージ装置によって提供されるプライマリボリュームとコピーペアを形成するセカンダリボリュームであり、
前記コピー元論理ボリュームは、前記プライマリボリュームである、
請求項１記載のデータ移行方法。
【請求項８】
前記第２論理ボリュームへのコピーは、前記プライマリボリュームから行われ、
前記第１計算機システムの管理プログラムが実行されることにより実現される第１移行マネージャが、前記第２計算機システムの管理プログラムが実行されることにより実現される第２移行マネージャと通信可能であり、
前記第１移行マネージャが、前記第２論理ボリュームへのデータコピーの完了を検出した前記第２移行マネージャからの指示に応答して、前記仮想管理部に前記消去指示を送信する、
請求項７記載のデータ移行方法。
【請求項９】
前記データコピーと並行して、前記プライマリボリュームから前記セカンダリボリュームへのデータのコピーが行われる、
請求項７記載のデータ移行方法。
【請求項１０】
前記仮想管理部は、物理プロセッサが仮想化プログラムを実行することで実現される、
請求項１記載のデータ移行方法。
【請求項１１】
仮想リソースを提供する仮想管理部と、
移行マネージャと
を有し、
前記移行マネージャは、
第１論理ボリュームを提供する第１仮想ストレージの移行先である第２仮想ストレージに第２論理ボリュームを関連付けることの指示を送信し、前記第１仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
前記第１論理ボリュームと前記第１論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から前記第２論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
前記第２論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第１仮想ストレージを消去することの指示である消去指示を、前記仮想管理部に送信し、
前記仮想管理部が、前記消去指示に応答して、前記第１仮想ストレージを消去する、
計算機システム。
【請求項１２】
第１論理ボリュームを提供する第１仮想ストレージの移行先である第２仮想ストレージに第２論理ボリュームを関連付けることの指示を送信し、前記第１仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージであり、
前記第１論理ボリュームと前記第１論理ボリュームのコピー元論理ボリュームとのうちのいずれか一方から前記第２論理ボリュームにデータをコピーすることの指示であるコピー指示を送信し、
前記第２論理ボリュームへのデータコピーの完了であるコピー完了を検出した場合に、前記第１仮想ストレージを消去することの指示である消去指示を、前記仮想管理部に送信する、
ことをコンピュータに実行させるためのコンピュータプログラムを記録したコンピュータ読取り可能な記録媒体。
【請求項１３】
前記コピー指示の送信先は、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つであり、
前記コピー完了の検出は、前記第１仮想ストレージ及び前記第２仮想ストレージのうちの少なくとも１つから前記コピー完了の通知を受信することである、
請求項１２記載の記録媒体。
【請求項１４】
前記第２仮想ストレージは、前記仮想管理部に前記第２仮想ストレージの作成指示を送信することにより生成された仮想ストレージである、
請求項１２記載の記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、データ移行に関する。
【背景技術】
【０００２】
一般に、計算機システムの構築のために、計算機システムの用途やシステム要件に合わせて、サーバ装置及びストレージ装置といったハードウェアが調達される。【０００３】
計算機システムにおいて、データ移行が行われる。データ移行の目的の１つとして、ストレージ装置の移行がある。ストレージ装置の移行に、例えば特許文献１の技術を利用することが考えられる。特許文献１の技術によれば、異種ストレージが既設ストレージに接続され、異種ストレージのデータ管理情報が既設ストレージに設定される。この技術をストレージ装置の移行に利用すれば、移行先ストレージ装置に移行元ストレージ装置を接続することで、移行元ストレージ装置を長時間停止せずに移行を実現することが期待できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】US6,721,841
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、ＳＤｘ（Software-defined xxx）、すなわち、計算機システムにおける対象（xxx）のソフトウェア化が採用されている。例えば、サーバを対象としたＳＤｘは、ＳＤＣ（Software-defined Computing）である。【０００６】
ストレージを対象としたＳＤｘは、ＳＤＳ（Software-defined Storage）である。ＳＤＳは、仮想ストレージ、すなわち、ハードウェア非依存のストレージである。ＳＤＳは、物理装置又は仮想装置上で動作するソフトウェアの一例であってもよいし、仮想装置それ自体の一例であってもよい。「物理装置」は、物理プロセッサ及び物理メモリを含んだ複数の物理リソースを有する装置、例えば、汎用サーバのような物理計算機である。「仮想装置」は、複数の物理リソースに基づく複数の仮想リソース（例えば仮想プロセッサ及び仮想メモリ）を有する装置であり、例えば、ＬＰＡＲ（Logical Partition）又はＶＭ（Virtual Machine）である。【０００７】
ストレージ装置の移行と同様に、ＳＤＳの移行が行われることが考えられる。ＳＤＳの移行が行われる理由として、例えば、新しい機能を有するＳＤＳへのリプレース、又は、ＳＤＳベンダの変更がある。【０００８】
ＳＤＳの移行に特許文献１の技術を利用すれば、移行先ＳＤＳに移行元ＳＤＳを接続することで、移行元ＳＤＳを長時間停止せずに移行を実現することが期待できる。【０００９】
しかし、ホストがデータを書き込む又は読み出すにあたり、データが移行元ＳＤＳを経由するため、移行後も移行元ＳＤＳを維持する必要があり、移行元ＳＤＳのための少なくとも１つのリソース（仮想リソース又は物理リソース）が必要とされたままとなってしまう。【００１０】
更に、一般に、ＳＤＳには、仮想化されたリソースが割り当てられているため、リソースの確保及び解放のいずれについてもＳＤＳ自体では制御できないことが想定される。
【課題を解決するための手段】
【００１１】
第１論理ボリュームを提供する第１仮想ストレージの移行先である第２仮想ストレージに第２論理ボリュームを関連付けることの指示が送信される。第１仮想ストレージは、仮想管理部により提供された仮想リソースが割り当てられた仮想ストレージである。第１論理ボリュームとそれのコピー元論理ボリュームとのうちのいずれか一方から第２論理ボリュームにデータをコピーすることの指示であるコピー指示が送信される。第２論理ボリュームへのデータコピーの完了であるコピー完了が検出された場合に、第１仮想ストレージを消去することの指示である消去指示が、仮想管理部に送信される。
【発明の効果】
【００１２】
第１仮想ストレージに割り当てられていた仮想リソースを含む第１仮想ストレージ自体を解放することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】実施例１の概略を示す。
【図２】実施例１に係る計算機システムの構成を示す。
【図３】移行管理テーブルの構成を示す。
【図４】コピー情報の構成を示す。
【図５】移行先ＳＤＳ構築処理のシーケンス図である。
【図６】コピー準備処理のシーケンス図である。
【図７】アクセス先切替え処理のシーケンス図である。
【図８】実施例１に係る移行元ＳＤＳ消去処理のシーケンス図である。
【図９】実施例２の概略を示す。
【図１０】実施例２に係る並行リモートコピー処理のシーケンス図である。
【図１１】実施例２に係る移行元ＳＤＳ消去処理のシーケンス図である。
【図１２】実施例３の概略を示す。
【図１３】実施例３に係るＰＶＯＬ更新状況通知処理のシーケンス図である。
【図１４】実施例３に係る内部コピー処理のシーケンス図である。
【図１５】実施例３に係る移行元ＳＤＳ消去処理のシーケンス図である。
【発明を実施するための形態】
【００１４】
以下の説明では、「物理装置」は、物理プロセッサ及び物理メモリを含んだ複数の物理リソースを有する装置、例えば、汎用サーバのような物理計算機である。「仮想装置」は、複数の物理リソースに基づく複数の仮想リソース（例えば仮想プロセッサ及び仮想メモリ）を有する装置であり、例えば、ＬＰＡＲ（Logical Partition）又はＶＭ（Virtual Machine）である。「プロセッサ」は、物理プロセッサ及び仮想プロセッサのうちの少なくとも１つを意味する。「メモリ」は、物理メモリ及び仮想メモリのうちの少なくとも１つを意味する。「インターフェース」は、物理インターフェース及び仮想インターフェースのうちの少なくとも１つを意味する。
【００１５】
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサによって実行されることで、定められた処理を、適宜にメモリ及びインターフェースのうちの少なくとも１つを用いながら行うため、処理の主語が、プロセッサ（或いは、プロセッサを有する物理装置又は仮想装置）とされてもよい。プログラムは、プログラムソースから計算機にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバ又は計算機が読み取り可能な記録媒体であってもよい。また、以下の説明において、２以上のプログラムが１つのプログラムとして実現されてもよいし、１つのプログラムが２以上のプログラムとして実現されてもよい。
【００１６】
また、以下の説明では、「ｘｘｘテーブル」及び「ｘｘｘビットマップ」といった表現にて情報を説明することがあるが、情報は、どのようなデータ構造で表現されていてもよい。すなわち、情報がデータ構造に依存しないことを示すために、「ｘｘｘテーブル」及び「ｘｘｘビットマップ」をそれぞれ「ｘｘｘ情報」と言うことができる。また、以下の説明において、テーブルの構成は一例であり、１つのテーブルは、２以上のテーブルに分割されてもよいし、２以上のテーブルの全部又は一部が１つのテーブルであってもよい（これは、ビットマップについても同様でよい）。
【００１７】
また、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号（又は参照符号における共通部分）を使用し、同種の要素を区別して説明する場合は、要素のＩＤ（又は要素の参照符号）を使用することがある。
【００１８】
また、以下の説明では、「ＶＯＬ」は、論理ボリュームの略である。ＶＯＬは、１以上の物理記憶デバイス（又は１以上の仮想記憶デバイス）に基づく論理ボリュームであってもよいし、Thin Provisioningに従う仮想的な論理ボリュームであってもよい。
【実施例１】
【００１９】
図１は、実施例１の概略を示す。【００２０】
ステップ１の前の状態として、計算機システム１００が、仮想管理部２２、移行元ＳＤＳ１４、移行元ＶＯＬ２６Ｓ、管理ＶＭ（Virtual Machine）１８及びホスト１０を有する。仮想管理部２２は、仮想化されたリソースを提供する仮想化プログラム（例えばハイパバイザ）である。具体的には、例えば、仮想管理部２２は、物理的なサーバを仮想的にみせる基盤であり、一例として、クラウド基盤である。仮想管理部２２は、仮想化されたリソースの他に、仮想化されたリソースが割り当てられた装置を提供することもできる。移行元ＳＤＳ１４、管理ＶＭ１８及びホスト１０の各々は、仮想管理部２２により作成されたＶＭである。ＶＭは、仮想装置の一例である。管理ＶＭ１８に、移行マネージャ２０がインストールされている。移行元ＳＤＳ１４は、第１の仮想ストレージの一例である。移行元ＶＯＬ２６Ｓは、第１の論理ボリュームの一例である。なお、仮想管理部２２は、上述したような仮想化プログラムを実行する物理プロセッサでもよいし（具体的には、物理プロセッサが仮想化プログラムを実行することで実現されてもよいし）、仮想化プログラムが保持されるメモリと仮想化プログラムを実行する物理プロセッサとを含んだ装置（例えばモジュール）でもよい。【００２１】
移行元ＶＯＬ２６Ｓが移行元ＳＤＳ１４に関連付けられている（例えばマウントされている）。移行元ＶＯＬ２６Ｓは移行元ＳＤＳ１４によりホスト１０に提供されている。移行元ＳＤＳ１４は、移行元ＶＯＬ２６ＳのＩＤ（識別情報）を指定したＩ／Ｏ（Input/Output）要求をホスト１０から受信した場合、受信したＩ／Ｏ要求に従うＩ／Ｏを移行元ＶＯＬ２６Ｓに対して実行する（すなわち、移行元ＶＯＬ２６Ｓからのデータの読出し、又は、移行元ＶＯＬ２６Ｓへのデータの書込みを実行する）。移行元ＶＯＬ２６ＳのＩＤは、例えば、移行元ＶＯＬ２６Ｓのボリューム番号（例えばＬＵＮ（Logical Unit Number））を含む。【００２２】
＜ステップ１＞【００２３】
移行マネージャ２０が、仮想管理部２２に、移行先ＳＤＳ１６の作成指示を送信する。その作成指示に応答して、仮想管理部２２により、移行先ＳＤＳ１６が、移行元ＳＤＳ１４が存在する計算機システム１００に構築される。本実施例では、ＳＤＳ移行の理由がＳＤＳベンダの変更であり、故に、移行元ＳＤＳ１４のベンダと移行先ＳＤＳ１６のベンダは異なる。しかし、それらのベンダは同一ベンダでもよい。移行先ＳＤＳ１６の構築において、移行先ＳＤＳ１６には、移行先ＶＯＬ２６Ｄが関連付けられる。なお、移行先ＳＤＳ１６が、第２の仮想ストレージの一例である。移行先ＶＯＬ２６Ｄが、第２の論理ボリュームの一例である。また、この段階では、移行元ＶＯＬ２６ＳのＩＤを指定したＩ／Ｏ要求に従うＩ／Ｏは、移行元ＳＤＳ１４経由で移行元ＶＯＬ２６Ｓに対して行われる。【００２４】
＜ステップ２＞【００２５】
移行マネージャ２０は、移行先ＳＤＳ１６と移行元ＳＤＳ１４へ、移行先ＳＤＳ１６から移行元ＳＤＳ１４へアクセスできるよう指示を出す。これにより、移行先ＶＯＬ２６Ｄには、移行元ＶＯＬ２６ＳのＩＤを含んだ情報であるターゲット情報が関連付けられる。すなわち、移行元ＶＯＬ２６Ｓが、ストレージ仮想化技術に従い、移行元ＳＤＳ１４経由に移行先ＳＤＳ１６にマッピングされる（関連付けられる）。以下、ＶＯＬがストレージ経由で別のストレージに関連付けられることを、便宜上、「外部接続」と言うことがある。【００２６】
外部接続の完了後、移行マネージャ２０は、ホスト１０へ、アクセス先を移行元ＳＤＳ１４から移行先ＳＤＳ１６へ変更するよう指示する。これにより、移行元ＶＯＬ２６ＳのＩＤを指定したＩ／Ｏ要求は、移行先ＳＤＳ１６が受信することになる。移行先ＳＤＳ１６は、そのようなＩ／Ｏ要求を受信した場合、移行元ＶＯＬ２６Ｄに対して実行する。【００２７】
その後、移行マネージャ２０は、移行元ＳＤＳ１４及び移行先ＳＤＳ１６のうちの少なくとも１つに、移行元ＶＯＬ２６Ｓのデータを移行先ＶＯＬ２６Ｄにコピーすることのコピー指示を送信する。そのコピー指示に応答して、移行元ＶＯＬ２６Ｓに格納されているデータが、移行元ＳＤＳ１４及び移行先ＳＤＳ１６を経由して、移行先ＶＯＬ２６Ｄにコピーされる。つまり、移行元ＶＯＬＳ２６Ｓから移行先ＶＯＬ２６Ｄへのデータコピーが行われる。なお、このコピー中であっても、移行先ＳＤＳ１６は、移行元ＶＯＬ２６ＳのＩＤを指定したＩ／Ｏ要求をホスト１０から受け付け、受信したＩ／Ｏ要求に従うＩ／Ｏを、移行元ＶＯＬ２６Ｄに対して実行できる。移行元ＶＯＬ２６Ｓにおける未コピー領域（コピー済みではない領域）に新たにデータが書き込まれた場合、先行して移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄに当該データがコピーされた上、ホスト１０から受信した新たなデータが移行先ＶＯＬ２６Ｄへ書き込まれる。なお、図１において、グレーのブロックは、データを表している。図１のステップ２のブロック図は、移行元ＶＯＬ２６Ｓにおけるデータの一部が移行先ＶＯＬ２６Ｄにコピーされたことを意味している。【００２８】
＜ステップ３＞【００２９】
コピー完了が検出される。ここで言う「コピー完了」は、移行元ＶＯＬ２６Ｓの内容と移行先ＶＯＬ２６Ｄの内容に差分が無くなったこと、言い換えれば、移行元ＶＯＬ２６Ｓの内容と移行先ＶＯＬ２６Ｄの内容が一致したことであってよい。具体的には、例えば、移行マネージャ２０は、移行元ＳＤＳ１４及び移行先ＳＤＳ１６のうちの少なくとも１つから、コピー完了の通知を受信する。より具体的には、例えば、移行マネージャ２０は、移行元ＳＤＳ１４及び移行先ＳＤＳ１６のうちの少なくとも１つに、データコピーの進捗の問合せを送信し、その問合せに対する応答を、移行元ＳＤＳ１４及び移行先ＳＤＳ１６のうちの少なくとも１つ（その問合せの送信先）から受信し、受信した応答を基に、コピー完了を検出する。コピー完了が検出された場合、移行マネージャ２０が、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓを消去する指示である消去指示を仮想管理部２２に送信する。消去指示に応答して、仮想管理部２２により、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓが消去される。仮想管理部２２は、移行元ＳＤＳ１４に割り当てられている全ての仮想リソースを移行元ＳＤＳ１４から解放してから移行元ＳＤＳ１４を消去してもよいし、移行元ＳＤＳ１４の消去の結果として、移行元ＳＤＳ１４に割り当てられている全ての仮想リソースが解放されてもよい。【００３０】
本実施例によれば、移行先ＶＯＬ２６Ｄが移行先ＳＤＳ１６に関連付けられ、移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのコピーが完了した場合、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓを、維持する必要が無いＳＤＳ及びＶＯＬと位置づけることができる。このため、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓを消去できる。これにより、リソースとコストのうちの少なくとも１つの低減が期待できる。なお、少なくとも移行元ＳＤＳ１４が消去されればよいが、移行元ＶＯＬ２６Ｓも消去することで、一層の低減が期待できる。【００３１】
また、本実施例によれば、移行マネージャ２０が移行処理を一括管理することができ、移行元ＳＤＳ１４を長時間停止することなく最終的に移行元ＳＤＳ１４を消去することができる。そのため、ＳＤＳ移行が容易となり、且つ、ＳＤＳ運用コストを低減することが期待できる。【００３２】
なお、本実施例では、外部接続が採用されているが、外部接続の採用は必須ではない。外部接続とは異なる技術を採用することでも、ホスト１０からＩ／Ｏ要求を受け付けることを止めずに移行元ＶＯＬ２６Ｓのデータをコピーすること（２重化すること）を実現することができる。【００３３】
また、本実施例では、ホスト１０のアクセス先ＶＯＬの切り替えは、コピー開始前（コピー指示送信前）に行われるが、コピー中に行われてもよいし、コピー完了後に行われてもよい。外部接続が採用された場合、アクセス先ＶＯＬの切り替えは、上述したように、コピー開始前に行われる。【００３４】
以下、本実施例を詳細に説明する。【００３５】
図２は、計算機システム１００の構成を示す。【００３６】
計算機システム１００は、物理リソース群２００を有し、仮想管理部２２を実行する。仮想管理部２２により、物理リソース群２００の少なくとも一部が仮想化された複数のリソースである仮想リソース群２１０が管理される。仮想リソース群２１０の少なくとも一部が割り当てられたＶＭが仮想管理部２２により作成される。【００３７】
本実施例において、「リソース」とは、物理リソースと仮想リソースの総称である。物理リソース群２００は、複数種類の物理リソースを含んだ複数の物理リソースである。物理リソースとしては、例えば、物理プロセッサ（例えばＣＰＵ（Central Processing Unit））１４８、物理メモリ１４６、物理記憶デバイス１２６及び物理インターフェース（図示せず）のうちの少なくとも１つがある。仮想リソース群２１０は、複数種類の仮想リソースを含んだ複数の仮想リソースである。仮想リソースとしては、例えば、仮想プロセッサ４８、仮想メモリ４６、ＶＯＬ２６、仮想インターフェース（図示せず）及び仮想ネットワーク３６のうちの少なくとも１つがある。仮想リソースは、仮想リソースの種類と同種の物理リソースに基づいていてもよいし、仮想リソースの種類とは異なる種類の物理リソースに基づいていてもよい。【００３８】
少なくとも１つの物理プロセッサが、仮想管理部２２を実行する。仮想管理部２２は、仮想化プログラムの一例であり、例えばハイパバイザである。仮想管理部２２は、ＶＭを作成したり消去したりすることができる。各ＶＭは、１以上の仮想プロセッサ４８と、１以上の仮想メモリ４６と、１以上の仮想インターフェース（図示せず）とが搭載され、且つ、１以上のＶＯＬ４６がマウントされる。例えば、仮想インターフェースは、仮想ネットワーク３６を通信した通信のためのインターフェースである。また、各ＶＭは、ゲストＯＳ（Operating System）５０を実行する。【００３９】
本実施例では、ホスト１０、管理ＶＭ１８、移行元ＳＤＳ１４及び移行先ＳＤＳ１６が、仮想管理部２２により作成され管理されるＶＭである。ホスト１０及び管理ＶＭ１８は、計算機システム１００に接続された物理装置であってもよいし、計算機システム１００に接続された計算機システム（図示せず）における仮想装置であってもよい。また、移行先ＳＤＳ１６は、計算機システム１００に接続された計算機システム（図示せず）に構築されてもよい。【００４０】
移行元ＳＤＳ１４には、仮想プロセッサ４８Ｓ、仮想メモリ４６Ｓ及びゲストＯＳ５０Ｓ等があり、ストレージ制御プログラム（以下、移行元プログラム）５１Ｓがインストールされる。移行元プログラム５１Ｓは、移行元ＳＤＳ１４の動作を制御する。例えば、ホスト１０からのＩ／Ｏ要求に従い、移行元ＶＯＬ２６Ｓに対するＩ／Ｏを行う。ゲストＯＳ５０Ｓ及び移行元プログラム５１Ｓは、仮想プロセッサ４８Ｓにより実行される。移行元ＳＤＳ１４には、移行元ＶＯＬ２６Ｓがマウントされる。【００４１】
移行先ＳＤＳ１６には、仮想プロセッサ４８Ｄ、仮想メモリ４６Ｄ及びゲストＯＳ５０Ｄ等があり、ストレージ制御プログラム（以下、移行先プログラム）５１Ｄがインストールされる。移行先プログラム５１Ｄは、移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのデータコピー進捗状況を管理するためのコピー情報４７を論理的に保持している。コピー情報４７は、仮想メモリ４６Ｄに格納されている。ゲストＯＳ５０Ｄ及び移行先プログラム５１Ｄは、仮想プロセッサ４８Ｄにより実行される。移行先ＳＤＳ１６には、移行先ＶＯＬ２６Ｄがマウントされる。コピー情報４７は、管理ＶＭ１８の移行マネージャ２０が保持してもよい。【００４２】
移行先ＳＤＳ１６は、移行元ＳＤＳ１４と同じアーキテクチャでよい。また、移行先ＳＤＳ１６の仮想リソースの量は、移行元ＳＤＳ１４の仮想リソースの量と同じでも違っていてもよい。また、移行先プログラム５１Ｄは、移行元プログラム５１Ｓに無い新規の機能を有していてもよいし、移行元プログラム５１Ｓが有する機能のうちの一部の機能（例えば必要性の低い機能）を有していなくてもよい。また、移行先ＳＤＳ１６に関連付けられる移行先ＶＯＬ２６Ｄの容量は、移行元ＶＯＬ２６Ｓの容量と同じであるが、それらの容量は異なっていてもよい。【００４３】
ホスト１０６には、仮想プロセッサ４８Ｈ、仮想メモリ４６Ｈ及びゲストＯＳ５０Ｈ等があり、ＶＯＬ２６Ｈがマウントされる。【００４４】
管理ＶＭ１８には、仮想プロセッサ４８Ｍ、仮想メモリ４６Ｍ及びゲストＯＳ５０Ｍ等があり、移行マネージャ２０がインストールされる。移行マネージャ２０は、移行マネージャ２０の通信相手となり得るモジュールのアドレスが記録された移行管理テーブル４５を論理的に保持する。移行管理テーブル４５は、仮想メモリ４６Ｍに格納される。管理ＶＭ１８には、ＶＯＬ２６Ｍがマウントされる。【００４５】
管理ＶＭ１８、ホスト１０、移行元ＳＤＳ１４、移行先ＳＤＳ１６及び仮想管理部２２は、仮想ネットワーク３６Ａに接続されている。仮想ネットワーク３６Ａを介して、通信が行われる。ＶＭ同士の通信は、仮想ネットワーク３６Ａ経由で行われる。ＶＭ同士の通信に、仮想管理部２２が更に経由してもよい。【００４６】
図３は、移行管理テーブル４５の構成を示す。【００４７】
移行管理テーブル４５は、仮想管理部２２のアドレス、移行先ＳＤＳ１６のアドレス、移行元ＳＤＳ１４のアドレス、ホスト１０のアドレス、及び、メイン移行マネージャのアドレスを保持する。不必要なアドレスの値は、無効な値（例えば“null”）となっている。本実施例では、メイン移行マネージャは、存在しないため、メイン移行マネージャのアドレスの値は“null”である（メイン移行マネージャについては、実施例２及び３で述べる）。【００４８】
移行マネージャ２０は、指示先のアドレスを移行管理テーブル４５から特定し、特定したアドレスを用いて指示を、仮想ネットワーク３６Ａを介して、指示先に出す。移行管理テーブル４５に記録されているアドレスは、仮想ネットワーク３６Ａ上でのアドレスであり、例えば、仮想ネットワークススイッチのポートの番号でもよい。【００４９】
図４は、コピー情報４７の構成を示す。【００５０】
コピー情報４７は、コピー進捗率情報６１とコピー進捗ビットマップ６２とを含む。【００５１】
コピー進捗率情報６１は、移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのコピーの進捗率を表す。コピー進捗率“１００％”が、コピー完了を意味する。コピー進捗率が、移行先プログラム５１Ｄにより、コピーの進捗に応じて更新される。【００５２】
コピー進捗ビットマップ６２は、移行先ＶＯＬ２６Ｄを構成する複数のＶＯＬ領域にそれぞれ対応した複数のビットを有する。ビットに対応するＶＯＬ領域に対して、未だコピーが済んでいなければ、ビットは“０”である。一方、ビットに対応するＶＯＬ領域に対して、コピーが済んだならば、ビットは“１”である。【００５３】
移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのコピーは、ＶＯＬ領域毎に行われてよい。ＶＯＬ領域についてコピーが済む都度に、移行先プログラム５１Ｄにより、ビットが“０”から“１”に更新される。移行先プログラム５１Ｄは、コピー進捗ビットマップ６２を基に、コピー進捗率を算出し、コピー進捗率情報６１を更新する。なお、上述したように、コピー情報４７は、管理ＶＭ１８の移行マネージャ２０が保持してもよく、その場合、移行マネージャ２０が、データコピーの進捗の問合せに対する応答に基づき、コピー進捗率情報６１を更新する。【００５４】
図５は、移行先ＳＤＳ構築処理のシーケンス図である。図５の処理は、図１のステップ１の詳細に対応する。【００５５】
ステップ７４：  移行マネージャ２０は、ユーザ（例えば管理者）からの入力（例えば、移行先ＳＤＳ１６の作成の指示）、又は、移行開始時刻の検知等により、開始する（例えば、必要に応じて、移行管理テーブル４５を更新する）。ステップ７６へ進む。【００５６】
ステップ７６：  移行マネージャ２０は、仮想管理部２２に、新規ＶＭ（移行先ＳＤＳ１６用のＶＭ）６２を作成することの作成指示を送信する。その際、移行マネージャ２０は、移行元ＳＤＳ１４の構成情報及び利用状況のうちの少なくとも１つを基に、移行先スペックを決定し、決定した移行先スペックを表す情報が、仮想管理部２２への作成指示に含まれてもよい。「移行先スペック」とは、移行先ＳＤＳのスペックであり、例えば、移行先ＶＯＬ２６Ｄの容量と、新規ＶＭ６２に割り当てられる仮想リソースの構成及び量とのうちの少なくとも１つでよい。移行元ＳＤＳ１４の構成情報及び利用状況のうちの少なくとも１つは、例えば、移行マネージャ２０が移行元ＳＤＳ１４から取得してもよい。ステップ７７へ進む。【００５７】
ステップ７７：  仮想管理部２２は、移行マネージャ２０からの作成指示に応答して、新規ＶＭ６２を作成する。この段階で、例えば、新規ＶＭ６２に、仮想プロセッサ及び仮想メモリ等を含んだ仮想リソースの少なくとも１つが割り当てられてよい。また、この段階で、新規ＶＭ６２に、ゲストＯＳがロードされてもよい。ステップ７８へ進む。【００５８】
ステップ７８：  次に、仮想管理部２２は、新規ＶＭ６２に移行先ＶＯＬ２６Ｄを関連付ける。移行元ＶＯＬ２６Ｓの容量は、例えば、作成指示に含まれている移行先スペックに従う容量である。移行元ＶＯＬ２６Ｓの容量は、上述したように移行元ＶＯＬ２６Ｓの容量と同じであるが、移行元ＳＤＳ１４以上の性能になるような容量とされてもよいし、移行元ＶＯＬ２６Ｓの使用量に応じた容量とされてもよい。ステップ７９へ進む。【００５９】
ステップ７９：  仮想管理部２２は、新規ＶＭ６２に仮想ネットワークを割り当てる。仮想ネットワークは、例えば、移行元ＳＤＳ１４、ホスト１０及び管理ＶＭ１８へアクセスできるよう、同じサブネットマスクの仮想ネットワークスイッチでよい。その後、仮想管理部２２は、作成指示に対する応答として、処理完了を、移行マネージャ２０へ通知する。ステップ８０へ進む。【００６０】
ステップ８０：  移行マネージャ２０は、新規ＶＭ６２に、移行先プログラム５１Ｄをインストールすることのインストール指示を送信する。インストール指示が、移行先プログラム５１Ｄを含んでもよいし、移行先プログラム５１Ｄのダウンロード元へのリンク（例えばＵＲＬ）を含んでいてもよい。移行先プログラム５１Ｄは、上述したように、移行元プログラム５１Ｓと同一でなくてもよい。ステップ８２へ進む。【００６１】
ステップ８２：  新規ＶＭ６２（例えばゲストＯＳ）は、インストール指示に応答して、移行先プログラム５１Ｄをインストールする。移行先プログラム５１Ｄがインストールされ移行先ＶＯＬ２６Ｄが関連付けられている新規ＶＭ６２が、移行先ＳＤＳ１６となる。新規ＶＭ６２が、インストール指示に対する応答として、処理完了を、移行マネージャ２０へ通知する。移行マネージャ２０がこの処理完了を受けた場合に、図６のフローが開始される。【００６２】
図６は、コピー準備処理のシーケンス図である。図６の処理は、図１のステップ２の一部の詳細に対応する。【００６３】
ステップ９８：  移行マネージャ２０が、移行元ＳＤＳ１４へ、移行先ＳＤＳ１６から移行元ＶＯＬ２６Ｓへのアクセスを許可する指示である許可指示を送信する。ステップ１００に進む。【００６４】
ステップ１００：  移行元ＳＤＳ１４（移行元プログラム５１Ｓ）は、許可指示に応答して、移行元ＶＯＬ２６Ｓの識別情報と移行元ＶＯＬ２６Ｓが属する仮想ポートの識別情報とを含んだターゲット情報を設定する。仮想ネットワークのプロトコルは、ＦＣ（Fiber Channel）でもよいし、ｉＳＣＳＩ等でもよい。その後、移行元ＳＤＳ１４は、許可指示に対する応答として、処理完了を、移行マネージャ２０へ通知する。ステップ１０２へ進む。処理完了は、設定されたターゲット情報を含む。【００６５】
ステップ１０２：  移行マネージャ２０が、移行先ＳＤＳ１６へ、移行元ＶＯＬ２６Ｓを移行元ＳＤＳ１４経由で移行先ＳＤＳ１６に関連付ける指示である外部接続指示を送信する。ステップ１０４へ進む。外部接続指示は、処理完了が含んでいたターゲット情報を含む。【００６６】
ステップ１０４：  移行先ＳＤＳ１６（移行先プログラム５１Ｄ）は、外部接続指示に応答して、移行元ＳＤＳ１４のターゲット情報を登録することで移行元ＶＯＬ２６Ｓを認識する。つまり、移行元ＶＯＬ２６Ｓが、移行先ＳＤＳ１６に関連付けられる。移行元ＳＤＳ１４が移行元ＶＯＬ２６Ｓを認識できない場合、移行先ＳＤＳ１６は、移行先ＳＤＳ１６のポートをポーリングしてもよいし、移行先ＳＤＳ１６のゲストＯＳを再起動してもよい。移行先プログラム５１Ｄが移行元ＶＯＬ２６Ｓを認識する方法として、例えば特許文献１に記載の方法が採用されてもよい。その後、移行先ＳＤＳ１６が、外部接続指示に対する応答として、処理完了を、移行マネージャ２０に通知する。ステップ１０８へ進む。【００６７】
ステップ１０８：  移行マネージャ２０が、移行先ＳＤＳ１６へ、移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのコピーを準備する指示である準備指示を送信する。ステップ１１０へ進む。【００６８】
ステップ１１０：  移行先ＳＤＳ１６は、準備指示に応答して、コピー情報４７を作成する。この段階では、コピー情報４７において、コピー進捗率情報６１は、コピー進捗率「０％」を表しており、コピー進捗ビットマップ６２を構成する全てのビットは“０”である。その後、移行先ＳＤＳ１６は、準備指示に対する応答として、処理完了を、移行マネージャ２０へ通知する。ステップ１１４へ進む。【００６９】
ステップ１１４：  移行マネージャ２０は、定期的に又は不定期的に、移行先ＳＤＳ１６に、コピー進捗率の問合せを送信し、その問合せに対する応答として、コピー進捗率の回答を受信する。このステップ１１４の処理と並行して、図７のステップ１２４の処理が実施される。なお、移行先ＳＤＳ１６は、移行マネージャ２０からの問合せを受けることなしに定期的に又は不定期的にコピー進捗率を移行マネージャ２０に通知してもよいし、コピー進捗率が“１００％”になったとことを検出したときにコピー完了を移行マネージャ２０に通知してもよい。いずれにしても、移行マネージャ２０は、移行先ＳＤＳ１６からの情報から、コピー完了の有無がわかる。【００７０】
図７は、アクセス先切替え処理のシーケンス図である。図７の処理は、ステップ１１０の完了後にステップ１１４と並行に実施されてもよい。また、図７の処理は、図１のステップ２の別の一部に対応する。【００７１】
ステップ１２４：  移行マネージャ２０が、ホスト１０へ、移行先ＳＤＳ１６のアドレス（仮想ネットワーク上のアドレス）の通知を送信する。ステップ１２６へ進む。【００７２】
ステップ１２６：  ホスト１０は、アドレスの通知に応答して、アクセス先のアドレスを、移行元ＳＤＳ１４のアドレスから移行先ＳＤＳ１６のアドレスへ切り替える。切り替えは、手動により行われてもよいし、ホスト１０で実行されるサーバエージェントにより行われてもよい。その後、アドレスの通知に対する応答として、ホスト１０が、処理完了を、移行マネージャ２０に通知する。ステップ１２７へ進む。【００７３】
ステップ１２７：  移行マネージャ２０は、移行先ＳＤＳ１６へ、ＶＯＬ移行指示を送信する。ＶＯＬ移行指示では、例えば、移行元情報（移行元ＶＯＬ２６Ｓの識別情報を含んだ情報）と移行先情報（移行先ＶＯＬ２６Ｄの識別情報を含んだ情報）とが指定されている。移行先ＳＤＳ１６は、ＶＯＬ移行指示に応答して、移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへのコピーを実施する。コピーの進捗に応じて、移行先ＳＤＳ１６によりコピー情報４７が更新される。例えば、ホスト１０から移行先ＶＯＬ２６Ｄに新たにデータが書き込まれたとする。データの書込み先のＶＯＬ領域のコピー先のＶＯＬ領域に対応したビットが、“０”の場合、データ書き込みの前に当該データが移行元ＶＯＬ２６Ｓから移行先ＶＯＬ２６Ｄへコピーされた上でデータ書き込みが実施され、ビットが“１”へ更新される。データの書込み先のＶＯＬ領域のコピー先のＶＯＬ領域に対応したビットが、“１”の場合、データ書き込みが実施される。全てのビットが“１”になるまで、データコピーは継続する。【００７４】
図８は、移行元ＳＤＳ消去処理のシーケンス図である。図８の処理は、図１のステップ３に対応する。【００７５】
ステップ１３８：  移行マネージャ２０が、定期的に又は不定期的に、コピー進捗率の問合せを移行先ＳＤＳ１６に送信し、その問合せに対する回答を移行先ＳＤＳ１６から受信する。受信した回答が表すコピー進捗率が“１００％”でなければ、移行マネージャ２０は、例えば一定時間後に再度、コピー進捗率の問合せを移行先ＳＤＳ１６に送信する。受信した回答が表すコピー進捗率が“１００％”であれば、コピー完了が検出されたことに相当する。ステップ１４０へ進む。なお、コピー完了が検出された場合（例えば、コピー進捗率“１００％”を回答して移行マネージャ２０から確認を受信した場合）、移行先ＳＤＳ１６は、コピー進捗率情報６１が表すコピー進捗率を、“１００％”から“null”に更新する。【００７６】
ステップ１４０：  移行マネージャ２０が、仮想管理部２２へ、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓの消去指示を送信する。ステップ１４２へ進む。【００７７】
ステップ１４２：  仮想管理部２２は、消去指示に応答して、移行元ＳＤＳ１４及び移行元ＶＯＬ２６Ｓを消去する。消去することで、移行元ＳＤＳ１４に対し割り当てられていた仮想メモリ等の仮想リソースが解放され（他のＶＭに割当て可能な状態となり）、且つ、仮想管理部２２の管理対象から、仮想装置（移行元ＳＤＳ１４としてのＶＭ）も解放される。よって、移行元ＳＤＳ１４自体が仮想管理部２２の管理対象から解放されることで、管理ＶＭ１８の管理対象から、移行元ＳＤＳ１４としてのＶＭも削除される。仮想管理部２２は、消去指示に対する応答として、処理完了を移行マネージャ２０へ通知する。ステップ１４４へ進む。【００７８】
ステップ１４４：  移行マネージャ２０は、処理を終了する。【００７９】
ＳＤＳは、仮想化されたリソースが割り当てられるＶＭの一例である。ＳＤＳ自体では、リソースの確保及び解放のいずれもできない。しかし、本実施例によれば、仮想リソースを提供したりＶＭの生成及び消去を制御したりする仮想管理部２２が解釈可能な指示を送信する移行マネージャ２０が別途設けられる。移行マネージャ２０と仮想管理部２２との連携（移行マネージャ２０からの指示とその指示に応答しての仮想管理部２２の動作）により、移行先ＶＯＬ２６Ｄが移行先ＳＤＳ１６に関連付けられ、移行元ＶＯＬ２６Ｓのデータが移行先ＶＯＬ２６Ｄにコピーされ、そのコピーの完了の検出後に、移行元ＳＤＳ１４に割り当てられていた仮想リソースを含む移行元ＳＤＳ自体を解放することが可能となる。これにより、リソースの利用効率が向上し、又、仮想リソースやＳＤＳ管理にかかるコストの低減を図ることが可能となる。
【実施例２】
【００８０】
実施例２を説明する。実施例１との相違点を主に説明し、実施例１との共通点については説明を省略又は簡略する。【００８１】
図９は、実施例２の概略を示す。【００８２】
メインサイト９００Ｍにおける計算機システム１００Ｍが、移行元ストレージ１５２を含む。バックアップ元であるＰＶＯＬ１５４が移行元ストレージ１５２にマウントされている。移行元ストレージ１５２は、ＳＤＳであってもよいし、物理装置の一例であってもよい。移行元ストレージ１５２及び後述の移行先ストレージ１５０のうちの少なくとも１つから構成されるシステムを以下「メインストレージ」と総称する。「ＰＶＯＬ」は、プライマリＶＯＬの略であり、第１の論理ボリュームのコピー元論理ボリュームの一例である。ホスト９０１がメインサイト９００Ｍに存在する。【００８３】
リモートサイト９００Ｒにおける計算機システム１００Ｒが、仮想管理部２２を有する。仮想管理部２２上に、移行元ＳＤＳ１４があり、バックアップ先であるＳＶＯＬ２６Ｓがマウントされている。ＳＶＯＬ２６Ｓは、セカンダリＶＯＬの略であり、第１の論理ボリュームの一例であり、上述の移行元ＶＯＬに相当する。ＰＶＯＬ１５４とＳＶＯＬ２６Ｓのペアが構成されている。【００８４】
ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへ、データがリモートコピー（バックアップコピー）されている。ＰＶＯＬ１５４とＳＶＯＬ２６Ｓのペアは、同期ペアであっても非同期ペアであってもよい。【００８５】
「同期ペア」とは、ホスト９０１からのＩ／Ｏ要求に従いＰＶＯＬ１５４に新たに書き込まれたデータ（この段落において「データＸ」）がＳＶＯＬ２６Ｓにコピーされた場合にそのＩ／Ｏ要求の応答がホスト９０１に返るペアである。「ＰＶＯＬ１５４にデータＸが書き込まれた」とは、実際にＰＶＯＬ１５４にデータＸが書き込まれたことであるが、メインストレージのキャッシュメモリにデータＸが書き込まれたことであってもよい。また、「ＳＶＯＬ２６ＳにデータＸがコピーされた」とは、実際にＳＶＯＬ２６ＳにデータＸが書き込まれたことであるが、移行元ＳＤＳ１４のキャッシュメモリ（仮想メモリ４６Ｓのうちの少なくとも一部の領域）にデータＸが書き込まれたことであってもよい。一方、「非同期ペア」とは、ホスト９０１からのＩ／Ｏ要求に従いＰＶＯＬ１５４に新たにデータＸが書き込まれたときにそのＩ／Ｏ要求の応答がホスト９０１に返るペアである（データＸのＳＶＯＬ２６Ｓへのコピーは応答が返った後に行われてよい）。【００８６】
実施例２では、リモートサイト９００Ｒにおいて移行元ＳＤＳ１４から移行先ＳＤＳ１６へ移行することに加えて、メインサイト９００Ｍにおいて移行元ストレージ１５２から移行先ストレージ１５０へ移行することが行われる。ＰＶＯＬ１５４は、移行元ストレージ１５２経由に移行先ストレージ１５０に関連付けられる。このため、移行先ストレージ１５０が、ネットワーク（例えばＬＡＮ（Local Area Network））９１２を介して、ＰＶＯＬ１５４の識別情報を指定したＩ／Ｏ要求を受信した場合、そのＩ／Ｏ要求に従うＩ／Ｏは、移行先ストレージ１５０及び移行元ストレージ１５２経由で実行される。ネットワーク９１２は、物理的な通信ネットワークであっても仮想ネットワークであってもよい。【００８７】
メインストレージは、管理サーバ１８Ｍで実行されるメイン移行マネージャ２０Ｍが管理する。管理サーバ１８Ｍは、物理装置の一例であってもよいし仮想装置の一例であってもよい。メイン移行マネージャ２０Ｍは、メインストレージを管理するコンピュータプログラムである。【００８８】
リモートサイト９００Ｒには、管理ＶＭ１８Ｒがある。管理ＶＭ１８Ｒで実行される移行マネージャを、「リモート移行マネージャ」と呼ぶ。リモート移行マネージャ２０Ｒが、仮想管理部２２に指示を出して、移行先ＳＤＳ１６を作成する。移行先ＳＤＳ１６には、移行先ＳＶＯＬ２６Ｄが関連付けられている。移行先ＳＶＯＬ２６Ｄは、第２の論理ボリュームの一例であり、ＳＶＯＬ２６Ｓの移行先であり、上述の移行先ＶＯＬに相当する。【００８９】
計算機システム１００Ｍは、仮想管理部を含んでもよく、ホスト９０１、ネットワーク９１２、移行元ストレージ１５２、移行先ストレージ１５０１５２及び管理サーバ１８Ｍのうちの少なくとも１つが仮想管理部により生成又は管理される仮想的なエレメントでもよい。【００９０】
図示しないが、計算機システム１００Ｍ及び１００Ｒ間は、ネットワーク（以下、システム間ネットワーク）を介して接続されている。システム間ネットワーク（例えば、ＬＡＮ又はＷＡＮ（Wide Area Network））経由でリモートコピーが行われる。なお、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピーは、移行元ストレージ１５２及び移行元ＳＤＳ１４の各々の移行前は、移行元ストレージ１５２、システム間ネットワーク（図示せず）及び移行元ＳＤＳ１４経由で行われる。【００９１】
＜ステップ１＞【００９２】
リモートサイト９００Ｒにおいて、リモート移行マネージャ２０Ｒからの指示に応答して、移行先ＳＤＳ１６が作成される。メインサイト９００Ｍでは、ＰＶＯＬ１５４が、移行元ストレージ１５２経由に移行先ストレージ１５０に関連付けられる（ＰＯＶＬ１５４の外部接続）。ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピー（データバックアップ）と並行に、ＰＶＯＬ１５４から移行先ＳＶＯＬ２６Ｄへリモートコピー（並行データバックアップ）を実施するよう、メイン移行マネージャ２０Ｍが移行先ストレージ１５０へ指示する。この指示に応答して、並行リモートコピー（並行データバックアップ）が実施される。なお、ＰＶＯＬ１５４と移行先ＳＶＯＬ２６Ｄとがペアにされていてもよい。つまり、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアに加えて、ＰＶＯＬ１５４と移行先ＳＶＯＬ２６Ｄとのペアがあってもよい。【００９３】
ＰＶＯＬ１５４及び移行元ＳＶＯＬ２６Ｓの各々の外部接続後、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピーは、移行元ストレージ１５２、システム間ネットワーク（図示せず）、移行元ＳＤＳ１４経由で行われる。ＰＶＯＬ１５４から移行先ＳＶＯＬ２６Ｄへの並行リモートコピーは、移行元ストレージ１５２、移行先ストレージ１５０、システム間ネットワーク（図示せず）及び移行先ＳＤＳ１６経由で行われる。【００９４】
＜ステップ２＞【００９５】
並行リモートコピーの完了が検出された場合、メイン移行マネージャ２０Ｍは、移行元ストレージ１５２に対し、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアを分割する指示であるペア分割指示を送信する。リモート移行マネージャ２０Ｒは、仮想管理部２２に対し、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓの消去指示を送信する。その消去指示に応答して、仮想管理部２２により、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓが消去される。【００９６】
実施例２によれば、リモートコピー（データバックアップ）導入時にも、移行元ＳＤＳ１４及び移行元ＳＶＯＬ２６Ｓを消去することで、リソース及びコストのうちの少なくとも１つを低減することが期待できる。また、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピーを止めずにＳＤＳ移行を実施できるため、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓのペアが同期ペアか非同期ペアかに関わらず、リモートサイト９００ＲでのＳＤＳ移行を実行することが可能である。本実施例では、例えば、移行元ＳＤＳ１４のベンダと移行先ＳＤＳ１６のベンダが違っており、且つ、移行先ストレージ１５０のベンダと移行先ＳＤＳ１６のベンダが同じである。【００９７】
実施例２で行われる処理は、図５の処理の全部と、図６の処理の一部（ステップ９８〜ステップ１０４まで）と、並行リモートコピーと、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓの消去とが行われる。実施例２では、ＳＶＯＬ２６Ｓが、移行先ＳＤＳ１６に関連付けられてもよい。しかし、その場合でも、少なくとも並行リモートコピーが完了するまでは、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピー継続のために（更に、例えば、ホスト９０１からのＩ／Ｏ要求受け付けを停止することなく）、移行元ＳＤＳ１４は必要である。【００９８】
図１０は、実施例２に係る並行リモートコピー処理のシーケンス図である。【００９９】
ステップ１７６：  メイン移行マネージャ２０Ｍが、移行先ストレージ１５０へ並行リモートコピー指示を送信する。並行リモートコピー指示は、ＰＶＯＬ１５４から移行先ＳＶＯＬ２６Ｄへの並行リモートコピー（ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピーと並行して行うリモートコピー）を開始する指示である。ステップ１７８へ進む。【０１００】
ステップ１７８：  移行先ストレージ１５０は、並行リモートコピー開始指示に応答して、並行リモートコピーを開始し、そのコピーの進捗に応じてコピー情報４７を更新する。実施例２では、移行先ストレージ１５０及び移行先ＳＤＳ１６のうちの少なくとも１つ、例えば、移行先ストレージ１５０が、コピー情報を保持し且つ更新する。もしくは、メイン移行マネージャ２０Ｍ及びリモート移行マネージャ２０Ｒのうちの少なくとも１つが、コピー情報を保持し且つ更新してもよい。コピー情報は、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへの第１のリモートコピーに関する第１のコピー情報と、ＰＶＯＬ１５４から移行先ＳＶＯＬ２６Ｄへの第２のリモートコピー（並行リモートコピー）に関する第２のコピー情報とのうちの、少なくとも第２のコピー情報を含んでよい。第１及び第２のコピー情報の各々の構成は、上述のコピー情報４７の構成と同じでよい。すなわち、第１のコピー情報は、第１のリモートコピーに関する進捗率である第１のコピー進捗率を表す第１のコピー進捗率情報と、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとの間の差分を表すビットマップである第１のコピー進捗ビットマップとを含んでよい。第２のコピー情報は、第２のリモートコピーの進捗率である第２のコピー進捗率を表す第２のコピー進捗率情報と、ＰＶＯＬ１５４と移行先ＳＶＯＬ２６Ｄとの間の差分を表すビットマップである第２のコピー進捗ビットマップとを含んでよい。第１のコピー進捗ビットマップの全ビットが“１”であれば、第１のコピー進捗率は“１００％”である。同様に、第２のコピー進捗ビットマップの全ビットが“１”であれば、第２のコピー進捗率は“１００％”である。並行リモートコピー開始指示に対する応答として、移行先ストレージ１５０が、処理完了を、メイン移行マネージャ２０Ｍに通知する。ステップ１８０へ進む。【０１０１】
ステップ１８０：  メイン移行マネージャ２０Ｍが、定期的に又は不定期的に、移行先ストレージ１５０に、第１及び第２のコピー進捗率のうちの少なくとも第２のコピー進捗率の問合せを送信し、その問合せに対する応答として、第２のコピー進捗率の回答を受信する。なお、移行先ストレージ１５０は、メイン移行マネージャ２０Ｍからの問合せを受けることなしに定期的に又は不定期的に少なくとも第２のコピー進捗率をメイン移行マネージャ２０Ｍに通知してもよいし、第２のコピー進捗率が“１００％”になったとことを検出したときに並行リモートコピーの完了をメイン移行マネージャ２０Ｍに通知してもよい。いずれにしても、メイン移行マネージャ２０Ｍは、移行先ストレージ１５０からの情報から、並行リモートコピーの完了の有無がわかる。【０１０２】
図１１は、実施例２に係る移行元ＳＤＳ消去処理のシーケンス図である。【０１０３】
ステップ２０２：  メイン移行マネージャ２０Ｍが、定期的に又は不定期的に、第２のコピー進捗率の問合せを移行先ストレージ１５０に送信し、その問合せに対する回答を移行先ストレージ１５０から受信する。受信した回答が表す第２のコピー進捗率が“１００％”でなければ、メイン移行マネージャ２０Ｍは、例えば一定時間後に再度、第２のコピー進捗率の問合せを移行先ストレージ１５０に送信する。受信した回答が表す第２のコピー進捗率が“１００％”であれば、並行リモートコピー完了が検出されたことに相当する。ステップ２０４へ進む。なお、並行リモートコピー完了が検出された場合（例えば、第２のコピー進捗率“１００％”を回答してメイン移行マネージャ２０Ｍから確認を受信した場合）、移行先ストレージ１５０は、第２のコピー進捗率情報が表す第２のコピー進捗率を、“１００％”から“null”に更新する。【０１０４】
ステップ２０４：  メイン移行マネージャ２０Ｍが、移行元ストレージ１５２及び移行先ストレージ１５０のうちの少なくとも１つへ、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアを分割する指示であるペア分割指示を送信する。本実施例では、ペア分割指示は移行元ストレージ１５２に送信される。ステップ２０６へ進む。【０１０５】
ステップ２０６：  移行元ストレージ１５２は、ペア分割指示に応答して、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアを分割する。これにより、第１のリモートコピーが停止する。すなわち、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓ間に差分があっても、ＰＶＯＬ１５４からＳＶＯＬ２６Ｓへのリモートコピーが行われない。移行元ストレージ１５２が、ペア分割指示に対する応答として、処理完了を、メイン移行マネージャ２０Ｍに通知する。ステップ２０８へ進む。【０１０６】
ステップ２０８：  メイン移行マネージャ２０Ｍが、リモート移行マネージャ２０Ｒへ、メインサイト処理完了を通知する。ステップ２１０へ進む。その後、ステップ２１４へ進み、メイン移行マネージャ２０Ｍは処理を終了する（ステップ２１４）。【０１０７】
ステップ２１１：  リモート移行マネージャ２０Ｒが、メインサイト処理完了の通知に応答して、仮想管理部２２へ、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓの消去指示を送信する。つまり、メインサイト処理完了の通知の受信が、リモート移行マネージャ２０Ｒにとって、並行リモートコピー完了の検出である。ステップ２１２へ進む。【０１０８】
ステップ２１２：  仮想管理部２２が、消去指示に応答して、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓを消去する。仮想管理部２２は、消去指示に対する応答として、処理完了をリモート移行マネージャ２０Ｒへ通知する。その後、ステップ２１６へ進み、リモート移行マネージャ２０Ｒは処理を終了する（ステップ２１６）。
【実施例３】
【０１０９】
実施例３を説明する。実施例２との相違点を主に説明し、実施例２との共通点については説明を省略又は簡略する。【０１１０】
図１２は、実施例３の概略を示す。【０１１１】
ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアである第１のペアに加えて、ＳＶＯＬ２６Ｓと移行先ＳＶＯＬ２６Ｄとのペアである第２のペアがある。【０１１２】
並行リモートコピー（並行データバックアップ）に代えて、ＳＶＯＬ２６Ｓから移行先ＳＶＯＬ２６Ｄへのデータコピーである内部コピーが実施される。具体的には、リモート移行マネージャ２０Ｒが、仮想管理部２２、移行元ＳＤＳ１４及び移行先ＳＤＳ１６のうちの少なくとも１つに対し、ＳＶＯＬ２６Ｓから移行先ＳＶＯＬ２６Ｄへの内部コピーを指示する。この指示に応答して、ＳＶＯＬ２６Ｓから移行先ＳＶＯＬ２６Ｄへの内部コピー（例えば、移行元ＳＤＳ１４及び移行先ＳＤＳ１６経由の内部コピー）が実行される。内部コピーの完了が検出された場合に、移行元ＳＤＳ１４及びＳＶＯＬ２６Ｓが消去される。【０１１３】
実施例３によれば、内部コピーが実施されるため、実施例２よりもメインサイト９００Ｍとリモートサイト９００Ｒ間の通信帯域（システム間ネットワーク（図示せず）の通信帯域）を節約することができる。【０１１４】
なお、実施例３では、第１のペア（ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペア）は同期ペアであるが、第１のペアは非同期ペアでもよい。【０１１５】
ホスト書込みビットマップ（図示せず）が用意される。ホスト書込みビットマップは、ＰＶＯＬ１５４のうちのいずれのＶＯＬ領域にデータが書き込まれたかを表す。ホスト書込みビットマップは、ＰＶＯＬ１５４を構成する複数のＶＯＬ領域にそれぞれ対応した複数のビットを有する。新たにデータが書き込まれたＶＯＬ領域に対応するビットが“１”とされる。ホスト書込みビットマップは、移行先ストレージ１５０により保持され更新される。【０１１６】
ホスト書込みビットマップは、移行先ストレージ１５０及びメイン移行マネージャ２０Ｍの両方に保持される。移行先ストレージ１５０が持つホスト書込みビットマップと、メイン移行マネージャ２０Ｍが持つホスト書込みビットマップは同期していてよい。【０１１７】
図１３は、実施例３に係るＰＶＯＬ更新状況通知処理のシーケンス図である。【０１１８】
「ＰＶＯＬ更新状況通知処理」とは、ＰＶＯＬ１５４の更新状況を通知する処理である。この処理が必要な理由は、ＰＶＯＬ１５４にデータが新たに書き込まれたことによりコピー済領域（ＳＶＯＬ２６ＳにおけるＶＯＬ領域であって内部コピーが完了した領域）に新たにデータがコピーされた場合、再度そのコピー済領域について内部コピーを必要になるためである。【０１１９】
メイン移行マネージャ２０Ｍは、定期的に又は不定期的に、リモート移行マネージャ２０Ｒからの問合せに応答して（又は問合せ無しに）、ＰＶＯＬ更新状況を、ホスト書込みビットマップを保持する移行先ストレージ１５０から特定し、リモート移行マネージャ２０Ｒに通知する。通知されるＰＶＯＬ更新状況は、メイン移行マネージャ２０Ｍが持つホスト書込みビットマップの複製でもよいし、更新されたＶＯＬ領域のＩＤ（例えばアドレス）を含んだ情報でもよい。【０１２０】
図１４は、実施例３に係る内部コピー処理のシーケンス図である。【０１２１】
ステップ２２２：  リモート移行マネージャ２０Ｒが、移行先ＳＤＳ１６へ、内部コピー開始指示を送信する。ステップ２２４へ進む。【０１２２】
ステップ２２４：  移行先ＳＤＳ１６は、内部コピー開始指示に応答して、ＳＶＯＬ２６Ｓから移行先ＳＶＯＬ２６Ｄへの内部コピーを開始し、内部コピーの進捗に応じてコピー情報４７を更新する。移行先ＳＤＳ１６は、内部コピー開始指示に対する応答として、処理完了をリモート移行マネージャ２０Ｒに通知する。ステップ２２６へ進む。【０１２３】
ステップ２２６：  リモート移行マネージャ２０Ｒは、ＰＶＯＬ更新状況（ホスト書込みビットマップを基に特定された情報）を参照する。リモート移行マネージャ２０Ｒは、追加で内部コピーを実施しなければならない箇所である対象箇所（ＶＯＬ領域）があれば、対象箇所のアドレスを指定した追加内部コピー指示を移行先ＳＤＳ１６へ通知し、且つ、対象箇所に対応したビット（リモート移行マネージャ２０Ｒが保持するホスト書込みビットマップ中のビット）を“１”から“０”に更新する。追加内部コピー指示に応答して、ＳＶＯＬ２６Ｓ内のＶＯＬ領域（対象箇所アドレスに該当するＶＯＬ領域）から、移行先ＳＶＯＬ２６Ｄ内のＶＯＬ領域（対象箇所アドレスに該当するＶＯＬ領域）にデータがコピーされる（追加内部コピー）。また、対象箇所に対応したビットの更新は、図１３に示した通信により、リモート移行マネージャ２０Ｒからメイン移行マネージャ２０Ｍに通知され、メイン移行マネージャ２０Ｍが、対象箇所に対応したビット（メイン移行マネージャ２０Ｍが保持するホスト書込みビットマップ中のビット）を“１”から“０”に更新する。この更新は、移行先ストレージ１５０が持つホスト書込みビットマップにも反映される。【０１２４】
内部コピーが完了するまで、ステップ２２６が定期的又は不定期的に繰り返される。【０１２５】
図１５は、実施例３に係る移行元ＳＤＳ消去処理のシーケンス図である。【０１２６】
ステップ２４６：  リモート移行マネージャ２０Ｒは、定期的に又は不定期的に、コピー進捗率（内部コピーの進捗率）の問合せを移行先ＳＤＳ１６に送信し、その問合せに対する回答を移行先ＳＤＳ１６ら受信する。受信した回答が表すコピー進捗率が“１００％”であれば、リモート移行マネージャ２０Ｒは、ホスト書込みビットマップを参照し、追加の内部コピーの要否を判断する。要の場合、追加の内部コピーと、それに伴うホスト書込みビットマップ更新とが行われる。不要の場合、ステップ２４８へ進む。なお、ステップ２４６を開始するとき、メイン移行マネージャ２０Ｍが、移行先ストレージ１５０に対し、ホスト９０１からＰＶＯＬ１５４を指定したＩ／Ｏ要求（例えば書込み要求）を受けることを一時停止させてもよい。そして、ステップ２４６が完了したとき、メイン移行マネージャ２０Ｍが、移行先ストレージ１５０に対し、その一時停止を解除させてもよい。【０１２７】
ステップ２４８：  リモート移行マネージャ２０Ｒが、移行元ＳＤＳ１４へ、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアを分割するペア分割指示を送信する。ペア分割指示に応答して、図１１のステップ２０６以降が行われてよい。なお、リモート移行マネージャ２０Ｒが、メイン移行マネージャ２０Ｍにペアの分割を指示し、メイン移行マネージャ２０Ｍが、その指示に応答して、ＰＶＯＬ１５４とＳＶＯＬ２６Ｓとのペアを分割するペア分割指示を、移行元ストレージ１５２に送信してもよい。【０１２８】
実施例３で移行完了した移行先ＳＶＯＬ２６Ｄは、ＰＶＯＬ１５４とペア操作を実施してもよいし（ＰＶＯＬ１５４とペアにされてもよいし）、バックアップデータとして保持していてもよい（ＰＶＯＬ１５４とペアにされず独立していてもよい）。【０１２９】
以上、幾つかの実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。【０１３０】
例えば、実施例１〜３では、移行元ＳＤＳ１４及び移行先ＳＤＳ１６の各々は、ＶＭである。しかし、移行元ＳＤＳ１４は、第１のＶＭで実行されるソフトウェアでよく、移行先ＳＤＳ１６は、第２のＶＭで実行されるソフトウェアであってもよい。第１及び第２のＶＭが、仮想管理部２２により提供された同一種類の第１及び第２のゲストＯＳをそれぞれ実行するようになっていてよい。第１及び第２のゲストＯＳの各々が、移行マネージャ２０（２０Ｒ）又は仮想管理部２２から指示を受けた場合に、その指示に従う処理を実行するようになっていてよい。移行マネージャ２０（２０Ｒ）は、移行元ＳＤＳ１４の消去指示を、仮想管理部２２非経由に第１のＶＭに送信してもよいし、仮想管理部２２に送信してもよい。第１のゲストＯＳが、移行マネージャ２０（２０Ｒ）又は仮想管理部２２から消去指示を受信し、消去指示に応答して、移行元ＳＤＳ１４を消去してもよい。【０１３１】
また、実施例１〜３のうちの少なくとも１つにおいて、移行マネージャ２０、メイン移行マネージャ２０Ｍ及びリモート移行マネージャ２０Ｒのうちの少なくとも１つが、プログラムソースからインストールされてもよい。プログラムソースは、プログラム配布サーバ又は計算機が読み取り可能な記録媒体（例えば非一時的な記録媒体）であってもよい。
【符号の説明】
【０１３２】
１６…移行先ＳＤＳ
【図１】
2017145272.tif 000003
【図２】
2017145272.tif 000004
【図３】
2017145272.tif 000005
【図４】
2017145272.tif 000006
【図５】
2017145272.tif 000007
【図６】
2017145272.tif 000008
【図７】
2017145272.tif 000009
【図８】
2017145272.tif 000010
【図９】
2017145272.tif 000011
【図１０】
2017145272.tif 000012
【図１１】
2017145272.tif 000013
【図１２】
2017145272.tif 000014
【図１３】
2017145272.tif 000015
【図１４】
2017145272.tif 000016
【図１５】
2017145272.tif 000017
【国際調査報告】
2017145272.tif 000018
2017145272.tif 000019