JP5944001B2 - ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法 - Google Patents

ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法 Download PDF

Info

Publication number
JP5944001B2
JP5944001B2 JP2014524977A JP2014524977A JP5944001B2 JP 5944001 B2 JP5944001 B2 JP 5944001B2 JP 2014524977 A JP2014524977 A JP 2014524977A JP 2014524977 A JP2014524977 A JP 2014524977A JP 5944001 B2 JP5944001 B2 JP 5944001B2
Authority
JP
Japan
Prior art keywords
volume
storage device
snapshot
storage
snapshot 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.)
Expired - Fee Related
Application number
JP2014524977A
Other languages
English (en)
Other versions
JP2014534482A (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 JP2014534482A publication Critical patent/JP2014534482A/ja
Application granted granted Critical
Publication of JP5944001B2 publication Critical patent/JP5944001B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Description

本発明は、ストレージ装置及びストレージ装置の制御方法に関し、スナップショット機能が搭載されたストレージ装置及びストレージ装置の制御方法に適用して好適なるものである。
従来、ストレージ装置の機能の1つとして、スナップショットの取得指示を受けた時点において指定された論理ボリューム(以降、これをソースボリュームと称する。)のイメージを保持する、いわゆるスナップショット機能がある。スナップショット機能は、人為的なミスによりデータが消失してしまったときや、所望時点におけるファイルシステムの状態を復元したいときなどに、その時点におけるソースボリュームを復元するために用いられる。
スナップショット機能によりスナップショットが取得された場合、その後、ソースボリュームにデー タが書き込まれるタイミングで、そのデータに上書きされる前のデータ(以下、これを旧データと呼ぶ)が旧データ退避用の論理ボリュームに退避される。つまり、スナップショットの取得指示を受けた時点におけるソースボリュームと、現在のソースボリュームとの差分が旧データとして旧データ退避用の論理ボリュームに退避されることになる。従って、現在のソースボリュームに格納されているデータと、旧データ退避用の論理ボリュームに格納された旧データとを組み合わせることにより、スナップショットの取得時点におけるソースボリュームのデータイメージ(スナップショット)を復元することができる。
このようなスナップショット機能によれば、ソースボリュームの内容をそのまま記憶する場合に比べて、より小さい記憶容量でスナップショットを取得指示された時点のソースボリュームを復元できるという利点がある。
さらに、複数の更新可能なスナップショット(Writable Snapshot:WSS)が提供されている場合に、必要に応じてすべてのスナップショットに更新内容を効率的に反映させる技術も提供されている(特許文献1参照)。特許文献1によれば、例えば、OSがインストールされたボリューム(ゴールデンイメージ:GI)を論理的にコピーすることができるため、高速に仮想マシンを利用可能な状態(デプロイ)にすることができる。また、仮想マシン間でゴールデンイメージを共有するため、ディスク使用量を削減することが可能となる。
例えば、OSへのパッチ適用などによりゴールデンイメージに対して書き込みをする場合、対象となるゴールデンイメージのスナップショットを取得して、パッチデータが取得したスナップショットの差分データとして書き込まれる。スナップショットを読み込む際には、パッチデータが書き込まれた領域への読み込みは差分データに対して、共通領域への読み込みはゴールデンイメージに対して行われる。
仮想マシンを提供する場合に、運用当初は必要となるゴールデンイメージ(OS、パッチのバージョン、インストール済みアプリなど)がわからないため、複数世代(カスケード構成)のゴールデンイメージを持つことがある。また、ストレージ間で最新のゴールデンイメージボリュームをコピーして、コピーしたゴールデンイメージからスナップショットを作成して仮想マシンをデプロイする場合がある。
特開2010−102479号公報
特許文献1では、仮想マシンのスナップショットのデータをストレージ間で移行する際には、スナップショットの世代構成が、移行先のストレージ装置でも維持されることとなる。このため、移行先のストレージ装置に移行元のストレージ装置と同様のゴールデンイメージ及び同一のスナップショットの世代構成が存在しない場合には、スナップショットの正ボリューム(ゴールデンイメージ)データを含む世代構成をフルコピーしなければならず、データ移行に時間がかかるという問題があった。
本発明は以上の点を考慮してなされたもので、移行先のストレージ装置の正ボリュームを利用してスナップショットボリュームを移行することが可能なストレージシステム、管理計算機及びストレージ装置を提案しようとするものである。
かかる課題を解決するために本発明においては、 第1及び第2のストレージ装置と、前記第1及び第2のストレージ装置へのデータの書き込みを要求するホスト計算機と、前記第1及び第2のストレージ装置と前記ホスト計算機とを管理する管理計算機と、がネットワークを介してそれぞれ相互に接続された計算機システムであって、前記管理計算機は、スナップショットボリュームの親ボリュームとなる論理ボリュームに対する差分データを前記スナップショットボリュームにて世代管理する制御部を備え、前記管理計算機の制御部は、指定された世代のスナップショットボリュームの前記管理計算機の入力画面を介しての前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記移行指示対象のスナップショットボリュームの前記指定された世代より前のスナップショットボリュームが前記第2のストレージ装置に存在すると判定された場合に、前記指定された世代のスナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの差分データのみ前記第2のストレージ装置に移行して、前記第2のストレージ装置に存在するスナップショットボリュームに当該第2のストレージ装置に移行した前記差分データを組み合わせることによりスナップショットを作成することを特徴とする、ストレージシステムが提供される。
かかる構成によれば、指定された世代のスナップショットボリュームのコピー指示を受けて、コピー指示対象のスナップショットボリュームの指定された世代より前のスナップショットボリュームが存在する場合に、指定された世代のスナップショットボリュームとコピー先に存在するスナップショットボリュームとの差分データをコピーして、コピー先に存在するスナップショットボリュームにコピーした差分データを対応付ける。これにより、コピー元とコピー先のスナップショットボリュームの世代構成が異なっていても、コピー先に存在するスナップショットボリュームを利用してスナップショットボリュームを移行することができるため、スナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することができる。
本発明によれば、移行先のストレージ装置の正ボリュームを利用してスナップショットボリュームを移行することにより、ストレージ装置間におけるスナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することができる。
本発明の一実施形態の概要を説明する概念図である。 同実施形態の概要を説明する概念図である。 同実施形態の概要を説明する概念図である。 同実施形態に係る計算機システムの全体構成を示すブロック図である。 同実施形態に係るホスト計算機の構成を示すブロック図である。 同実施形態に係るストレージ装置の構成を示すブロック図である。 同実施形態に係るストレージ装置のメモリの構成を示すブロック図である。 同実施形態に係るスナップショット構成管理表の一例を示す図表である。 同実施形態に係るボリュームデータマッピング管理表の一例を示す図表である。 同実施形態に係るボリュームデータマッピング管理表の一例を示す図表である。 同実施形態に係る管理計算機の構成を示すブロック図である。 同実施形態に係る管理計算機のメモリの構成を示すブロック図である。 同実施形態に係る仮想マシン移行前の概要を説明する概念図である。 同実施形態に係る仮想マシン移行後の概要を説明する概念図である。 同実施形態に係る仮想マシン移行処理の詳細を示すフローチャートである。 同実施形態に係るスナップショットボリューム移行処理の詳細を示すフローチャートである。 同実施形態に係る論理ボリューム移行処理の詳細を示すフローチャートである。 同実施形態に係る論理ボリューム移行処理の詳細を示すフローチャートである。 同実施形態に係るスナップショットボリューム移行処理の詳細を示すフローチャートである。
以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態の概要
従来、ストレージ装置の機能の1つとして、スナップショットの取得指示を受けた時点において指定された論理ボリューム(以降、これをソースボリュームと称する。)のイメージを保持する、いわゆるスナップショット機能がある。スナップショット機能は、人為的なミスによりデータが消失してしまったときや、所望時点におけるファイルシステムの状態を復元したいときなどに、その時点におけるソースボリュームを復元するために用いられる。
スナップショット機能によりスナップショットが取得された場合、その後、ソースボリュームにデータが書き込まれるタイミングで、そのデータに上書きされる前のデータ(以下、これを旧データと呼ぶ)が旧データ退避用の論理ボリュームに退避される。つまり、スナップショットの取得指示を受けた時点におけるソースボリュームと、現在のソースボリュームとの差分が旧データとして旧データ退避用の論理ボリュームに退避されることになる。従って、現在のソースボリュームに格納されているデータと、旧データ退避用の論理ボリュームに格納された旧データとを組み合わせることにより、スナップショットの取得時点におけるソースボリュームのデータイメージ(スナップショット)を復元することができる。
このようなスナップショット機能によれば、ソースボリュームの内容をそのまま記憶する場合に比べて、より小さい記憶容量でスナップショット取得指示された時点のソースボリュームを復元できるという利点がある。
さらに、複数の更新可能なスナップショット(Writable Snapshot:WSS)が提供されている場合に、必要に応じてすべてのスナップショットに更新内容を効率的に反映させる技術も提供されている。当該技術によれば、例えば、OSがインストールされたボリューム(ゴールデンイメージ:GI)を論理的にコピーすることができるため、高速に仮想マシンを利用可能な状態(デプロイ)にすることができる。また、仮想マシン間でゴールデンイメージを共有するため、ディスク使用量を削減することが可能となる。
例えば、OSへのパッチ適用などによりゴールデンイメージに対して書き込みをする場合、対象となるゴールデンイメージのスナップショットを取得して、パッチデータを取得したスナップショットの差分データとして書き込まれる。スナップショットを読み込む際には、パッチデータが書き込まれた領域への読み込みは差分データに対して、共通領域への読み込みはゴールデンイメージに対して行われる。
仮想マシンを提供する場合に、運用当初は、必要となるゴールデンイメージ(OS、パッチのバージョン、インストール済みアプリなど)がわからないため、複数世代(カスケード構成)のゴールデンイメージを持つことがある。また、ストレージ間で最新のゴールデンイメージボリュームをコピーして、コピーしたゴールデンイメージからスナップショットを作成して仮想マシンをデプロイする場合がある。
例えば、仮想マシン(図中VMと表記)のボリュームをストレージ0からストレージ1に移行する場合について説明する。図1の移行パターン1は、ストレージ0にはゴールデンイメージ(GI_1)が存在し、ストレージ1にはゴールデンイメージ(GI_0)が存在し、ゴールデンイメージ(GI_1)のスナップショットをストレージ0からストレージ1に移行する場合を示す。従来、移行先のストレージ1に移行元のストレージ0と同様のゴールデンイメージの世代構成が存在しないため、スナップショットの正ボリュームとなるゴールデンイメージ(GI_1)をフルコピーする必要があった。
しかし、本実施の形態では、移行元と移行先のゴールデンイメージの世代構成が異なっていても、移行先のストレージ1にゴールデンイメージ(GI_1)のコピー元であるゴールデンイメージ(GI_0)が存在する場合には、ゴールデンイメージ(GI_0)の差分データのみをストレージ1にコピーして、スナップショットを作成する。これにより、スナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することが可能となる。
また、図2の移行パターン2は、ストレージ0にはゴールデンイメージ(GI_1)及びゴールデンイメージ(GI_0)が存在し、ストレージ1にはゴールデンイメージ(GI_0)が存在し、ゴールデンイメージ(GI_1)のスナップショットをストレージ0からストレージ1に移行する場合を示す。従来、移行先のストレージ1に移行元のストレージ0と同様のゴールデンイメージの世代構成が存在しないため、スナップショットの正ボリュームとなるゴールデンイメージ(GI_1)及びールデンイメージ(GI_0)をフルコピーする必要があった。しかし、本実施の形態では、移行元と移行先のゴールデンイメージの世代構成が異なっていても、移行先のストレージ1にゴールデンイメージ(GI_0)が存在する場合には、ゴールデンイメージ(GI_0)の差分データ(GI_1)のみをストレージ1にコピーして、スナップショットを作成することができる。
また、図3の移行パターン3は、ストレージ0にはゴールデンイメージ(GI_1)が存在し、ストレージ1にはゴールデンイメージ(GI_0)、(GI_1)、(GI_2)が存在し、ゴールデンイメージ(GI_1)のスナップショットをストレージ0からストレージ1に移行する場合を示す。従来、移行先のストレージ1に移行元のストレージ0と同様のゴールデンイメージの世代構成が存在しないため、スナップショットの正ボリュームとなるゴールデンイメージ(GI_1)をフルコピーする必要があった。しかし、本実施の形態では、移行元と移行先のゴールデンイメージの世代構成が異なっていても、移行先のストレージ1にゴールデンイメージ(GI_1)が存在する場合には、既存のゴールデンイメージ(GI_1)からスナップショットを作成することができる。
このように、本実施の形態では、移行元と移行先のゴールデンイメージ(正ボリューム)の世代構成が異なっていても、移行先のストレージ装置の正ボリュームを利用してスナップショットボリュームを移行することを可能としている。これにより、ストレージ装置間におけるスナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することを可能とした。
(2)計算機システムの構成
図4に、計算機システム1のハードウェア構成を示す。図4に示すように、計算機システム1は、1又は複数のネットワーク40を介して接続された第1のストレージ装置10A、第2のストレージ装置10B(以降、第1のストレージ装置10A及び第2のストレージ装置10Bを総称してストレージ装置10と称して説明する場合もある。)、ホスト計算機20及び管理計算機30を備えて構成される。
ネットワーク40は、例えばSAN(Storage Area Network)、LAN、インターネット、公衆回線又は専用回線などから構成される。このネットワーク40を介したホスト計算機20及びストレージ装置10間の通信は、例えばネットワーク40がSANである場合にはファイバーチャネルプロトコルに従って行われ、ネットワーク40がLANである場合にはTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。また、管理計算機30は、ストレージ装置10及びホスト計算機20とLANを介して接続されている。
(2−1)ホスト計算機の構成
図5にホスト計算機20の構成を示す。ホスト計算機20は、管理インタフェース(図中管理I/F)21、メモリ22、バス23、CPU24、記憶装置25、入出力装置26及びイニシエータポート27を備える。
管理インタフェース(図中、管理I/Fと表記)21は、管理計算機30と接続するためのインタフェースである。CPU24は、演算処理装置として機能し、メモリ22に記憶されるプログラムや演算パラメータ等にしたがって、ホスト計算機20の動作を制御する。バス23は、CPU24やメモリ22、記憶装置25などを相互に接続する機能を有する。イニシエータポート27は、ストレージ装置10と接続するためのインタフェースである。
メモリ22は、CPU24によって実行されるプログラム及びCPU24によって必要とされる情報等を記憶する。具体的には、メモリ22には、アプリケーションプログラム221、VMプログラム222、ハイパーバイザ223及びOS224が記憶される。アプリケーションプログラム221は、各種処理を実行する。VMプログラム222は、1または複数の仮想マシンを提供するプログラムである。ハイパーバイザ223は、VMプログラム222によって提供される仮想マシン上で種々のOSを稼働させるプログラムである。OS224は、ホスト計算機20の処理を制御するプログラムである。
記憶装置25は、例えば、HDD(Hard Disk Drive)で構成され、CPU24が実行するプログラムや各種データが格納される。入出力装置26は、例えば、マウス、キーボード、タッチパネル、ボタン、マイク、スイッチおよびレバーなどユーザが情報を入力するための入力手段と、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Display)装置およびランプなどの表示装置などから構成される。
(2−2)ストレージ装置の構成
次に、ストレージ装置10の構成を示す。図6に示すように、ストレージ装置10は、ターゲットポート11、CPU12、バス13、キャッシュメモリ14、メモリ15、管理インタフェース(図中管理I/F)16、記憶装置17及びイニシエータポート18から構成される。
ターゲットポート11は、ホスト計算機20と接続するためのインタフェースであって、ホスト計算機20に対応するIP(Internet Protocol)アドレスやWWN(World Wide Name)などの固有のネットワークアドレスがそれぞれ割り当てられる。また、イニシエータポート18は、ホスト計算機20に記憶装置17の記憶領域上に設定される1または複数の論理ボリュームを提供するインタフェースであって、論理ボリュームに対応するIP(Internet Protocol)アドレスやWWN(World Wide Name)などの固有のネットワークアドレスがそれぞれ割り当てられる。
CPU12は、メモリ15に記憶されるプログラムを実行することによって、各種処理を行う。バス13は、CPU12、キャッシュメモリ14、メモリ15及び記憶装置17などを相互に接続する機能を有する。
キャッシュメモリ14は、例えばSDRAM(Synchronous Dynamic Random Access Memory)等の揮発メモリから構成され、CPU12により処理されたデータ入出力等の処理結果を一時的に格納する。メモリ15は、CPU12によって実行される各種制御プログラム及びCPU12によって必要とされる情報等を格納するために用いられるほか、ホスト計算機20から与えられるリードコマンドやライトコマンド等の各種コマンドを一時的に保持するために用いられる。
管理インタフェース(図中管理I/F)16は管理計算機30と接続するためのインタフェースである。
記憶装置17は、CPU12によりRAID(Redundant Arrays of Inexpensive Disks)方式で運用される。1又は複数の記憶装置17により提供される物理的な記憶領域上に、1又は複数の論理ボリュームが設定される。そしてデータは、この論理ボリュームVOL内に所定大きさのブロック(以下、これを論理ブロックと呼ぶ)を単位として記憶される。
各論理ボリュームには、それぞれ固有の識別番号(以下、これをLUN(Logical Unit number)と呼ぶ)が付与されると共に、各論理ブロックには、それぞれ対応する論理ボリューム内で固有の識別番号(以下、これをLBA(Logical Block Address)と呼ぶ)が付与される。本実施の形態の場合、データの入出力は、これらLUN及びLBAを組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
また、上記したメモリ15には、図7に示すように、スナップショット構成管理表151、ボリュームデータマッピング管理表152、ボリュームコピープログラム153及びスナップショットボリューム移行プログラム154が格納されている。
ここで、ストレージ装置10に搭載されたスナップショットの論理構成について説明する。スナップショットは、ソースボリューム、ターゲットボリューム及びデータプールの3つのボリュームから構成される。
ソースボリュームは、ホスト計算機20に提供される論理ボリュームであり、ホスト計算機20からのデータが読み書きされる。このソースボリュームは、通常の実体を有する論理ボリューム及び実態を有さない仮想的な論理ボリュームのいずれであってもかまわない。
ターゲットボリュームは、スナップショットのデータを保持する仮想的な論理ボリュームであり、ソースボリュームとコピーペアに設定される。データプールは、スナップショットの管理情報と、ソースボリュームから退避された旧データとが格納される論理ボリュームである。
スナップショットが取得された場合、その後にソースボリュームを対象とするライトコマンドがストレージ装置10に与えられると、そのライトコマンドに基づくライト処理により更新される直前のソースボリューム120内のデータ(旧データ)がデータプールに退避される。そして、データプールに退避されたデータと、ソースボリュームに残存するデータ(更新されていないデータ)とを組み合わせることで、かかるライト処理によりデータが更新される直前のソースボリューム120のデータイメージ(スナップショット)を復元することができる。
例えば、ストレージ装置10では、同一のソースボリュームに対して最大1024個のターゲットボリュームを設定することができる。この場合、ストレージ装置10は、同一のソースボリュームに対して最大1024個のスナップショットを取得することができる。以下、論理ボリュームのデータイメージであるスナップショットを仮想的なボリュームとして扱う場合に、スナップショットボリュームと称して説明している。
スナップショット構成管理表151は、論理ボリューム(ソースボリューム)とスナップショットボリューム(ターゲットボリューム)との対応関係を管理するテーブルである。図8に示すように、スナップショット構成管理表151は、LUN欄1511及び親LUN欄1512から構成される。図8では、第1のストレージ装置10Aのスナップショット構成管理表を151Aとし、第2のストレージ装置10Bのスナップショット構成管理表を151Bとしている。LUN欄1511には、論理ボリュームの識別番号が格納される。親LUN欄1512には、LUN欄1511のコピー元となる論理ボリュームの識別番号が格納される。
例えば、スナップショット構成管理表151Aは、第1のストレージ装置10Aに3つのボリューム101、102及び103が存在することを示す。そして、ボリューム101はスナップショットボリュームの親ボリュームであり、ボリューム102は親ボリューム101をコピーして生成されたスナップショットボリュームであり、ボリューム103はスナップショットボリューム102をコピーして生成されたスナップショットボリュームであることが示されている。また、スナップショット構成管理表151Bは、第2のストレージ装置10Bに1つのボリューム201が存在することを示す。ボリューム201は、スナップショットボリュームの親ボリュームである。また、いずれのボリュームがOSが搭載されたスナップショットボリューム(ゴールデンイメージ)か、仮想マシンに利用されるスナップショットボリュームかは、後述する管理計算機30によって管理されている。
また、ボリュームデータマッピング管理表152は、ボリュームの各論理ブロックのアドレスを管理するテーブルである。図9に示すように、ボリュームデータマッピング管理表152は、LUN欄1521、論理アドレス欄1522、物理アドレス欄1523から構成される。図9では、第1のストレージ装置10Aのボリュームデータマッピング管理表を152Aとし、第2のストレージ装置10Bのボリュームデータマッピング管理表を152Bとしている。LUN欄1521には、ボリュームの識別番号が格納される。論理アドレス欄1522には、ボリューム内の各論理ブロックに対応するアドレスが格納される。また、物理アドレス欄1523には、各論理ブロックのデータが実際に格納されている記憶領域のアドレスが格納される。
例えば、ボリュームデータマッピング管理表152Aは、第1のストレージ装置10Aの3つのボリューム101、102及び103の各論理ブロックのアドレスを示している。上記したように、ボリューム102はボリューム101をコピーして生成されたスナップショットボリュームであるが、ボリューム102のうち、論理アドレスL2001で示される論理ブロックの物理アドレスにはL0001が格納されている。物理アドレスL001は、ボリューム101の論理アドレスである。また、論理アドレスL2002で示される論理ブロックの物理アドレスはP1001である。ボリューム102の物理アドレスにコピー元のボリューム101の論理アドレスではなく、物理アドレスが格納されている場合には、当該アドレスで示される論理ブロックは更新されており、当該論理ブロックはボリューム101との差分データであることがわかる。
また、ボリュームコピープログラム153は、スナップショットボリュームを移行する際に、必要な論理ボリューム及びスナップショットボリュームをコピーする機能を有する。また、スナップショットボリューム移行プログラム154は、管理計算機30から、移行対象となるスナップショットボリュームの差分データやアドレスマップを取得して、ストレージ装置10に反映させる機能を有する。管理計算機30から取得したスナップショットボリュームの差分データの情報は、スナップショット構成管理表151に反映される。また、スナップショットボリュームのアドレスマップの情報は、ボリュームデータマッピング管理表152に反映される。
例えば、図10に、第1のストレージ装置10Aのボリューム103を第2のストレージ装置10Bに移行した場合のボリュームデータマッピング管理表152を示す。ボリューム103移行後の第1のストレージ装置10Aのボリュームデータマッピング管理表を152Cに示し、ボリューム103移行後の第2のストレージ装置10Bのボリュームデータマッピング管理表を152Dに示す。
ボリュームデータマッピング管理表152Dに示すように、移行後のボリューム103の論理アドレスは変更されない。また、物理アドレスについては、コピー元のボリューム102との差分データが格納されている物理アドレスとして、新たなデータ格納場所の物理アドレスが格納される。
(2−3)管理計算機の構成
次に、管理計算機30の構成を示す。管理計算機30は、ストレージ装置10の保守又は管理するためのコンピュータ装置であり、例えば、パーソナルコンピュータ、ワークステーションなどから構成される。また、図11に示すように、管理計算機30は、メモリ31、バス32、CPU33、記憶装置34、入出力装置35及び管理インタフェース(図中管理I/Fと表記)36から構成される。
CPU33は、演算処理装置として機能し、メモリ31に記憶されているプログラムや演算パラメータ等にしたがって、管理計算機30の動作を制御する。バス32は、CPU33やメモリ31、記憶装置34などを相互に接続する機能を有する。記憶装置34は、例えば、HDD(Hard Disk Drive)で構成され、CPU33が実行するプログラムや各種データが格納される。入出力装置35は、例えば、マウス、キーボード、タッチパネル、ボタン、マイク、スイッチおよびレバーなどユーザが情報を入力するための入力手段と、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Display)装置およびランプなどの表示装置などから構成される。
また、上記したメモリ31には、図12に示すように、論理ボリューム管理表311、仮想マシン管理表312及び仮想マシン移行プログラム313が格納されている。
論理ボリューム管理表311は、ゴールデンイメージ(GI)であるボリュームを管理するテーブルであって、ゴールデンイメージ(GI)のLUNや、ゴールデンイメージのコピー履歴などを管理するテーブルである。図13に示すように、論理ボリューム管理表311は、ゴールデンイメージ(GI)ID欄3111、ストレージID欄3112、LUN欄3113、親GIID欄3114、コピー元ゴールデンイメージ(GI)ID欄3115及びOS欄3116から構成される。
ゴールデンイメージ(GI)ID欄3111には、ゴールデンイメージの識別情報が格納される。ストレージID欄3112には、ゴールデンイメージが存在するストレージ装置の識別情報が格納される。LUN欄3113には、ゴールデンイメージのLUNが格納される。親ゴールデンイメージ(GI)ID欄3114には、ゴールデンイメージの更新前のゴールデンイメージ(親ゴールデンイメージ(GI))の識別情報が格納される。コピー元ゴールデンイメージ(GI)ID欄3115には、ゴールデンイメージのコピー元のゴールデンイメージ(コピー元ゴールデンイメージ(GI))の識別情報が格納される。OS欄3116には、ゴールデンイメージ(GI)にインストールされているOSの種類の情報が格納されている。
仮想マシン管理表312は、仮想マシンを形成するスナップショットを管理するテーブルであって、スナップショットがいずれのゴールデンイメージ(GI)かを管理するテーブルである。図13に示すように、仮想マシン管理表312は、仮想マシン(VM)ID欄3121、ストレージID欄3122、LUN欄3123及びデプロイ元ゴールデンイメージ(GI)ID欄3124から構成される。
仮想マシン(VM)ID欄3121には、仮想マシンの識別情報が格納される。ストレージID欄3122には、仮想マシンが存在するストレージ装置10を識別する情報が格納される。LUN欄3123には、仮想マシンを形成するスナップショットボリュームのLUNが格納される。デプロイ元ゴールデンイメージ(GI)ID欄3124には、仮想マシンを形成するスナップショットボリュームのデプロイ元のゴールデンイメージ(GI)IDが格納される。
例えば、図13には、仮想マシン(VM_1)移行前の論理ボリューム管理表311及び仮想マシン管理表312を示す。論理ボリューム管理表311から、第1のストレージ装置10Aには、GI_1及びGI_2の2つのゴールデンイメージ(GI)ボリュームが存在し、GI_2の親GIはGI_1であり、GI_1にはWinがインストールされ、GI_2にはWinSP1がインストールされていることがわかる。また、第2のストレージ装置10Bには、GI_3のゴールデンイメージ(GI)ボリュームが存在し、GI_3のコピー元はGI_2であることがわかる。また、仮想マシン管理表312から、第1のストレージ装置10Aの仮想マシンVM_1のデプロイ元ゴールデンイメージはGI_2であることがわかる。
そして、図14に、仮想マシン(VM_1)移行後の論理ボリューム管理表311及び仮想マシン管理表312を示す。上記したように、第2のストレージ装置10BのGI_3のコピー元は第1のストレージ装置10AのGI_2である。したがって、仮想マシン(VM_1)を第1のストレージ装置10Aから第2のストレージ装置10Bに移行する際には、仮想マシン管理表312Bに示すように、仮想マシン(VM_1)のデプロイ元GI_IDをGI_2からGI_3に変更する。このように、本実施の形態では、仮想マシン(VM_1)を第1のストレージ装置10Aからストレージ装置10Bに移行する際に、移行先のゴールデンイメージ(GI)を利用するため、仮想マシン(VM_1)のゴールデンイメージ(GI)の世代構成のすべてを移行先のストレージ装置10Bに移動させる必要がない。
また、仮想マシン移行プログラム313は、移行指示のあった仮想マシンを形成するスナップショットボリュームを検索して、該ボリュームを移行先のストレージ装置10に移行する機能を有する。具体的に、仮想マシン移行プログラム313は、移行指示のあったスナップショットボリュームの元となる論理ボリューム(デプロイ元ゴールデンイメージ:デプロイ元GI)を特定して、当該論理ボリュームに対応する論理ボリュームが移行先のストレージ装置10に存在するか否かを判定する。そして、移行先のストレージ装置10に対応する論理ボリュームが存在する場合には、該論理ボリュームに移行対象のスナップショットボリュームを対応付ける。
このように、本実施の形態では、移行先のストレージ装置10の論理ボリューム(ゴールデンイメージ:GI)を利用して、スナップショットボリュームの移行処理を行うことができるため、ストレージ装置間におけるスナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することが可能となる。
(3)計算機システムの動作
(3−1)管理計算機による移行処理の詳細
次に、管理計算機30の仮想マシン移行プログラム313によって実行される仮想マシン移行処理について説明する。仮想マシンの移行処理は、管理者等が管理計算機30の入力画面を介してデータ移行を指示することを契機に実行される。なお、以下においては、各種処理の処理主体を「プログラム」として説明するが、実際上、そのプログラムに基づいて管理計算機30のCPU33がその処理を実行することは言うまでもない。以下では、移行元のストレージ装置10を第1のストレージ装置10Aとし、移行先のストレージ装置10を第2のストレージ装置10Bとして説明する。
図15に示すように、まず、仮想マシン移行プログラム313は、移行対象となる仮想マシン(VM)のID及び移行先の第2のストレージ装置10BのIDを取得する(S101)。そして、変数Current_GIに移行対象の仮想マシン(VM)のデプロイ元ゴールデンイメージ(GI)のIDを代入する。例えば、図13に示すように、移行対象の仮想マシンのIDがVM_1であった場合、仮想マシン管理表312を参照して、VM_1のデプロイ元GIのID(GI_2)を変数Current_GIに代入する(S102)
そして、仮想マシン移行プログラム313は、変数Current_GIと同一のOSのゴールデンイメージ(GI)が移行先の第2のストレージ装置10B上に存在するか判定する(S103)。例えば、上記したように、変数Current_GIにGI_2が代入されている場合、仮想マシン移行プログラム313は、論理ボリューム管理表311を参照して移行先の第2のストレージ装置10B上にGI_2と同一OS(WinSP1)が存在するかを判定する。図13の論理ボリューム管理表311を参照すると、ストレージ装置10B上にGI_2と同一OS(WinSP1)のGI_3が存在することがわかる。
ステップS103において、変数Current_GIと同一のOSのゴールデンイメージ(GI)が移行先のストレージ装置10上に存在すると判定された場合には、仮想マシン移行プログラム313は、変数Identical_GIにCurrent_GIと同一OSのゴールデンイメージ(GI)のIDを代入する(S108)。例えば、変数Current_GIにGI_2が代入されている場合には、ステップS108において、変数Identical_GIにGI_2と同一OSのGI_3が代入される。ここで、移行先のストレージ装置10上にCurrent_GIと同一OSのゴールデンイメージ(GI)が複数存在する場合には、ゴールデンイメージ(GI)の性能を考慮して、当該性能への影響が最も少ないゴールデンイメージ(GI)を選択して変数Identical_GIに代入してもよい。
一方、ステップS103において、変数Current_GIと同一のOSのゴールデンイメージ(GI)が移行先の第2のストレージ装置10B上に存在しないと判定された場合には、仮想マシン移行プログラム313は、変数Current_GIの親GIが移行先の第2のストレージ装置10B上に存在するかを判定する(S104)。
ステップS104において、変数Current_GIの親GIが移行先のストレージ装置10上に存在すると判定された場合には、仮想マシン移行プログラム313は、変数Current_GIに変数Current_GIの親GIのIDを代入して(S105)、ステップS103以降の処理を繰り返す。移行先の第2のストレージ装置10Bに仮想マシンのデプロイ元のゴールデンイメージ(GI)と同一のOSが存在しなくとも、当該GIの親GIが存在する場合には、移行先の第2のストレージ装置10Bの親GIを利用して移行先にデプロイ元GIを用意することが可能となる。これにより、仮想マシンのデプロイ元GIの世代構成のすべてを移行先の第2のストレージ装置10Bにコピーする必要がなくなる。
一方、ステップS104において、変数Current_GIの親GIが移行先のストレージ装置10上に存在しないと判定された場合には、仮想マシン移行プログラム313は、ボリュームコピー処理を実行する(S106)。ステップS106におけるボリュームコピー処理は、移行対象の仮想ボリュームのデプロイ元のゴールデンイメージボリュームを移行先の第2のストレージ装置10Bにコピーする処理である。ステップS106における当該ボリュームコピー処理については、後で詳細に説明する。
そして、ステップS106においてゴールデンイメージボリュームのボリュームコピー処理を実行した後、仮想マシン移行プログラム313は、変数Identical_GIに移行先の第2のストレージ装置10Bにコピーしたゴールデンイメージ(GI)のIDを代入する(S107)。
そして、仮想マシン移行プログラム313は、仮想マシン(VM)移行処理を実行して(S109)、処理を終了する。具体的に、仮想マシン移行プログラム313は、仮想マシン(VM)を形成するスナップショットボリュームを移行元の第1のストレージ装置10Aから移行先の第2のストレージ装置10Bに移行する。上記したように、移行対象のスナップショットボリュームのデプロイ元のGIと同一のOSを有するGIか、GIの親GIが移行先の第2のストレージ装置10Bに存在する場合には、移行先の第2のストレージ装置10BのGIを利用してスナップショットボリュームを移行することができる。
(3−1−1)管理計算機によるスナップショット移行処理の詳細
次に、図15のステップS109の仮想マシン(VM)移行処理について説明する。図16に示すように、仮想マシン移行プログラム313は、変数Current_GIに代入されているGIのIDと、移行対象の仮想マシン(VM)のデプロイ元GIのIDが一致するかを判定する(S201)。
ステップS201において、変数Current_GIに代入されているGIのIDと、移行対象の仮想マシン(VM)のデプロイ元GIのIDが一致すると判定された場合には、仮想マシン移行プログラム313は、ステップS203以降の処理を実行する。
一方、ステップS201において、変数Current_GIに代入されているGIのIDと、移行対象の仮想マシン(VM)のデプロイ元GIのIDが一致していないと判定された場合には、仮想マシン移行プログラム313は、変数Current_GIに変数Current_GIの子のGIIDを代入する(S202)。そして、変数Current_GIに代入されているGIのLUN情報を命令送信用バッファに登録する(S203)。
例えば、移行先の第2のストレージ装置10Bに移行対象のスナップショットボリュームのデプロイ元のGIの親GIが存在していたとする。この場合、図15のステップS105において、変数Current_GIに親GIのIDが代入される。そこで、図16のステップS202において、変数Current_GIに変数Current_GIの子GIのIDを代入することにより、移行元の第1のストレージ装置10Aと移行先の第2のストレージ装置10Bとのゴールデンイメージボリュームの差分のGIのLUN情報が命令送信用バッファに登録されることとなる。
そして、仮想マシン移行プログラム313は、移行対象の仮想マシン(VM)のLUN情報を命令送信用バッファに登録する(S204)。続いて、仮想マシン移行プログラム313は、変数Identical_GIのID情報を命令送信用バッファに登録する(S205)。
図15のステップS107及びステップS108に示したように、仮想マシン(VM)を形成するスナップショットボリュームのデプロイ元GIと同一のOSが移行先の第2のストレージ装置10Bに存在する場合には、当該GIのIDが変数Identical_GIに代入される。また、仮想マシン(VM)を形成するスナップショットボリュームのデプロイ元GIと同一のOSが移行先の第2のストレージ装置10Bに存在しない場合には、移行先の第2のストレージ装置10BにボリュームコピーされたGIのIDが変数Identical_GIに代入される。したがって、変数Identical_GIには、移行先において、移行対象のスナップショットボリュームのデプロイ元となるGIボリュームのIDが格納されていることとなる。
続いて、仮想マシン移行プログラム313は、移行元の第1のストレージ装置10Aにスナップショットボリューム移行命令を送信する(S206)。そして、ストレージ装置10間でスナップショットボリュームが移行された後に、仮想マシン移行プログラム313は、移行元の第1のストレージ装置10Aからスナップショットボリューム移行完了通知を受信する(S207)。
ステップS207において、ストレージ装置10Aからスナップショットボリューム移行完了通知を受信した後に、仮想マシン移行プログラム313は、論理ボリューム管理表311及び仮想マシン管理表312を更新する(S208)。ステップS208において、仮想マシン移行プログラム313は、新たに移行先の第2のストレージ装置10Bにゴールデンイメージ(GI)をコピーした場合には、追加したGIのIDに関する情報を論理ボリューム管理表311に加える。また、スナップショットボリュームのデプロイ元GIのIDが、移行元ストレージ装置10AのGIから移行先ストレージ装置10BのGI(GI_3)に変更されるため、仮想マシン管理表312Bに示すように、移行対象の仮想マシン(VM_1)のデプロイ元GIのIDを移行先の第2のストレージ装置10Bのデプロイ元GI(GI_3)に更新する。
(3−1−2)管理計算機による論理ボリューム移行処理の詳細
次に、図15のステップS106におけるボリュームコピー処理の詳細について説明する。図17に示すように、仮想マシン移行プログラム313は、移行対象の仮想マシン(VM)のデプロイ元GIのLUN情報を命令送信用バッファに登録する(S301)。そして、仮想マシン移行プログラム313は、移行元の第1のストレージ装置10Aへボリュームコピー命令を送信する(S302)。そして、ストレージ装置10間でGIのボリュームコピーが完了した後に、仮想マシン移行プログラム313は、移行元の第1のストレージ装置10AかGIのボリュームコピー完了通知を受信する(S303)。
そして、仮想マシン移行プログラム313は、論理ボリューム管理表311を更新する(S304)。ステップS304において、仮想マシン移行プログラム313は、論理ボリューム管理表304に、ボリュームコピーされたGIの情報を加える。
(3−2)ストレージ装置による移行処理の詳細
(3−2−1)ストレージ装置間の論理ボリューム移行処理の詳細
まず、移行元の第1のストレージ装置10Aと移行先の第2のストレージ装置10Bとの間で実行される論理ボリュームの移行処理について説明する。以下に示す論理ボリュームの移行処理は、移行対象のスナップショットボリュームのデプロイ元GIと同一のOSのGIや該GIの親GIが、移行先の第2のストレージ装置10Bに存在しない場合に実行される。
図18に示すように、第1のストレージ装置10Aは、管理計算機30からコピー対象の論理ボリューム(GI)のLUN及び移行先の第2のストレージ装置10BのストレージIDを受信する(S401)。
そして、第1のストレージ装置10Aは、移行先の第2のストレージ装置10Bに論理ユニット(LU)データのコピー命令を送信する(S402)。ここで、LUは、ゴールデンイメージ(GI)の論理ボリュームを意味する。
移行先の第2のストレージ装置10Bは、ステップS402において移行元の第1のストレージ装置10Aから送信されたLUデータのコピー命令を受信する(S403)。
続いて、第1のストレージ装置10Aは、コピー対象のLUのデータを第2のストレージ装置10Bに送信する(S404)。第2のストレージ装置10Bは、ステップS404において第1のストレージ装置10Aから送信されたコピー対象のLUのデータを受信する(S405)。
そして、移行先の第2のストレージ装置10Bは、ステップS405において受信したコピー対象のLUのデータをコピーして、ボリュームデータマッピング管理表152を更新する(S406)。具体的に、第2のストレージ装置10Bは、第1のストレージ装置10Aから送信されたLUのデータをコピーして、LUのデータをコピーした記憶領域の物理アドレスを取得する。そして、取得した物理アドレスを、LUのデータの論理アドレスと対応付けてボリュームデータマッピング管理表152に追加する。
そして、第2のストレージ装置10Bは、LUデータのコピーが完了した旨を第1のストレージ装置10Aに送信する(S407)。そして、第1のストレージ装置10Aは、ステップS407において第2のストレージ装置10Bから送信されたLUデータのコピー完了通知を受信する(S408)。
(3−2−2)ストレージ装置間のスナップショットボリューム移行処理の詳細
次に、移行元の第1のストレージ装置10Aと移行先の第2のストレージ装置10Bとの間で実行されるスナップショットボリュームの移行処理について説明する。図19に示すように、第1のストレージ装置10Aは、管理計算機30からコピー対象の論理ボリューム(GI)及び仮想マシン(VM)のLUN、移行先のストレージ装置10のID及び変数Identical_GIに代入されている論理ボリューム(GI)のIDを受信する(S411)。
そして、移行元の第1のストレージ装置10Aは、移行先の第2のストレージ装置10Bに論理ユニット(LU)のスナップショットデータのコピー命令を送信する(S412)。ここで、LUのスナップショットデータとは、ゴールデンイメージ(GI)の論理ボリュームに対するスナップショットの差分データを意味する。
移行先の第2のストレージ装置10Bは、ステップS411において移行元の第1のストレージ装置10Aから送信されたLUのスナップショットデータのコピー命令を受信する(S413)。
続いて、第1のストレージ装置10Aは、コピー対象のLUのスナップショットデータ、データマッピング情報及び変数Identical_GIに代入されている論理ボリューム(GI)のIDを第2のストレージ装置10Bに送信する(S414)。第2のストレージ装置10Bは、ステップS414において第1のストレージ装置10Aから送信されたコピー対象のLUのスナップショットデータ、データマッピング情報及び変数Identical_GIに代入されている論理ボリューム(GI)のIDを受信する(S415)。
そして、移行先の第2のストレージ装置10Bは、ステップS415において受信したコピー対象のLUのスナップショットデータをコピーして、ボリュームデータマッピング管理表152を更新する(S416)。具体的に、第2のストレージ装置10Bは、第1のストレージ装置10Aから送信されたLUのスナップショットデータをコピーして、スナップショットデータをコピーした記憶領域の物理アドレスを取得する。そして、取得した物理アドレスを、LUのスナップショットデータの論理アドレスと対応付けてボリュームデータマッピング管理表152に追加する。
例えば、図10は、ステップS416において更新されたボリュームデータマッピング管理表152Dである。ボリュームデータマッピング管理表152Dは、移行前のボリュームデータマッピング管理表152BにLUN103の論理ボリューム(GI)の情報が付け加えられている。ボリュームデータマッピング管理表152Dに示すように、スナップショットボリュームの差分データをコピーした記憶領域の物理アドレス(P5210、P5231)が論理アドレス(L3001、L3121)と対応付けられてそれぞれ格納される。また、スナップショットボリュームの差分データ以外には、物理アドレス欄1523にスナップショットボリュームのデプロイ元の論理ボリューム(LUN102)の論理アドレスが格納される。
そして、第2のストレージ装置10Bは、LUスナップショットデータのコピーが完了した旨を第1のストレージ装置10Aに送信する(S417)。そして、第1のストレージ装置10Aは、ステップS417において第2のストレージ装置10Bから送信されたLUスナップショットデータのコピー完了通知を受信する(S418)。
続いて、第1のストレージ装置10Aは、移行対象の仮想マシンのスナップショットボリュームのLUデータを削除する(S419)。そして、ステップS419において削除したLUデータの情報を、ボリュームデータマッピング管理表から削除する(S420)。
(4)本実施の形態の効果
以上のように本実施の形態によれば、移行元と移行先のゴールデンイメージ(正ボリューム)の世代構成が異なっていても、移行先のストレージ装置の正ボリュームを利用してスナップショットボリュームを移行することを可能としている。これにより、ストレージ装置間におけるスナップショットボリューム移行時のデータコピーサイズを最小限にして、スナップショットボリュームの移行処理時間を削減することを可能とした。
(5)他の実施の形態
例えば、本明細書のストレージ装置10または管理計算機30の処理における各ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はない。すなわち、ストレージ装置10または管理計算機30の処理における各ステップは、異なる処理であっても並列的に実行されてもよい。
また、ストレージ装置10または管理計算機30などに内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上述したストレージ装置10または管理計算機30の各構成と同等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供される。
1 計算機システム
10 ストレージ装置
11 ターゲットポート
13 バス
14 キャッシュメモリ
15 メモリ
17 記憶装置
18 イニシエータポート
151 スナップショット構成管理表
152 ボリュームデータマッピング管理表
153 ボリュームコピープログラム
154 スナップショットボリューム移行プログラム
20 ホスト計算機
21 管理インタフェース
22 メモリ
23 バス
25 記憶装置
26 入出力装置
27 イニシエータポート
201 論理ボリューム
221 アプリケーションプログラム
222 VMプログラム
223 ハイパーバイザ
30 管理計算機
31 メモリ
32 バス
34 記憶装置
35 入出力装置
304 論理ボリューム管理表
311 論理ボリューム管理表
312 仮想マシン管理表
313 仮想マシン移行プログラム
40 ネットワーク

