(57)【特許請求の範囲】
【請求項１】
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルの第１の時間におけるファイルサイズを示す第１ファイルサイズ情報と，前記特定ファイルの前記第１の時間より後の第２の時間におけるファイルサイズを示す第２ファイルサイズ情報とを受信し，
受信した前記第１及び第２ファイルサイズ情報に基づき，前記第１の時間と前記第２の時間との間における前記仮想マシンの復元を検知する
復元検知方法。
【請求項２】
請求項１において，
前記検知では，前記第２ファイルサイズ情報が前記第１ファイルサイズ情報より小さい場合，前記復元が発生したと判定する復元検知方法。
【請求項３】
請求項１において，
前記特定ファイルは，時間経過に伴い一定の割合でファイルサイズが増加するファイルであり，
前記受信では，さらに，前記第２の時間より後の第３の時間における前記特定ファイルのファイルサイズを示す第３ファイルサイズ情報を受信し，
前記検知では，前記第１及び第２ファイルサイズ情報に基づく前記第１の時間と前記第２の時間との間における前記ファイルサイズの第１増加率よりも，前記第２及び第３ファイルサイズ情報に基づく前記第２の時間と前記第３の時間との間における前記ファイルサイズの第２増加率が小さい場合，前記復元が発生したと判定する復元検知方法。
【請求項４】
請求項１において，
前記第２の時間は，前記第１の時間の後，前記特定ファイルのファイルサイズが増加する前の時間であり，
前記検知では，前記第１ファイルサイズ情報と前記第２ファイルサイズ情報とが一致しないときに，前記復元が発生したと判定する復元検知方法。
【請求項５】
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルの第１の時間におけるファイルサイズを示す第１ファイルサイズ情報と，前記特定ファイルの前記第１の時間より後の第２の時間におけるファイルサイズを示す第２ファイルサイズ情報とを受信する受信部と，
受信した前記第１及び第２ファイルサイズ情報に基づき，前記第１の時間と前記第２の時間との間における前記仮想マシンの復元を検知する検知部と，を有する
復元検知装置。
【請求項６】
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルの第１の時間におけるファイルサイズを示す第１ファイルサイズ情報と，前記特定ファイルの前記第１の時間より後の第２の時間におけるファイルサイズを示す第２ファイルサイズ情報とを受信し，
受信した前記第１及び第２ファイルサイズ情報に基づき，前記第１の時間と前記第２の時間との間における前記仮想マシンの復元を検知する
処理をコンピュータに実行させる復元検知プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，復元検知方法，復元検知装置及び復元検知プログラムに関する。
【背景技術】
【０００２】
近年，物理マシンの性能向上に伴い，複数の仮想マシン（ＶＭ；Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）を１つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術は，例えば，仮想化ソフトウエア（ハイパバイザ）が物理マシンを複数の仮想マシンに割り当てて，各仮想マシンにインストールされたアプリケーションプログラムによるサービスの提供を可能にする。そして，近年，物理マシンのリソースやインフラ等の仮想マシンの利用環境を提供する事業者（以下，インフラ事業者と称する）によって，仮想マシンを利用してサービスの提供等を行う事業者（以下，サービス事業者と称する）への仮想マシンの貸し出しが行われている。インフラ事業者は，契約で定めた条件に基づいて，サービス事業者に仮想マシンの貸し出しを行う。
【０００３】
このような仮想マシンにおいて，例えば，ある時点におけるシステムの状態を保存する機能（以下，スナップショット機能と称する）を有している場合がある。この機能により，サービス事業者は，障害が発生した場合等において，システムを障害が発生する前の状態に復元する等の処置を行うことが可能になる。一方で，スナップショット機能は，例えば，サービス事業者によるサービスを利用する利用者が，不正アクセス等を行った場合に，その使用履歴等を消去することを可能にする。そのため，サービス事業者は，例えば，仮想マシンが作成された物理マシンの中に，仮想マシンの監視を行うためのソフトウエア（以下，監視ソフトウエアと称する）等を配置し，仮想マシンの復元を含めた状態の変化の監視を行う（例えば，特許文献１乃至４参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−２７８９６７号公報
【特許文献２】特開２０１１−１８６７８３号公報
【特許文献３】特開２００７−２０７２７１号公報
【特許文献４】特表２００２−５４４６３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
インフラ事業者は，サービス事業者に仮想マシンの貸し出しを行う場合，貸し出しを行う仮想マシンに対するアクセス権限のみをサービス事業者に与える場合がある。これは，サービス事業者が，自らが管理する仮想マシンが作成されている物理マシンへのアクセスを行うことができないことを意味する。そのため，サービス事業者は，仮想マシンの復元を検知するための監視ソフトウエア等を，物理マシンにインストールすることができなくなる。さらに，上記のスナップショット機能により復元した仮想マシンは，仮想マシン内部のシステム時間を含めて全ての情報が復元される。そのため，サービス事業者は，仮想マシン内の情報のみによって仮想マシンの復元を検知することができない。したがって，この場合，サービス事業者は，物理マシンへのアクセスが制限されることにより，仮想マシンの復元の検知を容易に行うことができなくなる。
【０００６】
そこで，一つの実施の形態の目的は，仮想マシンが作成された物理マシンにアクセスすることなく仮想マシンの復元を検知する復元検知方法，復元検知装置及び復元検知プログラムを提供することにある。
【課題を解決するための手段】
【０００７】
実施の形態の一つの側面によれば，監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信し，
前記受信したファイルサイズ情報に基づき，前記仮想マシンの復元を検知する。
【発明の効果】
【０００８】
一つの側面によれば，仮想マシンが作成された物理マシンにアクセスすることなく仮想マシンの復元を検知する。
【図面の簡単な説明】
【０００９】
【図１】情報処理システムの全体構成を示す図である。
【図２】仮想マシンの復元の検知方法を説明する図である。
【図３】仮想マシンの復元の検知方法を説明する図である。
【図４】監視装置のハードウエア構成を示す図である。
【図５】図４の監視装置の機能ブロック図である。
【図６】第１の実施の形態における復元検知処理の概略を示すフローチャート図である。
【図７】第１の実施の形態における復元検知処理の概略を説明する図である。
【図８】第１の実施の形態における復元検知処理の概略を説明する図である。
【図９】第１の実施の形態における復元検知処理の概略を説明する図である。
【図１０】第１の実施の形態における復元検知処理の詳細を示すフローチャート図である。
【図１１】第１の実施の形態における復元検知処理の詳細を示すフローチャート図である。
【図１２】第１の実施の形態における復元検知処理の詳細を説明する図である。
【図１３】第１の実施の形態における復元検知処理の詳細を説明する図である。
【図１４】第１の実施の形態における復元検知処理の詳細を説明する図である。
【図１５】第２の実施の形態における復元検知処理を説明する図である。
【図１６】第２の実施の形態における復元検知処理を説明する図である。
【図１７】第２の実施の形態における復元検知処理を示すフローチャート図である。
【図１８】第２の実施の形態における復元検知処理を示すフローチャート図である。
【図１９】第３の実施の形態における復元検知処理を説明する図である。
【図２０】第３の実施の形態における復元検知処理を示すフローチャート図である。
【図２１】第３の実施の形態における復元検知処理を示すフローチャート図である。
【図２２】第４の実施の形態における復元検知処理を説明する図である。
【図２３】第４の実施の形態における復元検知処理を示すフローチャート図である。
【図２４】第４の実施の形態における復元検知処理を示すフローチャート図である。
【図２５】第４の実施の形態における復元検知処理を示すフローチャート図である。
【発明を実施するための形態】
【００１０】
［情報処理システムの構成］
図１は，情報処理システムの全体構成を示す図である。図１に示す情報処理システム１０は，データセンタ７内に，管理サーバ１と，仮想マシンを作成する物理マシン２（以下，ＶＭホスト２とも称する）とが設けられている。そして，データセンタ７には，インターネットやイントラネット等のネットワークを介して，利用者端末８からアクセス可能になっている。
【００１１】
ＶＭホスト２は，図１の例では複数の物理マシンから構成されており，各物理マシンは，ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と，ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と，ハードディスク（ＨＤＤ；Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の大容量の記憶媒体とを有する。そして，ＶＭホスト２のリソースは，複数の仮想マシン３に割り当てられる。
【００１２】
管理サーバ１は，例えば，ＶＭホスト２とアクセス可能であり，ＶＭホスト２内における仮想マシン３の作成指示や作成された仮想マシン３の管理を行う。
【００１３】
仮想マシン３は，例えば，サービス事業者がそのインフラ等をネットワーク経由で利用者に提供するもの（以下，クラウドサービスと称する）である。クラウドサービスは，コンピュータシステムを構築し稼働させるための基盤，即ち，仮想マシン３やネットワーク等のインフラストラクチャそのものを，ネットワーク経由で提供するサービスである。また，利用者は，例えば，利用者端末８からクラウドサービスポータルサイトにアクセスして，仮想マシンに必要な仕様，例えばＣＰＵのクロック周波数，メモリの容量（ＧＢ），ハードディスクの容量（ＭＢ／ｓｅｃ，ＩＯＰＳ），及びネットワークの通信帯域幅（Ｇｂｐｓ）を選択し，それらについてクラウド利用契約を締結する。また，利用者端末８は，例えば，仮想マシン３の稼働状態を監視や，仮想マシンに対する操作等を可能にする。また，仮想マシン３は，図１の例においては，データセンタ７内に設けられた監視装置５（以下，復元検知装置５とも称する）とアクセス可能になっている。
【００１４】
仮想化ソフトウエア４は，管理サーバ１からの指示に応じて，ＶＭホスト２のＣＰＵ，メモリ，ハードディスク，ネットワーク等のリソースを割り当てることにより，仮想マシン３を動作させる基盤ソフトウエアである。仮想化ソフトウエア４は，例えば，ＶＭホスト２で動作する。
【００１５】
仮想マシン３は，ＶＭホスト２のリソースが割り当てられることに加えて，例えば，ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ），ミドルウエア，アプリケーション，データベース等を有するイメージファイルをそのハードディスク内に有する。そして，仮想マシン３は，例えば，起動時にイメージファイルをハードディスクからメモリに書き込み，所望のサービスに対応する動作を行う。
【００１６】
また，図１の例における仮想マシン３は，例えば，ある時点におけるシステムの状態（ファイルの内容やシステム構成等）を記憶するスナップショット機能を有している。この機能により，仮想マシン３は，過去の特定のタイミング（システムの状態を記憶したタイミング）に復元することが可能になる。そのため，サービス事業者は，障害が発生した場合等において，システムを障害が発生する前の状態に復元する等の処置を行うことが可能になる。
【００１７】
監視装置５は，例えば，スナップショット機能による仮想マシン３の復元を検知するための装置である。仮想マシン３がスナップショット機能を有している場合，サービス事業者が提供するサービスを利用する利用者は，不正アクセス等を行った後，その使用履歴等を消去することを可能になる。そのため，サービス事業者は，図１に示すように，例えば，監視対象の仮想マシン３とは別に監視装置５を設け，監視対象の仮想マシン３における復元の検知を行う。なお，監視装置５は，仮想マシン３の復元を検知するために，仮想マシン３の外部に設ける必要がある。また，サービス事業者は，使用可能な仮想マシンの一部を監視装置５として機能させるものであってよい。
【００１８】
［監視装置による仮想マシンの監視］
次に，監視装置５による仮想マシンの監視について説明する。図２及び図３は，仮想マシンの復元の検知方法を説明する図である。
【００１９】
図２の例において，ＶＭホスト２には，監視装置５とアクセス可能な監視ソフトウエア６がインストールされている。監視ソフトウエア６は，例えば，仮想マシン３や仮想化ソフトウエア４の状態に関する情報を取得し，取得した情報を監視装置５に送信する。
【００２０】
ここで，近年，ＶＭホスト２を管理して仮想マシン３のリソース等の貸し出しを行うインフラ事業者と，インフラ事業者から仮想マシン３を借り受けて利用者に向けた各種サービスを行うサービス事業者との分離化が進んでいる。そして，これに伴い，サービス事業者には，インフラ事業者から借り受けた仮想マシン３にのみアクセスが認められ，仮想マシン３が作成されているＶＭホスト２にアクセスが認められない場合がある。そのため，この場合，図３に示すように，サービス事業者は，インフラ事業者が管理するＶＭホスト２に監視ソフトウエア６をインストールすることができない場合がある。
【００２１】
そして，図３は，ＶＭホスト２に監視ソフトウエア６をインストールしない場合の図である。図３の状態において仮想マシン３の復元が発生した場合，その仮想マシン３は，内部のシステム時間を含めて全ての情報が復元先の時間におけるシステム状態に戻る。そのため，サービス事業者は，復元した仮想マシン３内の情報を参照しても仮想マシン３に復元が発生したのか否かを判定することができない。したがって，図３の例において，サービス事業者は，仮想マシン３の復元を検知することができない。
【００２２】
そこで，本実施の形態では，監視装置５は，監視対象の仮想マシン３から，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信する。そして，受信したファイルサイズ情報に基づき，仮想マシン３の復元の発生を検知する。これにより，監視対象の仮想マシン３の復元を検知することが可能になる。
【００２３】
［仮想マシン及び監視装置の構成］
初めに，監視装置５の構成について説明する。図４は，監視装置のハードウエア構成を示す図である。監視装置５は，プロセッサであるＣＰＵ５０１と，メモリ５０２と，外部インターフェース（Ｉ／Ｏユニット）５０３と，記憶媒体５０４とを有する。各部は，バス５０５を介して互いに接続される。記憶媒体５０４は，例えば，記憶媒体５０４内のプログラム格納領域（図示しない）に，仮想マシン３の復元を検知する処理（以下，復元検知処理とも称する）を行うためのプログラム５１０（以下，復元検知プログラムとも称する）を記憶する。ＣＰＵ５０１は，図４に示すように，プログラム５１０の実行時に，プログラム５１０を記憶媒体５０４からメモリ５０２にロードし，プログラム５１０と協働して復元検知処理を行う。また，記憶媒体５０４は，例えば，復元検知処理を行う際に用いられる情報を記憶する情報格納領域５３０（以下，記憶部５３０とも称する）を有する。
【００２４】
図５は，図４の監視装置の機能ブロック図である。ＣＰＵ５０１は，プログラム５１０と協働することにより，例えば，情報受信部５１１（以下，受信部５１１とも称する）と，情報作成部５１２と，復元検知部５１３（以下，検知部５１３とも称する）と，ファイル参照部５１４と，復元解析部５１５として動作する。また，ＣＰＵ５０１は，プログラム５１０と協働することにより，例えば，ファイル作成部５１６と，復元通知部５１７と，監視管理部５１８と，情報送信部５１９として動作する。また，情報格納領域５３０には，例えば，ファイルサイズ情報５３１と，監視管理情報５３２と，監視頻度情報５３３とが記憶されている。
【００２５】
情報受信部５１１は，例えば，監視対象の仮想マシン３における特定ファイルのファイルサイズを示すファイルサイズ情報５３１を受信する。具体的に，監視対象の仮想マシン３は，例えば，それぞれの仮想マシン３に配置された特定ファイルの現在のファイルサイズを取得し，これをファイルサイズ情報５３１として監視装置５に送信する。そして，情報受信部５１１は，仮想マシン３が送信したファイルサイズ情報５３１を受信するものであってもよい。なお，ファイルサイズ情報５３１は，特定ファイルのファイルサイズに加えて，例えば，それぞれの特定ファイルが配置された仮想マシン３の識別情報等を含むものであってもよい。
【００２６】
情報作成部５１２は，例えば，監視対象の仮想マシン３から受信したファイルサイズ情報５３１を含む情報を，監視管理情報５３２として情報格納領域５３０に記憶する。情報作成部５１２は，例えば，受信したファイルサイズ情報５３１と監視対象の仮想マシン３を識別する識別情報とを対応付けて監視管理情報５３２とするものであってよい。監視管理情報５３２の詳細については後述する。
【００２７】
復元検知部５１３は，例えば，監視対象の仮想マシン３から受信した複数のファイルサイズ情報５３１を比較する。そして，復元検知部５１３は，例えば，複数のファイルサイズ情報５３１に基づき，監視対象の仮想マシン３の復元を検知する。仮想マシン３の復元検知方法の詳細については後述する。
【００２８】
ファイル参照部５１４は，例えば，復元検知部５１３が監視対象の仮想マシン３の復元を検知した場合，特定ファイルの内容を解析するために仮想マシン３内の特定ファイルを参照する。ファイル参照部５１４は，例えば，参照する特定ファイルを取得するように情報受信部５１１に指示を行い，指示を受けた情報受信部５１１が特定ファイルを取得するものであってもよい。
【００２９】
復元解析部５１５は，例えば，ファイル参照部５１４が参照した特定ファイルの内容に基づき，仮想マシン３の復元先の時間を算出する。仮想マシン３の復元先の時間を算出する方法については後述する。
【００３０】
ファイル作成部５１６は，例えば，仮想マシン３における特定ファイルを監視装置５が作成する場合に，特定ファイルを作成する。また，ファイル作成部５１６は，例えば，所定の時間毎に監視対象の仮想マシン３にアクセスし，特定ファイルの更新を行うものであってよい。監視装置５による特定ファイルの作成及び更新については後述する。
【００３１】
復元通知部５１７は，例えば，復元検知部５１３が監視対象の仮想マシン３の復元を検知した場合に，管理サーバ１等に監視対象の仮想マシン３が復元した旨の通知を行う。また，復元通知部５１７は，例えば，復元解析部５１５が仮想マシン３の復元先の時間を算出した場合に，管理サーバ１等に仮想マシン３の復元先の時間を通知する。
【００３２】
監視管理部５１８は，例えば，情報格納領域５３０に記憶された監視頻度情報５３３に基づいて，情報受信部５１１に特定ファイルのファイルサイズ情報５３１の取得指示を行う。また，監視管理部５１８は，例えば，サービス事業者からの依頼等に応じて，監視頻度情報５３３を更新する。
【００３３】
情報送信部５１９は，例えば，監視装置５が監視対象の仮想マシン３にインストールされた監視ソフトウエア（図示しない）と連携して復元の検知を行う場合，情報格納領域５３０に記憶されたファイルサイズ情報５３１等を仮想マシン３内の監視ソフトウエアに送信する。
【００３４】
［第１の実施の形態］
次に，第１の実施の形態について説明する。図６は，第１の実施の形態における復元検知処理の概略を示すフローチャート図である。また，図７は，第１の実施の形態における復元検知処理の概略を説明する図である。図７を参照しながら図６の復元検知処理の概略について説明する。
【００３５】
初めに，監視装置５は，例えば，図７に示すように，監視対象の仮想マシン３の情報格納領域３３０から，その仮想マシン３においてファイルサイズが累積して増加する特定ファイルのファイルサイズ情報５３１を受信する（Ｓ１）。監視装置５は，定期的に情報格納領域３３０にアクセスを行い，特定ファイルのファイルサイズ情報５３１を取得するものであってよい。監視装置５がファイルサイズ情報５３１を取得する頻度は，例えば，１分間隔である。監視装置５は，例えば，監視頻度情報５３３の内容を参照し，これに基づいてファイルサイズ情報５３１を取得する頻度を決定するものであってよい。
【００３６】
そして，監視装置５は，例えば，受信したファイルサイズ情報５３１に基づき，仮想マシン３の復元を検知する（Ｓ２）。監視装置５は，例えば，過去のある時間（以下，第１の時間とも称する）に受信した特定ファイルのファイルサイズ情報（以下，第１ファイルサイズ情報とも称する）が示すファイルサイズと，第１の時間よりも後の時間（以下，第２の時間とも称する）に受信した特定ファイルのファイルサイズ情報（以下，第２ファイルサイズ情報とも称する）が示すファイルサイズとに基づいて，仮想マシン３の復元の検知を行う。そして，監視装置５は，例えば，新たに受信した特定ファイルのファイルサイズが過去に受信した同一特定ファイルのファイルサイズより小さい場合に，仮想マシン３の復元が発生したものと判定する。以下，監視対象の仮想マシン３から受信したファイルサイズ情報５３１について説明する。
【００３７】
図８及び図９は，監視装置５が受信したファイルサイズ情報５３１の具体例を示す図である。図８及び図９の例において，横軸は，時間を示しており，縦軸は，特定ファイルのファイルサイズを示している。また，図８及び図９の例において，白抜き三角形は，ファイルサイズ情報５３１を受信した時間と，受信したファイルサイズ情報５３１が示すファイルサイズとが対応する点を示している。なお，図８及び図９の例においては，監視装置５がファイルサイズ情報５３１を１分間隔で受信する場合について説明する。
【００３８】
本実施の形態における特定ファイルは，図８に示すように，そのファイルサイズが時間経過に伴って累積して増加する。そのため，通常の運用時において，新たに受信したファイルサイズ情報５３１が示すファイルサイズが過去に受信したファイルサイズ情報５３１が示すファイルサイズよりも小さくなることはない。
【００３９】
一方，図９に示す例においては，新たに受信したファイルサイズ情報５３１（時間が５分の時点で受信したファイルサイズ情報５３１）が過去に受信したファイルサイズ情報５３１（例えば，時間が４分の時点で受信したファイルサイズ情報５３１）よりも小さい。そのため，この場合，監視装置５は，特定ファイルが配置された仮想マシン３において復元が発生したものと判断することができる。
【００４０】
すなわち，監視装置５は，初めに，監視対象の仮想マシン３におけるファイルサイズが累積して増加する特定ファイルを決定する。そして，例えば，決定した特定ファイルの複数時におけるファイルサイズ情報５３１を受信する。この場合，特定ファイルは，ファイルサイズが累積して増加するファイルであるため，通常の運用時において，受信したファイルサイズ情報が過去に受信したファイルサイズ情報５３１よりも小さくなることはない。そのため，監視装置５は，受信したファイルサイズ情報５３１が過去に受信したファイルサイズ情報５３１よりも小さい特定ファイルの存在を検知した場合，その特定ファイルが配置された仮想マシン３が復元したものと判定することができる。
【００４１】
このように，第１の実施の形態によれば，監視装置５は，監視対象の仮想マシン３から，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信する。そして，監視装置５は，受信したファイルサイズ情報に基づき，監視対象の仮想マシン３の復元を検知する。これにより，サービス事業者は，監視対象の仮想マシン３が作成されたＶＭホスト２に監視ソフトウエアのインストール等を行うことなく（ＶＭホストにアクセスすることなく），監視対象の仮想マシン３の復元を検知することが可能になる。そのため，悪意の利用者が仮想マシン３に不正アクセス等を行った後に，スナップショット機能を用いて行った仮想マシン３の復元を検知することが可能になる。
【００４２】
なお，監視装置５が，ある時間（以下，第３の時間とも称する）における仮想マシン３のファイルサイズ情報５３１（既知のファイルサイズ情報５３１）を予め有している場合がある。具体的には，監視装置５が特定ファイルを作成した場合において，その作成時の特定ファイルのファイルサイズ情報５３１（例えば，初期値の０バイト）を情報格納領域５３０に記憶している場合である。この場合，監視装置５は，例えば，監視対象の仮想マシン３から第３の時間とは異なる時間（以下，第４の時間とも称する）におけるファイルサイズ情報５３１を，少なくとも１回受信することにより，復元の検知が可能になる。すなわち，監視装置５は，この場合，既知のファイルサイズ情報５３１と受信したファイルサイズ情報５３１とに基づき，仮想マシン３の復元の検知を行うことが可能になる。これにより，監視装置５は，仮想マシン３のファイルサイズ情報５３１を，仮想マシン３から受信することなく取得することが可能になる。
【００４３】
[第１の実施の形態の詳細]
次に，第１の実施の形態の詳細について説明する。図１０及び図１１は，第１の実施の形態における復元検知処理の詳細を説明するフローチャート図である。また，図１２から図１４は，第１の実施の形態における復元検知処理の詳細を説明する図である。図１２から図１４を参照しながら，図１０及び図１１の復元検知処理の詳細を説明する。なお，以下，監視装置５が監視対象の仮想マシン３からファイルサイズ情報５３１を複数回受信し，仮想マシン３の復元を検知する場合（監視装置５が既知のファイルサイズ情報５３１を有していない場合）について説明する。
【００４４】
初めに，図１０に示すように，監視装置５の情報受信部５１１は，例えば，管理サーバ１等から監視開始指示を受信するまで待機する（Ｓ１１）。そして，監視開始指示を受信した場合（Ｓ１１のＹＥＳ），監視装置５のファイル作成部５１６は，例えば，監視対象となる特定ファイルを作成して監視対象の仮想マシン３（監視開始指示を受信した仮想マシン３）に配置する（Ｓ１２）。
【００４５】
具体的に，監視装置５は，例えば，累積してファイルサイズが増加する性質を有する特定ファイルを作成して仮想マシン３内に配置する。この特定ファイルは，例えば，所定の時間毎に，その時の現在時間を示すタイムスタンプを記憶するファイルであってよい。この場合，特定ファイルは，タイムスタンプが記憶される毎に，記憶したタイムスタンプ分のファイルサイズが増加する。そのため，監視装置５は，仮想マシン３が起動している場合においては，時間の経過に伴って特定ファイルのファイルサイズを累積して増加させることが可能になる。したがって，監視装置５は，特定ファイルのファイルサイズを監視することにより，特定ファイルのファイルサイズが減少したときに，その特定ファイルを配置した仮想マシン３において復元が発生したものと判断することが可能になる。なお，ファイル作成部５１６は，監視対象の仮想マシン３において，特定ファイルの内容及びファイルサイズの参照が可能な位置に特定ファイルを配置する必要がある。
【００４６】
次に，監視装置５の情報作成部５１２は，例えば，情報格納領域５３０において特定ファイルのファイルサイズ情報５３１を記憶するための記憶領域を確保する（Ｓ１３）。これにより，監視装置５は，監視対象の仮想マシン３から特定ファイルのファイルサイズ情報５３１の受信した後，その情報を記憶することが可能な状態になる。
【００４７】
そして，情報受信部５１１は，例えば，監視対象の仮想マシン３にアクセスし，特定ファイルのファイルサイズ情報５３１を取得する（Ｓ１４）。このファイルサイズ情報５３１は，例えば，仮想マシン３にインストールされたアプリケーションによって送信され，情報受信部５１１がこれを受信することにより取得するものであってもよい。
【００４８】
さらに，情報受信部５１１が特定ファイルのファイルサイズを複数回取得している場合に（Ｓ１５のＹＥＳ），監視装置５の復元検知部５１３は，例えば，図１１に示すように，仮想マシン３の復元の検知を行う（Ｓ２１）。すなわち，本実施の形態においては，監視装置５は，特定ファイルのファイルサイズの変化に基づいて，監視対象の仮想マシン３の復元を検知する。そのため，ファイルサイズの変化に関する情報を取得するためには，監視装置５は，特定ファイルのファイルサイズ情報５３１を複数回受信している必要がある。したがって，本実施形態における監視装置５は，例えば，ファイルサイズ情報５３１を複数回受信していない場合には，仮想マシン３の復元の検知を行わない。以下，仮想マシン３の復元検知方法による復元の検知の具体例について説明する。
【００４９】
［仮想マシンの復元の検知の具体例］
図１２及び図１３は，特定ファイルの具体例を説明する図である。図１２及び図１３に示す特定ファイルを参照して，仮想マシン３の復元検知方法の説明を行う。なお，図１２及び図１３の例においては，監視装置５が特定ファイルを作成し，その特定ファイルにタイムスタンプを記憶する場合について説明する。
【００５０】
図１２（Ａ）に示す特定ファイルは，監視装置５が毎分タイムスタンプを記憶するファイルである。具体的に，図１２（Ａ）に示す特定ファイルは，監視の開始時から２０１４年２月２８日９時１６分００秒に記憶されたタイムスタンプ（図１２（Ａ）における２０１４０２２８０９１６００）までを記憶している状態である。また，図１２（Ａ）の状態における特定ファイルのファイルサイズは，４９３７６バイトである。
【００５１】
そして，図１２（Ｂ）は，図１２（Ａ）の状態から１分経過した後の特定ファイルの例である。すなわち，図１２（Ｂ）に示す特定ファイルは，図１２（Ａ）の状態から，次のタイムスタンプがさらに記憶された状態である。具体的に，図１２（Ｂ）に示す特定ファイルにおいては，図１２（Ａ）の状態において記憶されたタイムスタンプに加え，２０１４年２月２８日９時１７分００秒のタイムスタンプ（図１２（Ｂ）における２０１４０２２８０９１７００）が記憶されている。
【００５２】
図１２（Ｂ）の場合における特定ファイルのファイルサイズは，４９３９２バイトである。そのため，図１２（Ａ）の状態における特定ファイルのファイルサイズである４９３７６よりも増加している。すなわち，図１２に示す特定ファイルは，ファイルサイズが累積して増加するファイルに該当するファイルである。したがって，監視装置５は，図１２に示す特定ファイルのファイルサイズを監視することにより，この特定ファイルが配置された仮想マシン３の復元を検知することが可能になる。なお，監視装置５は，例えば，情報格納領域５３０に記憶された監視管理情報５３２を参照することにより，過去に受信した特定ファイルのファイルサイズを参照するものであってよい。
【００５３】
一方，図１３は，仮想マシン３の復元が発生した場合における特定ファイルの具体例である。図１３（Ａ）に示す特定ファイルは，監視の開始時から２０１４年３月２日９時０２分００秒のタイムスタンプ（図１３（Ａ）における２０１４０３０２０９０２００）まで記憶された状態である。また，図１３（Ｂ）に示す特定ファイルは，図１３（Ａ）の状態から１分経過した後の特定ファイルの例である。図１３（Ｂ）に示す特定ファイルは，２０１４年２月２７日１５時０２分００秒のタイムスタンプの次に２０１４年３月２日９時０３分００秒のタイムスタンプ（図１３（Ｂ）における２０１４０３０２０９０３００）が記憶されている。すなわち，図１３（Ｂ）の状態は，図１３（Ａ）の状態と比較して，２０１４年２月２７日１５時０３分００秒から２０１４年３月２日９時０２分００秒までのタイムスタンプが削除されている。そして，図１３（Ｂ）の状態におけるファイルサイズは１６３３６バイトであり，図１３（Ａ）の状態におけるファイルサイズである７９６９６バイトよりも減少している。そのため，監視装置５が図１３（Ｂ）の状態における特定ファイルのファイルサイズ情報５３１を受信した場合，その特定ファイルが配置されている仮想マシン３において復元が発生したことを検知することができる。
【００５４】
図１１に戻り，仮想マシン３の復元を検知した場合（Ｓ２１のＹＥＳ），監視装置５は，例えば，監視対象の仮想マシン３の復元について詳細な調査を行う。そのため，この場合，監視装置５のファイル参照部５１４は，仮想マシン３にアクセスを行い，特定ファイルを参照する（Ｓ２２）。そして，監視装置５の復元解析部５１５は，例えば，特定ファイルの解析を行う（Ｓ２３）。具体的に，復元解析部５１５は，例えば，仮想マシン３の復元先の時間を算出する。また，監視装置５の復元通知部５１７は，例えば，監視対象の仮想マシン３において復元が発生した旨の管理者（管理サーバ１）に通知するものであってもよい（Ｓ２４）。
【００５５】
なお，図１３（Ｂ）の例において，２０１４年３月２日９時０２分００秒のタイムスタンプは削除されておらず，２０１４年３月２日９時０３分００秒のタイムスタンプが削除されている。そのため，監視装置５は，これらの間の時間の状態に仮想マシン３が復元したものと判断できる。すなわち，監視装置５は，例えば，特定ファイルとして，定期的にタイムスタンプが記憶されるファイルを採用することにより，監視対象の仮想マシン３における復元の発生のみでなく，復元先の時間の検知を行うことが可能になる。
【００５６】
具体的に，監視装置５は，監視対象の仮想マシン３の復元を検知した場合において，特定ファイルに記憶されたタイムスタンプ（以下，第１タイムスタンプとも称する）が示す時間と，第１タイムスタンプの次に特定ファイルに記憶されたタイムスタンプ（以下，第２タイムスタンプとも称する）が示す時間との時間差をそれぞれ算出する。ここで算出した時間差は，仮想マシン３の復元が発生しない場合には，タイムスタンプを記憶する時間間隔（図１３の例においては１分）になる。そのため，算出した時間差の大半は，図１３の例においては１分になる。
【００５７】
そして，監視装置５は，算出した時間差のうち，タイムスタンプを記憶する時間間隔よりも大きいものが存在する場合，第１タイムスタンプが示す時間からタイムスタンプを記録する時間間隔が経過するまでの時間に，監視対象の仮想マシン３の復元先の時間が含まれると判定する。図１３（Ｂ）の例においては，２０１４年２月２７日１５時０２分００秒を示すタイムスタンプの次に，２０１４年３月２日９時０３分００秒を示すタイムスタンプが記憶されており，これらの時間差は１分以上である。そのため，この場合，監視装置５は，２０１４年２月２７日１５時０２分００秒から１分を経過するまでの間に，監視対象の仮想マシン３の復元先の時間が含まれると判定することができる。なお，監視装置５は，特定ファイルにタイムスタンプを記憶する間隔を短くすることにより，仮想マシン３の復元が発生したときに，その復元先の時間をより正確に検知することが可能になる。
【００５８】
また，監視装置５は，特定ファイルの内容を参照することなく，特定ファイルのファイルサイズに基づいて，仮想マシン３の復元先の時間を判断するものであってもよい。図１３の例において，図１３（Ａ）の状態の特定ファイルのファイルサイズが７９６９６バイトであるのに対し，図１３（Ｂ）の状態の特定ファイルのファイルサイズは，１６３３６バイトである。この場合，監視装置５は，例えば，これらのファイルサイズの差を１分あたりのファイルサイズの増加量（図１２及び図１３の例では１６バイト）で除算する。これによって，削除されたタイムスタンプが示す時間の長さを算出することができる。そして，監視装置５は，例えば，現在の時間から，削除されたタイムスタンプが示す時間の長さを減算することによって，仮想マシン３の復元先の時間を算出することが可能になる。
【００５９】
具体的に，図１３の例においては，監視装置５は，７９６９６バイトから１６３３６バイトを減算した値を，１分あたりのファイルサイズの増加量である１６バイトで除算し，削除されたタイムスタンプが示す時間の長さとして３９６０分を算出する。そして，監視装置５は，例えば，現在の時間である２０１４年３月２日９時０３分００秒から３９６０分だけ遡った２０１４年２月２７日１５時０３分００秒を算出し，これを仮想マシン３の復元先の時間として判定するものであってもよい。
【００６０】
図１１に戻り，仮想マシン３の復元を検知した場合（Ｓ２１のＹＥＳ），ファイル作成部５１６は，例えば，監視対象の仮想マシン３における特定ファイルの更新を行う（Ｓ２５）。そして，情報作成部５１２は，例えば，情報格納領域５３０に記憶された監視管理情報５３２を更新する（Ｓ２６）。これにより，監視装置５は，監視対象の仮想マシン３の監視を継続することが可能になる。以下，監視管理情報５３２の具体例について説明する。
【００６１】
［監視管理情報の具体例］
図１４は，監視管理情報５３２の具体例を示す図である。図１４（Ａ）の例において，監視管理情報５３２は，監視対象の仮想マシン３から受信したファイルサイズ情報５３１に基づき，仮想マシン３を識別するための識別情報と，それぞれの仮想マシン３に配置した特定ファイルの最新のファイルサイズとを対応付けて記憶している。図１４（Ａ）においては，監視装置５が４台の仮想マシン３（ＶＭ３１，３２，３３，３４）のファイルサイズ情報５３１の監視を行っている場合の例である。そして，図１４（Ａ）の例においては，仮想マシン３の最新のファイルサイズは，それぞれ１７３６４バイト，５４６２バイト，４５２１５バイト，２３１３バイトである。
【００６２】
復元検知部５１３は，例えば，監視対象の仮想マシン３の復元を検知する場合（Ｓ２１），監視管理情報５３２を参照し，記憶されているファイルサイズ情報５３１を取得する。そして，復元検知部５１３は，Ｓ１４において取得した現在のファイルサイズ情報５３１と，記憶されているファイルサイズ情報５３１との比較を行う。これにより，新たに受信したファイルサイズが監視管理情報５３２に記憶された過去のファイルサイズよりも小さいときに，監視対象の仮想マシン３の復元を検知することが可能になる。
【００６３】
具体的に，図１４（Ｂ）の例は，図１４（Ａ）の状態において情報受信部５１１が仮想マシン３２のファイルサイズ情報５３１を新たに受信した状態を示している。復元検知部５１３は，例えば，新たに仮想マシン３２から受信したファイルサイズ情報５３１が示すファイルサイズと，仮想マシン３２に対応して記憶されているファイルサイズとの比較を行う。そして，この場合，新たに仮想マシン３２から受信したファイルサイズ情報５３１が示すファイルサイズ（例えば，５７８２バイト）が，仮想マシン３２に対応して記憶されているファイルサイズ（図１４（Ａ）の例では，５４６２バイト）よりも大きい。そのため，復元検知部５１３は，仮想マシン３２について復元は発生していないものと判定する。そして，情報作成部５１２は，図１４（Ｂ）に示すように，例えば，ＶＭ３２に対応して記憶されたファイルサイズ情報５３１が示すファイルサイズである５７８２バイトを監視管理情報５３２に記憶する。
【００６４】
なお，図１４の例において，監視装置５は，監視対象の各仮想マシン３に関する最新のファイルサイズのみを記憶しているが，過去に受信したファイルサイズも含めて記憶しておくものであってもよい。
【００６５】
図１１に戻り，受信したファイルサイズ情報５３１に基づいて監視管理情報５３２を更新した後（Ｓ２６），監視装置５の監視管理部５１８は，例えば，情報格納領域５３０を参照し，監視管理情報５３１が示す時間だけ待機する（Ｓ２７のＹＥＳ，Ｓ２８）。すなわち，監視管理部５１８は，情報格納領域５３０に記憶された監視頻度情報５３３の内容に基づいて，仮想マシン３の復元の検知を行うように時間の調整を行う。一方，監視対象の仮想マシン３の監視を終了する場合（Ｓ２７のＮＯ），監視装置５は，復元検知処理を終了する。また，図１０のＳ１５において，情報受信部５１１が特定ファイルのファイルサイズ情報５３１を複数回受信していない場合（Ｓ１５のＮＯ），監視管理部５１８は，監視頻度情報５３３が示す時間だけ待機する（Ｓ２８）。
【００６６】
なお，図１０及び図１１の例において，監視装置５のファイル作成部５１６が特定ファイルを作成し，ファイルサイズ情報５３１を受信したときに，その特定ファイルの内容を更新する場合について説明した。これに対し，ファイルサイズが累積して増加する保証があるファイルが仮想マシン３内に存在する場合には，その仮想マシン３内のファイルを特定ファイルとして利用するものであってよい。また，仮想マシン３にインストールされたアプリケーション等によって，仮想マシン３が特定ファイルの更新を行うものであってもよい。この場合，ファイル作成部５１６は，特定ファイルの作成または更新を行う必要がなくなるため，監視を行う際におけるＣＰＵ等の負荷の軽減を行うことが可能になる。
【００６７】
また，特定ファイルは，例えば，仮想マシン３において出力されるログ（例えば，メモリ使用量の情報を含むログ）を蓄積するログファイルであってよい。このログファイルは，監視装置５が監視対象の仮想マシン３からファイルサイズ情報５３１を取得する毎に，新たなログを蓄積しているファイル（ファイルサイズが増加しているファイル）であることが好ましい。さらに，特定ファイルは，例えば，所定の条件を満たしたときに，特定ファイルを構成するファイル数が増加するファイルであってもよい。すなわち，特定ファイルは，複数のファイルから構成されるファイル群であり，例えば，一定の時間が経過する毎（日付が変わる毎等）に，監視対象の仮想マシン３等によって，新たなファイルが作成されるものであってよい。具体的に，特定ファイルは，発生したログを日毎に別ファイルで管理するファイル群等であってよい。この場合，監視装置５は，例えば，特定ファイルのファイルサイズとファイル数の情報とを含むファイルサイズ情報５３１を受信し，このファイル数に基づいて監視対象の仮想マシン３の復元を検知するものであってもよい。
【００６８】
［第２の実施の形態］
次に第２の実施の形態について説明する。図１５及び図１６は，第２の実施の形態における復元検知処理を説明する図である。また，図１７及び図１８は，第２の実施の形態における復元検知処理を示すフローチャート図である。
【００６９】
図１５及び図１６は，監視装置５が受信したファイルサイズ情報５３１が示すファイルサイズの具体例を示す図である。図１５及び図１６において，図８及び図９の例と同様に，横軸は，時間を示しており，縦軸は，特定ファイルのファイルサイズを示している。また，図１５及び図１６の例において，白抜き三角形は，ファイルサイズ情報５３１を受信した時間と，受信したファイルサイズ情報５３１が示すファイルサイズとが対応する点を示している。
【００７０】
図１５に示す例は，時間経過に比例して累積してファイルサイズが一定の割合で増加する特定ファイルの例である。この特定ファイルは，例えば，図１２において説明した定期的にタイムスタンプを記憶する特定ファイルが該当する。
【００７１】
そして，図１６に示す例は，図１５の状態から次のファイルサイズ情報５３１を受信した場合の例である。図１６に示す例において，新たに受信したファイルサイズ情報５３１が示すファイルサイズは，過去に受信したファイルサイズ情報５３１が示すファイルサイズよりも大きい値である。しかし，図１６において，時間が１分から４分の間に受信したファイルサイズの増加率が毎分約２０バイトであるのに対し，時間が４分から５分の間に受信したファイルサイズの増加率は，毎分約１０バイトに減少している。そのため，この場合，監視装置５は，仮想マシン３の復元が発生した可能性があると判断することができる。
【００７２】
すなわち，第２の実施の形態においては，第１の実施の形態と異なり，ファイルサイズが一定の割合で増加する特定ファイルについて，ファイルサイズの増加率を比較することによって，監視対象の仮想マシン３の復元を検知する。具体的に，監視装置５は，例えば，第１の時間における特定ファイルの第１ファイルサイズ情報と，第１の時間よりも第２の時間における特定ファイルの第２ファイルサイズ情報とに基づき，第１の時間と第２の時間との間における特定ファイルのファイルサイズの増加率（以下，第１増加率とも称する）を算出する。さらに，監視装置５は，第２ファイルサイズと，第２の時間よりも後の時間（以下，第３の時間とも称する）における特定ファイルの第３ファイルサイズ情報とに基づき，第２の時間と第３の時間との間における特定ファイルのファイルサイズの増加率（以下，第２増加率とも称する）を算出する。そして，監視装置５は，第１増加率よりも第２増加率が小さい場合，監視対象の仮想マシン３に復元が発生したものと判定する。以下，特定ファイルのファイルサイズが一定の割合で増加する場合の復元検知処理の詳細について説明する。
【００７３】
初めに，図１７に示すように，情報受信部５１１は，例えば，第１の実施の形態と同様に，管理サーバ１等から監視開始指示を受信するまで待機する（Ｓ３１）。そして，監視開始指示を受信した場合（Ｓ３１のＹＥＳ），ファイル作成部５１６は，例えば，特定ファイルを作成して監視対象の仮想マシン３（監視開始指示を受信した仮想マシン３）に配置する（Ｓ３２）。
【００７４】
次に，情報作成部５１２は，例えば，情報格納領域５３０において特定ファイルのファイルサイズ情報５３１を記憶するための記憶領域を確保する（Ｓ３３）。その後，情報受信部５１１は，例えば，監視対象の仮想マシン３にアクセスし，特定ファイルのファイルサイズ情報５３１を取得する（Ｓ３４）。
【００７５】
そして，情報作成部５１２は，第１の実施の形態と異なり，特定ファイルのファイルサイズの現在の増加率（単位時間あたりの増加率）を算出する（Ｓ３５）。具体的に，情報作成部５１２は，例えば，Ｓ３４において取得したファイルサイズから，情報格納領域５３０に記憶された監視管理情報５３２に含まれるファイルサイズを取得して減算する。さらに，情報作成部５１２は，例えば，減算して算出した値を，監視頻度情報５３３が示す時間（ファイルサイズの受信間隔）で除算することにより，単位時間あたりの増加率を算出するものであってよい。
【００７６】
次に，情報作成部５１２は，過去の増加率が既に情報格納領域５３０に記憶されている場合（Ｓ３６のＹＥＳ），復元検知部５１３は，現在の増加率と過去の増加率の比較を行う（Ｓ４１）。すなわち，特定ファイルのファイルサイズの増加率に基づいて仮想マシン３の復元を検出するためには，Ｓ３５において算出した増加率と比較する過去の増加率が既に記憶されている必要がある。そのため，監視装置５は，ファイルサイズの過去の増加率が記憶されていない場合には，仮想マシン３の検知を行わずに，情報受信部５１１が次のファイルサイズ情報５３１を受信するまで待機する（図１８のＳ４９）。
【００７７】
そして，図１８に示すように，現在の増加率と過去の増加率との比較を行った結果，これらの増加率が一致する場合（Ｓ４１のＹＥＳ），ファイル作成部５１６は，例えば，監視対象の仮想マシン３における特定ファイルの更新を行う（Ｓ４５）。そして，情報作成部５１２は，例えば，情報格納領域５３０に記憶された監視管理情報５３２を更新する（Ｓ４６，Ｓ４７）。
【００７８】
図１９は，第２の実施の形態における監視管理情報５３２の具体例を示す図である。図１９の例における監視管理情報５３２は，監視対象の仮想マシン３を識別するための識別情報と，その仮想マシン３に配置された特定ファイルの最新のファイルサイズと，その特定ファイルのファイルサイズの増加率とを対応付けて記憶している。具体的に，図１９（Ａ）においては，監視装置５が４台の仮想マシン３（ＶＭ３１，３２，３３，３４）のファイルサイズ情報５３１の監視を行っている場合の例である。そして，図１９（Ａ）の例においては，仮想マシン３の最新のファイルサイズは，それぞれ１７３６４バイト，５４６２バイト，４５２１５バイト，２３１３バイトである。また，図１９（Ａ）の例において，各仮想マシン３の特定ファイルのファイルサイズの増加率は，全て毎分１６０バイトである。なお，図１９の例においては，各仮想マシン３の特定ファイルは，１分毎に更新されるものとする。また，図１９の例において，監視装置５は，各仮想マシン３から２分毎にファイルサイズ情報５３１を受信するものとする。
【００７９】
図１９において，例えば，情報受信部５１１がＶＭ３２からファイルサイズ情報５３１を取得した場合（Ｓ３４），情報作成部５１２は，ＶＭ３２における特定ファイルのファイルサイズの増加率を算出する（Ｓ３５）。具体的に，情報作成部５１２は，図１９（Ａ）に示す監視管理情報５３２を参照して，ＶＭ３２の特定ファイルのファイルサイズとして記憶されている５４６２バイトを取得する。そして，Ｓ３４において取得したファイルサイズ（図１９の例においては，５７８２バイト）から監視管理情報５３２から取得したファイルサイズ（５４６２バイト）を減算して，監視装置５のファイルサイズ情報５３１の受信間隔（図１９の例においては２分）で除算する。そして，情報作成部５１２は，新たな増加率として毎分１６０バイトを取得する（Ｓ３５）。
【００８０】
次に，復元検知部５１３は，例えば，ＶＭ３２の増加率として監視管理情報５３２に含まれる過去の増加率である毎分１６０バイトを取得する。そして，Ｓ３５において算出した新たな増加率と，監視管理情報５３２に含まれる過去の増加率との比較を行う（Ｓ３６）。図１９（Ａ）の例においては，新たな増加率と過去の増加率はともに毎分１６０バイトであるため，これらは一致している。そのため，復元検知部５１３は，監視対象の仮想マシン３に復元が発生していないものと判定する（Ｓ３６のＹＥＳ）。一方，新たな増加率と過去の増加率とが一致しない場合，復元検知部５１３は，監視対象の仮想マシン３に復元が発生したものと判定する（Ｓ３６のＮＯ）。
【００８１】
そして，図１９（Ｂ）に示すように，情報作成部５１２は，例えば，ＶＭ３２の識別情報に対応付けて，Ｓ３４で取得したファイルサイズ（５７８２バイト），及びＳ３５で取得した新たな増加率（毎分１６０バイト）の情報を監視管理情報５３２に記憶する。
【００８２】
このように，第２の実施の形態によれば，監視装置５は，ファイルサイズが一定の割合で増加する特定ファイルに基づいて監視を行う場合において，特定ファイルのファイルサイズの増加率を管理する。そして，監視装置５は，新たに算出した増加率が過去に算出した増加率よりも小さいときに，監視対象の仮想マシン３において復元が発生したものと判定する。これにより，監視装置５は，受信したファイルサイズが過去に受信したファイルサイズよりも大きい場合において発生している仮想マシン３の復元についても検知することが可能になる。
【００８３】
［第３の実施の形態］
次に第３の実施の形態について説明する。図２０及び図２１は，第３の実施の形態における復元検知処理を示すフローチャート図である。
【００８４】
監視装置５が特定ファイルの更新を行う場合，監視装置５は，例えば，仮想マシン３の復元の実行有無の確認を行った後に，特定ファイルの更新を行うように処理タイミングを制御することができる。そこで，第３の実施の形態においては，監視装置５が特定ファイルの更新を行う場合において，復元検知部５１３は，情報格納領域５３０に記憶した監視管理情報５３２に含まれるファイルサイズと，監視対象の仮想マシン３から再度取得したファイルサイズとを比較することにより，仮想マシン３の復元の検知を行う。すなわち，情報格納領域５３０に記憶したファイルサイズは，監視対象の仮想マシン３から受信した特定ファイルのファイルサイズであり，次のファイルサイズ情報５３１を受信するまでは変更されることはない。また，監視対象の仮想マシン３から再度取得したファイルサイズも，監視装置５によって特定ファイルの更新が行われるまで変更されることはない。しかし，監視対象の仮想マシン３から再度取得したファイルサイズは，仮想マシン３の復元が発生した場合に限り減少する可能性がある。そのため，監視装置５は，情報格納領域５３０に記憶したファイルサイズと，仮想マシン３から再度取得したファイルサイズとの比較を行う。そして，監視装置５は，これらのファイルサイズが一致しないことを検知した場合に，仮想マシン３の復元が発生したと判定する。以下，監視管理情報５３２に含まれるファイルサイズと，仮想マシン３から再度取得したファイルサイズとを比較する場合の復元検知処理の詳細について説明する。
【００８５】
初めに，図２０に示すように，情報受信部５１１は，例えば，図１０に示す場合と同様に，管理サーバ１等から監視開始指示を受信するまで待機する（Ｓ５１）。そして，監視開始指示を受信した場合（Ｓ５１のＹＥＳ），ファイル作成部５１６は，例えば，特定ファイルを作成して監視対象の仮想マシン３（監視開始指示を受信した仮想マシン３）に配置する（Ｓ５２）。
【００８６】
次に，情報作成部５１２は，例えば，情報格納領域５３０において特定ファイルのファイルサイズ情報５３１を記憶するための記憶領域を確保する（Ｓ５３）。その後，情報受信部５１１は，例えば，監視対象の仮想マシン３にアクセスし，特定ファイルのファイルサイズ情報５３１を取得する（Ｓ５４）。
【００８７】
そして，情報作成部５１２は，第１の実施の形態と異なり，Ｓ５４において取得した現在のファイルサイズと，情報格納領域５３０に記憶されているファイルサイズとの比較を行う（Ｓ６１）。そして，これらのファイルサイズが一致した場合（Ｓ６１のＹＥＳ），ファイル作成部５１６は，例えば，監視対象の仮想マシン３における特定ファイルの更新を行う（Ｓ６５）。そして，情報作成部５１２は，例えば，受信したファイルサイズ情報５３１に基づき，情報格納領域５３０に記憶された監視管理情報５３２を更新する（Ｓ６６）。その他の処理の内容は，第１の実施の形態において説明した内容と同様であるため，説明を省略する。
【００８８】
このように，第３の実施の形態によれば，監視装置５が特定ファイルの更新を行う場合において，監視装置５は，情報格納領域５３０に記憶した監視管理情報５３２に含まれるファイルサイズと，監視対象の仮想マシン３から再度取得したファイルサイズとを比較する。そして，これらのファイルサイズが一致しない場合に，監視対象の仮想マシン３において復元が発生したものと判定する。これにより，監視装置５は，比較するファイルサイズが一致するか否かを確認するだけで仮想マシン３の復元の検知ができる。そのため，より容易に仮想マシン３の復元の検知を行うことができる。
【００８９】
［第４の実施の形態］
次に第４の実施の形態について説明する。図２２は，第４の実施の形態における復元検知処理を説明する図である。また，図２３から図２５は，第４の実施の形態における復元検知処理を示すフローチャート図である。
【００９０】
第４の実施の形態においては，第１の実施の形態等と異なり，図２２に示すように，監視対象の仮想マシン３に監視ソフトウエア５１をインストールしている。この監視ソフトウエア５１は，監視装置５が行う復元検知処理の一部を実行するものである。監視装置５は，監視ソフトウエア５１を用いて仮想マシン３の監視を行うことにより，例えば，監視対象の仮想マシンの数が多い場合等に，監視装置５の処理負担を軽減することが可能になる。
【００９１】
第４の実施の形態において，監視装置５は，例えば，情報受信部５１１と，情報作成部５１２と，情報送信部５１９との機能を担う。そして，監視ソフトウエア５１は，監視対象の仮想マシン３のＣＰＵ等のリソースを使用することにより，例えば，図５に示す復元検知部５１３と，ファイル参照部５１４と，復元解析部５１５と，ファイル作成部５１６と，復元検知部５１７と，監視管理部５１８との機能を担う。また，第４の実施の形態において，監視ソフトウエア５１は，監視装置５とファイルサイズ情報５３１の送受信を行うための情報受信部（図示しない）と，情報送信部（図示しない）とを有しているものとする。以下，第４の実施の形態における復元検知処理の詳細について説明する。なお，以下の説明において，第３の実施の形態において説明した復元検知処理によって，監視装置５が仮想マシン３の復元を検知する場合について説明する。
【００９２】
初めに，監視装置５において実行される復元検知処理について説明する。図２３に示すように，情報受信部５１１は，例えば，管理サーバ１等から監視開始指示を受信するまで待機する（Ｓ７１）。そして，監視開始指示を受信した場合（Ｓ７１のＹＥＳ），情報作成部５１２は，例えば，情報格納領域５３０において特定ファイルのファイルサイズ情報５３１を記憶するための記憶領域を確保する（Ｓ７２）。さらに，情報作成部５１２は，例えば，ファイルサイズ情報５３１を記憶するための領域に，監視を開始する仮想マシン３と対応付けて０バイトを記憶する（Ｓ７２）。すなわち，図２３及び図２４の例において，監視ソフトウエア５１は，後述するように，監視開始指示を受信したときに特定ファイルを作成する（Ｓ８１のＹＥＳ，Ｓ８２）。そのため，監視装置５は，Ｓ７２において，監視対象の仮想マシン３と対応して特定ファイルのファイルサイズの初期値である０バイトを記憶する。そして，情報送信部５１９は，監視対象の仮想マシン３に，その仮想マシン３と対応して記憶されているファイルサイズをファイルサイズ情報５３１として監視ソフトウエア５１に記憶する（Ｓ７４）。
【００９３】
次に，情報受信部５１１は，更新された特定ファイルのファイルサイズを示すファイルサイズ情報５３１を，監視ソフトウエア５１から受信するまで待機する（Ｓ７５）。そして，ファイルサイズ情報５３１を受信した場合（Ｓ７６），情報作成部５１２は，例えば，受信したファイルサイズ情報５３１に基づき，情報格納領域５３０に記憶された監視管理情報５３２を更新する（Ｓ７６）。すなわち，第４の実施の形態においては，仮想マシン３の復元の検知や解析は監視ソフトウエア５１が行う。そのため，監視装置５は，例えば，監視ソフトウエア５１から受信したファイルサイズの記憶等の処理を行う。
【００９４】
次に，監視ソフトウエア５１において実行される復元検知処理について説明する。図２４に示すように，監視ソフトウエア５１の情報受信部は，例えば，管理サーバ１等から監視開始指示を受信するまで待機する（Ｓ８１）。そして，監視開始指示を受信した場合（Ｓ８１のＹＥＳ），ファイル作成部５１６は，例えば，特定ファイルを作成して監視対象の仮想マシン３（監視開始指示を受信した仮想マシン３）に配置する（Ｓ８２）。
【００９５】
次に，監視ソフトウエア５１の情報受信部が監視装置５からファイルサイズ情報を受信した場合（Ｓ８３のＹＥＳ），情報受信部５１１は，例えば，特定ファイルのファイルサイズ情報５３１を取得する（Ｓ８４）。
【００９６】
そして，図２４に示すように，情報作成部５１２は，Ｓ８４において取得した現在のファイルサイズと，情報格納領域５３０に記憶されているファイルサイズとの比較を行う（Ｓ９１）。その結果，これらのファイルサイズが一致した場合（Ｓ９１のＹＥＳ），ファイル作成部５１６は，例えば，特定ファイルの更新を行う（Ｓ９５）。そして，情報作成部５１２は，例えば，受信したファイルサイズ情報に基づき，情報格納領域５３０に記憶された監視管理情報５３２を更新する（Ｓ９６）。さらに，監視ソフトウエア５１の情報送信部は，例えば，特定ファイルの更新後におけるファイルサイズを示すファイルサイズ情報５３１に送信する（Ｓ９７）。その他の処理の内容は，第１の実施の形態において説明した内容と同様であるため，説明を省略する。
【００９７】
このように，第４の実施の形態によれば，復元検知処理を行うための処理の一部を，監視対象の仮想マシン３にインストールされた監視ソフトウエア５１によって行う。これにより，監視装置５は，復元検知処理の実行に伴う処理負担を，各仮想マシン３に分散することが可能になる。そのため，監視装置５の処理負担を軽減することが可能になる。
【００９８】
以上の実施の形態をまとめると，以下の付記のとおりである。
【００９９】
（付記１）
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信し，
前記受信したファイルサイズ情報に基づき，前記仮想マシンの復元を検知する
復元検知方法。
【０１００】
（付記２）
付記１において，
前記ファイルサイズ情報は，第１の時間における前記特定ファイルのファイルサイズを示す第１ファイルサイズ情報と，前記第１の時間より後の第２の時間における前記特定ファイルのファイルサイズを示す第２ファイルサイズ情報とを含み，
前記検知では，前記第１ファイルサイズ情報と前記第２ファイルサイズ情報とに基づき，前記仮想マシンの復元を検知する復元検知方法。
【０１０１】
（付記３）
付記２において，
前記検知では，前記第２ファイルサイズ情報が前記第１ファイルサイズ情報より小さい場合，前記復元が発生したと判定する復元検知方法。
【０１０２】
（付記４）
付記２において，
前記特定ファイルは，時間経過に伴い一定の割合でファイルサイズが増加するファイルであり，
前記受信では，さらに，前記第２の時間より後の第３の時間における前記特定ファイルのファイルサイズを示す第３ファイルサイズ情報を受信し，
前記検知では，前記第１及び第２ファイルサイズ情報に基づく前記第１の時間と前記第２の時間との間における前記ファイルサイズの第１増加率よりも，前記第２及び第３ファイルサイズ情報に基づく前記第２の時間と前記第３の時間との間における前記ファイルサイズの第２増加率が小さい場合，前記復元が発生したと判定する復元検知方法。
【０１０３】
（付記５）
付記２において，
前記第２の時間は，前記第１の時間の後，前記特定ファイルのファイルサイズが増加する前の時間であり，
前記検知では，前記第１ファイルサイズ情報と前記第２ファイルサイズ情報とが一致しないときに，前記復元が発生したと判定する復元検知方法。
【０１０４】
（付記６）
付記１乃至５において，
前記特定ファイルは，所定の時間毎にタイムスタンプを記憶するファイルであり，
前記検知では，前記復元が発生したと判定した際に，さらに，前記特定ファイルに記憶された第１タイムスタンプが示す時間と，該第１タイムスタンプの次に前記特定ファイルに記憶された第２タイムスタンプが示す時間との時間差を算出し，該時間差のうち前記所定の時間よりも大きいものが存在する場合，前記第１タイムスタンプが示す時間から前記所定の時間が経過するまでの間に，前記仮想マシンの復元先の時間が含まれると判定する復元検知方法。
【０１０５】
（付記７）
付記１において，
前記特定ファイルは，前記仮想マシンにおいて出力されるログを蓄積するログファイルである復元検知方法。
【０１０６】
（付記８）
付記１において，
特定ファイルは，所定の条件で該特定ファイルを構成するファイル数が増加するファイルであり，
前記ファイルサイズ情報は，前記ファイル数を含む復元検知方法。
【０１０７】
（付記９）
付記１において，
前記検知では，第３の時間における前記特定ファイルのファイルサイズを示す第３のファイルサイズ情報と，前記受信した，前記第３の時間とは異なる第４の時間におけるファイルサイズを示す第４のファイルサイズ情報とに基づき，前記仮想マシンの復元を検知する復元検知方法。
【０１０８】
（付記１０）
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信する受信部と，
前記受信したファイルサイズ情報に基づき，前記仮想マシンの復元を検知する検知部と，を有する
復元検知装置。
【０１０９】
（付記１１）
監視対象の仮想マシンから，ファイルサイズが累積して増加する特定ファイルのファイルサイズを示すファイルサイズ情報を受信し，
前記受信したファイルサイズ情報に基づき，前記仮想マシンの復元を検知する
処理をコンピュータに実行させる復元検知プログラム。
【符号の説明】
【０１１０】
１：管理サーバ              ２：ＶＭホスト
３：仮想マシン              ４：仮想化ソフトウエア
５：監視装置                ８：利用者端末
【図１】
0006337631.tif 000002
【図２】
0006337631.tif 000003
【図３】
0006337631.tif 000004
【図４】
0006337631.tif 000005
【図５】
0006337631.tif 000006
【図６】
0006337631.tif 000007
【図７】
0006337631.tif 000008
【図８】
0006337631.tif 000009
【図９】
0006337631.tif 000010
【図１０】
0006337631.tif 000011
【図１１】
0006337631.tif 000012
【図１２】
0006337631.tif 000013
【図１３】
0006337631.tif 000014
【図１４】
0006337631.tif 000015
【図１５】
0006337631.tif 000016
【図１６】
0006337631.tif 000017
【図１７】
0006337631.tif 000018
【図１８】
0006337631.tif 000019
【図１９】
0006337631.tif 000020
【図２０】
0006337631.tif 000021
【図２１】
0006337631.tif 000022
【図２２】
0006337631.tif 000023
【図２３】
0006337631.tif 000024
【図２４】
0006337631.tif 000025
【図２５】
0006337631.tif 000026