JP2014006845A - 管理方法,管理装置および管理プログラム - Google Patents

管理方法,管理装置および管理プログラム Download PDF

Info

Publication number
JP2014006845A
JP2014006845A JP2012144033A JP2012144033A JP2014006845A JP 2014006845 A JP2014006845 A JP 2014006845A JP 2012144033 A JP2012144033 A JP 2012144033A JP 2012144033 A JP2012144033 A JP 2012144033A JP 2014006845 A JP2014006845 A JP 2014006845A
Authority
JP
Japan
Prior art keywords
file
snapshot
merge
virtual machine
difference
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.)
Pending
Application number
JP2012144033A
Other languages
English (en)
Inventor
Masa Kamijo
雅 上条
Satoshi Mikota
聡 三小田
Yukio Osada
有木郎 長田
Yu Kumanomido
悠 熊埜御堂
Hironobu Awazu
裕亘 粟津
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012144033A priority Critical patent/JP2014006845A/ja
Publication of JP2014006845A publication Critical patent/JP2014006845A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】仮想マシンをシャットダウンせずに,仮想マシンのスナップショットファイルをマージする技術を提供する。
【解決手段】仮想マシンシステム1において,ホストOS30が備えるスナップショット管理機能部300は,仮想ディスク領域130に記憶された,マージ対象となる所定の連続する世代のスナップショットファイル132をコピーし,コピーファイルを生成する。スナップショット管理機能部300は,それらのコピーファイルをマージして,マージファイルを生成する。この間,仮想マシン40はシャットダウンせずに通常に動作している。ホストOS30が備えるスナップショット管理機能部300は,所定の連続する世代のスナップショットファイル132を,マージファイルに置き換える。
【選択図】図2

Description