Claims (15)

  1. 第1及び第2のストレージ装置と、前記第1及び第2のストレージ装置へのデータの書き込みを要求するホスト計算機と、前記第1及び第2のストレージ装置と前記ホスト計算機とを管理する管理計算機と、がネットワークを介してそれぞれ相互に接続された計算機システムであって、
    前記管理計算機は、
    スナップショットボリュームの親ボリュームとなる論理ボリュームに対する差分データを前記スナップショットボリュームにて世代管理する制御部を備え、
    前記管理計算機の制御部は、
    指定された世代のスナップショットボリュームの前記管理計算機の入力画面を介しての前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記移行指示対象のスナップショットボリュームの前記指定された世代より前のスナップショットボリュームが前記第2のストレージ装置に存在すると判定された場合に、前記指定された世代のスナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの差分データのみ前記第2のストレージ装置に移行して、前記第2のストレージ装置に存在するスナップショットボリュームに当該第2のストレージ装置に移行した前記差分データを組み合わせることによりスナップショットを作成する
    ことを特徴とするストレージシステム。
  2. 前記第1及び第2のストレージ装置は、
    記憶領域を提供する1または複数の記憶デバイスと、
    前記1または複数の記憶デバイスが提供する前記記憶領域上に論理ボリュームを作成し、前記論理ボリュームのある時点のデータイメージである1または複数のスナップショットボリュームを取得する制御部と、を備える
    ことを特徴とする、請求項1に記載のストレージシステム。
  3. 前記管理計算機の制御部は、
    前記スナップショットボリュームと当該スナップショットボリュームの前記親ボリュームとをスナップショットボリューム管理表に対応付けて前記スナップショットボリュームの世代構成を管理する
    ことを特徴とする、請求項1に記載のストレージシステム。
  4. 前記管理計算機の制御部は、
    前記第1のストレージ装置から前記第2のストレージ装置へ指定された世代のスナップショットボリュームを移行して前記第2のストレージ装置に存在するスナップショットボリュームと組み合わせる場合に、前記移行した前記スナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの対応関係を前記スナップショットボリューム管理表に追記する
    ことを特徴とする、請求項3に記載のストレージシステム。
  5. 前記管理計算機の制御部は、
    前記指定された世代のスナップショットボリュームが前記第2のストレージ装置に存在すると判定された場合に、当該第2のストレージ装置に存在するスナップショットボリュームに前記移行指示対象のスナップショットボリュームを組み合わせてスナップショットを作成する
    ことを特徴とする、請求項1に記載のストレージシステム。
  6. 前記管理計算機の制御部は、
    前記指定された世代より前のスナップショットボリュームが第2のストレージ装置に存在しないと判定された場合に、前記スナップショットボリューム及び当該スナップショットボリュームの前記親ボリュームとなる前記論理ボリュームを第1のストレージ装置から第2のストレージ装置へ移行する
    ことを特徴とする、請求項1に記載のストレージシステム。
  7. 前記親ボリュームにはゴールデンイメージが格納され、
    前記管理計算機の制御部は、
    前記スナップショットボリュームにより形成される仮想マシンの前記管理計算機の入力画面を介しての前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記仮想マシンで利用されている前記スナップショットボリュームの世代を特定し、該世代を前記移行対象とする
    ことを特徴とする、請求項1に記載のストレージシステム。
  8. 第1及び第2のストレージ装置と、前記第1及び第2のストレージ装置へのデータの書き込みを要求するホスト計算機と、ネットワークを介して接続され、かつ、スナップショットボリュームの親ボリュームとなる論理ボリュームに対する差分データを前記スナップショットボリュームにて世代管理する制御部を備えた管理計算機であって、
    前記制御部は、
    指定された世代のスナップショットボリュームの前記管理計算機の入力画面を介しての前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記移行指示対象のスナップショットボリュームの前記指定された世代より前のスナップショットボリュームが前記第2のストレージ装置に存在すると判定された場合に、前記指定された世代のスナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの差分データのみを前記第2のストレージ装置に移行して、前記第2のストレージ装置に存在するスナップショットボリュームに当該第2のストレージ装置に移行した前記差分データを組み合わせることによりスナップショットを作成する
    ことを特徴とする、管理計算機。
  9. 前記第1及び第2のストレージ装置は、記憶領域を提供する1または複数の記憶デバイスと、前記1または複数の記憶デバイスが提供する前記記憶領域上に論理ボリュームを作成し、前記論理ボリュームのある時点のデータイメージである1または複数のスナップショットボリュームを取得する制御部と、を備える
    ことを特徴とする、請求項8に記載の管理計算機。
  10. 前記制御部は、
    前記スナップショットボリュームと当該スナップショットボリュームの前記親ボリュームとをスナップショットボリューム管理表に対応付けて前記スナップショットボリュームの世代構成を管理する
    ことを特徴とする、請求項8に記載の管理計算機。
  11. 前記制御部は、
    前記スナップショットボリュームを移行して前記第2のストレージ装置に存在するスナップショットボリュームに組み合わせた場合に、前記移行した前記スナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの対応関係を前記スナップショットボリューム管理表に追記する
    ことを特徴とする、請求項10に記載の管理計算機。
  12. 前記制御部は、
    前記指定された世代のスナップショットボリュームが第2のストレージ装置に存在すると判定された場合に、当該第2のストレージ装置に存在するスナップショットボリュームに前記移行指示対象のスナップショットボリュームを組み合わせてスナップショットを作成する
    ことを特徴とする、請求項8に記載の管理計算機。
  13. 前記制御部は、
    前記指定された世代より前のスナップショットボリュームが前記第2のストレージ装置に存在しないと判定された場合に、前記スナップショットボリューム及び当該スナップショットボリュームの前記親ボリュームとなる前記論理ボリュームを第1のストレージ装置から第2のストレージ装置へ移行する
    ことを特徴とする、請求項8に記載の管理計算機。
  14. 前記親ボリュームにはゴールデンイメージが格納され、
    前記制御部は、
    前記管理計算機の入力画面を介して前記スナップショットボリュームにより形成される仮想マシンの前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記仮想マシンで利用されている前記スナップショットボリュームの世代を特定し、該世代を前記移行対象とする
    ことを特徴とする、請求項8に記載の管理計算機。
  15. データの書き込みを要求するホスト計算機と、管理計算機とネットワークを介して接続されたストレージ装置であって、
    当該ストレージ装置は、第1のストレージ装置と第2のストレージ装置とからなり、
    これら第1及び第2のストレージ装置は、
    記憶領域を提供する1または複数の記憶デバイスと、
    前記1または複数の記憶デバイスが提供する前記記憶領域上に論理ボリュームを作成し、前記論理ボリュームのある時点のデータイメージである1または複数のスナップショットボリュームを取得する制御部と、を備え、
    前記管理計算機は、スナップショットボリュームの親ボリュームとなる論理ボリュームに対する差分データを前記スナップショットボリュームにて世代管理する制御部を備え、
    前記管理計算機の制御部により指定された世代のスナップショットボリュームの前記第1のストレージ装置から前記第2のストレージ装置への移行指示を受けて、前記移行指示対象のスナップショットボリュームの前記指定された世代より前のスナップショットボリュームが前記第2のストレージ装置に存在すると判定された場合に、前記指定された世代のスナップショットボリュームと前記第2のストレージ装置に存在するスナップショットボリュームとの差分データのみ前記第2のストレージ装置に移行して、前記第2のストレージ装置に存在するスナップショットボリュームに当該第2のストレージ装置に移行した前記差分データを組み合わせることによりスナップショットを作成する
    ことを特徴とする、ストレージ装置。
