(57)【要約】【課題】保守管理者によらずに、仮想マシンの正常性確認を行う。【解決手段】正常性確認サーバ２００が、仮想マシン１１０をエミュレートする物理マシン１００から、仮想マシン１１０が移転されたことを示す通知を受信する。そして、正常性確認サーバ２００が、物理マシン１００から当該通知を受信した場合に、移転された仮想マシン１１０の正常性の確認を行う。【選択図】図１
2015125678.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部と、
前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部と
を備える仮想マシン管理装置。
【請求項２】
前記正常性確認部が、移転された前記仮想マシンの正常性が不良であると判定した場合、移転前の前記物理マシン及び移転後の前記物理マシン以外の物理マシンに、当該仮想マシンと同じ仮想マシンを起動させる仮想マシン起動部
を備える請求項１に記載の仮想マシン管理装置。
【請求項３】
前記仮想マシン起動部は、移転前の前記物理マシン及び移転後の前記物理マシン以外の物理マシンの中から、ＣＰＵ使用率またはメモリ使用率の少なくとも一方に基づいて、前記仮想マシンを起動させる物理マシンを決定する
請求項２に記載の仮想マシン管理装置。
【請求項４】
前記仮想マシンをエミュレートするためのプログラムが複数の前記物理マシンに記憶され、
前記仮想マシン起動部は、移転された前記仮想マシンと同じ仮想マシンをエミュレートするためのプログラムを記憶する前記物理マシンを、前記仮想マシンを起動させる物理マシンに決定する
請求項２または請求項３に記載の仮想マシン管理装置。
【請求項５】
仮想マシンをエミュレートする複数の物理マシンと
前記複数の物理マシンを管理する仮想マシン管理装置と
を備え、
前記物理マシンは、
前記仮想マシンを移転した時に、前記仮想マシンが移転されたことを示す通知を発する移転通知部
を備え、
前記仮想マシン管理装置は、
前記物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部と、
前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部と
を備えるサーバ仮想化システム。
【請求項６】
仮想マシン管理装置が、仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信するステップと、
前記仮想マシン管理装置が前記通知を受信した場合に、前記仮想マシン管理装置が、移転された前記仮想マシンの正常性の確認を行うステップと
を含む仮想マシン管理方法。
【請求項７】
コンピュータを、
仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部、
前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン管理装置、サーバ仮想化システム、仮想マシン管理方法及びプログラムに関する。
【背景技術】
【０００２】
複数の物理マシンを１つの基盤として振る舞わせる仮想化基盤システムにおいては、個々の物理マシンの余剰リソースを極力なくし、リソースを最適化することが求められている。仮想化基盤のリソースの最適化を図るために、仮想マシンを動的に移転させる手法が確立されている（例えば、特許文献１を参照）。このとき、仮想マシンが動的に移転したときに仮想マシンで動作するサービスが正常に動作しているか確認する必要があり、その正常性は保守管理者が手動で確認している。
【０００３】
なお、特許文献２には、所定の運用作業が発生するタイミングで運用者に通知を行う技術が開示されている。また、特許文献３には、システムに障害が発生したときに、障害対策用のジョブを実行する技術が開示されている。また、特許文献４には、ネットワークにおける状況の変化を検知して生じた事象ごとに状況を把握するための手順を実行する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−００３６５１号公報
【特許文献２】特開２０１３−０２９９８５号公報
【特許文献３】特開２０１２−０９３８９４号公報
【特許文献４】特開２０１１−１５５３６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、移転した仮想マシンの正常性を保守管理者が手動で確認する場合、移転から正常性の確認がなされるまでにタイムラグが生じ、また保守管理者の人的コストがかかるという問題がある。
本発明の目的は、上述した課題を解決する仮想マシン管理装置、サーバ仮想化システム、仮想マシン管理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
第１の態様は、仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部と、前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部とを備える仮想マシン管理装置である。
【０００７】
また、第２の態様は、第１の態様において、前記正常性確認部が、移転された前記仮想マシンの正常性が不良であると判定した場合、移転前の前記物理マシン及び移転後の前記物理マシン以外の物理マシンに、当該仮想マシンと同じ仮想マシンを起動させる仮想マシン起動部を備える仮想マシン管理装置である。
【０００８】
また、第３の態様は、第２の態様において、前記仮想マシン起動部は、移転前の前記物理マシン及び移転後の前記物理マシン以外の物理マシンの中から、ＣＰＵ使用率またはメモリ使用率の少なくとも一方に基づいて、前記仮想マシンを起動させる物理マシンを決定する仮想マシン管理装置である。
【０００９】
また、第４の態様は、第３の態様において、前記仮想マシンをエミュレートするためのプログラムが複数の前記物理マシンに記憶され、前記仮想マシン起動部は、移転された前記仮想マシンと同じ仮想マシンをエミュレートするためのプログラムを記憶する前記物理マシンを、前記仮想マシンを起動させる物理マシンに決定する請求項２または仮想マシン管理装置である。
【００１０】
また、第５の態様は、仮想マシンをエミュレートする複数の物理マシンと前記複数の物理マシンを管理する仮想マシン管理装置とを備え、前記物理マシンは、前記仮想マシンを移転した時に、前記仮想マシンが移転されたことを示す通知を発する移転通知部を備え、前記仮想マシン管理装置は、前記物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部と、前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部とを備えるサーバ仮想化システムである。
【００１１】
また、第６の態様は、仮想マシン管理装置が、仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信するステップと、前記仮想マシン管理装置が前記通知を受信した場合に、前記仮想マシン管理装置が、移転された前記仮想マシンの正常性の確認を行うステップとを含む仮想マシン管理方法である。
【００１２】
また、第７の態様は、コンピュータを、仮想マシンをエミュレートする物理マシンから、前記仮想マシンが移転されたことを示す通知を受信する通知受信部、前記通知受信部が前記通知を受信した場合に、移転された前記仮想マシンの正常性の確認を行う正常性確認部として機能させるためのプログラムである。
【発明の効果】
【００１３】
上記態様のうち少なくとも１つの態様によれば、仮想マシン管理装置は、仮想マシンが移転した後、保守管理者によらずに、自動的に当該仮想マシンの正常性確認を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】一実施形態によるサーバ仮想化システムの構成を示す概略図である。
【図２】サーバ仮想化システムのソフトウェア構成を示す概略ブロック図である。
【図３】テーブル記憶部が記憶する情報の例を示す図である。
【図４】サーバ仮想化システムの動作の概略を示すシーケンス図である。
【図５】一実施形態による正常性確認サーバの動作を示すフローチャートである。
【図６】少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照しながら実施形態について詳しく説明する。
図１は、一実施形態によるサーバ仮想化システム１の構成を示す概略図である。
サーバ仮想化システム１は、複数の物理マシン１００と、正常性確認サーバ２００とを備える。本実施形態において正常性確認サーバ２００は、仮想マシン管理装置の一例である。
【００１６】
各物理マシン１００は、仮想マシンプログラムを実行することで、１つまたは複数の仮想マシン１１０をエミュレートする。また、各物理マシン１００は、同一の仮想化基盤プログラムを実行することで、１つの仮想化基盤を構成する。これにより、サーバ仮想化システム１は、複数の物理マシン１００間で仮想マシン１１０を移転させることができる。また、複数の物理マシン１００は、それぞれデータセンタ３００に格納されている。なお、図１は、サーバ仮想化システム１が２つのデータセンタ３００を備え、各データセンタ３００が１つずつ物理マシン１００を備える例を示すが、これに限られない。例えば、サーバ仮想化システム１は、３つ以上のデータセンタ３００を備えていても良いし、１つのデータセンタ３００を備えていても良い。また、各データセンタ３００は、２つ以上の物理マシン１００を備えても良い。
【００１７】
正常性確認サーバ２００は、物理マシン１００間での仮想マシン１１０の移転が行われた場合に、移転後の仮想マシン１１０の動作の正常性を確認する。また、正常性確認サーバ２００は、移転後の仮想マシン１１０の動作が正常でないと判定した場合、他の物理マシン１００に当該仮想マシン１１０と同一の仮想マシン１１０を起動させる。
【００１８】
図２は、サーバ仮想化システム１のソフトウェア構成を示す概略ブロック図である。
各物理マシン１００は、仮想化基盤プログラムを実行することで、仮想マシン記憶部１０１と、仮想マシン制御部１０２と、移転制御部１０３と、移転通知部１０４と、指令受信部１０５とを備える。
仮想マシン記憶部１０１は、仮想マシン１１０をエミュレートするための仮想マシンプログラムを記憶する。
仮想マシン制御部１０２は、仮想マシン記憶部１０１が記憶する仮想マシンプログラムを実行することで、仮想マシン１１０を起動（エミュレートを開始）する。
移転制御部１０３は、仮想マシン制御部１０２がエミュレートする仮想マシン１１０を、他の物理マシン１００に移転する。
移転通知部１０４は、移転制御部１０３が仮想マシン１１０の移転を行った場合に、正常性確認サーバ２００に移転の通知を発する。
指令受信部１０５は、正常性確認サーバ２００から仮想マシン１１０の起動指令を受信する。
【００１９】
なお、各物理マシン１００は、複数の仮想マシンプログラムを仮想マシン記憶部１０１に記憶しているが、全ての仮想マシンプログラムを実行するとは限らない。複数の物理マシン１００には、同一の仮想マシン１１０をエミュレートする仮想マシンプログラムがそれぞれ記憶されている。これは、ある物理マシン１００が仮想マシン１１０を正常にエミュレートできない場合に、他の物理マシン１００で同一の仮想マシン１１０をエミュレートするための冗長構成である。したがって、ある物理マシン１００が正常に仮想マシン１１０をエミュレートできている場合、同一の仮想マシン１１０をエミュレート可能な他の物理マシン１００は、当該仮想マシン１１０をエミュレートする必要が無い。
【００２０】
正常性確認サーバ２００は、テーブル記憶部２０１と、通知受信部２０２と、正常性確認部２０３と、リソース状況確認部２０４と、仮想マシン起動部２０５とを備える。
テーブル記憶部２０１は、仮想マシン正常性確認テーブルと、物理マシンリソース状態テーブルとを記憶する。仮想マシン正常性確認テーブルは、正常性を確認する対象となる仮想マシン名と当該仮想マシン１１０の正常性の確認手順とを関連付けて格納する。物理マシンリソース状態テーブルは、物理マシン１００ごとに、当該物理マシン１００がエミュレート可能な仮想マシン１１０の名称と、当該仮想マシン１１０と同一の仮想マシン１１０の名称と、当該物理マシン１００のリソースに係る情報とを格納する。
通知受信部２０２は、物理マシン１００から仮想マシン１１０の移転の通知を受信する。
正常性確認部２０３は、テーブル記憶部２０１が記憶する仮想マシン正常性確認テーブルに基づいて、移転された仮想マシン１１０の正常性を確認する。具体的には、正常性確認部２０３は、移転後の物理サーバの仮想マシン制御部１０２がエミュレートする仮想マシン１１０にアクセスすることで、当該仮想マシン１１０の正常性を確認する。
リソース状況確認部２０４は、物理マシンリソース状態テーブルを確認して、仮想マシン１１０の起動対象となる物理マシン１００を特定する。
仮想マシン起動部２０５は、リソース状況確認部２０４が特定した物理マシン１００に、仮想マシン１１０を起動させる。
【００２１】
図３は、テーブル記憶部２０１が記憶する情報の例を示す図である。
仮想マシン正常性確認テーブルは、図３（Ａ）に示すように、仮想マシン名と正常性確認手順とを関連付けて格納する。図３（Ａ）では、正常性確認手順としてＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）が格納されている。これは、当該ＵＲＩにアクセスして正常な応答を得ることができるか否かによって正常性を確認することを示している。
【００２２】
物理マシンリソース状態テーブルは、図３（Ｂ）に示すように、物理マシン名、仮想マシン名、ＮＧフラグ、選定フラグ、同一仮想マシン名、物理マシン１００のＣＰＵ使用率、物理マシン１００のメモリ使用率、リソース閾値オーバフラグ、リソース総和、確定フラグを関連付けて格納する。
【００２３】
ここで、ＮＧフラグとは、当該物理マシン１００で仮想マシン１１０をエミュレートした場合に、当該仮想マシン１１０の動作が正常でないと判定されたか否かを示すフラグである。つまり、ＮＧフラグが「１」を示す場合、仮想マシン１１０の動作が正常でないことを示す。
選定フラグとは、仮想マシン１１０の起動の選定対象であるか否かを示すフラグである。つまり、選定フラグが「１」を示す場合、仮想マシン１１０が起動の選定対象であることを示す。
リソース閾値オーバフラグは、ＣＰＵ使用率かメモリ使用率の総和の何れかが所定の閾値を超えるか否かを示すフラグである。つまり、リソース閾値オーバフラグが「１」を示す場合、ＣＰＵ使用率かメモリ使用率の総和の何れかが所定の閾値を超えていることを示す。
確定フラグは、仮想マシン１１０の起動対象として確定したか否かを示すフラグである。つまり、確定フラグが「１」を示す場合、当該物理マシン１００に仮想マシン１１０を起動させることが確定したことが分かる。
【００２４】
次に、本実施形態に係るサーバ仮想化システム１の動作の概略について説明する。
図４は、サーバ仮想化システム１の動作の概略を示すシーケンス図である。
ある物理マシン１００（以下、物理マシン１００Ａという）のリソース不足が生じると、物理マシン１００Ａの移転制御部１０３は、自装置でエミュレートしている仮想マシン１１０をエミュレートするための仮想マシンプログラムを、他の物理マシン１００（以下、物理マシン１００Ｂという）に転送する（ステップＳ１）。次に、物理マシン１００Ｂの移転制御部１０３は、物理マシン１００Ａから受信した仮想マシンプログラムを物理マシン１００Ｂの仮想マシン記憶部１０１に記録する。次に、物理マシン１００Ｂの仮想マシン制御部１０２は、物理マシン１００Ｂの仮想マシン記憶部１０１に記録された仮想マシンプログラムを実行することで、当該仮想マシン１１０をエミュレートする（ステップＳ２）。物理マシン１００Ｂの仮想マシン制御部１０２が仮想マシン１１０のエミュレートを開始すると、物理マシン１００Ｂの移転通知部１０４は、正常性確認サーバ２００に移転の通知を発する（ステップＳ３）。移転の通知には、移転した仮想マシン１１０の名称が含まれる。
【００２５】
正常性確認サーバ２００の通知受信部２０２が物理マシン１００Ｂから移転の通知を受信すると、正常性確認部２０３は、テーブル記憶部２０１が記憶する仮想マシン正常性確認テーブルを参照し、正常性確認手順を特定する（ステップＳ４）。次に、正常性確認部２０３は、特定した正常性確認手順に従って移転された仮想マシン１１０にアクセスし、当該仮想マシン１１０の正常性を確認する（ステップＳ５）。次に、正常性確認部２０３は、仮想マシン１１０へのアクセス結果に基づいて、正常性の判定を行う（ステップＳ６）。正常性確認部２０３は、正常性の判定結果が良好である場合、処理を終了する。
【００２６】
他方、正常性確認部２０３による正常性の判定結果が不良である場合（ＯＰＴ：正常性不良）、リソース状況確認部２０４は、記憶部が記憶する物理マシンリソース状態テーブルを参照し、当該仮想マシン１１０と同一の仮想マシン１１０を起動させる物理マシン１００（以下、物理マシン１００Ｃという）を特定する（ステップＳ７）。次に、仮想マシン起動部２０５は、移転された仮想マシン１１０と同一の仮想マシン１１０を起動させる起動指令を物理マシン１００Ｃに送信する（ステップＳ８）。
【００２７】
物理マシン１００Ｃの指令受信部１０５が正常性確認サーバ２００から起動指令を受信すると、物理マシン１００Ｃの仮想マシン制御部１０２は、起動指令が示す仮想マシン１１０をエミュレートするための仮想マシン１１０プログラムを実行することで、仮想マシン１１０を起動する（ステップＳ９）。
【００２８】
上記手順により、サーバ仮想化システム１は、仮想マシン１１０が移転した後、自動的に仮想マシン１１０の正常性確認を行う。これにより、仮想マシン１１０の移転から正常性を確認するまでの時間を短縮することができる。また、上記手順により、サーバ仮想化システム１は、正常性の確認に失敗した場合、自動的に仮想マシン１１０を起動してサービスの正常性を確保することができる。これにより、サービスのダウンタイムが極小化するため、サービスを利用するユーザに対し、可用性の高いサービスを提供することができる。
【００２９】
次に、本実施形態による正常性確認サーバ２００の動作について詳述する。
図５は、一実施形態による正常性確認サーバ２００の動作を示すフローチャートである。
正常性確認サーバ２００の通知受信部２０２が物理マシン１００から仮想マシン１１０の移転の通知を受信すると、正常性確認部２０３は、移転の通知に基づいて、テーブル記憶部２０１が記憶する物理マシンリソース状態テーブルから、移転前の仮想マシン１１０を示すレコードを特定する。次に、正常性確認部２０３は、特定したレコードの仮想マシン名に、仮想マシン１１０を移転したことを示すマークを付す（ステップＳ１０１）。例えば、正常性確認部２０３は、仮想マシン名の末尾にアスタリスクを付すことで、当該仮想マシン１１０が移転されたことを物理マシンリソース状態テーブルに記録する。
【００３０】
次に、正常性確認部２０３は、移転の通知に基づいて、テーブル記憶部２０１が記憶する物理マシンリソース状態テーブルに、移転後の仮想マシン１１０を示すレコードを追加する（ステップＳ１０２）。例えば、正常性確認部２０３は、移転の通知の送信元の物理マシン１００と、移転の通知に含まれる仮想マシン名とを関連付けたレコードを、物理マシンリソース状態テーブルに記録する。このとき、正常性確認部２０３は、当該レコードの同一仮想マシン名として、移転前の仮想マシン１１０を示すレコードと同じものを用いることができる。
【００３１】
次に、正常性確認部２０３は、テーブル記憶部２０１が記憶する仮想マシン正常性確認テーブルから、移転の通知に含まれる仮想マシン名に関連付けられた正常性確認手順を読み出す（ステップＳ１０３）。次に、正常性確認部２０３は、特定した正常性確認手順に基づいて仮想マシン１１０へアクセスし、正常性確認を実施する（ステップＳ１０４）。
【００３２】
次に、正常性確認部２０３は、仮想マシン１１０からアクセス結果を受信すると、当該アクセス結果に基づいて正常性確認の結果が良好であるか否かを判定する（ステップＳ１０５）。例えば、正常性確認手順としてＨＴＴＰアクセスを行った場合、正常性確認部２０３は、アクセス結果に含まれるＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）ステータスが２００番代（成功）を示す場合に、正常性確認の結果が良好であると判定し、ステータスが４００番代（クライアントエラー）または５００番代（サーバエラー）を示す場合に、正常性確認の結果が不良であると判定する。
【００３３】
正常性確認部２０３は、正常性確認の結果が良好であると判定した場合（ステップＳ１０５：ＹＥＳ）、処理を終了する。他方、正常性確認部２０３は、正常性確認の結果が不良であると判定した場合（ステップＳ１０５：ＮＯ）、物理マシンリソース状態テーブルの移転後の仮想マシン１１０を示すレコードのＮＧフラグを「１」に書き換える（ステップＳ１０６）。
【００３４】
次に、リソース状態確認部は、全ての物理マシン１００からＣＰＵ使用率及びメモリ使用率を収集する（ステップＳ１０７）。次に、リソース状態確認部は、収集したＣＰＵ使用率及びメモリ使用率を、物理マシンリソース状態テーブルに記録する（ステップＳ１０８）。次に、リソース状態確認部は、「ＣＰＵ使用率」「メモリ使用率」の少なくとも何れかが所定の閾値（例えば、いずれも５０％）以上であるレコードのリソース閾値オーバフラグを「１」に書き換える（ステップＳ１０９）次に、リソース状態確認部は、物理マシンリソース状態テーブルが格納するレコードのうち、移転元でなく、ＮＧフラグが「１」でなく、かつリソース閾値オーバフラグが「１」でないレコードがあるか否かを判定する（ステップＳ１１０）。
【００３５】
リソース状態確認部は、移転元でなく、ＮＧフラグが「１」でなく、かつリソース閾値オーバフラグが「１」でないレコードがないと判定した場合（ステップＳ１１０：ＮＯ）、他の物理マシン１００に同一の仮想マシン１１０を起動させずに処理を終了する。これは、リソースが不足している物理マシン１００にさらに仮想マシン１１０をエミュレートさせることにより、システム全体の性能が劣化することを防ぐためである。
【００３６】
他方、リソース状態確認部は、移転元でなく、かつＮＧフラグが「１」でないレコードに、ＣＰＵ使用率及びメモリ使用率が所定の閾値を下回るものがあると判定した場合（ステップＳ１１０：ＹＥＳ）、当該レコードの選定フラグを「１」に書き換える（ステップＳ１１１）。
【００３７】
次に、リソース状態確認部は、物理マシンリソース状態テーブルから、移転後の仮想マシン１１０を示すレコードに格納される同一仮想マシン名を読み出す。次に、リソース状態確認部は、選定フラグが「１」を示すレコードのうち、仮想マシン名が移転後の仮想マシン１１０の同一仮想マシン名に含まれるレコード以外の選定フラグを「０」に書き換える（ステップＳ１１２）。
【００３８】
次に、リソース状態確認部は、選定フラグが「１」を示すレコードのそれぞれについて、ＣＰＵ使用率とメモリ使用率を加算した値を算出し、当該レコードのリソース総和を書き換える。次に、リソース状態確認部は、選定フラグが「１」を示すレコードのうち、リソース総和が最小のものを特定し、当該レコードの確定フラグを「１」に書き換える（ステップＳ１１３）。
【００３９】
次に、仮想マシン起動部２０５は、物理マシンリソース状態テーブルが格納するレコードのうち、確定フラグが「１」を示すものが示す物理マシン１００に、当該レコードが示す仮想マシン１１０を起動させる起動指示を送信する（ステップＳ１１４）。仮想マシン起動部２０５は、物理マシン１００に起動指示を送信すると、物理マシンリソース状態テーブルが格納するすべてのレコードから、選定フラグ、リソース閾値オーバフラグ、リソース総和、及び確定フラグの値をクリアする。また、仮想マシン起動部２０５は、移転前の仮想マシン１１０を示すレコードを削除する（ステップＳ１１５）。
【００４０】
上記手順により、正常性確認サーバ２００は、移転した仮想マシン１１０の正常性確認を自動的に行うことができる。また、上記手順により、正常性確認サーバ２００は、正常性の確認に失敗した場合、適切な物理マシン１００に、仮想マシン１１０を起動させることができる。
【００４１】
以上、図面を参照して一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、様々な設計変更等をすることが可能である。
例えば、上述した実施形態では、正常性確認部２０３が、正常性確認方法としてアクセスに成功したか否かを判定する場合について説明したが、これに限られない。例えば、他の実施形態では、正常性確認部２０３は、アクセスに成功したとしても、応答時間が所定の閾値を超える場合には正常でないと判定しても良い。
【００４２】
また、例えば、上述した実施形態では、ステップＳ１１３において、リソース状態確認部が、ＣＰＵ使用率とメモリ使用率とに基づいて仮想マシン１１０を起動させる物理マシン１００を決定する場合について説明したが、これに限られない。例えば、他の実施形態では、当該仮想マシン１１０が通信する他の仮想マシン１１０（例えば、データベースなど）が設けられた物理サーバとの間の帯域や、当該他のマシンが同じデータセンタ３００に設けられているか否かなどに基づいて仮想マシン１１０を起動させる物理マシン１００を決定しても良い。
【００４３】
また、上述した実施形態では、物理マシン１００のリソース不足を契機に仮想マシン１１０の移転を行う場合について説明したが、これに限られない。例えば、他の実施形態では、物理マシン１００は、使用率の低下を契機に仮想マシン１１０の移転を行っても良い。つまり、物理マシン１００の使用率が下がると自動的に仮想マシン１１０をリソースの空いている物理マシン１００に移転し、仮想マシン１１０が動作していない物理マシン１００の電源をオフにすることで消費電力を抑える分散型電源管理システムなどに、本発明に係るサーバ仮想化システム１を適用しても良い。
【００４４】
また、上述した実施形態では、仮想マシンの移転先の物理マシンが移転の通知を発する場合について説明したが、これに限られない。例えば、他の実施形態では、仮想マシンの移転元の物理マシンが移転の通知を発しても良い。この場合、当該移転の通知には、仮想マシン名と移転先の物理マシン名が含まれる。
【００４５】
図６は、少なくとも１つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ９００は、ＣＰＵ９０１、主記憶装置９０２、補助記憶装置９０３、インタフェース９０４を備える。
上述の正常性確認サーバ２００及び各物理マシン１００は、それぞれコンピュータ９００に実装される。そして、上述した各処理部の動作は、プログラムの形式で補助記憶装置９０３に記憶されている。ＣＰＵ９０１は、プログラムを補助記憶装置９０３から読み出して主記憶装置９０２に展開し、当該プログラムに従って上記処理を実行する。また、ＣＰＵ９０１は、プログラムに従って、上述した各記憶部に対応する記憶領域を主記憶装置９０２に確保する。
【００４６】
なお、少なくとも１つの実施形態において、補助記憶装置９０３は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、インタフェース９０４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ９００に配信される場合、配信を受けたコンピュータ９００が当該プログラムを主記憶装置９０２に展開し、上記処理を実行しても良い。
【００４７】
また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置９０３に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【符号の説明】
【００４８】
１…サーバ仮想化システム  １００…物理マシン  １０１…仮想マシン記憶部  １０２…仮想マシン制御部  １０３…移転制御部  １０４…移転通知部  １０５…指令受信部  １１０…仮想マシン  ２００…正常性確認サーバ  ２０１…テーブル記憶部  ２０２…通知受信部  ２０３…正常性確認部  ２０４…リソース状況確認部  ２０５…仮想マシン起動部  ３００…データセンタ
【図１】
2015125678.tif 000003
【図２】
2015125678.tif 000004
【図３】
2015125678.tif 000005
【図４】
2015125678.tif 000006
【図５】
2015125678.tif 000007
【図６】
2015125678.tif 000008