(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024139547
(43)【公開日】2024-10-09
(54)【発明の名称】バックアップシステム及びバックアップ方法
(51)【国際特許分類】
G06F 3/06 20060101AFI20241002BHJP
G06F 13/10 20060101ALI20241002BHJP
G06F 11/14 20060101ALI20241002BHJP
【FI】
G06F3/06 304B
G06F3/06 301X
G06F3/06 301Z
G06F3/06 304F
G06F13/10 340A
G06F11/14 648
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2023050534
(22)【出願日】2023-03-27
(71)【出願人】
【識別番号】524132520
【氏名又は名称】日立ヴァンタラ株式会社
(74)【代理人】
【識別番号】110001689
【氏名又は名称】青稜弁理士法人
(72)【発明者】
【氏名】秋葉 なつみ
(72)【発明者】
【氏名】風間 悟朗
(72)【発明者】
【氏名】村松 秀宣
(72)【発明者】
【氏名】今津 剛行
(57)【要約】
【課題】本発明の目的の一つは、データ保護領域に格納するバックアップを取得する経路を複数化することにより可用性を向上できるバックアップシステム及びバックアップ方法を提供する。
【解決手段】バックアップストレージ装置は、第1ストレージ、第2ストレージ及びBPストレージを備える。BPストレージは、第1バックアップ用ボリューム及び第2バックアップ用ボリュームと、データ保護領域とを有する。BPストレージは、第1ルートBPイメージと、第2ルートBPイメージとを、第1ルートBPイメージの世代及び前記第2ルートBPイメージの世代が重複しないようにデータ保護領域に、格納する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
同一のバックアップ対象に対して異なる複数のバックアップルートのそれぞれを構成する複数のストレージ装置と、
複数の前記バックアップルートに対応する複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、
を備え、
前記バックアップストレージ装置は、
複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、
複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する、
バックアップシステム。
【請求項2】
請求項1に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
複数世代の前記バックアップイメージを、世代が重複するバックパップイメージが存在しないように、前記データ保護領域に格納する、
バックアップシステム。
【請求項3】
請求項1に記載のバックアップシステムにおいて、
複数の前記ストレージ装置として、第1ストレージ装置及び第2ストレージ装置を備え、
前記バックアップストレージ装置は、
複数の前記バックアップ用ボリュームとして、前記第1ストレージ装置に対応する第1バックアップ用ボリューム及び前記第2ストレージ装置に対応する第2バックアップ用ボリュームを備え、
前記第1バックアップ用ボリュームについての前記バックアップイメージとしての第1ルートBPイメージと、前記第2バックアップ用ボリュームについての前記バックアップイメージとしての第2ルートBPイメージとを、前記第1ルートBPイメージの世代及び前記第2ルートBPイメージの世代が重複しないように前記データ保護領域に、格納する、
バックアップシステム。
【請求項4】
請求項3に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
前記第1ルートBPイメージ及び前記第2ルートBPイメージの世代の数の差が小さくなるように、前記第1ルートBPイメージ及び前記第2ルートBPイメージを前記データ保護領域に格納する、
バックアップシステム。
【請求項5】
請求項3に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
前記第1ルートBPイメージの世代及び前記第2ルートBPイメージの世代が交互になるように、前記第1ルートBPイメージ及び前記第2ルートBPイメージを前記データ保護領域に格納する、
バックアップシステム。
【請求項6】
請求項3に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
同一のバックアップ取得日時の前記第1ルートBPイメージ及び前記第2ルートBPイメージの両方を前記データ保護領域に格納できた場合、
前記データ保護領域に格納されている期限切れの前記第1ルートBPイメージ及び前記第2ルートBPイメージを削除し、
前記データ保護領域に格納されている前記第1ルートBPイメージ及び前記第2ルートBPイメージの世代の数の差が小さくなるように、前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方を削除する、
バックアップシステム。
【請求項7】
請求項6に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
一方の前記バックアップルートによって前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方のみ前記バックアップイメージの取得が成功し、同一のバックアップ取得日時の前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方のみしか前記データ保護領域に格納できなかった場合、
前記データ保護領域に格納されている期限切れの前記第1ルートBPイメージ及び前記第2ルートBPイメージを削除し、
一方の前記バックアップルートに対応する前記第1バックアップ用ボリューム及び前記第2バックアップ用ボリュームのうちの一方の前記バックアップ用ボリュームに対して空きペアを追加する、
バックアップシステム。
【請求項8】
請求項7に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
一方の前記バックアップ用ボリュームに対して前記空きペアが追加された後、同一の世代の前記第1ルートBPイメージ及び前記第2ルートBPイメージの両方を前記データ保護領域に格納できた場合において、不要になった追加された前記空きペアを削除する、
バックアップシステム。
【請求項9】
請求項3に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
同一の世代の前記第1ルートBPイメージ及び前記第2ルートBPイメージの両方を前記データ保護領域に格納できた場合、
前記データ保護領域に格納されている期限切れの前記第1ルートBPイメージ及び前記第2ルートBPイメージの何れかを削除し、
前記データ保護領域に格納されている前記第1ルートBPイメージ及び前記第2ルートBPイメージの世代が交互になるように、前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方を削除する、
バックアップシステム。
【請求項10】
請求項9に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
一方の前記バックアップルートによって前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方のみの取得が成功し、前記第1ルートBPイメージ及び前記第2ルートBPイメージの一方のみしか前記データ保護領域に格納できなかった場合、
前記データ保護領域に格納されている期限切れの前記第1ルートBPイメージ及び前記第2ルートBPイメージを削除し、
一方の前記バックアップルートに対応する前記第1バックアップ用ボリューム及び前記第2バックアップ用ボリュームのうちの一方の前記バックアップ用ボリュームに対して空きペアを追加する、
バックアップシステム。
【請求項11】
請求項10に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
一方の前記バックアップ用ボリュームに対して前記空きペアが追加された後、同一の世代の前記第1ルートBPイメージ及び前記第2ルートBPイメージの両方を前記データ保護領域に格納できた場合において、不要になった追加された前記空きペアを削除する、
バックアップシステム。
【請求項12】
請求項2に記載のバックアップシステムにおいて、
演算装置及び記憶装置を含む情報処理装置を備え、
前記記憶装置は、
バックアップ対象を識別するためのバックアップ対象識別情報と前記バックアップルートを識別するための識別情報であるバックアップルート識別情報とが対応付けられたバックアップルート管理情報と、
前記バックアップルート識別情報と当該バックアップルート識別情報が示す前記バックアップルートに対応する前記バックアップイメージに関する情報とが対応付けれたバックアップ世代情報と、
を格納し、
前記演算装置は、
前記バックアップルート管理情報に基づいて、入力された前記バックアップ対象識別情報に対応する前記バックアップルート識別情報を特定し、
前記バックアップ世代情報に基づいて、特定した前記バックアップルート識別情報に対応する前記バックアップイメージに関する情報を特定し、
特定した前記バックアップイメージに関する情報を統合することにより、前記バックアップ対象についての前記データ保護領域に格納された複数世代の前記バックアップイメージに関する情報を含む統合バックアップ世代情報を作成する、
ように構成された、
バックアップシステム。
【請求項13】
請求項12に記載のバックアップシステムにおいて、
画像を表示可能な表示装置を備え、
前記情報処理装置は、
前記統合バックアップ世代情報に基づいて、前記データ保護領域に格納された複数世代の前記バックアップイメージに関する情報を含むGUI画面を前記表示装置に表示する、
ように構成された
バックアップシステム。
【請求項14】
請求項13に記載のバックアップシステムにおいて、
前記バックアップストレージ装置は、
外部装置からアクセス可能なアクセス用ボリュームを有し、
前記バックアップストレージ装置は、前記GUI画面を介して選択された世代に対応する前記バックアップ用ボリューム及び前記バックアップイメージに付されるコピー番号を特定し、特定した前記バックアップ用ボリュームの前記コピー番号に対応する前記バックアップイメージを、前記アクセス用ボリュームを介して外部装置からアクセス可能にする、
バックアップシステム。
【請求項15】
複数のストレージ装置と、
複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、
を用いたバックアップ方法であって、
複数の前記ストレージ装置によって、同一のバックアップ対象に対して異なる複数のバックアップルートを形成し、
前記バックアップストレージ装置によって、
複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、
複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する、
バックアップ方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バックアップシステム及びバックアップ方法に関する。
【背景技術】
【0002】
近年のサイバー攻撃が巧妙化していることや、バックアップデータを破壊するサービス破壊型攻撃(DeOS(Destruction of service)型攻撃)が現れていることから、絶え間ないサイバー攻撃から組織を守るには従来のサイバーセキュリティ対策だけでは十分ではなくなってきている。このことを受けて、攻撃されないようにするのではなく、攻撃されても早急にデータ回復ができること(“Cyber Resilience”)を目指すソリューションが市場に提案されつつあり、MF(メインフレーム)市場では当該ソリューションを有していることが必須条件となる傾向にある。
【0003】
従来のストレージシステムでは、ストレージ機能を利用して、ホストが読み書きするデータを外部からアクセスできないデータ保護領域にバックアップする技術がある。この技術として、例えば、特許文献1が挙げられる。特許文献1が開示するバックアップシステムは、バックアップの取得経路が一つであり、取得したバックアップをデータ保護領域に格納することが開示されている。なお、複数のバックアップを取得する技術として、特許文献2が存在する。特許文献2の技術は、ホストが利用するボリュームのスナップショットを異なるストレージ装置間で、世代毎に二重化する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-22390号公報
【特許文献2】特開2003-242011号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1のバックアップシステムでは、データ保護領域に格納するバックアップの取得経路が一つであり、可用性に課題がある。特許文献2の技術は、単にバックアップ(スナップショット)を二重化する技術であり、データ保護領域への格納対象としてのバックアップを複数の経路で取得する技術ではない。本発明は上記課題を解決するためになされた。即ち、本発明の目的の一つは、データ保護領域に格納するバックアップを取得する経路を複数化することにより可用性を向上できるバックアップシステム及びバックアップ方法を提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明のバックアップシステムは、同一のバックアップ対象に対して異なる複数のバックアップルートのそれぞれを構成する複数のストレージ装置と、複数の前記バックアップルートに対応する複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、を備え、前記バックアップストレージ装置は、複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する。
【0007】
本発明のバックアップ方法は、複数のストレージ装置と、複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、を用いたバックアップ方法であって、複数の前記ストレージ装置によって、同一のバックアップ対象に対して異なる複数のバックアップルートを形成し、前記バックアップストレージ装置によって、複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する。
【発明の効果】
【0008】
本発明によれば、データ保護領域に格納するバックアップを取得する経路を複数化することにより可用性を向上できる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
【図面の簡単な説明】
【0009】
【
図1】
図1は本発明の第1実施形態に係るバックアップシステムの構成例を示す構成図である
【
図2】
図2はストレージ装置のハードウェアブロック構成の一例を示すブロック図である。
【
図3】
図3は管理サーバの構成例を示す概略構成図である。
【
図4】
図4は検証サーバの構成例を示す概略構成図である。
【
図5A】
図5Aは第1ストレージが有するボリュームコピー管理テーブルを説明するための図である。
【
図5B】
図5Bは第1ストレージが有する第1True Copy管理テーブルを説明するための図である。
【
図5C】
図5Cは第1ストレージが有する第1外接マッピングテーブルを説明するための図である。
【
図6A】
図6Aは第2ストレージが有するボリュームコピー管理テーブルを説明するための図である。
【
図6B】
図6Bは第2ストレージが有する第2True Copy管理テーブルを説明するための図である。
【
図6C】
図6Cは第2ストレージが有する第2外接マッピングテーブルを説明するための図である。
【
図7】
図7はバックアップルート管理テーブルを説明するための図である。
【
図8】
図8はバックアップルート実行結果管理テーブルを説明するための図である。
【
図9A】
図9Aは第1バックアップデータ管理テーブルを説明するための図である。
【
図9B】
図9Bは第2バックアップデータ管理テーブルを説明するための図である。
【
図10】
図10はバックアップ世代情報管理テーブルを説明するための図である。
【
図11】
図11は第3外接マッピングテーブルを説明するための図である。
【
図13】
図13は第4外接マッピングテーブルを説明するための図である。
【
図14A】
図14Aはバックアップシステムの作動の概要を説明するための図である。
【
図14B】
図14Bはバックアップシステムの作動の概要を説明するための図である。
【
図14C】
図14Cはバックアップシステムの作動の概要を説明するための図である。
【
図14D】
図14Dはバックアップシステムの作動の概要を説明するための図である。
【
図15A】
図15Aはバックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要を説明するための図である。
【
図15B】
図15Bはバックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要を説明するための図である。
【
図15C】
図15Cはバックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要を説明するための図である。
【
図15D】
図15Dはバックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要を説明するための図である。
【
図16A】
図16Aは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図16B】
図16Bは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図16C】
図16Cは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図16D】
図16Dは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図16E】
図16Eは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図16F】
図16Fは復旧後のバックアップシステムの作動の概要を説明するための図である。
【
図17】
図17は管理サーバのCPUが実行する処理フローを示すフローチャートである。
【
図18】
図18は管理サーバのCPUが実行する処理フローを示すフローチャートである。
【
図19】
図19は検証サーバのCPUが実行する処理フローを示すフローチャートである。
【
図20】
図20はディスプレイに表示されるGUI画面の一例を示す図である。
【
図21A】
図21Aはバックアップシステムの作動の概要を説明するための図である。
【
図21B】
図21Bはバックアップシステムの作動の概要を説明するための図である。
【
図23】
図23は管理サーバのCPUが実行する処理フローを示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の各実施形態について図面を参照しながら説明する。なお、実施形態の全図において、同一又は対応する部分には同一の符号を付す場合がある。
【0011】
以下の説明では、「テーブル」、「レコード」等の表現にて各種情報を説明することがあるが、各種情報は、これら以外のデータ構造で表現されてもよい。識別情報について説明する際、「ID」、「名称」、「番号」等の表現を用いるが、これらについてはお互いに置換が可能である。説明の便宜上、ボリューム及びストレージのそれぞれのIDは、ボリューム及びストレージのそれぞれに付された参照符号(番号)と同じとする。以下の説明では、CPU又は装置を主語として処理を説明する場合があるが、処理の主語が、CPUに代えてプログラム又は装置とされてもよく、装置に代えてコントローラ又はCPUとされてもよい。
【0012】
<<第1実施形態>>
図1は本発明の第1実施形態に係るバックアップシステムの構成例を示す構成図である。
図1に示すように、バックアップシステムは、ホスト1と、第1ストレージシステム10(以下、「第1ストレージ10」と称呼される。)と、第2ストレージシステム20(以下、「第2ストレージ20」と称呼される。)と、バックアップストレージシステム30(以下、「BPストレージ30」と称呼される。)30と、管理サーバ100と、検証サーバ200と、を有する。第1ストレージ10は、「第1ストレージ装置」とも称呼される場合がある。第2ストレージ20は、「第2ストレージ装置」とも称呼される場合がある。BPストレージ30は、「バックアップストレージ装置」とも称呼される場合がある。
【0013】
なお、本例において、ホスト1、第1ストレージ10、第2ストレージ20及び検証サーバ200は、典型的には、メインフレームシステム(以下、「MF」と称呼される。)に含まれる。管理サーバ100及びBPストレージ30は、典型的にはオープン系システムに含まれる。
【0014】
ホスト1は、第1ストレージ10に接続される。ホスト1には、第1ストレージ10から論理ボリュームであるプロダクションボリューム11が提供される。ホスト1は、プロダクションボリューム11がホスト1にマウントされることにより、プロダクションボリューム11をプロダクションPD1として認識する。
【0015】
第1ストレージ10は、典型的には例えばホスト1の近距離に設置されたストレージであり、プロダクションボリューム11と、仮想ボリューム12とを有する。プロダクションボリューム11は、ホスト1のI/O要求の対象となるボリュームである。仮想ボリューム12は、SI(Shadow Image)により、プロダクションボリューム11の副ボリュームとなる、仮想的に作成された仮想ボリュームである。なお、SI(Shadow Image)は、同一のストレージシステム内で正ボリュームの全てのデータを副ボリュームにコピーする機能である。
【0016】
第2ストレージ20は、第1ストレージ10に図示しないネットワークを介して接続される。第2ストレージ20は、典型的には例えば第1ストレージ10と離れた場所に設置される。第2ストレージ20は、論理ボリュームであるレプリカボリューム21と、仮想ボリューム22と、仮想ボリューム23と、を有する。
【0017】
第2ストレージ20には、True Copyにより、第1ストレージ10のプロダクションボリューム11の複製であるレプリカボリューム21が作成される。レプリカボリューム21は、True Copyにより、プロダクションボリューム11と同期され、プロダクションボリューム11とレプリカボリューム21との同一性が保証されている。True Copyでは、第1ストレージ10のプロダクションボリューム11のデータと同期して、第2ストレージ20のレプリカボリューム21へデータをコピーする。ホスト1からのデータの書き込み命令は、第1ストレージ10への書き込み後、第2ストレージ20へのコピーが終わってから、ホスト1への完了応答が返される。True Copyでは、第1ストレージ10のプロダクションボリューム11に書き込まれるすべてのデータが、第2ストレージ20のレプリカボリューム21にコピーされる。
【0018】
仮想ボリューム22は、SI(Shadow Image)により、レプリカボリューム21の副ボリュームとなる、仮想的に作成された仮想ボリュームである。
【0019】
仮想ボリューム23は、仮想的に作成された仮想ボリュームである。
仮想ボリューム23は、仮想ボリューム23を外接元とし、BPストレージ30のアクセス用ボリューム35を外接先として、アクセス用ボリューム35とマッピングする。
【0020】
BPストレージ30は、第1ストレージ10及び第2ストレージ20のそれぞれと接続され、例えば、第1ストレージ10及び第2ストレージ20のそれぞれと離れた場所に設置される。
【0021】
BPストレージ30は、第1バックアップ用ボリューム31と、第2バックアップ用ボリューム32と、データ保護領域33と、管理データボリューム34と、アクセス用ボリューム35と、を有する。
【0022】
第1バックアップ用ボリューム31は、外接機能により、第1ストレージ10の仮想ボリューム12にマッピングされ、仮想ボリューム12のデータの格納先となり、プロダクションボリューム11のデータのコピーが格納される。例えば、外接機能は、日立製作所UVM(Universal Volume Manager)で実現される。外接機能とは、仮想化技術により、機種の異なる複数のディスクアレイを1つのディスクアレイであるかのように統合する機能で、外部ストレージを接続し、その論理ボリュームをマッピングすることにより、機種の異なる複数のディスクアレイを1つのディスクアレイであるかのように扱うことができる機能である。
【0023】
第2バックアップ用ボリューム32は、外接機能により、第2ストレージ20の仮想ボリューム22にマッピングされ、仮想ボリューム22のデータの格納先となり、レプリカボリューム21のデータのコピーが格納される。
【0024】
管理データボリューム34は、バックアップルート管理テーブル700(
図7)、バックアップルート実行結果管理テーブル800(
図8)、第1バックアップデータ管理テーブル900(
図9A)、第2バックアップデータ管理テーブル910(
図9B)、バックアップ世代情報管理テーブル1000(
図10)、第3外接マッピングテーブル1100(
図11)、紐づけテーブル1200(
図12)及び第4外接マッピングテーブル1300(
図13)等の、管理情報を格納する。
【0025】
データ保護領域33は、外部からアクセス不可の領域である。この領域は、外部からアクセスするための情報が外部デバイスに提供されず、BPストレージ30のストレージコントローラのみ認識できる記憶領域によって構成される。例えば、データ保護領域33が複数のボリュームで構成される場合には、データにアクセスするために必要となるボリュームIDを外部に提供しないように構成して良い。
【0026】
バックアップイメージ31a、バックアップイメージ31b及びバックアップイメージ31cのそれぞれは、第1バックアップ用ボリューム31の異なる時点におけるバックアップイメージである。第1バックアップ用ボリューム31からバックアップイメージ31a、31b及び31cを作成するためには、第1バックアップ用ボリューム31内の更新前データだけを、データ保護領域33を構成するプールボリュームに退避するThin Imageを用いる。但し、第1バックアップ用ボリューム31の指定した時点におけるバックアップイメージを構成するデータを取得する機能であれば、他の実現方法を採用してもよい。また、バックアップイメージを構成するデータを別のボリュームに格納できるバックアップ機能でもよい。以下、所定の時点のバックアップデータにより構成されるデータをバックアップイメージと呼ぶ場合がある。
【0027】
バックアップイメージ32a、バックアップイメージ32b及びバックアップイメージ32cのそれぞれは、第2バックアップ用ボリューム32の異なる時点におけるバックアップイメージである。第2バックアップ用ボリューム32からバックアップイメージ32a、32b及び32cを作成するためには、第2バックアップ用ボリューム32内の更新前データだけを、データ保護領域33を構成するプールボリュームに退避するThin Imageを用いる。但し、第2バックアップ用ボリューム32の指定した時点におけるバックアップイメージを構成するデータを取得する機能であれば、他の実現方法を採用してもよい。また、バックアップイメージを構成するデータを別のボリュームに格納できるバックアップ機能でもよい。
【0028】
なお、上述したように、第1バックアップ用ボリューム31には、プロダクションボリューム11のデータのコピーが格納される。第2バックアップ用ボリューム32には、同期コピーによりプロダクションボリューム11と同一性が保証されているレプリカボリューム21のデータのコピーが格納される。従って、第1バックアップ用ボリューム31のバックアップイメージ及び第2バックアップ用ボリューム32のバックアップイメージは、同一のバックアップ対象であるプロダクションボリューム11(プロダクションPD1)のデータコピーのバックアップイメージ(バックアップデータ)となる。これにより、バックアップルートの冗長化が図れ、可用性を確保できる。
【0029】
バックアップイメージ31a、31b及び31cを作成する際に、BPストレージ30のストレージコントローラは、管理サーバ100からの指示に従い、各イメージに対し、コピー番号#3、#4、#5を付し、管理データボリューム34の管理情報で管理する。各バックアップイメージ31a、31b及び31cは、第1バックアップ用ボリューム31の指定した時点におけるイメージとなるため、異なる時点の第1バックアップ用ボリューム31の世代と呼ぶことができる。
【0030】
バックアップイメージ32a、32b及び32cを作成する際に、BPストレージ30のストレージコントローラは、管理サーバ100からの指示に従い、各イメージに対し、コピー番号#3、#4、#5を付し、管理データボリューム34の管理情報で管理する。各バックアップイメージ32a、32b及び32cは、第2バックアップ用ボリューム32の指定した時点におけるイメージとなるため、異なる時点の第2バックアップ用ボリューム32の世代と呼ぶことができる。
【0031】
同一の指定した時点における第1バックアップ用ボリューム31のバックアップイメージと第2バックアップ用ボリューム32のバックアップイメージとは、同じ世代(重複する世代)となる。第1バックアップ用ボリューム31のバックアップイメージに付与する(対応付ける)コピー番号は、管理サーバ100により♯3から順に採番され、削除及び追加されることにより増減可能となっている。同様に、第2バックアップ用ボリューム32のバックアップイメージに付与する(対応付ける)コピー番号は、管理サーバ100により♯3から順に採番され、削除(例えば、番号の小さいコピー番号から削除)及び追加されることにより増減可能となっている。
【0032】
採番されたコピー番号に対するバックアップイメージが取得されていないコピー番号は、「空きのペア」又は「空きペア」と称呼される。採番されたコピー番号に対するバックアップイメージが取得済みのコピー番号及び当該コピー番号が付されたバックアップイメージは、「ペア」と称呼される。第1バックアップ用ボリューム31に対するコピー番号の数(ペア及び空きペアの数)は、ペア数と称呼される。同様に、第2バックアップ用ボリューム32に対するコピー番号の数(ペア及び空きペアの数)は、ペア数と称呼される。
【0033】
図1の例では、第1バックアップ用ボリューム31のバックアップイメージ31aに対しコピー番号#3が付され、バックアップイメージ31bに対しコピー番号#4が付され、バックアップイメージ31cに対しコピー番号#5が付されている。第2バックアップ用ボリューム32のバックアップイメージ32aに対しコピー番号#4が付され、バックアップイメージ32bに対しコピー番号#5が付され、バックアップイメージ32cに対しコピー番号#6が付されている。
【0034】
第1バックアップ用ボリューム31及び第2バックアップ用ボリューム32の特定の時点(特定世代)のバックアップイメージをアクセス用ボリューム35に関連付ける(「紐づける」とも称呼される。)ことにより、特定世代のバックアップイメージを外部デバイス(本例では、第2ストレージ20)に提供する。この紐づけは、特定の時点(特定世代)のバックアップイメージ(バックアップイメージに対応するコピー番号)をアクセス用ボリューム35に関連付けて、アクセス用ボリューム35により、関連付けられたバックアップイメージを提供する操作である。この操作は、例えば、管理サーバ100からのコマンドをBPストレージ30が受信することで実行される。オリジナルのバックアップイメージそのものは改変されないように、外接側から書き込まれた情報は、差分として一時的な領域に保存され、関連付けが切断された際に破棄する。
【0035】
但し、アクセス用ボリューム35のバックアップイメージを構成するデータは、第1バックアップ用ボリューム31及びバックアップイメージ31a、31b及び31c、並びに、第2バックアップ用ボリューム32及びバックアップイメージ32a、32b及び32c、に格納されているため、バックアップイメージを構成する全てのコピーデータを格納するボリュームへのアクセスと比較し、一般的に遅くなる。
【0036】
なお、管理データボリューム34に格納された管理情報も、第1バックアップ用ボリューム31に格納されたデータと同様、データ保護領域33にバックアップイメージが格納され、各バックアップイメージに対しコピー番号が付される。管理情報のバックアップイメージも管理データボリューム34に紐づけられることにより、管理サーバ100を含む外部デバイスからアクセス可能となる。管理データボリューム34及びアクセス用ボリューム35には、外部からアクセスするために必要な情報(例えばボリュームID)が付され、通常のボリュームとして機能する。
【0037】
<ハードウェア構成>
図2は、ストレージシステムのハードウェアブロック構成の一例を示すブロック図である。
図2のストレージシステムは、
図1の第1ストレージ10、第2ストレージ20及びBPストレージ30のそれぞれに対応する。
【0038】
図2では、第1ストレージ10を例に説明するが、他のストレージシステムも同様の構成である。第1ストレージ10は、複数(又は1つ)の物理的記憶デバイスであるPDEV51と、PDEV51に接続されたストレージコントローラ52とを有する。
【0039】
ストレージコントローラ52は、I/F53と、I/F54と、2つのメモリ55と、それらに接続された2つのプロセッサ56とを有する。
【0040】
I/F53は、外部装置(例えば、第1ホスト1)とストレージコントローラ52との間のデータのやり取りを仲介する通信インターフェースデバイスである。I/F53に、FC(Fibre Channel)ネットワーク60を介して、第1ホスト1及びBPストレージ30が接続される。
【0041】
第1ホスト1は、ストレージコントローラ52に対して、I/O先(例えばLUN(Logical Unit Number)のような論理ボリューム番号や、LBA(Logical Block Address)のような論理アドレス)を指定したI/O要求(ライト要求又はリード要求)を送信する。
【0042】
I/F54は、複数のPDEV51とストレージコントローラ52の間のデータのやり取りを仲介する通信インターフェースデバイスである。I/F54には、複数のPDEV51が接続される。
【0043】
メモリ55は、プロセッサ56が実行するプログラムと、プロセッサ56が使用するデータを記憶する。プロセッサ56は、メモリ55に格納されているプログラムを実行する。なお、本例では、メモリ55及びプロセッサ56の組が二重化されている。
【0044】
上記では第1ストレージ10の構成を示したが、他のストレージにおいても、同様にI/Fを有し、外部装置と接続される。例えば、第2ストレージ20は、第1ストレージ10、ホスト1及びBPストレージ30に接続される。BPストレージ30は第1ストレージ10及び第2ストレージ20に接続される。
【0045】
図3は管理サーバ100の構成例を示す概略構成図である。
図3に示すように、管理サーバ100は、データの読み出し及び書き込み可能な不揮発性の記憶装置110と、メモリ120(例えば、RAM)と、CPU130と、入出力インタフェース140と、ネットワークインタフェース150とを含む。CPU130、記憶装置110、メモリ120、入出力インタフェース140、ネットワークインタフェース150及びバス160を含む装置は、便宜上、「情報処理装置」とも称呼される。情報処理装置は、複数の情報処理装置やクラウド上に構築される仮想的な情報処理装置であってもよい。
【0046】
記憶装置110は、プログラム111及び第1管理情報112及び第2管理情報113を保持(記憶、格納)している。プログラム111は、管理サーバ100の各種機能を実現するためのプログラムを含む。
【0047】
CPU130は、記憶装置110に格納されたプログラム111をメモリ120にロードする。CPU130は、メモリ120にロードされたプログラム111を実行することによって、管理サーバ100の各種機能を実現する演算装置である。
【0048】
第1管理情報112は、バックアップルート管理テーブル700(
図7)、バックアップルート実行結果管理テーブル800(
図8)、第1バックアップデータ管理テーブル900(
図9A)、第2バックアップデータ管理テーブル910(
図9B)、バックアップ世代情報管理テーブル1000(
図10)、第3外接マッピングテーブル1100(
図11)、紐づけテーブル1200(
図12)及び第4外接マッピングテーブル1300(
図13)等の、管理情報を含む。
【0049】
第2管理情報113は、後に詳述する第1ストレージ10及び第2ストレージ20が有しこれらから取得される各種テーブル(
図5A乃至
図6C)を含む。
【0050】
メモリ120には、上述したようにCPU130が実行するプログラム111がロードされ、CPU130がプログラム111を実行する際に使用するデータが一時的に記憶される。
【0051】
入出力インタフェース140は、キーボード及びマウス等の操作デバイス並びにディスプレイ等を接続するためのインタフェースである。ネットワークインタフェース150は、管理サーバ100をネットワークNW1(例えばSAN(Storage Area Network))に接続するためのインタフェースである。
【0052】
なお、CPU130がプログラムを実行して行う処理の少なくとも一部を、他の演算装置(例えば、ASIC、FPGA等のハードウェア)で実行してもよい。
【0053】
図4は検証サーバ200の構成例を示す概略構成図である。検証サーバ200はバックアップデータの検証を行う。
図4に示すように、検証サーバ200は、データの読み出し及び書き込み可能な不揮発性の記憶装置210と、メモリ220(例えば、RAM)と、CPU230と、入出力インタフェース240と、ネットワークインタフェース250とを含む。CPU230、記憶装置210、メモリ220、入出力インタフェース240、ネットワークインタフェース250及びバス260を含む装置は、便宜上、「情報処理装置」とも称呼される。情報処理装置は、複数の情報処理装置やクラウド上に構築される仮想的な情報処理装置であってもよい。
【0054】
記憶装置210は、スクリプト211a及びベリファイツール212bを含むプログラム211を保持(記憶、格納)している。
【0055】
CPU230は、記憶装置210に格納されたプログラム211をメモリ220にロードする。CPU230は、メモリ220にロードされたプログラム211を実行することによって、検証サーバ200の検証機能等の各種機能を実現する演算装置である。
【0056】
メモリ220には、上述したようにCPU230が実行するプログラムがロードされ、CPU230がプログラム211を実行する際に使用するデータが一時的に記憶される。
【0057】
入出力インタフェース240は、キーボード及びマウス等の操作デバイス並びにディスプレイ270等を接続するためのインタフェースである。ネットワークインタフェース250は、検証サーバ200をネットワークNW1(例えばSAN(Storage Area Network))に接続するためのインタフェースである。
【0058】
なお、CPU230がプログラムを実行して行う処理の少なくとも一部を、他の演算装置(例えば、ASIC、FPGA等のハードウェア)で実行してもよい。
【0059】
図5Aは第1ストレージ10が有する第1ボリュームコピー管理テーブル500を説明するための図である。第1ボリュームコピー管理テーブル500は、情報(値)を格納する列(カラム)として、バックアップターゲット名501と、複製元VOLID502と、複製先仮想VOLID503とを含む。第1ボリュームコピー管理テーブル500には、ボリュームのコピーに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップターゲット名501には、バックアップ対象となるプロダクションの名称が格納されている。複製元VOLID502には、バックアップ対象のプロダクションとして認識されているプロダクションボリュームを識別するためのIDが格納されている。複製先仮想VOLID503には、プロダクションボリューム11の副ボリュームを識別するためのIDが格納されている。
【0060】
図5Bは第1ストレージ10が有する第1True Copy管理テーブル510を説明するための図である。第1True Copy管理テーブル510は、情報(値)を格納する列(カラム)として、True Copy元ストレージID511と、True Copy元ストレージVOLID512と、True Copy先ストレージID513と、True Copy先ストレージVOLID514と、を含む。第1True Copy管理テーブル510には、True Copyに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0061】
具体的に述べると、True Copy元ストレージID511には、True Copy元のストレージを識別するためのIDが格納されている。True Copy元ストレージVOLID512には、True Copy元のストレージ内のTrue Copyの正ボリュームを識別するためのIDが格納されている。True Copy先ストレージID513には、True Copy先のストレージを識別するためのIDが格納されている。True Copy先ストレージVOLID514には、True Copy先のストレージ内のTrue Copyの副ボリュームを識別するためのIDが格納されている。
【0062】
図5Cは第1ストレージ10が有する第1外接マッピングテーブル520を説明するための図である。第1外接マッピングテーブル520は、情報(値)を格納する列(カラム)として、外接元ストレージVOLID521と、外接元ストレージ仮想VOLID522と、外接先ストレージID523と、外接先ストレージVOLID524と、接続状態(接続/切断)525とを含む。第1外接マッピングテーブル520には、第1ストレージ10のボリュームとそのボリュームにマッピングした外部ボリュームに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0063】
具体的に述べると、外接元ストレージVOLID521には、外接元のストレージを識別するためのIDが格納されている。外接元ストレージ仮想VOLID522には、外接元のストレージ内のマッピングされる仮想ボリュームを識別するためのIDが格納されている。外接先ストレージID523には、外接先のストレージを識別するためのIDが格納されている。外接先ストレージVOLID524には、外接先のストレージ内のマッピングしたボリュームを識別するためのIDが格納されている。接続状態(接続/切断)525には、外接の接続状態を示す情報が格納されている。
【0064】
図6Aは第2ストレージ20が有する第2ボリュームコピー管理テーブル600を説明するための図である。第2ボリュームコピー管理テーブル600は、情報(値)を格納する列(カラム)として、バックアップターゲット名601と、複製元VOLID602と、複製先仮想VOLID603とを含む。第2ボリュームコピー管理テーブル600には、ボリュームのコピーに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップターゲット名601には、バックアップ対象となるプロダクションの名称が格納されている。複製元VOLID602には、バックアップ対象のプロダクションとして認識されているプロダクションボリュームを識別するためのIDが格納されている。複製先仮想VOLID603には、プロダクションボリューム11の副ボリュームを識別するためのIDが格納されている。
【0065】
図6Bは第2ストレージ20が有する第2True Copy管理テーブル610を説明するための図である。第2True Copy管理テーブル610は、情報(値)を格納する列(カラム)として、True Copy元ストレージID611と、True Copy元ストレージVOLID612と、True Copy先ストレージID613と、True Copy先ストレージVOLID614と、を含む。第2True Copy管理テーブル610には、True Copyに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0066】
具体的に述べると、True Copy元ストレージID611には、True Copy元のストレージを識別するためのIDが格納されている。True Copy元ストレージVOLID612には、True Copy元のストレージ内のTrue Copyの正ボリュームを識別するためのIDが格納されている。True Copy先ストレージID613には、True Copy先のストレージを識別するためのIDが格納されている。True Copy先ストレージVOLID614には、True Copy先のストレージ内のTrue Copyの副ボリュームを識別するためのIDが格納されている。
【0067】
図6Cは第2ストレージ20が有する第2外接マッピングテーブル620を説明するための図である。第2外接マッピングテーブル620は、情報(値)を格納する列(カラム)として、外接元ストレージVOLID621と、外接元ストレージ仮想VOLID622と、外接先ストレージID623と、外接先ストレージVOLID624と、接続状態(接続/切断)625とを含む。第2外接マッピングテーブル620には、第2ストレージ20のボリュームとそのボリュームにマッピングした外部ボリュームに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0068】
具体的に述べると、外接元ストレージVOLID621には、外接元のストレージを識別するためのIDが格納されている。外接元ストレージ仮想VOLID622には、外接元のストレージ内のマッピングされる仮想ボリュームを識別するためのIDが格納されている。外接先ストレージID623には、外接先のストレージを識別するためのIDが格納されている。外接先ストレージVOLID624には、外接先のストレージ内のマッピングしたボリュームを識別するためのIDが格納されている。接続状態(接続/切断)625には、外接の接続状態を示す情報が格納されている。
【0069】
図7はバックアップルート管理テーブル700を説明するための図である。バックアップルート管理テーブル700は、情報(値)を格納する列(カラム)として、バックアップルートID701と、バックアップターゲット名702と、ルート番号703と、ルート構成704とを含む。バックアップルート管理テーブル700には、バックアップデータ(バックアップイメージ)の取得ルート(バックアップルート、ルート又は経路と称呼される場合がある。)に関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0070】
具体的に述べると、バックアップルートID701には、バックアップルートを識別するためのIDが格納されている。バックアップターゲット名702には、バックアップの対象となるプロダクションの名称が格納されている。ルート番号703には、同一のバックアップターゲットに対応するバックアップルートを識別(区別)するための識別番号が格納されている。ルート構成704には、バックアップルートの構成を示す情報(例えば、バックアップルートを構成するボリュームのID)が格納されている。
【0071】
なお、このバックアップルート管理テーブル700は、管理サーバ100が第1ストレージ10及び第2ストレージ20から取得した各種テーブル(
図5A乃至
図6C)に基づいて、管理サーバ100によって作成される。
【0072】
図8はバックアップルート実行結果管理テーブル800を説明するための図である。バックアップルート実行結果管理テーブル800は、情報(値)を格納する列(カラム)として、バックアップルートID801と、バックアップターゲット名802と、ルート番号803と、実行日時804と、MF側のバックアップ状況805とを含む。バックアップルート実行結果管理テーブル800には、バックアップルートにおけるバックアップの実行結果に関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップルートID801、バックアップターゲット名802及びルート番号803のそれぞれには、既述のバックアップルートID701、バックアップターゲット名702及びルート番号703に格納される情報と同様の情報が格納されている。実行日時804には、バックアップの実行日時が格納されている。MF側のバックアップ状況805には、バックアップの実行結果(状況)を示す情報が格納されている。
【0073】
図9Aは第1バックアップデータ管理テーブル900を説明するための図である。第1バックアップデータ管理テーブル900は、情報(値)を格納する列(カラム)として、バックアップ用ボリュームID901と、コピー番号902と、バックアップ日時903と、期限切れ日時904とを含む。第1バックアップデータ管理テーブル900には、バックアップ用ボリューム31のバックアップイメージに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップ用ボリュームID901には、バックアップ用ボリュームを識別するためのIDが格納されている。コピー番号902には、バックアップイメージに対応付けられているコピー番号が格納されている。バックアップ日時903には、バックアップイメージの取得時刻が格納されている。期限切れ日時904には、バックアップイメージの期限切れ日時が格納されている。
【0074】
図9Bは第2バックアップデータ管理テーブル910を説明するための図である。第2バックアップデータ管理テーブル910は、情報(値)を格納する列(カラム)として、バックアップ用ボリュームID911と、コピー番号912と、バックアップ日時913と、期限切れ日時914とを含む。第2バックアップデータ管理テーブル910には、バックアップ用ボリューム32のバックアップイメージに関する関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップ用ボリュームID911、コピー番号912、バックアップ日時913及び期限切れ日時914のそれぞれには、既述したバックアップ用ボリュームID901、コピー番号902、バックアップ日時903及び期限切れ日時904に格納される情報と同様の情報が格納されている。
【0075】
図10はバックアップ世代情報管理テーブル1000を説明するための図である。バックアップ世代情報管理テーブル1000は、情報(値)を格納する列(カラム)として、バックアップルートID1001と、コピー番号1002と、バックアップ日時1003と、期限切れ日時1004とを含む。バックアップ世代情報管理テーブル1000には、バックアップデータに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0076】
具体的に述べると、バックアップルートID1001には、バックアップルートを識別するためのIDが格納されている。コピー番号1002、バックアップ日時1003及び期限切れ日時1004のそれぞれには、既述したコピー番号902、バックアップ日時903及び期限切れ日時904に格納される情報と同様の情報が格納されている。
【0077】
図11は第3外接マッピングテーブル1100を説明するための図である。第3外接マッピングテーブル1100は、情報(値)を格納する列(カラム)として、バックアップ用ボリュームID1101と、アクセス用VOLID1102と、用途1103と、を含む。第3外接マッピングテーブル1100には、ボリュームのマッピングに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、バックアップ用ボリュームID1101には、バックアップ用ボリュームを識別するためのIDが格納されている。アクセス用VOLID1102には、アクセス用ボリュームを識別するためのIDが格納されている。用途1103には、アクセス用VOLID1102で識別されるアクセス用ボリュームの用途を示す情報であり、例えば、データ検証用のベリファイ、バックアップイメージのリストア、あるいは、バックアップイメージを更にバックアップするなどの用途に関する情報が格納される。
【0078】
図12は紐づけテーブル1200を説明するための図である。紐づけテーブル1200には、情報(値)を格納する列(カラム)として、バックアップ用ボリュームID1201と、アクセスVOLID1202と、紐づけ済みコピー番号1203と、を含む。紐づけテーブル1200には、コピー番号とアクセス用ボリュームとの紐づけ(対応づけ)に関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。
【0079】
具体的に述べると、バックアップ用ボリュームID1201及びアクセスVOLID1202のそれぞれには、バックアップ用ボリュームID1101及びアクセス用VOLID1102に格納される情報と同様の情報が格納されている。
【0080】
紐づけ済みコピー番号1203には、アクセス用ボリューム35に紐づけられたコピー番号が格納されている。
【0081】
図13は第4外接マッピングテーブル1300を説明するための図である。第4外接マッピングテーブル1300は、情報(値)を格納する列(カラム)として、外接元ストレージ仮想VOLID1301と、外接先ストレージID1302と、外接先ストレージアクセス用VOLID1303と、接続状態(接続/切断)1304とを含む。第4外接マッピングテーブル1300には、ボリュームのマッピングに関する各列に対応する情報が互いに対応付けられて行単位の情報(レコード)として格納されている。具体的に述べると、外接元ストレージ仮想VOLID1301には、外接元となる仮想ボリュームを識別するためのIDが格納されている。外接先ストレージID1302には、外接先となるストレージを識別するためのIDが格納されている。外接先ストレージアクセス用VOLID1303には、外接先ストレージのアクセス用ボリュームを識別するためのIDが格納されている。接続状態(接続/切断)1304には、接続状態を示す情報が格納されている。
【0082】
<概要>
以下、第1実施形態に係るバックアップシステムの概要について説明する。まず、バックアップシステムの基本的な動作(バックアップ基本動作及びデータの検証)について説明する。
【0083】
<バックアップ基本動作>
第1ストレージ10は、第1True Copy管理テーブル510を参照し、True Copyにより、プロダクションボリューム11に書き込まれたデータを、第2ストレージ20のレプリカボリューム21にコピーし、プロダクションボリューム11とレプリカボリューム21との同期を維持する。
【0084】
設定されたバックアップ取得日時になると、第1ストレージ10は、第1ボリュームコピー管理テーブル500及び第1外接マッピングテーブル520を参照し、SI(Shadow Image)及び外接機能により、プロダクションボリューム11のデータのコピーを作成し、データのコピーをバックアップ用ボリューム31に格納し、バックアップ用ボリューム31を更新する。
【0085】
BPストレージ30は、Thin Imageにより、バックアップ用ボリューム31の更新前から更新された部分を、データ保護領域33を構成するプールボリュームに退避することにより、バックアップイメージを作成し、空きペアのコピー番号を付与してデータ保護領域33に格納する。
【0086】
同様に、設定されたバックアップ取得日時(即ち、上記バックアップ取得日時と同じ日時)にて、第2ストレージ20は、第2ボリュームコピー管理テーブル600及び第2外接マッピングテーブル620を参照し、SI(Shadow Image)及び外接機能により、レプリカボリューム21のデータのコピーを作成し、データのコピーをバックアップ用ボリューム32に格納し、バックアップ用ボリューム32を更新する。
【0087】
BPストレージ30は、Thin Imageにより、バックアップ用ボリューム32の更新前からの更新された部分を、データ保護領域33を構成するプールボリュームに退避することにより、バックアップイメージを作成し、空きペアのコピー番号を付与してデータ保護領域33に格納する。
【0088】
以上により、バックアップシステムでは、第1ストレージ10のプロダクションボリューム11に対して、仮想ボリューム12及びBPストレージ30の第1バックアップ用ボリューム31により構成される第1バックアップルートによって、バックアップイメージ(以下、「第1ルートBPイメージ」と称呼される。)を取得し、取得した第1ルートBPイメージをデータ保護領域33に格納する。
【0089】
バックアップシステムでは、第1ストレージ10のプロダクションボリューム11に対して、第2ストレージ20のレプリカボリューム21、仮想ボリューム22及びBPストレージの第2バックアップ用ボリューム32により構成される第2バックアップルートによって、バックアップイメージ(以下、「第2ルートBPイメージ」と称呼される。)を取得し、取得した第2ルートBPイメージをデータ保護領域33に格納する。
【0090】
ここで、同一のバックアップ取得日時にて取得された、第1ルートBPイメージ及び第2ルートBPイメージは、同一のバックアップ取得日時にて取得されたプロダクションボリューム11のバックアップデータである。即ち、このバックアップシステムでは、2つのバックアップルート(バックアップ取得ルート)でバックアップデータを2重化している。更に、このバックアップシステムでは、2重化したバックアップデータ(バックアップイメージ)のうちの一方をデータ保護領域33に格納する。これにより、データ保護領域33の容量を効率よく利用することにより、特定の容量のデータ保護領域33に対して、より多くの数のバックアップイメージの世代を格納することができる。
【0091】
以上が、プロダクションPD1(プロダクションボリューム11)を対象としたバックアップ基本動作である。なお、プロダクションPD2についても同様のバックアップ基本動作により、プロダクションPD2を対象としたバックアップデータを取得し、データ保護領域33に格納することができる。
図1において、この場合に使用するボリューム11及び仮想ボリューム12に相当する第1ストレージ10のボリューム及び仮想ボリューム、レプリカボリューム21及び仮想ボリューム22に相当する第2ストレージ20のボリューム及び仮想ボリューム、並びに、第1バックアップ用ボリューム31及び第2バックアップ用ボリューム32に相当するBPストレージ30のバックアップ用ボリュームの図示は省略している。
【0092】
<データの検証>
ユーザのGUI画面2000(
図20)の操作によりバックアップの世代が選択されると、検証サーバ200は、管理サーバ100に、選択された世代のバックアップ日時、バックアップターゲット名及びアクセス用ボリュームを指定したリストア指示を、BPストレージ30に対して送信させる。なお、GUI画面2000(
図20)については後に詳述する。
【0093】
BPストレージ30は、リストア指示を管理サーバ100から受信すると、第1バックアップデータ管理テーブル900及び第2バックアップデータ管理テーブル910を参照し、指定されたバックアップ日時からコピー番号及びバックアップ用ボリュームのIDを特定する。
【0094】
BPストレージ30は、コピー番号及びバックアップ用ボリュームのIDで特定されるバックアップイメージを、指定されたアクセス用ボリュームに紐づける。なお、BPストレージ30は、紐づけテーブル1200に、コピー番号とアクセス用ボリュームIDとを追加することにより、紐づけテーブル1200を更新する。
【0095】
例えば、取得したコピー番号が「♯5」であり、バックアップ用ボリュームのIDが「32」であり、指定されたアクセス用ボリュームのIDが「35」である場合、BPストレージ30は、アクセス用ボリューム35に、コピー番号「♯5」及びバックアップ用ボリュームID「32」で特定されるバックアップイメージ32bを紐づける(
図1を参照。)。
【0096】
なお、BPストレージ30は、バックアップ世代情報管理テーブル1000を参照して、次のように、指定されたバックアップ日時からバックアップイメージを、指定されたアクセス用ボリュームに紐づけるようにしてもよい。
【0097】
即ち、BPストレージ30は、リストア指示を管理サーバ100から受信すると、バックアップ世代情報管理テーブル1000を参照し、指定されたバックアップ日時からコピー番号及びバックアップルートIDを特定する。
【0098】
BPストレージ30は、コピー番号及びバックアップルートIDで特定されるバックアップイメージを、指定されたアクセス用ボリュームに紐づける。
【0099】
例えば、取得したコピー番号が「♯5」であり、バックアップルートIDが「2」であり、指定されたアクセス用ボリュームのIDが「35」である場合、BPストレージ30は、アクセス用ボリューム35に、コピー番号「♯5」及びバックアップルートID「2」で特定されるバックアップイメージ32bを紐づける(
図1を参照。)。この場合、紐づけテーブル1200には、バックアップルートIDのカラムが追加されており、そのカラムにはバックアップ用ボリュームに対応するバックアップルートを識別するためのIDが格納される。
【0100】
第2ストレージ20が検証サーバ200から、外接指示を受信すると、第2ストレージ20の第4外接マッピングテーブル1300で、BPストレージ30のアクセス用ボリューム35を外接先のアクセス用ボリュームとし、第2ストレージ20の仮想ボリューム23を外接元の仮想ボリュームとしたマッピングを行い、接続状態を「接続」とする。
【0101】
これにより、検証サーバ200は、仮想ボリューム23のデータを参照しデータの検証を行うことができる。即ち、検証サーバ200は、アクセス用ボリューム35がマッピングされた仮想ボリューム23にアクセスすることで、データ保護領域33内の特定の世代のバックアップイメージを構成するデータを読み出し検証することができる。なお、必要に応じて、バックアップ対象(
図1ではプロダクションPD1)に対して仮想ボリューム23のデータをコピーし、データをリストアしてもよい。
【0102】
なお、その後、第2ストレージ20が検証サーバ200から外接解除指示を受信すると、第2ストレージ20は、仮想ボリューム23とBPストレージ30のアクセス用ボリューム35との関係を解消(切断)する。BPストレージ30は、管理サーバ100からの指示に応じて、アクセス用ボリューム35とバックアップイメージ32bとの紐づけを解除する。なお、BPストレージ30は、紐づけテーブル1200から該当する行を削除することにより、紐づけテーブル1200を更新する。
【0103】
以上により、検証サーバ200は、仮想ボリューム23のデータを参照してデータ検証を行うことができる。尚、仮想ボリューム23のデータは、データ検証に限らず、他の用途であってもよい。
【0104】
<バックアップシステムの作動の概要>
バックアップシステムの作動の概要(バックアップデータのデータ保護領域33への格納の最適化)について説明する。
図14A乃至
図14Dはバックアップシステムの作動の概要を説明するための図である。なお、本例では、BPストレージ30は、1日1回の所定の時刻(本例では9:00)にバックアップイメージを取得し、6日間保存するように設定されている。BPストレージ30は、データ保護領域33に取得日時が異なるバックアップイメージの世代を6世代だけ保持するようにしている。
【0105】
BPストレージ30は、第1バックアップ用ボリューム31及び第2バックアップ用ボリューム32のそれぞれが予め決められた数のペア(バックアップイメージ)を持つように、初期状態ではデータ保持用の6世代分のコピー番号と、その他データ格納処理に必要な2世代分のコピー番号とでバックアップイメージを管理する。
【0106】
例えば、BPストレージ30は、初期状態では第1バックアップ用ボリューム31の4世代分のコピー番号と、第2バックアップ用ボリューム32の4世代分のコピー番号とを用いて、バックアップイメージを管理する。
【0107】
まず、第1ルートBPイメージ及び第2ルートBPイメージの両方が取得できた(バックアップが成功した)場合について説明する。
【0108】
図14Aのデータ保護領域33は、3世代の第1ルートBPイメージが格納され、3世代の第2ルートBPイメージが格納された状態を示している。
図14Aに示す状態では、第1バックアップ用ボリューム31に対するコピー番号♯6が空きペアとなっており、第2バックアップ用ボリューム32に対するコピー番号♯6が空きペアとなっている。
図14Aに示す状態において、設定されたバックアップ取得日時(1/7日9:00)になると、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージを取得でき、空きのコピー番号♯6を付与し、データ保護領域33に格納する。BPストレージ30は、上述のバックアップ基本動作により、第2ルートBPイメージを取得でき、空きのコピー番号♯6を付与し、データ保護領域33に格納する。
【0109】
これにより、BPストレージ30は、
図14Bに示す状態となる。
図14Bに示すデータ保護領域33には、コピー番号♯6が付与された第1ルートBPイメージと、コピー番号♯6が付与された第2ルートBPイメージとが、直前のバックアップ取得処理によって、取得されている。
【0110】
なお、以降において、コピー番号♯Nが付与された第1ルートBPイメージは、便宜上、第1ルートBPイメージ(♯N)と称呼される場合がある。コピー番号♯Nが付与された第2ルートBPイメージは、便宜上、第2ルートBPイメージ(♯N)と称呼される場合がある
BPストレージ30は以下の第1格納最適化ルール(1)乃至(3)に従って、空きのペアを作成する。
(1)一番古い期限切れのバックアップイメージの世代を削除する。
(2)第1バックアップ用ボリューム31及び第2バックアップ用ボリューム32のそれぞれが、少なくとも一つ以上の空きペアを持つように、直前の処理で取得したバックアップイメージの何れか一方を削除する。
(3)(2)において、データ保護領域33に格納している第1ルートBPイメージと、第2ルートBPイメージとの数の差が生じている場合、その数の差が小さくなるよう(なくなるよう)に、直前の処理で取得したバックアップイメージの何れか一方を削除する。
【0111】
従って、BPストレージ30は、期限切れの第2ルートBPイメージ(♯3)を削除対象に選出し、直前の処理で取得した第1ルートBPイメージ(♯6)を削除対象に選出し、削除する。
【0112】
これにより、BPストレージ30は、
図14Cに示す状態となる。この状態では、第1バックアップ用ボリューム31に対するコピー番号♯6が空きペアとなっており、第2バックアップ用ボリューム32に対するコピー番号♯3が空きペアとなっている。
図14Cに示す状態において、設定されたバックアップ取得日時(1/8日9:00)になると、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージを取得でき、空きのコピー番号♯6を付与し、データ保護領域33に格納する。BPストレージ30は、上述のバックアップ基本動作により、第2ルートBPイメージを取得でき、空きのコピー番号♯3を付与し、データ保護領域33に格納する。これにより、BPストレージ30は、
図14Dに示す状態となる。BPストレージ30は、
図14Dに示す状態において、期限切れの第1ルートBPイメージ(♯3)を削除対象に選出し、直前の処理で取得した第2ルートBPイメージ(♯3)を削除対象に選出し、削除する。以降、同様の動作を行う。なお、BPストレージ30は、後に詳述する第2実施形態のように、第1ルートBPイメージ及び第2ルートBPイメージをこれらの世代が積極的に交互になるように、データ保護領域33に格納していないが、交互になっている。第1ルートBPイメージ及び第2ルートBPイメージが、これらの世代が交互になるようにデータ保護領域33に格納されている場合、一方のバックアップ用ボリュームに障害が発生した場合でも、保持期間全体にわたって均等な間隔のバックアップを検証/復元することができる。なお、この作用効果の詳細は、後述の第2実施形態で説明する。
【0113】
次に、バックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要について説明する。
図15A乃至
図15Dは、バックアップルートの一方に障害が発生した場合のバックアップシステムの作動の概要を説明するための図である。
図16A乃至
図16Fは、障害復旧後のバックアップシステムの作動の概要を説明するための図である。
【0114】
図15Aのデータ保護領域33は、3世代の第1ルートBPバックアップイメージが格納され、3世代の第2ルートBPイメージが格納された状態を示している。
図15Aに示す状態において、1月6日の9:00より後において、第2ストレージ20にて障害OB1が発生した後、設定されたバックアップ取得日時(1/7日9:00)になった場合、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージは取得でき、空きのコピー番号♯6を付与し、データ保護領域33に格納する。一方、BPストレージ30は、第2ルートBPイメージは取得できないのでデータ保護領域33に格納できない。これにより、BPストレージ30は、
図15Bに示す状態となる。
【0115】
このようにルートの一方のみバックアップイメージを格納できた場合、
図15Bに示す状態において、BPストレージ30は以下の第2格納最適化ルール(1)及び(2)に従って、空きのペアを作成する。
(1)一番古い期限切れのバックアップイメージの世代を削除する。
(2)(1)を行っても空きペアのないバックアップ用ボリュームがある場合、そのバックアップ用ボリュームに対して空きペアのコピー番号を追加する。
【0116】
従って、BPストレージ30は、期限切れの第2ルートBPイメージ(♯3)を削除対象に選出し、削除する。更に、BPストレージ30は、空きペアのコピー番号♯7を追加する。これにより、BPストレージ30は、
図15Cに示す状態になる。
【0117】
図15Cに示す状態において、設定されたバックアップ取得日時(1/8日9:00)になると、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージを取得でき、空きのコピー番号♯7を付与し、データ保護領域33に格納する。一方、依然、第2バックアップルートにおいて、障害は解消されていないので、第2ルートBPイメージを取得できない。これにより、BPストレージ30は、
図15Dに示す状態となる。
【0118】
図15Dに示す状態において、BPストレージ30は上述した第2格納最適化ルール(1)及び(2)に従って、空きのペアを作成する。従って、BPストレージ30は、期限切れの第1ルートBPイメージ(♯3)を削除対象に選出し、削除する。なお、この場合、(1)を行っても空きペアのないバックアップ用ボリュームが存在しないので、空きペアのコピー番号は追加されない。
【0119】
これにより、BPストレージ30は、
図16Aに示す状態になる。
図16Aに示す状態において、障害が復旧しその後設定されたバックアップ取得日時(1/9日9:00)になると、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージを取得でき、空きのコピー番号♯3を付与し、データ保護領域33に格納する。BPストレージ30は、上述のバックアップ基本動作により、第2ルートBPイメージを取得でき、空きのコピー番号♯3を付与し、データ保護領域33に格納する。これにより、BPストレージ30は、
図16Bに示す状態になる。
【0120】
BPストレージ30は、
図16Bに示す状態において、既述の第1格納最適化ルール(1)乃至(3)に従って、期限切れの第2ルートBPイメージ(♯4)を削除対象に選出し、直前の処理で取得した第1ルートBPイメージ(♯3)を削除対象に選出し、削除する。これにより、BPストレージ30は、
図16Cに示す状態になる。
図16Cに示す状態において、設定されたバックアップ取得日時(1/10日9:00)になると、BPストレージ30は、上述のバックアップ基本動作により、第1ルートBPイメージを取得でき、空きのコピー番号♯3を付与し、データ保護領域33に格納する。BPストレージ30は、上述のバックアップ基本動作により、第2ルートBPイメージを取得でき、空きのコピー番号♯4を付与し、データ保護領域33に格納する。
【0121】
これにより、BPストレージ30は、
図16Dに示す状態になる。BPストレージ30は、
図16Dに示す状態において、既述の第1格納最適化ルール(1)乃至(3)に従って、期限切れの第1ルートBPイメージ(♯4)を削除対象に選出し、直前の処理で取得した第1ルートBPイメージ(♯3)を削除対象に選出し、削除する。
【0122】
これにより、BPストレージ30は、
図16Eに示す状態になる。
図16Eに示す状態では、第1バックアップ用ボリューム31に対するコピー番号♯3及びコピー番号♯4が空きペアとなっており、第2バックアップ用ボリューム32に対するコピー番号♯6が空きペアとなっている。このように、復旧後、一方の第1バックアップ用ボリューム31の空きペアが2つになると、BPストレージ30は、空きペアの一つを削除する(即ち、不要になったコピー番号の一つを削除する。)。これにより、BPストレージ30は、
図16Fの状態となり、不要な空きペアを削除することができる。
【0123】
なお、第1実施形態では、復旧後、第1ルートBPイメージ及び第2ルートBPイメージのペアの数の差がなくなることを優先するので、
図16Eの第2ルートBPイメージ(♯3)及び第2ルートBPイメージ(♯4)のように、第1ルートBPイメージの世代及び第2ルートBPイメージの世代が、交互にならないで格納される場合が生じ得る。第1実施形態は、この点が後述する第2実施形態とは違う。
【0124】
<具体的作動>
バックアップシステムの具体的作動について説明する。
図17は管理サーバ100のCPU130が実行する処理フローを示すフローチャートである。CPU130は
図17のステップ1700から処理を開始してステップ1705に進み、バックアップルート実行結果管理テーブル800を参照して、両方のルートでバックアップ格納が成功したことを確認できたか否かを判定する。
【0125】
両方のルートでバックアップ格納が成功したことを確認できた場合、CPU130はステップ1705にて「YES」と判定してステップ1710に進み、第1管理情報112(第1バックアップデータ管理テーブル900及び第2バックアップデータ管理テーブル910)を読み込み、各バックアップ世代(バックアップイメージの世代)についての情報を読み込む。
【0126】
その後、CPU130はステップ1715に進み、期限切れのバックアップ世代があるか否かを判定する。
【0127】
期限切れバックアップ世代がある場合、CPU130はステップ1715にて「YES」と判定してステップ1720に進み、最も古い期限切れのバックアップ世代に削除フラグを立てた後、ステップ1725に進む。期限切れのバックアップ世代がない場合、CPU130はステップ1715にて「NO」と判定してステップ1725に直接進む。
【0128】
CPU130はステップ1725に進むと、削除フラグ付きの世代(世代のコピー番号)を空きのペアとみなした上で、空きのペアがないバックアップ経路(即ち、バックアップ用ボリュームに対する空きのコピー番号)があるか否かを判定する。
【0129】
空きのペアがないバックアップ経路がある場合、CPU130はステップ1725にて「YES」と判定してステップ1730に進み、空きのペアがない経路の直前の処理で取得したバックアップ(バックアップイメージ)に削除フラグを立てた後、ステップ1750に進む。
【0130】
空きのペアがないバックアップ経路がない場合、CPU130はステップ1725にて「NO」と判定してステップ1735に進み、削除フラグ付きの世代(世代のコピー番号)を空きのペアとみなした上で、両方の経路(バックアップルート)でバックアップ取得可能数(即ち、空きのペアのコピー番号の数)に差があるか否かを判定する。
【0131】
両方の経路でバックアップ取得可能数に差がある場合、CPU130はステップ1735にて「YES」と判定してステップ1740に進む、直前の処理で取得したバックアップ(バックアップイメージ)のうち、取得可能数が少ない経路のものに削除フラグを立てた後、ステップ1750に進む。
【0132】
両方の経路でバックアップ取得可能数に差がない場合、CPU130はステップ1735にて「NO」と判定してステップ1745に進み、直前の処理で取得したバックアップ(バックアップイメージ)のうち最新のバックアップ世代を持っている経路のものに削除フラグを立てた後、ステップ1750に進む。
【0133】
CPU130はステップ1750に進むと、削除フラグを立てたバックアップ世代を削除するように、BPストレージ30に指令する。BPストレージ30は、指令を受けると、削除フラグを立てたバックアップ世代を削除する。
【0134】
その後、CPU130はステップ1755に進み、初期のペア数より増えており、空きのペア数が2以上のルートがあるか否かを判定する。
【0135】
初期のペア数より増えており、空きのペア数が2以上のルートがある場合、そのルートの空きのペアが不要となる。従って、この場合、CPU130はステップ1755にて「YES」と判定してステップ1760に進み、空きのペアのうち番号が大きいものを一つ削除する。
【0136】
初期のペア数より増えており、空きのペア数が2以上のルートがない場合、CPU130はステップ1755にて「NO」と判定してステップ1795に進み、本処理フローを一旦終了する。
【0137】
なお、ステップ1705の処理で両方のルートでバックアップ格納が成功したことを確認できなかった場合、CPU130はステップ1705にて「NO」と判定してステップ1765を介して
図18の処理フローのステップ1800に進む。
【0138】
図18は管理サーバ100のCPU130が実行する処理フローを示すフローチャートである。CPU130は
図17のステップ1705にて「NO」と判定してステップ1800に進むと処理を開始してステップ1805に進み、片方のルートのみでバックアップ格納が成功したことを確認できたか否かを判定する。
【0139】
片方のルートのみでバックアップ格納が成功したことを確認できなかった場合、両方のルートのいずれでもバックアップ格納が成功していない。従って、この場合、CPU130は、ステップ1805にて「NO」と判定してステップ1895に進んで本処理フローを一旦終了する。
【0140】
片方のルートのみでバックアップ格納が成功したことを確認できた場合、CPU130は第1管理情報112(第1バックアップデータ管理テーブル900及び第2バックアップデータ管理テーブル910)を読み込み、各バックアップ(バックアップイメージ)の世代についての情報を読み込む。
【0141】
その後、CPU130はステップ1815に進み、期限切れのバックアップ世代があるか否かを判定する。
【0142】
期限切れバックアップ世代がある場合、CPU130はステップ1815にて「YES」と判定してステップ1820に進み、最も古い期限切れのバックアップ世代に削除フラグを立てた後、ステップ1825に進む。期限切れのバックアップ世代がない場合、CPU130はステップ1815にて「NO」と判定してステップ1825に直接進む。
【0143】
CPU130はステップ1825に進むと、CPU130は、削除フラグ付きの世代(世代のコピー番号)を空きのペアとみなした上で、空きのペアがないバックアップ経路(即ち、バックアップ用ボリュームに対する空きのコピー番号)があるか否かを判定する。
【0144】
空きのペアがないバックアップ経路がある場合、CPU130はステップ1825にて「YES」と判定してステップ1830に進み、空きのないバックアップ経路にペア追加フラグを立てた後、ステップ1835に進む。空きのペアがないバックアップ経路がない場合、CPU130はステップ1825にて「NO」と判定してステップ1835に直接進む。
【0145】
CPU130は、ステップ1835に進むと、削除フラグを立てたバックアップ世代を削除するように、BPストレージ30に指令する。BPストレージ30は、指令を受けると、削除フラグを立てたバックアップ世代を削除する。
【0146】
その後、CPU130は、ステップ1840に進み、ペア追加フラグを立てた経路にペア(空きペア(コピー番号))を一つ追加するように、BPストレージ30に指令する。BPストレージ30は、指令を受けると、ペア追加フラグを立てた経路にペア(空きペア(コピー番号))を一つ追加する。その後、CPU130はステップ1895に進んで、本処理フローを一旦終了する。
【0147】
図19は、検証サーバ200のCPU230が実行する処理フローを示すフローチャートである。CPU230はステップ1900から処理を開始して以下に述べるステップ1905乃至ステップ1930の処理を順に実行した後、ステップ1995に進んで本処理フロー一旦終了する。
【0148】
ステップ1905:CPU230はユーザの操作に基づき検証コンテンツを起動する。
【0149】
ステップ1910:CPU230は管理サーバ100からバックアップルート管理テーブル700を取得し、バックアップルート管理テーブル700を読み込み、ユーザが指定した検証対象とバックアップターゲット名が一致しているバックアップルートIDを取得する。
【0150】
ステップ1915:CPU230は管理サーバ100からバックアップ世代情報管理テーブル1000を取得し、バックアップ世代情報管理テーブル1000を読み込み、ステップ1910にて取得したバックアップルートIDのバックアップ世代に関する情報(バックアップ日時及び期限切れ日時等)を取得する。
【0151】
ステップ1920:CPU230は2ルートのバックアップ世代に関する情報をマージし、バックアップ日時でソートしてディスプレイ270のGUI画面上に表示する。
図20はこの処理でディスプレイ270に表示されるGUI画面の一例である。GUI画面2000は、バックアップ世代情報画像2001と、処理開始ボタン2002と、を含む。バックアップ世代情報画像2001は、データ保護領域33に格納されているバックアップの取得日時、期限切れ日時及び期限切れか否かを示す情報を含む。処理開始ボタン2002は、画像で構成されたボタンである。
【0152】
ステップ1925:CPU230はユーザのGUI画面2000の操作に基づき検証対象を特定する。なお、例えば、ユーザがGUI画面2000上で検証したいバックアップ世代(行)を選択して処理開始ボタン2002を押下(操作)すると、検証対象が選択されたバックアップ世代に特定される。
【0153】
ステップ1930:CPU230は、ステップ1925で特定した(選択された)検証対象のバックアップ世代のリストアを、管理サーバ100を介してBPストレージ30に指示する。CPU230は、BPストレージ30により指定された世代のバックアップイメージに対応するコピー番号が紐づけられたアクセス用ボリューム35に仮想ボリューム23をマッピングする。これにより、検証サーバ200は、データ保護領域33に格納されたバックアップイメージを、仮想ボリューム23にアクセスすることで読み出し検証することができる。
【0154】
<効果>
以上説明したように、第1実施形態に係るバックアップシステムは、データ保護領域33に格納するバックアップデータを取得する経路を複数化(本例では二重化)することにより可用性を向上できる。更に、第1実施形態に係るバックアップシステムは、二重化したバックアップデータの世代が重複しないように、データ保護領域33に格納することにより、データ保護領域33の容量を効率よく利用して、限られた容量のデータ保護領域33に、より多くの数のバックアップデータの世代を格納することができる。
【0155】
<<第2実施形態>>
本発明の第2実施形態に係るバックアップシステムについて説明する。第1実施形態では、初期状態から問題なく順調にバックアップイメージの取得ができた場合、データ保護領域33に保持される第1ルートBPイメージと第2ルートBPイメージとは、これらの世代が交互となるように格納される。
【0156】
一方で、エラーなどが生じてデータ保護領域33に保持されている第1ルートBPイメージの世代の数と第2ルートBPイメージの世代の数とに差が生じた場合、その差が小さくなるように、第1ルートBPイメージ及び第2ルートBPイメージの何れかをデータ保護領域33に格納する。
【0157】
これは第1実施形態では、保持するバックアップイメージの世代の数に差(即ち、データ保護領域33に格納する第1ルートBPイメージと第2ルートBPイメージとの数の差)が生じないことを優先するので、例えば、障害が発生し復旧した後など、第1ルートBPイメージの及び第2ルートBPイメージの世代が交互ではない状態で、これらのデータ保護領域33に格納されてしまう(例えば、
図16Eの第2ルートBPイメージ(♯3)及び第2ルートBPイメージ(♯4)を参照。)。
【0158】
これに対して、第2実施形態に係るバックアップシステムは、第1ルートBPイメージと第2ルートBPイメージとの両方の取得が成功した場合、第1ルートBPイメージの世代と、第2ルートBPイメージの世代とが交互になるように、積極的にバックアップイメージ(即ち、前回取得したルートとは異なるルートのバックアップイメージ)をデータ保護領域33に格納する点のみにおいて、第1実施形態に係るバックアップシステムと相違点を有する。
【0159】
具体的に述べると、第2実施形態に係るバックアップシステムは、第1ルートBPイメージと第2ルートBPイメージとの両方の取得が成功した場合、BPストレージ30は第1実施形態の第1格納最適化ルール(1)乃至(3)に代えて、以下の第3格納最適化ルール(1)乃至(3)に従って、空きのペアを作成する。
(1)一番古い期限切れのバックアップイメージの世代を削除する。
(2)第1バックアップ用ボリューム31及び第2バックアップ用ボリューム32のそれぞれが、少なくとも一つ以上の空きペアを持つように、直前の処理で取得したバックアップイメージのうち何れか一方を削除する。
(3)(2)において最新のバックアップイメージの世代を有しているルートの方のバックアップイメージを削除する。
【0160】
これにより、例えば、第2実施形態に係るバックアップシステムは、障害が発生し復旧した後であっても、第1ルートBPイメージ及び第2ルートBPイメージは、これらの世代が交互になるようにデータ保護領域33に格納される(
図21A及び
図22Bを参照。)。
【0161】
両ルートが保持する世代数に差が生じた場合、第1実施形態の手法では、保持している世代が少ない方に連続してバックアップイメージを格納するが、ボリュームの障害発生時に復元したいバックアップ取得日時(AT TIME)付近のデータがなくなるリスクがある。これを防ぐため、第2実施形態では平常時は両ルートで積極的に世代が交互になるようにバックアップイメージをデータ保護領域33に格納する。これにより、障害が発生した場合であっても、保持期間全体にわたって均等な間隔のバックアップデータを検証/復元することができる。
【0162】
以下、この相違点を中心として説明する。
<概要>
図22Aは第2実施形態に係るバックアップシステムの効果を説明するための図である。
図22Aに示すBPストレージ30の状態は、設定されたバックアップ取得日時(1/14日9:00)の第2ルートBPイメージ(♯6)がデータ保護領域33に格納された後、1/15日に障害(OB2)がBPストレージ30の第2バックアップ用ボリューム32に発生した後の状態である。
【0163】
図22Aに示す状態において、BPストレージ30は既述の第2格納最適化ルール(1)及び(2)に従って、第1ルートBPイメージ(♯3)を削除対象に選出し、第1バックアップ用ボリューム31に対する空きペアを追加する。その後、BPストレージ30は、設定されたバックアップ取得日時になるたび、既述の第2格納最適化ルール(1)及び(2)に従って、障害が発生していない方のルートで作成したバックアップイメージ(即ち、第1ルートBPイメージ)をデータ保護領域33に格納する。
図22Bは、その後、1/18日に復旧した場合のBPストレージ30の状態を示す。
【0164】
図22A及び
図22Bに示すこのような例では、障害発生時(1/15日)から障害復旧(1/18日)までの間、障害(OB2)が第2バックアップ用ボリューム32に発生しているので、1/10日取得の第2ルートBPイメージ(♯3)、1/12日取得の第2ルートBPイメージ(♯4)及び1/14日取得の第2ルートBPイメージ(♯5)を用いて、バックアップデータ(バックアップイメージ)のリストアを行うことができない。
【0165】
一方、障害発生時(1/15日)から障害復旧(1/18日)までの間1/9日に取得の第1ルートBPイメージ(♯3)、1/11日に取得の第1ルートBPイメージ(♯4)及び1/13日に取得の第1ルートBPイメージ(♯5)などを用いて、バックアップデータ(バックアップイメージ)のリストアを行うことができる。
【0166】
このように、第2実施形態に係るバックアップシステムは、第1ルートBPイメージ及び第2ルートBPイメージを、世代が交互になるようにデータ保護領域33に格納しているので、一方のルートのデータにより検証(リストア)が不可能となった場合であっても、データの検証(リストア)が不可能な世代の間隔は一世代だけで済むことになる。
【0167】
従って、第2実施形態に係るバックアップシステムは、一方のバックアップ用ボリュームに障害が発生した場合において、データの検証(リストア)が不可能な世代の間隔が長くなってしまう可能性を低下できる。これにより、第2実施形態に係るバックアップシステムは、一方のバックアップ用ボリュームに障害時が発生した場合であっても、保持期間全体にわたって均等な間隔(1世代おきの均等な間隔)でバックアップデータを検証/復元することができる。例えば、上述した例では、第1バックアップルートのBPストレージ30のボリューム障害発生時には3日の間のデータが検証不可となるが、2サイクル(2世代)に1回の間隔でバックアップイメージにアクセスできる。
【0168】
<具体的作動>
第2実施形態に係るバックアップシステムの具体的作動について説明する。第2実施形態に係るバックアップシステムは、
図17に代えて
図23に示す処理フロー、既述の
図18及び
図19の処理フローを実行する。既述の
図18及び
図19の処理フローについては、説明を省略する。以下、
図23に示す処理フローについて説する。
【0169】
図23は、第2実施形態に係るバックアップシステムの管理サーバ100のCPU130が実行する処理フローを示すフローチャートである。このフローチャートは、
図17のステップ1730乃至ステップ1745が、ステップ2305及びステップ2310に置換された点以外、
図17のフローチャートと同じである。従って、以下の説明では、
図17と重複する処理の詳細な説明は省略する。
【0170】
CPU130は、ステップ2300から処理を開始して既述のステップ1705乃至ステップ1725及びステップ1755のうちの適当な処理を実行する。
【0171】
CPU130はステップ1725に進むと、削除フラグ付きの世代(世代のコピー番号)を空きのペアとみなした上で、空きのペアがないバックアップ経路(即ち、バックアップ用ボリュームに対する空きのコピー番号)があるか否かを判定する。
【0172】
空きのペアがないバックアップ経路がある場合、CPU130はステップ1725にて「YES」と判定してステップ2305に進み、空き世代がない経路の直前の処理で取得したバックアップ(バックアップイメージ)に削除フラグを立てた後、ステップ1750に進む。
【0173】
空きのペアがないバックアップ経路がない場合、CPU130はステップ1725にて「NO」と判定してステップ2310に進み、最新のバックアップ取得世代を持っている経路の直前の処理で取得したバックアップ(バックアップイメージ)に削除フラグを立てる。その後、CPU130はステップ1750に進む。
【0174】
CPU130はステップ1750に進むと既述の処理を実行し、その後既述のステップ1755及びステップ1760のうちの適当な処理を実行した後、ステップ2395に進んで本処理フローを一旦終了する。バックアップシステムでは、管理サーバ100のCPU130がこのような処理フローを実行することにより、BPストレージ30は、第1ルートBPイメージ及び第2ルートBPイメージを、これらの世代が積極的に交互になるように、データ保護領域33に格納できる。
【0175】
<効果>
以上説明したように、第2実施形態に係るバックアップシステムは、データ保護領域33に格納するバックアップデータを取得する経路を複数化(本例では二重化)することにより可用性を向上できる。更に、第2実施形態に係るバックアップシステムは、二重化したバックアップデータの世代が重複しないように、データ保護領域33に格納することにより、データ保護領域33の容量を効率よく利用して、限られた容量のデータ保護領域33に、より多くの数のバックアップデータの世代を格納することができる。更に、第2実施形態に係るバックアップシステムは、障害時が発生した場合も、保持期間全体にわたって均等な間隔のバックアップデータを検証/復元することができる。
【0176】
<<変形例>>
本発明は上記各実施形態に限定されることなく、本発明の範囲内において種々の変形例を採用することができる。更に、上記各実施形態及び下記の変形例は、本発明の範囲を逸脱しない限り、互いに組み合わせることが可能である。
【0177】
上記各実施形態において、バックアップ対象の一つのプロダクションに対して、バックアップルートの数は2つであるが、一つのプロダクションに対するバックアップルートの数は3以上であってもよい。
【0178】
この場合、例えば、本発明は以下の構成[1]及び[2]をとることもできる。
【0179】
[1]
同一のバックアップ対象に対して異なる複数のバックアップルートのそれぞれを構成する複数のストレージ装置と、
複数の前記バックアップルートに対応する複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、
を備え、
前記バックアップストレージ装置は、
複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、
複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する、
バックアップシステム。
【0180】
[2]
複数のストレージ装置と、
複数のバックアップ用ボリューム、及び、外部の装置からアクセスできない記憶領域であるデータ保護領域を有するバックアップストレージ装置と、
を用いたバックアップ方法であって、
複数の前記ストレージ装置によって、同一のバックアップ対象に対して異なる複数のバックアップルートを形成し、
前記バックアップストレージ装置によって、
複数の前記バックアップルートのそれぞれを経由して、同一のバックアップ対象のデータのコピーのそれぞれを複数の前記バックアップ用ボリュームのそれぞれに格納し、
複数の前記バックアップ用ボリュームのそれぞれについての複数世代のバックアップイメージを、前記データ保護領域に格納する、
バックアップ方法。
【0181】
上記各実施形態において、2つのルートにより取得した二重化されたバックアップデータ(バックアップイメージ)の一つを削除せずに、そのままデータ保護領域33に格納するようにしてもよい。この場合においても、可用性を向上できる。ただし、上記各実施形態に比べてデータ保護領域33の容量の利用効率は低下する。
【0182】
上記各実施形態において、アクセス用ボリューム35が検証用ボリュームとして使用されてもよい。即ち、BPストレージは、検証サーバ200からのリストア指示を受けて、指定した世代のバックアップイメージに対応するコピー番号をアクセス用ボリューム35に紐づける。BPストレージは、アクセス用ボリュームを検証サーバ200にマウントする。これにより、検証サーバ200は、アクセス用ボリューム35にアクセスすることでデータ保護領域に格納されたバックアップイメージを読み出し検証することができる。
【符号の説明】
【0183】
1…ホスト、10…第1ストレージシステム、11…プロダクションボリューム、12…仮想ボリューム、20…第2ストレージシステム、21…レプリカボリューム、22…仮想ボリューム、23…仮想ボリューム、30…BPストレージシステム、31…第1バックアップ用ボリューム、32…第2バックアップ用ボリューム、33…データ保護領域、34…管理データボリューム、35…アクセス用ボリューム、100…管理サーバ、200…検証サーバ