本発明は,仮想マシンの差分ファイルを管理する管理方法,管理装置および管理プログラムに関するものである。
仮想マシンシステムにおいて,仮想マシンの状態を保存する機能として,スナップショットの機能がある。スナップショット機能を用いれば,ユーザは,任意のタイミングの仮想マシンの状態を保存し,以後,仮想マシンを保存された状態に戻すことができるようになる。
スナップショット機能によりスナップショットの取得が行われると,仮想マシンにおける仮想ディスクを実現する仮想ディスクファイルに対する更新の差分情報を記録する差分ファイルであるスナップショットファイルが,新たに生成される。このとき,仮想ディスクファイルや,前に生成されたスナップショットファイルへの書き込みが禁止されることで,その時点での仮想マシンの状態が保存される。
スナップショットファイルは,スナップショットの取得が行われるたびに,世代を重ねて生成される。仮想マシンシステムでは,スナップショットファイルを連続する世代同士で紐付けされて管理される。仮想マシンにおいて仮想ディスクへのアクセスが行われる場合には,最新のスナップショットファイルから順に各世代のスナップショットファイルを遡ることにより,データのアクセスが行われる。
なお,ホストサーバにおいて,仮想マシンの稼動中でも,整合性が保たれた状態で仮想マシンをバックアップすることを可能とする技術が知られている。また,仮想マシンを電源OFFし,デルタディスクを仮想ディスクにマージする技術が知られている。
特表2009−533777号公報 特表2011−513816号公報
スナップショットの取得を繰り返すことにより,スナップショットファイルの世代数が多くなると,仮想マシンにおける仮想ディスクへのアクセス性能が劣化する。また,スナップショットファイルの増加によって,その記憶領域が急速に消費されるようになる。
このような問題に対処するために,仮想マシンシステムでは,スナップショットファイルのマージ機能が提供されている。このマージ機能によって,複数の連続する世代のスナップショットファイルをマージし,スナップショットファイルの数や世代数を減らすことができる。
しかし,既存のマージ機能では,スナップショットファイルをマージする際には,スナップショットファイルを利用して実現される仮想マシンをシャットダウンする必要があり,サーバとして運用される仮想マシンなどでは,その業務の運用に支障をきたしていた。
一側面では,本発明は,仮想マシンをシャットダウンせずに,仮想マシンのスナップショットファイルをマージする技術を提供することを目的とする。
1態様では,管理方法では,コンピュータが,仮想ディスクファイルに対する更新の差分情報である差分ファイルを記憶する記憶部に記憶される,所定の連続する世代の差分ファイルをコピーし,コピーした差分ファイルをマージし,記憶部に記憶される所定の連続する世代の差分ファイルを,マージされた差分ファイルに置き換える処理を実行する。
1態様では,仮想マシンをシャットダウンせずに,仮想マシンのスナップショットファイルをマージすることが可能となる。
本実施の形態による仮想マシンシステムの構成例を示す図である。 本実施の形態による仮想マシンのスナップショットの例を説明する図である。 本実施の形態によるスナップショット管理機能部の機能構成の例を示す図である。 本実施の形態による設定データの例を示す図である。 本実施の形態によるスナップショットファイルの例を示す図である。 本実施の形態のマージ部による処理の例を説明する図である。 本実施の形態のマージ部による処理の例を説明する図である。 本実施の形態の置換部による処理の例を説明する図である。 本実施の形態の置換部による処理の例を説明する図である。 本実施の形態のマージ部による処理のフローチャートである。 本実施の形態の取得部および置換部による処理のフローチャートである。
以下,本実施の形態について,図を用いて説明する。
図1は,本実施の形態による仮想マシンシステムの構成例を示す図である。
仮想マシンシステムは,例えば,1台の物理マシン上で1または複数台の仮想マシンが動作するシステムである。図1に示す仮想マシンシステム1の例では,CPU(Central Processing Unit )11やメモリ12などの,コンピュータのハードウェア10の資源を利用して,複数台の仮想マシン40が動作する。
仮想マシンシステム1において,ハイパーバイザ20は,コンピュータのハードウェア10を利用した仮想化環境を実現するソフトウェアである。仮想マシン40は,ハイパーバイザ20上に構築可能である。
ホストOS(Operating System)30は,仮想マシン40を管理するOSである。仮想マシンシステム1の管理者であるユーザは,ホストOS30から,仮想マシン40の新規作成,構成変更,削除等を行うことが可能である。
ホストOS30は,スナップショット管理機能部300を備える。スナップショット管理機能部300は,仮想マシンシステム1で動作する仮想マシン40のスナップショットの管理を行う。
図1に示す仮想マシンシステム1を実現するコンピュータは,例えば,CPU11,主記憶となるメモリ12,記憶装置13,通信装置14,媒体読取・書込装置15,入力装置16,出力装置17等のハードウェア10を備える。記憶装置13は,例えばHDD(Hard Disk Drive )等の外部記憶装置や,補助記憶装置などである。媒体読取・書込装置15は,例えばCD−R(Compact Disc Recordable )ドライブやDVD−R(Digital Versatile Disc Recordable )ドライブなどである。入力装置16は,例えばキーボード・マウスなどである。出力装置17は,例えばディスプレイ等の表示装置などである。
図1に示すハイパーバイザ20,各仮想マシン40,ホストOS30およびホストOS30が備えるスナップショット管理機能部300は,コンピュータが備えるCPU11,メモリ12等のハードウェア10と,ソフトウェアプログラムとによって実現することが可能である。コンピュータが実行可能なプログラムは,例えば,記憶装置13に記憶され,その実行時にメモリ12に読み出され,CPU11により実行される。
コンピュータは,可搬型記録媒体から直接プログラムを読み取り,そのプログラムに従った処理を実行することもできる。また,コンピュータは,サーバコンピュータからプログラムが転送されるごとに,逐次,受け取ったプログラムに従った処理を実行することもできる。さらに,このプログラムは,コンピュータで読み取り可能な記録媒体に記録しておくことができる。
図2は,本実施の形態による仮想マシンのスナップショットの例を説明する図である。
本実施の形態では,仮想マシン40は,ハードディスク等の記憶装置13に記憶された仮想ディスクファイル131を含む複数のファイルによって実現されるものとする。仮想ディスクファイル131は,仮想的なハードディスクイメージのファイルである。図2に示す仮想マシンシステム1において,仮想ディスクファイル131が記憶される記憶装置13の仮想ディスク領域130は,仮想マシン40における仮想ディスク41を実現する領域である。仮想マシン40上での仮想ディスク41のデータ更新は,物理マシンの記憶装置13上での仮想ディスクファイル131に対するデータ更新となる。
図2に示す仮想マシンシステム1では,仮想マシン40のスナップショット機能が用意されている。仮想マシン40のスナップショット機能は,起動中の仮想マシン40について,ある時点での仮想CPU,仮想メモリのデータを仮想ディスク41に退避することにより,仮想マシン40の定点状態を仮想ディスク41に保存する機能である。例えば,米マイクロソフト社が提供する仮想化プラットフォームであるHyper−V(商標)にも,このスナップショット機能が装備されている。
スナップショット機能は,仮想マシン40をシャットダウンすることなく,その仮想マシン40の状態を保存する機能である。例えば,ユーザは,仮想マシン40の状態を保存したい任意のタイミングで,ユーザインタフェースによりスナップショットの取得を指示する操作を行う。
例えば,仮想ディスク領域130に仮想ディスクファイル131しかない状態で,スナップショットの取得が行われたものとする。このとき,仮想マシン40の実行に利用している仮想ディスクファイル131が,読み取り専用に切り替えられ,仮想ディスク領域130に,読み書き可能なスナップショットファイル132aが生成される。以降,仮想マシン40における仮想ディスク41の更新は,仮想ディスクファイル131には直接には記録されず,スナップショットファイル132aに差分情報として記録される。すなわち,仮想ディスクファイル131は,スナップショットの取得が行われた時点での仮想マシン40の状態が保存されたファイルとなる。
スナップショットファイル132aは,仮想ディスクファイル131に対する更新の差分情報が記録される差分ファイルとなる。仮想マシン40において仮想ディスク41の更新が行われると,本来仮想ディスクファイル131が更新されるはずの内容が,読み取り専用となった仮想ディスクファイル131との差分情報としてスナップショットファイル132aに記録される。仮想マシン40において,仮想ディスク41からのデータの読み取りが行われると,スナップショットファイル132a,仮想ディスクファイル131の順にデータが参照され,必要なデータの読み取りが行われる。
仮想ディスク領域130に仮想ディスクファイル131とスナップショットファイル132aが存在する状態で,さらに,スナップショットの取得が行われたものとする。このとき,それまで仮想ディスク41への更新が記録されていたスナップショットファイル132aが読み取り専用に切り替えられ,仮想ディスク領域130に,読み書き可能なスナップショットファイル132bが生成される。以降,仮想マシン40における仮想ディスク41の更新は,スナップショットファイル132bに差分情報として記録される。すなわち,スナップショットの取得が行われた時点での仮想マシン40の状態が,仮想ディスクファイル131とスナップショットファイル132aとによって保存された状態となる。
以降同様に,スナップショットの取得が行われるたびに,それまで仮想ディスク41への更新が記録されていたスナップショットファイル132が読み取り専用に切り替えられ,新たに仮想ディスク41への更新を記録するスナップショットファイル132が生成される。仮想マシン40が起動している状態では,最新のスナップショットファイル132のみが読み書き可能でオープンされ,その他のスナップショットファイル132と仮想ディスクファイル131が読み取り専用でオープンされた状態となる。また,ユーザは,仮想ディスク領域130の仮想ディスクファイル131とスナップショットファイル132とを用いて,スナップショット機能で保存された任意の時点の状態に,仮想マシン40の状態を戻すことが可能となる。
図2に示すように,スナップショットファイル132が記憶される仮想ディスク領域130では,スナップショットファイル132が世代管理されている。すなわち,第1世代のスナップショットファイル132aは,例えばヘッダの情報などを用いて,仮想ディスクファイル131に紐付けられて管理される。また,第2世代のスナップショットファイル132bは,第1世代のスナップショットファイル132aに紐付けられて管理される。以降同様に,新たに生成されるスナップショットファイル132は,その直前のスナップショットファイル132に紐付けられて管理される。なお,以下では,自スナップショットファイル132の1つ前の世代にあたるスナップショットファイル132または仮想ディスクファイル131を,親ファイルとも呼ぶ。
仮想マシン40において仮想ディスク41からのデータの読み取りが行われると,最新のスナップショットファイル132から順に紐付け関係を辿ってデータが参照され,必要なデータの読み取りが行われる。そのため,スナップショットの取得を行ってスナップショットファイル132の世代を重ねれば重ねるほど,仮想マシン40における仮想ディスク41へのアクセス性能が劣化するという問題がある。また,多数のスナップショット取得を行って,多数のスナップショットファイル132の生成が行われると,仮想ディスク領域130を急速に消費してしまう問題がある。
このような問題の発生を防ぐために,スナップショット機能を備える仮想マシンシステム1では,スナップショットファイル132のマージ機能が提供されている。例えば上記のHyper−Vでも,スナップショットファイル132のマージ機能が提供されている。このマージ機能を用いれば,連続する複数世代のスナップショットファイル132や仮想ディスクファイル131をマージして,1つのファイルに統合することができる。ただし,既存のマージ機能によってファイルをマージする間は,それらのファイルを利用できなくなるので,それらのファイルを利用して動作する仮想マシン40をシャットダウンする必要があった。
ここで,本実施の形態の例では,スナップショット機能を仮想マシン40のシステム障害の原因調査に利用することを目的として,所定の時間間隔でスナップショットの取得を自動で行うものとする。
仮想マシン40でシステム障害が起こった場合,原因調査のためには障害がおこる直前のメモリやディスクの状態,ユーザの操作ログ等の情報を得る必要がある。通常,障害調査では障害発生時にダンプしたメモリの情報を解析することで調査を行うが,専門的知識が必要である上,取得できる情報も限られるため,原因の特定に時間を要する。
スナップショット機能を備える仮想マシンシステム1上の仮想マシン40でシステム障害が発生した場合,その直前にスナップショットの取得がなされていれば,その状態を瞬時に再現できる。そのため,スナップショットを定期的に取得し,仮想マシン40を保存することは,障害原因の特定において非常に有用である。
しかし,所定時間間隔で自動的にスナップショットの取得を行うと,多世代のスナップショットファイル132が大量に生成されることになり,上述のように,仮想ディスク41に対するアクセス性能が劣化する問題や,仮想ディスク領域130を急速に消費する問題などが発生する。上述のマージ機能を用いれば,スナップショットファイル132の数を減らすことはできる。しかし,上述のように,ファイルのマージを行うたびに仮想マシン40をシャットダウンする必要があり,例えばサーバとして運用される仮想マシン40に対して,頻繁にマージ機能を用いることはできない。
以下で詳細を説明する本実施の形態によるスナップショット管理機能部300は,仮想マシン40をシャットダウンせずに,スナップショットファイル132のマージを行う。本実施の形態によるスナップショット管理機能部300の技術によって,仮想マシン40のスナップショットについての上記問題が解消される。
図3は,本実施の形態によるスナップショット管理機能部の機能構成の例を示す図である。
スナップショット管理機能部300は,取得部310,マージ部320,置換部330,設定情報記憶部340を備える。
取得部310は,仮想マシン40のスナップショットの取得を行う。本実施の形態では,取得部310は,所定の時間間隔で自動的にスナップショットの取得を行うものとする。すなわち,本実施の形態では,取得部310は,所定の時間間隔で仮想ディスク領域130にスナップショットファイル132を自動生成する。
マージ部320は,複数のスナップショットファイル132をマージしたマージファイルを生成する。マージファイルは,複数世代にわたるスナップショットファイル132に記録された更新の差分情報を統合したスナップショットファイル132となる。より具体的には,マージ部320は,仮想ディスク領域130に記憶される,所定の連続する世代のスナップショットファイル132をコピーする。マージ部320は,スナップショットファイル132のコピーファイルをマージして,マージファイルを生成する。マージ部320は,これらの処理を,取得部310によるスナップショットの取得の処理とは別のプロセスで実行する。なお,マージ部320は,スナップショットファイル132を直接にマージするのではなく,コピーファイルのマージを行うので,マージのために仮想マシン40の運用を停止する必要はない。
なお,本実施の形態では,マージ部320は,仮想ディスク領域130に記憶されるスナップショットファイル132の世代数を監視する。マージ部320は,仮想ディスク領域130に記憶されるスナップショットファイル132の世代数が,所定の世代数以上となったことが確認されたときに,上述のマージファイルを生成する処理を実行する。
置換部330は,マージ部320によってマージファイルが生成された際に,仮想ディスク領域130に記憶される所定の連続する世代のスナップショットファイル132を,生成されたマージファイルに置き換える処理を行う。
なお,仮想ディスク領域130において,スナップショットファイル132をマージファイルに置き換える処理を行う瞬間だけ,仮想マシン40による仮想ディスク41へのアクセスを停止する。スナップショットファイル132をマージファイルに置き換える処理は,瞬間的な処理となるので,仮想マシン40の運用に及ぼす影響は微少である。
設定情報記憶部340は,各種設定情報を記憶する記憶部である。設定情報記憶部340に記憶される設定情報としては,例えば,スナップショットの取得を行う時間間隔や,マージを開始するスナップショットファイル132の世代数,マージの対象となるスナップショットファイル132の世代などの指定情報がある。スナップショット管理機能部300は,例えば,設定情報記憶部340に記憶された各種設定情報の指定に基づいて,処理を実行する。
図4は,本実施の形態による設定データの例を示す図である。
図4に示す設定データ345は,設定情報記憶部340に記憶される設定情報の一例である。図4に示す設定データ345において,スナップショット取得間隔は,取得部310によって,スナップショットの取得を自動で行う時間間隔の指定情報である。マージ開始世代数は,マージ部320が,マージを開始すると判定する,仮想ディスク領域130に記憶されるスナップショットファイル132の世代数の指定情報である。マージ対象世代は,マージ部320がマージの対象とする,また置換部330が置き換えの対象とする,仮想ディスク領域130に記憶されるスナップショットファイル132の世代の指定情報である。これらの情報については,任意の値の設定が可能である。
以下,本実施の形態のスナップショット管理機能部300による処理について,より具体的な例を用いて説明する。
スナップショット管理機能部300において,取得部310は,所定の時間間隔,例えば60秒間隔で,スナップショットの取得を行う。取得部310による処理は,例えば,ホストOS30が提供するスナップショット取得関数により行われる。なお,スナップショットの取得の時間間隔を,データ量に応じて増減することで,データ量に応じたマージ時間の増減に対応できる。仮想ディスク領域130には,スナップショットの取得が行われるたびに,新たなスナップショットファイル132が生成される。
図5は,本実施の形態によるスナップショットファイルの例を示す図である。
図5に示すスナップショットファイル132aは,図2に示す例における第1世代のスナップショットファイル132aの例である。図5に示すスナップショットファイル132を例に,本実施の形態によるスナップショットファイル132の構成の一例を説明する。図5に示すように,本実施の形態によるスナップショットファイル132は,ヘッダ,データ領域,フッタを有する。
本実施の形態によるスナップショットファイル132のヘッダには,当該スナップショットファイル132の親ファイル,すなわち当該スナップショットファイル132の1つ前の世代の仮想ディスクファイル131またはスナップショットファイル132に関する情報が記録される。図5に示すスナップショットファイル132aは,第1世代のスナップショットファイル132であるので,ヘッダには,仮想ディスクファイル131に関する情報が記録される。第2世代以降のスナップショットファイル132のヘッダには,1つ前の世代のスナップショットファイル132に関する情報が記録される。
図5に示すように,本実施の形態のスナップショットファイル132のヘッダには,親ファイルID,親タイムスタンプ,親ファイル名,親格納位置の情報が記録される。親ファイルIDは,親ファイルをユニークに識別する識別情報である。親タイムスタンプは,親ファイルが生成された時刻または最後に更新された時刻を示す。親ファイル名は,親ファイルのファイル名である。親格納位置は,親ファイルが格納される場所を示す。
データ領域には,仮想ディスクファイル131に対する更新の差分情報が記録される。例えば,最新のスナップショットファイル132であれば,データ領域には,直前のスナップショットの取得時から現在までに,仮想ディスク41に対して行われた更新の差分情報が記録される。また,例えば,中間世代のスナップショットファイル132であれば,データ領域には,そのスナップショットファイルが生成された時点から,次のスナップショットファイルが生成された時点までに,仮想ディスク41に対して行われた更新の差分情報が記録される。
本実施の形態によるスナップショットファイル132のフッタには,当該スナップショットファイル132自身に関する情報が記録される。図5に示すように,本実施の形態のスナップショットファイル132のフッタには,自ファイルID,自タイムスタンプの情報が記録される。自ファイルIDは,自身のスナップショットファイル132をユニークに識別する識別情報である。自タイムスタンプは,自身のスナップショットファイル132が生成された時刻または最後に更新された時刻を示す。
図6,図7は,本実施の形態のマージ部による処理の例を説明する図である。
スナップショット管理機能部300において,マージ部320は,仮想ディスク領域130に記憶されるスナップショットファイル132の世代数が,所定の世代数,例えば20世代以上となったことを確認し,マージ処理を開始する。
図6に示すように,仮想ディスク領域130において,スナップショットファイル132の世代数が,スナップショットファイル132aからスナップショットファイル132tまでで,20世代になったものとする。このとき,マージ部320は,仮想ディスク領域130のスナップショットファイル132において,所定世代,例えば1〜10世代のスナップショットファイル132a〜jをコピーし,コピーファイル133a〜jを生成する。
なお,図6において,各スナップショットファイル132a〜t,各コピーファイル133a〜jを表すブロックの中の文字列は,各ファイルのファイル名を示す。図6に示す例では,各コピーファイル133a〜jのファイル名が,それぞれ元の各スナップショットファイル132a〜jのファイル名の文字列の先頭に“コピー”の文字列を付けたものとなっている。
マージ部320は,生成したコピーファイル133a〜jをマージし,マージファイル134を生成する。コピーファイル133も実体はスナップショットファイル132であるので,コピーファイル133a〜jのマージには,例えば既存のマージ機能を用いることができる。例えば上記のHyper−Vでも,スナップショットファイルのマージ機能は提供されている。
コピーファイル133のマージでは,新しいスナップショットファイル132のコピーファイル133から順に古い方へ遡る形で,マージが行われる。ここでは,図7(A)に示すように,最も新しいスナップショットファイル132jのコピーファイル133jと,次に新しいスナップショットファイル132iのコピーファイル133iとが,最初のマージ対象となる。
図7(A)に示すように,コピーファイル133iとコピーファイル133jとのマージで生成される中間マージファイルにおいて,ヘッダには,古い方のスナップショットファイル132iのコピーファイル133iのヘッダの情報が記録される。データ領域のデータは,各コピーファイル133のデータ領域のデータを所定の手順でマージしたものとなる。例えば,図7(A)に示す中間マージファイルのデータ領域のデータは,スナップショットファイル132iの生成時から,スナップショットファイル132jの次のスナップショットファイル132kの生成時までの仮想ディスク41に対する更新の差分情報となる。図7(A)に示す中間マージファイルのファイル名としては,新しい方のスナップショットファイル132jのコピーファイル133jのファイル名が与えられる。なお,中間マージファイルのフッタの自タイムスタンプには,ホストOS30によって,自動で該中間マージファイルが生成された時刻の情報が記録される。
次の処理では,図7(A)に示す中間マージファイルと,次に古いスナップショットファイル132hのコピーファイル133hに対して,図7(A)で説明した処理と同様の処理が行われる。このような手順で処理が進められ,最後のコピーファイル133aに対するマージの処理が完了した時点で,図7(B)に示す最終的なマージファイル134が生成される。
図7(B)に示すマージファイル134において,ヘッダは,マージ対象の中で最も古いスナップショットファイル132aのヘッダと同じとなる。すなわち,図7(B)に示すマージファイル134のヘッダの情報は,仮想ディスクファイル131の情報となる。図7(B)に示すマージファイル134のファイル名は,マージ対象の中で最も新しいスナップショットファイル132jのコピーファイル133jのファイル名となる。また,図7(B)に示すマージファイル134のフッタにおいて,自タイムスタンプは,マージファイル134が生成された時刻の情報となる。
図8,図9は,本実施の形態の置換部による処理の例を説明する図である。
例えば,置換部330による処理は,ホストOS30が提供するスナップショット取得関数に対する割り込みで,スナップショット取得関数の延長で実行することができる。例えば,スナップショット取得関数のエントリポイントを書き換えて,本実施の形態による置換部330を実現するプログラムの処理をコールするようにする。
置換部330は,図8(A)に示すように,仮想ディスク領域130において,マージ部320で生成されたマージファイル134と,そのマージファイル134の元となった1〜10世代のスナップショットファイル132a〜jとを置き換える。より具体的には,置換部330は,仮想ディスク領域130において,1〜10世代のスナップショットファイル132a〜jを削除する。置換部330は,マージファイル134のファイル名を,置き換え元の最新のスナップショットファイル132jのファイル名に書き換える。図8(A)に示す例では,マージファイル134のファイル名から“コピー”の文字列を取り除く。これにより,仮想ディスク領域130の状況は,図8(B)に示す通りとなる。
ただし,置き換え元のスナップショットファイルa〜jと,マージファイル134とを置き換えただけでは,マージファイル134の自タイムスタンプと,スナップショットファイル132k〜tのヘッダの親タイムスタンプとの整合がとれなくなる。置換部330は,マージ対象外であったスナップショットファイル132k〜tのヘッダの情報を修正する。
例えば,置換部330は,図9に示すように,まず,マージファイル134のフッタにおける自タイムスタンプの値で,スナップショットファイル132kのヘッダにおける親タイムスタンプの値を修正する。この時点でスナップショットファイル132kが更新されるため,ホストOS30によって,スナップショットファイル132kのフッタにおける自タイムスタンプの値が更新される。置換部330は,図9に示すように,更新されたスナップショットファイル132kのフッタにおける自タイムスタンプの値で,スナップショットファイル132lのヘッダにおける親タイムスタンプの値を修正する。このような処理を,置換部330は,最後の世代のスナップショットファイル132tまで繰り返す。
図10は,本実施の形態のマージ部による処理のフローチャートである。
マージ部320は,仮想ディスク領域130に記憶されるスナップショットファイル132の世代数を監視する(ステップS10)。
仮想ディスク領域130に記憶されるスナップショットファイル132の世代数が所定の世代数以上となった場合(ステップS11のYES),マージ部320は,仮想ディスク領域130に記憶される所定の連続する世代のスナップショットファイル132をコピーする(ステップS12)。マージ部320は,得られたコピーファイル133をマージする(ステップS13)。マージファイル134が得られる。マージ部320は,取得部310によるスナップショットの取得処理への割り込みを実行し(ステップS14),ステップS10の処理に戻って,仮想ディスク領域130の監視を続ける。
図11は,本実施の形態の取得部および置換部による処理のフローチャートである。
取得部310は,時間の経過を監視し,所定時間の経過後に(ステップS20のYES),マージ部320からの割り込みがあるかを判定する(ステップS21)。
割り込みがなければ(ステップS21のNO),取得部310は,スナップショットを取得し(ステップS22),ステップS20の処理に戻って,所定時間が経過するのを待つ。
割り込みがあれば(ステップS21のYES),置換部330は,仮想ディスク領域130に記憶される所定の連続する世代のスナップショットファイル132を削除する(ステップS23)。置換部330は,マージファイル134のファイル名を,削除した最新のスナップショットファイル132のファイル名に書き換える(ステップS24)。置換部330は,所定の連続する世代より後の世代のスナップショットファイル132のヘッダを書き換え(ステップS25),割り込みの処理を終了する(ステップS26)。取得部310は,スナップショットを取得し(ステップS22),ステップS20の処理に戻って,所定時間が経過するのを待つ。
以上説明したように,本実施の形態によるスナップショット管理機能部300によって,仮想マシン40をシャットダウンせずに,スナップショットファイル132のマージを実行することができる。スナップショットファイル132へのアクセスを停止する時間も,ファイルの置き換えを行う一瞬だけであるので,仮想マシン40による業務への影響はほとんどない。
また,本実施の形態によるスナップショット管理機能部300では,スナップショットファイル132の世代数が多くなったときに自動でマージが行われるので,スナップショットファイルの世代が多くなることによる弊害を抑止することができる。
また,本実施の形態によるスナップショット管理機能部300によって,スナップショットの取得を一定時間間隔で実行できるようになるので,スナップショット機能を,障害時の原因調査に利用できるようになる。例えば,障害が発生したときに,原因調査のために障害発生時の直前の状態にロールバックし,メモリやアプリケーションの状態を完全に再現することができ,原因調査を迅速に行うことができる。
以上,本実施の形態について説明したが,本発明はその主旨の範囲において種々の変形が可能であることは当然である。
例えば,本実施の形態では,スナップショットの取得を自動で行う例について説明したが,本実施の形態の技術は,スナップショットの取得を自動化しない場合にも適用可能である。例えば,本実施の形態の技術を,ユーザがスナップショットの取得を手動で指示することで蓄積されたスナップショットファイル132のマージに適用することも可能である。
また,例えば,本実施の形態では,マージ処理開始の判断を,仮想ディスク領域130の常時監視で行っているが,スナップショットの取得が行われたタイミングで仮想ディスク領域130をチェックし,マージ処理開始の判断を行うようにしてもよい。
また,例えば,本実施の形態では,スナップショットファイル132の世代数が所定の世代数となったタイミングでマージ処理を開始しているが,ユーザがユーザインタフェースにより開始を指示したタイミングで,マージ処理を開始するようにしてもよい。
また,例えば,本実施の形態では,あらかじめ設定された連続する世代のスナップショットファイル132をマージの対象としているが,マージ処理の開始時にユーザがユーザインタフェースにより指示した連続する世代のスナップショットファイル132をマージの対象とするようにしてもよい。
1 仮想マシンシステム
10 ハードウェア
11 CPU
12 メモリ
13 記憶装置
130 仮想ディスク領域
131 仮想ディスクファイル
132 スナップショットファイル
133 コピーファイル
134 マージファイル
20 ハイパーバイザ
30 ホストOS
300 スナップショット管理機能部
310 取得部
320 マージ部
330 置換部
340 設定情報記憶部
40 仮想マシン
41 仮想ディスク

