JP6398559B2 - 情報共有プログラム、情報共有システム及び情報共有方法 - Google Patents

情報共有プログラム、情報共有システム及び情報共有方法 Download PDF

Info

Publication number
JP6398559B2
JP6398559B2 JP2014203560A JP2014203560A JP6398559B2 JP 6398559 B2 JP6398559 B2 JP 6398559B2 JP 2014203560 A JP2014203560 A JP 2014203560A JP 2014203560 A JP2014203560 A JP 2014203560A JP 6398559 B2 JP6398559 B2 JP 6398559B2
Authority
JP
Japan
Prior art keywords
information
physical machine
processing request
processing
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014203560A
Other languages
English (en)
Other versions
JP2016071810A (ja
Inventor
武俊 吉田
武俊 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014203560A priority Critical patent/JP6398559B2/ja
Priority to US14/840,544 priority patent/US9836319B2/en
Publication of JP2016071810A publication Critical patent/JP2016071810A/ja
Application granted granted Critical
Publication of JP6398559B2 publication Critical patent/JP6398559B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

本発明は、情報共有プログラム、情報共有システム及び情報共有方法に関する。
近年、物理装置(以下、物理マシンとも呼ぶ)の性能向上に伴い、複数の仮想装置(以下、仮想マシンとも呼ぶ)を1つの物理マシンに集約する仮想化技術の研究が進められている。この仮想化技術は、例えば、仮想化ソフトウエア(ハイパーバイザ)が物理マシンを複数の仮想マシンに割り当てて、各仮想マシンにインストールされたアプリケーションプログラム(以下、単にアプリケーションとも呼ぶ)によるサービスの提供を可能にする。
運用中の仮想マシンにおいて、仮想マシンを構成する内容(以下、ディスクイメージと称する)の全部または一部を、別の物理マシンに作成された仮想マシンに移行する場合がある。これにより、サービスを提供する事業者(以下、単に事業者とも呼ぶ)は、例えば、CPUの使用率が100%に近い物理マシンに作成された仮想マシンのディスクイメージを、他の余裕がある物理マシンに作成された仮想マシンに移行することが可能になる(例えば、特許文献1、2参照)。
特開2000−132403号公報 特開2004−158012号公報
仮想マシンが動作する物理マシンにおいて、例えば、仮想マシンの稼働状況を監視するためのモニタリングシステムや、仮想マシンによって提供されるサービスを利用する利用者(以下、単に利用者とも呼ぶ)に対して課金するための課金システム等が動作する場合がある。この場合、利用者は、例えば、仮想マシンで動作するアプリケーションを介してモニタリングシステム等に処理要求を送信する。そして、処理要求を受信したモニタリングシステム等は、処理要求に対応する処理を実行し、その結果を仮想マシンに送信する。これにより、利用者は、現在の仮想マシンの稼働状況等に関する情報を取得することが可能になる。
ここで、仮想マシンの移行が行われる場合、移行元の物理マシンで動作するモニタリングシステム等と、移行先の物理マシンで動作するモニタリングシステム等との間で、各処理を実行させるために必要な情報の表現等が異なる場合がある。この場合、移行した仮想マシンは、移行前において処理要求を行うために用いていた情報と、移行後に処理要求を行うために必要な情報とを対応付けることができない。そのため、移行した仮想マシンは、移行先の物理マシンで動作する処理に対して処理要求を行うことができない場合がある。
一方、事業者は、例えば、移行先の物理マシンで動作するモニタリングシステム等に対して処理要求を行うための情報を、移行する仮想マシンに予め設定しておく場合がある。しかしながら、移行した仮想マシンが移行先の物理マシンで動作するモニタリングシステム等に処理要求を行うために必要な情報には、移行する仮想マシンが移行先の物理マシンで起動して初めて定まる情報が存在する場合がある。そのため、事業者は、例えば、仮想マシンの移行が発生する毎に、仮想マシンが提供しているサービスと中断して、移行した仮想マシンが移行先のモニタリングシステム等に処理要求を行うための情報の設定を行う必要がある。
そこで、一つの実施の形態の目的は、仮想マシンの移行に伴うサービスの中断を防止する情報共有プログラム、情報共有システム及び情報共有方法を提供することにある。
実施の形態の一つの側面によれば、第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し前記第1の物理マシンの動作環境に関する第1の動作環境情報と、第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を前記第2の物理マシンに保持させる。
一つの側面によれば、仮想マシンの移行に伴うサービスの中断を防止する。
情報処理システムの全体構成を示す図である。 仮想マシンの移行を説明する図である。 仮想マシンの移行を説明する図である。 物理マシンのハードウエア構成を示す図である。 図4の物理マシンの機能ブロック図である。 図4の物理マシンの機能ブロック図である。 第1の実施の形態における情報共有処理の概略を示すフローチャート図である。 第1の実施の形態における情報共有処理の概略を示すフローチャート図である。 第1の実施の形態における情報共有処理の概略を示すフローチャート図である。 第1の実施の形態における情報共有処理の概略を説明する図である。 第1の実施の形態における情報共有処理の概略を説明する図である。 第1の実施の形態における情報共有処理の詳細を示すフローチャート図である。 第1の実施の形態における情報共有処理の詳細を示すフローチャート図である。 第1の実施の形態における情報共有処理の詳細を示すフローチャート図である。 第1の実施の形態における情報共有処理の詳細を示すフローチャート図である。 第1の実施の形態における情報共有処理の詳細を示すフローチャート図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。 第1の実施の形態における情報共有処理の詳細を説明する図である。
[情報処理システムの構成]
図1は、情報処理システムの全体構成を示す図である。図1に示す情報処理システム10は、例えば、データセンタ内に、管理サーバ1と、仮想マシン(VM:Virtual Machine)を作成する物理マシン2とが設けられている。そして、データセンタには、インターネットやイントラネット等のネットワークを介して、利用者端末5からアクセス可能になっている。
物理マシン2は、図1の例では複数の物理マシンから構成されており、各物理マシンは、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ハードディスク(HDD:Hard Disk Drive)等の大容量メモリとネットワークとを有する。そして、物理マシン2のリソースは、複数の仮想マシン3に割り当てられる。
管理サーバ1は、例えば、物理マシン2とアクセス可能であり、物理マシン2内における仮想マシン3の作成指示や作成された仮想マシン3の管理を行う。
仮想マシン3は、例えば、事業者がそのインフラ等をネットワーク経由で利用者にサービス(例えば、クラウドサービス)を提供するものである。クラウドサービスは、コンピュータシステムを構築し稼働させるための基盤、すなわち、仮想マシン3やネットワーク等のインフラストラクチャそのものを、ネットワーク経由で提供するサービスである。また、利用者は、例えば、利用者端末5からクラウドサービスポータルサイトにアクセスして、仮想マシンに必要な仕様、例えばCPUのクロック周波数、メモリの容量(GB)、ハードディスクの容量(MB/sec、IOPS)、及びネットワークの通信帯域幅(Gbps)を選択し、それらについてクラウド利用契約を締結する。また、利用者端末5は、例えば、仮想マシン3の稼働状態を監視や、仮想マシンに対する操作等を可能にする。
仮想化ソフトウエア4は、管理サーバ1からの指示に応じて、物理マシン2のCPU、メモリ、ハードディスク、ネットワーク等のリソースを割り当てることにより、仮想マシン3を動作させる基盤ソフトウエアである。仮想化ソフトウエア4は、例えば、物理マシン2で動作する。
仮想マシン3は、物理マシン2のリソースが割り当てられることに加えて、例えば、OS(Operating System)、ミドルウエア、アプリケーション、データベース等を有するイメージファイルをそのハードディスク内に有する。そして、仮想マシン3は、例えば、起動時にイメージファイルをハードディスクからメモリに書き込み、所望のサービスに対応する動作を行う。
[仮想マシンの移行]
次に、仮想マシンの移行について説明する。図2及び図3は、仮想マシンの移行を説明する図である。
図2に示す例において、物理マシン2Aには、仮想マシン31A、仮想マシン32A及びモニタリングシステム21A(以下、第1の処理部21Aとも呼ぶ)が設けられている。また、物理マシン2Aは、ハードウエア22Aを有している。一方、物理マシン2Bには、仮想マシン31B及びモニタリングシステム21B(以下、第2の処理部21Bとも呼ぶ)が設けられている。また、物理マシン2Bは、ハードウエア22Bを有している。
図2の例におけるモニタリングシステム21A、21Bは、例えば、それぞれハードウエア22A、22Bに定期的にアクセスし、各仮想マシンが使用しているハードウエア22A、22Bのリソース(例えば、CPUやメモリ)の使用量を取得する。そして、モニタリングシステム21A、21Bは、例えば、各仮想マシンが使用しているリソースの使用量が予め定められた範囲の上限を上回った場合に、図1に示す管理サーバ1に新たな仮想マシンの作成を依頼する。また、モニタリングシステム21A、21Bは、各仮想マシンが使用しているリソースの使用量が予め定められた範囲の下限を下回った場合に、図1に示す管理サーバ1に作成されている可能マシンのうちいずれかの仮想マシンの削除を依頼する。これにより、事業者は、効率的に仮想マシンの作成及び削除を行うことが可能になり、物理マシンのリソースの使用量を抑えることが可能になる。
具体的に、図2に示す例において、ハードウエア22Aのリソースの使用量が予め定めた範囲の上限を上回っていることを検知した場合、モニタリングシステム21Aは、仮想マシン31Aまたは仮想マシン32Aを他の物理マシンに移行する依頼を管理サーバ1に送信する。そして、管理サーバ1は、例えば、図3に示すように、仮想マシン32Aを物理マシン2Bに移行する。これにより、事業者は、物理マシン2のハードウエア22Aのリソース使用量を抑えることが可能になる。
ここで、例えば、モニタリングシステム21A及びモニタリングシステム21Bは、各仮想マシンが処理要求を行うために必要となる情報の表現等が異なる場合がある。具体的に、例えば、モニタリングシステム21Aでは、ユーザ名及びパスワードに相当する情報を「User」及び「Password」と表現しているのに対し、モニタリングシステム21Bでは、「Login」及び「PWD」と表現されている場合がこれに該当する。そのため、例えば、移行した仮想マシン32Aがモニタリングシステム21Bで用いているユーザ名等の情報を有している場合であっても、仮想マシン32Aは、モニタリングシステム21Aで用いていたユーザ名等と対応させることができない。したがって、移行後の仮想マシン32Aは、この場合、モニタリングシステム21Bに処理要求を行うことができない。
一方、例えば、モニタリングシステム21Bに処理要求を行うために必要な情報を、移行する仮想マシン32Aに予め設定する場合がある。しかしながら、モニタリングシステム21Bに処理要求を行うために必要な情報には、移行した仮想マシン32Aを物理マシン2Bで起動して初めて定まる情報も存在する。したがって、事業者は、モニタリングシステム21Bに処理要求を行うために必要な全ての情報を、移行前の仮想マシン32Aに予め設定することができない。そのため、事業者は、例えば、仮想マシン32Aの移行後に仮想マシン32Aによるサービスの提供を中断し、モニタリングシステム21Bに処理要求を行うための情報を設定する必要がある。
そこで、本実施の形態では、仮想マシン32Aの移行に応じて、移行元の物理マシン2Aで動作する処理に処理要求を行うための情報と、移行元の物理マシン2A及び移行先の物理マシン2Bの環境に関する情報とを、移行先の物理マシン2Bが保持させる。これにより、事業者は、仮想マシン32Aの移行に伴うサービスの中断を防止することが可能になる。
[物理マシンのハードウエア構成]
次に、物理マシン2A、2Bの構成について説明する。図4は、物理マシンのハードウエア構成を示す図である。物理マシン2A(以下、第1の物理マシン2Aとも呼ぶ)は、プロセッサであるCPU201Aと、メモリ202Aと、外部インターフェース(I/Oユニット)203Aと、記憶媒体204Aとを有する。各部は、バス205Aを介して互いに接続される。記憶媒体204Aは、例えば、記憶媒体204A内のプログラム格納領域(図示しない)に、物理マシン2Aと物理マシン2Bとの間で情報を共有する処理(以下、情報共有処理とも呼ぶ)を行うためのプログラム210Aを記憶する。CPU201Aは、図4に示すように、プログラム210Aの実行時に、プログラム210Aを記憶媒体204Aからメモリ202Aにロードし、プログラム210Aと協働して情報共有処理を行う。また、記憶媒体204Aは、例えば、情報共有処理を行う際に用いられる情報を記憶する情報格納領域230A(以下、記憶部230Aとも呼ぶ)を有する。
また、物理マシン2B(以下、第2の物理マシン2Bとも呼ぶ)は、物理マシン2Aと同様に、プロセッサであるCPU201Bと、メモリ202Bと、外部インターフェース(I/Oユニット)203Bと、記憶媒体204Bとを有する。各部は、バス205Bを介して互いに接続される。記憶媒体204Bは、例えば、記憶媒体204B内のプログラム格納領域(図示しない)に、情報共有処理を行うためのプログラム210Bを記憶する。CPU201Bは、図4に示すように、プログラム210Bの実行時に、プログラム210Bを記憶媒体204Bからメモリ202Bにロードし、プログラム210Bと協働して情報共有処理を行う。また、記憶媒体204Bは、例えば、情報共有処理を行う際に用いられる情報を記憶する情報格納領域230B(以下、記憶部230Bとも呼ぶ)を有する。
[物理マシンの機能]
図5及び図6は、図4の物理マシンの機能ブロック図である。物理マシン2AのCPU201Aは、プログラム210Aと協働することにより、例えば、移行検知部211Aと、情報記憶部212Aと、要求取得部213Aと、要求変換部214Aと、要求送信部215Aとして動作する。また、CPU201Aは、プログラム210Aと協働することにより、例えば、情報要求部216Aと、認証要求部217Aと、認証取得部218Aとして動作する。また、情報格納領域230Aには、処理要求情報231A(以下、第1の処理要求情報231Aとも呼ぶ)と、動作環境情報232A(以下、第1の動作環境情報232Aとも呼ぶ)と、変換情報233Aと、引数変換情報234Aとが記憶されている。なお、以下、移行検知部211A、情報記憶部212A、要求取得部213A、要求変換部214A、要求送信部215A、情報要求部216A、認証要求部217A及び認証取得部218Aを合わせて変換部220Aとも呼ぶ。
また、物理マシン2BのCPU201Bは、プログラム210Bと協働することにより、例えば、移行検知部211Bと、情報記憶部212Bと、要求取得部213Bと、要求変換部214Bと、要求送信部215Bとして動作する。また、CPU201Bは、プログラム210Bと協働することにより、例えば、情報要求部216Bと、認証要求部217Bと、認証取得部218Bとして動作する。また、情報格納領域230Bには、処理要求情報231B(以下、第2の処理要求情報231Bとも呼ぶ)と、動作環境情報232B(以下、第2の動作環境情報232Bとも呼ぶ)と、変換情報233Bと、引数変換情報234Bとが記憶されている。なお、以下、移行検知部211B、情報記憶部212B、要求取得部213B、要求変換部214B、要求送信部215B、情報要求部216B、認証要求部217B及び認証取得部218Bを合わせて変換部220Bとも呼ぶ。
[移行検知部及び情報記憶部の機能]
物理マシン2Aの移行検知部211Aは、例えば、他の物理マシンから物理マシン2Aへの仮想マシンの移行が行われる場合に、これを検知する。
物理マシン2Aの情報記憶部212Aは、例えば、物理マシン2Aで動作する仮想マシン(仮想マシンで動作するアプリケーション)から物理マシン2Aで動作する第1の処理部21Aに対して処理要求を行うための処理要求情報231Aを情報格納領域230Aに記憶する。具体的に、情報記憶部212Aは、例えば、利用者から処理要求情報231Aの入力があった場合に、入力された処理要求情報231Aを情報格納領域230Aに記憶する。処理要求情報231Aは、例えば、第1の処理部21Aが仮想マシン(または仮想マシンの利用者)に対して認証を行うための認証情報(例えば、ユーザ名及びパスワード)を含むものであってよい。また、処理要求情報231Aは、例えば、第1の処理部21Aに処理を要求するための引数情報を含むものであってよい。処理要求情報231Aの詳細については後述する。また、引数情報の変換を行うための引数変換情報234Aについては後述する。
また、情報記憶部212Aは、例えば、処理要求情報231Aと、物理マシン2Aの動作環境に関する動作環境情報232Aと、物理マシン2Bの動作環境に関する動作環境情報232Bとを含む変換情報233Aとして記憶する。動作環境情報232Aは、例えば、処理要求情報231Aと対応する情報であり、物理マシン2Aが処理要求情報231Aの種別を識別可能な識別情報232Aであってもよい。また、動作環境情報232Bは、例えば、処理要求情報231Bと対応する情報であり、物理マシン2Bが処理要求情報231Bの種別を識別可能な識別情報232Bであってもよい。さらに、情報記憶部212Aは、変換情報233Aを作成する場合に、同じ内容の情報を有する動作環境情報232Aと動作環境情報232Bとを対応させる。これにより、物理マシン2Aまたは物理マシン2Bは、処理要求情報231Aを、処理要求情報231Aに対応する動作環境情報232Aと同じ内容の動作環境情報232Bに対応する処理要求情報231Bに変換することが可能になる。動作環境情報232A、232B、変換情報233A、233Bの具体例については後述する。
さらに、情報記憶部212Aは、例えば、移行検知部211Aが物理マシン2Aに対する仮想マシンの移行が行われることを検知した場合、その仮想マシンの移行が完了するまでに、移行元の物理マシンで記憶された変換情報を取得する。情報記憶部212Aは、この場合、仮想マシンの移行が完了するまでに変換情報の取得を行う。そして、情報記憶部212Aは、取得した移行元の物理マシンの変換情報を、変換情報233Aとして情報格納領域230Aに記憶する。これにより、物理マシン2Aは、移行する仮想マシンが過去に動作した全ての物理マシンについての変換情報を累積的に取得することが可能になる。
なお、物理マシン2Bの移行検知部211B及び情報記憶部212Bは、上記の移行検知部211A及び情報記憶部212Bと同じ処理を行うものであるため、説明を省略する。また、処理要求情報231B及び引数変換情報234Bは、処理要求情報231A及び引数変換情報234Aと同じ情報であるため、説明を省略する。
[要求取得部、要求変換部、要求送信部及び情報要求部の機能]
物理マシン2Aの要求取得部213Aは、例えば、物理マシン2Aで動作する仮想マシンが、第1の処理部21Aに対して送信した処理要求情報を取得する。すなわち、例えば、物理マシン2Aで動作する仮想マシンが他の物理マシンから移行した仮想マシンである場合、要求取得部213Aが取得した処理要求情報は、第1の処理部21Aが認識することができるか否かが不明な処理要求情報である。
物理マシン2Aの要求変換部214Aは、例えば、物理マシン2Aで動作する仮想マシンから送信された処理要求情報に対応する処理要求情報231Aが変換情報233Aに含まれるか否かを判定する。すなわち、要求変換部214Aは、要求取得部213Aが取得した処理要求情報と同じ内容の情報であって、第1の処理部21Aが処理を行うことができる処理要求情報231Aが変換情報233Aに含まれているか(存在するか)否かを判定する。そして、要求取得部213Aが取得した処理要求情報に対応する処理要求情報231Aが変換情報233Aに含まれる場合、要求変換部214Aは、変換情報233Aに含まれていた処理要求情報231Aを第1の処理部21Aに送信するように、要求送信部215Aに指示を行う。一方、要求取得部213Aが取得した処理要求情報に対応する処理要求情報231Aが変換情報233Aに含まれない場合、物理マシン2Aの情報要求部216Aは、物理マシン2Aで動作する仮想マシンの利用者に処理要求情報231Aの入力を要求する。これにより、要求変換部214Aは、要求取得部213Aが取得した処理要求情報と同じ内容の情報であって第1の処理部21Aが処理を行うことができる処理要求情報231Aを、第1の処理部21Aに送信することが可能になる。さらに、処理要求情報231Aが変換情報233Aに含まれている場合、物理マシン2Aは、仮想マシンの利用者に処理要求情報231Aを要求することなく、処理要求情報231を第1の処理部21Aに送信することが可能になる。そのため、物理マシン2Aは、仮想マシンの移行があった場合であっても、利用者に提供しているサービスの中断を防止することが可能になる。
物理マシン2Aの要求送信部215Aは、例えば、要求変換部214Aからの指示に基づいて、処理要求情報231Aを第1の処理部21Aに送信する。
なお、物理マシン2Bの要求取得部213B、要求変換部214B、要求送信部215B及び情報要求部216Bは、上記の要求取得部213A、要求変換部214A、要求送信部215A及び情報要求部216Aと同じ処理を行うものであるため、説明を省略する。
[認証要求部及び認証取得部の機能]
物理マシン2Aの認証要求部217Aは、例えば、要求取得部213Aが取得した処理要求情報231Aに含まれる認証情報を第1の処理部21Aに送信して、第1の処理部21Aに認証処理の実行を要求する。
物理マシン2Aの認証取得部218Aは、例えば、第1の処理部21Aが送信した認証キー情報(以下、単に認証キーとも呼ぶ)を取得する。認証キーについては後述する。また、認証要求部217A及び認証取得部218Aの処理の具体例については後述する。なお、物理マシン2Bの認証要求部217B及び認証取得部218Bは、認証要求部217A及び認証取得部218Aと同じ処理を行うものであるため、説明を省略する。
[第1の実施の形態]
次に、第1の実施の形態について説明する。図7から図9は、第1の実施の形態における情報共有処理の概略を示すフローチャート図である。また、図10及び図11は、第1の実施の形態における情報共有処理の概略を説明する図である。図10及び図11を参照しながら図7から図9の情報共有処理の概略について説明する。以下、物理マシン2Aで動作する仮想マシンが物理マシン2Bに移行する場合を説明する。なお、図10及び図11については、図2及び図3と異なる点について説明する。
初めに、物理マシン2A(物理マシン2Aの変換部220A)における処理を説明する。物理マシン2Aは、図7及び図10に示すように、例えば、変換情報233Aを記憶するタイミングまで待機する(S1のNO)。変換情報233Aを記憶するタイミングは、例えば、物理マシン2Aで動作する仮想マシンが第1の処理部21Aに処理要求情報231Aが送信した場合である。そして、変換情報233Aを記憶するタイミングになった場合(S1のYES)、物理マシン2Aは、物理マシン2Aで動作する仮想マシンから送信された処理要求情報231Aと、動作環境情報232Aと、動作環境情報232Bとを含む変換情報233Aを作成する。そして、物理マシン2Aは、作成した変換情報233Aを記憶部230Aに記憶する(S2)。すなわち、物理マシン2Aは、例えば、物理マシン2Aで動作する仮想マシンから第1の処理部21Aに処理要求情報231Aが送信されることに応じて、変換情報233Aを情報格納領域230Aに蓄積して記憶する。なお、動作環境情報232A及び動作環境情報232Bは、予め情報格納領域230Aに記憶されているものであってよい。また、事業者は、物理マシン2Aで動作する仮想マシンが第1の処理部21Aに処理要求情報231Aを送信する前に、予め処理要求情報231Aを含む変換情報233Aを記憶部230Aに記憶しておくものであってもよい。
次に、物理マシン2B(物理マシン2Bの変換部220B)における処理を説明する。物理マシン2Bは、図8及び図11に示すように、例えば、物理マシン2Bへの仮想マシンの移行が行われるまで待機する(S11のNO)。そして、例えば、物理マシン2Aで動作する仮想マシンが物理マシン2Bに移行する場合(S11のYES)、物理マシン2Bは、物理マシン2Aの記憶部230Aに記憶された変換情報233Aを保持する(S12)。具体的に、物理マシン2Bは、例えば、記憶部230Aにアクセスして変換情報233Aを取得し、これを変換情報233Bとして記憶部230Bに記憶するものであってよい。また、物理マシン2Bは、物理マシン2Aから送信された変換情報233Aを受信し、これを変換情報233Bとして情報格納領域230Bに記憶するものであってよい。
これにより、物理マシン2Bは、物理マシン2Aから物理マシン2Bに移行した仮想マシンが第2の処理部21Bに処理要求情報231Aを送信した場合に、変換情報233Bを参照することが可能になる。そして、物理マシン2Bは、変換情報233Bを参照することにより、移行した仮想マシンの処理要求情報231Aに対応する動作環境情報232Aと同じ内容の動作環境情報232Bに対応する処理要求情報231Bを取得することが可能になる。そのため、物理マシン2Bは、仮想マシンの処理要求情報231Aに対応する処理要求情報231Bが変換情報233Bに存在するか否かを判定することができる。
なお、物理マシン2Bは、物理マシン2Aから変換情報233Aを取得する際に、変換部220Aを動作させるための変換モジュール(例えば、図4に示すプログラム210Aの一部)を併せて取得するものであってよい。そして、物理マシン2Bは、取得した変換モジュールをCPUと協働して動作させることにより、変換部220Bとして動作させるものであってよい。また、物理マシン2Aは、変換モジュールと変換情報233Aとを物理マシン2Aとは異なる物理マシンに記憶しておくものであってもよい。また、変換情報233Aが3台以上の物理マシンに関する情報を含んでいる場合、物理マシン2Bは、変換情報233Aのうち、物理マシン2A及び物理マシン2Bに関連する情報のみを取得するものであってよい。同様に、物理マシン2Bは、変換情報233Aが3台以上の物理マシンに関する情報を含んでいる場合、処理要求情報231Aと処理要求情報231Bを変換させるための変換モジュールのみを取得するものであってよい。
その後、物理マシン2Bは、図9及び図11に示すように、例えば、物理マシン2Aから移行した仮想マシンから第2の処理部21Bに対して処理要求情報231Aが送信されるまで待機する(S21のNO)。そして、移行した仮想マシンから処理要求情報231Aが送信された場合(S21のYES)、物理マシン2Bは、例えば、変換情報233Bを参照し、送信された処理要求情報231Aに対応する処理要求情報231Bが存在するか否かを判定する(S22)。すなわち、第2の処理部21Bは、仮想マシン32Aが送信した処理要求情報231Aを認識することができないため、処理要求情報231Aに基づく処理を行うことができない。そのため、物理マシン2Bは、 仮想マシン32Aが送信した処理要求情報231Aを取得(トラップ)し、変換情報233Bに処理要求情報231Bが存在する場合に、処理要求情報231Aを第2の処理部21Bが処理を行うことができる処理要求情報231Bに変換する。
そして、処理要求情報231Aに対応する処理要求情報231Bが存在した場合(S22のYES)、物理マシン2Bは、例えば、処理要求情報231Bを第2の処理部21Bに送信する(S23)。すなわち、この場合、物理マシン2Bは、変換情報233Bを参照することにより、移行した仮想マシン32Aが送信した処理要求情報231Aを処理要求情報231Bに自動的に変換することが可能になる。そのため、物理マシン2Bは、この場合、第2の処理部21Bに処理要求を行うために必要な情報の入力を要求する必要がなくなる。
一方、処理要求情報231Aに対応する処理要求情報231Bが存在しない場合(S22のNO)、物理マシン2Bは、例えば、仮想マシンの利用者に処理要求情報231Bの入力を要求する。そして、例えば、図11に示すように、利用者から利用者端末5を介して該当する処理要求情報231Bの入力があった場合、物理マシン2Bは、入力された処理要求情報231Bを第2の処理部21Bに送信する(S24)。
このように、第1の実施の形態によれば、初めに、物理マシン2Aは、物理マシン2Aで動作する第1の処理部21Aに処理要求を行うための処理要求情報231Aと、動作環境情報232Aと、動作環境情報232Bとを含む変換情報233Aを記憶部230Aに記憶する。そして、次に、物理マシン2Bは、第1の物理マシン2Aから第2の物理マシン2Bへの仮想マシンの移行に応じて、変換情報233A(変換情報233B)を保持する。これにより、物理マシン2Bは、仮想マシン32Aが送信した処理要求情報231Aに対応する処理要求情報231Bが変換情報233Bに存在するか否かを判定することができる。
そして、第1の実施の形態によれば、物理マシン2Bは、移行した後の仮想マシンが処理要求情報231Aを送信して第2の処理部21Bに処理要求を行う場合、変換情報233Bを参照する。続いて、物理マシン2Bは、移行した仮想マシンの処理要求情報231Aに対応する動作環境情報232Aと同じ内容の動作環境情報232Bに対応する処理要求情報231Bが変換情報233Bに存在するか否かを判定する。その結果、該当する処理要求情報231Bが存在する場合、物理マシン2Bは、変換情報233Bに存在した処理要求情報231Bを第2の処理部21Bに送信する。一方、該当する処理要求情報231Bが存在しない場合、物理マシン2Bは、存在しなかった処理要求情報231Bの入力があった後に、入力があった処理要求情報231Bを第2の処理部21Bに送信する。これにより、移行した仮想マシンが送信した処理要求情報231Aに対応する処理要求情報231Bが変換情報233Bに存在する場合、事業者は、仮想マシンの移行に伴って処理要求情報231Bの設定を行う必要がなくなる。したがって、この場合、事業者は、仮想マシンの移行に伴うサービスの中断を防止することが可能になる。
なお、物理マシン2Bは、物理マシン2Bに移行した仮想マシンが送信した処理要求情報231Aに対する処理結果(以下、応答とも呼ぶ)を第2の処理部21Bから受信した場合、処理要求を行った仮想マシンに、その処理結果を送信するものであってよい。この場合において、例えば、物理マシン2Bが処理要求情報231Aを処理要求情報231Bに変換して第2の処理部21Bに送信していた場合、物理マシン2Bは、変換情報233Bを参照する。そして、物理マシン2Bは、受信した処理結果を、処理要求情報231Aを送信した仮想マシンが認識できる情報に再変換してから送信するものであってよい。これにより、移行した仮想マシン(移行した仮想マシンのアプリケーション)は、自マシンが送信した処理要求情報231Aと、第2の処理部21Bが実際に処理した処理要求情報231Bとが異なる場合であっても、第2の処理部21Bからの応答を認識することが可能になる。
[第1の実施の形態の詳細]
次に、第1の実施の形態の詳細について説明する。図12から図16は、第1の実施の形態における情報共有処理の詳細を説明するフローチャート図である。また、図17から図22は、第1の実施の形態における情報共有処理の詳細を説明する図である。図17から図22を参照しながら、図12から図16の情報共有処理の詳細を説明する。なお、以下、処理要求情報231Aは、第1の処理部21Aが仮想マシンの認証を行うための認証情報241Aと、第1の処理部21Aに具体的な処理を要求するための引数である引数情報242Aとを含むものとして説明する。同様に、処理要求情報231Bは、認証情報241Bと引数情報242Bとを含むものとして説明する。
[第1の物理マシンでの処理]
初めに、図12に示すように、物理マシン2Aの要求取得部213Aは、例えば、物理マシン2Aで動作する仮想マシンから第1の処理部21Aに対する処理要求情報231Aが送信されるまで待機する(S31のNO)。そして、物理マシン2Aで動作する仮想マシンから処理要求情報が送信された場合(S31のYES)、要求取得部213Aは、例えば、送信された処理要求情報をトラップする。すなわち、要求取得部213Aは、物理マシン2Aで動作する仮想マシンが送信した処理要求情報を全て受信する。これにより、要求変換部214Aは、要求取得部213Aが取得した処理要求情報の全てについて、変換が必要であるか否か(取得した処理要求情報が処理要求情報231Aであるか否か)を判定することが可能になる。
次に、物理マシン2Aの要求変換部214Aは、例えば、要求取得部213Aが取得した処理要求情報に含まれる認証情報が、情報格納領域230Aに記憶された変換情報233Aに存在するか否かを判定する(S32)。認証情報は、例えば、第1の処理部21A等が仮想マシンの認証を行うための情報である。具体的に、認証情報は、ユーザ名とパスワードとを含むものであってよい。そして、情報記憶部212Aは、第1の処理部21A等が仮想マシンの認証を行った場合、後述するように、その認証に用いた認証情報を変換情報233Aの一部として情報格納領域230Aに記憶する。そのため、要求変換部214Aは、要求取得部213Aが取得した認証情報が変換情報233Aに存在するか否かを判定することにより、その仮想マシンが第1の処理部21Aによって既に認証された仮想マシンであるか否かの判定を行うことが可能になる。
そして、要求取得部213Aが取得した処理要求情報に含まれる認証情報が変換情報233Aに存在する場合(S32のYES)、要求変換部214Aは、例えば、取得した認証情報が第1の処理部21Aに対応する認証情報241Aであるか否かを判定する(S33)。その結果、取得した認証情報が第1の処理部21Aに対応する認証情報241Aでない場合(S33のNO)、情報記憶部212Aは、例えば、取得した認証情報を変換情報233Aの一部として情報格納領域230Aに記憶する(S34)。すなわち、取得した認証情報が第1の処理部21Aに対応する認証情報241Aでない場合とは、第1の処理部21Aに処理要求を行う認証情報241Aと同じ内容である他の認証情報(他の物理マシンで動作する処理部の認証情報等)が変換情報233Aに存在した場合である。この場合、要求変換部214Aは、他の認証情報が変換情報233Aに存在することに基づき、取得した認証情報が第1の処理部21Aに対応する認証情報241Aであると判定する。これにより、要求変換部214Aは、利用者に認証情報241Aの入力を要求する頻度を抑えることが可能になる。
一方、要求取得部213Aが取得した処理要求情報に含まれる認証情報が変換情報233Aに存在しない場合(S32のNO)、情報要求部216Aは、例えば、第1の処理部21Aに対応する認証情報241Aの入力を要求する(S35)。その後、情報要求部216Aは、例えば、入力を要求した認証情報241Aの入力があるまで待機する(S36のNO)。そして、認証情報241Aの入力があった場合(S36のYES)、情報記憶部212Aは、入力された認証情報241Aを変換情報233Aの一部として情報格納領域230Aに記憶する(S37)。以下、変換情報233Aの具体例を説明する。
図17は、変換情報233Aの具体例である。図17に示す変換情報233Aは、各物理マシンで動作するモニタリングシステム等を識別する「処理名」と、変換情報233Aで管理する各情報を識別する「メタデータ」とを項目として有する。また、図17に示す変換情報233Aは、各処理部におけるメタデータに対応する情報を識別する「動作環境情報」と、動作環境情報毎に設定された認証情報である「認証情報」とを項目として有する。
具体的に、図17に示す変換情報233Aは、「処理名」として、「MON−A」、「MON−B」及び「MON−C」が設定されている。また、図17に示す変換情報233Aは、「メタデータ」として「ユーザ名」、「パスワード」及び「認証キー」が設定されている。認証キーについては後述する。そして、図17に示す変換情報233Aにおいて、「ユーザ名」に対応する「動作環境情報」として、「MON−A」には「User」が設定され、「MON−B」には「Login」が設定され、「MON−C」には「User」が設定されている。
なお、図17に示す「動作環境情報」に設定される情報は、要求取得部213Aが処理要求情報231Aを取得する前に、既に変換情報233Aに設定されているものとする。これにより、各物理マシンは、各処理部において要求される情報の名称等の違いに対応した形で、各処理部に処理要求を行うことが可能になる。具体的に、例えば、図17の「メタデータ」である「パスワード」は、「MON−A」及び「MON−C」では「Password」と表現されるのに対し、「MON−B」では「PWD」と表現される。図17のその他の情報については説明を省略する。
図18は、図17に示す状態の後、S34またはS37において、第1の処理部21Aに対応する認証情報241A(ユーザ名及びパスワード)を記憶した場合を示す変換情報233Aの例である。以下、S34における場合を例にして説明する。また、以下、第1の処理部21AとMON−Aとが対応するものとして説明を行う。
具体的に、図17に示す変換情報233Aには、MON−Aを実行するためのユーザ名及びパスワードに対応する情報が設定されていない(S32のNO)。そのため、情報記憶部212Aは、図18に示すように、入力された処理要求情報に含まれるユーザ名及びパスワードを設定する(S35、S36のYES、S37)。具体的に、図18に示す例において、情報記憶部212Aは、「処理名」が「MON−A」であって「メタデータ」が「ユーザ名」である情報に対応する「認証情報」に、入力されたユーザ名である「A531」を設定する。そして、情報記憶部212Aは、図18に示すように、「処理名」が「MON−A」であって「メタデータ」が「パスワード」である情報に対応する「認証情報」に、入力されたパスワードである「1234」を設定する。これにより、図18の状態の後、物理マシン2Aで動作する仮想マシンから再度処理要求情報231Aが送信された場合に、要求変換部214Aは、送信された処理要求情報231Aを設定する必要がなくなる。
なお、物理マシン2Aで動作する仮想マシンは、処理要求情報231Aに、図18等に示す動作環境情報を含める形で送信するものであってよい。具体的に、物理マシン2Aで動作する仮想マシンは、例えば、動作環境情報である「User」と認証情報である「A531」とを対応させ、動作環境情報である「Password」と認証情報である「1234」とを対応させた状態で処理要求情報231Aを送信する。これにより、要求変換部214Aは、S32において、要求取得部213Aが取得した処理要求情報に含まれる認証情報が、変換情報233Aに存在するか否かを判定することが可能になる。
図13に戻り、物理マシン2Aの認証要求部217Aは、例えば、第1の処理部21Aに対応する認証キーが変換情報233Aに含まれているか否かを判定する(S41)。認証キーは、例えば、物理マシン2Aで動作する仮想マシンが第1の処理部21Aに送信したユーザ名及びパスワードに基づき、第1の処理部21Aが仮想マシンに対して払い出す情報である。
そして、第1の処理部21Aに対応する認証キーが変換情報233Aに存在しない場合(S41のNO)、物理マシン2Aの認証要求部217Aは、例えば、変換情報233Aに含まれるユーザ名及びパスワードを第1の処理部21Aに送信して、第1の処理部21Aに対して認証要求を行う(S42)。そして、物理マシン2Aの認証取得部218Aは、例えば、第1の処理が認証キーを送信するまで待機する(S43のNO)。その後、認証取得部218Aが認証キーを取得した場合(S43のYES)、情報記憶部212Aは、例えば、取得した認証キーを変換情報233Aと対応させて記憶部230Aに記憶する(S44)。一方、第1の処理部21Aに対応する認証キーが変換情報233Aに存在する場合(S41のYES)、認証要求部217Aは、認証キーの取得等の処理を行わない。これにより、認証取得部218Aは、認証要求部217Aによる認証が完了した際に、認証キーを取得することが可能になる。
図19は、図18に示す状態の後、MON−Aに対応する認証キーを記憶した場合(S44)を示す変換情報233Aの例である。具体的に、情報記憶部212Aは、図19に示すように、「処理名」が「MON−A」であって「メタデータ」が「認証キー」である情報に対応する「認証情報」に、認証取得部218Aが取得した認証キーである「2b3kkdzi7」を設定する。
図13に戻り、S44の後、またはS33のYESの場合において、要求変換部214Aは、例えば、第1の処理部21Aに対応する認証キーを情報格納領域230Aから取得する(S45)。また、要求変換部214Aは、例えば、引数変換情報234Aを参照して、要求取得部213Aが取得した処理要求情報に含まれる引数情報に対応する引数情報242Aを取得する(S46)。すなわち、要求変換部214Aは、要求取得部213Aが取得した処理要求情報に含まれる認証情報の変換のみでなく、仮想マシンが行った処理要求を第1の処理部21Aが実行できるように引数情報の変換を行う。
図20は、引数変換情報234Aの具体例を説明する図である。図20に示す引数変換情報234Aは、図18で説明した「処理名」と、図18で説明した「メタデータ」と、引数情報242Aが設定される「引数情報」とを項目として有している。図20の例における「メタデータ」には、各仮想マシンのCPUの使用情報を取得する「CPU使用情報取得コマンド」と、各仮想マシンのメモリの使用情報を取得する「メモリ使用情報取得コマンド」とが設定される。具体的に、図20に示す引数変換情報234Aにおいて、「処理名」が「MON−A」であって「メタデータ」が「CPU使用情報取得コマンド」である情報に対応する「引数情報」には、「AAA」が設定されている。図20のその他の情報については説明を省略する。
さらに、要求送信部215Aは、S45において要求変換部214Aが取得した認証キーと、S46において要求変換部214Aが取得した引数情報242Aを送信する(S47)。すなわち、要求送信部215Aは、第1の処理部21Aに引数情報242Aを送信する際に、認証キーを併せて送信する。これにより、要求送信部215Aは、引数情報242Aを送信する毎に、ユーザ名及びパスワードを送信する必要がなくなる。そして、この場合、第1の処理部21Aは、引数情報242Aを受信する毎に、ユーザ名及びパスワードによる認証処理を行う必要がなくなるため、処理負担を軽減することが可能になる。
[第1の物理マシンから第2の物理マシンに仮想マシンが移行した場合の処理]
次に、物理マシン2Aで動作する仮想マシンが物理マシン2Bに移行する場合の処理を説明する。初めに、物理マシン2Bの情報記憶部212Bは、図14に示すように、例えば、物理マシン2Bへの仮想マシンの移行が行われるまで待機する(S51のNO)。そして、物理マシン2Aで動作する仮想マシンが物理マシン2Bに移行する場合(S51のYES)、物理マシン2Bは、物理マシン2Aの記憶部230Aに記憶された変換情報233Aを取得して記憶する(S52)。すなわち、情報記憶部212Bは、図12のS34、S37及び図13のS44において、情報記憶部212Aが蓄積して記憶した情報である変換情報233Aを取得する。これにより、情報記憶部212Bは、移行した仮想マシンが過去に動作したそれぞれの物理マシンに対応する変換情報を取得することが可能になる。
その後、図15に示すように、物理マシン2Bの要求取得部213Bは、物理マシン2Aの場合と同様に、例えば、物理マシン2Bで動作する仮想マシンから第2の処理部21Bに対する処理要求情報が送信されるまで待機する(S61のNO)。そして、物理マシン2Aから物理マシン2Bに移行した仮想マシンから処理要求情報231Aが送信された場合(S61のYES)、要求取得部213Bは、例えば、送信された処理要求情報231Aをトラップする。
次に、物理マシン2Bの要求変換部214Bは、例えば、要求取得部213Bが取得した処理要求情報231Aに含まれる認証情報241Aが、情報格納領域230Bに記憶された変換情報233Bに存在するか否かを判定する(S62)。そして、認証情報241Aが変換情報233Bに存在する場合(S62のYES)、要求変換部214Bは、物理マシン2Aの場合と同様に、例えば、取得した認証情報241Aが第2の処理部21Bに対応する認証情報241Bであるか否かを判定する(S63)。その結果、取得した認証情報241Aが第2の処理部21Bに対応する認証情報でない場合(S63のNO)、情報記憶部212Bは、例えば、取得した認証情報241Bを変換情報233Bの一部として記憶する(S64)。
一方、要求取得部213Bが取得した処理要求情報231Aに含まれる認証情報241Aが変換情報233Bに存在していない場合(S62のNO)、情報要求部216Bは、物理マシン2Aの場合と同様に、例えば、該当する認証情報241Bの入力を要求する(S65)。その後、情報要求部216Bは、例えば、要求した認証情報241Bの入力があるまで待機する(S66のNO)。そして、認証情報241Bの入力があった場合(S66のYES)、情報記憶部212Bは、入力された認証情報241Bを変換情報233Bの一部として情報格納領域230Bに記憶する(S67)。以下、変換情報233Bの具体例を説明する。
図21は、図19に示す状態の後、S64またはS67において、第2の処理部21Bに対応するユーザ名及びパスワードに対応する情報を記憶した場合を示す変換情報233Bの例である。以下、S64における場合を例にして説明する。また、以下、第2の処理部21BとMON−Bとが対応するものとして説明を行う。
具体的に、図19に示す変換情報233Bにおいて、MON−Bを実行するためのユーザ名及びパスワードに対応する情報が設定されていない(S62のNO)。そのため、情報記憶部212Bは、図21に示すように、要求取得部213Bが取得した処理要求情報231Bに含まれるユーザ名及びパスワードを設定する(S64)。具体的に、図21に示す例において、情報記憶部212Bは、「処理名」が「MON−B」であって「メタデータ」が「ユーザ名」である情報に対応する「認証情報」に、入力されたユーザ名である「142_A3」を設定する。そして、情報記憶部212Bは、図21に示すように、「処理名」が「MON−B」であって「メタデータ」が「パスワード」である情報に対応する「認証情報」に、入力されたパスワードである「24dfek」を設定する。すなわち、情報記憶部212Bは、情報記憶部212Bが取得した変換情報233Aを更新する形で情報の記憶を行う。これにより、情報記憶部212Bは、移行した仮想マシンが動作していた物理マシンの違いを意識することなく情報の蓄積を行うことが可能になる。
図16に戻り、物理マシン2Bの認証要求部217Bは、物理マシン2Aの場合と同様に、例えば、第2の処理部21Bに対応する認証キーが変換情報233Bに含まれているか否かを判定する(S71)。そして、第2の処理部21Bに対応する認証キーが変換情報233Bに存在しない場合(S71のNO)、物理マシン2Bの認証要求部217Bは、例えば、変換情報233Bに含まれるユーザ名及びパスワードを第2の処理部21Bに送信して、第2の処理部21Bに対して認証要求を行う(S72)。その後、物理マシン2Bの認証取得部218Bは、第1の処理部21Aが認証キーを送信するまで待機する(S73のNO)。そして、認証取得部218Bが認証キーを取得した場合(S73のYES)、情報記憶部212Bは、例えば、取得した認証キーを変換情報233Bと対応させて情報格納領域230Bに記憶する(S74)。一方、第2の処理部21Bに対応する認証キーが変換情報233Bに存在する場合(S71のYES)、認証要求部217Bは、認証キーの取得等の処理を行わない。
図22は、図21に示す状態の後、MON−Bに対応する認証キーを記憶した場合(S74)を示す変換情報233Bの例である。この場合、情報記憶部212Bは、図22に示すように、「処理名」が「MON−B」であって「メタデータ」が「認証キー」である情報に対応する「認証情報」に、認証取得部218Bが取得した認証キーである「G49vk3xE」を設定する。
図16に戻り、S74の後、またはS63のYESの場合において、要求変換部214Bは、例えば、第2の処理部21Bに対応する認証キーを情報格納領域230Bから取得する(S75)。また、要求変換部214Bは、例えば、引数変換情報234Bを参照して、S71で受信した処理要求情報231Aに含まれる引数情報242Aを、第2の処理部21Bが処理することができる引数情報242Bに変換する(S76)。
具体的に、図20の例において、物理マシン2Aから移行した仮想マシンから送信された処理要求情報231Aに含まれる引数情報が「DDD」である場合、要求変換部214Bは、引数変換情報234Bを参照する。そして、要求変換部214Bは、「処理名」が「MON−B」である情報であって、「引数情報」である「DDD」に対応する情報である「FFF」を取得する。
そして、要求送信部215Bは、S75において要求変換部214Bが取得した認証キーと、S46において要求変換部214Bが変換した引数情報242Bを送信する(S77)。
すなわち、本実施の形態における物理マシンは、物理マシン内の処理部に処理要求情報を送信される毎に、その処理要求情報を変換情報に蓄積していく。そして、その物理マシンで動作する仮想マシンが他の物理マシンに移行する場合、例えば、処理要求情報を蓄積した変換情報を移行先の物理マシンに送信する。これにより、移行先の物理マシンは、移行先の物理マシンで動作する仮想マシンから新たな処理要求情報が送信された場合に、移行元の物理マシンから受信した変換情報を更新する形で新たな処理要求情報を蓄積することが可能になる。そして、物理マシンは、変換情報を参照して処理要求情報の変換を行うことにより、利用者に処理要求情報の入力を要求する頻度を抑制することが可能になる。そのため、物理マシンは、サービスの中断が発生する頻度を抑制させることが可能になる。
以上の実施の形態をまとめると、以下の付記のとおりである。
(付記1)
コンピュータに、
第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し前記第1の物理マシンの動作環境に関する第1の動作環境情報と、第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を前記第2の物理マシンに保持させる、
ことを実行させることを特徴とする情報共有プログラム。
(付記2)
付記1において、
前記変換情報を保持させる処理の後、前記移行した後の仮想マシンが前記第1の処理要求情報を送信して前記第2の処理部に処理要求を行う場合、前記記憶した変換情報を参照し、前記第1の処理要求情報に対応する前記第1の動作環境情報と同じ内容の前記第2の動作環境情報に対応する前記第2の処理要求情報が前記変換情報に存在する場合、前記仮想マシンに、前記第2の処理部への処理要求に対応する第1の処理要求情報を前記存在した第2の処理要求情報に変換して前記第2の処理部に送信させ、前記第1の処理要求情報に対応する前記第1の動作環境情報と同じ内容の前記第2の動作環境情報に対応する前記第2の処理要求情報が前記変換情報に存在しない場合、前記仮想マシンに、前記存在しなかった第2の処理要求情報の入力があった後に、該入力があった第2の処理要求情報を前記第2の処理部に送信させる、
ことをコンピュータに実行させることを特徴とする情報共有プログラム。
(付記3)
付記1において、
前記変換情報を保持させる処理では、前記第1の物理マシンが前記第2の物理マシンに前記変換情報を送信する、
ことを特徴とする情報共有プログラム。
(付記4)
付記2において、
前記処理要求を送信させる処理では、前記存在しなかった第2の処理要求情報の入力があった場合、該入力があった第2の処理要求情報を前記第2の処理部に送信させるとともに、前記入力があった第2の処理要求情報を前記保持した変換情報と対応付けて記憶部に記憶する、
ことを特徴とする情報共有プログラム。
(付記5)
付記1において、
前記処理要求を送信させる工程の後、前記第2の処理部に送信させた第2の処理要求情報に対する応答があった場合、前記変換情報を参照し、前記応答を前記仮想マシンが認識できる情報に再変換して前記仮想マシンに送信させる、
ことを特徴とする情報共有プログラム。
(付記6)
付記1において、
前記第1及び第2の処理要求情報は、前記第1の処理部または前記第2の処理部が前記仮想マシンの認証を行うための認証情報を含む、
ことを特徴とする情報共有プログラム。
(付記7)
付記1において、
前記第1の動作環境情報は、前記第1の物理マシンが前記第1の処理要求情報の種別を識別可能な情報であり、
前記第2の動作環境情報は、前記第2の物理マシンが前記第2の処理要求情報の種別を識別可能な情報である、
ことを特徴とする情報共有プログラム。
(付記8)
第1の物理マシンと、該第1の物理マシンとアクセス可能な第2の物理マシンとを有する情報共有システムであって、
第1の物理マシンは、該第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し、前記第1の物理マシンの動作環境に関する第1の動作環境情報と、第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し、前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第2の物理マシンは、前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
ことを特徴とする情報共有システム。
(付記9)
第1の物理マシンは、該第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し前記第1の物理マシンの動作環境に関する第1の動作環境情報と、第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
前記第2の物理マシンは、前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
ことを特徴とする情報共有方法。
1:管理サーバ 2:物理マシン
3:仮想マシン 4:仮想化ソフトウエア
5:利用者端末

Claims (5)

  1. 第1の物理マシンとアクセス可能な第2の物理マシンに実行させる情報共有プログラムであって、
    前記第2の物理マシンに、
    前記第1の物理マシンからの仮想マシンの移行に応じて、前記第1の物理マシンの記憶部に記憶された、前記第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し前記第1の物理マシンの動作環境に関する第1の動作環境情報と、前記第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を取得し、
    記仮想マシンの移行が完了するまでに、取得した前記変換情報を前記第2の物理マシンの記憶部に記憶する
    ことを実行させることを特徴とする情報共有プログラム。
  2. 請求項1において、
    前記変換情報を記憶する処理の後、前記移行した後の仮想マシンが前記第1の処理要求情報を送信して前記第2の処理部に処理要求を行う場合、前記記憶した変換情報を参照し、前記第1の処理要求情報に対応する前記第1の動作環境情報と同じ内容の前記第2の動作環境情報に対応する前記第2の処理要求情報が前記変換情報に存在する場合、前記仮想マシンに、前記第2の処理部への処理要求に対応する第1の処理要求情報を前記存在した第2の処理要求情報に変換して前記第2の処理部に送信させ、前記第1の処理要求情報に対応する前記第1の動作環境情報と同じ内容の前記第2の動作環境情報に対応する前記第2の処理要求情報が前記変換情報に存在しない場合、前記仮想マシンに、前記存在しなかった第2の処理要求情報の入力があった後に、該入力があった第2の処理要求情報を前記第2の処理部に送信させる、
    ことをコンピュータに実行させることを特徴とする情報共有プログラム。
  3. 請求項2において、
    前記処理要求を送信させる処理では、前記存在しなかった第2の処理要求情報の入力があった場合、該入力があった第2の処理要求情報を前記第2の処理部に送信させるとともに、前記入力があった第2の処理要求情報を前記保持した変換情報と対応付けて記憶部に記憶する、
    ことを特徴とする情報共有プログラム。
  4. 第1の物理マシンと、該第1の物理マシンとアクセス可能な第2の物理マシンとを有する情報共有システムであって、
    第1の物理マシンは、該第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し、前記第1の物理マシンの動作環境に関する第1の動作環境情報と、第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し、前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
    前記第2の物理マシンは、前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記仮想マシンの移行が完了するまでに前記変換情報を保持する、
    ことを特徴とする情報共有システム。
  5. コンピュータである第1の物理マシンは、該第1の物理マシンで動作する第1の処理部に処理要求を行うための第1の処理要求情報と、該第1の処理要求情報に対応し前記第1の物理マシンの動作環境に関する第1の動作環境情報と、コンピュータである第2の物理マシンで動作する第2の処理部に処理要求を行うための第2の処理要求情報に対応し前記第2の物理マシンの動作環境に関する第2の動作環境情報とを含む変換情報を記憶部に記憶し、
    前記第2の物理マシンは、前記第1の物理マシンから前記第2の物理マシンへの仮想マシンの移行に応じて、前記第1の物理マシンの記憶部に記憶された前記変換情報を取得し、
    記仮想マシンの移行が完了するまでに、取得した前記変換情報を記憶部に記憶する、
    ことを特徴とする情報共有方法。
JP2014203560A 2014-10-02 2014-10-02 情報共有プログラム、情報共有システム及び情報共有方法 Active JP6398559B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014203560A JP6398559B2 (ja) 2014-10-02 2014-10-02 情報共有プログラム、情報共有システム及び情報共有方法
US14/840,544 US9836319B2 (en) 2014-10-02 2015-08-31 Information sharing program, information sharing system and information sharing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014203560A JP6398559B2 (ja) 2014-10-02 2014-10-02 情報共有プログラム、情報共有システム及び情報共有方法

Publications (2)

Publication Number Publication Date
JP2016071810A JP2016071810A (ja) 2016-05-09
JP6398559B2 true JP6398559B2 (ja) 2018-10-03

Family

ID=55632882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014203560A Active JP6398559B2 (ja) 2014-10-02 2014-10-02 情報共有プログラム、情報共有システム及び情報共有方法

Country Status (2)

Country Link
US (1) US9836319B2 (ja)
JP (1) JP6398559B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0825506B1 (en) * 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
JP3369445B2 (ja) * 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
JP4130713B2 (ja) 1998-10-21 2008-08-06 松下電器産業株式会社 プログラム変換装置
US20040088397A1 (en) 2002-11-05 2004-05-06 Sidley Austin Brown & Wood Llp. System and method for management of software applications
US8381209B2 (en) * 2007-01-03 2013-02-19 International Business Machines Corporation Moveable access control list (ACL) mechanisms for hypervisors and virtual machines and virtual port firewalls
JP5427574B2 (ja) * 2009-12-02 2014-02-26 株式会社日立製作所 仮想計算機の移動管理方法、前記移動管理方法を用いた計算機、前記移動管理方法を用いた仮想化機構および前記移動管理方法を用いた計算機システム
JP5643990B2 (ja) * 2011-07-29 2014-12-24 株式会社日立製作所 ネットワーク装置及びネットワークシステム
JP2013225233A (ja) * 2012-04-23 2013-10-31 Panasonic Corp 仮想計算機システム、仮想計算機システムにおけるユーザ認証方法、プログラム、および集積回路
US9729517B2 (en) * 2013-01-22 2017-08-08 Amazon Technologies, Inc. Secure virtual machine migration
JP6024474B2 (ja) * 2013-01-23 2016-11-16 富士通株式会社 マルチテナントシステム、管理装置、管理プログラム、およびマルチテナントシステムの制御方法

Also Published As

Publication number Publication date
US20160098290A1 (en) 2016-04-07
JP2016071810A (ja) 2016-05-09
US9836319B2 (en) 2017-12-05

Similar Documents

Publication Publication Date Title
JP7197612B2 (ja) オンデマンドネットワークコード実行システム上での補助機能の実行
JP6614340B2 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
KR102391806B1 (ko) 상이한 분산 네트워크 사이에서 서비스를 소비하는 통합형 api 및 ui 제공 기법
US11070625B2 (en) Server connection capacity management
US8850432B2 (en) Controlling utilization in a multi-tenant platform-as-a-service (PaaS) environment in a cloud computing system
WO2016117694A1 (ja) ネットワーク機能仮想化管理およびオーケストレーション方法と装置とプログラム
JP5708937B2 (ja) 構成情報管理システム、構成情報管理方法、及び構成情報管理用プログラム
JP6729399B2 (ja) システム、仮想化制御装置、仮想化制御装置の制御方法及びプログラム
RU2568282C2 (ru) Система и способ обеспечения отказоустойчивости антивирусной защиты, реализуемой в виртуальной среде
JP6293306B2 (ja) クラウドアプリケーション処理方法、クラウドアプリケーションデプロイメント方法、並びに関係する装置及びシステム
JP2017504109A (ja) 仮想ネットワークインターフェースカードの割込みの親和性結合のための方法、およびコンピュータデバイス
JP2010218049A (ja) 情報処理装置、情報処理方法及びプログラム
KR20160136489A (ko) 클라우드 서비스를 위한 가상화 기반 자원 관리 방법
JP2016018298A (ja) 通知変換プログラム及び通知変換方法
CN116848528A (zh) 用于自动配置用于容器应用的最小云服务访问权限的技术
CA2929825C (en) Method of and system for managing a federation of cloud computing resources
WO2018131556A1 (ja) リソース設定制御装置、リソース設定制御システム、リソース設定制御方法、および、コンピュータ読み取り可能記録媒体
JP6801776B2 (ja) 仮想ネットワーク機能管理装置、仮想インフラストラクチャ管理装置、及び仮想ネットワーク機能構築方法
EP3387816B1 (en) Connecting and retrieving security tokens based on context
WO2021254214A1 (zh) 安卓应用程序迁移的方法和装置
CN114296953A (zh) 一种多云异构***及任务处理方法
JP6398559B2 (ja) 情報共有プログラム、情報共有システム及び情報共有方法
JP6205013B1 (ja) アプリケーション利用システム
CN115827148A (zh) 一种资源管理方法、装置、电子设备及存储介质
US20160170915A1 (en) Universal secure platform virtualization system and method thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180327

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180410

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180807

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180820

R150 Certificate of patent or registration of utility model

Ref document number: 6398559

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150