(57)【要約】【課題】  従来の仮想マシン管理システムは、仮想マシン上で実行されるアプリケーションプログラムやＯＳの処理や状態の遷移を事前に知り、仮想マシンの管理に利用することができなかった。【解決手段】  仮想マシン管理システム１０は、仮想マシンの属性情報を設定する仮想マシン属性設定部１１、その属性情報を記憶する仮想マシン属性記憶部１２、仮想マシンの移送を決定する仮想マシン移送判定部１３、および仮想マシン移送部１４を備え、仮想マシンの実行中にその属性情報を外部から変更させ、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送を決定する。【選択図】  図１
2010238044.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンの移送機能を有する仮想マシン管理システムにおいて、仮想マシンの属性情報を設定する仮想マシン属性設定手段と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶手段と、仮想マシンの移送の可否を決定する仮想マシン移送判定手段と、前記仮想マシンを前記移送先に移送する仮想マシン移送手段とを備え、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定することを特徴とする仮想マシン管理システム。
【請求項２】
請求項１に記載の仮想マシン管理システムにおいて、前記仮想マシン移送判定手段は、前記複数の仮想マシンの属性情報の内で組み合わせの不適切な仮想マシンを外部の移送先に移送することを決定することを特徴とする仮想マシン管理システム。
【請求項３】
請求項１又は２に記載の仮想マシン管理システムにおいて、前記仮想マシン移送判定手段は、外部からの仮想マシンの移送要求を受けた際に、前記複数の仮想マシンの属性情報と移送要求に含まれる仮想マシンの属性情報の組み合わせの適切さの判定結果に基いて、前記移送要求を受理するか拒否するかを決定し、前記決定の結果を前記移送要求の要求元に返答し、前記仮想マシン移送手段は、前記返答が受理の場合は仮想マシンを移送し、拒否の場合は仮想マシンの移送を中止することを特徴とする仮想マシン管理システム。
【請求項４】
請求項３に記載の仮想マシン管理システムにおいて、前記仮想マシン移送判定手段は、前記移送先の仮想マシンの属性情報と前記移送要求に含まれる仮想マシンの属性情報の組み合わせが不適切な場合に、前記移送要求の拒否を決定し、前記移送先の仮想マシンの属性情報と前記移送する仮想マシンの属性情報の組み合わせが適切な場合に、前記移送要求の受理を決定することを特徴とする仮想マシン管理システム。
【請求項５】
請求項１乃至４の内のいずれか一項に記載の仮想マシン管理システムにおいて、前記仮想マシンの属性情報は、当該仮想マシン上で実行されるプログラムの安全レベルを示すことを特徴とする仮想マシン管理システム。
【請求項６】
請求項１乃至４の内のいずれか一項に記載の仮想マシン管理システムにおいて、前記仮想マシンの属性情報は、リソース利用特性であり、前記仮想マシン移送判定手段は、同じリソース同士の組み合わせを避けるように判定することを特徴とする仮想マシン管理システム。
【請求項７】
仮想マシンの移送機能を有する仮想マシン管理方法において、仮想マシンの属性情報を設定する仮想マシン属性設定段階と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶段階と、仮想マシンの移送の可否を決定する仮想マシン移送判定段階と、前記仮想マシンを前記移送先に移送する仮想マシン移送段階とを備え、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定することを特徴とする仮想マシン管理方法。
【請求項８】
請求項７に記載の仮想マシン管理方法において、前記仮想マシン移送判定段階は、前記複数の仮想マシンの属性情報の内で組み合わせの不適切な仮想マシンを外部の移送先に移送することを決定することを含むことを特徴とする仮想マシン管理方法。
【請求項９】
請求項７又は８に記載の仮想マシン管理方法において、前記仮想マシン移送判定段階は、外部からの仮想マシンの移送要求を受けた際に、前記複数の仮想マシンの属性情報と移送要求に含まれる仮想マシンの属性情報の組み合わせの適切さの判定結果に基いて、前記移送要求を受理するか拒否するかを決定し、前記決定の結果を前記移送要求の要求元に返答し、前記仮想マシン移送手段は、前記返答が受理の場合は仮想マシンを移送し、拒否の場合は仮想マシンの移送を中止することを特徴とする仮想マシン管理方法。
【請求項１０】
請求項９に記載の仮想マシン管理方法において、前記仮想マシン移送判定手段は、前記移送先の仮想マシンの属性情報と前記移送要求に含まれる仮想マシンの属性情報の組み合わせが不適切な場合に、前記移送要求の拒否を決定し、前記移送先の仮想マシンの属性情報と前記移送する仮想マシンの属性情報の組み合わせが適切な場合に、前記移送要求の受理を決定することを特徴とする仮想マシン管理方法。
【請求項１１】
仮想マシンの移送機能を有する仮想マシン管理プログラムにおいて、コンピュータに仮想マシンの属性情報を設定する仮想マシン属性設定手段と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶手段と、仮想マシンの移送の可否を決定する仮想マシン移送判定手段と、前記仮想マシンを前記移送先に移送する仮想マシン移送手段として機能させ、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定するように機能することを特徴とする仮想マシン管理プログラム。
【請求項１２】
請求項１１に記載の仮想マシン管理プログラムにおいて、前記仮想マシン移送判定手段は、前記複数の仮想マシンの属性情報の内で組み合わせの不適切な仮想マシンを外部の移送先に転送することを決定するように機能することを特徴とする仮想マシン管理プログラム。
【請求項１３】
請求項１１又は１２に記載の仮想マシン管理プログラムにおいて、前記仮想マシン移送判定手段は、外部からの仮想マシンの移送要求を受けた際に、前記複数の仮想マシンの属性情報と移送する仮想マシンの属性情報の組み合わせの適切さの判定結果に基いて、前記移送要求を受理するか拒否するかを決定し、前記決定の結果を前記移送要求の要求元に返答し、前記仮想マシン移送手段は、前記返答が受理の場合は仮想マシンを移送し、拒否の場合は仮想マシンの移送を中止するように機能することを特徴とする仮想マシン管理プログラム。
【請求項１４】
請求項１３に記載の仮想マシン管理プログラムにおいて、前記仮想マシン移送判定手段は、前記移送先の仮想マシンの属性情報と前記移送する仮想マシンの属性情報の組み合わせが不適切な場合に、前記移送要求の拒否を決定し、前記移送先の仮想マシンの属性情報と前記移送する仮想マシンの属性情報の組み合わせが適切な場合に、前記移送要求の受理を決定するように機能することを特徴とする仮想マシン管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン管理システム、仮想マシン管理方法および仮想マシン管理プログラムに関し、特に、仮想マシンの属性値に基づいて仮想マシンの移送を決定する仮想マシン管理システム、仮想マシン管理方法および仮想マシン管理プログラムに関する。
【背景技術】
【０００２】
近年、仮想マシン移送技術を用いて、サーバの負荷分散やサーバの無停止での切り替えを実現する、仮想マシン管理システムが知られている。ここで、仮想マシンとは、１台のコンピュータを複数台の仮想的なコンピュータに分割したものであり、それぞれに別のＯＳやアプリケーションソフトを動作させることができる。また、仮想マシン移送技術とは、仮想マシン単位で、あるマシンから別のマシンに処理を移動させる技術である。仮想マシンを提供するソフトウェア製品としては、ＶＭｗａｒｅやＸｅｎなどが知られており、これらの製品は、仮想マシン移送技術として、それぞれ、ＶＭｏｔｉｏｎとＸｅｎＭｏｔｉｏｎを備えている。
【０００３】
仮想マシン移送技術を利用して、コンピュータの資源管理を行う方式の一例が特許文献１に示されている。特許文献１に記載のコンピュータおよび仮想マシンの管理方式では、コンピュータ毎に動作するエージェントが仮想マシンの資源を監視し、測定指標を感知するのに加え、仮想マシン内で動作する軽量エージェントが仮想マシンおよびその仮想マシン上で実行するアプリケーションに関する測定指標を感知、収集し、次いで、それらの測定指標がエージェントに集められる。仮想マシン管理システムはそれらの測定指標に基づいて、可用性を維持するため、あるいは、負荷を分散させるために仮想マシンを移送する。
【０００４】
一方、仮想マシン移送技術を利用して、コンピュータの資源管理を行う技術の別の例が非特許文献１に示されている。非特許文献１に記載の統合プラットフォーム管理ソフトウェアであるＳｉｇｍａＳｙｓｔｅｍＣｅｎｔｅｒ（ＮＥＣ）は、仮想マシンを実行するコンピュータの負荷状態を監視し、負荷の高いコンピュータから低いコンピュータに仮想マシンを移動させることにより、コンピュータ間の負荷のばらつきを調整したり、あるいは、負荷の低いコンピュータの仮想マシンを他のコンピュータに移動させることにより、可能な限り少数のコンピュータ上に業務を自動集約したりする機能を有する。また、仮想マシンを実行するコンピュータの障害を予兆し、仮想マシンを別のコンピュータに移送することにより、障害によるサービスの停止を防ぐ機能を提供する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特表２００８−５１７３８２号公報（Ｐ．８の段落００１０〜Ｐ．１２の段落００２７）
【非特許文献】
【０００６】
【非特許文献１】「ＳｉｇｍａＳｙｓｔｅｍＣｅｎｔｅｒ  ２．１  リーフレット」ｈｔｔｐ：／／ｗｗｗ．ｎｅｃ．ｃｏ．ｊｐ／ｐｆｓｏｆｔ／ｓｉｇｍａｓｙｓｔｅｍｃｅｎｔｅｒ／ｄｏｃ／ＳＳＣ２１＿０８１０．ｐｄｆ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の仮想マシン管理システムは、仮想マシン上で実行されるアプリケーションプログラムやＯＳの処理や状態の遷移を事前に知り、仮想マシンの管理に利用することができないので、仮想マシンを移動させるという対応が、過負荷や障害などの不具合が起きた時点、あるいは、それらの不具合がもうすぐ起きそうだと仮想マシン管理システムが予測した時点になるため、不具合への対応が間に合わない可能性があることである。
【０００８】
そこで、本発明の目的は、仮想マシン上で実行されるアプリケーションプログラムやＯＳの処理や状態の遷移を事前に入手し、仮想マシンの管理に利用できる仮想マシン管理システム、仮想マシン管理方法および仮想マシン管理プログラムを提供することである。
【課題を解決するための手段】
【０００９】
本発明では、上記目的を達成するために、仮想マシンの属性情報を設定する仮想マシン属性設定手段と、その属性情報を記憶する仮想マシン属性記憶手段と、仮想マシンの移送を決定する仮想マシン移送判定手段とを備え、仮想マシンの実行中にその属性情報を外部から変更させ、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定する。このような構成を採用したものである。
【００１０】
即ち、本発明によれば、仮想マシンの移送機能を有する仮想マシン管理システムにおいて、仮想マシンの属性情報を設定する仮想マシン属性設定手段と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶手段と、仮想マシンの移送の可否を決定する仮想マシン移送判定手段と、前記仮想マシンを前記移送先に移送する仮想マシン移送手段とを備え、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定することを特徴とする仮想マシン管理システムが得られる。
【００１１】
また、本発明によれば、仮想マシンの移送機能を有する仮想マシン管理方法において、仮想マシンの属性情報を設定する仮想マシン属性設定段階と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶段階と、仮想マシンの移送の可否を決定する仮想マシン移送判定段階と、前記仮想マシンを前記移送先に移送する仮想マシン移送段階とを備え、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定することを特徴とする仮想マシン管理方法が得られる。
【００１２】
さらに、本発明によれば、仮想マシンの移送機能を有する仮想マシン管理プログラムにおいて、コンピュータに仮想マシンの属性情報を設定する仮想マシン属性設定手段と、前記仮想マシンの属性情報を記憶する仮想マシン属性記憶手段と、仮想マシンの移送の可否を決定する仮想マシン移送判定手段と、前記仮想マシンを前記移送先に移送する仮想マシン移送手段として機能させ、仮想マシンの実行中に前記仮想マシンの属性情報が変更可能に保持されるとともに、前記仮想マシン移送判定手段は、移送判定の際に、複数の仮想マシンの属性情報の組合せの適切さを判定し、仮想マシンの移送の可否を決定するように機能することを特徴とする仮想マシン管理プログラムが得られる。
【発明の効果】
【００１３】
本発明によれば、仮想マシンの実行中にその属性情報を外部から変更させ、移送判定の際に複数の仮想マシンの属性情報の組合せの適切さを判定するために、同一コンピュータ上で、不適切な関係を持つ仮想マシンが動作することを未然に防ぐことができる仮想マシン管理システム、仮想マシン管理方法および仮想マシン管理プログラムを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態による仮想マシン管理システムの構成を示すブロック図である。
【図２】図１の第１の実施の形態による仮想マシン管理システムの動作説明に供せられる流れ図である。
【図３】本発明の第２の実施の形態による仮想マシン管理システムの構成を示すプロック図である。
【図４】図３の第２の実施の形態による仮想マシン管理システムの動作説明に供せられる流れ図である。
【図５】本発明の第１実施例による仮想マシン管理ソフトウェアの動作を示す図である。
【図６】本発明の第２実施例による仮想マシン管理ソフトウェアの動作を示す図である。
【発明を実施するための形態】
【００１５】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００１６】
（第１の実施の形態）
本発明の第１の実施の形態による仮想マシン管理システムの構成を示すブロック図である。図１を参照すると、本発明の第１の実施の形態による仮想マシン管理システム１０は、仮想マシン（以下、ＶＭと呼ぶ）属性設定部１１、ＶＭ属性記憶部１２、ＶＭ移送判定部１３、及びＶＭ移送部１４を備えて構成される。また、仮想マシン管理システム１０上では、仮想マシン（ＶＭ）が動作し、そのＶＭの中で、オペレーティングシステム（以下、ＯＳと呼ぶ）が動作し、さらにそのＯＳの上でプロセスが動作する。ここでプロセスとは実行状態のプログラムのことを示す。
【００１７】
ＶＭ属性記憶部１２は、ＶＭに関する属性情報をＶＭの識別子と組み合わせて保持する。ここで、属性情報とは、ＶＭの性質を現す情報である。属性情報の１つの例として、安全レベルを含むことができる。
【００１８】
安全レベルとは、当該ＶＭ上で実行されるプログラムが安全なものであるかを示す指標である。例えば、信頼できる出所のプログラムであり、信頼できるデータを操作し、信頼できる相手とだけ通信をするプログラムが動作する場合は、ＶＭに安全レベルとして「高」が与えられ、出所が信頼できない、あるいは、操作対象のデータが信用できない、あるいは、通信相手が信用できないプログラムが動作する場合には、ＶＭに安全レベルとして「低」が与えられる。
【００１９】
ＶＭ属性設定部１１は、ＶＭ属性記憶部１２に属性値を設定する。ＶＭ上で動作するプログラムは、ＶＭ属性設定部１１を呼び出して、ＶＭの属性値を変更することができる。例えば、信頼性の低いデータにアクセスする直前に、安全レベルを「低」にすることができる。
【００２０】
ＶＭ移送判定部１３は、ＶＭの属性値が変更された場合に、変更されたＶＭの属性値と、ＶＭ属性記憶部１２に保存されている残りすべてのＶＭの属性値の組合せについて適切さを計算して、そのＶＭを別のコンピュータに移送するかどうかを判定する。この適切さの計算方法として、例えば、安全レベルが「低」のＶＭと安全レベルが「高」のＶＭを組み合わせるのは不適切である、「低」のみ、「高」のみの組合せは適切であるという計算方法を利用できる。この方法を用いることにより、あるＶＭの安全レベルが「低」に変更されたとし、同じコンピュータ上で安全レベルが「高」のＶＭが存在する場合、前者のＶＭを別のＶＭに移送し、安全レベルが「低」のＶＭと「高」のＶＭが同じコンピュータ上で動作し、安全レベル「低」のＶＭの不具合により、安全レベル「高」のＶＭの実行が脅かされるという事態を回避することができる。
【００２１】
さらに、ＶＭ移送判定部１３は、ＶＭの移送を決定した場合は、ＶＭを移送する先のコンピュータを決定する。ＶＭを移送する先のコンピュータを決定する方法としては、例えば、あらかじめ登録された複数の移送先候補のコンピュータの中から、ランダムに１台を選択する方法を用いることができる。
【００２２】
ＶＭ移送部１４は、ＶＭをあるコンピュータから別のコンピュータへ移動させる。ＶＭ移送部１４は、従来技術のＸｅｎＭｏｔｉｏｎやＶＭｏｔｉｏｎを利用して実現することができる。
【００２３】
次に、図２のフローチャートを参照して、図１の仮想マシン管理システムの動作を説明する。なお、すべてのＶＭには、その上で動作するプロセスにより、ＶＭ属性設定部１１を介して、あらかじめ、安全レベルが設定されているものとする。
【００２４】
ＶＭ上のプログラムから、属性値をパラメータにして、ＶＭ属性設定部１１が呼び出される（ステップＳ１）。
【００２５】
ＶＭ属性設定部１１は、パラメータとして渡された属性値をＶＭ属性記憶部１２に書き込み、設定する（ステップＳ２）。
【００２６】
さらに、ＶＭ属性設定部１１は、ＶＭ移送判定部１３を呼び出す（ステップＳ３）。
【００２７】
ＶＭ移送判定部１３は、新たに設定されたＶＭの属性値と、それ以外のＶＭの属性値の組合せが適切かどうかを判定する（ステップＳ４）。
【００２８】
このステップ４で、ＶＭ移送判定部１３が組合せを適切でないと判定した場合（ステップＳ４の「Ｎｏ」）、ＶＭ移送判定部１３は、移送先のコンピュータを決定し、次に、ＶＭ移送部１４を呼び出し、当該ＶＭを、他のコンピュータに移動させる（ステップＳ５）。
【００２９】
一方、ステップ４で、ＶＭ移送判定部１３が組合せを適切だと判定した場合（ステップＳ４の「Ｙｅｓ」）には、何もせずに終了する。
【００３０】
次に、本発明の第１の実施の形態の効果について説明する。
【００３１】
本発明の第１の実施の形態による仮想マシン管理システム１０は、ＶＭ上で動作するプログラム自身が、ＶＭの属性を変更できるようにし、その属性値に基づいて、ＶＭの移送を判定することで、不適切な組合せのＶＭが同じコンピュータ上で実行されることを防ぐことができる。
【００３２】
（第２の実施の形態）
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。図３は本発明の第２の実施の形態による仮想マシン管理システムの構成を示すプロック図である。図３を参照すると、本発明の第２の実施の形態による仮想マシン管理システム３０は、ＶＭ属性設定部３１、ＶＭ属性記憶部３２、ＶＭ移送判定部３３及びＶＭ移送部３４を備えて構成される。また、仮想マシン管理システム３０上では、仮想マシン（ＶＭ）が動作し、そのＶＭの中で、オペレーティングシステム（ＯＳ）が動作し、さらにそのＯＳの上でプロセスが動作する。なお、図示しないが同様の構成を持つ仮想マシンシステムがネットワークで接続された別のコンピュータで動作しているものとする。
【００３３】
ＶＭ属性設定部３１とＶＭ属性記憶部３２とは、それぞれ、第１の実施の形態のＶＭ属性設定部１１とＶＭ属性記憶部１２と同様の構成を備えている。
【００３４】
すなわち、ＶＭ属性設定部３１は、ＶＭ属性記憶部３２に属性値を設定し、ＶＭ属性記憶部３２は、ＶＭに関する属性情報を保持する。なお、ＶＭの属性情報は、第１の実施例と同様にＶＭ上で実行されるプログラムにより、ＶＭ属性設定部３１を使って、ＶＭ属性記憶部３２に保存される。
【００３５】
一方、ＶＭ移送判定部３３は、他のコンピュータからＶＭ移送要求を受信した場合に、そのＶＭを受理するかどうかを判定し、その結果を移送要求元ノードに返答する。ここで、ＶＭ移送要求とは、他のコンピュータからこのコンピュータにＶＭを移送したいという要求であり、移送されるＶＭの属性情報が含まれる。判定の方法として、例えば、第１の実施の形態と同様の方法を用いることができる。すなわち、安全レベルが「低」のＶＭと安全レベルが「高」のＶＭを同じコンピュータ上で動作させないという判定方法を利用できる。この方法を用いることにより、あるＶＭの安全レベルが「低」に変更されたとし、同じコンピュータ上で安全レベルが「高」のＶＭが存在する場合、前者のＶＭを別のＶＭに移送し、安全レベルが「低」のＶＭと「高」のＶＭが同じコンピュータ上で動作し、安全レベル「低」のＶＭの不具合により、安全レベル「高」のＶＭの実行が脅かされるという事態を回避することができる。
【００３６】
さらに、ＶＭ移送部３４は、移送先に対してＶＭ移送要求を送信し、受理の応答が返ってきた場合だけ、ＶＭをあるコンピュータから別のコンピュータへ移動させる。ＶＭ移送要求に含める情報には少なくとも、送信元のコンピュータの識別子とＶＭの属性情報が含まれる。このＶＭの属性情報は、ＶＭ属性記憶部３２から取り出す。
【００３７】
ＶＭ移送部３４のＶＭを移動させる部分は、従来技術のＸｅｎＭｏｔｉｏｎやＶＭｏｔｉｏｎを利用して実現することができる。
【００３８】
次に、図４のフローチャートを参照して、図３の仮想マシン管理システムの動作について説明する。なお、すべてのＶＭには、その上で動作するプロセスにより、ＶＭ属性設定部３１を介して、あらかじめ、安全レベルが設定されているものとする。
【００３９】
他のコンピュータのＶＭ移送部３４からＶＭ移送要求がこのコンピュータに対して送信される（ステップＳ１１）。
【００４０】
このコンピュータのＶＭ移送判定部３３は、前記ＶＭ移送要求を受信し、移送判定を開始する（ステップＳ１２）。
【００４１】
ＶＭ移送判定部３３は、移送要求に含まれるＶＭの属性値と、ＶＭ属性記憶部３２に含まれるＶＭの属性値の組合せが適切かどうかを判定する（ステップＳ１３）。
【００４２】
ここで、ステップ１３で、組合せが適切だと判定された場合（ステップＳ１３のＹｅｓ）には、ＶＭ移送判定部３３は他のコンピュータのＶＭ移送部３４に対して、受理の応答を送信する（ステップＳ１４）。
【００４３】
更に、ステップ１３で、組合せが適切でないと判定された場合（ステップＳ１３のＮｏ）、ＶＭ移送判定部３３は他のコンピュータのＶＭ移送部３４に対して、拒否の応答を送信する（ステップＳ１５）。
【００４４】
受理の応答を受け取った、他のコンピュータのＶＭ移送部３４は、ＶＭを移送する（ステップＳ１６）。
【００４５】
次に、本発明の第２の実施の形態による仮想マシン管理システムの効果について説明する。
【００４６】
本発明の実施の形態による仮想マシン管理システムは、ＶＭを他のコンピュータに移送する際に、その属性値に基づいて、ＶＭの移送を判定することで、不適切な組合せのＶＭが同じコンピュータ上で実行されることを防ぐことができる。
【実施例】
【００４７】
次に、具体的な実施例を用いて本発明を実施するための形態の動作を説明する。
【００４８】
（第１実施例）
第１実施例として、ＶＭ上で実行されるアプリケーションプログラムの安全レベルに応じて、そのアプリケーションプログラムを含むＶＭを適切なコンピュータ上で実行する仮想マシン管理ソフトウェアに本発明を適用する例を示す。
【００４９】
図５は、本発明の第１実施例の仮想マシン管理ソフトウェアの動作例を示す図である。図５を参照すると、第１実施例の仮想マシン管理ソフトウェア５０は、本発明の仮想マシン管理システム１０を含む。そして、その上で動作するＶＭ５１−１は、安全レベルが「高」でありＷｅｂブラウザが動作している。一方、ＶＭ５１−２は、安全レベル「高」であり、プロセスＣが動作している。そして、Ｗｅｂブラウザは、信頼できるＷｅｂページを参照している場合は、ＶＭの安全レベルを「高」に設定し、信頼できないＷｅｂページを参照する場合には自発的に安全レベルを「低」に設定する。先の状態で、Ｗｅｂブラウザが参照するＷｅｂページを信頼できないＷｅｂページに切り替えるときに、Ｗｅｂブラウザは仮想マシン管理ソフトウェア５０に含まれるＶＭ属性設定部１１を呼び出して、ＶＭ５１−１の安全レベルを「高」から「低」に変更する。ここで仮想マシン管理ソフトウェア５０に含まれるＶＭ移送判定部１３は、安全レベルが「高」のＶＭ５１−１と安全レベルが「低」のＶＭ５１−２が、同じコンピュータ５２上で共存することは適切でないと判定し、ＶＭ５１−１を別のコンピュータに移送することを決定する。
【００５０】
第１実施例の仮想マシン管理ソフトウェアを用いることにより、Ｗｅｂブラウザのように動的に安全レベルが変更されるようなプログラムがＶＭ上で動作している場合でも、安全な状態でＶＭを実行することができる。
【００５１】
（第２実施例）
次に、本発明の第２の実施例による仮想マシン管理ソフトウェアの動作について説明する。第２の実施例として、ＶＭ上で実行されるアプリケーションプログラムの安全レベルに応じて、そのアプリケーションプログラムを含むＶＭを適切なコンピュータ上で実行する仮想マシン管理ソフトウェアに本発明を適用する例を示す。
【００５２】
図６は本発明の第２の実施例による仮想マシン管理ソフトウェアの動作例を示す図である。図６を参照すると、本発明の第２実施例による仮想マシン管理ソフトウェア６０−１、６０−２は、本発明の仮想マシン管理システム３０（図では３０−１と３０−２）を含む。そして、コンピュータ６２−１で動作するＶＭ６１−１は、安全レベルが「高」である。一方、コンピュータ６２−２で動作するＶＭ６１−２は、安全レベル「高」であり、ＶＭ６１−３は安全レベル「低」である。この状態で、コンピュータ６２−２のＶＭ移送手段３４−２が、ＶＭ６１−２をコンピュータ６２−１に移送する場合、ＶＭ６１−１とＶＭ６１−２は共に安全レベル「高」であるので、コンピュータ６２−１のＶＭ移送判定手段６２−１により、移送要求が受理される。一方、コンピュータ６２−２のＶＭ移送手段３４−２が、ＶＭ６１−３をコンピュータ６２−１に移送する場合、ＶＭ６１−１とＶＭ６１−３はそれぞれ安全レベル「高」と「低」であるので、コンピュータ６２−１のＶＭ移送判定手段３３−１により、移送要求が拒否される。
【００５３】
第２の実施例の仮想マシン管理ソフトウェアを用いることにより、動的にＶＭを移動させる場合に、他のＶＭの安全な状態を脅かすことを防ぐことができる。
【００５４】
（第３実施例）
第３の実施例として、属性情報として、リソース利用特性を使う例を示す。
【００５５】
リソース利用特性とは、当該ＶＭ上で実行されるプログラムの計算資源の利用特性を示す指標である。例えば、ディスクのファイルＩ／Ｏの頻度や量が多いプログラムが動作する場合には、ＶＭにリソース利用特性として「Ｄｉｓｋ」が与えられ、ネットワークを介した通信の頻度や量が多いプログラムが動作する場合には、ＶＭにリソース利用特性として「Ｎｅｔｗｏｒｋ」が与えられ、主にＣＰＵによる計算が主体のプログラムが動作する場合には、ＶＭにリソース利用特性として「ＣＰＵ」が与えられる。
【００５６】
リソース利用特性を属性値として用いた場合、判定方法は、「Ｄｉｓｋ」同士、「Ｎｅｔｗｏｒｋ」同士、「ＣＰＵ」同士の組合せをできるだけ避けるという判定方法になる。
【００５７】
第３の実施例を用いることにより、実際にリソースが使用される前に、ＶＭのリソース利用特性を考慮したＶＭの配置が可能になり、ＶＭ上のプログラムの性能向上が期待できる。
【産業上の利用可能性】
【００５８】
以上の説明の通り、本発明に係る仮想マシン管理システム、仮想マシン管理方法および仮想マシン管理プログラムにおいては、データセンタ内でのプロセスと仮想マシンを最適に配置するシステム管理製品といった用途に適用できる。
【符号の説明】
【００５９】
１０，３０    仮想マシン管理システム
１１，３１    仮想マシン（ＶＭ）属性設定部
１２，３２    仮想マシン（ＶＭ）属性記憶部
１３，３３    仮想マシン（ＶＭ）移送判定部
１４，３４    仮想マシン（ＶＭ）移送部
２０−１，２０−ｎ，４０−１，４０−ｎ，５１−１，５１−２，６１−１，６１−２，６１−３  仮想マシン（ＶＭ）
５０，６０−１，６０−２    仮想マシン管理ソフトウェア
５２，６２−１，６２−２    コンピュータ
【図１】
2010238044.tif 000003
【図２】
2010238044.tif 000004
【図３】
2010238044.tif 000005
【図４】
2010238044.tif 000006
【図５】
2010238044.tif 000007
【図６】
2010238044.tif 000008