Claims (5)

  1. コンピュータが,
    仮想ディスクファイルに対する更新の差分情報である差分ファイルを記憶する記憶部に記憶される所定の連続する世代の差分ファイルをコピーし,
    前記コピーした差分ファイルをマージし,
    前記記憶部に記憶される前記所定の連続する世代の差分ファイルを,前記マージされた差分ファイルに置き換える処理を実行する
    ことを特徴とする管理方法。
  2. 前記コンピュータが,さらに,前記記憶部に記憶される差分ファイルの世代数を監視する処理を実行し,
    前記コンピュータは,前記記憶部に記憶される差分ファイルの世代数が所定の世代数以上である場合に,前記コピーする処理,前記マージする処理および前記置き換える処理を実行する
    ことを特徴とする請求項1に記載の管理方法。
  3. 前記コンピュータが,さらに,所定の時間間隔で差分ファイルを自動的に生成する処理を実行する
    ことを特徴とする請求項2に記載の管理方法。
  4. 仮想ディスクファイルに対する更新の差分情報である差分ファイルを記憶する記憶部に記憶される所定の連続する世代の差分ファイルをコピーし,該コピーした差分ファイルをマージするマージ部と,
    前記記憶部に記憶される前記所定の連続する世代の差分ファイルを,前記マージされた差分ファイルに置き換える置換部とを備える
    ことを特徴とする管理装置。
  5. コンピュータに,
    仮想ディスクファイルに対する更新の差分情報である差分ファイルを記憶する記憶部に記憶される所定の連続する世代の差分ファイルをコピーし,
    前記コピーした差分ファイルをマージし,
    前記記憶部に記憶される前記所定の連続する世代の差分ファイルを,前記マージされた差分ファイルに置き換える
    処理を実行させるための管理プログラム。
