(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-25
(45)【発行日】2025-01-09
(54)【発明の名称】計算機システム及びデータ制御方法
(51)【国際特許分類】
G06F 11/14 20060101AFI20241226BHJP
G06F 3/06 20060101ALI20241226BHJP
G06F 13/10 20060101ALI20241226BHJP
【FI】
G06F11/14 669
G06F3/06 301X
G06F3/06 301Z
G06F3/06 304F
G06F13/10 340A
(21)【出願番号】P 2022156456
(22)【出願日】2022-09-29
【審査請求日】2023-06-06
(73)【特許権者】
【識別番号】524132520
【氏名又は名称】日立ヴァンタラ株式会社
(74)【代理人】
【識別番号】110000279
【氏名又は名称】弁理士法人ウィルフォート国際特許事務所
(72)【発明者】
【氏名】新井 政弘
(72)【発明者】
【氏名】出口 彰
(72)【発明者】
【氏名】小関 英通
【審査官】坂東 博司
(56)【参考文献】
【文献】特開2021-174392(JP,A)
【文献】特表2012-531654(JP,A)
【文献】特開2011-076128(JP,A)
【文献】米国特許出願公開第2021/0406129(US,A1)
【文献】米国特許出願公開第2017/0060710(US,A1)
【文献】米国特許第06694447(US,B1)
【文献】米国特許第11327679(US,B2)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/14
G06F 3/06
G06F 13/10
(57)【特許請求の範囲】
【請求項1】
第1のストレージシステムと、フェイルオーバ処理時に新たに構成される第2のストレージシステムと、前記第1のストレージシステム及び前記第2のストレージシステムを管理する管理装置とを有する計算機システムであって、
前記管理装置は、プロセッサを有し、
前記プロセッサは、
前記第1のストレージシステムの第1のボリュームのバックアップデータを、前記第1のストレージシステム及び第2のストレージシステム以外に作成し、
前記第1のボリュームのバックアップデータに、前記第1のストレージ
システムが有する第1のボリュームの識別情報を付与し、
前記第1のストレージシステムから前記第2のストレージシステムへのフェイルオーバ処理において、
前記第2のストレージシステムに第2のボリュームを構成し、
前記第1のボリュームのバックアップデータに基づいて、前記第1のボリュームのデータを前記第2のボリュームに復元すると共に、前記バックアップデータに付与された前記識別情報を前記第2のボリュームに継承し、
前記フェイルオーバ処理の後では、前記第2のボリュームに格納されたデータに対する更新内容を示す更新情報を管理し、
前記第2のストレージシステムから前記第1のストレージシステムへのフェイルバック処理において、前記更新情報に基づいて、前記第2のボリュームに格納されたデータのうち前記フェイルオーバ処理の後に更新された更新データを、前記第2のボリュームに継承された識別情報にて特定される前記第1のボリュームに移す、計算機システム。
【請求項2】
前記プロセッサは、
前記フェイルオーバ処理の開始後であり前記フェイルバック処理の前において、
前記第1のボリュームを、前記復元に用いたバックアップデータを用いて、前記復元時の第2のボリュームの内容と一致するように更新する、請求項1に記載の計算機システム。
【請求項3】
前記プロセッサは、前記フェイルバック処理において、
選択された前記第1のボリュームの前記識別情報と、前記第2のボリュームに継承された識別情報とが互いに一致しているか否かを判断し、
前記識別情報が互いに一致している場合、前記第1のボリュームは前記バックアップデータの元ボリュームが選択されたと判断し、前記更新データを当該第1のボリュームに移し、
前記識別情報が互いに一致していない場合、前記第1のボリュームないし前記第1のストレージシステムは新たに構成されたものが選択されたと判断し、前記第2のボリュームに格納されたデータ全体を当該第1のボリュームに移すように、処理を切り替える、請求項1に記載の計算機システム。
【請求項4】
第1のストレージシステムと、フェイルオーバ処理時に新たに構成される第2のストレージシステムと、前記第1のストレージシステム及び前記第2のストレージシステムを管理する管理装置とを有する計算機システムによるデータ制御方法であって、
前記管理装置は、プロセッサを有し、
前記プロセッサは、
前記第1のストレージシステムの第1のボリュームのバックアップデータを、前記第1のストレージシステム及び第2のストレージシステム以外に作成し、
前記第1
のボリュームのバックアップデータに、前記第1のストレージ
システムが有する第1のボリュームの識別情報を付与し、
前記第1のストレージシステムから前記第2のストレージシステムへのフェイルオーバ処理において、
前記第2のストレージシステムに第2のボリュームを構成し、
前記第1
のボリュームのバックアップデータに基づいて、前記第1のボリュームのデータを前記第2のボリュームに復元すると共に、前記バックアップデータに付与された前記識別情報を前記第2のボリュームに継承し、
前記フェイルオーバ処理の後では、前記第2のボリュームに格納されたデータに対する更新内容を示す更新情報を管理し、
前記第2のストレージシステムから前記第1のストレージシステムへのフェイルバック処理において、前記更新情報に基づいて、前記第2のボリュームに格納されたデータのうち前記フェイルオーバ処理の後に更新された更新データを、前記第2のボリュームに継承された前記識別情報にて特定される前記第1のボリュームに移す、データ制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、計算機システム及びデータ制御方法に関する。
【背景技術】
【0002】
ストレージシステムには、ディザスタリカバリなどを目的として、ユーザのデータセンタなどに構築されたオンプレミスシステムのような正サイトにて行われている業務処理を、正サイトとは別に設けられた副サイトを用いて速やかに再開するフェイルオーバ処理を行う機能を備えたものがある。この種のストレージシステムでは、通常、正サイトが復旧した場合、業務処理を副サイトから正サイトに戻すフェイルバック処理が行われる。
【0003】
特許文献1には、フェイルオーバ処理の実行後に副サイトで処理したデータ及びオペレーションを副サイトジャーナルとして蓄積し、フェイルバック処理時に、その副サイトジャーナルを用いて正サイトにて使用されるボリュームの復元を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の技術では、正サイトのボリュームと副サイトのボリュームとの対応関係を示す情報が規定されていない。このため、フェイルバック処理において、データを副サイトから正サイトにコピーする際に、副サイトのボリュームに対応するデータを全てコピーする必要があり、フェイルバック処理に時間がかかるという問題がある。
【0006】
本開示の目的は、フェイルバック処理に係る時間を短縮することが可能な計算機システム及びデータ制御方法を提供することにある。
【課題を解決するための手段】
【0007】
本開示の一態様に従う計算機システムは、第1のストレージシステムと、第2のストレージシステムと、前記第1のストレージシステム及び前記第2のストレージシステムを管理する管理装置とを有する計算機システムであって、前記管理装置は、メモリとプロセッサとを有し、前記メモリは、前記第1のストレージシステムが有する第1のボリュームを当該計算機システム全体で一意に特定する識別情報を前記第1のボリュームごとに格納し、前記プロセッサは、前記第1のストレージシステムから前記第2のストレージシステムへのフェイルオーバ処理において、前記第1のボリュームに格納されたデータを、前記第2のストレージシステムが有する第2のボリュームにリストアし、当該第1のボリュームの前記識別情報を前記第2のボリュームに対応付けて前記メモリに格納し、前記フェイルオーバ処理の後では、前記第2のボリュームに格納されたデータに対する更新内容を示す更新情報を管理し、前記第2のストレージシステムから前記第1のストレージシステムへのフェイルバック処理において、前記更新情報に基づいて、前記第2のボリュームに格納されたデータのうち前記フェイルオーバ処理の後に更新された更新データを、当該第2のボリュームに対応付けられた前記識別情報にて特定される前記第1のボリュームに移す。
【発明の効果】
【0008】
本発明によれば、フェイルバック処理に係る時間を短縮することが可能になる。
【図面の簡単な説明】
【0009】
【
図1】本開示の第1の実施形態に係る計算機システムの構成全体を示す図である。
【
図3】ストレージシステム(正サイト)のハードウェア構成を示す図である。
【
図4】I/Oコントローラプログラムにて実現される機能の一例を示す図である。
【
図5】ストレージ管理プログラムにて実現される機能の一例を示す図である。
【
図6】ストレージシステム(副サイト)におけるボリュームの管理を説明するための図である。
【
図9】ブジェクトストア登録画面の一例を示す図である。
【
図10】バックアップ設定画面の一例を示す図である。
【
図11】オブジェクトストアに格納されるデータの一例を示す図である。
【
図12】バックアップデータの一例を示す図である。
【
図15】フェイルオーバ処理の一例を説明するためのフローチャートである。
【
図16】リストアデータ選択画面の一例を示す図である。
【
図17】リストア処理の一例を説明するためのフローチャートである。
【
図18】ボリューム管理画面の一例を示す図図である。
【
図19】更新差分管理処理の一例を説明するための図である。
【
図21】フェイルバック処理の一例を説明するためのフローチャートである。
【
図22】初期コピー処理の一例を説明するためのフローチャートである。
【
図23】コピーペア状態の処理の一例を説明するためのフローチャートである。
【
図24】フェイルバック処理の他の例を説明するための図である。
【
図25】I/Oコントローラプログラムにて実現される機能の他の例を示す図である。
【
図26】フェイルバック処理の他の例を説明するための図である。
【
図27】I/Oコントローラプログラムにて実現される機能の他の例を示す図である。
【
図28】フェイルバック処理の他の例を説明するための図である。
【
図29】本開示の第3の実施形態の計算機システムを示す図である。
【
図30】フェイルバック処理の他の例を説明するための図である。
【
図31】フェイルバック処理の他の例を説明するための図である。
【
図32】リストア選択画面の他の例を示す図である。
【発明を実施するための形態】
【0010】
以下では、本開示の実施形態を、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲にかかる開示を限定するものではなく、また実施形態で説明されている諸要素及びその組み合わせの全てが本開示の解決手段に必須であるとは限らない。
【0011】
なお、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えば、CPU(Central Processing Unit))によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)及び/又は通信インターフェースデバイス(例えば、NIC(Network Interface Card))を用いながら行うため、処理の主語がプロセッサ又はプロセッサを有する計算機が行う処理としても良い。
【0012】
(第1の実施形態)
図1は、本開示の第1の実施形態に係る計算機システムの構成全体を示す図である。
図1に示す計算機システムは、正サイトとして機能する第1のストレージシステムであるストレージシステム10と、副サイトとして機能する第2のストレージシステムであるストレージシステム20と、ストレージシステム10及び20を管理する管理装置である運用管理システム30と有し、これらがネットワーク40を介して相互に通信可能に接続される。
【0013】
本実施形態では、ストレージシステム10は、データセンタ10aに配置された物理的なストレージシステム、ストレージシステム20は、クラウドシステム20a上のソフトウェアにて実現される仮想的なストレージシステムである。また、ストレージシステム20は、常設されず、災害などによりストレージシステム10が正常に機能しなくなった場合など、災害時など、必要に応じて設けられ、
図1では、そのことを表すために点線で示されている。ただし、ストレージシステム10及び20は、この例に限定されない。
【0014】
運用管理システム30による機能は、ストレージシステム10及び20に対するクラウドサービス30aとして提供される。運用管理システム30は、プログラムを実行して種々の処理を行うプロセッサであるCPU301と、プログラム及び種々の情報を格納するメモリ302とを有する。CPU301は、メモリ302に記録されたプログラムを読み取り、その読み取ったプログラムを実行して種々の処理を実行して種々の機能を提供する。なお、運用管理システム30は、クラウドサービス30aの一部又は全てを提供してもよい。
【0015】
図2は、クラウドサービス30aの一例を示す図である。
図2に示すクラウドサービス30aは、ユーザとの入出力を行う管理コンソールサービル31と、ユーザの認証などを行うアクセス権限管理サービス32と、仮想ネットワークを構築する仮想ネットワークサービス33と、仮想コンピューティングシステムを構築する仮想コンピューティングサービス34と、仮想ディスクを構築する仮想ディスクサービス35と、仮想マシンを起動するのに必要なオペレーティングシステムのディスクイメージを保存するマシンイメージ保存サービス36と、ストレージシステム10及び20を監視してログ情報を保存するロギングサービス37と、サーバーレス・コンピューティングを管理するサーバーレス・コンピューティングサービス38と、オブジェクトデータを保存するオブジェクトストアを提供するオブジェクトストアサービス39とを含む。
【0016】
仮想ネットワークサービス33、仮想コンピューティングサービス34、仮想ディスクサービス35、マシンイメージ保存サービス36、及び、サーバーレス・コンピューティングサービス38は、例えば、ストレージシステム20を構築するために使用される。オブジェクトストアサービス39は、ストレージシステム10に格納されたデータのバックアップデータを格納するために使用される。
【0017】
図3は、ストレージシステム10のハードウェア構成を示す図である。
図3に示すようにストレージシステム10は、ホスト11とネットワーク12を介して相互に通信可能に接続され、運用管理システム30とネットワーク13a及び13bを介して相互に通信可能に接続される。ホスト11は、ストレージシステム10に格納されたデータを利用した種々のデータ利用処理を行うアプリケーションを実行するアプリケーションサーバとして機能する。また、ユーザにて使用される端末17a及び17bがクラウドサービス30aを介して又は直接ストレージシステム10と接続されている。端末17aは、1つのストレージシステム10を管理するために使用され、端末17bは、クラウドサービス30aを介して複数のストレージシステム10を管理するために使用される。
【0018】
ストレージシステム10は、ホスト11と接続するためのI/F(インタフェース)110と、クラウドサービス30aと接続するためのI/F120と、外部のストレージシステム170及び180と接続するためのI/F130と、データを格納するドライブ140と、データのドライブ140へのリード及びライトを制御するI/Oコントローラ150と、ストレージシステム10を管理するためのストレージ管理サブシステム160とを有する。ストレージシステム10の各構成要素は、複数あってもよい。図の例では、I/F110~130とI/Oコントローラ150とは多重化(2重化)され、ドライブ140は、n個(ドライブ140-0~140-n)ある。ストレージシステム170は、内部のボリューム171及び172を仮想化してストレージシステム10のボリュームとして用いるためのストレージシステムである。ストレージシステム180は、ストレージシステム10に格納されたデータをリモートコピーするコピー先のストレージシステムとして使用される。
【0019】
I/Oコントローラ150は、ホスト11からのI/O要求に応じたデータのリード処理及びライト処理などを実行する制御部であり、プログラムを実行して種々の処理を行うプロセッサであるCPU151と、プログラム及び種々の情報を格納するメモリ152とを有する。ストレージ管理サブシステム160は、ストレージシステム10を管理するための管理処理を実行する管理部であり、プログラムを実行して種々の処理を行うプロセッサであるCPU161と、プログラム及び種々の情報を格納するメモリ162とを有する。
【0020】
図4は、I/Oコントローラ150のメモリ152に記録されたプログラムであるI/Oコントローラプログラム1500にて実現される機能の一例を示す図である。
図4に示すI/Oコントローラプログラム1500は、ドライブ140を制御するためのドライブ制御機能1501と、ボリューム及びストレージプールを制御するためのボリューム・プール制御機能1502と、ホスト11と接続するためのホストアクセス制御機能1503と、データのスナップショットを取得するためのスナップショット機能1504と、更新後のデータと更新前のデータとの差分を管理するための更新差分管理機能1505と、ストレージシステム間のリモートコピーを行うためのリモートコピー機能1506と、外部のストレージシステムのボリュームを管理するための外部ボリューム仮想化機能1507と、ストレージシステム10内でボリュームの複製を作成するためのボリューム複製機能1508とを実現する。また、I/Oコントローラプログラム1500は、クラウドサービス30aとして提供されるオブジェクトストアを利用するためのオブジェクトデータ・通信機能1509と、バックアップデータの作成及び復元を行うためのバックアップデータ作成・復元機能1510と、バックアップデータの世代を管理するためのカタログを管理するためのバックアップ用カタログ作成・解釈機能1511とを実現する。
【0021】
図5は、ストレージ管理サブシステム160のメモリ162に記録されたプログラムであるストレージ管理プログラム1600にて実現される機能の一例を示す図である。
図5に示すストレージ管理プログラム1600は、GUI(Graphical User Interface)及びCLI(Command Line Interface)などのユーザインタフェースを提供するインタフェース機能1601と、ネットワークを介して通信を制御するネットワーク通信管理機能1602と、ストレージシステム10の健康状態(ステータス)を管理するためのステータスモニタ機能1603と、ストレージシステム10のログ(エラー及び操作など)を管理するロギング機能1604と、ボリュームを管理するストレージボリューム管理機能1605と、オブジェクトストアを利用するためのオブジェクトストア登録管理機能1606と、データのバックアップを管理するバックアップ管理機能1607と、データをリストアするためのリストア管理機能1608とを格納する。
【0022】
図6は、ストレージシステム10におけるボリューム(論理ボリューム)の管理を説明するための図である。
図6の例では、ストレージシステム10の複数のドライブ140がデータを保護するためのRAID(Redundant Array of Independent Disk)グループ300を構成する。RAIDは、例えば、RAID5又はRAID6などである。RAIDグループ300を構成する複数のドライブ140の容量はストレージプール600として管理される。ストレージプール600では、所定の容量単位であるブロック60ごとに容量が管理される。
【0023】
また、ホスト11に提供される論理的な記憶領域であるボリューム500にデータ51が書き込まれると、ストレージプール600から容量がブロック60単位でボリューム500に割り当てられ、その割り当てられたボリューム500を介してデータがドライブ140に格納される。ボリューム500のアドレス50とストレージプール600のブロック60との対応関係は、マッピングテーブル400と呼ばれる情報で管理される。また、ストレージプール600は、ストレージシステム10のリモートコピーの際の順序保障情報を有するバッファとして利用されるジャーナル用ボリューム510とも対応付けられている。また、外部ボリューム仮想化機能1507は、ストレージシステム10内のボリューム520を外部のストレージシステム170のボリューム171と対応付ける。
【0024】
図7は、ボリュームを管理するためのボリューム管理画面の一例を示す図である。
図7に示すボリューム管理画面D100は、ストレージシステム10のボリュームである第1のボリュームを管理するためのボリューム管理画面の一例であり、例えば、ストレージ管理プログラム1600にて作成されて端末17a又は17bなどに表示される。
【0025】
図7に示すボリューム管理画面D100は、一覧表示部D101と、追加ボタンD102と、削除ボタンD103と、詳細表示部D104と、OKボタンD105とを有する。
【0026】
一覧表示部D101は、ストレージシステム10が有するボリュームの一覧を示す。一覧表示部D101は、各ボリュームの説明として、ボリュームの容量(Capacity)、使用率(Used)及びステータス(Health)などを示してもよい。追加ボタンD102は、ボリュームを追加するためのボタンであり、削除ボタンD103は、ボリュームを削除するためのボタンである。詳細表示部D104は、一覧表示部D101にて選択されたボリュームに関する詳細情報(ボリューム管理情報)を示す。詳細表示部D104は、
図7の例では、詳細情報として、ボリューム名、ボリュームを有するストレージシステム10を識別するための装置製品番号、ストレージシステム10内でボリュームを識別するためのボリューム番号、ボリュームの使用量及びプロビジョニングサイズ(プロビジョニングで用意されている容量)、ボリュームに対応するストレージプールを示す情報、ボリュームに格納されたデータバックアップの有無、最後にバックアップされた最終バックアップ日時、及び、計算機システム全体でボリュームを一意に識別する識別情報であるユニークIDを示す。ユニークIDは、本実施形態では、装置製品番号とボリューム番号とを組み合わせた情報である。OKボタンD105は、ボリューム管理画面D100の内容を確定するためのボタンである。なお、ボリューム管理画面D100にて示されるボリューム管理情報はボリュームごとにストレージシステム10のメモリ162及び運用管理システム30のメモリ302などに記憶されてもよい。
【0027】
図8は、ストレージシステム20の構成を示す図である。
図8に示すようにストレージシステム20は、ホスト(アプリケーションサーバ)として機能する仮想マシン21と接続され、また、運用管理システム30とネットワーク13bを介して相互に通信可能に接続される。また、ユーザにて使用される端末17a及び17bがクラウドサービス30aを介して又は直接ストレージシステム10と接続されている。
【0028】
ストレージシステム20は、データを格納する仮想ドライブ240と、データの仮想ドライブ240へのリード及びライトを制御するI/Oコントローラ250を備える仮想マシン251と、ストレージシステム20を管理するためのストレージ管理サブシステム260を備える仮想マシンであるサーバーレスコンピュート261とを有する。仮想マシン251は多重化(2重化)され、仮想ドライブ240は、n個(240-0~240-n)ある。
【0029】
I/Oコントローラ250及びストレージ管理サブシステム260は、ストレージシステム10のI/Oコントローラ150及びストレージ管理サブシステム160と同等な機能を有する。例えば、I/Oコントローラ250は、I/Oコントローラ250が有するI/Oコントローラプログラム1500の機能と同様な機能を有し、ストレージ管理サブシステム260は、ストレージ管理プログラム1600の機能と同様な機能を有する。
【0030】
図9は、ストレージシステム10に格納されたデータのバックアップ先となるオブジェクトストアを登録するためのオブジェクトストア登録画面D10の一例を示す図である。
図9に示すオブジェクトストア登録画面D10は、例えば、ストレージ管理プログラム1600にて作成されて端末17a又は17bなどに表示される。オブジェクトストア登録画面D10は、登録ストア一覧画面D11と、新規ストア登録画面D12とを含む。
【0031】
登録ストア一覧画面D11は、登録されているオブジェクトストアである登録ストアを示す登録ストア表示欄D111と、オブジェクトストアを新たに登録するための追加ボタンD112と、登録されているオブジェクトストアを削除するための削除ボタンD113とを含む。追加ボタンD112が押下されると、新規ストア登録画面D12が表示される。
【0032】
新規ストア登録画面D12は、入力欄D121~127と、タグボタンD128と、OKボタンD129と、キャンセルボタンD130とを有する。
【0033】
入力欄D121~127は、新規ストアに関する情報を入力するためのインタフェースである。入力欄D121は、登録するオブジェクトストアである新規ストアを提供するクラウドサービス30aを入力するためのインタフェースである。入力欄D122は、当該クラウドサービス30aの名称を入力するためのインタフェースである。入力欄D123は、新規ストアを利用可能な地理的な範囲(例えば、国など)を入力するためのインタフェースである。入力欄D124は、新規ストアにアクセスするためのアクセスIDを入力する欄であり、入力欄D125は、新規ストアにアクセスするためのシークレットキーを入力するためのインタフェースである。入力欄D126は、オブジェクトストアにおけるバックアップデータの記憶領域であるバケットを示すバケット名を入力するためのインタフェースである。入力欄D126にバケット名が入力されない場合には、クラウドサービス30aにて自動的にバケット名が設定されてもよい。入力欄D127は、新規ストアとアクセスする際に使用する暗号化方式を入力するためのインタフェースである。
【0034】
タグボタンD128は、入力欄を追加するためのボタンである。OKボタンD129は、新規ストア登録画面D12に登録された登録内容を確定するためのボタンであり、押下されると、登録ストア一覧画面D11に戻る。キャンセルボタンD130は、新規ストア登録画面D12に登録された登録内容をキャンセルするためのボタンであり、押下されると、登録ストア一覧画面D11に戻る。OKボタンD105が押下されると、ストレージ管理サブシステム160のCPU161は、例えば、新規ストア登録画面D12の内容をストア管理情報としてメモリ162に記憶する。また、ストア管理情報は、運用管理システム30のメモリ302などに記憶されてもよい。
【0035】
図10は、ストレージシステム10に格納されたデータのバックアップに関する設定情報であるバックアップ設定情報を登録するためのバックアップ設定画面D30の一例を示す図である。
図10に示すバックアップ設定画面D30は、ストレージ管理プログラム1600にて作成されて端末17a又は17bなどに表示される。バックアップ設定画面D30は、選択部D301及びD302と、指定部D303及びD304と、OKボタンD311と、キャンセルボタンD312とを有する。
【0036】
選択部D301は、バックアップの対象とするボリュームであるバックアップ対象ボリュームを選択するためのインタフェースである。選択部D302は、登録ストア一覧画面D11にて登録されたオブジェクトストアである登録ストアの中から、バックアップ対象ボリュームに対応するデータのバックアップ先となるオブジェクトストアを選択するためのインタフェースである。
【0037】
指定部D303は、バックアップするタイミングを指定するためのインタフェースであり、所定のタイミングでバックアップを1回行う「ワンショット(One shot)」を指定する指定部D3031と、所定の期間ごとにバックアップを繰り返し行う「周期的(Periodically)」を指定する指定部D3032とを含む。指定部D3031では、現時点で(今すぐに)バックアップを行うことと、指定した日時でバックアップを行うこととのいずれかが選択できる。指定部D3032では、バックアップを行うタイミング(ここでは、日ごと、1週間ごと、1か月ごとのいずれか)と、バックアップを開始する時刻、間隔及び最大回数などを指定することができる。
【0038】
指定部D304は、バックアップ方法を指定するためのインタフェースである。バックアップ方法としては、全データのコピーを毎回バックアップデータとしてバックアップ先に送信するフルバックアップ、前回のバックアップデータに対して変更及び追加されたデータのコピーをバックアップ先に送信する増分バックアップ、及び、初回のバックアップデータに対して変更及び追加されたデータのコピーをバックアップ先に送信する差分バックアップとがある。
【0039】
OKボタンD311は、バックアップ設定画面D30に登録されたバックアップ設定情報を登録するためのボタンであり、キャンセルボタンD312は、バックアップ設定画面D30に登録されたバックアップ設定情報をキャンセルするためのボタンである。OKボタンD311が押下されると、ストレージ管理サブシステム160のCPU161は、例えば、バックアップ設定画面D30の内容をバックアップ管理情報としてメモリ162に記憶する。また、バックアップ管理情報は、運用管理システム30のメモリ302などに記憶されてもよい。
【0040】
図11は、オブジェクトストアサービス39にて提供されるオブジェクトストア230に記憶されるデータの一例を示す図である。
【0041】
図11に示すように、オブジェクトストアサービス39にて提供されるオブジェクトストア230は、バックアップ先のオブジェクトストアであり、バケット2310を有し、バケット2310に、バックアップデータB23と、メタデータM23と、カタログデータC23とが記憶される。バックアップデータB23、メタデータM23及びカタログデータC23は、それぞれオブジェクトデータとして記憶され、各オブジェクトデータはオブジェクトキー(OBJ Key)と呼ばれる識別情報にて識別される。
【0042】
図12は、バックアップデータB23の一例を示す図である。
図12に示すようにバックアップデータB23は、ブロック60単位で前詰めに格納される。なお、データ量が多い場合(ブロック数が多い場合)には、データは、予め定められたブロック数又はデータごとに複数のオブジェクトに分割されてもよい。
【0043】
図13は、メタデータM23の一例を示す図である。メタデータM23は、バックアップデータB23とボリュームとの関係を示すデータであり、
図13の例では、フィールドM231~M234を含む。
【0044】
フィールドM231は、バックアップデータB23のブロック(つまり、ボリュームのアドレス)ごとに、そのブロックに対応するデータバックアップされたか否かを示すビットマップのサイズ(ブロック数)を格納する。フィールドM232は、ビットマップを格納する。
図13の例では、ビットマップは、バックアップされた場合、「1」を示し、バックアップされていない場合、「0」を示す。フィールドM233は、当該メタデータM23にて管理されるバックアップデータB23を識別するためのオブジェクトキーを格納する。フィールドM234は、当該バックアップデータB23の各ブロックのデータ長を格納する。
図13の例では、データ長は全て同一であるが、データを圧縮する場合などでは、各ブロックのデータ長がそれぞれ異なることがある。バックアップデータB23が複数のオブジェクトに分割されている場合、メタデータM23には、バックアップデータの各オブジェクトに対応した複数のフィールド233及び234が設けられる。
【0045】
図14は、カタログデータC23の一例を示す図である。カタログデータC23は、バックアップデータの世代であるバックアップ世代を管理するための情報である。
図14の例では、カタログデータC23として、第2世代のバックアップデータを管理するカタログデータC23aと、第1世代のバックアップデータを管理するカタログデータC23bとが示されている。
【0046】
カタログデータC23a及びC23bは、フィールド231~237を含む。フィールド231は、バックアップ対象ボリュームを格納するストレージシステム10を識別する識別情報である装置製品番号を格納する。フィールド232は、バックアップ対象ボリュームのボリューム番号であるバックアップボリューム番号を格納する。フィールド233は、バックアップ対象ボリュームの使用量及びプロビジョニングサイズを格納する。フィールド234は、当該カタログデータが管理するバックアップデータの世代を示すバックアップ世代番号を格納する。フィールド235は、当該カタログデータが管理するバックアップデータが取得された日時であるバックアップ取得日時を格納する。フィールド236は、当該カタログデータが管理するバックアップデータに対応するメタデータを識別するオブジェクトキーを格納する。フィールド237は、当該カタログデータよりも1つ前のバックアップ世代を管理するカタログデータである親カタログデータを識別するオブジェクトキーを格納する。ただし、カタログデータC23aは、第1世代のバックアップデータを管理しているため、親カタログデータが存在しない。このため、カタログデータC23aのフィールド237には、空データが格納される。なお、バックアップ方法としてフルバックアップが選択された場合、全ての世代のカタログデータにおいて、フィールド237に空データが格納される。フィールド238は、バックアップ対象ボリュームのユニークIDを格納する。
【0047】
なお、カタログデータC23は、バックアップ対象ボリュームのそれぞれについて、データがバックアップされるたびに登録される。メタデータM23及びバックアップデータB23は、カタログデータC23のそれぞれに対応して作成される。
【0048】
図15は、ストレージシステム10からストレージシステム20へのフェイルオーバ処理の一例を説明するためのフローチャートである。フェイルオーバ処理は、災害などによりストレージシステム10が正常に動作しなくなった場合などに実行される処理であり、ストレージシステム10によるデータ利用処理の実行をストレージシステム20に移行するための処理である。
【0049】
先ず、フェイルオーバ処理の実行が指示されると、運用管理システム30(具体的には、CPU301)は、ストレージシステム20を構成する仮想マシン群(仮想マシン251、サーバーレスコンピュート261など)を起動して、ストレージシステム20を構築する(ステップS101)。運用管理システム30は、ストレージシステム20に対して仮想ドライブ240を追加し、それらの仮想ドライブ240に応じたストレージプールを作成する(ステップS102)。
【0050】
運用管理システム30は、リストアの対象となるデータであるリストア対象データのバックアップデータを格納するオブジェクトストアを登録する登録指示を受け付け、その登録指示にしたがってオブジェクトストアを登録する(ステップS103)。例えば、運用管理システム30は、例えば、
図9に示したオブジェクトストア登録画面D10と同様な画面を表示し、その画面を介してユーザから登録指示を受け付ける。
【0051】
運用管理システム30は、リストア対象データを選択したリストア選択情報を受け付ける(ステップS104)。運用管理システム30は、登録されたオブジェクトストアに格納されたバックアップデータに基づいて、リストア選択情報にて選択されたデータをリストアするリストア処理(
図17参照)を実行する(ステップS105)。
【0052】
運用管理システム30は、ストレージシステム20に対するホストとして機能する仮想マシン群(仮想マシン21など)を起動する(ステップS106)。運用管理システム30は、ホストとして機能する仮想マシン群とストレージシステム20とを接続する(ステップS107)。
【0053】
運用管理システム30は、ストレージシステム10及び20に格納されたデータの整合性を確保するための整合性確保処理(
図20参照)を実行し(ステップS108)、処理を終了する。
【0054】
図16は、
図15のステップS104においてユーザがリストア対象データを選択するためのリストアデータ選択画面の一例を示す図である。
図16に示すリストアデータ選択画面D40は、選択欄D401~D404と、リストアボタンD411と、キャンセルボタンD412とを有する。
【0055】
選択欄D401は、
図15のステップS103で登録されたオブジェクトストアから、リストア対象データのバックアップデータを格納するオブジェクトストアを選択するためのインタフェースである。選択欄D402は、リストア対象データを格納しているリストア元のボリュームを選択するためのインタフェースである。選択欄D403は、当該バックアップデータがバックアップされたバージョン(日時)を選択するためのインタフェースである。選択欄D404は、リストア対象データをリストアするリストア先のボリュームを選択するためのインタフェースである。
図16の例では、選択欄D404は、リストア先に既に存在するオリジナルのボリュームを選択するための選択欄D4041と、リストア先に作成する新規のボリュームを選択するための選択欄D4042とを含む。選択欄D4042では、新規のボリュームを作成するストレージプールを選択することができる。
【0056】
リストアボタンD411は、リストアデータ選択画面D40の選択内容を確定して、その選択内容を示す登録指示を入力するためのボタンである。キャンセルボタンD412は、リストアデータ選択画面D40の選択内容をキャンセルするためのボタンである。
【0057】
図17は、
図15のステップS105のリストア処理の一例を説明するためのフローチャートである。
【0058】
リストア処理では、運用管理システム30は、リストア対象データのバックアップデータのカタログデータを対象カタログデータとして取得する(ステップS201)。運用管理システム30は、取得した対象カタログデータを、予め用意している処理リストの最後尾に追加する(ステップS202)。運用管理システム30は、対象カタログデータを確認して、対象カタログデータに親カタログデータが存在するか否かを確認する(ステップS203)。
【0059】
親カタログデータが存在する場合(ステップS203:Yes)、運用管理システム30は、その親カタログデータを新たに対象カタログデータとして取得し(ステップS204)、ステップS202の処理に戻る。一方、親カタログデータが存在しない場合(ステップS203:No)、運用管理システム30は、処理リストにカタログデータが存在するか否かを確認する(ステップS205)。
【0060】
処理リストにカタログデータが存在する場合(ステップS205:Yes)、運用管理システム30は、処理リストの最後尾にあるカタログデータからメタデータのオブジェクトキーであるメタオブジェクトキーを取得する(ステップS206)。運用管理システム30は、メタオブジェクトキーにて識別されるメタデータに基づいて、当該メタデータに応じたバックアップデータをストレージシステム20における、登録指示にて示されるリストア先のボリュームにリストアする(ステップS207)。そして、運用管理システム30は、処理リストの最後尾のカタログデータを削除して(ステップS208)、ステップS205の処理に戻る。
【0061】
一方、処理リストにカタログデータが存在しない場合(ステップS205:No)、運用管理システム30は、リストア元のボリュームのボリューム名及びユニークIDを取得する(ステップS209)。例えば、運用管理システム30は、処理リストから最後に削除したカタログデータから、リストア元のボリューム名及びユニークIDを取得する。
【0062】
運用管理システム30は、取得したリストア元のボリューム名及びユニークIDを、ストレージシステム20のリストア先のボリュームに設定する(ステップS210)。例えば、運用管理システム30は、リストア先のボリュームに対するボリューム管理情報にリストア元のボリューム名及びユニークIDを設定する。
【0063】
そして、運用管理システム30は、リストア先のボリュームに格納されるデータを管理するための更新差分管理処理(
図19参照)を開始して(ステッS211)、処理を終了する。
【0064】
図18は、リストア処理後のボリュームを管理するボリューム管理画面の一例を示す図図である。ボリューム管理画面D100aは、ストレージシステム20のボリュームである第2のボリュームを管理するためのボリューム管理画面の例であり、例えば、ストレージ管理プログラム1600にて作成されて端末17a又は17bなどに表示される。
【0065】
図18に示すボリューム管理画面D100aは、リストア処理後のストレージシステム20のボリュームを管理するための画面であり、
図7に示したボリューム管理画面D100と同様に、一覧表示部D101と、追加ボタンD102と、削除ボタンD103と、詳細表示部D104と、OKボタンD105とを有する。ボリューム管理画面D100aの詳細表示部D104のユニークIDが
図7に示したボリューム管理画面D100の詳細表示部D104のユニークIDと同じ値であり、ユニークIDがストレージシステム10から20に引き継がれていることが示されている。なお、ボリューム管理画面D100aにて示されるボリューム管理情報はボリュームごとにストレージシステム20及び運用管理システム30のメモリ302などに記憶されてもよい。
【0066】
図19は、
図17のステップS210の更新差分管理処理の一例を説明するための図である。
図19に示すように運用管理システム30は、ストレージシステム20のボリューム200に対応する更新差分管理ビットマップ201を有する。更新差分管理ビットマップ201は、ストレージシステム20のボリュームに格納されたデータのフェイルオーバ処理後の更新内容を示す更新情報であり、当該ボリュームの各アドレスに対応する複数のビットを有する。
【0067】
更新差分管理処理では、運用管理システム30は、ストレージシステム20のボリューム200において更新(ライト)されたアドレスに対応する、更新差分管理ビットマップ201のビットの値を0から1に変更する。これにより、運用管理システム30は、更新差分管理ビットマップ201を用いて、リストア対象データのリストアされた時の状態と、ストレージシステム20にて更新された後の状態との対応を把握して、ボリューム200に格納されたデータのうちストレージシステム20にて更新された更新データを特定することができる。
【0068】
図20は、
図15のステップS108の整合性確保処理の一例を示す図である。
【0069】
整合性確保処理では、運用管理システム30は、ストレージシステム10に対するホスト11からのI/O要求の受け付けを停止させる(ステップS301)。運用管理システム30は、ストレージシステム10において、リストア対象データを格納するボリュームのスナップショットを取得して保存する(ステップS302)。運用管理システム30は、当該ボリュームのデータを、リストアしたデータ(リストアに使用したバックアップデータ)の状態に更新して(ステップS303)、処理を終了する。
【0070】
なお、ストレージシステム10の状態によっては、ストレージシステム10に格納されたデータがフェイルオーバ処理の実行中にフェイルオーバ処理の開始時の状態からずれてしまうことがある。後述するフェイルバック処理が実行される際に、ストレージシステム10に格納されたデータからフェイルオーバ処理の開始時の状態からずれてしまうと、データを正確に復元できなくなる恐れがある。このため、運用管理システム30は、整合性確保処理を行うことで、上記のずれを抑制することができる。
【0071】
図21は、ストレージシステム20からストレージシステム10へのフェイルバック処理の一例を説明するためのフローチャートである。フェイルバック処理は、ストレージシステム10が復旧した場合などに実行される処理であり、ストレージシステム20によるデータ利用処理の実行をストレージシステム10に戻すための処理である。
【0072】
フェイルバック処理では、先ず、運用管理システム30は、ユーザからフェイルバック先であるストレージシステム10のボリュームをコピー先ボリュームとして選択したコピー先選択情報を受け付ける(ステップS401)。そして、運用管理システム30は、ユーザからフェイルバック元であるストレージシステム20のボリュームをコピー元ボリュームとして選択したコピー元選択情報を受け付ける(ステップS402)。
【0073】
運用管理システム30は、ストレージシステム20に格納されたコピー元ボリュームのデータを、ストレージシステム10にコピー先ボリュームのデータとしてリモートコピーする初期コピー処理(
図22参照)を実行する(ステップS403)。
【0074】
運用管理システム30は、コピー元ボリュームとコピー先ボリュームとでコピーペアを構築する(ステップS404)。運用管理システム30は、フェイルバック先であるストレージシステム10のホスト11を起動するとともに(ステップS405)、コピーペア状態の処理(
図23参照)を実行する(ステップS406)。
【0075】
コピーペア状態の処理が終了すると、運用管理システム30は、ストレージシステム10に対してI/O要求の受け付けを開始させる(ステップS407)。そして、運用管理システム30は、フェイルバック元であるストレージシステム20を構成する仮想マシン群を停止して(ステップS408)、処理を終了する。
【0076】
なお、S402で運用管理システム30は、ボリューム管理情報に基づいて、フェイルバック元であるストレージシステム10のボリュームの中から、コピー先ボリュームのユニークIDと同じユニークIDを有するボリュームをコピー元ボリュームとして選択してもよい。
【0077】
図22は、
図21のステップS403の初期コピー処理の一例を説明するためのフローチャートである。
【0078】
初期コピー処理では、運用管理システム30は、ストレージシステム20のコピー元ボリュームに対応する更新差分管理ビットマップを固定する(ステップS501)。更新差分管理ビットマップの固定は、例えば、更新される更新差分管理ビットマップを別のビットマップに差し替えることで行う。
【0079】
運用管理システム30は、ストレージシステム20に対して、コピー元ボリュームに対するライトデータをジャーナルボリュームにジャーナルとして格納していくジャーナル格納処理を開始させる(ステップS502)。
【0080】
運用管理システム30は、メモリ302に記憶したボリューム管理情報に基づいて、コピー先ボリュームのユニークIDとコポー元ボリュームのユニークIDとを比較して、これらのユニークIDが互いに一致するか否かを判断する(ステップS503)。
【0081】
ユニークIDが互いに一致する場合(ステップS503:Yes)、運用管理システム30は、固定された更新差分管理ビットマップに基づいて、コピー元ボリュームに格納されたデータのうちフェイルオーバ処理の後に更新された更新データ(更新差分管理ビットマップにおいてビットが「1」のブロックに対応するデータ)を、コピー先ボリュームのライトデータとしてストレージシステム20に順次送信する(ステップS504)。
【0082】
ユニークIDが互いに一致しない場合(ステップS503:No)、運用管理システム30は、コピー元ボリュームに格納されたデータ全体を、コピー先ボリュームのライトデータとしてストレージシステム20に順次送信する(ステップS505)。
【0083】
運用管理システム30は、ライトデータを全て送信したか否かを確認しつつ(ステップS506)、ライトデータに対する全ての応答(受信応答)を受信したか否かを確認する(ステップS507)。
【0084】
ライトデータを全て送信し、かつ、それらの全ての応答を受信した場合(ステップS504、S505:Yes)、運用管理システム30は、処理を終了する。
【0085】
図23は、
図21のステップS406のコピーペア状態の処理の一例を説明するためのフローチャートである。
【0086】
コピーペア状態の処理では、先ず、運用管理システム30は、コピーペア状態に対する解除指示を受信したか否かを判断する(ステップS601)。解除指示を受信した場合(ステップS601:Yes)、運用管理システム30は、処理を終了する。
【0087】
解除指示を受信していない場合(ステップS601:No)、運用管理システム30は、ジャーナルボリュームに未送信のジャーナルが存在するか否かを判断する(ステップS602)。未送信のジャーナルが存在しない場合(ステップS602:No)、運用管理システム30は、ステップS601の処理に戻る。
【0088】
未送信のジャーナルが存在する場合(ステップS602:Yes)、運用管理システム30は、ジャーナルボリュームに格納されたジャーナルを、コピー先ボリュームのライトデータとしてストレージシステム20に順次送信する(ステップS603)。
【0089】
運用管理システム30は、全てのジャーナルを送信したか否かを確認しつつ(ステップS604)、全てのジャーナルに対する応答(受信応答)を受信したか否かを確認する(ステップS605)。
【0090】
全てのジャーナルを送信し、かつ、それらの全ての応答を受信した場合(ステップS604、S605:Yes)、運用管理システム30は、送信したジャーナルを削除して(ステップS606)、ステップS601の処理に戻る。
【0091】
以上説明した本実施形態では、運用管理システム30がフェイルオーバ処理及びフェイルバック処理を実行していたが、これらの処理の一部又は全てがストレージシステム10及び20のコントローラ(I/Oコントローラ150、250、ストレージ管理サブシステム160、260)にて行われてもよい。この場合、運用管理システム30及びコントローラがストレージシステム10及び20を管理する管理装置を構成する。
【0092】
以上説明したように本実施形態によれば、運用管理システム30のメモリ302は、ストレージシステム10が有する第1のボリュームを計算機システム全体で一意に特定するユニークIDをボリュームごとに格納する。CPU301は、ストレージシステム10からストレージシステム20へのフェイルオーバ処理において、第1のボリュームに格納されたデータをストレージシステム20が有する第2のボリュームにリストアし、第1のボリュームのユニークIDを第2のボリュームに対応付けてメモリ302に格納する。フェイルオーバ処理の後では、CPU301は、第2のボリュームに格納されたデータに対する更新内容を示す更新差分管理ビットマップ201を管理する。CPU301は、ストレージシステム20からストレージシステム10へのフェイルバック処理において、更新差分管理ビットマップ201に基づいて、第2のボリュームに格納されたデータのうちフェイルオーバ処理の後に更新された更新データを、当該第2のボリュームに対応付けられたユニークIDにて特定される第1のボリュームに移す。したがって、フェイルバック処理において、フェイルオーバ処理以降に更新されたデータのみをストレージシステム10に送信すればよくなるため、フェイルバック処理に係る時間を短縮することが可能になる。
【0093】
また、本実施形態では、CPU301は、第1のボリュームに対するI/O要求の受け付けを停止して、第1のボリュームに格納されたデータをバックアップデータの状態に復元する。このため、ストレージシステム10及び20に格納されたデータの整合性をより確実に確保することが可能となる。
【0094】
また、本実施形態では、CPU301は、フェイルバック処理の対象となる第1のボリュームと第2のボリュームのユニークIDが一致している場合、更新データを第1のボリュームに移し、それらのユニークIDが一致していない場合、データ全体を当該第1のボリュームに移す。このため、フェイルバック処理をより正確に行うことが可能となる。
【0095】
また、本実施形態では、CPU301は、フェイルバック処理において、更新データ第1のボリュームにリモートコピーする。このため、フェイルバック処理を容易に行うことが可能となる。
【0096】
(第2の実施形態)
本実施形態では、第1の実施形態と異なる処理について主に説明する。
【0097】
図24は、本開示の第2の実施形態の計算機システムが行うフェイルバック処理の一例を説明するための図である。
【0098】
図24に示すように運用管理システム30は、フェイルバック処理において、ストレージシステム20に対して、外部ボリューム仮想化機能1507を用いて、ストレージシステム10のボリュームから選択されたコピー先ボリューム2401をマッピングした仮想ボリューム2402を作成させる。そして、運用管理システム30は、ストレージシステム20のボリュームから選択されたコピー元ボリューム2403に格納されたデータを仮想ボリューム2402にローカルコピー(筐体内コピー)する。
【0099】
図25は、本実施形態におけるI/Oコントローラプログラム1500aにて実現される機能の一例を示す図である。
図25に示すI/Oコントローラプログラム1500aは、
図4に示した第1の実施形態のI/Oコントローラプログラム1500と比較して、ボリューム複製機能1508がボリュームのユニークIDを比較するためのユニークID判別機能1508aを有する点で異なる。
【0100】
図26は、本実施形態におけるフェイルバック処理の一例を説明するためのフローチャートである。
【0101】
フェイルバック処理では、先ず、運用管理システム30は、ユーザからフェイルバック先であるストレージシステム10のボリュームをコピー先ボリュームとして選択したコピー先選択情報を受け付ける(ステップS701)。運用管理システム30は、ストレージシステム20の外部ボリューム仮想化機能1507を用いて、ストレージシステム10のコピー先ボリュームをマッピングした仮想ボリュームをストレージシステム20に作成する(ステップS702)。
【0102】
運用管理システム30は、ユーザからフェイルバック元であるストレージシステム20のボリュームをコピー元ボリュームとして選択したコピー元選択情報を受け付ける(ステップS703)。
【0103】
運用管理システム30は、ストレージシステム20に指示して、ストレージシステム20にコピー先ボリュームのユニークIDとコピー元ボリュームのユニークIDが一致するか否かを判断させる(ステップS704)。
【0104】
ユニークIDが一致する場合(ステップS704:Yes)、ストレージシステム20は、更新差分管理ビットマップに基づいて、コピー元ボリュームに格納されたデータのうちフェイルオーバ処理の後に更新された更新データを仮想ボリュームにローカルコピーすることで、更新データをストレージシステム10のコピー先ボリュームに移す(ステップS705)。一方、ユニークIDが一致しない場合(ステップS704:No)、ストレージシステム20は、コピー元ボリュームに対応する全てのデータを、仮想化した外部ボリュームにローカルコピーする(ステップS706)。
【0105】
その後、運用管理システム30は、フェイルバック先であるストレージシステム10のホスト11を起動する(ステップS707)。運用管理システム30は、データのコピーが終了すると、コピー先ボリュームとストレージシステム20との接続を解除する(ステップS708)。運用管理システム30は、ストレージシステム10に対してホスト11からのI/O要求の受け付けを開始させる(ステップS709)。そして、運用管理システム30は、フェイルバック元であるストレージシステム20を構成する仮想マシン群を停止して(ステップS710)、処理を終了する。
【0106】
図27は、本開示の第2の実施形態の変形例におけるI/Oコントローラプログラム1500bにて実現される機能の一例を示す図である。
図27に示すI/Oコントローラプログラム1500bは、
図25に示したI/Oコントローラプログラム1500aと比較して、外部ボリューム仮想化機能1507がボリューム情報を取得するためのボリューム情報取得機能1507aを有する点で異なる。
【0107】
図28、本開示の第2の実施形態の変形例、より具体的には、計算機システムが行うフェイルバック処理の他の例を説明するための図である。
【0108】
図28の例では、ストレージシステム20の外部ボリューム仮想化機能1507が有するボリューム情報取得機能1507aは、ストレージシステム10からストレージシステム10のボリュームに関する情報を取得し、その情報に基づいて、コピー先ボリュームのユニークIDを取得する。
【0109】
以上説明したように本実施形態によれば、フェイルバック処理において、コピー先ボリュームをマッピングした仮想ボリュームがストレージシステム20のボリュームとして作成され、更新データを仮想ボリュームにローカルコピーされる。このため、フェイルオーバ処理以降に更新されたデータのみをコピーすればよくなるため、フェイルバック処理に係る時間を短縮することが可能になる。
【0110】
(第3の実施形態)
【0111】
本実施形態では、第1の実施形態と異なる処理について主に説明する。
【0112】
図29は、本開示の第3の実施形態の計算機システムを示す図である。
図29に示す計算機システムでは、運用管理システム30の代わりに、また、オブジェクトストアサービスを提供するオブジェクトストア提供装置70が示されている。なお、運用管理システム30は、図示されていないが、第1の実施形態と同様に存在する。
【0113】
オブジェクトストア提供装置70は、プログラムを実行して種々の処理を行うプロセッサであるCPU71と、プログラム及び種々の情報を格納するメモリ72と、オブジェクトストアを構成する1以上のストレージ73とを有する。CPU301は、メモリ302に記録されたプログラムを読み取り、その読み取ったプログラムを実行して種々の処理を実行して種々のクオブジェクトストアサービスを提供する。ストレージ73は、オブジェクトストレージである。
【0114】
図30及び
図31は、本実施形態におけるフェイルバック処理の一例を説明するためのフローチャートである。
図30は、ストレージシステム20に対する処理を示し、
図31は、ストレージシステム10に対する処理を説明するためのフローチャートであり、ストレージシステム20に対する処理の後にストレージシステム10に対する処理が実行される。
【0115】
フェイルバック処理では、先ず、運用管理システム30は、ストレージシステム20のホストとして機能する仮想マシン21を停止する(ステップS801)。運用管理システム30は、更新差分管理ビットマップを固定する(ステップS802)。運用管理システム30は、固定した更新差分管理ビットマップに基づいて、フェイルオーバ処理の後に更新された更新データを、フェイルオーバ処理においてリストアの対象となったリストア対象データのバックアップとして作成し、さらにそのバックアップデータに対するメタデータを作成する(ステップS803)。
【0116】
運用管理システム30は、作成したバックアップデータ及びメタデータをオブジェクトデータに変換して、リストア対象データのバックアップデータを格納するオブジェクトストア(ここでは、ストレージ73で構成されるオブジェクトストアとする)に格納する(ステップS804)。運用管理システム30は、作成したバックアップデータを、リストア対象データの最新のバックアップ世代として管理するカタログデータ(
図33参照)を作成する(ステップS805)。運用管理システム30は、作成したカタログデータを、バックアップデータを格納したオブジェクトストアに格納し(ステップS806)、ストレージシステム20に対する処理を終了する。
【0117】
そして、運用管理システム30は、リストア対象データを選択するためのリストア選択画面(
図32参照)を端末17a又は17bに表示する(ステップS901)。その後、運用管理システム30は、リストア選択画面を介してリストア対象データを選択した選択情報を受け付ける(ステップS902)。そして、運用管理システム30は、選択されたリスト対象データをリストアするリストア処理を実行する(ステップS903)。本リストア処理は、例えば、
図17を用いて説明したリストア処理と同様な処理である。
【0118】
そして、運用管理システム30は、ホスト11を起動し(ステップS904)、ストレージシステム10に対してホスト11からのI/O要求の受け付けを開始する(ステップS905)。そして、運用管理システム30は、ストレージシステム20を構成する仮想マシンを停止して(ステップS906)、処理を終了する。
【0119】
図32は、リストア選択画面の一例を示す図である。
図32に示すリストア選択画面D40aは、
図16に示したリストアデータ選択画面D40と同様に、選択欄D401~D404と、リストアボタンD411と、キャンセルボタンD412とを有する。ここで、選択欄D402では、選択可能なボリュームとして、リストアデータ選択画面D40で示したボリュームに加えて、ストレージシステム10のボリュームのデータをリストアしたストレージシステム20のボリューム(SystemVolumeB_restored)が示されている。このボリュームが選択されることで、
図31で説明した処理が実行される。
【0120】
図33は、カタログデータの一例を示す図である。
図33に示すカタログデータC23cは、
図30のステップS805で作成されたカタログデータの一例である。
【0121】
図33では、フェイルオーバ時の最新のバックアップ世代が
図14に示したカタログデータC23にて管理される第2世代とされている。この場合、カタログデータC23は、
図30のステップS804で格納されたバックアップデータのバックアップ世代を第3世代として管理し、第2世代を管理するカタログデータC23を親カタログとしてポイントする。こにより、
図17で説明したリストア処理と同様な処理で更新データをストレージシステム10に移すことができる。
【0122】
以上説明したように本実施形態によれば、運用管理システム30のCPU301は、フェイルバック処理において、更新データを、コピー先ボリュームに格納されたデータのバックアップデータとしてオブジェクトストアストレージに保存し、そのバックアップデータに基づいて、コピー元ボリュームに格納させたデータをコピー先ボリュームにリストアする。この場合でも、更新データのみをバックアップデータとして登録してリストアすればよくなるため、フェイルバック処理に係る時間を短縮することが可能になる。
【0123】
上述した本開示の実施形態は、本開示の説明のための例示であり、本開示の範囲をそれらの実施形態にのみ限定する趣旨ではない。当業者は、本開示の範囲を逸脱することなしに、他の様々な態様で本開示を実施することができる。
【符号の説明】
【0124】
10:ストレージシステム 10a:データセンタ 11:ホスト 12:ネットワーク 13a:ネットワーク 13b:ネットワーク 17a、17b:端末 20:ストレージシステム20a:クラウドシステム 21:仮想マシン 29:ストレージシステム 30:運用管理システム 30a:クラウドサービス 31:管理コンソールサービル 32:アクセス権限管理サービス 33:仮想ネットワークサービス 34:仮想コンピューティングサービス 35:仮想ディスクサービス 37:ロギングサービス 38:コンピューティングサービス 39:オブジェクトストアサービス 40:ネットワーク 50:アドレス 51:データ 60:ブロック 70:オブジェクトストア提供装置 71:CPU 72:メモリ 73:ストレージ 140:ドライブ 150:I/Oコントローラ 151:CPU 152:メモリ 160:ストレージ管理サブシステム 161:CPU 162:メモリ 170:ストレージシステム