(57)【要約】【課題】ライブマイグレーションの所要時間を推定してユーザに事前に通知するライブマイグレーション管理方法および装置を提供する。【解決手段】ライブマイグレーション管理装置（１００ａ）は、ネットワーク（２０）を通して他の物理マシン（Ｂ）へ仮想マシン（ＶＭ）を移行するライブマイグレーションの管理装置であって、仮想マシンの転送メモリサイズを推定するメモリモニタ委（１０１）と、ネットワークの転送速度を推定するネットワークモニタ（１０３）、転送メモリサイズ推定値と転送速度推定値とからライブマイグレーションの所要時間を推定するライブマイグレーション転送時間計算部（１０５）と、ライブマイグレーションの所要時間を表示手段に表示し、それに対して前記ライブマイグレーションの実行あるいは中止を示すユーザ指示を待つ。【選択図】図１
2016184252.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを通して他の物理マシンへ仮想マシンを移行するライブマイグレーションの管理装置であって、
前記仮想マシンの転送メモリサイズを推定する第一推定手段と、
前記ネットワークの転送速度を推定する第二推定手段と、
前記転送メモリサイズ推定値と前記転送速度推定値とから前記ライブマイグレーションの所要時間を推定する第三推定手段と、
前記ライブマイグレーションの所要時間を表示手段に表示し、それに対して前記ライブマイグレーションの実行あるいは中止を示すユーザ指示を待つ制御手段と、
を有することを特徴とするライブマイグレーション管理装置。
【請求項２】
前記第一推定手段は、前記仮想マシンのメモリサイズと前記仮想マシンの更新ページサイズとから前記転送メモリサイズを推定することを特徴とする請求項１に記載のライブマイグレーション管理装置。
【請求項３】
前記第二推定手段は、前記他の物理マシンとの間で前記ネットワークを通してパケットを送受信することで前記転送速度を推定することを特徴とする請求項１または２に記載のライブマイグレーション管理装置。
【請求項４】
前記第三推定手段は、前記ライブマイグレーションの実行指示を契機として、前記転送メモリサイズ推定値と前記転送速度推定値とを取得し、前記ライブマイグレーションの所要時間を推定する、ことを特徴とする請求項１−３のいずれか一項に記載のライブマイグレーション管理装置。
【請求項５】
ネットワークを通して他の物理マシンへ仮想マシンを移行するライブマイグレーションの管理方法であって、
第一推定手段が前記仮想マシンの転送メモリサイズを推定し、
第二推定手段が前記ネットワークの転送速度を推定し、
第三推定手段が前記転送メモリサイズ推定値と前記転送速度推定値とから前記ライブマイグレーションの所要時間を推定し、
制御手段が、前記ライブマイグレーションの所要時間と、前記ライブマイグレーションの実行あるいは中止を示すユーザ選択肢と、を表示手段に表示し、前記ライブマイグレーションの実行が選択されることで前記ライブマイグレーションを実行する、
ことを特徴とするライブマイグレーション管理方法。
【請求項６】
前記第一推定手段が、前記仮想マシンのメモリサイズと前記仮想マシンの更新ページサイズとから前記転送メモリサイズを推定することを特徴とする請求項５に記載のライブマイグレーション管理方法。
【請求項７】
前記第二推定手段が、前記他の物理マシンとの間で前記ネットワークを通してパケットを送受信することで前記転送速度を推定することを特徴とする請求項５または６に記載のライブマイグレーション管理方法。
【請求項８】
前記第三推定手段が、前記ライブマイグレーションの実行指示を契機として、前記転送メモリサイズ推定値と前記転送速度推定値とを取得し、前記ライブマイグレーションの所要時間を推定する、ことを特徴とする請求項５−７のいずれか一項に記載のライブマイグレーション管理方法。
【請求項９】
ネットワークを通して他の物理マシンへ仮想マシンを移行するライブマイグレーションの管理装置としてコンピュータを機能させるプログラムであって、
前記仮想マシンの転送メモリサイズを推定する第一推定機能と、
前記ネットワークの転送速度を推定する第二推定機能と、
前記転送メモリサイズ推定値と前記転送速度推定値とから前記ライブマイグレーションの所要時間を推定する第三推定機能と、
前記ライブマイグレーションの所要時間を表示手段に表示し、それに対して前記ライブマイグレーションの実行あるいは中止を示すユーザ指示を待つ制御機能と、
を前記コンピュータに実現することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は仮想マシンのライブマイグレーションを管理する方法および装置に関する。
【背景技術】
【０００２】
近年、モバイル端末の普及によるトラフィックの爆発的な増加により、トラフィックの変化が予測できない状況にある。この対策の一つとして、柔軟なマシン構成を可能とする仮想化技術が知られており、特に、仮想マシンを無停止のまま物理マシン間で移動させるライブマイグレーション技術が注目されている。ライブマイグレーション技術には、物理マシンの負荷分散が容易になること、また物理マシンのメンテナンス時でも仮想マシンを稼働できること等の多くのメリットがある。
【０００３】
ライブマイグレーション技術に関しては種々の提案がされている。たとえば、特許文献１には、ライブマイグレーションの進捗状況を統計情報として表示する仮想マシン管理方法が開示されている。また、特許文献２には、仮想マシンごとにマイグレーションに要するページ当たりの転送時間を計算し、もっとも転送時間が短い仮想マシンをマイグレーション対象とする制御方法が開示されており、特にライブマイグレーションでは、転送ごとに変化する更新ページ数を考慮して転送時間を計算する方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第ＷＯ２０１４−０３０２２１号
【特許文献２】特開２００９−１４６１６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ライブマイグレーションの実行時間はメモリの更新頻度およびネットワークの転送速度に応じて変動する。したがって、上記特許文献に開示されているマイグレーションシステムでは、ユーザがライブマイグレーションを実行しようとするときに、そのライブマイグレーションの開始から終了までに要する時間を知ることができない。このために、ライブマイグレーションを開始したのはよいが、予想外に時間が掛かるという事態が起こりうる。
【０００６】
そこで、本発明の目的は、ライブマイグレーションの所要時間を推定してユーザに事前に通知するライブマイグレーション管理方法および装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明によるライブマイグレーション管理装置は、ネットワークを通して他の物理マシンへ仮想マシンを移行するライブマイグレーションの管理装置であって、前記仮想マシンの転送メモリサイズを推定する第一推定手段と、前記ネットワークの転送速度を推定する第一推定手段と、前記転送メモリサイズ推定値と前記転送速度推定値とから前記ライブマイグレーションの所要時間を推定する第三推定手段と、前記ライブマイグレーションの所要時間を表示手段に表示し、それに対して前記ライブマイグレーションの実行あるいは中止を示すユーザ指示を待つ制御手段と、を有することを特徴とする。
本発明によるライブマイグレーション管理方法は、ネットワークを通して他の物理マシンへ仮想マシンを移行するライブマイグレーションの管理方法であって、第一推定手段が前記仮想マシンの転送メモリサイズを推定し、第二推定手段が前記ネットワークの転送速度を推定し、第三推定手段が前記転送メモリサイズ推定値と前記転送速度推定値とから前記ライブマイグレーションの所要時間を推定し、制御手段が、前記ライブマイグレーションの所要時間と、前記ライブマイグレーションの実行あるいは中止を示すユーザ選択肢と、を表示手段に表示し、前記ライブマイグレーションの実行が選択されることで前記ライブマイグレーションを実行する、ことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ライブマイグレーションの所要時間を推定してユーザに事前に通知することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は本発明の一実施形態によるライブマイグレーション管理装置の機能的構成を説明するためのシステムブロック図である。
【図２】図２は本実施形態によるライブマイグレーション管理装置の起動時の動作例を示すフローチャートである。
【図３】図３（Ａ）および図３（Ｂ）は、本実施形態によるライブマイグレーション管理装置のメモリモニタおよびネットワーク転送速度計測部の動作をそれぞれ示すフローチャートである。
【図４】図４は本実施形態によるライブマイグレーション管理装置のライブマイグレーション管理動作の一例を示すフローチャートである。
【図５】図５は本実施形態によるライブマイグレーション管理方法の一例を示すタイムチャートである。
【発明を実施するための形態】
【００１０】
＜実施形態の概要＞
本発明の一実施形態によれば、ライブマイグレーション開始時に、移行所要時間を推定してユーザに通知し、ライブマイグレーションの実行／中止をユーザに事前に選択させることができる。
【００１１】
移行所要時間は、転送元の仮想マシン上で変更されたページ（Dirty pageともいう。）の数、転送元ホストマシンと転送先ホストマシンとの間で使用可能なネットワーク帯域幅、ホストマシンの負荷状態等に依存する。本実施形態では、主に更新ページに関する統計情報およびネットワーク状況に関する情報を取得し、これらの情報を用いて移行所要時間を推定する。
【００１２】
以下、仮想化基盤としてカーネルベースの仮想マシン(ＫＶＭ：Kernel-based Virtual Machine)を利用したシステムを一例として用い、本実施形態について詳細に説明する。
【００１３】
１．システム構成
図１に例示するように、本実施形態によるライブマイグレーションを実行するシステムは、転送元ホストマシンＡと転送先ホストマシンＢとがネットワーク２０を通して接続可能であるものとする。ネットワーク２０はライブマイグレーション専用であってもよい。
【００１４】
転送元ホストマシンＡに、ホストＯＳ(Operating System)機能部１０ａ、仮想レイヤ機能部１１ａおよび仮想マシンＶＭａが動作し、ホストＯＳ機能部１０ａが仮想レイヤ機能部１１ａを、仮想レイヤ機能部１１ａが仮想マシンＶＭａをそれぞれ制御する。さらに、ホストＯＳ機能部１０ａ上にはライブマイグレーション管理部１００ａが動作し、ライブマイグレーション管理部１００ａには、メモリモニタ１０１、転送メモリサイズ格納部１０２、ネットワークモニタ１０３、転送速度格納部１０４、およびライブマイグレーション転送時間計算部１０５からなる機能が設けられている。
【００１５】
メモリモニタ１０１は、仮想マシンＶＭａにより使用されるメモリの使用状況を一定時間間隔でモニタし、メモリのページサイズと更新ページサイズの統計情報とから得られる転送メモリサイズ推定値を転送メモリサイズ格納部１０２に格納する。たとえば、メモリのページサイズは、仮想マシンＶＭａにログインし、getconf PAGE_SIZEを実行することにより取得することができる。また、更新ページサイズは、仮想マシンＶＭａにログインし、/proc/meminfoを一定時間間隔で実行することで得られた時系列の更新ページサイズから平均サイズと平均更新頻度とを計算し、その積を取ることにより取得することができる。
【００１６】
ネットワークモニタ１０３は、転送先ホストマシンＢ側のネットワークモニタとの間でネットワーク２０を通して測定用のダミーパケットを定期的に送受信し、その転送所要時間からネットワーク２０の転送速度を計算して転送速度格納部１０４に格納する。転送速度格納部１０４にはネットワーク２０の転送速度の統計値を格納してもよい。
【００１７】
ライブマイグレーション転送時間計算部１０５は、ユーザインタフェース１０６を通してユーザからライブマイグレーション実行指示を受けると、転送メモリサイズ格納部１０２および転送速度格納部１０４からそれぞれ転送メモリサイズ情報および転送速度情報を取得し、転送メモリサイズを転送速度で除することにより当該ライブマイグレーションに要する移行所要時間を計算する。こうして得られた移行所要時間はユーザインタフェース１０６に表示される。
【００１８】
ユーザインタフェース１０６は、たとえばユーザ指示を入力できる入力部と移行所要時間などの情報を教示できる表示部とからなる。ユーザは、表示部に表示されたライブマイグレーションに要する時間をみて、ライブマイグレーションの実行あるいはキャンセルを選択することができる。
【００１９】
なお、転送先ホストマシンＢも転送元ホストマシンＡと同様の構成および機能を有し、ここではホストＯＳ機能部１０ｂの上に仮想レイヤ１１ｂおよび仮想マシンＶＭｂが動作している。また、ホストマシンは一つのコンピュータであるから、前記ホストＯＳ機能部１０ａのライブマイグレーション管理部１００ａは、図示しないメモリに格納されたプログラムを実行することにより実現することができる。ホストマシンＢも同様である。
【００２０】
２．動作
図２に示すように、ホストマシンが起動されると、ホストＯＳ機能部１０ａは仮想マシンＶＭが起動しているか否かを判断し（動作２０１）、仮想マシンが起動していなければ（動作２０１；ＮＯ）、一定時間を経て動作２０１へ戻る（動作２０２）。仮想マシンＶＭが起動していれば８動作２０１；ＹＥＳ）、ホストＯＳ機能部１０ａは、ライブマイグレーション管理部１００ａのメモリモニタ１０１およびネットワークモニタ１０３を起動して、次に述べるように、ライブマイグレーションのための転送メモリサイズおよび転送速度の計算を実行する（動作２０３）。
【００２１】
＜転送メモリサイズおよび転送速度の推定＞
図３（Ａ）において、メモリモニタ１０１は、起動すると、仮想マシンＶＭａのページサイズを取得し（動作３０１）、続けて、上述したように更新ページをモニタし（動作３０２）、取得したページサイズとモニタした更新ページサイズとから転送メモリサイズを計算し（動作３０３）、転送メモリサイズ格納部１０２に格納する（動作３０４）。これらの動作３０２〜３０４を一定時間間隔で繰り返すことにより、転送メモリサイズ格納部１０２に転送メモリサイズの統計値が格納される（動作３０４）。
【００２２】
図３（Ｂ）において、ネットワークモニタ１０３は、転送先ホストマシンＢ側のネットワークモニタとの間でネットワーク２０を通して測定用のダミーパケットを送受信することで転送速度を計測し（動作４０１）、計測値を転送速度格納部１０４に格納する（動作４０２）。この計測動作４０１および４０２を一定時間間隔で繰り返すことで、ネットワーク２０の転送速度計測値を更新する。
【００２３】
＜移行所要時間の推定＞
図４において、ライブマイグレーション転送時間計算部１０５は、ユーザインタフェース１０６からライブマイグレーション実行指示があると（動作５０１；ＹＥＳ）、転送メモリサイズ格納部１０２および転送速度格納部１０４からそれぞれ転送メモリサイズ統計値および転送速度情報をそれぞれ取得し（動作５０２）、当該仮想マシンＶＭａのライブマイグレーションに要する移行所要時間を計算する(動作５０３)。ライブマイグレーション転送時間計算部１０５は、こうして得られた移行所要時間をユーザインタフェース１０６に表示すると共に、ユーザに対してライブマイグレーションを実行するか中止するかを示す選択肢を提供する（動作５０４）。したがって、ライブマイグレーションに要する時間をみて、ユーザはライブマイグレーションの実行あるいはキャンセルのいずれかを選択することができる。
【００２４】
ユーザがユーザインタフェース１０６を通してライブマイグレーションの実行を選択すれば（動作５０５；ＹＥＳ）、ライブマイグレーション管理部１００ａは仮想レイヤ機能部１１ａを制御してライブマイグレーションを実行し（動作５０６）、ユーザがキャンセルを選択すれば（動作５０５；ＮＯ）、ライブマイグレーションを中止し処理を終了する（動作５０７）。
【００２５】
＜ライブマイグレーション＞
図５に例示するように、転送元ホストマシンＡ上で仮想マシンＶＭａが動作しているときに、ライブマイグレーション実行コマンドが入力すると（動作Ｓ６０１）、ライブマイグレーション管理部１００ａは、上述した転送メモリサイズとネットワーク転送速度とを用いて移行所要時間を推定し（動作Ｓ６０２）、その移行所要時間の推定値をユーザインタフェース１０６に表示してユーザの実行／キャンセルの選択を待つ（動作Ｓ６０３）。
【００２６】
ユーザがライブマイグレーション実行を選択すると（動作Ｓ６０４）、周知のように、仮想マシンＶＭａが使用するメモリの転送とその間に更新されたページの転送が順次実行される（動作Ｓ６０５）。更新ページサイズが所定転送時間内に転送完了するサイズまで減少すると、転送ホストマシンＡの仮想マシンＶＭａの動作を停止し（動作Ｓ６０６）、残りの更新ページを全て転送先ホストマシンＢへ転送すると、転送先ホストマシンＢの仮想マシンＶＭｂを動作させ（動作Ｓ６０７）、続いて転送元ホストマシンＡの仮想マシンＶＭａを削除する（動作Ｓ６０８）。
【００２７】
３．効果
このように、本実施形態によれば、ライブマイグレーション全体が完了するまでの所要時間を事前に推定してユーザに提供することにより、ユーザはライブマイグレーションを実行するか否かを選択することができる。
【産業上の利用可能性】
【００２８】
本発明は、仮想化基盤としてＫＶＭを利用するシステム全般に利用可能である。
【符号の説明】
【００２９】
Ａ  転送元ホストマシン
Ｂ  転送先ホストマシン
ＶＭａ、ＶＭｂ  仮想マシン
１０ａ、１０ｂ  ホストＯＳ機能部
１１ａ、１１ｂ  仮想化レイヤ機能部
１００ａ、１００ｂ  ライブマイグレーション管理部
１０１  メモリモニタ
１０２  転送メモリサイズ格納部
１０３  ネットワークモニタ
１０４  転送速度格納部
１０５  ライブマイグレーション転送時間計算部
１０６  ユーザインタフェース
【図１】
2016184252.tif 000003
【図２】
2016184252.tif 000004
【図３】
2016184252.tif 000005
【図４】
2016184252.tif 000006
【図５】
2016184252.tif 000007