JP2012144033A 2012-06-27 2012-06-27 管理方法,管理装置および管理プログラム Pending JP2014006845A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012144033A JP2014006845A (ja) 2012-06-27 2012-06-27 管理方法,管理装置および管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012144033A JP2014006845A (ja) 2012-06-27 2012-06-27 管理方法,管理装置および管理プログラム

Publications (1)

Publication Number Publication Date
JP2014006845A true JP2014006845A (ja) 2014-01-16

Family

ID=50104474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012144033A Pending JP2014006845A (ja) 2012-06-27 2012-06-27 管理方法,管理装置および管理プログラム

Country Status (1)

Country Link
JP (1) JP2014006845A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335253A (zh) * 2015-10-28 2016-02-17 北京百度网讯科技有限公司 创建虚拟机系统盘快照的方法和装置
JP2020115267A (ja) * 2019-01-17 2020-07-30 Necソリューションイノベータ株式会社 仮想マシン管理装置、仮想マシン管理方法、及びプログラム
JP2023001471A (ja) * 2021-06-21 2023-01-06 株式会社日立製作所 ストレージシステム、計算機システム及び制御方法
US12034892B2 (en) 2019-12-26 2024-07-09 Fujifilm Corporation Display control device, information apparatus, and non-transitory recording medium storing display control program causing a display unit to display a selected higher layer setting item, display a selected next layer setting item below the selected higher layer setting item, and not display un-selected setting items

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784728A (ja) * 1993-09-20 1995-03-31 Fujitsu Ltd データ処理システムのバックアップ制御装置及び方法
JP2010079526A (ja) * 2008-09-25 2010-04-08 Hitachi Ltd ジャーナルの階層を管理する計算機システム及び方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0784728A (ja) * 1993-09-20 1995-03-31 Fujitsu Ltd データ処理システムのバックアップ制御装置及び方法
JP2010079526A (ja) * 2008-09-25 2010-04-08 Hitachi Ltd ジャーナルの階層を管理する計算機システム及び方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016002998; 木村 将: 'オンラインストレージと仮想マシンを利用した広域分散バックアップシステム' 情報処理学会研究報告 第2009巻,第6号, 20090121, pp.51-58, 社団法人情報処理学会 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335253A (zh) * 2015-10-28 2016-02-17 北京百度网讯科技有限公司 创建虚拟机系统盘快照的方法和装置
JP2017084332A (ja) * 2015-10-28 2017-05-18 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド 仮想マシンシステムディスクのスナップショットの作成方法および装置
KR101802920B1 (ko) * 2015-10-28 2017-11-29 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 가상 머신 시스템 디스크 스냅 샷의 생성 방법 및 장치
CN105335253B (zh) * 2015-10-28 2019-01-15 北京百度网讯科技有限公司 创建虚拟机系统盘快照的方法和装置
US11741046B2 (en) 2015-10-28 2023-08-29 Beijing Baidu Netcom Science And Technology Co., Ltd. Method and apparatus for creating system disk snapshot of virtual machine
JP2020115267A (ja) * 2019-01-17 2020-07-30 Necソリューションイノベータ株式会社 仮想マシン管理装置、仮想マシン管理方法、及びプログラム
US12034892B2 (en) 2019-12-26 2024-07-09 Fujifilm Corporation Display control device, information apparatus, and non-transitory recording medium storing display control program causing a display unit to display a selected higher layer setting item, display a selected next layer setting item below the selected higher layer setting item, and not display un-selected setting items
JP2023001471A (ja) * 2021-06-21 2023-01-06 株式会社日立製作所 ストレージシステム、計算機システム及び制御方法
JP7530872B2 (ja) 2021-06-21 2024-08-08 株式会社日立製作所 ストレージシステム、計算機システム及び制御方法

