(57)【特許請求の範囲】
【請求項１】
第１の物理マシンとアクセス可能な第２の物理マシンに実行させる情報共有プログラムであって、
前記第２の物理マシンに、
前記第１の物理マシンからの仮想マシンの移行に応じて、前記第１の物理マシンの記憶部に記憶された、前記第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し前記第１の物理マシンの動作環境に関する第１の動作環境情報と、前記第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を取得し、
前記仮想マシンの移行が完了するまでに、取得した前記変換情報を前記第２の物理マシンの記憶部に記憶する、
ことを実行させることを特徴とする情報共有プログラム。
【請求項２】
請求項１において、
前記変換情報を記憶する処理の後、前記移行した後の仮想マシンが前記第１の処理要求情報を送信して前記第２の処理部に処理要求を行う場合、前記記憶した変換情報を参照し、前記第１の処理要求情報に対応する前記第１の動作環境情報と同じ内容の前記第２の動作環境情報に対応する前記第２の処理要求情報が前記変換情報に存在する場合、前記仮想マシンに、前記第２の処理部への処理要求に対応する第１の処理要求情報を前記存在した第２の処理要求情報に変換して前記第２の処理部に送信させ、前記第１の処理要求情報に対応する前記第１の動作環境情報と同じ内容の前記第２の動作環境情報に対応する前記第２の処理要求情報が前記変換情報に存在しない場合、前記仮想マシンに、前記存在しなかった第２の処理要求情報の入力があった後に、該入力があった第２の処理要求情報を前記第２の処理部に送信させる、
ことをコンピュータに実行させることを特徴とする情報共有プログラム。
【請求項３】
請求項２において、
前記処理要求を送信させる処理では、前記存在しなかった第２の処理要求情報の入力があった場合、該入力があった第２の処理要求情報を前記第２の処理部に送信させるとともに、前記入力があった第２の処理要求情報を前記保持した変換情報と対応付けて記憶部に記憶する、
ことを特徴とする情報共有プログラム。
【請求項４】
第１の物理マシンと、該第１の物理マシンとアクセス可能な第２の物理マシンとを有する情報共有システムであって、
第１の物理マシンは、該第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し、前記第１の物理マシンの動作環境に関する第１の動作環境情報と、第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し、前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第２の物理マシンは、前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
ことを特徴とする情報共有システム。
【請求項５】
コンピュータである第１の物理マシンは、該第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し前記第１の物理マシンの動作環境に関する第１の動作環境情報と、コンピュータである第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第２の物理マシンは、前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記第１の物理マシンの記憶部に記憶された前記変換情報を取得し、
前記仮想マシンの移行が完了するまでに、取得した前記変換情報を記憶部に記憶する、
ことを特徴とする情報共有方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報共有プログラム、情報共有システム及び情報共有方法に関する。
【背景技術】
【０００２】
近年、物理装置（以下、物理マシンとも呼ぶ）の性能向上に伴い、複数の仮想装置（以下、仮想マシンとも呼ぶ）を１つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術は、例えば、仮想化ソフトウエア（ハイパーバイザ）が物理マシンを複数の仮想マシンに割り当てて、各仮想マシンにインストールされたアプリケーションプログラム（以下、単にアプリケーションとも呼ぶ）によるサービスの提供を可能にする。
【０００３】
運用中の仮想マシンにおいて、仮想マシンを構成する内容（以下、ディスクイメージと称する）の全部または一部を、別の物理マシンに作成された仮想マシンに移行する場合がある。これにより、サービスを提供する事業者（以下、単に事業者とも呼ぶ）は、例えば、ＣＰＵの使用率が１００％に近い物理マシンに作成された仮想マシンのディスクイメージを、他の余裕がある物理マシンに作成された仮想マシンに移行することが可能になる（例えば、特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−１３２４０３号公報
【特許文献２】特開２００４−１５８０１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
仮想マシンが動作する物理マシンにおいて、例えば、仮想マシンの稼働状況を監視するためのモニタリングシステムや、仮想マシンによって提供されるサービスを利用する利用者（以下、単に利用者とも呼ぶ）に対して課金するための課金システム等が動作する場合がある。この場合、利用者は、例えば、仮想マシンで動作するアプリケーションを介してモニタリングシステム等に処理要求を送信する。そして、処理要求を受信したモニタリングシステム等は、処理要求に対応する処理を実行し、その結果を仮想マシンに送信する。これにより、利用者は、現在の仮想マシンの稼働状況等に関する情報を取得することが可能になる。
【０００６】
ここで、仮想マシンの移行が行われる場合、移行元の物理マシンで動作するモニタリングシステム等と、移行先の物理マシンで動作するモニタリングシステム等との間で、各処理を実行させるために必要な情報の表現等が異なる場合がある。この場合、移行した仮想マシンは、移行前において処理要求を行うために用いていた情報と、移行後に処理要求を行うために必要な情報とを対応付けることができない。そのため、移行した仮想マシンは、移行先の物理マシンで動作する処理に対して処理要求を行うことができない場合がある。
【０００７】
一方、事業者は、例えば、移行先の物理マシンで動作するモニタリングシステム等に対して処理要求を行うための情報を、移行する仮想マシンに予め設定しておく場合がある。しかしながら、移行した仮想マシンが移行先の物理マシンで動作するモニタリングシステム等に処理要求を行うために必要な情報には、移行する仮想マシンが移行先の物理マシンで起動して初めて定まる情報が存在する場合がある。そのため、事業者は、例えば、仮想マシンの移行が発生する毎に、仮想マシンが提供しているサービスと中断して、移行した仮想マシンが移行先のモニタリングシステム等に処理要求を行うための情報の設定を行う必要がある。
【０００８】
そこで、一つの実施の形態の目的は、仮想マシンの移行に伴うサービスの中断を防止する情報共有プログラム、情報共有システム及び情報共有方法を提供することにある。
【課題を解決するための手段】
【０００９】
実施の形態の一つの側面によれば、第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し前記第１の物理マシンの動作環境に関する第１の動作環境情報と、第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を前記第２の物理マシンに保持させる。
【発明の効果】
【００１０】
一つの側面によれば、仮想マシンの移行に伴うサービスの中断を防止する。
【図面の簡単な説明】
【００１１】
【図１】情報処理システムの全体構成を示す図である。
【図２】仮想マシンの移行を説明する図である。
【図３】仮想マシンの移行を説明する図である。
【図４】物理マシンのハードウエア構成を示す図である。
【図５】図４の物理マシンの機能ブロック図である。
【図６】図４の物理マシンの機能ブロック図である。
【図７】第１の実施の形態における情報共有処理の概略を示すフローチャート図である。
【図８】第１の実施の形態における情報共有処理の概略を示すフローチャート図である。
【図９】第１の実施の形態における情報共有処理の概略を示すフローチャート図である。
【図１０】第１の実施の形態における情報共有処理の概略を説明する図である。
【図１１】第１の実施の形態における情報共有処理の概略を説明する図である。
【図１２】第１の実施の形態における情報共有処理の詳細を示すフローチャート図である。
【図１３】第１の実施の形態における情報共有処理の詳細を示すフローチャート図である。
【図１４】第１の実施の形態における情報共有処理の詳細を示すフローチャート図である。
【図１５】第１の実施の形態における情報共有処理の詳細を示すフローチャート図である。
【図１６】第１の実施の形態における情報共有処理の詳細を示すフローチャート図である。
【図１７】第１の実施の形態における情報共有処理の詳細を説明する図である。
【図１８】第１の実施の形態における情報共有処理の詳細を説明する図である。
【図１９】第１の実施の形態における情報共有処理の詳細を説明する図である。
【図２０】第１の実施の形態における情報共有処理の詳細を説明する図である。
【図２１】第１の実施の形態における情報共有処理の詳細を説明する図である。
【図２２】第１の実施の形態における情報共有処理の詳細を説明する図である。
【発明を実施するための形態】
【００１２】
［情報処理システムの構成］
図１は、情報処理システムの全体構成を示す図である。図１に示す情報処理システム１０は、例えば、データセンタ内に、管理サーバ１と、仮想マシン（ＶＭ：Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）を作成する物理マシン２とが設けられている。そして、データセンタには、インターネットやイントラネット等のネットワークを介して、利用者端末５からアクセス可能になっている。
【００１３】
物理マシン２は、図１の例では複数の物理マシンから構成されており、各物理マシンは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と、ハードディスク（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の大容量メモリとネットワークとを有する。そして、物理マシン２のリソースは、複数の仮想マシン３に割り当てられる。
【００１４】
管理サーバ１は、例えば、物理マシン２とアクセス可能であり、物理マシン２内における仮想マシン３の作成指示や作成された仮想マシン３の管理を行う。
【００１５】
仮想マシン３は、例えば、事業者がそのインフラ等をネットワーク経由で利用者にサービス（例えば、クラウドサービス）を提供するものである。クラウドサービスは、コンピュータシステムを構築し稼働させるための基盤、すなわち、仮想マシン３やネットワーク等のインフラストラクチャそのものを、ネットワーク経由で提供するサービスである。また、利用者は、例えば、利用者端末５からクラウドサービスポータルサイトにアクセスして、仮想マシンに必要な仕様、例えばＣＰＵのクロック周波数、メモリの容量（ＧＢ）、ハードディスクの容量（ＭＢ／ｓｅｃ、ＩＯＰＳ）、及びネットワークの通信帯域幅（Ｇｂｐｓ）を選択し、それらについてクラウド利用契約を締結する。また、利用者端末５は、例えば、仮想マシン３の稼働状態を監視や、仮想マシンに対する操作等を可能にする。
【００１６】
仮想化ソフトウエア４は、管理サーバ１からの指示に応じて、物理マシン２のＣＰＵ、メモリ、ハードディスク、ネットワーク等のリソースを割り当てることにより、仮想マシン３を動作させる基盤ソフトウエアである。仮想化ソフトウエア４は、例えば、物理マシン２で動作する。
【００１７】
仮想マシン３は、物理マシン２のリソースが割り当てられることに加えて、例えば、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、ミドルウエア、アプリケーション、データベース等を有するイメージファイルをそのハードディスク内に有する。そして、仮想マシン３は、例えば、起動時にイメージファイルをハードディスクからメモリに書き込み、所望のサービスに対応する動作を行う。
【００１８】
［仮想マシンの移行］
次に、仮想マシンの移行について説明する。図２及び図３は、仮想マシンの移行を説明する図である。
【００１９】
図２に示す例において、物理マシン２Ａには、仮想マシン３１Ａ、仮想マシン３２Ａ及びモニタリングシステム２１Ａ（以下、第１の処理部２１Ａとも呼ぶ）が設けられている。また、物理マシン２Ａは、ハードウエア２２Ａを有している。一方、物理マシン２Ｂには、仮想マシン３１Ｂ及びモニタリングシステム２１Ｂ（以下、第２の処理部２１Ｂとも呼ぶ）が設けられている。また、物理マシン２Ｂは、ハードウエア２２Ｂを有している。
【００２０】
図２の例におけるモニタリングシステム２１Ａ、２１Ｂは、例えば、それぞれハードウエア２２Ａ、２２Ｂに定期的にアクセスし、各仮想マシンが使用しているハードウエア２２Ａ、２２Ｂのリソース（例えば、ＣＰＵやメモリ）の使用量を取得する。そして、モニタリングシステム２１Ａ、２１Ｂは、例えば、各仮想マシンが使用しているリソースの使用量が予め定められた範囲の上限を上回った場合に、図１に示す管理サーバ１に新たな仮想マシンの作成を依頼する。また、モニタリングシステム２１Ａ、２１Ｂは、各仮想マシンが使用しているリソースの使用量が予め定められた範囲の下限を下回った場合に、図１に示す管理サーバ１に作成されている可能マシンのうちいずれかの仮想マシンの削除を依頼する。これにより、事業者は、効率的に仮想マシンの作成及び削除を行うことが可能になり、物理マシンのリソースの使用量を抑えることが可能になる。
【００２１】
具体的に、図２に示す例において、ハードウエア２２Ａのリソースの使用量が予め定めた範囲の上限を上回っていることを検知した場合、モニタリングシステム２１Ａは、仮想マシン３１Ａまたは仮想マシン３２Ａを他の物理マシンに移行する依頼を管理サーバ１に送信する。そして、管理サーバ１は、例えば、図３に示すように、仮想マシン３２Ａを物理マシン２Ｂに移行する。これにより、事業者は、物理マシン２のハードウエア２２Ａのリソース使用量を抑えることが可能になる。
【００２２】
ここで、例えば、モニタリングシステム２１Ａ及びモニタリングシステム２１Ｂは、各仮想マシンが処理要求を行うために必要となる情報の表現等が異なる場合がある。具体的に、例えば、モニタリングシステム２１Ａでは、ユーザ名及びパスワードに相当する情報を「Ｕｓｅｒ」及び「Ｐａｓｓｗｏｒｄ」と表現しているのに対し、モニタリングシステム２１Ｂでは、「Ｌｏｇｉｎ」及び「ＰＷＤ」と表現されている場合がこれに該当する。そのため、例えば、移行した仮想マシン３２Ａがモニタリングシステム２１Ｂで用いているユーザ名等の情報を有している場合であっても、仮想マシン３２Ａは、モニタリングシステム２１Ａで用いていたユーザ名等と対応させることができない。したがって、移行後の仮想マシン３２Ａは、この場合、モニタリングシステム２１Ｂに処理要求を行うことができない。
【００２３】
一方、例えば、モニタリングシステム２１Ｂに処理要求を行うために必要な情報を、移行する仮想マシン３２Ａに予め設定する場合がある。しかしながら、モニタリングシステム２１Ｂに処理要求を行うために必要な情報には、移行した仮想マシン３２Ａを物理マシン２Ｂで起動して初めて定まる情報も存在する。したがって、事業者は、モニタリングシステム２１Ｂに処理要求を行うために必要な全ての情報を、移行前の仮想マシン３２Ａに予め設定することができない。そのため、事業者は、例えば、仮想マシン３２Ａの移行後に仮想マシン３２Ａによるサービスの提供を中断し、モニタリングシステム２１Ｂに処理要求を行うための情報を設定する必要がある。
【００２４】
そこで、本実施の形態では、仮想マシン３２Ａの移行に応じて、移行元の物理マシン２Ａで動作する処理に処理要求を行うための情報と、移行元の物理マシン２Ａ及び移行先の物理マシン２Ｂの環境に関する情報とを、移行先の物理マシン２Ｂが保持させる。これにより、事業者は、仮想マシン３２Ａの移行に伴うサービスの中断を防止することが可能になる。
【００２５】
［物理マシンのハードウエア構成］
次に、物理マシン２Ａ、２Ｂの構成について説明する。図４は、物理マシンのハードウエア構成を示す図である。物理マシン２Ａ（以下、第１の物理マシン２Ａとも呼ぶ）は、プロセッサであるＣＰＵ２０１Ａと、メモリ２０２Ａと、外部インターフェース（Ｉ／Ｏユニット）２０３Ａと、記憶媒体２０４Ａとを有する。各部は、バス２０５Ａを介して互いに接続される。記憶媒体２０４Ａは、例えば、記憶媒体２０４Ａ内のプログラム格納領域（図示しない）に、物理マシン２Ａと物理マシン２Ｂとの間で情報を共有する処理（以下、情報共有処理とも呼ぶ）を行うためのプログラム２１０Ａを記憶する。ＣＰＵ２０１Ａは、図４に示すように、プログラム２１０Ａの実行時に、プログラム２１０Ａを記憶媒体２０４Ａからメモリ２０２Ａにロードし、プログラム２１０Ａと協働して情報共有処理を行う。また、記憶媒体２０４Ａは、例えば、情報共有処理を行う際に用いられる情報を記憶する情報格納領域２３０Ａ（以下、記憶部２３０Ａとも呼ぶ）を有する。
【００２６】
また、物理マシン２Ｂ（以下、第２の物理マシン２Ｂとも呼ぶ）は、物理マシン２Ａと同様に、プロセッサであるＣＰＵ２０１Ｂと、メモリ２０２Ｂと、外部インターフェース（Ｉ／Ｏユニット）２０３Ｂと、記憶媒体２０４Ｂとを有する。各部は、バス２０５Ｂを介して互いに接続される。記憶媒体２０４Ｂは、例えば、記憶媒体２０４Ｂ内のプログラム格納領域（図示しない）に、情報共有処理を行うためのプログラム２１０Ｂを記憶する。ＣＰＵ２０１Ｂは、図４に示すように、プログラム２１０Ｂの実行時に、プログラム２１０Ｂを記憶媒体２０４Ｂからメモリ２０２Ｂにロードし、プログラム２１０Ｂと協働して情報共有処理を行う。また、記憶媒体２０４Ｂは、例えば、情報共有処理を行う際に用いられる情報を記憶する情報格納領域２３０Ｂ（以下、記憶部２３０Ｂとも呼ぶ）を有する。
【００２７】
［物理マシンの機能］
図５及び図６は、図４の物理マシンの機能ブロック図である。物理マシン２ＡのＣＰＵ２０１Ａは、プログラム２１０Ａと協働することにより、例えば、移行検知部２１１Ａと、情報記憶部２１２Ａと、要求取得部２１３Ａと、要求変換部２１４Ａと、要求送信部２１５Ａとして動作する。また、ＣＰＵ２０１Ａは、プログラム２１０Ａと協働することにより、例えば、情報要求部２１６Ａと、認証要求部２１７Ａと、認証取得部２１８Ａとして動作する。また、情報格納領域２３０Ａには、処理要求情報２３１Ａ（以下、第１の処理要求情報２３１Ａとも呼ぶ）と、動作環境情報２３２Ａ（以下、第１の動作環境情報２３２Ａとも呼ぶ）と、変換情報２３３Ａと、引数変換情報２３４Ａとが記憶されている。なお、以下、移行検知部２１１Ａ、情報記憶部２１２Ａ、要求取得部２１３Ａ、要求変換部２１４Ａ、要求送信部２１５Ａ、情報要求部２１６Ａ、認証要求部２１７Ａ及び認証取得部２１８Ａを合わせて変換部２２０Ａとも呼ぶ。
【００２８】
また、物理マシン２ＢのＣＰＵ２０１Ｂは、プログラム２１０Ｂと協働することにより、例えば、移行検知部２１１Ｂと、情報記憶部２１２Ｂと、要求取得部２１３Ｂと、要求変換部２１４Ｂと、要求送信部２１５Ｂとして動作する。また、ＣＰＵ２０１Ｂは、プログラム２１０Ｂと協働することにより、例えば、情報要求部２１６Ｂと、認証要求部２１７Ｂと、認証取得部２１８Ｂとして動作する。また、情報格納領域２３０Ｂには、処理要求情報２３１Ｂ（以下、第２の処理要求情報２３１Ｂとも呼ぶ）と、動作環境情報２３２Ｂ（以下、第２の動作環境情報２３２Ｂとも呼ぶ）と、変換情報２３３Ｂと、引数変換情報２３４Ｂとが記憶されている。なお、以下、移行検知部２１１Ｂ、情報記憶部２１２Ｂ、要求取得部２１３Ｂ、要求変換部２１４Ｂ、要求送信部２１５Ｂ、情報要求部２１６Ｂ、認証要求部２１７Ｂ及び認証取得部２１８Ｂを合わせて変換部２２０Ｂとも呼ぶ。
【００２９】
［移行検知部及び情報記憶部の機能］
物理マシン２Ａの移行検知部２１１Ａは、例えば、他の物理マシンから物理マシン２Ａへの仮想マシンの移行が行われる場合に、これを検知する。
【００３０】
物理マシン２Ａの情報記憶部２１２Ａは、例えば、物理マシン２Ａで動作する仮想マシン（仮想マシンで動作するアプリケーション）から物理マシン２Ａで動作する第１の処理部２１Ａに対して処理要求を行うための処理要求情報２３１Ａを情報格納領域２３０Ａに記憶する。具体的に、情報記憶部２１２Ａは、例えば、利用者から処理要求情報２３１Ａの入力があった場合に、入力された処理要求情報２３１Ａを情報格納領域２３０Ａに記憶する。処理要求情報２３１Ａは、例えば、第１の処理部２１Ａが仮想マシン（または仮想マシンの利用者）に対して認証を行うための認証情報（例えば、ユーザ名及びパスワード）を含むものであってよい。また、処理要求情報２３１Ａは、例えば、第１の処理部２１Ａに処理を要求するための引数情報を含むものであってよい。処理要求情報２３１Ａの詳細については後述する。また、引数情報の変換を行うための引数変換情報２３４Ａについては後述する。
【００３１】
また、情報記憶部２１２Ａは、例えば、処理要求情報２３１Ａと、物理マシン２Ａの動作環境に関する動作環境情報２３２Ａと、物理マシン２Ｂの動作環境に関する動作環境情報２３２Ｂとを含む変換情報２３３Ａとして記憶する。動作環境情報２３２Ａは、例えば、処理要求情報２３１Ａと対応する情報であり、物理マシン２Ａが処理要求情報２３１Ａの種別を識別可能な識別情報２３２Ａであってもよい。また、動作環境情報２３２Ｂは、例えば、処理要求情報２３１Ｂと対応する情報であり、物理マシン２Ｂが処理要求情報２３１Ｂの種別を識別可能な識別情報２３２Ｂであってもよい。さらに、情報記憶部２１２Ａは、変換情報２３３Ａを作成する場合に、同じ内容の情報を有する動作環境情報２３２Ａと動作環境情報２３２Ｂとを対応させる。これにより、物理マシン２Ａまたは物理マシン２Ｂは、処理要求情報２３１Ａを、処理要求情報２３１Ａに対応する動作環境情報２３２Ａと同じ内容の動作環境情報２３２Ｂに対応する処理要求情報２３１Ｂに変換することが可能になる。動作環境情報２３２Ａ、２３２Ｂ、変換情報２３３Ａ、２３３Ｂの具体例については後述する。
【００３２】
さらに、情報記憶部２１２Ａは、例えば、移行検知部２１１Ａが物理マシン２Ａに対する仮想マシンの移行が行われることを検知した場合、その仮想マシンの移行が完了するまでに、移行元の物理マシンで記憶された変換情報を取得する。情報記憶部２１２Ａは、この場合、仮想マシンの移行が完了するまでに変換情報の取得を行う。そして、情報記憶部２１２Ａは、取得した移行元の物理マシンの変換情報を、変換情報２３３Ａとして情報格納領域２３０Ａに記憶する。これにより、物理マシン２Ａは、移行する仮想マシンが過去に動作した全ての物理マシンについての変換情報を累積的に取得することが可能になる。
【００３３】
なお、物理マシン２Ｂの移行検知部２１１Ｂ及び情報記憶部２１２Ｂは、上記の移行検知部２１１Ａ及び情報記憶部２１２Ｂと同じ処理を行うものであるため、説明を省略する。また、処理要求情報２３１Ｂ及び引数変換情報２３４Ｂは、処理要求情報２３１Ａ及び引数変換情報２３４Ａと同じ情報であるため、説明を省略する。
【００３４】
［要求取得部、要求変換部、要求送信部及び情報要求部の機能］
物理マシン２Ａの要求取得部２１３Ａは、例えば、物理マシン２Ａで動作する仮想マシンが、第１の処理部２１Ａに対して送信した処理要求情報を取得する。すなわち、例えば、物理マシン２Ａで動作する仮想マシンが他の物理マシンから移行した仮想マシンである場合、要求取得部２１３Ａが取得した処理要求情報は、第１の処理部２１Ａが認識することができるか否かが不明な処理要求情報である。
【００３５】
物理マシン２Ａの要求変換部２１４Ａは、例えば、物理マシン２Ａで動作する仮想マシンから送信された処理要求情報に対応する処理要求情報２３１Ａが変換情報２３３Ａに含まれるか否かを判定する。すなわち、要求変換部２１４Ａは、要求取得部２１３Ａが取得した処理要求情報と同じ内容の情報であって、第１の処理部２１Ａが処理を行うことができる処理要求情報２３１Ａが変換情報２３３Ａに含まれているか（存在するか）否かを判定する。そして、要求取得部２１３Ａが取得した処理要求情報に対応する処理要求情報２３１Ａが変換情報２３３Ａに含まれる場合、要求変換部２１４Ａは、変換情報２３３Ａに含まれていた処理要求情報２３１Ａを第１の処理部２１Ａに送信するように、要求送信部２１５Ａに指示を行う。一方、要求取得部２１３Ａが取得した処理要求情報に対応する処理要求情報２３１Ａが変換情報２３３Ａに含まれない場合、物理マシン２Ａの情報要求部２１６Ａは、物理マシン２Ａで動作する仮想マシンの利用者に処理要求情報２３１Ａの入力を要求する。これにより、要求変換部２１４Ａは、要求取得部２１３Ａが取得した処理要求情報と同じ内容の情報であって第１の処理部２１Ａが処理を行うことができる処理要求情報２３１Ａを、第１の処理部２１Ａに送信することが可能になる。さらに、処理要求情報２３１Ａが変換情報２３３Ａに含まれている場合、物理マシン２Ａは、仮想マシンの利用者に処理要求情報２３１Ａを要求することなく、処理要求情報２３１を第１の処理部２１Ａに送信することが可能になる。そのため、物理マシン２Ａは、仮想マシンの移行があった場合であっても、利用者に提供しているサービスの中断を防止することが可能になる。
【００３６】
物理マシン２Ａの要求送信部２１５Ａは、例えば、要求変換部２１４Ａからの指示に基づいて、処理要求情報２３１Ａを第１の処理部２１Ａに送信する。
【００３７】
なお、物理マシン２Ｂの要求取得部２１３Ｂ、要求変換部２１４Ｂ、要求送信部２１５Ｂ及び情報要求部２１６Ｂは、上記の要求取得部２１３Ａ、要求変換部２１４Ａ、要求送信部２１５Ａ及び情報要求部２１６Ａと同じ処理を行うものであるため、説明を省略する。
【００３８】
［認証要求部及び認証取得部の機能］
物理マシン２Ａの認証要求部２１７Ａは、例えば、要求取得部２１３Ａが取得した処理要求情報２３１Ａに含まれる認証情報を第１の処理部２１Ａに送信して、第１の処理部２１Ａに認証処理の実行を要求する。
【００３９】
物理マシン２Ａの認証取得部２１８Ａは、例えば、第１の処理部２１Ａが送信した認証キー情報（以下、単に認証キーとも呼ぶ）を取得する。認証キーについては後述する。また、認証要求部２１７Ａ及び認証取得部２１８Ａの処理の具体例については後述する。なお、物理マシン２Ｂの認証要求部２１７Ｂ及び認証取得部２１８Ｂは、認証要求部２１７Ａ及び認証取得部２１８Ａと同じ処理を行うものであるため、説明を省略する。
【００４０】
［第１の実施の形態］
次に、第１の実施の形態について説明する。図７から図９は、第１の実施の形態における情報共有処理の概略を示すフローチャート図である。また、図１０及び図１１は、第１の実施の形態における情報共有処理の概略を説明する図である。図１０及び図１１を参照しながら図７から図９の情報共有処理の概略について説明する。以下、物理マシン２Ａで動作する仮想マシンが物理マシン２Ｂに移行する場合を説明する。なお、図１０及び図１１については、図２及び図３と異なる点について説明する。
【００４１】
初めに、物理マシン２Ａ（物理マシン２Ａの変換部２２０Ａ）における処理を説明する。物理マシン２Ａは、図７及び図１０に示すように、例えば、変換情報２３３Ａを記憶するタイミングまで待機する（Ｓ１のＮＯ）。変換情報２３３Ａを記憶するタイミングは、例えば、物理マシン２Ａで動作する仮想マシンが第１の処理部２１Ａに処理要求情報２３１Ａが送信した場合である。そして、変換情報２３３Ａを記憶するタイミングになった場合（Ｓ１のＹＥＳ）、物理マシン２Ａは、物理マシン２Ａで動作する仮想マシンから送信された処理要求情報２３１Ａと、動作環境情報２３２Ａと、動作環境情報２３２Ｂとを含む変換情報２３３Ａを作成する。そして、物理マシン２Ａは、作成した変換情報２３３Ａを記憶部２３０Ａに記憶する（Ｓ２）。すなわち、物理マシン２Ａは、例えば、物理マシン２Ａで動作する仮想マシンから第１の処理部２１Ａに処理要求情報２３１Ａが送信されることに応じて、変換情報２３３Ａを情報格納領域２３０Ａに蓄積して記憶する。なお、動作環境情報２３２Ａ及び動作環境情報２３２Ｂは、予め情報格納領域２３０Ａに記憶されているものであってよい。また、事業者は、物理マシン２Ａで動作する仮想マシンが第１の処理部２１Ａに処理要求情報２３１Ａを送信する前に、予め処理要求情報２３１Ａを含む変換情報２３３Ａを記憶部２３０Ａに記憶しておくものであってもよい。
【００４２】
次に、物理マシン２Ｂ（物理マシン２Ｂの変換部２２０Ｂ）における処理を説明する。物理マシン２Ｂは、図８及び図１１に示すように、例えば、物理マシン２Ｂへの仮想マシンの移行が行われるまで待機する（Ｓ１１のＮＯ）。そして、例えば、物理マシン２Ａで動作する仮想マシンが物理マシン２Ｂに移行する場合（Ｓ１１のＹＥＳ）、物理マシン２Ｂは、物理マシン２Ａの記憶部２３０Ａに記憶された変換情報２３３Ａを保持する（Ｓ１２）。具体的に、物理マシン２Ｂは、例えば、記憶部２３０Ａにアクセスして変換情報２３３Ａを取得し、これを変換情報２３３Ｂとして記憶部２３０Ｂに記憶するものであってよい。また、物理マシン２Ｂは、物理マシン２Ａから送信された変換情報２３３Ａを受信し、これを変換情報２３３Ｂとして情報格納領域２３０Ｂに記憶するものであってよい。
【００４３】
これにより、物理マシン２Ｂは、物理マシン２Ａから物理マシン２Ｂに移行した仮想マシンが第２の処理部２１Ｂに処理要求情報２３１Ａを送信した場合に、変換情報２３３Ｂを参照することが可能になる。そして、物理マシン２Ｂは、変換情報２３３Ｂを参照することにより、移行した仮想マシンの処理要求情報２３１Ａに対応する動作環境情報２３２Ａと同じ内容の動作環境情報２３２Ｂに対応する処理要求情報２３１Ｂを取得することが可能になる。そのため、物理マシン２Ｂは、仮想マシンの処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが変換情報２３３Ｂに存在するか否かを判定することができる。
【００４４】
なお、物理マシン２Ｂは、物理マシン２Ａから変換情報２３３Ａを取得する際に、変換部２２０Ａを動作させるための変換モジュール（例えば、図４に示すプログラム２１０Ａの一部）を併せて取得するものであってよい。そして、物理マシン２Ｂは、取得した変換モジュールをＣＰＵと協働して動作させることにより、変換部２２０Ｂとして動作させるものであってよい。また、物理マシン２Ａは、変換モジュールと変換情報２３３Ａとを物理マシン２Ａとは異なる物理マシンに記憶しておくものであってもよい。また、変換情報２３３Ａが３台以上の物理マシンに関する情報を含んでいる場合、物理マシン２Ｂは、変換情報２３３Ａのうち、物理マシン２Ａ及び物理マシン２Ｂに関連する情報のみを取得するものであってよい。同様に、物理マシン２Ｂは、変換情報２３３Ａが３台以上の物理マシンに関する情報を含んでいる場合、処理要求情報２３１Ａと処理要求情報２３１Ｂを変換させるための変換モジュールのみを取得するものであってよい。
【００４５】
その後、物理マシン２Ｂは、図９及び図１１に示すように、例えば、物理マシン２Ａから移行した仮想マシンから第２の処理部２１Ｂに対して処理要求情報２３１Ａが送信されるまで待機する（Ｓ２１のＮＯ）。そして、移行した仮想マシンから処理要求情報２３１Ａが送信された場合（Ｓ２１のＹＥＳ）、物理マシン２Ｂは、例えば、変換情報２３３Ｂを参照し、送信された処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが存在するか否かを判定する（Ｓ２２）。すなわち、第２の処理部２１Ｂは、仮想マシン３２Ａが送信した処理要求情報２３１Ａを認識することができないため、処理要求情報２３１Ａに基づく処理を行うことができない。そのため、物理マシン２Ｂは、 仮想マシン３２Ａが送信した処理要求情報２３１Ａを取得（トラップ）し、変換情報２３３Ｂに処理要求情報２３１Ｂが存在する場合に、処理要求情報２３１Ａを第２の処理部２１Ｂが処理を行うことができる処理要求情報２３１Ｂに変換する。
【００４６】
そして、処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが存在した場合（Ｓ２２のＹＥＳ）、物理マシン２Ｂは、例えば、処理要求情報２３１Ｂを第２の処理部２１Ｂに送信する（Ｓ２３）。すなわち、この場合、物理マシン２Ｂは、変換情報２３３Ｂを参照することにより、移行した仮想マシン３２Ａが送信した処理要求情報２３１Ａを処理要求情報２３１Ｂに自動的に変換することが可能になる。そのため、物理マシン２Ｂは、この場合、第２の処理部２１Ｂに処理要求を行うために必要な情報の入力を要求する必要がなくなる。
【００４７】
一方、処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが存在しない場合（Ｓ２２のＮＯ）、物理マシン２Ｂは、例えば、仮想マシンの利用者に処理要求情報２３１Ｂの入力を要求する。そして、例えば、図１１に示すように、利用者から利用者端末５を介して該当する処理要求情報２３１Ｂの入力があった場合、物理マシン２Ｂは、入力された処理要求情報２３１Ｂを第２の処理部２１Ｂに送信する（Ｓ２４）。
【００４８】
このように、第１の実施の形態によれば、初めに、物理マシン２Ａは、物理マシン２Ａで動作する第１の処理部２１Ａに処理要求を行うための処理要求情報２３１Ａと、動作環境情報２３２Ａと、動作環境情報２３２Ｂとを含む変換情報２３３Ａを記憶部２３０Ａに記憶する。そして、次に、物理マシン２Ｂは、第１の物理マシン２Ａから第２の物理マシン２Ｂへの仮想マシンの移行に応じて、変換情報２３３Ａ（変換情報２３３Ｂ）を保持する。これにより、物理マシン２Ｂは、仮想マシン３２Ａが送信した処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが変換情報２３３Ｂに存在するか否かを判定することができる。
【００４９】
そして、第１の実施の形態によれば、物理マシン２Ｂは、移行した後の仮想マシンが処理要求情報２３１Ａを送信して第２の処理部２１Ｂに処理要求を行う場合、変換情報２３３Ｂを参照する。続いて、物理マシン２Ｂは、移行した仮想マシンの処理要求情報２３１Ａに対応する動作環境情報２３２Ａと同じ内容の動作環境情報２３２Ｂに対応する処理要求情報２３１Ｂが変換情報２３３Ｂに存在するか否かを判定する。その結果、該当する処理要求情報２３１Ｂが存在する場合、物理マシン２Ｂは、変換情報２３３Ｂに存在した処理要求情報２３１Ｂを第２の処理部２１Ｂに送信する。一方、該当する処理要求情報２３１Ｂが存在しない場合、物理マシン２Ｂは、存在しなかった処理要求情報２３１Ｂの入力があった後に、入力があった処理要求情報２３１Ｂを第２の処理部２１Ｂに送信する。これにより、移行した仮想マシンが送信した処理要求情報２３１Ａに対応する処理要求情報２３１Ｂが変換情報２３３Ｂに存在する場合、事業者は、仮想マシンの移行に伴って処理要求情報２３１Ｂの設定を行う必要がなくなる。したがって、この場合、事業者は、仮想マシンの移行に伴うサービスの中断を防止することが可能になる。
【００５０】
なお、物理マシン２Ｂは、物理マシン２Ｂに移行した仮想マシンが送信した処理要求情報２３１Ａに対する処理結果（以下、応答とも呼ぶ）を第２の処理部２１Ｂから受信した場合、処理要求を行った仮想マシンに、その処理結果を送信するものであってよい。この場合において、例えば、物理マシン２Ｂが処理要求情報２３１Ａを処理要求情報２３１Ｂに変換して第２の処理部２１Ｂに送信していた場合、物理マシン２Ｂは、変換情報２３３Ｂを参照する。そして、物理マシン２Ｂは、受信した処理結果を、処理要求情報２３１Ａを送信した仮想マシンが認識できる情報に再変換してから送信するものであってよい。これにより、移行した仮想マシン（移行した仮想マシンのアプリケーション）は、自マシンが送信した処理要求情報２３１Ａと、第２の処理部２１Ｂが実際に処理した処理要求情報２３１Ｂとが異なる場合であっても、第２の処理部２１Ｂからの応答を認識することが可能になる。
【００５１】
[第１の実施の形態の詳細]
次に、第１の実施の形態の詳細について説明する。図１２から図１６は、第１の実施の形態における情報共有処理の詳細を説明するフローチャート図である。また、図１７から図２２は、第１の実施の形態における情報共有処理の詳細を説明する図である。図１７から図２２を参照しながら、図１２から図１６の情報共有処理の詳細を説明する。なお、以下、処理要求情報２３１Ａは、第１の処理部２１Ａが仮想マシンの認証を行うための認証情報２４１Ａと、第１の処理部２１Ａに具体的な処理を要求するための引数である引数情報２４２Ａとを含むものとして説明する。同様に、処理要求情報２３１Ｂは、認証情報２４１Ｂと引数情報２４２Ｂとを含むものとして説明する。
【００５２】
［第１の物理マシンでの処理］
初めに、図１２に示すように、物理マシン２Ａの要求取得部２１３Ａは、例えば、物理マシン２Ａで動作する仮想マシンから第１の処理部２１Ａに対する処理要求情報２３１Ａが送信されるまで待機する（Ｓ３１のＮＯ）。そして、物理マシン２Ａで動作する仮想マシンから処理要求情報が送信された場合（Ｓ３１のＹＥＳ）、要求取得部２１３Ａは、例えば、送信された処理要求情報をトラップする。すなわち、要求取得部２１３Ａは、物理マシン２Ａで動作する仮想マシンが送信した処理要求情報を全て受信する。これにより、要求変換部２１４Ａは、要求取得部２１３Ａが取得した処理要求情報の全てについて、変換が必要であるか否か（取得した処理要求情報が処理要求情報２３１Ａであるか否か）を判定することが可能になる。
【００５３】
次に、物理マシン２Ａの要求変換部２１４Ａは、例えば、要求取得部２１３Ａが取得した処理要求情報に含まれる認証情報が、情報格納領域２３０Ａに記憶された変換情報２３３Ａに存在するか否かを判定する（Ｓ３２）。認証情報は、例えば、第１の処理部２１Ａ等が仮想マシンの認証を行うための情報である。具体的に、認証情報は、ユーザ名とパスワードとを含むものであってよい。そして、情報記憶部２１２Ａは、第１の処理部２１Ａ等が仮想マシンの認証を行った場合、後述するように、その認証に用いた認証情報を変換情報２３３Ａの一部として情報格納領域２３０Ａに記憶する。そのため、要求変換部２１４Ａは、要求取得部２１３Ａが取得した認証情報が変換情報２３３Ａに存在するか否かを判定することにより、その仮想マシンが第１の処理部２１Ａによって既に認証された仮想マシンであるか否かの判定を行うことが可能になる。
【００５４】
そして、要求取得部２１３Ａが取得した処理要求情報に含まれる認証情報が変換情報２３３Ａに存在する場合（Ｓ３２のＹＥＳ）、要求変換部２１４Ａは、例えば、取得した認証情報が第１の処理部２１Ａに対応する認証情報２４１Ａであるか否かを判定する（Ｓ３３）。その結果、取得した認証情報が第１の処理部２１Ａに対応する認証情報２４１Ａでない場合（Ｓ３３のＮＯ）、情報記憶部２１２Ａは、例えば、取得した認証情報を変換情報２３３Ａの一部として情報格納領域２３０Ａに記憶する（Ｓ３４）。すなわち、取得した認証情報が第１の処理部２１Ａに対応する認証情報２４１Ａでない場合とは、第１の処理部２１Ａに処理要求を行う認証情報２４１Ａと同じ内容である他の認証情報（他の物理マシンで動作する処理部の認証情報等）が変換情報２３３Ａに存在した場合である。この場合、要求変換部２１４Ａは、他の認証情報が変換情報２３３Ａに存在することに基づき、取得した認証情報が第１の処理部２１Ａに対応する認証情報２４１Ａであると判定する。これにより、要求変換部２１４Ａは、利用者に認証情報２４１Ａの入力を要求する頻度を抑えることが可能になる。
【００５５】
一方、要求取得部２１３Ａが取得した処理要求情報に含まれる認証情報が変換情報２３３Ａに存在しない場合（Ｓ３２のＮＯ）、情報要求部２１６Ａは、例えば、第１の処理部２１Ａに対応する認証情報２４１Ａの入力を要求する（Ｓ３５）。その後、情報要求部２１６Ａは、例えば、入力を要求した認証情報２４１Ａの入力があるまで待機する（Ｓ３６のＮＯ）。そして、認証情報２４１Ａの入力があった場合（Ｓ３６のＹＥＳ）、情報記憶部２１２Ａは、入力された認証情報２４１Ａを変換情報２３３Ａの一部として情報格納領域２３０Ａに記憶する（Ｓ３７）。以下、変換情報２３３Ａの具体例を説明する。
【００５６】
図１７は、変換情報２３３Ａの具体例である。図１７に示す変換情報２３３Ａは、各物理マシンで動作するモニタリングシステム等を識別する「処理名」と、変換情報２３３Ａで管理する各情報を識別する「メタデータ」とを項目として有する。また、図１７に示す変換情報２３３Ａは、各処理部におけるメタデータに対応する情報を識別する「動作環境情報」と、動作環境情報毎に設定された認証情報である「認証情報」とを項目として有する。  
【００５７】
具体的に、図１７に示す変換情報２３３Ａは、「処理名」として、「ＭＯＮ−Ａ」、「ＭＯＮ−Ｂ」及び「ＭＯＮ−Ｃ」が設定されている。また、図１７に示す変換情報２３３Ａは、「メタデータ」として「ユーザ名」、「パスワード」及び「認証キー」が設定されている。認証キーについては後述する。そして、図１７に示す変換情報２３３Ａにおいて、「ユーザ名」に対応する「動作環境情報」として、「ＭＯＮ−Ａ」には「Ｕｓｅｒ」が設定され、「ＭＯＮ−Ｂ」には「Ｌｏｇｉｎ」が設定され、「ＭＯＮ−Ｃ」には「Ｕｓｅｒ」が設定されている。
【００５８】
なお、図１７に示す「動作環境情報」に設定される情報は、要求取得部２１３Ａが処理要求情報２３１Ａを取得する前に、既に変換情報２３３Ａに設定されているものとする。これにより、各物理マシンは、各処理部において要求される情報の名称等の違いに対応した形で、各処理部に処理要求を行うことが可能になる。具体的に、例えば、図１７の「メタデータ」である「パスワード」は、「ＭＯＮ−Ａ」及び「ＭＯＮ−Ｃ」では「Ｐａｓｓｗｏｒｄ」と表現されるのに対し、「ＭＯＮ−Ｂ」では「ＰＷＤ」と表現される。図１７のその他の情報については説明を省略する。
【００５９】
図１８は、図１７に示す状態の後、Ｓ３４またはＳ３７において、第１の処理部２１Ａに対応する認証情報２４１Ａ（ユーザ名及びパスワード）を記憶した場合を示す変換情報２３３Ａの例である。以下、Ｓ３４における場合を例にして説明する。また、以下、第１の処理部２１ＡとＭＯＮ−Ａとが対応するものとして説明を行う。
【００６０】
具体的に、図１７に示す変換情報２３３Ａには、ＭＯＮ−Ａを実行するためのユーザ名及びパスワードに対応する情報が設定されていない（Ｓ３２のＮＯ）。そのため、情報記憶部２１２Ａは、図１８に示すように、入力された処理要求情報に含まれるユーザ名及びパスワードを設定する（Ｓ３５、Ｓ３６のＹＥＳ、Ｓ３７）。具体的に、図１８に示す例において、情報記憶部２１２Ａは、「処理名」が「ＭＯＮ−Ａ」であって「メタデータ」が「ユーザ名」である情報に対応する「認証情報」に、入力されたユーザ名である「Ａ５３１」を設定する。そして、情報記憶部２１２Ａは、図１８に示すように、「処理名」が「ＭＯＮ−Ａ」であって「メタデータ」が「パスワード」である情報に対応する「認証情報」に、入力されたパスワードである「１２３４」を設定する。これにより、図１８の状態の後、物理マシン２Ａで動作する仮想マシンから再度処理要求情報２３１Ａが送信された場合に、要求変換部２１４Ａは、送信された処理要求情報２３１Ａを設定する必要がなくなる。
【００６１】
なお、物理マシン２Ａで動作する仮想マシンは、処理要求情報２３１Ａに、図１８等に示す動作環境情報を含める形で送信するものであってよい。具体的に、物理マシン２Ａで動作する仮想マシンは、例えば、動作環境情報である「Ｕｓｅｒ」と認証情報である「Ａ５３１」とを対応させ、動作環境情報である「Ｐａｓｓｗｏｒｄ」と認証情報である「１２３４」とを対応させた状態で処理要求情報２３１Ａを送信する。これにより、要求変換部２１４Ａは、Ｓ３２において、要求取得部２１３Ａが取得した処理要求情報に含まれる認証情報が、変換情報２３３Ａに存在するか否かを判定することが可能になる。
【００６２】
図１３に戻り、物理マシン２Ａの認証要求部２１７Ａは、例えば、第１の処理部２１Ａに対応する認証キーが変換情報２３３Ａに含まれているか否かを判定する（Ｓ４１）。認証キーは、例えば、物理マシン２Ａで動作する仮想マシンが第１の処理部２１Ａに送信したユーザ名及びパスワードに基づき、第１の処理部２１Ａが仮想マシンに対して払い出す情報である。
【００６３】
そして、第１の処理部２１Ａに対応する認証キーが変換情報２３３Ａに存在しない場合（Ｓ４１のＮＯ）、物理マシン２Ａの認証要求部２１７Ａは、例えば、変換情報２３３Ａに含まれるユーザ名及びパスワードを第１の処理部２１Ａに送信して、第１の処理部２１Ａに対して認証要求を行う（Ｓ４２）。そして、物理マシン２Ａの認証取得部２１８Ａは、例えば、第１の処理が認証キーを送信するまで待機する（Ｓ４３のＮＯ）。その後、認証取得部２１８Ａが認証キーを取得した場合（Ｓ４３のＹＥＳ）、情報記憶部２１２Ａは、例えば、取得した認証キーを変換情報２３３Ａと対応させて記憶部２３０Ａに記憶する（Ｓ４４）。一方、第１の処理部２１Ａに対応する認証キーが変換情報２３３Ａに存在する場合（Ｓ４１のＹＥＳ）、認証要求部２１７Ａは、認証キーの取得等の処理を行わない。これにより、認証取得部２１８Ａは、認証要求部２１７Ａによる認証が完了した際に、認証キーを取得することが可能になる。
【００６４】
図１９は、図１８に示す状態の後、ＭＯＮ−Ａに対応する認証キーを記憶した場合（Ｓ４４）を示す変換情報２３３Ａの例である。具体的に、情報記憶部２１２Ａは、図１９に示すように、「処理名」が「ＭＯＮ−Ａ」であって「メタデータ」が「認証キー」である情報に対応する「認証情報」に、認証取得部２１８Ａが取得した認証キーである「２ｂ３ｋｋｄｚｉ７」を設定する。
【００６５】
図１３に戻り、Ｓ４４の後、またはＳ３３のＹＥＳの場合において、要求変換部２１４Ａは、例えば、第１の処理部２１Ａに対応する認証キーを情報格納領域２３０Ａから取得する（Ｓ４５）。また、要求変換部２１４Ａは、例えば、引数変換情報２３４Ａを参照して、要求取得部２１３Ａが取得した処理要求情報に含まれる引数情報に対応する引数情報２４２Ａを取得する（Ｓ４６）。すなわち、要求変換部２１４Ａは、要求取得部２１３Ａが取得した処理要求情報に含まれる認証情報の変換のみでなく、仮想マシンが行った処理要求を第１の処理部２１Ａが実行できるように引数情報の変換を行う。
【００６６】
図２０は、引数変換情報２３４Ａの具体例を説明する図である。図２０に示す引数変換情報２３４Ａは、図１８で説明した「処理名」と、図１８で説明した「メタデータ」と、引数情報２４２Ａが設定される「引数情報」とを項目として有している。図２０の例における「メタデータ」には、各仮想マシンのＣＰＵの使用情報を取得する「ＣＰＵ使用情報取得コマンド」と、各仮想マシンのメモリの使用情報を取得する「メモリ使用情報取得コマンド」とが設定される。具体的に、図２０に示す引数変換情報２３４Ａにおいて、「処理名」が「ＭＯＮ−Ａ」であって「メタデータ」が「ＣＰＵ使用情報取得コマンド」である情報に対応する「引数情報」には、「ＡＡＡ」が設定されている。図２０のその他の情報については説明を省略する。
【００６７】
さらに、要求送信部２１５Ａは、Ｓ４５において要求変換部２１４Ａが取得した認証キーと、Ｓ４６において要求変換部２１４Ａが取得した引数情報２４２Ａを送信する（Ｓ４７）。すなわち、要求送信部２１５Ａは、第１の処理部２１Ａに引数情報２４２Ａを送信する際に、認証キーを併せて送信する。これにより、要求送信部２１５Ａは、引数情報２４２Ａを送信する毎に、ユーザ名及びパスワードを送信する必要がなくなる。そして、この場合、第１の処理部２１Ａは、引数情報２４２Ａを受信する毎に、ユーザ名及びパスワードによる認証処理を行う必要がなくなるため、処理負担を軽減することが可能になる。
【００６８】
［第１の物理マシンから第２の物理マシンに仮想マシンが移行した場合の処理］
次に、物理マシン２Ａで動作する仮想マシンが物理マシン２Ｂに移行する場合の処理を説明する。初めに、物理マシン２Ｂの情報記憶部２１２Ｂは、図１４に示すように、例えば、物理マシン２Ｂへの仮想マシンの移行が行われるまで待機する（Ｓ５１のＮＯ）。そして、物理マシン２Ａで動作する仮想マシンが物理マシン２Ｂに移行する場合（Ｓ５１のＹＥＳ）、物理マシン２Ｂは、物理マシン２Ａの記憶部２３０Ａに記憶された変換情報２３３Ａを取得して記憶する（Ｓ５２）。すなわち、情報記憶部２１２Ｂは、図１２のＳ３４、Ｓ３７及び図１３のＳ４４において、情報記憶部２１２Ａが蓄積して記憶した情報である変換情報２３３Ａを取得する。これにより、情報記憶部２１２Ｂは、移行した仮想マシンが過去に動作したそれぞれの物理マシンに対応する変換情報を取得することが可能になる。
【００６９】
その後、図１５に示すように、物理マシン２Ｂの要求取得部２１３Ｂは、物理マシン２Ａの場合と同様に、例えば、物理マシン２Ｂで動作する仮想マシンから第２の処理部２１Ｂに対する処理要求情報が送信されるまで待機する（Ｓ６１のＮＯ）。そして、物理マシン２Ａから物理マシン２Ｂに移行した仮想マシンから処理要求情報２３１Ａが送信された場合（Ｓ６１のＹＥＳ）、要求取得部２１３Ｂは、例えば、送信された処理要求情報２３１Ａをトラップする。
【００７０】
次に、物理マシン２Ｂの要求変換部２１４Ｂは、例えば、要求取得部２１３Ｂが取得した処理要求情報２３１Ａに含まれる認証情報２４１Ａが、情報格納領域２３０Ｂに記憶された変換情報２３３Ｂに存在するか否かを判定する（Ｓ６２）。そして、認証情報２４１Ａが変換情報２３３Ｂに存在する場合（Ｓ６２のＹＥＳ）、要求変換部２１４Ｂは、物理マシン２Ａの場合と同様に、例えば、取得した認証情報２４１Ａが第２の処理部２１Ｂに対応する認証情報２４１Ｂであるか否かを判定する（Ｓ６３）。その結果、取得した認証情報２４１Ａが第２の処理部２１Ｂに対応する認証情報でない場合（Ｓ６３のＮＯ）、情報記憶部２１２Ｂは、例えば、取得した認証情報２４１Ｂを変換情報２３３Ｂの一部として記憶する（Ｓ６４）。
【００７１】
一方、要求取得部２１３Ｂが取得した処理要求情報２３１Ａに含まれる認証情報２４１Ａが変換情報２３３Ｂに存在していない場合（Ｓ６２のＮＯ）、情報要求部２１６Ｂは、物理マシン２Ａの場合と同様に、例えば、該当する認証情報２４１Ｂの入力を要求する（Ｓ６５）。その後、情報要求部２１６Ｂは、例えば、要求した認証情報２４１Ｂの入力があるまで待機する（Ｓ６６のＮＯ）。そして、認証情報２４１Ｂの入力があった場合（Ｓ６６のＹＥＳ）、情報記憶部２１２Ｂは、入力された認証情報２４１Ｂを変換情報２３３Ｂの一部として情報格納領域２３０Ｂに記憶する（Ｓ６７）。以下、変換情報２３３Ｂの具体例を説明する。
【００７２】
図２１は、図１９に示す状態の後、Ｓ６４またはＳ６７において、第２の処理部２１Ｂに対応するユーザ名及びパスワードに対応する情報を記憶した場合を示す変換情報２３３Ｂの例である。以下、Ｓ６４における場合を例にして説明する。また、以下、第２の処理部２１ＢとＭＯＮ−Ｂとが対応するものとして説明を行う。
【００７３】
具体的に、図１９に示す変換情報２３３Ｂにおいて、ＭＯＮ−Ｂを実行するためのユーザ名及びパスワードに対応する情報が設定されていない（Ｓ６２のＮＯ）。そのため、情報記憶部２１２Ｂは、図２１に示すように、要求取得部２１３Ｂが取得した処理要求情報２３１Ｂに含まれるユーザ名及びパスワードを設定する（Ｓ６４）。具体的に、図２１に示す例において、情報記憶部２１２Ｂは、「処理名」が「ＭＯＮ−Ｂ」であって「メタデータ」が「ユーザ名」である情報に対応する「認証情報」に、入力されたユーザ名である「１４２＿Ａ３」を設定する。そして、情報記憶部２１２Ｂは、図２１に示すように、「処理名」が「ＭＯＮ−Ｂ」であって「メタデータ」が「パスワード」である情報に対応する「認証情報」に、入力されたパスワードである「２４ｄｆｅｋ」を設定する。すなわち、情報記憶部２１２Ｂは、情報記憶部２１２Ｂが取得した変換情報２３３Ａを更新する形で情報の記憶を行う。これにより、情報記憶部２１２Ｂは、移行した仮想マシンが動作していた物理マシンの違いを意識することなく情報の蓄積を行うことが可能になる。
【００７４】
図１６に戻り、物理マシン２Ｂの認証要求部２１７Ｂは、物理マシン２Ａの場合と同様に、例えば、第２の処理部２１Ｂに対応する認証キーが変換情報２３３Ｂに含まれているか否かを判定する（Ｓ７１）。そして、第２の処理部２１Ｂに対応する認証キーが変換情報２３３Ｂに存在しない場合（Ｓ７１のＮＯ）、物理マシン２Ｂの認証要求部２１７Ｂは、例えば、変換情報２３３Ｂに含まれるユーザ名及びパスワードを第２の処理部２１Ｂに送信して、第２の処理部２１Ｂに対して認証要求を行う（Ｓ７２）。その後、物理マシン２Ｂの認証取得部２１８Ｂは、第１の処理部２１Ａが認証キーを送信するまで待機する（Ｓ７３のＮＯ）。そして、認証取得部２１８Ｂが認証キーを取得した場合（Ｓ７３のＹＥＳ）、情報記憶部２１２Ｂは、例えば、取得した認証キーを変換情報２３３Ｂと対応させて情報格納領域２３０Ｂに記憶する（Ｓ７４）。一方、第２の処理部２１Ｂに対応する認証キーが変換情報２３３Ｂに存在する場合（Ｓ７１のＹＥＳ）、認証要求部２１７Ｂは、認証キーの取得等の処理を行わない。
【００７５】
図２２は、図２１に示す状態の後、ＭＯＮ−Ｂに対応する認証キーを記憶した場合（Ｓ７４）を示す変換情報２３３Ｂの例である。この場合、情報記憶部２１２Ｂは、図２２に示すように、「処理名」が「ＭＯＮ−Ｂ」であって「メタデータ」が「認証キー」である情報に対応する「認証情報」に、認証取得部２１８Ｂが取得した認証キーである「Ｇ４９ｖｋ３ｘＥ」を設定する。
【００７６】
図１６に戻り、Ｓ７４の後、またはＳ６３のＹＥＳの場合において、要求変換部２１４Ｂは、例えば、第２の処理部２１Ｂに対応する認証キーを情報格納領域２３０Ｂから取得する（Ｓ７５）。また、要求変換部２１４Ｂは、例えば、引数変換情報２３４Ｂを参照して、Ｓ７１で受信した処理要求情報２３１Ａに含まれる引数情報２４２Ａを、第２の処理部２１Ｂが処理することができる引数情報２４２Ｂに変換する（Ｓ７６）。
【００７７】
具体的に、図２０の例において、物理マシン２Ａから移行した仮想マシンから送信された処理要求情報２３１Ａに含まれる引数情報が「ＤＤＤ」である場合、要求変換部２１４Ｂは、引数変換情報２３４Ｂを参照する。そして、要求変換部２１４Ｂは、「処理名」が「ＭＯＮ−Ｂ」である情報であって、「引数情報」である「ＤＤＤ」に対応する情報である「ＦＦＦ」を取得する。
【００７８】
そして、要求送信部２１５Ｂは、Ｓ７５において要求変換部２１４Ｂが取得した認証キーと、Ｓ４６において要求変換部２１４Ｂが変換した引数情報２４２Ｂを送信する（Ｓ７７）。
【００７９】
すなわち、本実施の形態における物理マシンは、物理マシン内の処理部に処理要求情報を送信される毎に、その処理要求情報を変換情報に蓄積していく。そして、その物理マシンで動作する仮想マシンが他の物理マシンに移行する場合、例えば、処理要求情報を蓄積した変換情報を移行先の物理マシンに送信する。これにより、移行先の物理マシンは、移行先の物理マシンで動作する仮想マシンから新たな処理要求情報が送信された場合に、移行元の物理マシンから受信した変換情報を更新する形で新たな処理要求情報を蓄積することが可能になる。そして、物理マシンは、変換情報を参照して処理要求情報の変換を行うことにより、利用者に処理要求情報の入力を要求する頻度を抑制することが可能になる。そのため、物理マシンは、サービスの中断が発生する頻度を抑制させることが可能になる。
【００８０】
以上の実施の形態をまとめると、以下の付記のとおりである。
【００８１】
（付記１）
コンピュータに、
第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し前記第１の物理マシンの動作環境に関する第１の動作環境情報と、第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を前記第２の物理マシンに保持させる、
ことを実行させることを特徴とする情報共有プログラム。
【００８２】
（付記２）
付記１において、
前記変換情報を保持させる処理の後、前記移行した後の仮想マシンが前記第１の処理要求情報を送信して前記第２の処理部に処理要求を行う場合、前記記憶した変換情報を参照し、前記第１の処理要求情報に対応する前記第１の動作環境情報と同じ内容の前記第２の動作環境情報に対応する前記第２の処理要求情報が前記変換情報に存在する場合、前記仮想マシンに、前記第２の処理部への処理要求に対応する第１の処理要求情報を前記存在した第２の処理要求情報に変換して前記第２の処理部に送信させ、前記第１の処理要求情報に対応する前記第１の動作環境情報と同じ内容の前記第２の動作環境情報に対応する前記第２の処理要求情報が前記変換情報に存在しない場合、前記仮想マシンに、前記存在しなかった第２の処理要求情報の入力があった後に、該入力があった第２の処理要求情報を前記第２の処理部に送信させる、
ことをコンピュータに実行させることを特徴とする情報共有プログラム。
【００８３】
（付記３）
付記１において、
前記変換情報を保持させる処理では、前記第１の物理マシンが前記第２の物理マシンに前記変換情報を送信する、
ことを特徴とする情報共有プログラム。
【００８４】
（付記４）
付記２において、
前記処理要求を送信させる処理では、前記存在しなかった第２の処理要求情報の入力があった場合、該入力があった第２の処理要求情報を前記第２の処理部に送信させるとともに、前記入力があった第２の処理要求情報を前記保持した変換情報と対応付けて記憶部に記憶する、
ことを特徴とする情報共有プログラム。
【００８５】
（付記５）
付記１において、
前記処理要求を送信させる工程の後、前記第２の処理部に送信させた第２の処理要求情報に対する応答があった場合、前記変換情報を参照し、前記応答を前記仮想マシンが認識できる情報に再変換して前記仮想マシンに送信させる、
ことを特徴とする情報共有プログラム。
【００８６】
（付記６）
付記１において、
前記第１及び第２の処理要求情報は、前記第１の処理部または前記第２の処理部が前記仮想マシンの認証を行うための認証情報を含む、
ことを特徴とする情報共有プログラム。
【００８７】
（付記７）
付記１において、
前記第１の動作環境情報は、前記第１の物理マシンが前記第１の処理要求情報の種別を識別可能な情報であり、
前記第２の動作環境情報は、前記第２の物理マシンが前記第２の処理要求情報の種別を識別可能な情報である、
ことを特徴とする情報共有プログラム。
【００８８】
（付記８）
第１の物理マシンと、該第１の物理マシンとアクセス可能な第２の物理マシンとを有する情報共有システムであって、
第１の物理マシンは、該第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し、前記第１の物理マシンの動作環境に関する第１の動作環境情報と、第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し、前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第２の物理マシンは、前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
ことを特徴とする情報共有システム。
【００８９】
（付記９）
第１の物理マシンは、該第１の物理マシンで動作する第１の処理部に処理要求を行うための第１の処理要求情報と、該第１の処理要求情報に対応し前記第１の物理マシンの動作環境に関する第１の動作環境情報と、第２の物理マシンで動作する第２の処理部に処理要求を行うための第２の処理要求情報に対応し前記第２の物理マシンの動作環境に関する第２の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第２の物理マシンは、前記第１の物理マシンから前記第２の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
ことを特徴とする情報共有方法。
【符号の説明】
【００９０】
１：管理サーバ              ２：物理マシン
３：仮想マシン              ４：仮想化ソフトウエア
５：利用者端末
【図１】
0006398559.tif 000002
【図２】
0006398559.tif 000003
【図３】
0006398559.tif 000004
【図４】
0006398559.tif 000005
【図５】
0006398559.tif 000006
【図６】
0006398559.tif 000007
【図７】
0006398559.tif 000008
【図８】
0006398559.tif 000009
【図９】
0006398559.tif 000010
【図１０】
0006398559.tif 000011
【図１１】
0006398559.tif 000012
【図１２】
0006398559.tif 000013
【図１３】
0006398559.tif 000014
【図１４】
0006398559.tif 000015
【図１５】
0006398559.tif 000016
【図１６】
0006398559.tif 000017
【図１７】
0006398559.tif 000018
【図１８】
0006398559.tif 000019
【図１９】
0006398559.tif 000020
【図２０】
0006398559.tif 000021
【図２１】
0006398559.tif 000022
【図２２】
0006398559.tif 000023