JP2014524977A 2012-02-16 2012-02-16 ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法 Expired - Fee Related JP5944001B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/001034 WO2013121465A1 (en) 2012-02-16 2012-02-16 Storage system, management server, storage apparatus, and data management method

Publications (2)

Publication Number Publication Date
JP2014534482A JP2014534482A (ja) 2014-12-18
JP5944001B2 true JP5944001B2 (ja) 2016-07-05

Family

ID=48983248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014524977A Expired - Fee Related JP5944001B2 (ja) 2012-02-16 2012-02-16 ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法

Country Status (3)

Country Link
US (1) US9026753B2 (ja)
JP (1) JP5944001B2 (ja)
WO (1) WO2013121465A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104645B2 (en) * 2012-07-27 2015-08-11 Dell Products, Lp System and method of replicating virtual machines for live migration between data centers
CN105659654A (zh) 2013-06-11 2016-06-08 七网络有限责任公司 在无线网络中对使用专有和非专有协议之流量的信令优化,提供应用和/或服务器稳定性的系统和方法
US10359937B2 (en) * 2013-12-20 2019-07-23 Sandisk Technologies Llc System and method of implementing a table storage support scheme
US9854041B1 (en) 2014-09-30 2017-12-26 Amazon Technologies, Inc. Reducing network traffic when replicating memory data across hosts
US9886349B2 (en) * 2015-09-21 2018-02-06 International Business Machines Corporation Point-in-time copy on write for golden image
US10514851B2 (en) * 2016-01-05 2019-12-24 Hitachi, Ltd. Storage apparatus and recording medium
US11169835B1 (en) * 2017-05-09 2021-11-09 Tintri By Ddn, Inc. VM data migration between storage devices
US10402341B2 (en) * 2017-05-10 2019-09-03 Red Hat Israel, Ltd. Kernel-assisted inter-process data transfer
JP2018205817A (ja) * 2017-05-30 2018-12-27 富士通株式会社 情報処理装置、および管理プログラム
US10942902B2 (en) * 2019-01-17 2021-03-09 Cohesity, Inc. Efficient database migration using an intermediary secondary storage system
US11816129B2 (en) 2021-06-22 2023-11-14 Pure Storage, Inc. Generating datasets using approximate baselines

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6668264B1 (en) 2001-04-03 2003-12-23 Network Appliance, Inc. Resynchronization of a target volume with a source volume
US7743031B1 (en) * 2002-09-06 2010-06-22 3Par, Inc. Time and space efficient technique for creating virtual volume copies
US7100089B1 (en) 2002-09-06 2006-08-29 3Pardata, Inc. Determining differences between snapshots
JP4439960B2 (ja) * 2004-03-22 2010-03-24 株式会社日立製作所 ストレージ装置
JP2005346610A (ja) * 2004-06-07 2005-12-15 Hitachi Ltd スナップショットの取得および利用のための記憶システムおよび方法
JP4550541B2 (ja) * 2004-10-06 2010-09-22 株式会社日立製作所 ストレージシステム
US20060230243A1 (en) * 2005-04-06 2006-10-12 Robert Cochran Cascaded snapshots
JP2010102479A (ja) * 2008-10-23 2010-05-06 Hitachi Ltd 計算機システム、ストレージ装置及びデータ更新方法
US8498997B2 (en) * 2009-09-23 2013-07-30 Hitachi, Ltd. Server image migration
US8417907B2 (en) * 2009-10-29 2013-04-09 Symantec Corporation Synchronizing snapshot volumes across hosts
US20110252208A1 (en) * 2010-04-12 2011-10-13 Microsoft Corporation Express-full backup of a cluster shared virtual machine
US8788770B2 (en) * 2010-05-25 2014-07-22 International Business Machines Corporation Multiple cascaded backup process
US20120278553A1 (en) * 2011-04-28 2012-11-01 Mudhiganti Devender R System and method for migration of data clones
US8719523B2 (en) * 2011-10-03 2014-05-06 International Business Machines Corporation Maintaining multiple target copies

