(57)【要約】【課題】  仮想化環境において仮想マシンがウィルスに感染した場合の迅速かつ安全な復元手段を提供する。【解決手段】  復元装置は、仮想マシンの仮想ディスクを格納する仮想ディスク記憶手段の更新情報から、スナップショットを取得して管理情報記憶手段に格納する取得手段と、スナップショットの取得後、更新されたウィルスチェックファイルを管理情報記憶手段に格納する更新手段と、スナップショットに基づいて復元された仮想ディスクの内容のウィルスチェックを、更新されたウィルスチェックファイルを用いて実行するチェック手段と、仮想マシンの感染を検出すると、ウィルスチェックで感染が無いと判断されたスナップショットに基づいて復元された仮想ディスクの内容を、仮想ディスク記憶手段に格納する復元手段と、を備える。【選択図】      図１
2015153298.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンの仮想ディスクを格納する仮想ディスク記憶手段の更新情報から、スナップショットを取得して管理情報記憶手段に格納する取得手段と、
前記スナップショットの取得後、更新されたウィルスチェックファイルを前記管理情報記憶手段に格納する更新手段と、
前記スナップショットに基づいて復元された前記仮想ディスクの内容のウィルスチェックを、更新された前記ウィルスチェックファイルを用いて実行するチェック手段と、
前記仮想マシンの感染を検出すると、前記ウィルスチェックで感染が無いと判断された前記スナップショットに基づいて復元された前記仮想ディスクの内容を、前記仮想ディスク記憶手段に格納する復元手段と、を備える、復元装置。
【請求項２】
前記仮想マシンの構成変更を検出すると、チェックポイントを作成して記憶するポイント設定手段を、さらに備え、
前記取得手段は、前記スナップショットを、時間間隔をおいて複数回取得し、
前記復元手段は、前記チェックポイント作成以降に作成された、前記スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項１の復元装置。
【請求項３】
前記チェック手段は、前記ウィルスチェックファイルの更新を検出すると、前記管理情報記憶手段に格納されている前記スナップショットに基づいて復元された前記仮想ディスク内容のウィルスチェックを実行し、
前記復元手段は、前記仮想マシンの感染を検出すると、前記ウィルスチェック済みの前記スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項２の復元装置。
【請求項４】
前記チェック手段は、前記復元手段が特定した、前記スナップショットに基づいて復元された前記仮想ディスク内容のウィルスチェックを実行し、
前記復元手段は、前記仮想マシンの感染を検出すると、最も新しい前記スナップショットを特定して前記チェック手段に前記ウィルスチェックを実行させ、前記ウィルスチェックで感染が無いと判断されると、特定した前記スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項２の復元装置。
【請求項５】
前記仮想ディスク記憶手段を備えて、前記仮想マシンを実行するサーバ装置と、
前記管理情報記憶手段と、
請求項１乃至４の何れかの記載された復元装置と、を包含する復元システム。
【請求項６】
仮想マシンの仮想ディスクを格納する仮想ディスク記憶手段の更新情報から、スナップショットを取得して記憶し、
前記スナップショットの取得後、更新されたウィルスチェックファイルを記憶し、
前記スナップショットに基づいて復元された前記仮想ディスクの内容のウィルスチェックを、更新された前記ウィルスチェックファイルを用いて実行し、
前記仮想マシンの感染を検出すると、前記ウィルスチェックで感染が無いと判断された前記スナップショットに基づいて復元された前記仮想ディスクの内容を、前記仮想ディスク記憶手段に格納する、復元方法。
【請求項７】
前記仮想マシンの構成変更を検出すると、チェックポイントを作成して記憶し、
前記スナップショットを、時間間隔をおいて複数回取得し、
前記チェックポイント作成以降に作成された、前記スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項６の復元方法。
【請求項８】
前記ウィルスチェックファイルの更新を検出すると、記憶されている前記スナップショットに基づいて復元された前記仮想ディスク内容のウィルスチェックを実行し、
前記仮想マシンの感染を検出すると、前記ウィルスチェック済みの前記スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項７の復元方法。
【請求項９】
前記仮想マシンの感染を検出すると、最も新しい前記スナップショットに基づいて復元された前記仮想ディスク内容のウィルスチェックを実行し、感染が無いと判断されると、当該スナップショットに基づいて復元された前記仮想ディスクの内容を前記仮想ディスク記憶手段に格納する、請求項７の復元方法。
【請求項１０】
コンピュータに、請求項６乃至９の何れかの復元方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシンの復元装置、復元システム、復元方法、および、プログラム、特に、ウィルスに感染した仮想マシンの復元に関する。
【背景技術】
【０００２】
仮想化環境においては、１台の物理サーバ上に複数の仮想サーバが稼働している。この環境では、複数の仮想サーバが、物理サーバのＮＩＣ（Network Interface Card）やメモリなどを共用している。このため、１台の仮想サーバがウィルスに感染した場合、物理サーバの環境と比較すると、他の仮想サーバへ感染する可能性は高まる。
【０００３】
また、クラウド環境やシンクライアント環境においては、１台の物理サーバ上に、異なる複数のユーザが管理している仮想サーバや仮想化されたＰＣ（Personal Computer）が存在する。このため、このような仮想環境で仮想サーバがウィルスに感染した時には、他の仮想サーバや仮想化されたＰＣには影響を与える可能性が高まる。
【０００４】
したがって、仮想化環境において、ある仮想サーバがウィルスに感染した場合は、短時間かつ安全に復元作業を完了できる事が望ましい。この問題に関連して、以下の技術が開示されている。
【０００５】
特許文献１は、差分バックアップを行う場合に検出される更新ブロックに基づいて更新ファイルを特定し、更新されたファイルについてのみ、ウィルススキャンを行う記憶制御装置を開示する。
【０００６】
特許文献２は、ホストＯＳ（Operating System）がゲストＯＳに割り当てられたＣＰＵ（Central Processing Unit）とメモリの内容をスナップショットとして作成する仮想計算機システムを開示する。このシステムは、ゲストＯＳが異常停止した時、スナップショットを用いてゲストＯＳを復元する。
【０００７】
特許文献３は、１台のサーバ上に複数の仮想マシンを作成し、１台の仮想マシンでウィルス対策ソフトウェアを動作させ、他の仮想マシンは、この１台を介してハードウェアにアクセスする方法を開示する。この方法は、ウィルス対策ソフトウェアを各仮想マシンで動作させる必要性を回避させる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００９−１１０２２５号公報
【特許文献２】特開２０１１−６００５５号公報
【特許文献３】特開２０１０−４４６１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上述の文献は、いずれも、ウィルスに感染した仮想サーバを、短時間かつ安全に復元作業する為の技術を開示しない。特許文献１の装置はファイルを復元するものではないうえ、差分データに基づいてファイルを復元したとしても、復元後のファイルについては安全性を確認しない。特許文献２のシステムのスナップショットは、ウィルスに感染したゲストＯＳを復元する物ではないうえ、復元後のゲストＯＳについては安全性を確認しない。本発明は、上記課題を解決する手段を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一実施形態にかかる復元装置は、仮想マシンの仮想ディスクを格納する仮想ディスク記憶手段の更新情報から、スナップショットを取得して管理情報記憶手段に格納する取得手段と、前記スナップショットの取得後、更新されたウィルスチェックファイルを前記管理情報記憶手段に格納する更新手段と、前記スナップショットに基づいて復元された前記仮想ディスクの内容のウィルスチェックを、更新された前記ウィルスチェックファイルを用いて実行するチェック手段と、前記仮想マシンの感染を検出すると、前記ウィルスチェックで感染が無いと判断された前記スナップショットに基づいて復元された前記仮想ディスクの内容を、前記仮想ディスク記憶手段に格納する復元手段と、を備える。
【００１１】
本発明の一実施形態にかかる復元方法は、仮想マシンの仮想ディスクを格納する仮想ディスク記憶手段の更新情報から、スナップショットを取得して記憶し、前記スナップショットの取得後、更新されたウィルスチェックファイルを記憶し、前記スナップショットに基づいて復元された前記仮想ディスクの内容のウィルスチェックを、更新された前記ウィルスチェックファイルを用いて実行し、前記仮想マシンの感染を検出すると、前記ウィルスチェックで感染が無いと判断された前記スナップショットに基づいて復元された前記仮想ディスクの内容を、前記仮想ディスク記憶手段に格納する。
【発明の効果】
【００１２】
本発明は、仮想化環境において仮想マシンがウィルスに感染した場合の迅速かつ安全な復元手段を提供する。
【図面の簡単な説明】
【００１３】
【図１】図１は、第１の実施の形態の復元システム70の構成図である。
【図２】図２は、管理サーバ装置30の仮想マシン情報記憶部31が格納する仮想マシン情報の構成を示す図である。
【図３】図３は、仮想マシン11の作成の動作を示すフローチャートである。
【図４】図４は、仮想マシン11のスナップショット42の取得動作を示すフローチャートである。
【図５】図５は、仮想マシン11のウィルスチェック動作を示すフローチャートである。
【図６】図６は、仮想ディスク14の復元動作を示すフローチャートである。
【図７】図７は、第１の実施の形態の変形例における仮想ディスク14の復元動作を示すフローチャートである。
【図８】図８は、第２の実施の形態の復元装置60の構成図である。
【発明を実施するための形態】
【００１４】
＜第１の実施の形態＞
本発明にかかる管理サーバ装置30は、仮想マシン11がウィルスに感染した場合に早期に自動復元できるように、運用中に仮想マシン11の仮想ディスク14のスナップショット42を採取しておく。ウィルスチェック装置20は、仮想ディスク14のスナップショット42してウィルスチェックを実施しておく。仮想マシン11がウィルスに感染した場合、管理サーバ装置30は、採取したスナップショット42に基づいて仮想ディスク14のデータを復元する事で、早期に仮想マシン11を復元させる。
【００１５】
（構成）
図１は、本実施の形態の復元システム70の構成図である。復元システム70は、仮想化基盤として使用される物理サーバ装置10、ウィルスチェック装置20、管理サーバ装置30と仮想マシン11のデータを保存しておく管理情報記憶部40を包含する。
【００１６】
物理サーバ装置10は、仮仮想ディスク記憶部17と物理ＮＩＣ16を備えたコンピュータであり、そのプロセッサ（図示されない）によりＶＭＭ15(Virtual Machine Monitor)を実行し、１以上の仮想マシン11を実現する。仮想ディスク記憶部17は、例えば、物理的なディスク装置である。
【００１７】
仮想マシン11は、仮想ＮＩＣ13と仮想ディスク14を備え、その内部でゲストＯＳ（図示されず）やアンチウィルスプログラム12等のソフトウェアを実行する。アンチウィルスプログラム12は、ウィルスチェックを実施するソフトウェアである。ＶＭＭ15は、物理ＮＩＣ16を用いて仮想ＮＩＣ13を実現し、仮想ディスク記憶部17を用いて仮想ディスク14を実現する。
【００１８】
仮想マシン11は通常、仮想ＮＩＣ13、ＶＭＭ15と物理ＮＩＣ16を経由して外部の機器と通信を行う。さらに、仮想マシン11は通常、仮想ディスク14、ＶＭＭ15を経由して仮想ディスク記憶部17に対して入出力を行う。即ち、仮想マシン11が、仮想ディスク14を対象に入出力を行うと、それに対応して、ＶＭＭ15が仮想ディスク記憶部17に対して入出力を行う。
【００１９】
ウィルスチェック装置20はウィルスチェックを行うチェック部22、ウィルスチェック用の最新のエンジンとパターンファイルを取得する更新部21、管理サーバ装置30との通信を行う通信部（図示されず）を備える。
【００２０】
チェック部22は、スナップショット42にアクセスして、ウィルスチェック処理を実施する。チェック部22は、管理サーバ装置30から仮想マシン情報を取得し、ウィルスチェックを実施する対象となるスナップショット42を抽出する。
【００２１】
更新部21は、提供装置50に対して定期的に最新のウィルスチェック用のエンジンとパターンファイルの有無を確認する。提供装置50に最新のエンジンとパターンファイルが存在する場合、更新部21はその取得を行い、管理情報記憶部40のウィルスチェックファイル43に保存し、チェック部22に通知する。
【００２２】
更新部21とチェック部22は、論理回路で構成される。更新部21とチェック部22は、コンピュータであるウィルスチェック装置20のメモリに格納されて、ウィルスチェック装置20のプロセッサで実行されるソフトウェアによって、実現されても良い。
【００２３】
管理サーバ装置30は、ポイント設定部32、取得部33、復元部34、仮想マシン情報記憶部31と管理サーバ装置30、物理サーバ装置10との通信を行う通信部（図示されず）とを備える。取得部33は、ＶＭＭ15と連携して、仮想マシン11の仮想ディスクのマスタイメージ41とスナップショット42を作成する。さらに、取得部33は、仮想マシン情報記憶部31に格納されている仮想マシン情報の管理、更新を行う。
【００２４】
復元部34は、仮想マシン11のウィルス感染が検出されたとき、仮想マシン情報、仮想ディスクのマスタイメージ41とスナップショット42に基づいて、その仮想ディスク14の復元を行う。さらに、復元部34は、仮想マシン11の電源ON/OFF、仮想ＮＩＣ13のリンクダウン/リンクアップなどを行う。ここで仮想ＮＩＣ13のリンクダウン、リンクアップは、物理ＮＩＣ16のリンクダウン、リンクアップに相当する操作を仮想的に行う事を意味する。物理環境におけるこれらの操作は、通常人手で行われる。
【００２５】
復元部34は、仮想ディスク14の復元を次のようにして行う。スナップショット42が、仮想ディスク14の内容全体を含んでいるとき、復元部34は、仮想ディスク14の内容をスナップショット42の内容で置換する。スナップショット42が前の世代との差分データだけを含んでいるとき、復元部34は、仮想ディスクのマスタイメージ41をベースに、復元したい世代の前の世代のスナップショット42を用いて、更新を時系列に重ねていくロールフォワードを行う。
【００２６】
ポイント設定部32は、後述するチェックポイントを作成して、その情報を仮想マシン情報に登録する。
【００２７】
ポイント設定部32、取得部33と復元部34は、論理回路で構成される。ポイント設定部32、取得部33と復元部34は、コンピュータである管理サーバ装置30のメモリに格納されて、管理サーバ装置30のプロセッサで実行されるソフトウェアによって、実現されても良い。仮想マシン情報記憶部31は、ディスク装置等の記憶装置である。
【００２８】
管理情報記憶部40は、仮想マシン11ごとに、仮想ディスクのマスタイメージ41、各世代のスナップショット42、最新のウィルスチェック用のエンジンとパターンファイルの情報（ウィルスチェックファイル43）を格納する。管理情報記憶部40は、ディスク装置等の記憶装置、あるいは、ディスク装置等を備えたファイルサーバ装置である。
【００２９】
なお、ウィルスチェック装置20と管理サーバ装置30は、１台の装置として実装しても良い。その場合、当該装置は復元装置60と呼ばれる。
【００３０】
図２は、管理サーバ装置30の仮想マシン情報記憶部31が格納する仮想マシン情報の構成を示す図である。仮想マシン情報は、各仮想マシン11の、名称、スナップショットリスト、チェックポイントの日時、保存するスナップショット42の世代数、エンジンとパターンファイルの最新バージョン番号とウィルスチェック状態を包含する。ここで、バージョン番号は、チェック部22がスナップショット42のチェックに用いたエンジンとパターンファイルのバージョン番号である。
【００３１】
スナップショットリストは、取得されているスナップショット42対応に、取得日時を記憶している。ウィルスチェック状態は、取得されているスナップショット42対応に、最新バージョンのエンジンとパターンファイルを用いたウィルスチェックが完了しているかどうかを記憶している。
【００３２】
チェックポイントについて説明する。仮想マシン11がウィルスに感染した場合、復元部34は、過去に採取したスナップショット42に基づいて、仮想ディスク14の内容を復元する。しかし、過去に採取したスナップショット42が、既にウィルスに感染している可能性がある。このような場合は、復元部34は、スナップショット42の採取日時が新しいものから順に使用して復元していき、安全が確認されるスナップショット42が見つかるまで過去のスナップショット42に遡る。
【００３３】
しかし、古い日時に採取したスナップショット42が、例えば、セキュリティパッチを適用する前のスナップショット42である場合が有る。その場合、復元部34が、その古いスナップショット42まで遡って復元してしまうと、セキュリティ被害を拡大させる危険性がある。
【００３４】
このような事態の発生を防止する為、本実施形態の管理サーバ装置30のポイント設定部32は、どの時点で採取されたスナップショット42までなら遡って良いかを示すために、仮想マシン情報にチェックポイントの日時を記録する。そして、復元部34は、過去に採取したスナップショット42のうち、チェックポイントが設定されている日時以前に取得されたスナップショット42にまでは遡らないようにする。
【００３５】
本実施形態の管理サーバ装置30は、仮想マシン11がウィルスに感染した場合に、仮想ディスク14のデータを、過去に採取したスナップショット42で置換等する。このため、ログやデータが、スナップショット42の採取時の状態に戻ってしまい、ログやデータに関して不整合が発生する場合がある。そのため、本実施の形態の管理サーバ装置30を適用する場合、ログやデータ部分については仮想マシン11とは別領域に格納することが望ましい。なお、システム部分とデータ部分を分離して運用する技術は、システム部分を共有して仮想マシン11を起動(ブート)するような構成で利用されている。
【００３６】
（動作）
本実施の形態の復元システム70の動作は、図３に示す仮想マシン11の作成、図４に示す仮想マシン11のスナップショット42の作成、図５に示す仮想マシン11のウィルスチェック、および、図６に示す仮想マシン11がウィルス感染した場合の復元に分けられる。
【００３７】
図３は、仮想マシン11の作成の動作を示すフローチャートである。仮想ディスクのマスタイメージ41が存在しない場合、物理サーバ装置10の管理者から管理サーバ装置30の取得部33に対して仮想マシン11の作成が指示される(F11)。
【００３８】
管理サーバ装置30の取得部33は、仮想マシン11の仮想ディスクのマスタイメージ41を作成する(F12)。その時、取得部33は、仮想マシン11を初期設定し、当該仮想マシン11の情報を仮想マシン情報に記録する（F13）。ここで、初期設定は、例えば、仮想ディスクのマスタイメージ41をベースにした仮想マシン11の作成、仮想ハードウェアの設定やセキュリティ設定、および、全ての仮想マシン11で利用されるアプリケーションのインストールである。その後、取得部33は、例えば、仮想マシン11の管理者に対し、仮想マシン11の作成完了を通知する。
【００３９】
仮想マシン11の管理者は、管理サーバ装置30から仮想マシン11の情報を受取り後、仮想マシン11の運用を開始する(F14)。この時点では仮想マシン11は初期状態である。仮想マシン11の管理者は、仮想マシン11の構成を変更(例えば、仮想ハードウェアの設定変更、独自のアプリケーションのインストール、セキュリティパッチ適用)を、ＶＭＭ15またはゲストＯＳに指示する(F15)。
【００４０】
ＶＭＭ15またはゲストＯＳからの通知により構成変更を検出した時、取得部33は、仮想マシン11のスナップショット42を作成し、スナップショット42の情報を仮想マシン情報のスナップショットリストに登録する(F16)。
【００４１】
この時、当該構成変更が、例えばセキュリティパッチの適用であって、以前に取得したスナップショット42による復元が適切でなく、チェックポイントの更新が必要と判断した時（Ｆ17でYes）、取得部33は、仮想マシン情報にチェックポイントを設定する（F18）。具体的には、取得部33は、最後に作成したスナップショット42の作成日時をチェックポイントの日時として登録する。
【００４２】
チェックポイントの設定後、または、設定しない場合（Ｆ17でNo）、取得部33は、構成変更指示（F15）の待ち合わせに戻る。F15からF18までの一連の流れは、仮想マシン11運用中に、例えば、仮想マシン11の構成を変更など)する度に実施される。
【００４３】
図４は、仮想マシン11のスナップショット42の取得動作を示すフローチャートである。仮想マシン11のスナップショット42は仮想マシン11を運用中、自動的に採取される。
【００４４】
仮想マシン11が起動しているときに、管理サーバ装置30の取得部33が、時間間隔を開けて、例えば、定期的に、仮想マシン11のスナップショット42を作成する(F22)。スナップショット42を作成した場合、取得部33は、スナップショット42の情報を仮想マシン情報のスナップショットリストに追加する(F23)。その後、取得部33は、仮想マシン情報の「保存するスナップショットの世代数」と実際に作成されたスナップショット42の数を比較して(F24)、必要に応じて古いスナップショット42を削除する(F25)。
【００４５】
図５は、仮想マシン11のウィルスチェック動作を示すフローチャートである。ウィルスチェック装置20のチェック部22は、仮想マシン11のスナップショット42に対してウィルスチェックを行う。
【００４６】
まず、更新部21は、提供装置50から最新のウィルスチェック用のエンジン、パターンファイルを取得した場合、管理情報記憶部40のウィルスチェックファイル43に格納し、チェック部22に通知する(F31)。チェック部22は、仮想マシン11のスナップショット42に対してウィルスチェックを行う。このため、チェック部22は、スナップショットリスト、チェックポイントの日時、ウィルスチェック状態といった仮想マシン情報を、管理サーバ装置30に要求する(F32)。
【００４７】
管理サーバ装置30から仮想マシン情報を受け取った後(F33)、チェック部22はスナップショット42の中で最新のエンジン、パターンファイルでのウィルスチェックが未実施であるスナップショット42の中から日時が最新のスナップショット42を抽出する(F34)。スナップショット42が抽出できた場合(F35でYes)、チェック部22は、抽出したスナップショット42がチェックポイントより新しい日時かを確認し(F36でYes)、当該スナップショット42に対してウィルスチェックを実施する(F37)。
【００４８】
ウィルスチェックが正常に完了した後、チェック部22は、管理サーバ装置30に通知を行い管理サーバ装置30の取得部33が、仮想マシン情報のウィルスチェック状態を更新する(F38)。Ｆ37のウィルスチェックで感染を検出した場合、チェック部22は、一世代前のスナップショット42を対象にウィルスチェックを行う（Ｆ35乃至Ｆ37）。
【００４９】
全てのスナップショット42が、ウィルスチェック実施済みである場合など、仮想マシン情報からウィルスチェックの対象となるスナップショット42が抽出できない場合（F35でNo）、チェック部22はウィルスチェック処理を終了する(F39)。また、抽出したスナップショット42がチェックポイントの日時と同じまたはそれより古い場合（F36でNo）も、チェック部22はウィルスチェック処理を終了する(F39)。
【００５０】
図６は、仮想ディスク14の復元動作を示すフローチャートである。仮想マシン11の運用中にウィルスに感染した場合、復元部34は仮想ディスク14の復元処理を行う。
【００５１】
先ず、仮想マシン11上で動作しているアンチウィルスプログラム12が、当該仮想マシン11のウィルス感染を検知する(F401)と、ウィルス感染情報を管理サーバ装置30の復元部34に通知する。復元部34は、感染した仮想マシン11から仮想ＮＩＣ13をリンクダウンすることをＶＭＭ15に指示する(F403)。ＶＭＭ15が仮想ＮＩＣ13のリンクダウンを実行した(F404)後、復元部34は、仮想ディスク14を最新のスナップショット42を用いて復元する(F405)。なお、仮想ディスク14の復元は、物理的には、ＶＭＭ15を介して仮想ディスク記憶部17に行われる。
【００５２】
ここで、復元部34は、復元した仮想ディスク14のスナップショット42が最新のエンジン、パターンファイルを利用してウィルスチェック済みかを確認する(F406)。チェック済みであれば（Ｆ406でYes）、復元部34は、仮想マシン11へ仮想ＮＩＣ13をリンクアップするようにＶＭＭ15に指示する(F411)。これを受けて、ＶＭＭ15は、仮想ＮＩＣ13をリンクアップし(F412)、仮想マシン11の運用を再開し、復元部34に通知する(F413)。復元部34は、ウィルス感染と復元の事実を、例えば、仮想マシン管理者に通知する(F414)。
【００５３】
F406にてウィルスチェックが未実施の場合（F406でNo）、復元部34は、ウィルスチェック装置20のチェック部22にウィルスチェックを依頼し、チェック部22は、最新のエンジン、パターンファイルを利用して仮想マシン11のウィルスチェックを行う（F407）。ウィルスチェックの結果、チェック部22がウィルス感染を確認しない場合（F408でNo）は、F411、F412、F413、F414の順に処理を行い、仮想マシン11の運用を再開する。
【００５４】
チェック部22がウィルス感染を確認した場合（F408でYes）、管理サーバ装置30の復元部34は、１世代前のスナップショット42を用いて復元することを検討する。具体的には、復元部34は、1世代前のスナップショット42の採取日時が、チェックポイントの日時より新しい日時であれば(F409でYes)、1世代前のスナップショット42に基づいて復元する(F410)。その後、復元部34は、スナップショット42がウィルスチェック済かの確認を行う(F406)。1世代前のスナップショット42の取得日時が、チェックポイントの日時と同じまたは古い日時の場合は（F409でNo）、復元に使用できるスナップショット42が無い。このため、復元部34は、例えば、仮想マシン管理者にウィルス感染と自動復元できなかった事実を通知する(F414)。
【００５５】
（効果）
第１の効果は、仮想マシン11がウィルス感染してしまった場合に、仮想マシン11を早期にウィルス感染していない状態に復旧できることである。その理由は、仮想マシン11のスナップショット42を事前に取得しておき、ウィルスチェック装置20によってスナップショット42を最新のエンジン、パターンファイルで、予めウィルスチェックしておくからである。このため、仮想マシン11がウィルス感染した場合、管理サーバ装置30の復元部34は、スナップショット42をもとに仮想ディスク14を復元するだけで、ウィルス感染していない状態に復旧できる。
【００５６】
第２の効果は、仮想マシン11をウィルス感染した場合に人手を介さず、自動的に復旧できることである。その理由は、復元部34が、仮想マシン11の仮想ＮＩＣ13のリンクダウンやリンクアップの制御、スナップショット42のウィルスチェック状況確認を実行するからである。これによって、ウィルス感染していないスナップショット42に基づく復旧といった一連のウィルス感染時の復旧作業は、管理サーバ装置30自身の処理と管理サーバ装置30に指示されたウィルスチェック装置20やＶＭＭ15によって実現する。
【００５７】
第３の効果は、復元されたあとの状態が安全なことである。その理由は、スナップショット42が取得された後に、チェック部22が、取得後にアップデートされたウィルスチェックエンジンやパターンファイルを用いてウィルスチェックを行うからである。チェック部22は、スナップショット42の取得時に発見されていなかった、新種のウィルスも検出できる。
【００５８】
＜第１の実施の形態の変形＞
第１の実施の形態では、図６に示す仮想ディスク14の復元において、スナップショット42がウィルスチェック未実施状態であった場合（F406でNo）、ウィルスチェック装置20のチェック部22によってウィルスチェックを実施する(F407)。本変形例では、このウィルスチェックを仮想マシン11上のアンチウィルスプログラム12が実行する。図７は、この変形例における仮想ディスク14の復元動作を示すフローチャートである。
【００５９】
先ず、仮想マシン11上で動作しているアンチウィルスプログラム12が、当該仮想マシン11のウィルス感染を検知する(F501)と、ウィルス感染情報を管理サーバ装置30の復元部34に通知する。復元部34は、感染した仮想マシン11から仮想ＮＩＣ13をリンクダウンすることをＶＭＭ15に指示する(F503)。ＶＭＭ15が仮想ＮＩＣ13のリンクダウンを実行した(F504)後、復元部34は、仮想ディスク14を最新のスナップショット42を用いて復元する(F505)。
【００６０】
ここで、復元部34は、復元した仮想ディスク14のスナップショット42が最新のエンジン、パターンファイルを利用してウィルスチェック済みかを確認する(F506)。チェック済みであれば（F506でYes）、復元部34は、仮想マシン11へ仮想ＮＩＣ13をリンクアップするようにＶＭＭ15に指示する(F512)。これを受けて、ＶＭＭ15は、仮想ＮＩＣ13をリンクアップし(F513)、仮想マシン11の運用を再開し、復元部34に通知する(F514)。復元部34は、ウィルス感染と復元の事実を、例えば、仮想マシン管理者に通知する(F515)。
【００６１】
F506にてウィルスチェックが未実施の場合（F506でNo）、復元部34は、仮想マシン11上のアンチウィルスプログラム12に対してウィルスチェックを依頼する。アンチウィルスプログラム12は、管理情報記憶部40上のウィルスチェックファイル43から最新のエンジンとパターンファイルを取得し(F507)、仮想マシン11上にてウィルスチェックを実施する(F508)。ここで、アンチウィルスプログラム12はウィルス感染の有無を確認し、ウィルスに感染してなければ（(F509でNo）、F513,F514、F515の順に処理を行い、仮想マシン11の運用を再開する。
【００６２】
アンチウィルスプログラム12がウィルス感染を確認した場合（F509でYes）、管理サーバ装置30の復元部34は、１世代前のスナップショット42を用いて復元することを検討する。具体的には、復元部34は、1世代前のスナップショット42の採取日時が、チェックポイントの日時より新しい日時であれば(F510でYes)、1世代前のスナップショット42に基づいて復元する(F511)。その後、復元部34は、スナップショット42がウィルスチェック済かの確認を行う(F506)。1世代前のスナップショット42の取得日時が、チェックポイントの日時と同じまたは古い日時の場合は（F510でNo）、復元に使用できるスナップショット42が無い。このため、復元部34は、例えば、仮想マシン管理者にウィルス感染と自動復元できなかった事実を通知する(F515)。
【００６３】
＜第２の実施の形態＞
図８は、本実施の形態の復元装置60の構成図である。復元装置60は、更新部21、チェック部22、取得部33、復元部34を備える。
【００６４】
取得部33は、仮想マシン11の仮想ディスク14を格納する仮想ディスク記憶部17の更新情報から、スナップショット42を取得して管理情報記憶部40に格納する。更新部21は、スナップショット42の取得後、更新されたウィルスチェックファイル43を管理情報記憶部40に格納する。
【００６５】
チェック部22は、スナップショット42に基づいて復元された仮想ディスク14の内容のウィルスチェックを、更新されたウィルスチェックファイル43を用いて実行する。る復元部34は、仮想マシン11の感染を検出すると、ウィルスチェックで感染が無いと判断されたスナップショット42に基づいて復元された仮想ディスク14の内容を、仮想ディスク記憶部17に格納する。
【００６６】
更新部21、チェック部22、取得部33、及び、復元部34は、論理回路で構成される。更新部21、チェック部22、取得部33、及び、復元部34は、コンピュータである復元装置60のメモリに格納されて、復元装置60のプロセッサで実行されるソフトウェアによって、実現されても良い。
【００６７】
本実施の形態の第１の効果は、仮想マシン11がウィルス感染してしまった場合に、仮想マシン11を早期にウィルス感染していない状態に復旧できることである。その理由は、仮想マシン11のスナップショット42を事前に取得しておき、ウィルスチェック装置20によってスナップショット42を最新のエンジン、パターンファイルで、予めウィルスチェックしておくからである。このため、仮想マシン11がウィルス感染した場合、管理サーバ装置30の復元部34は、スナップショット42をもとに仮想ディスク14を復元するだけで、ウィルス感染していない状態に復旧できる。
【００６８】
第２の効果は、復元されたあとの状態が安全なことである。その理由は、スナップショット42が取得された後に、チェック部22が、取得後にアップデートされたウィルスチェックエンジンやパターンファイルを用いてウィルスチェックを行うからである。チェック部22は、スナップショット42の取得時に発見されていなかった、新種のウィルスも検出できる。
【００６９】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００７０】
10    物理サーバ装置
11    仮想マシン
12    アンチウィルスプログラム
13    仮想ＮＩＣ
14    仮想ディスク
15    ＶＭＭ
16    物理ＮＩＣ
17    仮想ディスク記憶部
20    ウィルスチェック装置
21    更新部
22    チェック部
30    管理サーバ装置
31    仮想マシン情報記憶部
32    ポイント設定部
33    取得部
34    復元部
40    管理情報記憶部
41    仮想ディスクのマスタイメージ
42    スナップショット
43    ウィルスチェックファイル
50    提供装置
70    復元システム
【図１】
2015153298.tif 000003
【図２】
2015153298.tif 000004
【図３】
2015153298.tif 000005
【図４】
2015153298.tif 000006
【図５】
2015153298.tif 000007
【図６】
2015153298.tif 000008
【図７】
2015153298.tif 000009
【図８】
2015153298.tif 000010