Similar Documents

Publication Publication Date Title
US10140115B2 (en) Applying update to snapshots of virtual machine
US10379967B2 (en) Live rollback for a computing environment
US10146629B1 (en) Extensible workflow manager for backing up and recovering microsoft shadow copy compatible applications
JP5337916B1 (ja) 情報処理システム
JP4321705B2 (ja) スナップショットの取得を制御するための装置及び記憶システム
US10838912B1 (en) Intelligent selection of backup levels
US9405630B2 (en) Methods and apparatus to perform site recovery of a virtual data center
KR20110086732A (ko) 어플리케이션 복구 포인트들
JP2010522400A (ja) 自己管理型処理装置
JP2010257096A (ja) ストレージシステムにおけるバックアップ方法
JP2010086516A (ja) 仮想化環境において生じる障害の解析方法、管理サーバ、及びプログラム
JP2014142678A (ja) 仮想サーバ移行計画作成方法およびシステム
RU2646309C1 (ru) Способ резервного копирования
US7228526B2 (en) Application imaging infrastructure
JP2014006845A (ja) 管理方法,管理装置および管理プログラム
JP2007058699A (ja) 情報処理装置、情報処理装置制御プログラム、情報処理装置制御方法
US10860442B2 (en) Systems, methods and computer readable media for business continuity and disaster recovery (BCDR)
US11836046B1 (en) Tagging writers for incremental backups of system objects
US20220197752A1 (en) Copy reuse using gold images
US20110131181A1 (en) Information processing device and computer readable storage medium storing program
JP6160688B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
WO2016120989A1 (ja) 管理計算機及びルールの試験方法
US10698790B1 (en) Proactive debugging
Le et al. Shadow patching: Minimizing maintenance windows in a virtualized enterprise environment
JP5970984B2 (ja) 復元プログラムおよび復元装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160202

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160802