JP2017058997A - 仮想マシン管理システム、仮想マシン管理方法及びプログラム - Google Patents

仮想マシン管理システム、仮想マシン管理方法及びプログラム Download PDF

Info

Publication number
JP2017058997A
JP2017058997A JP2015183660A JP2015183660A JP2017058997A JP 2017058997 A JP2017058997 A JP 2017058997A JP 2015183660 A JP2015183660 A JP 2015183660A JP 2015183660 A JP2015183660 A JP 2015183660A JP 2017058997 A JP2017058997 A JP 2017058997A
Authority
JP
Japan
Prior art keywords
virtual machine
fault tolerant
tolerant function
service
management system
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.)
Granted
Application number
JP2015183660A
Other languages
English (en)
Other versions
JP6582785B2 (ja
Inventor
宮島 弘明
Hiroaki Miyajima
弘明 宮島
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2015183660A priority Critical patent/JP6582785B2/ja
Publication of JP2017058997A publication Critical patent/JP2017058997A/ja
Application granted granted Critical
Publication of JP6582785B2 publication Critical patent/JP6582785B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)

Abstract

【課題】フォールトトレラント機能に起因する仮想マシンの動作への影響が小さい仮想マシン管理システム等を提供する。【解決手段】仮想マシン管理システム100は、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、フォールトトレラント機能の状態に関する条件を保持するサービス管理表111と、サービスの少なくとも一つが条件を満たすか否かに基づいて、仮想マシンのフォールトトレラント機能の状態を制御する制御部110とを備える。【選択図】 図2

Description