Also Published As

Publication number Publication date
WO2013121465A1 (en) 2013-08-22
US20130219138A1 (en) 2013-08-22
JP2014534482A (ja) 2014-12-18
US9026753B2 (en) 2015-05-05

Similar Documents

Publication Publication Date Title
JP5944001B2 (ja) ストレージシステム、管理計算機、ストレージ装置及びデータ管理方法
CN106933503B (zh) 在基于哈希的存储系统中从异步到同步复制的一致转变
CN103354923B (zh) 一种数据重建方法、装置和系统
JP5461216B2 (ja) 論理ボリューム管理の為の方法と装置
JP5603941B2 (ja) 計算機システム及びデータ移行方法
EP3502877B1 (en) Data loading method and apparatus for virtual machines
US8060703B1 (en) Techniques for allocating/reducing storage required for one or more virtual machines
EP2905709A2 (en) Method and apparatus for replication of files and file systems using a deduplication key space
US20060020663A1 (en) Data migration in storage system
US20100023716A1 (en) Storage controller and storage control method
JP2008015768A (ja) 記憶システム並びにこれを用いたデータの管理方法
JP2009122850A (ja) ブロックデバイス制御装置及びアクセス範囲管理方法
JP5797848B1 (ja) 階層化ブロックストレージ装置を有するコンピュータシステム、ストレージコントローラ、及びプログラム
WO2012160533A1 (en) Transparent file system migration to a new physical location
JP2007058728A (ja) データ移行方式
JP5352490B2 (ja) サーバイメージ容量の最適化
JP2009230661A (ja) ストレージ装置及びこれの制御方法
JP2007199920A (ja) ストレージ装置及びその制御方法
JP2008269374A (ja) ストレージシステムおよびその制御方法
JP4804218B2 (ja) 記憶媒体への書き込み回数を管理する計算機システム及びその制御方法
US8832396B2 (en) Storage apparatus and its control method
US8566541B2 (en) Storage system storing electronic modules applied to electronic objects common to several computers, and storage control method for the same
JP2008250458A (ja) ストレージシステム及びストレージシステムの管理方法
JP2006260240A (ja) 計算機システム及び記憶装置とコンピュータ・ソフトウエア並びにデータ移行方法
JP2014038551A (ja) データ記憶装置、データ記憶装置の制御方法、及びデータ記憶装置の制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150908

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160524

R150 Certificate of patent or registration of utility model

Ref document number: 5944001

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees