(57)【特許請求の範囲】
【請求項１】
物理計算機上で動作する第１の仮想計算機の動作を中断させる中断工程と、
前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製工程と、
前記複製工程の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開工程と、
前記物理計算機上で動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替工程と、
前記再開工程による再開及び前記切替工程による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断工程と
を含む、仮想計算機のデータ複製方法。
【請求項２】
物理計算機上で動作する第１の仮想計算機の動作を中断させる中断機構と、
前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製機構と、
前記複製機構による複製の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開機構と、
前記物理計算機上の動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替機構と、
前記再開機構による再開及び前記切替機構による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断機構と
を備えた、情報処理装置。
【請求項３】
前記メモリ内の前記第２の仮想計算機の動作状態のデータと前記ストレージ装置内の前記第２の仮想計算機が利用する前記第２の仮想記録媒体のデータを前記ストレージ装置内のバックアップストレージに一括保存させる保存機構を更に備えた、請求項２記載の情報処理装置。
【請求項４】
前記第２の仮想計算機の動作を終了させる終了機構を更に備えた、請求項３記載の情報処理装置。
【請求項５】
前記複製機構は、前記第１の仮想計算機の動作状態のデータをコピーオンライトにより複製させる、請求項２乃至４のいずれか１項記載の情報処理装置。
【請求項６】
第１の仮想計算機のデータ複製処理をコンピュータに実行させるプログラムであって、
物理計算機上で動作する前記第１の仮想計算機の動作を中断させる中断手順と、
前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製手順と、
前記複製手順による複製の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開手順と、
前記物理計算機上で動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替手順と、
前記再開手順による再開及び前記切替手順による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断手順と
を前記コンピュータに実行させる、プログラム。
【請求項７】
前記メモリ内の前記第２の仮想計算機の動作状態のデータと前記ストレージ装置内の前記第２の仮想計算機が利用する前記第２の仮想記録媒体のデータを前記ストレージ装置内のバックアップストレージに一括保させる保存手順
を前記コンピュータに更に実行させる、請求項６記載のプログラム。
【請求項８】
前記第２の仮想計算機の動作を終了させる終了手順
を前記コンピュータに更に実行させる、請求項７記載のプログラム。
【請求項９】
前記複製手順は、前記第１の仮想計算機の動作状態のデータをコピーオンライトにより複製させる、請求項６乃至８のいずれか１項記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バックアップ方法、情報処理装置及びプログラム等に関する。
【背景技術】
【０００２】
物理計算機（以下、単に計算機と言う）では、計算機内で障害が発生しても実行中の処理が継続可能となるように、計算機の動作状態を採取してバックアップすることが行われる。計算機の動作状態は、所謂スナップショットとして採取されてバックアップされるので、例えば運用系の計算機内で障害が発生しても、障害発生前に採取されてバックアップされた運用系の計算機の動作状態のスナップショットを用いることで、運用系の計算機の障害発生前の動作状態を複製系の計算機内で復元することができる。【０００３】
一方、仮想計算機（ＶＭ：Virtual Machine）においても、障害が発生した場合に備えて仮想計算機の動作状態をスナップショットとして採取してバックアップする種々の方法が提案されている。仮想計算機の動作状態には、仮想計算機を形成する計算機のプロセッサ（例えば、ＣＰＵ：Central Processing Unit）で形成された仮想プロセッサ（例えば、仮想ＣＰＵ）の動作状態やメモリの内容が含まれる。又、障害には、仮想計算機内で発生するソフトウェアに起因する障害、及び仮想計算機を形成する計算機内で発生するハードウェアに起因する障害が含まれる。【０００４】
仮想計算機の動作状態をスナップショットとして採取してバックアップする提案方法では、仮想計算機の動作状態（仮想ＣＰＵの動作状態やメモリの内容）をバックアップデータ（即ち、スナップショット）として直接ディスク装置等のストレージ装置にバックアップするので、仮想計算機に割り当てたメモリのサイズに応じてバックアップ処理にかかる時間が長くなる。このため、バックアップ処理の間、運用系の仮想計算機を一時停止する場合には業務処理の停止時間が長くなり、運用系の仮想計算機を一時停止しない場合にはバックアップデータを用いて復元された仮想計算機のデータと運用系の仮想計算機のデータとの整合性が保てなくなる。更に、上記提案方法では、バックアップデータを用いて仮想計算機を復元できるのは運用系の仮想計算機における障害発生時のみであり、運用系の仮想計算機を稼働させたままで、整合性が保たれた状態のバックアップデータを参照することはできない。データの整合性が保てないと、例えば運用系の仮想計算機で実行されていたアプリケーション（Application又はApplication Program）から見て、データの構造や意味的に欠損や矛盾がない状態（以下、アプリケーション整合性と言う）を保つことができない。【０００５】
尚、アプリケーション整合性を保つためにバックアップ処理の間は運用系の仮想計算機を停止する方法の場合、業務処理やサービスが中断されてしまうので、運用系の仮想計算機がデータセンタ等に適用されている場合には利用者への停止通知が必要となる。一方、アプリケーション毎にストレージ装置との連携機構を組み込み、スナップショット作成時にバッファ及びキャッシュの内容をストレージ装置へ書き出させる方法では、連携機構のないアプリケーションには対応できない。更に、運用系の仮想計算機が適用された業務システム側からストレージ装置側のスナップショット作成アプリケーションを呼び出す方法では、業務システムに対する機能の追加や利用者の教育が必要であり、運用系の仮想計算機がデータセンタ等に適用されている場合にはストレージ装置側の多重度管理、スケジューリング及びセキュリティ対策も必要となってしまう。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２００９−５３３７７７号公報
【特許文献２】特開２００９−８０６９２号公報
【特許文献３】特開２００７−１８３７０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来のバックアップ方法では、運用系の仮想計算機を稼動させたままこの運用系の仮想計算機のデータを適切にバックアップすることはできないという問題があった。【０００８】
そこで、１側面では、本発明は、運用系の仮想計算機を稼動させたままこの仮想計算機のデータを適切にバックアップ可能とするバックアップ方法、情報処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の案では、物理計算機上で動作する第１の仮想計算機の動作を中断させる中断工程と、前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製工程と、前記複製工程の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開工程と、前記物理計算機上で動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替工程と、前記再開工程による再開及び前記切替工程による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断工程とを含む仮想計算機のデータ複製方法が提供される。
【００１０】
第２の案では、物理計算機上で動作する第１の仮想計算機の動作を中断させる中断機構と、前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製機構と、前記複製機構による複製の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開機構と、前記物理計算機上の動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替機構と、前記再開機構による再開及び前記切替機構による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断機構とを備えた情報処理装置が提供される。
【００１１】
第３の案では、第１の仮想計算機のデータ複製処理をコンピュータに実行させるプログラムであって、物理計算機上で動作する前記第１の仮想計算機の動作を中断させる中断手順と、前記第１の仮想計算機の動作が中断されている状態で、前記物理計算機のメモリ内の前記第１の仮想計算機の動作状態のデータ、及び、前記物理計算機のストレージ装置内の前記第１の仮想計算機が利用する第１の仮想記録媒体のデータを第２の仮想記録媒体に複製させる複製手順と、前記複製手順による複製の完了を検知し、中断された前記第１の仮想計算機の動作を再開させる再開手順と、前記物理計算機上で動作する第２の仮想計算機の接続先の仮想記録媒体を、前記第２の仮想記録媒体に切り替えさせる切替手順と、前記再開手順による再開及び前記切替手順による切り替えの後、前記第２の仮想計算機のネットワーク接続を遮断させる遮断手順とを前記コンピュータに実行させるプログラムが提供される。
【発明の効果】
【００１２】
一形態における、バックアップ方法、情報処理装置及びプログラムによれば、運用系の仮想計算機を稼動させたままこの仮想計算機のデータを適切にバックアップすることが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１実施例における情報処理装置を示すブロック図である。
【図２】バックアップ機構の一例を説明する図である。
【図３】仮想計算機管理テーブルの一例を説明する図である。
【図４】バックアップ機構の動作の一例を説明するフローチャートである。
【図５】本発明の第２実施例における情報処理装置を示すブロック図である。
【図６】バックアップ機構の一例を説明する図である。
【図７】切替機構の一例を説明する図である。
【図８】切替機構の動作の一例を説明するフローチャートである。
【図９】遮断機構の一例を説明する図である。
【図１０】バックアップ機構の動作の一例を説明するフローチャートである。
【図１１】本発明の第３実施例における情報処理装置を示すブロック図である。
【図１２】バックアップ機構の動作の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１４】
一形態におけるバックアップ方法、情報処理装置及びプログラムでは、メモリを含む物理計算機とストレージ装置を有する情報処理装置のデータをバックアップする際に、物理計算機内で形成された運用系の仮想計算機の処理を中断し、前記運用系の仮想計算機の処理が中断中に、運用系の仮想計算機の動作状態のデータをメモリ内に形成された複製系の仮想計算機に複製し、前記運用系の仮想計算機の処理が中断中に、運用系の仮想計算機を形成する運用系の仮想記録媒体の内容のデータをストレージ装置内で複製系の仮想計算機を形成する複製系の仮想記録媒体内に複製し、運用系の仮想計算機の処理を再開する。
【００１５】
運用系の仮想計算機の動作状態を運用系の仮想計算機を実質的に停止することなくメモリ内に形成された複製系の仮想計算機に複製するバックアップ処理を実行するので、運用系の仮想計算機の動作状態は運用系の仮想計算機を稼動させたまま適切に複製系の仮想計算機にバックアップされる。
【００１６】
以下に、バックアップ方法、情報処理装置及びプログラムの各実施例を図面と共に説明する。
【実施例】
【００１７】
（第１実施例）
図１は、本発明の第１実施例における情報処理装置を示すブロック図である。図１に示す情報処理装置（計算機システム、或いは、コンピュータシステム）は、少なくとも物理計算機１により形成されており、本実施例ではストレージ装置２を有するが、ストレージ装置２は計算機１に対してネットワーク等を介して外部接続されていても良い。【００１８】
計算機１は、ＣＰＵ等の少なくとも１つのプロセッサ、少なくとも１つのメモリ、キーボード等の入力装置、及び表示装置等を備えた周知のハードウェア構成を有する。メモリには、プロセッサが実行するプログラムや、プロセッサが実行した演算処理の中間データを含む各種データが格納される。計算機１が有する運用系の仮想計算機（ＶＭ）１１−１〜１１−Ｎ（Ｎは１以上の自然数）、複製系の仮想計算機（ＶＭ）１８、バックアップ機構１２、仮想化機構１３、複製機構１４、中断機構１５、再開機構１６及び保存機構１７は、プロセッサがプログラムの手順を実行することにより実現される機能又は手段に相当する。仮想化機構１３は、計算機１内でＶＭ１１−１〜１１−Ｎ，１８を形成するための周知の機能又は手段である。尚、複製系の部分は図１中破線で囲んで示す。【００１９】
一方、ストレージ装置２は、少なくとも１つのプロセッサと少なくとも１つの記憶装置を備えた周知のハードウェア構成を有する。本実施例では、説明の便宜上、ストレージ装置２を形成する記憶装置が少なくとも１つのディスク記録媒体（即ち、物理記録媒体）を有する少なくとも１つのディスク装置であるものとする。ストレージ装置２は、運用系の仮想ディスク２１−１〜２１−Ｍ（Ｍは２以上の自然数）、スナップショット（ＳＳ：Snap Shot）機構２２、複製系ディスク２３−１及びバックアップディスク２４を有する。【００２０】
ＳＳ機構２２は、ストレージ装置２内ではなく、計算機１内に設けても良い。又、バックアップストレージ２４は、保存機構１７によりアクセス可能であれば、ストレージ装置２とは別体で、且つ、計算機１に外部接続された記憶装置で形成可能である。【００２１】
ステップＳＴ１において利用者が入力装置からバックアップ指示をバックアップ機構１２に入力するか、或いは、計算機１内の周知のタイマー機構（図示せず）がバックアップ指示をバックアップ機構１２に入力すると、バックアップ機構１２はステップＳＴ２において中断指示を中断機構１５に対して発行する。タイマー機構は、例えば一定時間毎、或いは、予め設定された任意のスケージュールに従ったタイミングでバックアップ指示をバックアップ機構１２に入力する。又、タイマー機構が複数の運用系のＶＭ１１−１〜１１−Ｎのバックアップ指示をバックアップ機構１２に入力する順序は、予め任意の順序に固定的に設定しておいても、或いは、ランダムな順序に設定しておいても良い。例えば運用系のＶＭ１１−１のバックアップ指示が入力されると、中断機構１５はステップＳＴ３において運用系のＶＭ１１−１に対して処理を中断させる中断操作を実行する。一方、バックアップ機構１２は、ステップＳＴ４において複製機構１４に対して複製指示を発行する。これにより、複製機構１４は、ステップＳＴ５において運用系のＶＭ１１−１を形成する仮想ＣＰＵの動作状態及び運用系のＶＭ１１−１を形成するメモリの内容の複製、即ち、動作状態のスナップショットを複製系のＶＭ１８を形成するメモリ内に作成する。運用系のＶＭ１１−１を形成する仮想ＣＰＵの動作状態は運用系のＶＭ１１−１を形成するメモリ内に格納されるので、複製機構１４が複製系のＶＭ１８を形成するメモリ内に作成する動作状態のスナップショットは、運用系のＶＭ１１−１を形成するメモリ内容の複製に相当する。本実施例では、図１中ＣＯＷで示すように、動作状態のスナップショットをコピーオンライト（ＣＯＷ：Copy On Write）により複製系のＶＭ１８を形成するメモリ内に作成する。【００２２】
このように、運用系のＶＭ１１−１の動作状態（即ち、運用系のＶＭ１１−１を形成するメモリ内容）を保存する際、直接ストレージ装置２のディスクに書き込む代わりに、計算機１内のメモリ上に一時的又は永続的な運用系のＶＭ１１−１の複製するので、高速にバックアップ処理を行うことができる。【００２３】
バックアップ機構１２は、ステップＳＴ６において複製指示をＳＳ機構２２に対して発行する。これにより、ＳＳ機構２２は、ステップＳＴ７において例えば運用系の仮想ディスク２１−１のストレージのスナップショットを複製系の仮想ディスク２３−１に作成する。一方、バックアップ機構１２は、ステップＳＴ８において再開指示を再開機構１６に対して発行する。再開機構１６は、ステップＳＴ９において、中断機構１５により処理が中断され複製機構１４により複製系のＶＭ１８に動作状態のスナップショットが形成された運用系のＶＭ、この例では運用系のＶＭ１１−１、に対して処理を再開させる再開操作を実行する。【００２４】
又、バックアップ機構１２は、ステップＳＴ１０において保存機構１７に対して保存指示を発行する。これにより、保存機構１７は、ステップＳＴ１１において複製系のＶＭ１８のメモリ内容及び複製系の仮想ディスク２３−１の内容をバックアップストレージ２４に一括保存する。バックアップ機構１２が保存機構１７に対して保存指示を発行するタイミングは、再開機構１６により運用系のＶＭ１１−１の処理が再開された後であれば任意のタイミングで良く、例えばタイマー機構により指示されたタイミングであっても良い。つまり、複製系のＶＭ１８のメモリ内容及び複製系の仮想ディスク２３−１の内容をバックアップストレージ２４に一括保存する処理は、運用系のＶＭ１１−１の処理に影響を及ぼさずに完了することが可能である。但し、運用系のＶＭ１１−１の仮想ＣＰＵの動作状態及びメモリの内容の複製を複製系のＶＭ１８のメモリ内に作成する処理と、運用系の仮想ディスク２１−１の内容の複製を複製系の仮想ディスク２３−１内に作成する処理は、互いに非同期に実行されるので、中断機構１５及び再開機構１６によりメモリのデータとディスクのデータとの整合性が保たれるようにする。又、運用系のＶＭ１１−１の仮想ＣＰＵの動作状態及びメモリの内容の複製を複製系のＶＭ１８のメモリ内に作成する処理（即ち、動作状態のスナップショットの作成）を、ＣＯＷにより実行することで、運用系のＶＭ１１−１の処理が停止される時間を更に短縮することができると共に、動作状態のスナップショットに使用する複製系のＶＭ１８のメモリ量を削減できる。このため、運用系のＶＭ１１−１のメモリサイズが比較的大きな場合でも、運用系の仮想ディスク２１−１の内容の複製を良好に作成可能である。【００２５】
図２は、バックアップ機構１２の一例を説明する図である。バックアップ機構１２は、ユーザインタフェース（ＵＩ：User Interface）１２１、外部ＡＰＩ（Application Programming Interface）１２２、制御部１２３及びＶＭ管理テーブル１２４を有する。ＵＩ１２１は、ウェブ（Web）ＵＩ、グラフィックユーザインタフェース（ＧＵＩ：Graphic User Interface）、コマンドライン等を含み、利用者が入力装置から入力したバックアップ指示を受ける。一方、外部ＡＰＩ１２２は、計算機１内のタイマー機構等からのバックアップ指示を受ける。ＵＩ１２１及び外部ＡＰＩ１２２は、バックアップ指示に応答して制御部１２３が提供する内部ＡＰＩを呼び出す。制御部１２３は、内部ＡＰＩの呼び出しに基づいて、必要に応じてＶＭ管理テーブル１２４を参照して中断指示、複製指示、再開指示及び保存指示を出力する。【００２６】
図３は、ＶＭ管理テーブル１２４の一例を説明する図である。この例では、ＶＭ管理テーブル１２４は、各ＶＭ１−１〜１１−Ｎ（ＶＭ１８を含む）を識別するためのＶＭ識別子ＶＭ−ＩＤ、ＶＭの仮想ＣＰＵの動作状態を示すＶＭ状態、仮想ディスク２１−１〜２１−Ｍ（仮想ディスク２３−１を含む）を識別する仮想ディスク識別子、ストレージ装置２内の各ディスクのアドレスを示す物理ディスクアドレス、停止中のＶＭの再開の要否を示す再開フラグ等を管理する。この例では、ＶＭ管理テーブル１２４が管理するＶＭ−ＩＤの最初に付加されている「ｖｍ」は運用系のＶＭであることを示し、「ｂｋ」は複製系のＶＭであることを示す。【００２７】
尚、周知の仮想化機構１３が保持している情報には、ＶＭ管理テーブル１２４が管理している情報の少なくとも一部が含まれるので、仮想化機構１３が保持している情報を参照してＶＭ管理テーブル１２４を作成しても良い。【００２８】
図４は、バックアップ機構１２の動作の一例を説明するフローチャートである。ステップＳ１では、ＵＩ１２１又は外部ＡＰＩ１２２がバックアップ指示を受ける。ステップＳ２では、制御部１２３がＵＩ１２１又は外部ＡＰＩ１２２がバックアップ指示に応答して発行した内部ＡＰＩの呼び出しに基づいてＶＭ管理テーブル１２４を参照する。ステップＳ３では、制御部１２３がバックアップ指示で指定されたＶＭ−ＩＤのＶＭが存在するか、即ち、ＶＭ管理テーブル１２４で管理されているか否かを判定する。ステップＳ３の判定結果がＮＯであると、ステップＳ４では、制御部１２３がバックアップ指示を受けたＵＩ１２１又は外部ＡＰＩ１２２を介してエラーを通知し、処理は終了する。【００２９】
一方、ステップＳ３の判定結果がＹＥＳであると、ステップＳ５では、制御部１２３がバックアップ指示で指定され、且つ、ＶＭ管理テーブル１２４で管理されているＶＭ−ＩＤのＶＭのＶＭ状態が「実行中」であるか否かを判定し、判定結果がＹＥＳであると、ステップＳ６では、制御部１２３が「実行中」のＶＭ、即ち、運用系のＶＭの処理を中断させる中断指示を中断機構１５に出力する。これにより、中断機構１５は、中断指示に応答してＶＭ管理テーブル１２４の該当ＶＭ−ＩＤのＶＭのＶＭ状態を「停止中」に更新し、このＶＭの処理の再開が必要であることを示すために再開フラグを「１」にセットする。ステップＳ５の判定結果がＮＯであるか、或いは、ステップＳ６の後、ステップＳ７では、制御部１２３が運用系のＶＭの複製の作成を指示する複製指示を複製機構１４に出力する。これにより、複製機構１４は、複製指示に応答して運用系のＶＭを形成する仮想ＣＰＵの動作状態及び運用系のＶＭを形成するメモリの内容の複製、即ち、動作状態のスナップショットを複製系のＶＭを形成するメモリ内に作成する。ステップＳ８では、運用系の仮想ディスク２１−１の複製の作成を指示する複製指示をＳＳ機構２２に出力する。これにより、ＳＳ機構２２は、複製指示に応答して運用系の仮想ディスク２１−１の内容の複製、即ち、ストレージのスナップショットを複製系の仮想ディスク２３−１内に作成する。ステップＳ９では、制御部１２３がＶＭ管理テーブル１２４が管理しているバックアップ指示で指定されたＶＭ−ＩＤのＶＭの情報を参照する。【００３０】
ステップＳ１０では、制御部１２３がＶＭ管理テーブル１２４が管理しているバックアップ指示で指定されたＶＭ−ＩＤのＶＭの再開フラグが「１」にセットされているか否かを判定する。ステップＳ１０の判定結果がＹＥＳであると、ステップＳ１１では、制御部１２３が再開指示を再開機構１６に出力する。これにより、再開機構１６は、再開指示に応答してＶＭ管理テーブル１２４の該当ＶＭ−ＩＤのＶＭの再開フラグを「０」にクリアする。ステップＳ１０の判定結果がＮＯ、或いは、ステップＳ１１の後、ステップＳ１２では、制御部１２３が保存指示を保存機構１７に出力する。これにより、保存機構１７は、保存指示に応答して複製系のＶＭ１８のメモリ内容及び複製系の仮想ディスク２３−１の内容をバックアップストレージ２４に一括保存する。ステップＳ１３では、制御部１２３がバックアップ指示を受けたＵＩ１２１又は外部ＡＰＩ１２２を介してバックアップの完了又は成功を通知し、処理は終了する。【００３１】
本実施例のバックアップ処理によれば、運用系のＶＭを稼動させたままこの運用系のＶＭのデータをアプリケーション整合性を保った状態でバックアップ可能となる。
又、運用系のＶＭの動作状態をメモリ上で高速に複製するため、運用系のＶＭを実質的に停止することなく、予測可能な時間内でバックアップ処理を完了できる。これにより、例えば、ＶＭをデータセンタに適用した場合、データセンタの運用者又は管理者は、多数の利用者のシステムのバックアップ作業を柔軟にスケジューリングすることが可能となる。
又、運用系のＶＭの動作状態をメモリ内にＶＭの形式で複製することにより、運用系のＶＭの障害時に複製系のＶＭに処理を再開させてＶＭが適用されているシステムを迅速に復旧することも可能となる。言うまでもなく、メモリに保存していた運用系のＶＭの動作状態、即ち、複製系のＶＭは、任意の時点で破棄可能であり、例えばバックアップストレージへの一括保存が完了した時点で破棄しても良い。【００３２】
又、アプリケーション整合性を保つためのバックアップの仕組みをＶＭに組み込む必要がないため、運用者又は管理者と利用者間の折衝や組み込み作業、及び検査作業のコストの増加を防止できる。更に、アプリケーション整合性を保つためのバックアップの仕組みをＶＭに組み込む必要がないため、ＶＭ上のオペレーティングシステム（ＯＳ：Operating System）やアプリケーションの動作状態や種類にかかわらず、アプリケーション整合性を保つことができる。【００３３】
（第２実施例）
図５は、本発明の第２実施例における情報処理装置を示すブロック図である。図５中、図１と同一部分には同一符号を付し、その説明は省略する。又、図５において、複製機構１４、中断機構１５、再開機構１６、保存機構１７及びＳＳ機構２２の図示は省略する。図５に示す計算機３１は、バックアップ機構３２、切替機構３３、ロード機構３４、遮断機構３５、仮想ブリッジ３６、再開機構３７及び終了機構３８を有する。又、複製系の部分は図５中破線で囲んで示す。【００３４】
本実施例では、複製系のＶＭ１８の接続先の仮想ディスクを運用系の仮想ディスク２１−１とは異なる複製系の仮想ディスク２３−１に切り替え、運用系のＶＭ１１−１の処理（又は、動作）に影響を及ぼさないように、複製系のＶＭ１８が自ＶＭ以外とのネットワーク通信ができないように複製系のＶＭ１８の外部とのネットワーク接続を遮断した後、複製系のＶＭ１８の処理（又は、動作）を再開する。尚、こららの一連の処理は、上記第１実施例におけるバックアップストレージ２４への一括保存に続けてバックアップ機構３２が自動的に実行するようにしても良い。【００３５】
ステップＳＴ１１において利用者が入力装置からリストア指示をバックアップ機構３２に入力するか、或いは、計算機３１内で生成されたリストア指示をバックアップ機構３２に入力すると、バックアップ機構３２はステップＳＴ１２においてロード指示をロード機構３４に対して発行し、ステップＳＴ１３において切替指示を切替機構３３に対して発行し、ステップＳＴ１４において遮断指示を遮断機構３５に対して発行する。遮断機構３５は、ステップＳＴ１５において遮断指示を仮想ブリッジ３６に対して発行する。バックアップ機構３２は、ステップＳＴ１６において再開指示を再開機構３７に対して発行し、再開機構３７は、ステップＳＴ１７において複製系のＶＭ１８に対して処理を再開させる再開操作を実行する。又、バックアップ機構３２は、ステップＳＴ１８において終了指示を終了機構３８に対して発行し、終了機構３８は、ステップＳＴ１９において複製ＶＭ１８の処理を正常なシャットダウン手順により終了させる終了操作を実行する。【００３６】
図６は、バックアップ機構３２の一例を説明する図である。図６中、図２と同一部分には同一符号を付し、その説明は省略する。バックアップ機構３２の制御部２２３は、図２のバックアップ機構１２が出力する中断指示、複製指示、再開指示及び保存指示に加えて、ロード機構３４に対するロード指示、切替機構３３に対する切替指示、遮断機構３５に対する遮断指示、再開機構３７に対する再開指示、及び終了機構３８に対する終了指示を出力する点で図２のバックアップ機構１２の制御部２３と異なる。【００３７】
図７は、切替機構３３の一例を説明する図である。図７中、図３及び図５と同一部分には同一符号を付し、その説明は省略する。又、図８は、切替機構３３の動作の一例を説明するフローチャートである。【００３８】
ストレージ装置２内の各ＶＭ１１−１〜１１−Ｎ，１８用の物理ディスク領域は、計算機３１上で仮想ディスク２１−１〜２１−Ｍ，２３−１に対応付けられており、仮想化機構１３は各仮想ディスク２１−１〜２１−Ｍ，２３−１を各ＶＭ１１−１〜１１−Ｎ，１８に対応付ける処理を行う。このような仮想ディスクのＶＭへの対応付けは、上記第１実施例においても実行されている。切替機構３３は、このような仮想ディスクのＶＭへの対応付けを切り替え、複製系ＶＭが読み書きする仮想ディスクと運用系ＶＭが読み書きする仮想ディスクが同じになることを避ける。【００３９】
図７及び図８において、ステップＳ２１では、バックアップ機構３２からの複製系のＶＭ１８に対する切替指示を受ける。ステップＳ２２では、ＶＭ管理テーブル１２４を参照し、切替の対象となる物理ディスクの物理ディスクアドレスを取得する。ステップＳ２３では、計算機３１上で運用系の仮想ディスクとは異なる複製系の仮想ディスクを新規作成する。この例では、ステップＳ２２で取得する物理ディスクアドレスは「iqn.2009-12.com.bk001」であり、ステップＳ２３で新規作成される複製系の仮想ディスクの仮想ディスク識別子は「/dev/sdbk001」であり、運用系の仮想ディスクの仮想ディスク識別子「/dev/sd001」とは異なる。ステップＳ２４では、新規作成された複製系の仮想ディスクをストレージ装置２内の物理ディスクと接続、即ち、関連付ける。ステップＳ２４では、ＶＭ管理テーブル１２４の仮想ディスク識別子の欄を更新する。この例では、管理テーブル１２４で管理されているＶＭ−ＩＤ「bk001」に対する仮想ディスク識別子は「/dev/sd001」であり、ＶＭ−ＩＤ「vm001」に対する仮想ディスク識別子と同じであるが、ステップＳ２４では「/dev/sdbk001」に更新される。ステップＳ２５では、バックアップ機構３２に仮想ディスクの切替が完了したことを示す完了通知を行い、処理は終了する。【００４０】
図９は、遮断機構３５の一例を説明する図である。図９に示すように、計算機３１内の各ＶＭ１１−１〜１１−Ｎ，１８は、仮想ブリッジ３６を介して外部ネットワークに接続可能である。各ＶＭと仮想部ブリッジ３６との間は周知の仮想ネットワークインタフェースで接続され、仮想ブリッジ３６と外部ネットワークインタフェースとの間は周知の物理ネットワークインタフェースで接続されている。遮断機構３５は、バックアップ機構３２からの遮断指示に応答して、遮断対象の例えば複製系のＶＭ１８と仮想ブリッジ３６との間の仮想ネットワークインタフェースを停止させる停止操作を実行するので、遮断対象である複製系のＶＭ１８には接続相手が応答しなくなったように見える。このようにして、遮断対象である複製系のＶＭ１８を外部ネットワークに対して遮断する。【００４１】
図１０は、バックアップ機構３２の動作の一例を説明するフローチャートである。ステップＳ３１では、ＵＩ１２１又は外部ＡＰＩ１２２がリストア指示を受ける。ステップＳ３２では、制御部２２３がＵＩ１２１又は外部ＡＰＩ１２２がリストア指示に応答して実行した内部ＡＰＩの呼び出しに基づいてＶＭ管理テーブル１２４を参照する。ステップＳ３３では、制御部２２３がリストア指示で指定された対象ＶＭである例えば運用系のＶＭ１１−１に対する複製系のＶＭ１８のＶＭ−ＩＤが存在するか、即ち、ＶＭ管理テーブル１２４で管理されており、且つ、この複製系のＶＭ１８のＶＭ状態が「停止中」であるか否かを判定する。ステップＳ３３の判定結果がＮＯであると、ステップＳ３４では、制御部２２３がリストア指示を受けたＵＩ１２１又は外部ＡＰＩ１２２を介してエラーを通知し、処理は終了する。【００４２】
一方、ステップＳ３３の判定結果がＹＥＳであると、ステップＳ３５では、制御部２２３がロード機構３４に対してロード指示を出力する。これにより、ロード機構３４は、ロード指示に応答して、リストア指示で指定され、且つ、ＶＭ管理テーブル１２４で管理されており実行状態が「停止中」である複製系のＶＭ１８をバックアップストレージ２４から計算機１にロードする。又、ステップＳ３６では、制御部２２３が切替指示を切替機構３３に対して出力する。これにより、切替機構３３は切替指示に応答して、図７と共に説明した如き仮想ディスクの切替を実行し、仮想ディスクの切替に応じてＶＭ管理テーブル１２４の仮想ディスク識別子を更新する。ステップＳ３７では、制御部２２３が遮断指示を遮断機構３５に対して出力する。これにより、遮断機構３５は遮断指示に応答して、リストア指示により図９と共に説明した如き遮断対象である複製系のＶＭ１８を外部ネットワークに対して遮断する。【００４３】
ステップＳ３８では、制御部２２３が再開機構３７に対して再開指示を出力する。これにより、再開機構３７は、再開指示に応答してリストア指示で指定された複製系のＶＭ１８の処理を再開させる再開操作を実行すると共に、ＶＭ管理テーブル１２４で管理されている複製系のＶＭ１８のＶＭ−ＩＤに対するＶＭ状態を「実行中」に更新する。ステップＳ３９では、制御部２２３がＶＭ管理テーブル１２４を参照し、ステップＳ４０では、制御部２２３が参照したＶＭ管理テーブル１２４においてリストア指示で指定された複製系のＶＭ１８のＶＭ−ＩＤに対するＶＭ状態が「実行中」であるか否かを判定する。ステップＳ４０の判定結果がＮＯであると、処理はステップＳ３４へ進む。【００４４】
一方、ステップＳ４０の判定結果がＹＥＳであると、ステップＳ４１では、制御部２２３が終了機構３８に対して終了指示を出力する。これにより、終了機構３８は、終了指示に応答してリストア指示で指定された複製系のＶＭ１８の処理を正常なシャットダウン手順で終了させる終了操作を実行すると共に、ＶＭ管理テーブル１２４で管理されている複製系のＶＭ１８のＶＭ−ＩＤに対するＶＭ状態を「停止中」に更新する。ステップＳ４２では、制御部２２３がＶＭ管理テーブル１２４を参照し、ステップＳ４３では、制御部２２３が参照したＶＭ管理テーブル１２４においてリストア指示で指定された複製系のＶＭ１８のＶＭ−ＩＤに対するＶＭ状態が「停止中」であるか否かを判定する。ステップＳ４３の判定結果がＮＯであると、処理はステップＳ３４へ進む。一方、ステップＳ４３の判定結果がＹＥＳであると、ステップＳ４４では、制御部２２３がリストア指示を受けたＵＩ１２１又は外部ＡＰＩ１２２を介してリストアの完了又は成功を通知し、処理は終了する。【００４５】
本実施例によれば、複製系のＶＭのロード、処理の再開及び処理の終了を実行することで、複製系のＶＭから作成され、複製系のＶＭを形成する仮想ディスク単体でアプリケーション整合性を保つことが可能となる。又、複製系のＶＭの接続先の仮想ディスクを運用系の仮想ディスクとは異なる複製系の仮想ディスクに切り替え、複製系のＶＭの外部ネットワークとの接続を遮断することで、運用系のＶＭの処理に影響を及ぼすことなく複製系のＶＭの仮想ディスク単体でアプリケーション整合性を保つことが可能となる。これにより、アプリケーション整合性が保たれた複製系の仮想ディスクを運用系のＶＭ又は外部のシステムから参照したり更新したりすることが可能となる。【００４６】
（第３実施例）
図１１は、本発明の第３実施例における情報処理装置を示すブロック図である。図１１中、図１及び図５と同一部分には同一符号を付し、その説明は省略する。バックアップ機構４２は、基本的には図１のバックアップ機構１２及び図５のバックアップ機構３２の機能を兼ね備えている。又、図１に示す保存機構１７の代わりに保存機構４４が設けられており、図５に示すロード機構３４は設けられていない。【００４７】
本実施例では、複製系のＶＭ及び仮想ディスクを一旦バックアップストレージに保存することなく、仮想ディスクの切り替え及び外部ネットワークとの接続の遮断の後、そのまま複製系のＶＭの処理の再開及び処理の終了を行わせて、アプリケーション整合性が保たれた仮想ディスクのみを保存する。【００４８】
図１１において、ステップＳＴ２１〜ＳＴ２９は、図１のステップＳＴ１〜ＳＴ９に相当する。又、ステップＳＴ３０〜ＳＴ３６は、図５のステップＳＴ１３〜ＳＴ１９に相当する。本実施例では、バックアップ機構４２は、リストア指示に応答してロード指示を出力しないので、ステップＳＴ３０におけるバックアップ機構４２の切替指示の出力は、リストア指示をトリガにするのではなく、ステップＳＴ２８における再開指示の出力（具体的には、再開機構１６が運用系のＶＭ１１−１に対する再開操作の開始）をトリガとしている。【００４９】
ステップＳＴ３７，ＳＴ３８は、図１のステップＳＴ１０，ＳＴ１１に対応する。ステップＳＴ３７においてバックアップ機構４２が保存指示を保存機構４４に対して出力すると、ステップＳＴ３８において保存機構４４はアプリケーション整合性が保たれた仮想ディスク２３−１の内容をバックアップストレージ２４に保存する。図１に示す保存機構１７は、ステップＳＴ１１において複製系のＶＭ１８のメモリ内容及び複製系の仮想ディスク２３−１の内容をバックアップストレージ２４に一括保存するが、図１１に示す保存機構４４は、ステップＳＴ３８において複製系のＶＭ１８のメモリ内容をバックアップストレージ２４に保存しないので、ステップＳＴ３８における保存はステップＳＴ１１における一括保存とは異なる。【００５０】
図１２は、バックアップ機構４４の動作の一例を説明するフローチャートである。図１２において、ステップＳ５１〜Ｓ５３，Ｓ７０，Ｓ５４〜Ｓ６０，Ｓ６９の処理は、図４のステップＳ１〜Ｓ１１，Ｓ１３の処理と同様であるため、その説明は省略する。又、図１２において、ステップＳ６１〜Ｓ６８の処理は、図１０のステップＳ３６〜Ｓ４３と同様であるため、その説明は省略する。【００５１】
本実施例によれば、上記第１実施例及び上記第２実施例を適切に組み合わせることで、複製系のＶＭのバックアップストレージへの一括保存及びバックアップストレージからの再ロードは行わない。これにより、バックアップ処理が比較的簡単になり、バックアップ処理を比較的短時間で完了可能となる。【００５２】
以上、開示のバックアップ方法、情報処理装置及びプログラムを実施例により説明したが、本発明は上記実施例に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能であることは言うまでもない。
【符号の説明】
【００５３】
１，３１，４１      物理計算機
２      ストレージ装置
１１−１〜１１−Ｎ      運用系の仮想計算機
１２，３２，４２      バックアップ機構
１３      仮想化機構
１４      複製機構
１５      中断機構
１６      再開機構
１７，４４      保存機構
１８      複製系の仮想計算機
２１−１〜２１−Ｍ      運用系の仮想ディスク
２２      スナップショット機構
２３−１      複製系の仮想ディスク
２４      バックアップストレージ
３３      切替機構
３４      ロード機構
３５      遮断機構
３６      仮想ブリッジ
【図１】
0005413515.tif 000002
【図２】
0005413515.tif 000003
【図３】
0005413515.tif 000004
【図４】
0005413515.tif 000005
【図５】
0005413515.tif 000006
【図６】
0005413515.tif 000007
【図７】
0005413515.tif 000008
【図８】
0005413515.tif 000009
【図９】
0005413515.tif 000010
【図１０】
0005413515.tif 000011
【図１１】
0005413515.tif 000012
【図１２】
0005413515.tif 000013