(57)【要約】  サーバ装置（１０）は、仮想化制御部（１３）と、記憶部（１４）と、転送部（１５）とを有する。仮想化制御部（１３）は、コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置（１２）との間で仮想マシンのマイグレーションを制御する。記憶部（１４）は、仮想マシンに対応させて、該仮想マシンが生成するログを記憶する。転送部（１５）は、仮想マシンを他のサーバ装置（１２）へマイグレーションする場合、記憶部（１４）に記憶されたマイグレーション対象の仮想マシンのログを該他のサーバ装置（１２）へ転送する。
2013042268.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置との間で前記仮想マシンのマイグレーションを制御する仮想化制御部と、
前記仮想マシンに対応させて、該仮想マシンが生成するログを記憶する記憶部と、
前記仮想マシンを他のサーバ装置へマイグレーションする場合、前記記憶部に記憶されたマイグレーション対象の仮想マシンのログを該他のサーバ装置へ転送する転送部と、
を有することを特徴とするサーバ装置。
【請求項２】
前記仮想マシンを他のサーバ装置へマイグレーションする場合、前記記憶部に記憶されたマイグレーション対象の仮想マシンのログのファイル名を新しいログから昇順に番号を付加した名前に変更する変更部をさらに有し、
前記ログ転送部は、前記変更部によりファイル名が変更された前記マイグレーションする仮想マシンのログを前記他のサーバ装置へ転送する
ことを特徴とする請求項１に記載のサーバ装置。
【請求項３】
記憶部と、
コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置との間で前記仮想マシンのマイグレーションを制御する仮想化制御部と、
他のサーバ装置から仮想マシンのマイグレーションに伴って受信したログを前記記憶部へ格納する格納部と、
を有することを特徴とするサーバ装置。
【請求項４】
前記格納部は、前記記憶部に格納したマイグレーションされた仮想マシンのログの後に該仮想マシンが生成するログを結合して前記記憶部へ格納する
ことを特徴とする請求項３に記載のサーバ装置。
【請求項５】
コンピュータを仮想化した仮想マシンを他のサーバ装置へマイグレーションする場合、前記仮想マシンに対応させて記憶部に記憶した、該仮想マシンが生成したログを該他のサーバ装置へ転送する
処理をコンピュータに実行させることを特徴とするログ転送プログラム。
【請求項６】
コンピュータを仮想化した仮想マシンを他のサーバ装置へマイグレーションする場合、前記仮想マシンに対応させて記憶部に記憶した、該仮想マシンが生成したログを該他のサーバ装置へ転送し、
他のサーバ装置から仮想マシンのマイグレーションに伴って転送されたログを前記記憶部へ格納する
各処理を実行することを特徴とするログ転送方法。
【請求項７】
第１サーバ装置から第２サーバ装置への仮想マシンのマイグレーションに伴って該仮想マシンのログが移動していない場合、前記第１サーバ装置の状態を監視する監視部と、
前記監視部による監視の結果、前記第１サーバ装置が起動状態である場合、前記第１サーバ装置へログの移動指示を送信する送信部と
を有する監視サーバ装置と、
前記第２サーバ装置へマイグレーションした仮想マシンが生成したログを記憶する第１記憶部と、
前記移動指示を受信した場合、前記第１記憶部に記憶された、前記第２サーバ装置へマイグレーションした仮想マシンのログを前記第２サーバ装置へ転送する転送部と
を有する第１サーバ装置と、
前記第１サーバからマイグレーションされた仮想マシンが生成したログを記憶する第２記憶部と、
前記転送部により転送されたログを前記第２記憶部へ格納する格納部と
を有する第２サーバ装置と、
を備えたことを特徴とするログ転送システム。
【請求項８】
監視サーバ装置が、
第１サーバ装置から第２サーバ装置への仮想マシンのマイグレーションに伴って該仮想マシンのログが移動していない場合、前記第１サーバ装置の状態を監視し、
監視の結果、前記第１サーバ装置が起動状態である場合、前記第１サーバ装置へログの移動指示を送信し、
第１サーバ装置が、
前記移動指示を受信した場合、第１記憶部に記憶された、前記第２サーバ装置へマイグレーションした仮想マシンが生成したログを前記第２サーバ装置へ転送し、
第２サーバ装置が、
前記第１サーバからマイグレーションされた仮想マシンが生成したログを記憶する第２記憶部に転送されたログを格納する
ことを特徴とするログ転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバ装置、ログ転送プログラム、ログ転送方法およびログ転送システムに関する。
【背景技術】
【０００２】
近年、物理サーバ上で、仮想マシン（Virtual  Machine）を動作させる仮想化技術が利用されている。例えば、各企業では、仮想化ソフトウエアを利用して物理サーバ上で仮想マシンを動作させる環境が増加している。また、インターネット上のパブリッククラウド環境や企業内のプライベートクラウド環境においても、コンピュータリソースを有効活用するために、仮想化ソフトウエアが基盤要素技術として利用されている。仮想化ソフトウエアは、仮想化ソフトウエアが動作する物理サーバに何らかの異常または異常の兆候がある場合に、物理サーバ上で動作する仮想マシンを他の物理サーバ上へ移動する機能がある。かかる移動は「マイグレーション」とも称される。【０００３】
ところで、仮想マシンのログは、動作する物理サーバ上に記憶されるため、仮想マシンが複数の物理サーバを移動した場合、複数の物理サーバに分散して記憶される。このため、仮想マシンに何らかの不具合が生じた場合、仮想マシンを管理する管理者は、仮想マシンの移動履歴をたどって、複数の物理サーバに散らばった仮想マシンのログを調査する必要がある。【０００４】
そこで、複数の物理サーバに分散して記憶されたログファイルへリンクを張り、管理端末の画面からリンクをクリックすることで物理サーバのログファイルを参照可能とする技術が提案されている。【０００５】
また、仮想マシンを他の物理サーバに移動させる変更が生じた場合、移動元の物理サーバから管理サーバへログ情報を移動させて集約する技術が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−２７７５９５号公報
【特許文献２】特開２０１１−８４８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の技術では、仮想マシンのログが複数のサーバに分散して記憶されるため、仮想マシンのログの調査作業が煩雑になる場合がある。【０００８】
例えば、ログファイルへリンクを張る技術では、物理サーバのネットワーク上での位置が変更された場合や、物理サーバ内でのログファイルの記憶位置が変更された場合、ログファイルを参照できなくなる。また、ログファイルへリンクを張る技術では、仮想マシンに不具合が生じた時に、過去に移動したことがある物理サーバが故障やすでに存在しない場合に過去をさかのぼってのログの調査が行えない。【０００９】
また、仮想マシンを他の物理サーバに移動させる際にログ情報を管理サーバへ収集する技術では、仮想マシンが動作中の物理サーバと管理サーバにログ情報が分散して記憶される。【００１０】
１つの側面では、仮想マシンのログの調査を容易に行うことができるサーバ装置、ログ転送プログラム、ログ転送方法およびログ転送システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
第１の案では、サーバ装置は、コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置との間で前記仮想マシンのマイグレーションを制御する仮想化制御部を有する。サーバ装置は、前記仮想マシンに対応させて、該仮想マシンが生成するログを記憶する記憶部を有する。サーバ装置は、前記仮想マシンを他のサーバ装置へマイグレーションする場合、前記記憶部に記憶されたマイグレーション対象の仮想マシンのログを該他のサーバ装置へ転送する転送部を有する。
【発明の効果】
【００１２】
仮想マシンのログの調査を容易に行うことができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、サーバ装置を含むシステムの全体構成を示す図である。
【図２】図２は、実施例２に係るシステムの機能的な構成の一例を示す図である。
【図３】図３は、記憶部に記憶されたログのデータ構成の一例を示す図である。
【図４】図４は、転送されるログのデータ構成の一例を示す図である。
【図５】図５は、転送されたログと記憶部に既に存在するログを結合した結果の一例を示す図である。
【図６】図６は、ログ転送処理の手順を示すフローチャートである。
【図７】図７は、ログ格納処理の手順を示すフローチャートである。
【図８】図８は、実施例３に係るシステムの機能的な構成の一例を示す図である。
【図９】図９は、ログのファイル名の変更を説明する図である。
【図１０】図１０は、ログ転送処理の手順を示すフローチャートである。
【図１１】図１１は、実施例４に係るシステムの機能的な構成の一例を示す図である。
【図１２】図１２は、ログ未転送を通知する通信データのデータ構成の一例を示す図である。
【図１３】図１３は、第１テーブルのデータ構成の一例を示す図である。
【図１４】図１４は、第２テーブルのデータ構成の一例を示す図である。
【図１５】図１５は、移動指示する通信データのデータ構成の一例を示す図である。
【図１６】図１６は、マイグレーション処理の手順を示すフローチャートである。
【図１７】図１７は、監視処理の手順を示すフローチャートである。
【図１８】図１８は、参照処理の手順を示すフローチャートである。
【図１９】図１９は、ログ転送プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１４】
以下に、本発明にかかるサーバ装置、ログ転送プログラム、ログ転送方法およびログ転送システムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１５】
実施例１に係るサーバ装置１０について説明する。図１は、サーバ装置を含むシステムの全体構成を示す図である。サーバ装置１０は、コンピュータを仮想化した仮想マシンを動作させて、ユーザに対して各種のサービスを提供する物理サーバであり、例えば、データセンサや各企業に設けられたサーバコンピュータである。サーバ装置１０は、ネットワーク１１を介して他のサーバ装置１２と互いに通信可能とする。サーバ装置１２も、仮想マシンを動作させることが可能とする。サーバ装置１０とサーバ装置１２は、ネットワーク１１を介して互いに仮想マシンのマイグレーションを行うことが可能とする。かかるネットワーク１１の一態様としては、有線または無線を問わず、インターネット（Internet）、ＬＡＮ（Local  Area  Network）やＶＰＮ（Virtual  Private  Network）などの任意の通信網が挙げられる。【００１６】
図１に示すように、サーバ装置１０は、仮想化制御部１３と、記憶部１４と、転送部１５とを有する。【００１７】
仮想化制御部１３は、コンピュータを仮想化した仮想マシンを動作させる。例えば、仮想化制御部１３は、仮想化技術により仮想マシンを動作させる仮想環境を実現しており、コンピュータを仮想化した仮想マシンを動作させる制御を行う。この仮想化技術としては、例えば、ハードウェアの機能により論理的に分割するＬＰＡＲ（Logical  PARtitioning）やソフトウェアにより論理的に分割する仮想化ソフトウエアなどがある。また、仮想化制御部１３は、サーバ装置１２との間で仮想マシンのマイグレーションの制御を行う。仮想マシンは、仮想環境においてアプリケーションやファームウェアなどのプログラムの処理を実行し、実行した処理に関するログを生成する。【００１８】
記憶部１４は、各種情報を記憶する。例えば、記憶部１４は、仮想マシンに対応させて、仮想マシンが生成するログを記憶する。このログは、それぞれの仮想マシンが実行した処理の履歴を示すものである。例えば、ログは、処理を実行した日時や、処理内容、処理の実行結果などの情報がログのファイルに追加書き込みで記憶されたものである。記憶部１４のデバイスの一例としては、フラッシュメモリやＮＶＳＲＡＭ(Non  Volatile  Static  Random  Access  Memory)などのデータを書き換え可能な半導体メモリや、ハードディスク、光ディスクなどの記憶装置が挙げられる。【００１９】
転送部１５は、仮想マシンをサーバ装置１２へマイグレーションする場合、仮想マシンに関する各種情報を転送する。例えば、転送部１５は、記憶部１４に記憶されたマイグレーション対象の仮想マシンのログをサーバ装置１２へ転送する。転送されたログは、サーバ装置１２で記憶される。なお、図１の例では、機能的な構成を示したため、仮想化制御部１３、転送部１５を別に分けているが、例えば、１つのデバイスで構成してもよい。デバイスの一例としては、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路が挙げられる。なお、デバイスとして、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路を採用することもできる。【００２０】
このように、サーバ装置１０は、仮想マシンを動作させており、仮想マシンに対応させて、該仮想マシンが生成するログを記憶部１４に記憶する。また、サーバ装置１０は、仮想マシンを他のサーバ装置１２へマイグレーションする場合、記憶部に記憶されたマイグレーション対象の仮想マシンのログを他のサーバ装置１２へ転送する。これにより、仮想マシンを実行する物理サーバに、マイグレーション前の物理サーバで該仮想マシンを実行した処理のログも移動する。この結果、仮想マシンのログの調査を行う際に、マイグレーション前の物理サーバなど他のサーバまで調査する手間も省ける。したがって、サーバ装置１０によれば、仮想マシンのログの調査を容易に行うことができる。【００２１】
また、サーバ装置１０によれば、仮想マシンのマイグレーションに伴って該仮想マシンのログが移動するため、ログを管理サーバなどに集約する場合と比較して、管理サーバへの負荷集中が軽減される。
【実施例２】
【００２２】
実施例２について説明する。実施例２では、複数のサーバ装置の間で仮想マシンであるＶＭゲストのマイグレーションが可能とされたシステム２０について説明する。図２は、実施例２に係るシステムの機能的な構成の一例を示す図である。システム２０は、複数のサーバ装置３０と、管理サーバ４０とを有する。各サーバ装置３０と管理サーバ４０との間は、ネットワーク２１を介して通信可能に接続される。かかるネットワーク２１の一態様としては、有線または無線を問わず、インターネット、ＬＡＮやＶＰＮなどの任意の通信網が挙げられる。【００２３】
サーバ装置３０は、仮想マシンであるＶＭゲスト３７を動作させることが可能とされた機器であり、他のサーバ装置３０との間でＶＭゲスト３７のマイグレーションを行う。管理サーバ４０は、各サーバ装置３０で動作するＶＭゲスト３７を管理しており、各サーバ装置３０へ仮想マシンのマイグレーション指示を送信する。このマイグレーション指示には、移動対象とするＶＭゲスト３７に関する情報や移動元、移動先を示す情報などの情報が含まれる。なお、図２の例では、サーバ装置３０を２つ図示したが、サーバ装置３０が３つ以上であってもよい。また、図２の例では、管理サーバ４０を１つ図示したが、管理サーバ４０が２つ以上であってもよい。【００２４】
（サーバ装置の構成）
図２に示すように、サーバ装置３０は、通信制御Ｉ／Ｆ部３１と、記憶部３２と、制御部３３とを有する。【００２５】
通信制御Ｉ／Ｆ部３１は、少なくとも１つのポートを有し、他の装置との通信を制御するインタフェースである。例えば、通信制御Ｉ／Ｆ部３１は、管理サーバ４０からマイグレーション指示を受信して、制御部３３に出力する。また、通信制御Ｉ／Ｆ部３１は、他のサーバ装置３０および管理サーバ４０との間でＶＭゲスト３７に関する情報など各種情報を送受信する。【００２６】
記憶部３２は、各種情報を記憶する。例えば、記憶部３２は、後述するハイパーバイザ３４によるＶＭゲスト３７の各種制御に必要な各種情報や、ＶＭゲスト３７毎に仮想マシンが生成するログを記憶する。このログは、それぞれＶＭゲスト３７が実行した処理の履歴を示しており、例えば、実行した処理に関する情報がファイルに追加書き込みで記憶されたものである。各ＶＭゲスト３７は、それぞれ他と重複しないように名前が定められる。本実施例では、例えば、ログは、ＶＭゲスト３７ごとにファイルを分けており、ファイル名を”ＶＭゲスト名”＋”.log”とする。記憶部３２のデバイスの一例としては、フラッシュメモリやＮＶＳＲＡＭなどのデータを書き換え可能な半導体メモリや、ハードディスク、光ディスクなどの記憶装置が挙げられる。【００２７】
図３は、記憶部に記憶されたログのデータ構成の一例を示す図である。図３に示すように、ログは、タイムスタンプ、物理サーバ名、ログ内容の各項目を有する。タイムスタンプの項目は、処理を実行した実行日時を記憶する領域である。物理サーバ名の項目は、ＶＭゲスト３７が動作するサーバ装置３０のコンピュータ名を記憶する領域である。ログ内容の項目は、実行した処理内容を示す情報を記憶する領域である。ログ内容の項目に示した「Memory  error」は、メモリにエラーが発生したことを示す。また、「Start  failed」は、ＶＭゲスト３７の起動に失敗したことを示す。「Stop  failed」は、ＶＭゲスト３７の停止に失敗したことを示す。「Internal  error」は、ＶＭゲスト３７の処理で内部異常が発生したことを示す。「Cpu  error」は、ＣＰＵに異常が発生したことを示す。なお、物理サーバ名の項目は、コンピュータ名ではなく、例えば、ＩＰ（Internet  Protocol）アドレスやＭＡＣ（Media  Access  Control）アドレスなどを記憶させてもよい。【００２８】
図３の例では、タイムスタンプが「2010／12／11  12：31：42」のレコードは、ＶＭゲスト３７が「Vmhost1」というコンピュータ名のサーバ装置３０で動作しており、メモリエラーが発生したことを示す。また、タイムスタンプが「2010／12／13  10：02：33」のレコードは、ＶＭゲスト３７が「Vmhost2」というコンピュータ名のサーバ装置３０で動作しており、ＶＭゲスト３７の停止に失敗したことを示す。【００２９】
図２の説明に戻り、制御部３３は、例えば、内部メモリ等を有するＣＰＵなどの電子回路であり、ハイパーバイザ３４と、転送部３５と、格納部３６とを有する。【００３０】
ハイパーバイザ３４は、コンピュータシステムの動作環境を仮想的に実現する仮想化ソフトウエアの制御プログラムであり、仮想マシンであるＶＭゲスト３７を動作させる制御を行う。また、ハイパーバイザ３４は、管理サーバ４０から受信したマイグレーション指示に応じて、他のサーバ装置３０との間でのＶＭゲスト３７のマイグレーションの制御を行う。ＶＭゲスト３７は、ハイパーバイザ３４によって提供された環境でユーザに提供される処理を担う仮想マシンである。ＶＭゲスト３７は、仮想環境においてアプリケーションやファームウェアなどのプログラムの処理を実行し、仮想マシンが実行した処理の履歴を示すログを生成する。ハイパーバイザ３４は、ＶＭゲスト３７毎にファイルを分けて、ＶＭゲスト３７により生成されたログを記憶部３２に記憶させる。【００３１】
転送部３５は、例えば、ハイパーバイザ３４上で実行される、または物理サーバ上にハイパーバイザ３４と同レイヤで実行されるプログラムである。転送部３５は、ハイパーバイザ３４がＶＭゲスト３７を他のサーバ装置３０へマイグレーションする場合、マイグレーションするＶＭゲスト３７のログを記憶部３２から抽出する。転送部３５は、記憶部３２から抽出したログを必要な情報と合わせてＶＭゲスト３７の転送先のサーバ装置３０へ転送する。ログを転送するタイミングは、マイグレーション中であってもよく、マイグレーション後であってもよい。マイグレーション後のタイミングは、例えば、マイグレーション処理の完了に引き続き転送を行うものとしてもよく、転送元および転送先のサーバ装置３０のＣＰＵ使用率などの負荷が許容値より低いタイミングとしてもよい。マイグレーション中にログを転送する場合は、移動先でログを速やかに書き込ませることができる。マイグレーション後にログを転送する場合は、サーバ装置３０の負荷を分散させることができる。転送部３５は、ログの転送が完了とすると転送が完了したログを記憶部３２から消去する。【００３２】
図４は、転送されるログのデータ構成の一例を示す図である。図４に示すように、転送ログのデータは、移動元物理サーバ名、移動ＶＭゲスト名、ログファイルの各項目を有する。移動元物理サーバ名の項目は、ログの転送元のサーバ装置３０のコンピュータ名を記憶する領域である。移動ＶＭゲスト名の項目は、移動するＶＭゲスト３７の名前を記憶する領域である。ログファイルの項目は、転送するログのログファイルを格納する領域である。【００３３】
図４の例では、転送ログ情報は、移動元のサーバ装置３０のコンピュータ名が「VMhost1」であり、移動するＶＭゲスト３７の名前「VMguest1」であり、ログファイル名が「VMguest1.log」であることを示す。【００３４】
格納部３６も、例えば、ハイパーバイザ３４上で実行される、または物理サーバ上にハイパーバイザ３４と同レイヤで実行されるプログラムである。格納部３６は、他のサーバ装置３０からＶＭゲスト３７のマイグレーションに伴って転送されるログを受信し、受信したログを記憶部３２へ格納する。ここで、例えば、ログが転送されるよりも前にマイグレーションされたＶＭゲスト３７が動作したことにより、記憶部３２にログが既に存在する場合がある。このように、マイグレーションされたＶＭゲスト３７のログが記憶部３２に存在する場合、格納部３６は、転送されたＶＭゲスト３７のログの後に、記憶部３２に既に存在する当該ＶＭゲスト３７のログを結合して記憶部３２へ格納する。例えば、格納部３６は、記憶部３２に既に存在するログのファイル名に別な名前を変更する、あるいは別なフォルダに移動させる。そして、格納部３６は、名前を変更したログあるいは別なフォルダに移動させたログの内容を受信したログに追加書き込みで書込み、記憶部３２に記憶させる。その後、格納部３６は、名前を変更したログあるいは別なフォルダに移動させたログを記憶部３２から消去する。【００３５】
このように、転送されたＶＭゲスト３７のログの後に、記憶部３２に既に存在する当該ＶＭゲスト３７のログを結合させることで、ＶＭゲスト３７を実行した物理サーバ間で時間のずれがあった場合でも、ＶＭゲスト３７で行った処理の処理順を保つことができる。【００３６】
図５は、転送されたログと記憶部に既に存在するログを結合した結果の一例を示す図である。なお、図５に示すログのデータ構造は、図３と同様であるため、説明を省略する。図５の例の場合、Ｔ１部分はＶＭゲスト３７が「Vmhost1」から「Vmhost2」のサーバ装置３０へマイグレーションしたことを示す。また、Ｔ２部分はＶＭゲスト３７が「Vmhost2」から「Vmhost3」のサーバ装置３０へマイグレーションしたことを示す。Ｔ３部分はＶＭゲスト３７が「Vmhost3」から「Vmhost4」のサーバ装置３０へマイグレーションしたことを示す。図５の例は、Ｔ１部分とＴ２部分でログの順序がタイムスタンプの日時が順番となっていない。しかし、ＶＭゲスト３７のマイグレーションに伴って転送されたログの後に当該ＶＭゲスト３７が生成するログを結合することで、ＶＭゲスト３７で行った処理の処理順がログ内で保たれるため、ログの解析が行いやすくなる。【００３７】
（管理サーバの構成）
図２に示すように、管理サーバ４０は、通信制御Ｉ／Ｆ部４１と、記憶部４２と、制御部４３とを有する。【００３８】
通信制御Ｉ／Ｆ部４１は、少なくとも１つのポートを有し、各サーバ装置３０と管理サーバ４０との間の通信を制御するインタフェースである。例えば、通信制御Ｉ／Ｆ部４１は、サーバ装置３０へＶＭゲスト３７のマイグレーション指示を送信する。また、通信制御Ｉ／Ｆ部４１は、各サーバ装置３０のハイパーバイザ３４との間でＶＭゲスト３７に関する各種情報を送受信する。【００３９】
記憶部４２は、半導体メモリ素子やハードディスクなどの記憶装置であり、管理サーバ４０の管理下にあるハイパーバイザ３４およびＶＭゲスト３７に関する情報を記憶する。例えば、記憶部４２は、サーバ装置３０のＩＰアドレス、サーバ装置３０で稼動するハイパーバイザ３４、ハイパーバイザ３４で利用可能なリソース状況、動作しているＶＭゲスト３７の数および各リソース状況などを記憶する。なお、ここで記憶される情報は、任意に設定変更でき、管理者等によって登録および更新されてもよく、各サーバ装置３０から定期的に取得するようにしてもよい。【００４０】
制御部４３は、例えば、内部メモリ等を有するＣＰＵなどの電子回路であり、ＶＭゲスト管理部４４と、ＶＭゲスト移動指示部４５とを有する。【００４１】
ＶＭゲスト管理部４４は、各サーバ装置３０のハイパーバイザ３４との間でＶＭゲスト３７に関する各種情報の送受信を行い、記憶部４２に記憶されたハイパーバイザ３４およびＶＭゲスト３７に関する情報を更新する。【００４２】
ＶＭゲスト移動指示部４５は、サーバ装置３０で動作するＶＭゲスト３７を他のサーバ装置３０へ移動させる場合、移動元のサーバ装置３０へマイグレーション指示を送信する。【００４３】
次に、本実施例に係るサーバ装置３０がＶＭゲスト３７のマイグレーションに伴ってログを転送する処理の流れを説明する。図６は、ログ転送処理の手順を示すフローチャートである。このログ転送処理は、例えば、ＶＭゲスト３７を他のサーバ装置３０へマイグレーションしたタイミングで実行される。【００４４】
図６に示すように、転送部３５は、他のサーバ装置３０へマイグレーションしたＶＭゲスト３７のログを記憶部３２から抽出する（ステップＳ１０）。そして、転送部３５は、記憶部３２から抽出したログを必要な情報と合わせてＶＭゲスト３７の転送先のサーバ装置３０へ転送する（ステップＳ１１）。転送部３５は、ログの転送が完了とすると転送が完了したログを記憶部３２から消去する（ステップＳ１２）。【００４５】
次に、本実施例に係るサーバ装置３０が他のサーバ装置３０からＶＭゲスト３７のマイグレーションに伴って転送されるログを格納する処理の流れを説明する。図７は、ログ格納処理の手順を示すフローチャートである。このログ格納処理は、例えば、ＶＭゲスト３７を他のサーバ装置３０からログを受信したタイミングで実行される。【００４６】
図７に示すように、格納部３６は、受信したログを生成したＶＭゲスト３７のログが記憶部３２に既に存在するか否かを判定する（ステップＳ２０）。ログが記憶部３２に存在する場合（ステップＳ２０肯定）、格納部３６は、転送されたＶＭゲスト３７のログの後に、記憶部３２に既に存在する当該ＶＭゲスト３７のログを結合する（ステップＳ２１）。そして、格納部３６は、結合したログを記憶部３２へ格納する（ステップＳ２２）。一方、ログが記憶部３２に存在しない場合（ステップＳ２０否定）、格納部３６は、受信したログを記憶部３２へ格納する（ステップＳ２３）。【００４７】
このように、サーバ装置３０は、他のサーバ装置３０からマイグレーションされたＶＭゲスト３７のログが記憶部３２に存在する場合、転送されたログの後に当該ＶＭゲスト３７が生成するログを結合して記憶部３２へ格納する。これにより、各サーバ装置３０間の時間がずれている場合でも、記憶部３２に記憶されたログ内でＶＭゲスト３７が行った処理の処理順が保たれているため、ログの解析を容易に行うことができる。
【実施例３】
【００４８】
実施例３について説明する。実施例３では、サーバ装置３０が仮想マシンのマイグレーションに伴ってログを他のサーバ装置３０へ転送する際に、ログのファイル名を変更して転送する場合について説明する。図８は、実施例３に係るシステムの機能的な構成の一例を示す図である。なお、図８に示した実施例３に係るシステムの構成は、図２に示した実施例２に係るシステムと略同一であるため、同一の部分について同一の符号を付して説明を省略し、異なる部分について説明する。【００４９】
サーバ装置３０は、変更部３８をさらに有する。変更部３８は、ＶＭゲスト３７を他のサーバ装置３０へマイグレーションする場合、記憶部３２に記憶されたマイグレーションするＶＭゲスト３７のログのファイル名を新しいログから昇順に番号を付加した名前に変更する。【００５０】
図９は、ログのファイル名の変更を説明する図である。図９に示すように、記憶部３２には、マイグレーションするＶＭゲスト３７のログとして新しい順に「ＶＭホスト.log」、「ＶＭホスト−２.log」、「ＶＭホスト−３.log」のファイル名のログが記憶されているものとする。この場合、変更部３８は、ログのファイル名を「ＶＭホスト−３.log」から「ＶＭホスト−４.log」に変更し、「ＶＭホスト−２.log」から「ＶＭホスト−３.log」に変更し、「ＶＭホスト.log」から「ＶＭホスト−２.log」に変更する。【００５１】
転送部３５は、変更部３８によりファイル名が変更されたログを他のサーバ装置３０へ転送する。【００５２】
図１０は、ログ転送処理の手順を示すフローチャートである。図１０に示すように、変更部３８は、他のサーバ装置３０へマイグレーションしたＶＭゲスト３７のログを記憶部３２から抽出する（ステップＳ３０）。変更部３８は、記憶部３２から抽出したログに、拡張子を除いたファイル名の最後に番号が付加されたログがあるか否かを判定する（ステップＳ３１）。番号が付加されたログがない場合（ステップＳ３１否定）、後述するステップＳ３７の処理へ移行する。一方、番号が付加されたログがある場合（ステップＳ３１肯定）、変更部３８は、付加された番号の最大の値Ｘを特定する（ステップＳ３２）。変更部３８は、記憶部３２から抽出したログに、拡張子を除いたファイル名の最後に値Ｘが付加されたログがあるか否かを判定する（ステップＳ３３）。値Ｘが付加されたログがある場合（ステップＳ３３肯定）、変更部３８は、拡張子を除いたファイル名の最後に付加された値Ｘを１インクリメントした名前にログのファイル名を変更する（ステップＳ３４）。そして、変更部３８は、値Ｘを１デクリメントする（ステップＳ３５）。一方、値Ｘが付加されたログがない場合（ステップＳ３３否定）、変更部３８は、ステップＳ３５の処理を行う。そして、変更部３８は、値Ｘがゼロであるか否かを判定する（ステップＳ３６）。値Ｘがゼロでない場合（ステップＳ３６否定）、変更部３８は、ステップＳ３３の処理へ移行する。一方、値Ｘがゼロである場合（ステップＳ３６肯定）、変更部３８は、拡張子を除いたファイル名の最後に番号が付加されていないログのファイル名の最後にハイフンと番号「２」を付加する（ステップＳ３７）。転送部３５は、変更部３８によりファイル名の変更を行ったログを必要な情報と合わせてＶＭゲスト３７の転送先のサーバ装置３０へ転送する（ステップＳ３８）。転送部３５は、ログの転送が完了とすると転送が完了したログを記憶部３２から消去する（ステップＳ３９）。【００５３】
このように、サーバ装置３０は、ＶＭゲスト３７を他のサーバ装置３０へマイグレーションする場合、記憶部３２に記憶されたマイグレーションするＶＭゲスト３７のログのファイル名を新しいログから昇順に番号を付加した名前に変更して転送する。これにより、転送先のサーバ装置３０では、ＶＭゲスト３７のログが記憶部３２に既に存在する場合でも、ログのファイル名が重複しなくなる。また、ログは、ファイル名に付加された番号により、ログが生成された順番が判別できるため、ログの解析を容易に行うことができる。
【実施例４】
【００５４】
実施例４について説明する。実施例４では、ＶＭゲスト３７のマイグレーションに伴って当該仮想マシンのログが移動していない場合、管理サーバ４０が移動元のサーバ装置３０へログの転送を指示する場合について説明する。図１１は、実施例４に係るシステムの機能的な構成の一例を示す図である。なお、図１１に示した実施例４に係るシステムの構成は、図８に示した実施例３に係るシステムと略同一であるため、同一の部分について同一の符号を付して説明を省略し、異なる部分について説明する。【００５５】
実施例４に係る各サーバ装置３０は、実施例３と同様に、記憶部３２にＶＭゲスト３７のログが新しいログから昇順に番号を付加したファイル名で記憶する。【００５６】
また、サーバ装置３０は、外部のディスクアレイ装置などの記憶装置５０に接続されており、記憶装置５０を共用している。記憶装置５０は、サーバ装置３０から書き込まれた情報を記憶する。サーバ装置３０は、それぞれＶＭゲスト３７に関する情報を記憶装置５０に記憶させる。【００５７】
ここで、物理サーバ上に仮想的に構築された仮想マシンは、仮想マシンに関する情報を全てファイルに記憶させ、そのファイルを他の物理サーバ上に実行することにより、マイグレーションを行うことができる。本実施例においても、サーバ装置３０は、記憶装置５０に記憶された他のサーバ装置３０のＶＭゲスト３７に関する情報を読み出してハイパーバイザ３４上で実行することにより、マイグレーションを行うことができる。【００５８】
ところで、記憶装置５０に記憶されたＶＭゲスト３７に関する情報を読み出してハイパーバイザ３４上で実行することにより、マイグレーションできるため、マイグレーションしたＶＭゲスト３７のログが転送されない場合がある。例えば、転送元のサーバ装置３０が停止している場合、転送元からログが転送されない。サーバ装置３０は、マイグレーションしたＶＭゲスト３７のログが転送されない場合、管理サーバ４０へログ未転送を通知する。この管理サーバ４０へのログ未転送の通知は、例えば、マイグレーション完了後、所定期間内にログが転送されない場合や、転送元のサーバ装置３０と通信を行った結果、応答が得られないなど転送元のサーバ装置３０が停止と推定される場合に行う。【００５９】
図１２は、ログ未転送を通知する通信データのデータ構成の一例を示す図である。図１２に示すように、ログ未転送の通知は、移動ＶＭゲスト名、移動元物理サーバ名の各項目を有する。移動ＶＭゲスト名の項目は、移動するＶＭゲスト３７の名前を記憶する領域である。移動元物理サーバ名の項目は、ログを転送できないログの転送元のサーバ装置３０のコンピュータ名を記憶する領域である。【００６０】
図１２の例では、ログ未転送の通知は、移動するＶＭゲスト３７の名前「VMguest1」であり、ログを転送できないログの転送元のサーバ装置３０のコンピュータ名が「VMhost2」であることを示す。【００６１】
一方、図１１に示すように、管理サーバ４０の記憶部４２は、第１テーブル４２ａ、第２テーブル４２ｂを記憶する。【００６２】
第１テーブル４２ａは、ＶＭゲスト３７毎の移動履歴を管理するテーブルである。図１３は、第１テーブルのデータ構成の一例を示す図である。図１３に示すように、第１テーブル４２ａは、レコードＩＤ（identification）、ＶＭゲストＩＤ、物理サーバ名、移動前レコードＩＤの各項目を有する。【００６３】
レコードＩＤの項目は、履歴を識別する識別番号を格納する領域である。ＶＭゲストＩＤの項目は、各ＶＭゲスト３７を識別する識別番号を格納する領域である。物理サーバ名の項目は、ＶＭゲスト３７が動作した物理サーバのコンピュータ名を格納する領域である。移動前レコードＩＤの項目は、移動前の過去のレコードＩＤを格納する領域である。この移動前レコードＩＤの項目は、移動前がない場合、「−」が格納される。【００６４】
図１３の例では、レコードＩＤ「１」「２」「４」「５」は、ＶＭゲストＩＤが「１００」のＶＭゲスト３７の移動履歴である。レコードＩＤ「５」は、コンピュータ名が「Ａ」の物理サーバでＶＭゲストＩＤが「１００」のＶＭゲスト３７が動作し、移動前の過去のレコードＩＤが「４」であることを示す。レコードＩＤ「４」は、コンピュータ名が「Ｂ」の物理サーバでＶＭゲストＩＤが「１００」のＶＭゲスト３７が動作し、移動前の過去のレコードＩＤが「２」であることを示す。レコードＩＤ「２」は、コンピュータ名が「Ａ」の物理サーバでＶＭゲストＩＤが「１００」のＶＭゲスト３７が動作し、移動前の過去のレコードＩＤが「１」であることを示す。レコードＩＤ「１」は、コンピュータ名が「Ｂ」の物理サーバでＶＭゲストＩＤが「１００」のＶＭゲスト３７が動作し、移動前がないことを示す。すなわち、図１３の例では、ＶＭゲストＩＤが「１００」のＶＭゲスト３７は、「Ｂ」→「Ａ」→「Ｂ」→「Ａ」と物理サーバを移動したことを示す。【００６５】
また、図１３の例では、レコードＩＤ「３」「７」は、ＶＭゲストＩＤが「１０１」のＶＭゲスト３７の移動履歴である。レコードＩＤ「７」は、コンピュータ名が「Ｂ」の物理サーバでＶＭゲストＩＤが「１０１」のＶＭゲスト３７が動作し、移動前の過去のレコードＩＤが「３」であることを示す。レコードＩＤ「３」は、コンピュータ名が「Ａ」の物理サーバでＶＭゲストＩＤが「１００」のＶＭゲスト３７が動作し、移動前がないことを示す。すなわち、図１３の例では、ＶＭゲストＩＤが「１０１」のＶＭゲスト３７は、「Ａ」→「Ｂ」と物理サーバを移動したことを示す。【００６６】
また、図１３の例では、レコードＩＤ「６」は、コンピュータ名が「Ｂ」の物理サーバでＶＭゲストＩＤが「１０２」のＶＭゲスト３７が動作し、移動前がないことを示す。すなわち、図１３の例では、ＶＭゲストＩＤが「１０２」のＶＭゲスト３７は、「Ｂ」の物理サーバで動作しており、他の物理サーバへ移動したことがないことを示す。【００６７】
第２テーブル４２ｂは、ＶＭゲスト３７毎に現在動作する物理サーバを管理するテーブルである。図１４は、第２テーブルのデータ構成の一例を示す図である。図１４に示すように、第２テーブル４２ｂは、レコードＩＤ、ＶＭゲストＩＤ、物理サーバ名、最新履歴レコードＩＤの各項目を有する。【００６８】
レコードＩＤの項目は、各レコードを識別する識別番号を格納する領域である。ＶＭゲストＩＤの項目は、各ＶＭゲスト３７を識別する識別番号を格納する領域である。物理サーバ名の項目は、ＶＭゲスト３７が動作中の物理サーバのコンピュータ名を格納する領域である。最新履歴レコードＩＤの項目は、第１テーブル４２ａにおける最新の移動履歴のレコードＩＤを格納する領域である。【００６９】
図１４の例では、レコードＩＤ「１」は、ＶＭゲストＩＤが「１００」のＶＭゲスト３７が「Ａ」の物理サーバで動作し、第１テーブル４２ａにおける最新の履歴のレコードＩＤが「５」であることを示す。レコードＩＤ「２」は、ＶＭゲストＩＤが「１０１」のＶＭゲスト３７が「Ｂ」の物理サーバで動作し、第１テーブル４２ａにおける最新の履歴のレコードＩＤが「７」であることを示す。レコードＩＤ「３」は、ＶＭゲストＩＤが「１０２」のＶＭゲスト３７が「Ｂ」の物理サーバで動作し、第１テーブル４２ａにおける最新の履歴のレコードＩＤが「６」であることを示す。【００７０】
図１１の説明に戻り、管理サーバ４０は、監視部４６と、送信部４７と、ログ参照部４８とをさらに有する。【００７１】
ＶＭゲスト移動指示部４５は、サーバ装置３０で動作するＶＭゲスト３７を他のサーバ装置３０へ移動させる場合、移動元のサーバ装置３０および移動先のサーバ装置３０へ移動対象とするＶＭゲスト３７を含んだマイグレーション指示を送信する。【００７２】
ＶＭゲスト管理部４４は、第１テーブル４２ａおよび第２テーブル４２ｂを最新の状態に更新する。例えば、ＶＭゲスト管理部４４は、ＶＭゲストＩＤを移動対象とするＶＭゲスト３７の識別番号とし、物理サーバ名を移動先のサーバ装置３０のコンピュータ名とし、移動元レコードをＶＭゲスト３７の最新のレコードＩＤとしたレコードを第１テーブルに追加する。また、ＶＭゲスト管理部４４は、第１テーブル４２ａの移動対象とするＶＭゲスト３７のレコードの物理サーバ名を移動先のサーバ装置３０のコンピュータ名に更新し、最新履歴レコードＩＤを第１テーブルに追加したレコードのレコードＩＤに更新する。【００７３】
監視部４６は、サーバ装置３０からログ未転送が通知された場合、移動元のサーバ装置３０の状態を監視する。例えば、監視部４６は、定期的に移動元のサーバ装置３０と通信を行い、移動元のサーバ装置３０が停止しているか、起動状態であるかを監視する。【００７４】
送信部４７は、監視部４６による監視の結果、移動元のサーバ装置３０が起動状態である場合、移動元のサーバ装置３０へログの移動指示を送信する。ログの移動指示を受信したサーバ装置３０は、実施例２において説明したログ転送処理を実行してログの転送を行う。【００７５】
図１５は、移動指示する通信データのデータ構成の一例を示す図である。図１５に示すように、移動指示は、移動ＶＭゲスト名、移動先物理サーバ名の各項目を有する。移動ＶＭゲスト名の項目は、移動するＶＭゲスト３７の名前を記憶する領域である。移動先物理サーバ名の項目は、ログの転送先のサーバ装置３０のコンピュータ名を記憶する領域である。【００７６】
図１５の例では、移動指示は、移動するＶＭゲスト３７の名前「VMguest1」であり、ログの転送先のサーバ装置３０のコンピュータ名が「VMhost2」であることを示す。【００７７】
図１１の説明に戻り、ログ参照部４８は、ログを参照したいＶＭゲスト３７の指定を受け付ける。この指定の受付は、例えば、管理サーバ４０の不図示の表示部に、ログを参照するＶＭゲスト３７を指定する指定画面を表示させ、不図示の入力部から指定画面への入力を受け付けることにより行ってもよい。また、例えば、ネットワーク２１を介してクライアントコンピュータなどの端末装置の表示部に指定画面を表示させ、端末装置の入力部から指定画面への入力を受け付けることにより行ってもよい。【００７８】
ログ参照部４８は、指定されたＶＭゲスト３７のログにアクセスしてログを参照する。例えば、ログ参照部４８は、調査を行う管理者が参照したいＶＭゲスト３７を指定すると、記憶部４２に記憶された第１テーブル４２ａから、参照対象のＶＭゲスト３７の移動履歴を取得する。そして、ログ参照部４８は、移動履歴の最後の物理サーバ名のサーバ装置３０に接続し、実際のログにアクセスする。ログは、ＶＭゲスト３７をマイグレーションした毎にログが分かれているが、ログのファイル名に新しいログから昇順に番号を付加されている。ログ参照部４８は、ファイル名に付加された番号の順にログを読み出すことにより、処理順にログを読み出すことができる。また、移動履歴での物理サーバの順番とファイル名に付加された番号の順番が対応する。このため、ログ参照部４８は、物理サーバの順番に対応するログファイルを読み出すことにより、特定の物理サーバのログを抽出して参照できる。【００７９】
次に、本実施例に係る移動先のサーバ装置３０がＶＭゲスト３７をマイグレーションする際の処理の流れを説明する。図１６は、マイグレーション処理の手順を示すフローチャートである。このログ転送処理は、例えば、ＶＭゲスト３７のマイグレーションが指示されたタイミングで実行される。【００８０】
ハイパーバイザ３４は、マイグレーションが指示されたＶＭゲスト３７に関する情報を記憶装置５０から読み出して実行することにより、ＶＭゲスト３７の移動を実施する（ステップＳ５０）。制御部３３は、ＶＭゲスト３７の移動元のサーバ装置３０が起動状態であるか否か判定する（ステップＳ５１）。一方、移動元のサーバ装置３０が起動状態ではない場合（ステップＳ５１否定）、制御部３３は、管理サーバ４０へログ未転送を通知する（ステップＳ５２）。一方、制御部３３は、移動元のサーバ装置３０が起動状態である場合（ステップＳ５１肯定）、処理を終了する。【００８１】
次に、本実施例に係る管理サーバ４０がサーバ装置３０を監視する処理の流れを説明する。図１７は、監視処理の手順を示すフローチャートである。このログ転送処理は、例えば、いずれかのサーバ装置３０からログ未転送が通知されたタイミングで実行される。【００８２】
監視部４６は、通知されたログ未転送の通信データにより示される移動元のサーバ装置３０の状態を取得する（ステップＳ６０）。監視部４６は、移動元のサーバ装置３０の状態が起動状態であるか否かを判定する（ステップＳ６１）。移動元のサーバ装置３０の状態が起動状態ではない場合（ステップＳ６１否定）、監視部４６は、ステップＳ６０へ移行して監視を継続する。一方、移動元のサーバ装置３０の状態が起動状態である場合（ステップＳ６１肯定）、送信部４７は、移動元のサーバ装置３０へログの移動指示を送信する（ステップＳ６２）。ログの移動指示を受信したサーバ装置３０は、移動指示する通信データにより示される転送先のサーバ装置３０へログの転送を行う。【００８３】
次に、本実施例に係る管理サーバ４０からサーバ装置３０のログを参照する処理の流れを説明する。図１８は、参照処理の手順を示すフローチャートである。この参照処理は、例えば、ログの参照が指定されたタイミングで実行される。【００８４】
ログ参照部４８は、ログを参照したいＶＭゲスト３７の指定を受け付ける（ステップＳ７０）。そして、ログ参照部４８は、記憶部４２に記憶された第１テーブル４２ａから、参照が指定された移動履歴を取得し、移動履歴の最後の物理サーバ名のサーバ装置３０を特定する（ステップＳ７１）。ログ参照部４８は、特定したサーバ装置３０に接続し、移動履歴に基づいて各ログファイルにアクセスしてログを表示する（ステップＳ７２）。【００８５】
このように、管理サーバ４０は、ＶＭゲスト３７のマイグレーションに伴って当該ＶＭゲスト３７のログが移動していない場合、移動元のサーバ装置３０の状態を監視する。管理サーバ４０は、監視の結果、移動元のサーバ装置３０が起動状態である場合、移動元のサーバ装置３０へログの移動指示を送信する。移動元のサーバ装置３０は、移動指示を受信した場合、記憶部３２に記憶された、マイグレーションしたＶＭゲスト３７が生成したログを転送先のサーバ装置３０へ転送する。転送先のサーバ装置３０は、マイグレーションされた仮想マシンが生成したログを記憶する記憶部３２に転送されたログを格納する。これにより、管理サーバ４０によれば、移動元のサーバ装置３０が停止してログが転送できない状態の場合でも、後からログを転送させることができる。
【実施例５】
【００８６】
さて、これまで開示の装置に関する実施例について説明したが、開示の技術は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。【００８７】
例えば、上記の実施例２〜４では、ハイパーバイザ３４とは別に転送部３５や、格納部３６、変更部３８を設けた場合について説明したが、開示の装置はこれに限定されない。例えば、ハイパーバイザ３４が、転送部３５や、格納部３６、変更部３８の機能を有するものとしてもよい。【００８８】
また、上記の実施例２〜４では、管理サーバ４０はサーバ装置３０からログ未転送を通知されることにより、ログが移動していないことを判別する場合について説明したが、開示の装置はこれに限定されない。例えば、管理サーバ４０が各サーバ装置３０の状態を定期的に監視し、起動状態ではないサーバ装置３０がログの送信元となるマイグレーションを行う場合、ログが移動していないことを判別してもよい。また、例えば、マイグレーションの移動元および移動先の少なくとも一方のサーバ装置３０が管理サーバ４０へマイグレーションの結果を通知する場合、結果が異常である場合あるいは結果が通知されない場合、ログが移動していないことを判別してもよい。【００８９】
また、上記の実施例２〜４では、ハイパーバイザ３４とは別に転送部３５や、格納部３６、変更部３８を設けた場合について説明したが、開示の装置はこれに限定されない。例えば、ハイパーバイザ３４が、転送部３５や、格納部３６、変更部３８の機能を有するものとしてもよい。【００９０】
また、各種の負荷や使用状況などに応じて、実施例において説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。【００９１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図２に示すハイパーバイザ３４と転送部３５や、ハイパーバイザ３４と格納部３６、ハイパーバイザ３４と転送部３５と格納部３６が統合されてもよい。また、図８に示す、変更部３８がさらにハイパーバイザ３４や転送部３５、格納部３６と統合されてもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。【００９２】
［ログ転送プログラム］
また、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。図１９は、ログ転送プログラムを実行するコンピュータを示す図である。【００９３】
図１９に示すように、コンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＲＯＭ（Read  Only  Memory）３２０、ＨＤＤ（Hard  Disk  Drive）３３０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３００〜３４０の各部は、バス４００を介して接続される。ＨＤＤ３３０には、コンピュータを仮想化した仮想マシンのログが記憶される。【００９４】
ＲＯＭ３２０には上記の実施例１に示す仮想化制御部１３、転送部１５と同様の機能、または上記の実施例２〜４に示すハイパーバイザ３４、転送部３５、格納部３６、変更部３８と同様の機能を発揮するログ転送プログラム３２０ａが予め記憶される。なお、ログ転送プログラム３２０ａについては、適宜分離しても良い。【００９５】
そして、ＣＰＵ３１０が、ログ転送プログラム３２０ａをＲＯＭ３２０から読み出して実行することで、実施例１〜４に示した各制御部と同様の動作を実行する。すなわち、ログ転送プログラム３２０ａは、実施例１に示した転送部１５、あるいは実施例２〜４に示した転送部３５、格納部３６、変更部３８と同様の動作を実行する。【００９６】
なお、上記したログ転送プログラム３２０ａについては、必ずしも最初からＲＯＭ３２０に記憶させておく必要はない。【００９７】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。【００９８】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００９９】
１０    サーバ装置
１２    サーバ装置
１３    仮想化制御部
１４    記憶部
１５    転送部
２０    システム
３０    サーバ装置
３２    記憶部
３３    制御部
３４    ハイパーバイザ
３５    転送部
３６    格納部
３７    ＶＭゲスト
３８    変更部
４０    管理サーバ
４２    記憶部
４３    制御部
４４    ＶＭゲスト管理部
４５    ＶＭゲスト移動指示部
４６    監視部
４７    送信部
４８    ログ参照部
５０    記憶装置
【図１】
2013042268.tif 000003
【図２】
2013042268.tif 000004
【図３】
2013042268.tif 000005
【図４】
2013042268.tif 000006
【図５】
2013042268.tif 000007
【図６】
2013042268.tif 000008
【図７】
2013042268.tif 000009
【図８】
2013042268.tif 000010
【図９】
2013042268.tif 000011
【図１０】
2013042268.tif 000012
【図１１】
2013042268.tif 000013
【図１２】
2013042268.tif 000014
【図１３】
2013042268.tif 000015
【図１４】
2013042268.tif 000016
【図１５】
2013042268.tif 000017
【図１６】
2013042268.tif 000018
【図１７】
2013042268.tif 000019
【図１８】
2013042268.tif 000020
【図１９】
2013042268.tif 000021
【手続補正書】
【提出日】平成26年8月20日(2014.8.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置との間で前記仮想マシンのマイグレーションを制御する仮想化制御部と、
前記仮想マシンに対応させて、該仮想マシンが生成するログを記憶する記憶部と、
前記仮想マシンを他のサーバ装置へマイグレーションする場合、前記記憶部に記憶されたログのうち、マイグレーション対象の仮想マシンのログを抽出して該他のサーバ装置へ転送する転送部と、
を有することを特徴とするサーバ装置。 
【請求項２】
前記仮想マシンを他のサーバ装置へマイグレーションする場合、前記記憶部に記憶されたマイグレーション対象の仮想マシンのログのファイル名を新しいログから昇順に番号を付加した名前に変更する変更部をさらに有し、
前記ログ転送部は、前記変更部によりファイル名が変更された前記マイグレーションする仮想マシンのログを前記他のサーバ装置へ転送する
ことを特徴とする請求項１に記載のサーバ装置。 
【請求項３】
記憶部と、
コンピュータを仮想化した仮想マシンを動作させ、他のサーバ装置からの前記仮想マシンのマイグレーションを制御する仮想化制御部と、
他のサーバ装置から仮想マシンのマイグレーションに伴って受信される当該仮想マシンのログを前記記憶部へ格納する格納部と、
を有することを特徴とするサーバ装置。 
【請求項４】
前記格納部は、前記記憶部に格納したマイグレーションされた仮想マシンのログの後に該仮想マシンが生成するログを結合して前記記憶部へ格納する
ことを特徴とする請求項３に記載のサーバ装置。 
【請求項５】
コンピュータを仮想化した仮想マシンを他のサーバ装置へマイグレーションする場合、前記仮想マシンに対応させて記憶部に記憶したログのうち、該仮想マシンが生成したログを抽出して該他のサーバ装置へ転送する
処理をコンピュータに実行させることを特徴とするログ転送プログラム。 
【請求項６】
コンピュータを仮想化した仮想マシンを他のサーバ装置へマイグレーションする場合、前記仮想マシンに対応させて記憶部に記憶したログのうち、該仮想マシンが生成したログを抽出して該他のサーバ装置へ転送し、
他のサーバ装置から仮想マシンのマイグレーションに伴って転送されたログを前記記憶部へ格納する
各処理を実行することを特徴とするログ転送方法。 
【請求項７】
第１サーバ装置から第２サーバ装置への仮想マシンのマイグレーションに伴って該仮想マシンのログが移動していない場合、前記第１サーバ装置の状態を監視する監視部と、
前記監視部による監視の結果、前記第１サーバ装置が起動状態である場合、前記第１サーバ装置へログの移動指示を送信する送信部と
を有する監視サーバ装置と、
仮想マシンを動作させ、前記第２サーバ装置との間で前記仮想マシンのマイグレーションを制御する仮想化制御部と、
前記仮想化制御部の制御により動作する前記仮想マシンに対応させて、該仮想マシンが生成するログを記憶する第１記憶部と、
前記移動指示を受信した場合、前記第１記憶部に記憶されたログのうち、前記第２サーバ装置へマイグレーションした仮想マシンのログを抽出して前記第２サーバ装置へ転送する転送部と
を有する第１サーバ装置と、
前記第１サーバからマイグレーションされた仮想マシンが生成したログを記憶する第２記憶部と、
前記転送部により転送されたログを前記第２記憶部へ格納する格納部と
を有する第２サーバ装置と、
を備えたことを特徴とするログ転送システム。 
【請求項８】
監視サーバ装置が、
第１サーバ装置から第２サーバ装置への仮想マシンのマイグレーションに伴って該仮想マシンのログが移動していない場合、前記第１サーバ装置の状態を監視し、
監視の結果、前記第１サーバ装置が起動状態である場合、前記第１サーバ装置へログの移動指示を送信し、
第１サーバ装置が、
前記移動指示を受信した場合、前記仮想マシンに対応させて第１記憶部に記憶されたログのうち、前記第２サーバ装置へマイグレーションした仮想マシンが生成したログを抽出して前記第２サーバ装置へ転送し、
第２サーバ装置が、
前記第１サーバからマイグレーションされた仮想マシンが生成したログを記憶する第２記憶部に転送されたログを格納する
ことを特徴とするログ転送方法。
【国際調査報告】
2013042268.tif 000022
2013042268.tif 000023
2013042268.tif 000024
2013042268.tif 000025
2013042268.tif 000026
2013042268.tif 000027
2013042268.tif 000028
2013042268.tif 000029