本発明は、仮想マシン管理システム、仮想マシン管理方法及びプログラムに関する。
システムの可用性や信頼性を高めるために、様々な技術が開発されている。仮想マシンにおいては、可用性を高めることを目的の一つとして、フォールトトレラント(Fault Torelant:以下「FT」と称する場合がある)機能と呼ばれる技術が用いられつつある。フォールトトレラント機能により、例えば、仮想マシンを実行するホストに障害が生じた場合に、予め用意された他のホストに当該仮想マシンの処理が引き継がれて当該仮想マシンの処理が継続する。フォールトトレラント機能の一例が、非特許文献1に記載されている。
特許文献1には、特別なハードウェアを使用せずに、簡便、高速に系の切り替えが可能な低消費電力のフォールトトレラント計算機システム等が記載されている。
特許文献2には、仮想マシンのマイグレーション先を決定する方法が記載されている。特許文献2に記載の技術では、システム全体の最適化のためのマイグレーションポリシーだけでなく、アプリケーションに依存するマイグレーションポリシーをユーザが定義できる。そして、特許文献2に記載の技術では、両ポリシーを考慮しながら、アプリケーションが稼働する仮想マシンを稼働させたまま、他のサーバに移動することを制御する。
特開2012−221321号公報 特開2009−116852号公報
Brendan Cully, Geoffrey Lefebvre, Dutch Meyer, Mike Feeley, Norm Hutchinson, and Andrew Warfield. 2008. Remus: high availability via asynchronous virtual machine replication. In Proceedings of the 5th USENIX Symposium on Networked Systems Design and Implementation (NSDI'08), Jon Crowcroft and Mike Dahlin (Eds.). USENIX Association, Berkeley, CA, USA, 161-174.
フォールトトレラント機能を備える仮想マシンにおいては、フォールトトレラント機能に関連して、負荷の大きな処理が行われる場合がある。そのため、フォールトトレラント機能は、当該仮想マシンによって実行されるサービスの外部への提供等、仮想マシンの動作に影響を及ぼす可能性がある。しかしながら、各特許文献等に記載の技術では、フォールトトレラント機能に起因する仮想マシンの動作への影響を軽減することが困難である。
本発明は、上記課題を解決するためになされたものであって、フォールトトレラント機能に起因する仮想マシンの動作への影響が小さい仮想マシン管理システム等を提供することを主たる目的とする。
本発明の一態様における仮想マシン管理システムは、 仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、前記フォールトトレラント機能の状態に関する条件を保持するサービス管理表と、
前記条件に基づいて、前記仮想マシンの前記フォールトトレラント機能の状態を制御する制御手段とを備える、仮想マシン管理システム。


また、本発明の一態様における仮想マシン管理方法は、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々に対するフォールトトレラント機能を有効にすべき条件に基づいて、サービスの少なくとも一つが条件を満たすか否かを判定し、判定の結果に基づいて、仮想マシンのフォールトトレラント機能に関する状態を変更するように制御する。
また、本発明の一態様におけるプログラムは、コンピュータに、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々に対するフォールトトレラント機能を有効にすべき条件に基づいて、前記サービスの少なくとも一つが前記条件を満たすか否かを判定する処理と、判定の結果に基づいて、仮想マシンのフォールトトレラント機能に関する状態を変更するように制御する処理とを実行させる。
本発明によると、フォールトトレラント機能に起因する仮想マシンの動作への影響が小さい仮想マシン管理システム等を提供することができる。
本発明の各実施形態の前提となる仮想マシンの構成等を示す図である。 本発明の第1の実施形態における仮想マシン管理システムの構成を示す図である。 本発明の第1の実施形態における仮想マシン管理システムの動作を示すフローチャートである。 本発明の第1の実施形態における仮想マシン管理システムの動作の変形例を示すフローチャートである。 本発明の第2の実施形態における仮想マシン管理システムの構成を示す図である。 本発明の各実施形態における仮想マシン管理システム等を実現する情報処理装置の一構成例を示す図である。
本発明の各実施形態について、添付の図面を参照して説明する。なお、本発明の各実施形態において、各システムの各構成要素は、機能単位のブロックを示している。各システムの各構成要素は、例えば図6に示すような情報処理装置500とプログラムとの任意の組み合わせにより実現される。情報処理装置500は、一例として、以下のような構成を含む。
・CPU(Central Processing Unit)501
・ROM(Read Only Memory)502
・RAM(Ramdom Access Memory)503
・RAM503にロードされるプログラム504
・プログラム504を格納する記憶装置505
・記録媒体506の読み書きを行うドライブ装置507
・通信ネットワーク509と接続する通信インターフェース508
・データの入出力を行う入出力インターフェース510
・各構成要素を接続するバス511
各実施形態における各システムの各構成要素は、これらの機能を実現するプログラム504をCPU501が取得して実行することで実現される。各装置の各構成要素の機能を実現するプログラム504は、例えば、予め記憶装置505やRAM503に格納されており、必要に応じてCPU501が読み出す。なお、プログラム504は、通信ネットワーク509を介してCPU501に供給されてもよいし、予め記録媒体506に格納されており、ドライブ装置507が当該プログラムを読み出してCPU501に供給してもよい。また、各装置の実現方法には、様々な変形例がある。例えば、各実施形態における各システムは、情報処理装置500とは異なる回路等を含む様々なハードウェアとプログラムとの任意の組み合わせにより実現され得る。
本発明の各実施形態に関する説明に先立って、各実施形態の前提となる仮想マシンにおけるフォールトトレラント機能やその動作を説明する。図1は、各実施形態の前提となる仮想マシン等の構成を示す図である。
フォールトトレラント機能は、仮想マシンを実行するハードウェア等に障害が生じた場合等に、当該仮想マシンが行っていた処理を他のハードウェア等にて実行される他の仮想マシンが継続して行う機能である。本発明の各実施形態においては、フォールトトレラント機能を実現する動作の一つとして、次のような動作が想定される。
まず、チェックポイントと呼ばれる一定間隔のタイミング毎等に、待機中の仮想マシンに稼働中の仮想マシンの状態が他のハードウェア等にて実行される他の仮想マシンに保存される。そして、稼働中の仮想マシンを実行するハードウェア等に障害が発生した場合には、待機中の仮想マシンは、保存された情報を用いて、稼働中の仮想マシンが実行していた処理を引き継いで実行する。一般的なフォールトトレラント機能においては、処理の引き継ぎの際には、仮想マシンの実行がそのまま継続される。このようなフォールトトレラント機能を用いることで、仮想マシンの可用性を高めることが可能となる。
なお、以降においては、チェックポイントにおいて仮想マシンの状態が保存され、障害が発生した際に他の仮想マシンによる処理の引き継ぎが可能な状態を、フォールトトレラント機能が有効であると称する。また、仮想マシンの状態の保存が行われず、障害が発生した際に他の仮想マシンによる処理の引き継ぎが行われない状態を、フォールトトレラント機能が無効であると称する。
フォールトトレラント機能を実現する動作の一例は、具体的には以下のようになる。図1に示す例においては、ホスト10−1及び10−2が通信ネットワーク50を介して接続されている。ホスト10−1及び10−2は、例えば上述した図6に示す情報処理装置500であるが、これに限られない。また、通信ネットワーク50は、ホスト10−1と10−2との間でデータの転送を可能にする任意の構成のネットワークである。
ホスト10−1及び10−2においては、仮想マシン管理システム100−1及び100−2がそれぞれ実行されている。仮想マシン管理システム100−1及び100−2は、ホスト10−1又は10−2のそれぞれにおいて仮想マシンを実現する一般的なシステムである。仮想マシン管理システム100−1及び100−2は、VMM(Virtual Machine Management)、又はハイパーバイザ(Hypervisor)とも呼ばれる。仮想マシン管理システム100−1及び100−2は、一般的なフォールトトレラント機能の実行に必要となる構成を備える。
仮想マシン20又は40は、それぞれ、仮想化された計算機システムである。仮想マシン20は、仮想マシン管理システム100−1にて実行される。また、仮想マシン40は、仮想マシン管理システム100−2にて実行される。仮想マシン20又は40は、それぞれゲスト物理メモリ21又は41を備える。ゲスト物理メモリ21又は41は、それぞれ仮想マシン20又は40の物理メモリとして機能する。それぞれゲスト物理メモリ21又は41のそれぞれは、ホスト10−1又は10−2が備える物理的なメモリ等を用いて実現される。
図1に示す例では、仮想マシン20は稼働しており、仮想マシン20においてゲストOS(Operating System)30が動作する。また、仮想マシン40は待機しており、ゲストOS30の動作を引き継ぐことが可能である。すなわち、仮想マシン40は、仮想マシン20においてゲストOS30が正常に動作している場合には、特段の動作を行わない。そして、ホスト10−1又は仮想マシン管理システム100−1の少なくとも一方に問題が生じた場合には、仮想マシン40は動作を開始する。この場合には、ゲストOS30は、仮想マシン管理システム100−2が備えるフォールトトレラント機能により、仮想マシン40に動作が引き継がれる。そして、ゲストOS30は、仮想マシン40にて継続して動作する。
フォールトトレラント機能を有効とするために、仮想マシン管理システム100−1及び100−2は、仮想マシン20の状態を保存する。仮想マシン管理システム100−1は、仮想マシン20の状態を、上述したチェックポイントと呼ばれるタイミングで仮想マシン管理システム100−2を介して仮想マシン40に保存する。チェックポイントは、例えば一定の間隔で設定される。上述したチェックポイントの間隔は、仮想マシン20にて実行されるサービスの種類等に応じて適宜定められる。仮想マシン管理システム100−1は、仮想マシン20の状態の保存に際して、仮想マシン20の動作を一時的に停止してその状態を保存する。
仮想マシン管理システム100−1は、仮想マシン20の状態として、例えば、仮想マシン20が備えるゲスト物理メモリ21の内容を仮想マシン40のゲスト物理メモリ41に保存する。仮想マシン20の状態として、仮想マシン20が仮想的に備えるCPUの状態や、仮想マシン20が仮想的に備える記憶装置の内容等が保存されてもよい。仮想マシン20の状態としてゲスト物理メモリ21の内容が保存される場合、仮想マシン管理システム100−1は、直近のチェックポイントにて仮想マシン20の状態が保存された後に更新されたゲスト物理メモリ21の内容を保存する。すなわち、直近のチェックポイントにて仮想マシン20の状態が保存された後に書き込みが行われたメモリ21の領域が、次のチェックポイントにおいて保存の対象となる。
一般に、仮想マシン20又は40においては、ゲスト物理メモリ21又は41のそれぞれの内容は、ページと呼ばれる一定の単位にて管理される。したがって、ゲスト物理メモリ21において、書き込みが行われたか否かの判定は、ページ単位で行われる。また、仮想マシン管理システム100−1は、ページ単位でゲスト物理メモリ21の内容を保存する。書き込みが行われ、次のチェックポイントにおいて保存の対象となるページは、ダーティページと呼ばれる。
図1に示す例では、ゲスト物理メモリ21として囲われる領域に含まれる複数の四角形状の図形は、ゲスト物理メモリ21におけるページの各々を表す。図1に示す例では、当該図形のうち、黒色で塗られた図形の各々は、ダーティページを表す。また、転送バッファ121として囲われる領域に含まれる複数の四角形状の図形は、チェックポイントにおいて保存の対象となるダーティページを表す。
上述のように、フォールトトレラント機能が有効であり、仮想マシン20の状態の保存が行われる場合、仮想マシン20は動作を一時的に停止する。仮想マシン20の動作は、仮想マシン20の状態の仮想マシン40への保存が完了した後に再開される。すなわち、仮想マシン20の動作は、仮想マシン20の状態が仮想マシン40に保存されるまで保留される。仮想マシン20の状態を仮想マシン40がゲスト物理メモリ41へ保存する際には、ホスト10−1からホスト10−2への仮想マシン20の状態に関するデータの転送が必要となる。これに対して、ホスト10−1が備えるメモリにおけるデータのコピーは、ホスト10−1からホスト10−2へのデータの転送と比較して高速に実行される。
そこで、仮想マシン20の動作が一時的に停止する期間を短くするために、仮想マシン管理システム100−1は、仮想マシン20の状態を最初に転送バッファ121に保存する。転送バッファ121は、後述のように、例えば仮想マシン管理システム100−1が備えるメモリである。仮想マシン20の状態が転送バッファ121に保存に保存されると、仮想マシン20は、動作を再開する。仮想マシン20の動作の再開と併せて、仮想マシン管理システム100−1は、転送バッファ121に保存された仮想マシン20の状態を仮想マシン40のゲスト物理メモリ41へ保存する。このようにすることで、仮想マシン20の動作が一時的に停止する期間は、仮想マシン20の状態がゲスト物理メモリ41へ直接に転送されてゲスト物理メモリ41に保存される場合と比較して短い期間となる。なお、同じページが繰り返しダーティページとなる場合は、仮想マシン管理システム100−1は、当該ダーティページに関して、その時点における内容と直近のチェックポイントにおける内容との差分を仮想マシン40へ転送してもよい。
また、上述のように仮想マシン20の状態が保存される場合には、仮想マシン20から外部への通信は、仮想マシン20の状態の仮想マシン40への保存が完了するまで保留される。すなわち、直近のチェックポイントにて仮想マシン20の状態が保存された後に生じた後に生じた外部への通信は、次のチェックポイントにおいて仮想マシン20の状態が保存されるまで外部へ送信されずに保留される。保留された通信は、仮想マシン20の状態の仮想マシン40への保存が完了した後に実際に実行される。
この動作は、下記の理由に基づく。ホスト10等に障害などが発生し、仮想マシン20の処理が仮想マシン40へ引き継がれた場合には、直近のチェックポイントにて保存された仮想マシン20の状態が仮想マシン40へ引き継がれる。したがって、直近のチェックポイントにて仮想マシン20の状態が保存された後に仮想マシン20にて通信が行われると、その後に仮想マシン40へ引き継がれた場合に、通信が重複して行われる可能性が生じる。そして、仮想マシン20にて行われた通信と仮想マシン40にて行われた通信との間で矛盾が発生する可能性が存在する。このことから、上述のような通信の保留が行われる。
ところで、仮想マシン20の状態が保存される場合においては、ダーティページの数に応じて、仮想マシン20が一時的に停止する期間が長くなる場合がある。また、仮想マシン20にて実行され、何らかのサービスを提供するプログラムは、仮想マシン20のゲスト物理メモリ21へ規模の大きなデータを格納した後にサービスの提供を開始する場合がある。このようなプログラムによって実行されるサービスとして、データベース、Webサービス等のデータキャッシュを作成するサービスが含まれる。
この場合には、仮想マシン20の状態が保存される際に、多くのダーティページが保存の対象となる。したがって、仮想マシン20の状態の保存に伴い、仮想マシン20の動作が一時的に停止する期間が長くなる。この結果として、仮想マシン20にて実行されるプログラムによるサービスの提供の開始が遅れるという問題が生じる場合がある。すなわち、フォールトトレラント機能に起因して、仮想マシン20を用いた外部へのサービスの提供の開始が遅延する等の悪影響が生じる可能性がある。本発明の各実施形態における仮想マシン管理システムは、上述した悪影響の軽減を可能等する。
(第1の実施形態)
次に、本発明の第1の実施形態について説明する。図2は、本発明の第1の実施形態における仮想マシン管理システムを示す図である。図3は、本発明の第1の実施形態における仮想マシン管理システムの一動作例を示すフローチャートである。図4は、本発明の第1の実施形態における仮想マシン管理システムの動作の変形例を示すフローチャートである。
図2に示すとおり、本発明の第1の実施形態における仮想マシン管理システム100は、少なくとも、制御部110と、サービス管理表111と、チェックポイント制御部112とを備える。また、本発明の第1の実施形態における仮想マシン管理システム100は、メモリ転送制御部120と、転送バッファ121と、ネットワーク制御部130と、通信解析部131と、保留バッファ132とを備える。
本実施形態における仮想マシン管理システム100は、例えば、図1に示す仮想マシン管理システム100−1又は100−2として用いられる。すなわち、仮想マシン管理システム100は、図1に示すホスト10−1又は10−2等にて実行される。また、仮想マシン管理システム100は、仮想マシン20又は40等の仮想マシンの実行を管理する。
以下、仮想マシン管理システム100において、仮想マシン20と同様の仮想マシンが実行されることを想定する。仮想マシン管理システム100において、仮想マシン40と同様の仮想マシンが実行されてもよい。以下の仮想マシン管理システム100の各構成要素に関する説明においては、「仮想マシン」との記載は、仮想マシン管理システム100において実行される仮想マシンを指す。
また、以下の説明においては、任意の種類のサービスを提供するプログラムが仮想マシンのゲストOSにてアプリケーションプログラムとして実行されることを、サービスが仮想マシンにて実行されると称する場合がある。さらに、当該サービスが外部のサーバ等や外部のユーザ等から利用可能になることを、サービスが外部へ提供される等と称する場合がある。
続いて、本発明の第1の実施形態における仮想マシン管理システム100の各構成要素について説明する。
制御部110は、サービスを提供するプログラムの少なくとも一つがサービス管理表111にて保持される条件を満たすか否かを判断して、仮想マシンの状態を制御する。制御部110は、仮想マシンにおいて実行されるサービスの少なくとも一つが後述するサービス管理表111にて保持される条件を満たす場合に、仮想マシンのフォールトトレラント機能を有効とするよう仮想マシンの状態を制御する。また、制御部110は、仮想マシンの状態の保存等、フォールトトレラント機能を実現する場合に必要となる制御を行う。
また、制御部110は、例えば上述のサービスのいずれもが停止する場合や、上述のサービスがサービス管理表111にて保持される条件を満たさない場合等に、フォールトトレラント機能を無効とするよう仮想マシンの状態を制御する。
フォールトトレラント機能を有効にすべき条件としては、サービスを提供するプログラムの動作に関連する任意の条件が含まれる。条件の詳細は後述する。
制御部110は、任意の手順にてサービスの少なくとも一つがサービス管理表111にて保持される条件を満たすか否かを判断する。制御部110は、例えば、サービスを提供するプログラムの動作を監視する仮想マシン管理システム100の他の構成要素による監視の結果に基づいて、サービスの少なくとも一つが上述の条件を満たすかを判断する。
例えば、制御部110は、サービスを提供するプログラムの動作を監視する他の構成要素からのフォールトトレラント機能を有効にすべき旨の要求に基づいて、サービスの少なくとも一つが上述の条件を満たすと判断してもよい。また、上述のサービスを提供するプログラムの動作を監視する他の構成要素がサービス管理表111に監視の結果を書込み、制御部110は、当該結果を参照して、サービスの少なくとも一つが上述の条件を満たすかを判断してもよい。
また、制御部110は、仮想マシンにて実行されるサービスを提供するプログラムの動作を直接に監視して、サービスが上述の条件を満たすかを判断してもよい。
別の一例として、制御部110は、後述する通信解析部131にて解析されるサービスを提供するプログラムの通信に関する動作の状況に基づいて、サービスが上述の条件を満たすか否かを判断してもよい。
サービスが上述の条件を満たすと判定した場合に、制御部110は、メモリ転送制御部120やネットワーク制御部130等を適宜制御して、フォールトトレラント機能を有効にする。この制御が行われることで、チェックポイントとして予め指定された間隔で仮想マシンの状態が別のホストにて実行される待機中の仮想マシンに保存される。
また、フォールトトレラント機能が有効である場合に、サービスが上述の条件を満たさないと判定すると、制御部110は、フォールトトレラント機能を無効にするように制御する。例えば、制御部110は、メモリ転送制御部120やネットワーク制御部130等を適宜制御してフォールトトレラント機能を無効にする。すなわち、チェックポイントとして指定された間隔で行われていた仮想マシンの状態の保存に関する処理が停止される。
フォールトトレラント機能の実行には、大きな負荷が必要となる場合がある。したがって、仮想マシン管理システム100においてフォールトトレラント機能が有効である場合には、上述のように、仮想マシンにて実行されるサービスの外部への提供の開始が遅延する等の悪影響が生じる可能性がある。
一方で、フォールトトレラント機能の必要性は、外部へのサービスの提供が行われている場合には高いが、それ以外の場合には必要性が小さい場合もある。そこで、フォールトトレラント機能は、必要性と、サービスを提供するプログラムが動作する際の負荷の大きさとに基づいて有効とされることが好ましいと考えられる。
そこで、本実施形態における仮想マシン管理システム100では、制御部110は、サービスの少なくとも一つがサービス管理表111にて保持される条件を満たすか否かを判断して、仮想マシンの状態を制御する。条件が適切に設定されることで、制御部110は、フォールトトレラント機能の必要性が高い場合に限って有効にすることを可能にする。すなわち、制御部110による制御によって、負荷が大きいが、フォールトトレラント機能の必要性が小さい処理が仮想マシンにて実行されている場合には、フォールトトレラント機能を無効にすることが可能となる。
したがって、制御部110が上述の制御を行うことで、仮想マシンの可用性を高めつつ、フォールトトレラント機能に起因する仮想マシンの動作への影響を小さくすることが可能となる。
サービス管理表111は、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、前記フォールトトレラント機能の有効又は無効との状態に関する条件を保持する。
一例として、サービス管理表111は、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、フォールトトレラント機能を有効にすべき条件を保持する。
上述のように、フォールトトレラント機能を有効にすべき条件としては、サービスを提供するプログラムの実行に関連する任意の条件が含まれる。この条件には、例えば、サービスを提供するプログラムの実行に関する条件や、外部へのサービスの提供の有無に関する条件等が含まれる。これらの条件は、具体的な例としては、サービスを提供するプログラムの実行に際して必要となるメモリの使用量や、サービスの外部への提供に関して行われる通信の種類等の形式で規定される。
なお、サービス管理表111は、仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、フォールトトレラント機能を無効にすべき条件を保持してもよい。
本実施形態においては、サービス管理表111は、一例として、仮想マシンにて実行されるサービスの各々について、外部へのサービスの提供の有無に関する条件を保持する。サービスの外部への提供の有無に関する条件としては、外部へのサービスの提供に関して行われる通信の種類等が用いられる。
すなわち、サービス管理表111は、フォールトトレラント機能を有効にすべき条件として、外部へのサービスの提供を開始する際にサービスに関して送受信される通信に関する情報を保持する。例えば、この情報には、外部へのサービスの提供を開始する場合に行われる通信のプロトコルやパケットの種類、これらの通信に関するアドレスやポート番号等が含まれる。
通信のプロトコルとしてTCP/IP(Transmission Control Protocol/Internet Protocol)が用いられる場合には、サービス管理表111は、プロトコルの種類として、例えばTCP又はUDP(User Datagram Protocol)のいずれであるかを保持する。また、この場合には、サービス管理表111は、アドレスとして、サービスの要求元又は提供先等のIP(Internet Protocol)アドレスを保持する。
また、サービス管理表111は、フォールトトレラント機能の有効または無効の状態を保持してもよい。サービス管理表111は、フォールトトレラント機能が有効とされる場合に、フォールトトレラント機能が有効となった要因となるサービスや条件に関する情報を保持してもよい。すなわち、この情報は、例えばどのサービスに起因してフォールトトレラント機能が有効となったかを示す情報である。
更に、サービス管理表111は、後述するチェックポイント制御部112にてチェックポイントの間隔の変更が行われる場合には、チェックポイントに関する情報を保持してもよい。チェックポイントに関する情報としては、仮想マシンのフォールトトレラント機能の対象となる一つのサービスについて、各々のサービスに適したチェックポイントの間隔に関する情報が含まれる。
適切なチェックポイントの間隔は、仮想マシンにおいて実行されるサービスに応じて異なる場合がある。仮想マシンの状態が保存される場合には、上述のように、外部への通信が保留される。通信が保留されている期間が長くなることで、外部への通信の頻度が高い場合等には外部への通信に支障が生じる可能性がある。したがって、例えば外部への通信の頻度が高い場合等には、一般には、短いチェックポイントの間隔が設定されることが好ましい。
これに対して、プログラムの実行時におけるページの更新には、一般に、時間局所性があることが知られている。すなわち、プログラムの実行時に、ある期間においては、同一のページに対して繰り返し更新が行われる場合がある。このような場合には、長いチェックポイントの間隔が設定されることで、仮想マシンの状態の保存において、ダーティページとして更新の対象となるページの総量を削減することが可能となる。すなわち、メモリへの書込みの頻度が高い場合等には、一般には、長いチェックポイントの間隔が設定されることが好ましい。
チェックポイント制御部112は、フォールトトレラント機能が有効である場合に、必要に応じてチェックポイントの間隔やチェックポイントにおける処理を制御する。チェックポイント制御部112は、例えば、制御部110からの指示に応じて、サービス管理表111に規定されたサービスの各々について規定されたチェックポイントの間隔に応じて、チェックポイントの間隔を変更する制御を行う。
メモリ転送制御部120は、チェックポイントにおいて、稼働している仮想マシンから待機している仮想マシンへのゲスト物理メモリの内容の転送を制御する。また、メモリ転送制御部120は、仮想マシンにおけるゲスト物理メモリへのアクセスの制御など、仮想マシンの実現に必要となる一般的な制御を行ってもよい。
転送バッファ121は、仮想マシン管理システム100において実行する仮想マシンが稼働している場合に、当該仮想マシンが有するゲスト物理メモリの内容を一時的に保持するバッファである。メモリ転送制御部120及び転送バッファ121は、一般的なフォールトトレラント機能を実現可能な仮想マシン管理システムが備える構成要素と同様の要素である。
ネットワーク制御部130は、フォールトトレラント機能が有効である場合において、上述した通信の保留の動作等を制御する。また、ネットワーク制御部130は、仮想マシンにおいて実行されるゲストOSでの通信の制御等、仮想マシンを実現する際に必要となる一般的な制御を行ってもよい。
通信解析部131は、上述のサービス管理表111においてフォールトトレラント機能を有効にすべき条件として通信に関する条件が規定されている場合に、仮想マシンにて実行されるゲストOSにおける通信の内容を解析する。通信解析部131は、通信の内容の解析として、例えば、通信がゲストOSにおいて実行されるサービスの開始または終了に関連するか否かを解析する。ゲストOSにおける通信がTCP(Transmission Control Protocol)による通信である場合には、通信解析部131は、パケットの種類を判別する等によって通信の内容を解析する。
保留バッファ132は、フォールトトレラント機能が有効である場合において通信が保留される場合に、保留された通信に関する情報を保持するバッファである。
続いて、本発明の第1の実施形態における仮想マシン管理システム100の動作を説明する。なお、この動作例においては、フォールトトレラント機能を有効にすべき条件の一例として、通信に関する条件がサービス管理表111に規定されていることを想定する。すなわち、制御部110は、通信解析部131における解析の結果に基づいてフォールトトレラント機能を有効にすべき条件を満たすか否かを判定する。
最初に、通信解析部131は、ゲストOSにて行われる通信を解析する(ステップS101)。例えば、通信解析部131は、ネットワーク制御部130を介してゲストOSにて行われる通信の内容を解析する。
次に、通信解析部131は、ステップS101にて解析した通信が、仮想マシンのゲストOSにて行われる外部へのサービス提供の開始に関する通信である否かを判定する(ステップS102)。例えば、当該通信がTCPによる通信である場合には、通信解析部131は、解析対象となるゲストOSからの通信のプロトコルタイプがTCP_SYN_ACKである場合に、外部へのサービス提供の開始に関する通信であると判定する。また、当該通信がUDPによる通信である場合には、通信解析部131は、判定が困難であることから、本ステップの段階では外部へのサービス提供の開始に関する通信であると判定する。
ステップS102において、解析対象となる通信が外部へのサービス提供の開始に関する通信であると判定された場合(ステップS102:Yes)には、制御部110及び通信解析部131は、ステップS103の処理を実行する。ステップS103では、制御部110は、フォールトトレラント機能を有効にすべき条件を満たすか否かを判定する。この動作例においては、制御部110は、通信解析部131における解析結果に基づいて判定を行う。
フォールトトレラント機能を有効にすべき条件を満たしているか否かの判定は、ステップS101又はステップS102にて解析等が行われた通信が、サービス管理表111に保持される条件に該当するか否かを判定することで行われる。すなわち、当該通信に関するアドレスやポート番号が、サービス管理表111に保持されている、フォールトトレラント機能を有効にすべき条件に該当するか比較することで行われる。
ステップS103における一つの動作例として、通信解析部131は、上述の通信が、サービス管理表111に保持される条件に該当するか否かを比較する。条件に該当する場合には、通信解析部131は、制御部110にフォールトトレラント機能を有効にすべき旨の要求を行う。そして、制御部110は、要求を受けた場合に、フォールトトレラント機能を有効にすべき条件を満たすと判断する。
また、ステップS103における別の動作例として、通信解析部131は、上述の通信に関する情報を制御部110に送信してもよい。この場合には、制御部110が、当該送信がサービス管理表111に保持される条件に該当するか比較してもよい。
ステップS103においてフォールトトレラント機能を有効にすべき条件を満たすと判定された場合(ステップS103:Yes)には、制御部110は、サービス管理表120を更新する(ステップS104)。例えば、制御部110は、ステップS103における比較の結果に基づいて、フォールトトレラント機能が有効となった要因となるサービスや条件に関する情報を保持するようにサービス管理表120を更新する。また、制御部110は、フォールトトレラント機能が有効である旨を示すようにサービス管理表120を更新してもよい。
制御部110は、フォールトトレラント機能が既に有効とされているかを確認する(ステップS105)。フォールトトレラント機能が有効とされていない場合(ステップS105:No)には、制御部110は、フォールトトレラント機能を有効にするよう制御を行う(ステップS106)。
フォールトトレラント機能が既に有効とされている場合(ステップS105:Yes)には、チェックポイント制御部112は、チェックポイントの間隔を変更するよう制御する(ステップS107)。この場合には、チェックポイント制御部112は、例えばサービス管理表111を参照し、ステップS103等で比較の対象となった通信に関連するサービスに適したチェックポイントの間隔に関する情報を取得する。そして、そのサービスに適したチェックポイントの間隔が、その時点におけるチェックポイントの間隔と比較して長い場合には、チェックポイント制御部112は、チェックポイントの間隔を上述のサービスに適した間隔に変更する。
なお、ステップS107においてチェックポイントの間隔が変更される場合には、チェックポイント制御部112は、上述の手順と異なる手順にてチェックポイントの間隔を変更するよう制御してもよい。例えば、チェックポイント制御部112は、仮想マシンにて実行されているサービスに対して定められた任意の優先度等に応じて、優先度が最も高いサービスに適した間隔となるようにチェックポイント間隔を制御してもよい。
ステップS106又はS107における処理に引き続いて、ネットワーク制御部130は、必要に応じて通信に関する処理を実行する(ステップS108)。ネットワーク制御部130は、フォールトトレラント機能が有効である場合における通信の保留等、フォールトトレラント機能が有効である場合に必要となる処理を含む通信に関する処理を実行する。
また、ステップS103においてステップS103においてフォールトトレラント機能を有効にすべき条件を満たさないと判定された場合(ステップS103:No)にも、ネットワーク制御部130は、必要に応じてステップS108の処理を実行する。
ステップS102において、解析対象となる通信が外部へのサービス提供の開始に関する通信ではないと判定された場合(ステップS102:No)には、ステップS109の処理が行われる。ステップS109においては、通信解析部131は、ステップS101にて解析した通信が、仮想マシンのゲストOSにて行われる外部へのサービス提供の終了に関する通信である否かを判定する。当該通信がTCPによる通信である場合には、通信解析部131は、例えばプロトコルタイプがTCP_RST又はTCP_FINである場合に、外部へのサービス提供の終了に関する通信であると判定する。
ステップS109において、解析対象となる通信が外部へのサービス提供の終了に関する通信であると判定された場合(ステップS109:Yes)には、制御部110及び通信解析部131は、ステップS110の処理を実行する。ステップS103では、制御部110は、フォールトトレラント機能を無効にすべき条件を満たすか否かを判定する。
この動作例においては、制御部110は、ステップS110の処理として、ステップS103における処理と同様にして、通信解析部131における解析結果に基づいて判定を行う。すなわち、当該通信に関するアドレスやポート番号が、サービス管理表111に保持されるフォールトトレラント機能を無効にすべき条件に該当するか比較することで行われる。
ステップS110においてフォールトトレラント機能を有効にすべき条件を満たすと判定された場合(ステップS110:Yes)には、制御部110は、サービス管理表120を更新する(ステップS111)。例えば、制御部110は、ステップS110における比較の結果に基づいて、フォールトトレラント機能が無効とすべきと判断された要因となるサービスや条件に関する情報を保持するようにサービス管理表120を更新する。
続いて、制御部110は、サービス管理表111を参照する等によって、フォールトトレラント機能を有効とすべき他のサービスの外部への提供が行われているかを確認する(ステップS112)。他のサービスが提供されている場合(ステップS112:Yes)には、制御部110は、フォールトトレラント機能を有効としたままの状態とする。そして、チェックポイント制御部112は、ステップS107の処理として、必要に応じてチェックポイントの間隔を変更するよう制御する。
フォールトトレラント機能を有効とすべき他のサービスの外部への提供が行われていない場合には、制御部110は、フォールトトレラント機能を無効にするよう制御を行う(ステップS113)。ステップS113の処理と併せて、制御部110は、フォールトトレラント機能が無効である旨を示すようにサービス管理表120を更新してもよい。ステップS113の処理の後には、必要に応じて、ネットワーク制御部130は、ステップS108の通信に関する処理を実行する。
以上のとおり、本発明の第1の実施形態における仮想マシン管理システム100は、フォールトトレラント機能を有効にすべき条件を満たす場合にフォールトトレラント機能を有効にするように仮想マシンを制御する。すなわち、本実施形態においては仮想マシン管理システム100の制御部110は、サービス管理表111に予め規定された条件を満たす場合にフォールトトレラント機能を有効とするように仮想マシンを制御する。サービス管理表111にて規定される条件は、例えば、仮想マシンにおいてサービスの外部への提供が行われることを示す条件である。
つまり、本実施形態の仮想マシン管理システム100においては、サービス管理表111に保持される条件に応じ、仮想マシンにおいてサービスの外部への提供が行われる場合にフォールトトレラント機能を有効とすることが可能となる。言い換えると、本実施形態の仮想マシン管理システム100においては、負荷が大きく、かつ、外部に対して影響を及ぼす可能性の小さい処理が行われている場合にはフォールトトレラント機能を無効とすることが可能となる。
したがって、仮想マシンの状態の保存等に伴う仮想マシンの一時的な停止等、フォールトトレラント機能に起因する仮想マシンへの負荷を軽減することが可能となる。これにより、仮想マシンの状態の保存が行われることに起因して、外部へのサービス提供が遅延すること等が回避される。
すなわち、本実施形態における仮想マシン管理システム100は、フォールトトレラント機能に起因する仮想マシンの動作への影響が小さい仮想マシン管理システム等を提供することを可能とする。
(第1の実施形態の変形例)
本発明の第1の実施形態においては、種々の変形例が考えられる。
本実施形態における仮想マシン管理システム100は、仮想マシンを実現する際に必要となる構成として、図2に示す構成とは異なる構成を備えてもよい。また、仮想マシン管理システム100は、一般的なフォールトトレラント機能を実現する際に必要となる構成として、図2に示す構成とは異なる構成を備えてもよい。仮想マシン管理システム100は、少なくとも制御部110及びサービス管理表111を備えることで、フォールトトレラント機能に起因する仮想マシンの動作への影響を軽減することが可能となる。
また、別の一例として、本実施形態における仮想マシン管理システム100は、チェックポイントの間隔を変更しなくてもよい。この場合には、仮想マシン管理システム100は、フォールトトレラント機能が有効である場合には、予め定められたチェックポイントの間隔にて仮想マシンの状態を保存する。すなわち、この場合における仮想マシン管理システム100は、図4に示すフローチャートのように動作してもよい。
図4に示すフローチャートにおいては、図3に示すフローチャートのS107にて規定されるチェックポイント間隔の調整に関する動作が省略される。そして、ステップS105又はステップS112にて規定される分岐が“Yes”である場合には、引き続いてステップS108にて規定される通信に関する処理が行われる。図4に示すフローチャートの動作は、上述の点を除き、図3に示すフローチャートと同様に動作する。
また、この場合には、仮想マシン管理システム100のチェックポイント制御部は、チェックポイントにおける仮想マシンの情報の保存についての制御を行う。
このような場合であっても、仮想マシン管理システム100は、制御部110がサービス管理表111に規定される条件を満たす場合にフォールトトレラント機能を有効にすることで、仮想マシンの動作への影響の軽減が可能となる。
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。図5は、本発明の第2の実施形態における仮想マシン管理システム200の構成を示す図である。
図5に示すように、本発明の第2の実施形態における仮想マシン管理システム200は、本発明の第1の実施形態における仮想マシン管理システム100と同様の構成を備える。仮想マシン管理システム200において、制御部110は、サービス監視部240における仮想マシンの監視結果に基づいて、仮想マシンの記フォールトトレラント機能に関する状態を制御する。
仮想マシンのゲストOSにおいては、一般的に、仮想マシン管理システムや仮想マシンを支援するプログラムが導入される場合がある。本実施形態においては、サービス監視部240は、そのようなプログラムの例である。仮想マシン管理システム200は、サービス監視部240における監視結果を用いて仮想マシンの制御を行う。
本実施形態においては、サービス監視部240は、一つの動作例として、ゲストOSにて実行されるサービスに関連するプロセスの状態を監視する。すなわち、サービス監視部240は、これらのプロセスの起動や終了等を監視する。サービス監視部240が監視の対象とするプロセスに関連するサービス等は、サービス管理表111にて適宜規定されてもよい。
監視の対象となるプロセスが起動した場合には、サービス監視部240は、制御部110にフォールトトレラント機能を有効にすべき旨の要求を行う。そして、制御部110は、要求を受けた場合に、フォールトトレラント機能を有効にすべき条件を満たすと判断する。
または、サービス監視部240は、仮想マシンにおいてプロセスが起動した場合に、その旨を制御部110に通知してもよい。この場合には、制御部110は、通知の対象であるプロセスがサービス管理表111に保持される条件に関連するプロセスであるかを比較し、フォールトトレラント機能を有効にすべき条件を満たすと判断してもよい。
同様に、サービス監視部240は、監視の対象となるプロセスが終了した場合には、サービス監視部240は、制御部111は、フォールトトレラント機能を無効にすべき旨の要求を行う。そして、制御部110は、要求を受けた場合に、他のフォールトトレラント機能を有効とすべき条件を参照しつつ、必要に応じてフォールトトレラント機能を無効にすべき条件を満たすと判断する。または、サービス監視部240は、仮想マシンにおいてプロセスが終了した場合に、その旨を制御部110に通知してもよい。制御部110は、当該通知に基づき、必要に応じてフォールトトレラント機能を有効にすべき条件を満たすと判断してもよい。
別の例として、サービス監視部240は、ゲストOSにて実行されるサービスに関連するプロセスの状態として、当該プロセスのメモリの使用量を監視する。
この場合には、サービス監視部240は、例えば、サービス管理表111に予め定められたメモリの使用量を超えたか否かを監視する。そして、制御部110は、サービス監視部240の監視の結果に基づいて、上述の例における手順と同様の手順等にてフォールトトレラント機能を有効にすべき(又は無効にすべき)条件を満たすと判断する。
本実施形態においては、仮想マシン管理システム200の通信解析部131は、第1の実施形態において説明した例と同様に、仮想マシンにて実行されるゲストOSにおける通信の内容を解析する。この場合には、制御部110の動作としていくつかの動作が想定される。
一つの動作として、制御部110は、サービス監視部240における監視の結果に基づいてフォールトトレラント機能の状態に関する制御を行う。制御部110は、フォールトトレラント機能の状態に関する制御においては、通信解析部131による通信を解析した結果を用いない。そして、通信解析部131は、フォールトトレラント機能が無効である場合には、外部へのサービスの提供に関わるパケットを破棄する。このような制御を行うことで、制御部110は、フォールトトレラント機能が有効である場合に限って仮想マシンによる外部へのサービスの提供を行うことを可能にする。
また、制御部110は、通信解析部131又はサービス監視部240のいずれかからの通知等に基づいてフォールトトレラント機能の状態を制御してもよい。例えば、通信解析部131又はサービス監視部240のいずれかからの通知等がフォールトトレラント機能を有効にすべき条件に関する場合、制御部110は、フォールトトレラント機能を有効にすべき条件を満たすと判断してもよい。この場合には、制御部110は、フォールトトレラント機能を有効にするように制御する。
以上のとおり、本発明の第2の実施形態における仮想マシン管理システム200は、制御部110は、フォールトトレラント機能の状態の制御に際して、サービス監視部240における監視の結果を用いる。サービス監視部240は、仮想マシンのゲストOSにて実行されるプロセスの状況を監視する。このことから、制御部110は、そのプロセスの状況に基づいて、フォールトトレラント機能の状態を制御することが可能となる。したがって、本実施形態における仮想マシン管理システム200は、第1の実施形態における仮想マシン管理システム100と同様の効果を奏する。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。また、各実施形態における構成は、本発明のスコープを逸脱しない限りにおいて、互いに組み合わせることが可能である。
10 ホスト
20、40 仮想マシン
21、41 ゲスト物理メモリ
30 ゲストOS
50 通信ネットワーク
100、200 仮想マシン管理システム
110 制御部
111 サービス管理表
112 チェックポイント制御部
120 メモリ転送制御部
121 転送バッファ
130 ネットワーク制御部
131 通信解析部
132 保留バッファ
500 情報処理装置
501 CPU
502 ROM
503 RAM
504 プログラム
505 記憶装置
506 記憶媒体
507 ドライブ装置
508 通信インターフェース
509 通信ネットワーク
510 入出力インターフェース
511 バス

Claims (10)

  1. 仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々について、前記フォールトトレラント機能の状態に関する条件を保持するサービス管理表と、
    前記条件に基づいて、前記仮想マシンの前記フォールトトレラント機能の状態を制御する制御手段とを備える、仮想マシン管理システム。
  2. 前記制御手段は、前記サービスの少なくとも一つが前記フォールトトレラント機能を有効にすべきとの前記条件を満たす場合に前記フォールトトレラント機能を有効とするように前記仮想マシンを制御する、請求項1に記載の仮想マシン管理システム。
  3. 前記制御手段は、前記サービスのいずれもが前記フォールトトレラント機能を無効にすべきとの前記条件を満たす場合に前記フォールトトレラント機能を無効とするように前記仮想マシンを制御する、請求項1又は2に記載の仮想マシン管理システム。
  4. 前記条件に関連する前記サービスに応じて、前記フォールトトレラント機能が有効である場合に、前記仮想マシンの状態を保存する間隔であるチェックポイントを制御するチェックポイント制御部を備える、請求項1から3のいずれか一項に記載の仮想マシン管理システム。
  5. 前記サービス管理表は、前記サービスの各々について、前記サービスの通信に関する前記フォールトトレラント機能を有効とすべき条件を保持する、請求項1から4のいずれか一項に記載の仮想マシン管理システム。
  6. 前記仮想マシンにおける通信の内容を解析する通信解析手段を備える、請求項1から5のいずれか一項に記載の仮想マシン管理システム。
  7. 前記制御手段は、前記通信解析手段における前記通信の内容の解析結果に基づいて、前記仮想マシンの前記フォールトトレラント機能の状態を制御する、請求項1から6のいずれか一項に記載の仮想マシン管理システム。
  8. 前記制御手段は、前記仮想マシンにおいて実行される前記サービスに関する実行状況監視するサービス監視手段による監視の結果に基づいて、前記仮想マシンの前記フォールトトレラント機能の状態を制御する、請求項1から7のいずれか一項に記載の仮想マシン管理システム。
  9. 仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々に対する前記フォールトトレラント機能を有効にすべき条件に基づいて、前記サービスの少なくとも一つが前記条件を満たすか否かを判定し、
    前記判定の結果に基づいて、前記仮想マシンの前記フォールトトレラント機能に関する状態を変更するように制御する、仮想マシンの管理方法。
  10. コンピュータに、
    仮想マシンのフォールトトレラント機能の対象となる少なくとも一つのサービスの各々に対する前記フォールトトレラント機能を有効にすべき条件に基づいて、前記サービスの少なくとも一つが前記条件を満たすか否かを判定する処理と、
    前記判定の結果に基づいて、前記仮想マシンの前記フォールトトレラント機能に関する状態を変更するように制御する処理とを実行させるプログラム。
JP2015183660A 2015-09-17 2015-09-17 仮想マシン管理システム、仮想マシン管理方法及びプログラム Active JP6582785B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015183660A JP6582785B2 (ja) 2015-09-17 2015-09-17 仮想マシン管理システム、仮想マシン管理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015183660A JP6582785B2 (ja) 2015-09-17 2015-09-17 仮想マシン管理システム、仮想マシン管理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2017058997A true JP2017058997A (ja) 2017-03-23
JP6582785B2 JP6582785B2 (ja) 2019-10-02

Family

ID=58390998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015183660A Active JP6582785B2 (ja) 2015-09-17 2015-09-17 仮想マシン管理システム、仮想マシン管理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP6582785B2 (ja)

Also Published As

Publication number Publication date
JP6582785B2 (ja) 2019-10-02

Similar Documents

Publication Publication Date Title
US9183099B2 (en) Replication of a write-back cache using a placeholder virtual machine for resource management
CN110224871B (zh) 一种Redis集群的高可用方法及装置
US9158578B1 (en) System and method for migrating virtual machines
US9256464B2 (en) Method and apparatus to replicate stateful virtual machines between clouds
US8713362B2 (en) Obviation of recovery of data store consistency for application I/O errors
US10922135B2 (en) Dynamic multitasking for distributed storage systems by detecting events for triggering a context switch
US20170300394A1 (en) Fault tolerance for containers in a virtualized computing environment
US20150058522A1 (en) Detection of hot pages for partition migration
US9588844B2 (en) Checkpointing systems and methods using data forwarding
JP2010044613A (ja) ウイルス対策方法、コンピュータ、及びプログラム
JP6123626B2 (ja) 処理再開方法、処理再開プログラムおよび情報処理システム
Deshpande et al. Scatter-gather live migration of virtual machines
WO2015024475A1 (en) Detection of hot pages for partition hibernation
WO2012004902A1 (ja) 計算機システム及び計算機システムの系切替制御方法
WO2012063334A1 (ja) 仮想マシンのライブマイグレーションを支援するためのメモリ制御装置及びi/oスイッチ
JP2004234114A (ja) 計算機システム、計算機装置、オペレーティングシステムの移送方法及びプログラム
Su et al. Rpff: A remote page-fault filter for post-copy live migration
JP2012243096A (ja) ゲストos管理装置、ゲストos管理方法及びゲストos管理プログラム
US8621260B1 (en) Site-level sub-cluster dependencies
JP5437556B2 (ja) 情報処理装置およびプロセッサ機能変更方法
JP6582785B2 (ja) 仮想マシン管理システム、仮想マシン管理方法及びプログラム
CN113032091B (zh) 一种采用aep提升虚拟机存储性能的方法、系统及介质
Eswaran et al. Tackling memory footprint expansion during live migration of virtual machines,”
JP5478372B2 (ja) ゲストos制御システム
US10476947B1 (en) Methods for managing web applications and devices thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190531

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190731

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: 20190806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190819

R150 Certificate of patent or registration of utility model

Ref document number: 6582785

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150