(57)【要約】【課題】ライブマイグレーションに起因するサービス停止時間による提供サービスへの影響を抑制する仮想マシン管理システム、方法、およびプログラムを提供する。【解決手段】仮想マシン管理システム１は、仮想マシンのライブマイグレーションを実行する実行部１０２と、ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列に取得する取得部１０４と、取得部１０４が取得した情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する予測部１０６と、予測した実行タイミングで、取得部１０４が取得した情報が閾値以内か否かを判定し、情報が閾値以内であれば、実行部１０２にライブマイグレーションを実行させ、情報が閾値以内でなければ、予測部１０６が予測した次の実行タイミングまでライブマイグレーションの実行を待機する制御部１０８と、を備える。【選択図】図１
2013182303.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンのライブマイグレーションを実行する実行手段と、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列に取得する取得手段と、
前記取得手段が取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する予測手段と、
予測した前記実行タイミングで、前記取得手段が取得した前記情報が閾値以内か否かを判定し、前記情報が前記閾値以内であれば、前記実行手段にライブマイグレーションを実行させ、前記情報が前記閾値以内でなければ、前記予測手段が予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する制御手段と、を備える仮想マシン管理システム。
【請求項２】
請求項１に記載の仮想マシン管理システムにおいて、
前記ライブマイグレーションの実行指示を受け付ける受付手段をさらに備え、
前記予測手段は、受付手段が前記実行指示を受け付けた時刻から、ライブマイグレーション実行までのデッドライン時刻までの期間を指定し、前記期間内で、提供サービスに影響が少ない前記ライブマイグレーションの前記実行タイミングを予測し、
前記制御手段は、前記受付手段が前記実行指示を受け付けてから、前記期間内で、前記予測手段が予測した前記実行タイミングまで前記実行手段による前記ライブマイグレーションの実行を待機させる仮想マシン管理システム。
【請求項３】
請求項１または２に記載の仮想マシン管理システムにおいて、
前記サービス停止時間に影響を及ぼす要因の情報は、前記ライブマイグレーションを行う仮想マシンのメモリ書き換え頻度、または、前記仮想マシンが利用可能なネットワーク帯域の情報を含む仮想マシン管理システム。
【請求項４】
請求項２または、請求項２に従属する請求項３に記載の仮想マシン管理システムにおいて、
前記ライブマイグレーションを前記期間内で実行できなかった場合、実行失敗を通知する通知手段をさらに備える仮想マシン管理システム。
【請求項５】
仮想マシンのライブマイグレーションを実行する管理装置が、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得し、
時系列に取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測し、
予測した前記実行タイミングで、取得した前記情報が閾値以内か否かを判定し、
前記情報が前記閾値以内であれば、ライブマイグレーションを実行し、
前記情報が前記閾値以内でなければ、予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する仮想マシン管理方法。
【請求項６】
請求項５に記載の仮想マシン管理方法において、
前記ライブマイグレーションの実行指示を受け付け、
前記実行指示を受け付けた時刻から、ライブマイグレーション実行までのデッドライン時刻までの期間を指定し、
前記期間内で、提供サービスに影響が少ない前記ライブマイグレーションの前記実行タイミングを予測し、
前記実行指示を受け付けてから、前記期間内で、予測した前記実行タイミングまで前記ライブマイグレーションの実行を待機する仮想マシン管理方法。
【請求項７】
請求項５または６に記載の仮想マシン管理方法において、
前記サービス停止時間に影響を及ぼす要因の情報は、前記ライブマイグレーションを行う仮想マシンのメモリ書き換え頻度、または、前記仮想マシンが利用可能なネットワーク帯域の情報を含む仮想マシン管理方法。
【請求項８】
請求項６または、請求項６に従属する請求項７に記載の仮想マシン管理方法において、
前記ライブマイグレーションを前記期間内で実行できなかった場合、実行失敗を通知する手順をさらにコンピュータに実行させる仮想マシン管理方法。
【請求項９】
仮想マシンのライブマイグレーションを実行する管理装置を実現するコンピュータに、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得する手順、
時系列に取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する手順、
予測した前記実行タイミングで、取得した前記情報が閾値以内か否かを判定する手順、
前記情報が前記閾値以内であれば、ライブマイグレーションを実行する手順、
前記情報が前記閾値以内でなければ、予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する手順を実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムにおいて、
前記ライブマイグレーションの実行指示を受け付ける手順、
前記実行指示を受け付けた時刻から、予め設定されたライブマイグレーション実行までのデッドライン時刻までの期間を指定する手順、
前記期間内で、提供サービスに影響が少ない前記ライブマイグレーションの前記実行タイミングを予測する手順、
前記実行指示を受け付けてから、前記期間内で、予測した前記実行タイミングまで前記ライブマイグレーションの実行を待機する手順をさらにコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想マシン管理システム、方法、およびプログラムに関し、特に、仮想マシンのライブマイグレーションを管理する仮想マシン管理システム、方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、ハードウェアの進歩（仮想化支援機構の標準化）により仮想化環境が非仮想化の性能に近くなってきたことに加え、サーバ仮想化ソフト（ＶＭｗａｒｅ（登録商標）、ＫＶＭ（Kernel-based Virtual Machine）等）の拡充により、サーバ仮想化環境の構築が容易になったことでサーバを仮想化する技術が注目を集めている。
【０００３】
中でもライブマイグレーションは仮想化環境固有の機能であり、非常に簡単に仮想マシンを移動することができるので、利用分野は多岐にわたる。
このような仮想化環境における仮想マシン管理装置の一例が特許文献１に記載されている。特許文献１の仮想マシン管理装置は、ライブマイグレーションを実行する前に、その必要性を物理マシンと仮想マシンの負荷情報に基づいて判断することで不要な移行を中止する構成を有している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１０８０１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ライブマイグレーションを実施する際には仮想マシン内で動作している処理は中断されないものの、仮想マシンが転送元ホストマシンで停止してから転送先ホストマシンで起動するまでの間、一時的に仮想マシンそのものが停止するため、仮想マシンが存在しない状態が発生する。これによりサービス停止時間が発生してしまう。
上述した特許文献に記載の技術においては、このライブマイグレーション実施時に発生するサービス停止時間がサービスへ与える影響を考慮していないという問題点があった。
【０００６】
本発明の目的は、上述した課題であるライブマイグレーションに起因するサービス停止時間による提供サービスへの影響が考慮されていないという問題点を解決する仮想マシン管理システム、方法、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の仮想マシン管理システムは、
仮想マシンのライブマイグレーションを実行する実行手段と、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列に取得する取得手段と、
前記取得手段が取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する予測手段と、
予測した前記実行タイミングで、前記取得手段が取得した前記情報が閾値以内か否かを判定し、前記情報が前記閾値以内であれば、前記実行手段にライブマイグレーションを実行させ、前記情報が前記閾値以内でなければ、前記予測手段が予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する制御手段と、を備える。
【０００８】
本発明の仮想マシン管理方法は、
仮想マシンのライブマイグレーションを実行する管理装置が、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得し、
時系列に取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測し、
予測した前記実行タイミングで、取得した前記情報が閾値以内か否かを判定し、
前記情報が前記閾値以内であれば、ライブマイグレーションを実行し、
前記情報が前記閾値以内でなければ、予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する。
【０００９】
本発明のコンピュータプログラムは、
仮想マシンのライブマイグレーションを実行する管理装置を実現するコンピュータに、
前記ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得する手順、
時系列に取得した前記情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する手順、
予測した前記実行タイミングで、取得した前記情報が閾値以内か否かを判定する手順、
前記情報が前記閾値以内であれば、ライブマイグレーションを実行する手順、
前記情報が前記閾値以内でなければ、予測した次の実行タイミングまで前記ライブマイグレーションの実行を待機する手順を実行させるためのものである。
【００１０】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【００１１】
また、本発明の各種の構成要素は、必ずしも個々に独立した存在である必要はなく、複数の構成要素が一個の部材として形成されていること、一つの構成要素が複数の部材で形成されていること、ある構成要素が他の構成要素の一部であること、ある構成要素の一部と他の構成要素の一部とが重複していること、等でもよい。
【００１２】
また、本発明の方法およびコンピュータプログラムには複数の手順を順番に記載してあるが、その記載の順番は複数の手順を実行する順番を限定するものではない。このため、本発明の方法およびコンピュータプログラムを実施するときには、その複数の手順の順番は内容的に支障のない範囲で変更することができる。
【００１３】
さらに、本発明の方法およびコンピュータプログラムの複数の手順は個々に相違するタイミングで実行されることに限定されない。このため、ある手順の実行中に他の手順が発生すること、ある手順の実行タイミングと他の手順の実行タイミングとの一部ないし全部が重複していること、等でもよい。
【発明の効果】
【００１４】
本発明によれば、ライブマイグレーションに起因するサービス停止時間による提供サービスへの影響を抑制する仮想マシン管理システム、方法、およびプログラムが提供される。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施の形態に係る仮想マシン管理システムの構成を示す機能ブロック図である。
【図２】本発明の実施の形態に係る管理装置を実現するコンピュータの構成を示すブロック図である。
【図３】本発明の実施の形態に係る仮想マシン管理システムの動作の一例を示すフローチャートである。
【図４】本発明の実施の形態に係る仮想マシン管理システムの構成を示す機能ブロック図である。
【図５】本発明の実施の形態に係る仮想マシン管理システムの動作の一例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、図面を用いて説明する。尚、すべての図面において、同様な構成要素には同様の符号を付し、適宜説明を省略する。
【００１７】
（第１の実施の形態）
図１は、本発明の実施の形態に係る仮想マシン管理システム１の構成を示す機能ブロック図である。
仮想マシン管理システム１は、仮想マシン２００のライブマイグレーションを管理する管理装置１００を備える。
【００１８】
本発明の実施の形態に係る仮想マシン管理システム１は、仮想マシン２００のライブマイグレーションを実行する実行部１０２と、ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列に取得する取得部１０４と、取得部１０４が取得した情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する予測部１０６と、予測した実行タイミングで、取得部１０４が取得した情報が閾値以内か否かを判定し、情報が閾値以内であれば、実行部１０２にライブマイグレーションを実行させ、情報が閾値以内でなければ、予測部１０６が予測した次の実行タイミングまでライブマイグレーションの実行を待機する制御部１０８と、を備える。
【００１９】
本実施形態において、管理装置１００は、図２に示すように、たとえば、ＣＰＵ（Central Processing Unit）１２０やメモリ１２２、ハードディスク１２４、およびネットワーク通信部１２６を備え、キーボードやマウス等の入力装置１５０やディスプレイなどの表示装置１５２やプリンタ等の出力装置（不図示）と接続されるコンピュータ１１０、またはそれらに相当する装置により実現することができる。管理装置１００は、入力装置１５０の入力を受け付ける操作受付部１２８と、表示装置１５２の表示制御を行う表示制御部１３０と、をさらに備える。管理装置１００のこれらの各要素は、バス１３４を介して互いに接続され、ＣＰＵ１２０により各要素とともに管理装置１００全体が制御される。ＣＰＵ１２０が、ハードディスク１２４に記憶されるプログラムをメモリ１２２に読み出して実行することにより、管理装置１００の図１の各ユニットの各機能を実現することができる。
また、入力装置１５０と表示装置１５２は、たとえば、タッチパネルなど一体型の装置とすることもできる。これらを組み合わせることで、コンピュータ１１０のユーザインタフェース機能を実現することができる。
【００２０】
このように、本発明の実施の形態に係る仮想マシン管理システム１の各構成要素は、ＣＰＵ、メモリ、メモリにロードされた本図の構成要素を実現するプログラム、そのプログラムを格納するハードディスクなどの記憶ユニット、ネットワーク接続用インタフェースを備える任意のコンピュータのハードウェアとソフトウェアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。以下説明する各図は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
【００２１】
また、本実施形態では、管理装置１００および仮想マシン２００は、それぞれ１台ずつ図示されているが、これに限定されない。また、仮想マシン２００は、ネットワーク３上の物理マシン上で実行されるが、図１に物理マシンは示していない。また、管理装置１００自体も仮想マシンで実現することもできる。
【００２２】
本実施形態のコンピュータプログラムは、管理装置１００を実現させるためのコンピュータ１１０に、ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得する手順、時系列に取得した情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する手順、予測した実行タイミングで、取得した情報が閾値以内か否かを判定する手順、情報が閾値以内であれば、ライブマイグレーションを実行する手順、情報が閾値以内でなければ、予測した次の実行タイミングまでライブマイグレーションの実行を待機する手順、を実行させるように記述されている。
【００２３】
本発明のコンピュータプログラムは、コンピュータ１１０で読み取り可能な記録媒体に記録されてもよい。記録媒体は特に限定されず、様々な形態のものが考えられる。また、プログラムは、記録媒体からコンピュータ１１０のメモリ１２２にロードされてもよいし、ネットワークを通じてコンピュータ１１０にダウンロードされ、メモリ１２２にロードされてもよい。
【００２４】
実行部１０２は、仮想マシン２００のライブマイグレーションを実行する。ここで、実行部１０２は、仮想マシン管理システム１の管理者などのユーザ、あるいは、アプリケーションから、仮想マシン２００のライブマイグレーションの実行指示を受け付けたとき、その仮想マシン２００のライブマイグレーションを実行する。たとえば、ユーザからの実行指示は、コンピュータ１１０の入力装置１５０などからの操作により受け付けることができる。
【００２５】
取得部１０４は、仮想マシン２００のライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因である情報を常時、または定期的に監視し、予測部１０６に情報を伝達する。本実施形態において、サービス停止時間に影響を及ぼす要因である情報は、メモリ書き換え頻度、または利用可能なネットワーク帯域の情報を含むネットワークトラフィック流量である。取得部１０４は、定期的にネットワーク３の各仮想マシン２００のメモリ書き換え頻度の情報、または、利用可能なネットワーク帯域の情報を取得し、予測部１０６に受け渡す。
【００２６】
予測部１０６は、取得部１０４からネットワークトラフィックに関する情報を受け取り、時系列に図２のメモリ１２２またはハードディスク１２４に蓄積する。さらに、予測部１０６は、この情報に基づき、統計情報を作成する。たとえば、予測部１０６は、メモリに蓄積された統計情報と新たに受信したネットワークトラフィック情報の平均値をとり統計情報の更新を行う。
【００２７】
そして、予測部１０６は、統計情報に基づき、所定期間内、たとえば、１日の中で、ネットワークトラフィックが最も低下する時刻を抽出し、ライブマイグレーションに起因するサービス停止時間がサービスに影響を与えないライブマイグレーションの実行タイミングとして決定する。そして、予測部１０６は、このようにして予測した実行タイミングを制御部１０８に通知する。
【００２８】
制御部１０８は、上述したライブマイグレーションの実行指示を受け付けた後、予測部１０６から通知された実行タイミングまで待機して、実行タイミングの時刻に実行部１０２にライブマイグレーションの実行を試みるよう指示する。実行前に、制御部１０８は、移行対象の仮想マシン２００が現在の置かれている状況を確認し、問題があれば、次回のタイミングへ実行を延期して待機する。問題なければ、実行部１０２にライブマイグレーションを実行させる。
【００２９】
本実施形態では、仮想マシン２００の状況は、取得部１０４が取得したネットワークトラフィック情報に基づいて判断する。たとえば、制御部１０８は、仮想マシン２００のメモリ書き換え頻度および利用可能なネットワーク帯域の情報と予め設定された閾値を比較する。本実施形態では、仮想マシン２００のメモリ書き換え頻度と、利用可能なネットワーク帯域との両方の情報に基づいて判断する構成としているが、これに限定されるものではない。
【００３０】
仮想マシン２００のメモリ書き換え頻度が閾値より高い場合または、利用可能なネットワーク帯域が閾値より高い場合には、ライブマイグレーションを中止すると判断し、次回のタイミングにライブマイグレーションの実行を延期して待機する。仮想マシン２００のメモリ書き換え頻度が閾値を超えず、かつ、利用可能なネットワーク帯域も閾値より高い場合を越えない場合、実行部１０２にライブマイグレーションを実行させる。
【００３１】
本発明の仮想マシン管理システム１は、ユーザが指定する任意の時間にライブマイグレーションを行う必要が無い仮想マシンにおいて好適に適用することができる。特に、本発明の仮想マシン管理システム１は、ネットワーク通信を伴うサービスにおいて有効である。ライブマイグレーションは、転送する仮想マシン２００のメモリ書き換え頻度または利用可能なネットワーク帯域に応じて実施時間が変動する。そして、このライブマイグレーションの実施時間にサービス停止時間が発生する。
このためネットワーク通信を行うサービスではネットワークトラフィック情報の監視と、その統計情報を蓄積することで、ライブマイグレーション実施に最適なタイミングを抽出し、ライブマイグレーションに起因するサービスへの影響を低減できる。
【００３２】
本実施形態において、取得部１０４が取得するネットワークトラフィック情報は、管理装置１００のコンピュータ１１０のメモリ１２２またはハードディスク１２４に時系列に記憶することができる。また、制御部１０８が判定に使用する閾値は、本システムの管理者などのユーザが、予め設定し、管理装置１００のコンピュータ１１０のメモリ１２２またはハードディスク１２４に記憶することができる。この設定は、管理装置１００のコンピュータ１１０の入力装置１５０を用いて適宜変更することもできる。
【００３３】
また、予測部１０６が予測した実行タイミングの時刻も、管理装置１００のコンピュータ１１０のメモリ１２２またはハードディスク１２４に時系列に記憶することができる。制御部１０８は、メモリに記憶された実行タイミングの時刻を参照し、コンピュータ１１０の内部時計（不図示）または外部装置（不図示）から取得した現在時刻と比較して実行タイミングか否かを判定することができる。
【００３４】
上述のような構成において、本発明の実施の形態に係る管理装置１００による仮想マシン管理方法を以下に説明する。図３は、本実施形態の仮想マシン管理システム１の管理装置１００の動作の一例を示すフローチャートである。
【００３５】
本発明の実施の形態に係る仮想マシン管理方法は、管理装置１００が、ライブマイグレーションに起因するサービス停止時間に影響を及ぼす要因の情報を時系列で取得し（ステップＳ１０１）、時系列に取得した情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測し（ステップＳ１０３）、予測した実行タイミングで、取得した前記情報が閾値以内か否かを判定し（ステップＳ１１５）、情報が閾値以内であれば（ステップＳ１１５のＹＥＳ）、ライブマイグレーションを実行し（ステップＳ１１７）、情報が閾値以内でなければ（ステップＳ１１５のＮＯ）、予測した次の実行タイミングまでライブマイグレーションの実行を待機する（ステップＳ１１１に戻る）。
【００３６】
より詳細には、本実施形態の管理装置１００において、監視処理Ｓ１００と、ライブマイグレーション実行処理Ｓ１１０の２つの手順がそれぞれ実行される。各処理は、それぞれ非同期に実行可能であり、それぞれ繰り返し実行される。
【００３７】
まず、監視処理Ｓ１００において、管理装置１００において、取得部１０４が、ネットワークトラフィック情報を取得する（ステップＳ１０１）。そして、予測部１０６が、ネットワークトラフィック情報を統計処理し、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして予測する（ステップＳ１０３）。そして、予測部１０６から制御部１０８に予測した実行タイミングの時刻を通知する（ステップＳ１０５）。監視処理Ｓ１００において、ステップＳ１０１は常時または定期的に繰り返して実行することができる。ステップＳ１０３もステップＳ１０１とは同期してまたは非同期に、常時または定期的に繰り返して実行することができる。
【００３８】
次に、ライブマイグレーション実行処理Ｓ１１０において、制御部１０８が、予測部１０６からの実行タイミングの通知を受け付けた後（ステップＳ１１１）、受け付けた実行タイミングの時刻になったとき（ステップＳ１１３のＹＥＳ）、取得部１０４が取得したネットワークトラフィック情報を取得する（ステップＳ１１５）。
【００３９】
そして、制御部１０８が、ネットワークトラフィック情報が、閾値以内か否かを判定し、閾値以内の場合は、ライブマイグレーション実行可能と判断し（ステップＳ１１７のＹＥＳ）、実行部１０２にライブマイグレーションを実行させる（ステップＳ１１９）。ネットワークトラフィック情報が閾値以内でない場合、ライブマイグレーションは実行不可と判断し（ステップＳ１１７のＮＯ）、実行を次のタイミングに延期して待機する（ステップＳ１１１に戻る）。
【００４０】
なお、図３において、ステップＳ１１１とステップＳ１１３は非同期に繰り返し実行することができる。ステップＳ１１５も他のステップと非同期に繰り返して実行することもできる。
【００４１】
以上説明したように、本発明の実施の形態の仮想マシン管理システム１によれば、ネットワークトラフィックの情報を統計的に纏めることで、所定期間内でネットワークトラフィックが最も少ない時間にライブマイグレーション実行できるので、ライブマイグレーションを起因とするサービス停止時間の影響を軽減することができる。
【００４２】
このサービス停止時間を短くする研究は行われているが、障害復旧では無いにも関わらずサービスが停止する時間が発生し、サービスへ影響を与えてしまう事態は極力避けるべきであり、特にリアルタイム性が求められるアプリケーションにおいては大きな課題となっていた。
【００４３】
また、ライブマイグレーション実行時に、仮想マシンが置かれている状況の確認を行わないと、サービス影響の有無に関わらず、ユーザの実行指示と同時にライブマイグレーションが実行され、サービスへ影響を与えてしまう可能性があった。
【００４４】
本発明では、ライブマイグレーション実行前に、状況を確認し、ライブマイグレーションに適した状況でなければ、ライブマイグレーションの実行を延期できるので、ライブマイグレーションに起因するサービス停止時間によって生じる提供サービスへの悪影響を回避できる。このようにして、本発明の実施の形態に係る仮想マシン管理システム１によれば、監視対象システムに信頼性の高いサービスの提供を実現させることができる。
【００４５】
（第２実施の形態）
図４は、本発明の実施の形態に係る仮想マシン管理システム１の構成を示す機能ブロック図である。
本発明の実施の形態に係る仮想マシン管理システム１は、上記実施の形態とは、ライブマイグレーションの実行指示を受け付け、指示を受け付けた時刻からデッドライン時刻までの期間内で、ライブマイグレーションによる提供サービスへの影響が少ないタイミングでライブマイグレーションの実行タイミングを決める点で相違する。
【００４６】
本実施形態の仮想マシン管理システム１は、仮想マシン２００のライブマイグレーションを実行する管理装置３００を備える。本実施形態の管理装置３００は、図１の上記実施形態の管理装置１００と同様な実行部１０２および取得部１０４を備えるとともに、さらに、受付部３０２と、予測部３０６と、制御部３０８と、を備える。
【００４７】
図４では、仮想マシン管理システム１の管理装置３００は、仮想マシン２００が稼働している転送元の物理マシン２１０（ＳＶ１）と、転送先の他の物理マシン２１０（ＳＶ２）と、仮想マシンのイメージファイルを共有するための共有ディスク２２０と、を備えるシステムのライブマイグレーションを実行管理する。
【００４８】
本実施形態において、受付部３０２は、ユーザまたはアプリケーションから仮想マシン２００のライブマイグレーションの実行指示を受け付ける。
予測部３０６は、受付部３０２が実行指示を受け付けた時刻から、ライブマイグレーション実行までのデッドライン時刻までの期間を指定し、その期間内で、提供サービスに影響が少ない時刻をライブマイグレーションの実行タイミングとして決定する。
制御部３０８は、受付部３０２が実行指示を受け付けてから、期間内で、予測部３０６が予測した実行タイミングまで実行部１０２によるライブマイグレーションの実行を待機させる。
【００４９】
デッドライン時刻は、たとえば、１日の中の所定の時刻であってもよいし、１ヶ月の中の所定の日時であってもよい。また、デッドライン時刻は、ライブマイグレーションの実行指示を受け付けた時刻から所定の時間範囲であってもよい。デッドライン時刻は、ユーザによって予め設定しておくことができ、メモリ１２２またはハードディスク１２４に記憶される。また、デッドライン時刻はユーザにより適宜変更することもできる。
【００５０】
たとえば、受付部３０２がアプリケーションからライブマイグレーションの実行指示を受け付ける場合、アプリケーションでは、物理マシン２１０や仮想マシン２００の負荷状況に基づいて、移行の要否を判断して指示を行っている場合が考えられる。このような場合にも、本発明の仮想マシン管理システム１では、その指示によるライブマイグレーションが提供サービスに及ぼす影響を最小限に留めることができる。
【００５１】
また、本実施形態において、管理装置３００は、さらに、指定期間内にライブマイグレーションが実行できる状況にならず、ライブマイグレーションが実行できなかった場合、実行失敗を通知する通知部（不図示）をさらに備えることができる。
【００５２】
このように構成された本実施形態の仮想マシン管理システム１の管理装置３００の動作について、以下説明する。
図５は、本実施形態の仮想マシン管理システム１の管理装置３００の動作の一例を示すフローチャートである。
本実施形態では、図３の上記実施形態の監視処理Ｓ１００と同様なステップＳ１０１を有するとともに、さらにステップＳ２０１〜ステップＳ２０９を有する監視処理Ｓ２００と、図３の上記実施形態とライブマイグレーション実行処理Ｓ１１０と同様なステップＳ１１３〜ステップＳ１１９を有するとともに、さらにステップＳ２１１〜ステップＳ２１７を有するライブマイグレーション実行処理Ｓ２１０とを含む。
【００５３】
監視処理Ｓ２００において、上記実施形態の監視処理Ｓ１００と異なり、予測部３０６による実行タイミングの予測処理（ステップＳ２０７）が、受付部３０２がライブマイグレーションの実行指示を受け付けた後（ステップＳ２０３のＹＥＳ）になる。
本実施形態では、まず、取得部１０４がネットワークトラフィック情報を取得した後（ステップＳ１０１）、予測部３０６が、ネットワークトラフィック情報の統計処理を行う（ステップＳ２０１）。
【００５４】
そして、受付部３０２が実行指示を受け付けた時（ステップＳ２０３のＹＥＳ）、実行指示を受け付けた時刻から、予めユーザが設定したデッドライン時刻までの期間を指定する（ステップＳ２０５）。そして、予測部３０６が、ステップＳ２０５で指定した期間内のネットワークトラフィックの統計処理結果に基づいて、サービスへの影響が最も少ない時刻を実行タイミングと決定する（ステップＳ２０７）。そして、予測部３０６が、実行時刻と指定期間を制御部３０８に通知する（ステップＳ２０９）。
【００５５】
次に、ライブマイグレーション実行処理Ｓ１１０において、制御部３０８が、予測部３０６から実行タイミングと指定期間の通知を受け付けた後（ステップＳ２１１）、ステップＳ１１３に進む。
【００５６】
ステップＳ１１３〜ステップＳ１１９の処理は、図３の上記実施形態と同様である。
ステップＳ１１３で実行タイミングになったにも関わらず、実行可能な状況にないと判断された場合（ステップＳ１１７のＮＯ）、さらに、制御部３０８が、現在時刻が指定期間内か否かを判定する（ステップＳ２１３）。指定期間内の場合（ステップＳ２１３のＹＥＳ）、指定期間内の次の実行タイミングの再計算を予測部３０６に要求する（ステップＳ２１５）。予測部３０６では、ステップＳ２０７を実行し、実行タイミングを再計算して、実行時刻を制御部３０８に通知する（ステップＳ２０９）。
【００５７】
一方、指定期間を過ぎてしまった場合（ステップＳ２１３のＮＯ）、実行失敗としてエラーを返し、ユーザに実行失敗を通知する（ステップＳ２１７）。ユーザは通知を受けて、実行要求時刻やデッドライン時刻を変更したり、別の仮想マシンを移行するなどの対策を講じることとなる。
【００５８】
なお、ステップＳ２０１の統計処理は、必ずしも常時行う必要はなく、たとえば、ライブマイグレーションの実行指示を受け付けた後（ステップＳ２０３のＹＥＳ）、指定期間内の情報のみを用いて統計処理を行うようにしてもよい。
【００５９】
以上説明したように、本発明の実施の形態に係る仮想マシン管理システム１によれば、上記実施形態と同様な効果を奏するとともに、さらに、実行指示を受け付けてからデッドライン時刻までの所定期間内で実行タイミングを予測するので、予測処理の負荷を減らすことができ、効率がよい。また、予めライブマイグレーションを避けたい時刻が分かっている場合に、提供サービスに影響が最も出ない時間帯に容易に合わせることができ、特に有効である。
【００６０】
以上、図面を参照して本発明の実施形態について述べたが、これらは本発明の例示であり、上記以外の様々な構成を採用することもできる。
たとえば、上記実施形態で、ライブマイグレーション実行指示を受け付けた時刻から、デッドライン時刻までの期間を指定する構成としたが、実行指示として、ライブマイグレーション実行期間そのものを受け付け、受け付けた期間内で提供サービスに影響の少ない時刻を実行タイミングとしてもよい。
【００６１】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００６２】
１  仮想マシン管理システム
３  ネットワーク
１００  管理装置
１０２  実行部
１０４  取得部
１０６  予測部
１０８  制御部
１１０  コンピュータ
１２０  ＣＰＵ
１２２  メモリ
１２４  ハードディスク
１２６  ネットワーク通信部
１２８  操作受付部
１３０  表示制御部
１３４  バス
１５０  入力装置
１５２  表示装置
２００  仮想マシン
２１０  物理マシン
２２０  共有ディスク
３００  管理装置
３０２  受付部
３０６  予測部
３０８  制御部
【図１】
2013182303.tif 000003
【図２】
2013182303.tif 000004
【図３】
2013182303.tif 000005
【図４】
2013182303.tif 000006
【図５】
2013182303.tif 000007