(57)【特許請求の範囲】
【請求項１】
複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバにおいて、
前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備え、
前記ゲストＯＳは、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する情報採取要求手段を有し、
前記仮想化レイヤは、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存することを特徴とする仮想マシンサーバ。
【請求項２】
前記仮想化レイヤ上に、入出力処理及び前記ハードウェアのリソースの管理等を行う制御用仮想マシンを有し、前記情報採取要求手段は該制御用仮想マシンに含まれることを特徴とする請求項１に記載の仮想マシンサーバ。
【請求項３】
複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバの情報保存方法であって、
前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備え、
前記ゲストＯＳが、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する手順と、
前記仮想化レイヤが、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存する手順と、
を備えることを特徴とする仮想マシンサーバの情報保存方法。
【請求項４】
前記仮想化レイヤ上に、入出力処理及び前記ハードウェアのリソースの管理等を行う制御用仮想マシンを有し、該制御用仮想マシンのＯＳから前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する手順を備えることを特徴とする請求項３に記載の仮想マシンサーバの情報保存方法。
【請求項５】
複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバにおいて、前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備えた仮想マシンサーバの情報保存用プログラムであって、
前記ゲストＯＳが、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する処理と、
前記仮想化レイヤが、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存する処理を実行することを特徴とする仮想マシンサーバの情報保存用プログラム。
【請求項６】
前記仮想化レイヤ上に、入出力処理及び前記ハードウェアのリソースの管理等を行う制御用仮想マシンを有し、該制御用仮想マシンのＯＳから前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する処理を実行することを特徴とする請求項５に記載の仮想マシンサーバの情報保存用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン環境を提供する仮想マシンサーバのリソース情報と仮想マシンの描画命令データとを保存し取得する技術に関する。
【背景技術】
【０００２】
仮想マシン環境では、複数の仮想マシンが1台の仮想マシンサーバ上で動作するため、仮想マシンの配置、設定方法によっては、仮想マシンのユーザが期待しているパフォーマンスが出ない場合がある。例えば、仮想マシンサーバに対して、多数の仮想マシンからのディスクのアクセスが集中した場合、個々の仮想マシンの利用環境で、ユーザはレスポンスの低下を感じる。
【０００３】
ユーザとしては仮想マシンにたくさんの負荷をかけているとは思えないのにレスポンスが低下するため、その原因について仮想マシンだけでなく仮想マシンサーバの状況についても確認をする必要が生じる。
【０００４】
このような場合、仮想マシンのユーザは、仮想マシン環境の管理者にレスポンスの低下を報告するかも知れないが、ときどきそのようなことが起こるという報告にとどまり、具体的にどの瞬間にそのような現象が起きたかは後になっては特定できず、その現象が起きたときに仮想マシンサーバとしてどのような状態であったかはっきり確認できないため、原因が不明のままになることが多い。
【０００５】
また、仮想マシンへの画面接続においては、接続するプロトコルや使用しているアプリケーションによって、特定の操作をするときに問題が生じる可能性もある。そのため、その特定の操作によって物理マシン上でもその現象が再現するのかどうか、仮想マシン特有の問題(画面接続するプロトコルや使用しているアプリケーションが)なのか、または仮想マシンサーバの性能による問題なのかを切り分ける必要があり、その現象が起きたときの操作や仮想マシンサーバの性能情報を取得しなければ原因の究明が難しい。
【０００６】
そのため、仮装マシンから仮想マシンサーバへの描画命令に係る画像の取得にも適用できる動画データを圧縮して保存する技術がある。
【特許文献１】特開２００２−２２８４９８号公報
【特許文献２】特開２００４−３５００５７号公報
【特許文献３】特開２００５−１２２７１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１及び２に記載の発明は、動画データを保存するものの、それと同時に仮想マシンサーバのリソース情報である、ＣＰＵ使用状況、ディスクアクセス状況及びメモリ使用状況等は保存し取得することができないという問題点がある。
【０００８】
また、特許文献３に記載の発明は、仮想マシン環境に係るものであるが、コンピュータのハードウェア上に単に仮想マシンを設置するものに過ぎず、上述の画像データ及びリソース情報を保存し取得する手段は考慮されていないという問題点がある。
【０００９】
そこで本発明は、仮想マシンサーバの性能低下原因究明のため、仮想マシンから仮想マシンサーバへの描画命令データと仮想マシンサーバのリソース情報とを保存する仮想マシンサーバ、仮想マシンサーバの情報保存方法及び仮想マシンサーバの情報保存用プログラムを得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述の課題を解決するため、本発明に係る仮想マシンサーバは、複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバにおいて、前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備え、前記ゲストＯＳは、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する情報採取要求手段を有し、前記仮想化レイヤは、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存することを特徴とする。
【００１１】
上述の課題を解決するため、本発明に係る仮想マシンサーバの情報保存方法は、複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバの情報保存方法であって、前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備え、前記ゲストＯＳが、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する手順と、前記仮想化レイヤが、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存する手順と、を備えることを特徴とする。
【００１２】
上述の課題を解決するため、本発明に係る仮想マシンサーバの情報保存用プログラムは、複数のゲストＯＳに、ＣＰＵ、メモリ及びディスクを含むハードウェアのリソースを共有させ、該ゲストＯＳごとに仮想マシンの環境を構築する仮想マシンサーバにおいて、前記仮想マシンサーバは、複数の前記仮想マシンが動作し、前記仮想マシンサーバの前記ハードウェアのリソース情報と、前記仮想マシンごとの前記仮想マシンサーバに対する描画命令に係る画像データと、を一定時間保持する仮想化レイヤを備えた仮想マシンサーバの情報保存用プログラムであって、前記ゲストＯＳが、前記仮想化レイヤに対し、前記リソース情報及び前記描画命令に係る画像データを保存する旨の指令を発する処理と、前記仮想化レイヤが、該指令を受けて、前記仮想マシンサーバの前記リソース情報及び前記仮想マシンごとの前記描画命令に係る画像データを保存する処理を実行することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、仮想化レイヤに一定時間保持されているハードウェアのリソース情報と、仮想マシンから仮想マシンサーバに対する描画命令に係る画像データを保存する旨の指令をゲストＯＳ側から発することにより、前記仮想化レイヤがリソース情報及び描画命令に係る画像データを保存するので、仮想マシンサーバの性能低下の原因を特定する手がかりとなる仮想マシンサーバの情報を取得することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態について図面を用いて詳細に説明する。図１は、仮想マシン環境に係る基本的な構成図である。
【００１５】
図１は、ハードウェア１０５上に基本となるホストＯＳ１０４をインストールし、その上で仮想マシン環境を実現する仮想化レイヤ１０３がＯＳのアプリケーションとして動作する一般的な方式を示している。
【００１６】
図１では、仮想化レイヤ１０３上には、仮想マシンのＯＳであるゲストＯＳ１０１、１０２があり、仮想化レイヤ１０３とゲストＯＳ１０１、１０２とで仮想マシン環境１００を構成している。
【００１７】
仮想マシン環境としては、図１の方式以外にも、仮想化レイヤをハードウェア上でホストＯＳの代わりに動作させる方式がある。この仮想化レイヤは、ゲストＯＳからデバイスドライバを介する処理の命令を、仮想化レイヤのカーネルで受け取り、受け取った命令を元に実際の処理をハードウェアに対して行う。
【００１８】
図２は、本実施の形態による仮想マシン環境の構成であり、ハードウェア２０４上にホストＯＳの代わりに動作する仮想化レイヤ２０３があり、仮想化レイヤ２０３の上でゲストＯＳ２０１、２０２が動作する。
【００１９】
仮想化レイヤ２０３は一定時間に限り、仮想マシンサーバのリソース情報２０８と、仮想マシンごとの描画命令データ２０７を保持している。
【００２０】
又、図３に示すように、ゲストＯＳ２０１、２０２上には、描画命令及びリソース情報を保存するためのトリガを仮想化レイヤに送信するプログラムである情報採取要求プログラム２０５、２０６がそれぞれインストールされている。
【００２１】
仮想マシンのユーザは、仮想マシンの性能が低下したり動作の不具合が生じたときに、ゲストＯＳ２０１、２０２上の情報採取要求プログラム２０５、２０６を通して仮想化レイヤ２０３に描画命令データ２０７及びリソース情報２０８の保存を要求する。
【００２２】
仮想化レイヤ２０３は情報採取要求プログラム２０５、２０６からのトリガを受けて、仮想マシンサーバのリソース情報２０８と、仮想マシンごとの描画命令データ２０７とを保存する。
【００２３】
図３では、ゲストＯＳ２０１の情報採取要求プログラム２０５が、仮想化レイヤ２０３に対してゲストＯＳ２０１の描画命令データ２０７と仮想マシンサーバの性能データ２０８を保存するよう要求を出している。
【００２４】
次に、図４のフローチャートを参照して本実施の形態の動作について詳細に説明する。
【００２５】
仮想マシンで性能低下や動作の不具合が生じた場合には、仮想マシンに係るゲストＯＳ、例えば、図３ではゲストＯＳ２０１から情報採取要求プログラム２０５を使用してデータの保存を仮想化レイヤ２０３に要求する必要がある。
【００２６】
ゲストＯＳ２０１は、情報採取要求プログラム２０５を通して仮想化レイヤ２０３に描画命令データ２０７と性能データ２０８を保存するように要求を出す(ステップＳ４０１)。
【００２７】
仮想化レイヤ２０３は、描画命令データ２０７とリソース情報２０８とを保存して(ステップＳ４０２)、一連の処理は終了する。
【００２８】
保存した描画命令データ２０７及びリソース情報２０８を別途解析することで、仮想マシンの性能低下や不具合の原因について仮想マシンサーバ全体の観点と仮想マシンのＯＳ上の操作の観点の両面から原因を調査できる。
【００２９】
又、本発明では、図５に示すように仮想化レイヤ上に制御用仮想マシンを設け、入出力（ＩＯ）処理やハードウェアのリソース管理等のマネージメント機能を制御用仮想マシンの制御ＯＳ２１０で処理するようにしてもよい。
【産業上の利用可能性】
【００３０】
本発明は、２以上の異なるゲストＯＳがインストールされる仮想マシンサーバのメンテナンス作業用に適している。
【図面の簡単な説明】
【００３１】
【図１】一般的な仮想マシン環境を示す図である。
【図２】本発明の実施の形態による仮想マシン環境の構成を示す図である。
【図３】本発明の実施の形態による仮想マシン環境にインストールされた情報採取要求プログラムを示す図である。
【図４】本発明の実施の形態の動作を示すフローチャートである。
【図５】仮想化レイヤ上に制御用仮想マシンを設けた仮想マシン環境を示す図である。
【符号の説明】
【００３２】
１００  仮想マシン環境
１０１、１０２  ゲストＯＳ
１０３  仮想化レイヤ
１０４  ホストＯＳ
１０５  ハードウェア
２０１、２０２  ゲストＯＳ
２０３  仮想化レイヤ
２０４  ハードウェア
２０５、２０６  情報採取要求プログラム
２０７  描画命令データ
２０８  リソース情報
２１０  制御ＯＳ
【図１】
0004877608.tif 000002
【図２】
0004877608.tif 000003
【図３】
0004877608.tif 000004
【図４】
0004877608.tif 000005
【図５】
0004877608.tif 000006