JP2013246532A - 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム - Google Patents

情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム Download PDF

Info

Publication number
JP2013246532A
JP2013246532A JP2012118157A JP2012118157A JP2013246532A JP 2013246532 A JP2013246532 A JP 2013246532A JP 2012118157 A JP2012118157 A JP 2012118157A JP 2012118157 A JP2012118157 A JP 2012118157A JP 2013246532 A JP2013246532 A JP 2013246532A
Authority
JP
Japan
Prior art keywords
migration
physical
cost
machine
virtual machine
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
JP2012118157A
Other languages
English (en)
Other versions
JP5935505B2 (ja
Inventor
Kazuya Yasuda
和也 安田
Yoji Nomura
洋治 野村
Takeshi Hatanaka
豪 畑中
Takuya Nitta
拓哉 新田
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 JP2012118157A priority Critical patent/JP5935505B2/ja
Publication of JP2013246532A publication Critical patent/JP2013246532A/ja
Application granted granted Critical
Publication of JP5935505B2 publication Critical patent/JP5935505B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】一側面によれば、仮想マシンを移行する際の優先順位を物理マシン毎に算出して、仮想マシンを移行することが可能な情報処理装置を提供する。
【解決手段】物理リソース監視部34は、物理マシン1の監視結果に基づいて、仮想マシン11を移行させた場合における、移行先の物理マシン1における予測物理リソース状態に基づいて定まる物理コストを算出する。ネットワーク負荷監視部33は、ネットワーク2の監視結果に基づいて、仮想マシン11を移行させた場合における、ネットワーク2における予測通信状態に基づいて定まるNWコストを算出する。移行制御部31は、物理コストとNWコストとに基づいて移行コストを算出し、移行コストに基づいて移行対象の仮想マシン11を決定する。
【選択図】図2

Description

本発明は、情報処理装置、仮想マシン制御方法、仮想マシン制御プログラムに関する。
仮想マシンシステム100において、複数の物理マシン101上で複数の仮想マシン111が動作する。例えば、図20に示すように、3個の物理マシン101上で9個の仮想マシン111が動作しているとする。この時、左端の物理マシン101上では4個の仮想マシン111が動作しているのに対して、右端の物理マシン101上では2個の仮想マシン111しか動作していない。従って、3個の物理マシン101において、物理マシン101を構成するメモリやCPU等の物理リソースの使用率が不均等になっている。
そこで、1個の仮想マシン111を、矢印で示すように、左端の物理マシン101から右端の物理マシン101へ移行させる。これにより、3個の物理マシン101の負荷をほぼ等しくして、物理マシン101を構成するメモリやCPU等の物理リソースの使用率を、3個の物理マシン101においてほぼ均等にすることができる。
なお、複数の物理サーバで仮想マシンが動作する仮想化環境において仮想マシン間の通信量を測定する通信量測定手段と、通信量測定手段が測定した通信量に基づいて、所定の仮想マシンを動作させる物理サーバを異なる物理サーバに変更した場合のネットワーク使用率の期待値を算出する期待値算出手段と、期待値算出手段が算出した期待値に基づいて、仮想マシンを動作させる物理サーバの変更が妥当か否かを判定する妥当性判定手段と、妥当性判定手段の判定結果に基づいて、仮想マシンを動作させる物理サーバを変更する変更手段とを含むことが提案されている。
また、異なる物理マシンで実行されている2つの仮想マシン間の通信量を取得して、この通信量が通信量閾値を超えた回数をカウントし、前記した2つの仮想マシン間の双方向で、この回数が規定値を超えたとき、これら2つの仮想マシンが、同じ物理マシンで実行されるよう、前記物理マシンに前記2つの仮想マシンのうち、少なくとも1つの配置を決定し、前記決定に従って前記仮想マシンを移動させることが提案されている。
また、ネットワーク状況情報取得部は、仮想マシンの移動先候補となる物理マシンごとに算出された、仮想マシンの移動時に必要となる、仮想マシンシステムのネットワークにおける経路の再設定コストの情報を、再設定コスト算出部から取得し、取得された再設定コストの情報をネットワーク状況情報記憶部に記憶し、VM移動先決定部は、リソース状況情報記憶部に記憶されたリソース状況情報と、ネットワーク状況情報記憶部に記憶された再設定コストの情報とを用いて、仮想マシンの移動先候補となる各物理マシンの評価を行い、VM移動先決定部は、最も評価が高い物理マシンを仮想マシンの移動先に決定することが提案されている。
特開2011−180889号公報 特開2010−140134号公報 特開2011−28408号公報
しかし、前述の従来の仮想マシンシステムでは、異なる物理マシン上の2個の仮想マシンの間における通信量が閾値を超えた回数が規定値を超えた場合に、前記2個の仮想マシンが同一の物理マシンで実行されるようにする。しかし、実際には、前記2個の仮想マシンを同一の物理マシン上へ移動することができない場合がある。この場合、前述の従来の仮想マシンシステムでは、同一の物理マシン以外の物理マシンへの仮想マシンの移動は考慮されていないので、同一の物理マシン以外の物理マシンへの移動の優先順位が得られない。従って、結果として、同一の物理マシン以外の物理マシンへ、仮想マシンを移動させることができない場合が生じる。
また、前述の他の従来の仮想マシンシステムでは、仮想マシンの移動時に必要となる仮想マシンシステムのネットワークにおける経路の再設定コストの情報と、リソース状況情報とを用いて、移動先候補となる各物理マシンの中で評価が高い物理マシンを仮想マシンの移動先に決定する。換言すれば、仮想マシンシステムがデータ領域を物理マシン本体に持たないので、仮想マシンの移動時にネットワーク上のストレージへ頻繁にアクセスすることが考慮されているので、当該アクセスの際の予め定められた単位でのネットワーク使用量の平均化を測ることはできる。しかし、前述の他の従来の仮想マシンシステムでは、仮想マシンシステムにおける通常の通信の最適化には対応することができず、また、ネットワーク負荷が発生した場合にも対応することができない。
本発明は、一側面によれば、物理マシン間で仮想マシンを移行する際の優先順位を物理マシン毎に算出して、物理マシン間で仮想マシンを移行することが可能な情報処理装置を提供することを目的とする。
開示される情報処理装置は、一側面によれば、複数の仮想マシンが動作可能な複数の物理マシンと、複数の物理マシンを接続するネットワークと、物理リソース監視部と、ネットワーク負荷監視部と、移行制御部と、移行対象の仮想マシンを移行させる移行実施部とを含む。物理リソース監視部は、複数の物理マシンを監視し、監視の結果に基づいて、複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、移行先の物理マシンにおける予測物理リソース状態に基づいて定まる物理コストを算出する。ネットワーク負荷監視部は、ネットワークを監視し、監視の結果に基づいて、複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、ネットワークにおける予測通信状態に基づいて定まるネットワークコストを算出する。移行制御部は、複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、物理コストとネットワークコストとに基づいて定まる移行コストを算出し、複数の仮想マシンの各々についての移行コストに基づいて移行対象の仮想マシンを決定する。
開示される情報処理装置は、一側面によれば、物理マシン間で仮想マシンを移行する際の優先順位を物理マシン毎に算出して、物理マシン間で仮想マシンを移行することができる。
情報処理装置の構成の一例を示す図である。 情報処理装置の構成の一例を示す図である。 監視サーバの構成の一例を示す図である。 物理コスト表の説明図である。 物理コスト表の説明図である。 影響度表の説明図である。 ネットワークコスト表の説明図である。 ネットワークコスト表の説明図である。 影響度表の更新の説明図である。 移行コスト表の説明図である。 移行対象の仮想マシンの決定の説明図である。 移行対象の仮想マシンの決定の説明図である。 移行閾値の説明図である。 移行閾値の説明図である。 仮想マシンの移行処理フローチャートである。 仮想マシンの移行処理フローチャートである。 仮想マシンの移行処理の説明図である。 仮想マシンの移行処理フローチャートである。 仮想マシンの移行処理フローチャートである。 仮想マシンの移行の説明図である。
図1は、情報処理装置の構成の一例を示す図である。
情報処理装置は、仮想マシンシステムであって、複数の物理マシン1と、ネットワーク2と、監視サーバ3と、ネットワーク4と、ネットワーク5とを含む。ネットワーク2は、複数の物理マシン1の間を相互に接続する。監視サーバ3は、ネットワーク4を介して複数の物理マシン1を監視し、ネットワーク5を介してネットワーク2を監視する。
物理マシン1は、その上で仮想マシン11が動作するホストマシンであり、例えば物理CPUである。物理マシン1上で、仮想マシン11が動作する。仮想マシン11は、物理マシン1上で動作する論理的なマシンであり、図1等において、VMと表記される。各々の物理マシン1上で、複数の仮想マシン11が動作可能とされる。各々の物理マシン1上で動作する仮想マシン11の数は、図1に示すように、異なっていても良い。
ネットワーク2は、例えば、LAN(Local Area Network)であり、ツリー状に接続された複数のネットワークスイッチ21を含む。複数の物理マシン1の間を相互に接続するためのネットワーク2の構成は、ツリー構造に限られず、ネットワーク2として種々の構造のネットワークを用いることができる。最下層のネットワークスイッチ21に接続される物理マシン1の数は2個に限られない。
ネットワーク4及びネットワーク5は、各々、例えば、LAN(Local Area Network)であり、ネットワーク2とは別のネットワークである。ネットワーク4及びネットワーク5として、ネットワーク2を用いるようにしても良い。ネットワーク4は、監視サーバ3と各々の物理マシン1との間を接続するが、図1において、監視サーバ3と1個の物理マシン1との間のネットワーク4についてのみ示している。ネットワーク5は、監視サーバ3と各々のネットワークスイッチ21との間を接続するが、図1において、監視サーバ3と1個のネットワークスイッチ21との間のネットワーク5についてのみ示している。
図2は、情報処理装置の構成の一例を示す図である。
物理マシン1は、複数の仮想マシン11と、ハイパーバイザー14と、LAN制御部17及び18とを含む。図2において、LAN制御部17及び18はLANと表記される。仮想マシン11は、アプリケーション12と、仮想OS(オペレーティングシステム)13とを含む。アプリケーション12は、予め定められた処理を実行するアプリケーションプログラムである。ハイパーバイザー14は、負荷計測部15と、情報格納部16とを含む。複数の物理マシン1は、例えば相互に同一の構成を有する。複数の仮想マシン11は、例えば相互に同一の構成を有する。
物理マシン1において、ハイパーバイザー14は、仮想マシン11を実現する仮想化ソフトウェアであり、物理マシン1のOS上で動作する、換言すれば、物理マシン1のOS上で実行される。ハイパーバイザー14上で、仮想マシン11のOSである仮想OS13が動作することにより、仮想マシン11が実現される。仮想OS13上でアプリケーション12が動作することにより、アプリケーション12が、予め定められた処理を実行する。
ハイパーバイザー14において、負荷計測部15は、自己の属する物理マシン1に含まれる物理リソースの負荷を計測し、計測した結果を物理リソース情報として情報格納部16に格納する。ハイパーバイザー14は、物理リソース監視部34から物理リソース情報の取得要求を受信すると、情報格納部16に格納した物理リソース情報を読み出し、読み出した物理リソース情報を物理リソース監視部34に送信する。
LAN制御部17は、送受信部であって、ネットワーク4を介して、監視サーバ3のLAN制御部36に接続される。これにより、物理マシン1は監視サーバ3との間で通信を行う。例えば、LAN制御部17は、ネットワーク4を介して、監視サーバ3のLAN制御部36から受信した物理リソース情報の取得要求をハイパーバイザー14に送り、ハイパーバイザー14から依頼された物理リソース情報を監視サーバ3のLAN制御部36に送信する。
LAN制御部18は、送受信部であって、ネットワーク2に接続され、ネットワーク2を介して、他の物理マシン1のLAN制御部18に接続される。LAN制御部18は、予め定められた1個のネットワークスイッチ21に接続され、前記1個のネットワークスイッチ21を介して、他のネットワークスイッチ21又は物理マシン1に接続される。従って、LAN制御部18は、1個又は複数個のネットワークスイッチ21を介して、他の物理マシン1に接続される。これにより、物理マシン1は、他の物理マシン1との間で通信を行う。
ネットワークスイッチ21は、自己における通信の状態を記録し、記録した結果をネットワーク情報として保持する。ネットワークスイッチ21は、ネットワーク負荷監視部33からネットワーク情報の取得要求を受信すると、保持したネットワーク情報をネットワーク負荷監視部33に送信する。
ネットワークスイッチ21は、監視サーバ3との間で通信を行う。例えば、ネットワークスイッチ21は、ネットワーク5を介して、監視サーバ3のLAN制御部37から受信したネットワーク情報の取得要求に応じて、要求されたネットワーク情報を監視サーバ3のLAN制御部37に送信する。
監視サーバ3は、移行制御部31と、移行実施部32と、ネットワーク負荷監視部33と、物理リソース監視部34と、OS35と、LAN制御部36及び37とを含む。OS35は監視サーバ3のOSである。移行制御部31、移行実施部32、ネットワーク負荷監視部33、物理リソース監視部34がOS35上で動作する。監視サーバ3の構成については、図3を参照して説明する。
LAN制御部36は、送受信部であって、ネットワーク4を介して、各々の物理マシン1のLAN制御部17に接続される。これにより、監視サーバ3は物理マシン1の各々との間で通信を行う。例えば、LAN制御部36は、ネットワーク4を介して、物理マシン1のLAN制御部17に物理リソース情報の取得要求を送信し、物理リソース情報を物理マシン1のLAN制御部17から受信する。
LAN制御部37は、送受信部であって、ネットワーク5を介して、ネットワークスイッチ21の各々に接続される。LAN制御部37は、これにより、監視サーバ3はネットワークスイッチ21の各々との間で通信を行う。例えば、LAN制御部37は、ネットワーク5を介して、ネットワークスイッチ21にネットワーク情報の取得要求を送信し、ネットワーク情報をネットワークスイッチ21から受信する。
図3は、主として、監視サーバの構成の一例を示す図である。
物理リソース監視部34は、複数の物理マシン1を監視する。例えば、物理リソース監視部34は、予め定められた第1の時間間隔で、LAN制御部36を介して、複数の物理マシン1の各々に物理リソース情報の取得要求を送信する。これにより、物理リソース監視部34は、複数の物理マシン1の各々から物理リソース情報を取得する。
物理リソース監視部34は、複数の物理マシン1の監視の結果に基づいて、換言すれば、物理リソース情報に基づいて、複数の仮想マシン11の各々について、物理コストを算出する。物理コストは、当該仮想マシン11を移行元の物理マシン1から移行先の物理マシン1に移行させた場合における、移行先の物理マシン1における予測物理リソース状態に基づいて定まる値である。移行元の物理マシン1は、処理対象の仮想マシン11が現在動作している物理マシン1である。移行先の物理マシン1は、処理対象の仮想マシン11が移行する場合における移行先である。
物理コストは、基本的には、予め定められた第1の時間間隔で算出される。これにより、物理リソース監視部34は、複数の仮想マシン11の各々についての物理コストを格納する物理コスト表38を生成し、更新する。
ここで、物理リソース情報について説明する。物理リソース情報は、例えば、「物理マシン1のリソース使用状況」「仮想マシン11のリソース使用状況」「仮想マシン11の配置先情報」を含む。
物理マシン1のリソース使用状況は、各々の物理マシン1のCPU使用量やメモリ使用量であり、各々の物理マシン1の負荷計測部15により生成され、各々の物理マシン1の情報格納部16に格納されている。仮想マシン11のリソース使用状況は、各々の仮想マシン11のCPU使用量やメモリ使用量であり、各々の仮想マシン11が動作している物理マシン1の負荷計測部15により生成され、各々の仮想マシン11が動作している物理マシン1の情報格納部16に格納されている。仮想マシン11の配置先情報は、各々の物理マシン上で動作している仮想マシン11を示す情報であり、各々の物理マシン1の負荷計測部15により生成され、各々の物理マシン1の情報格納部16に格納されている。従って、物理リソース監視部34は、物理リソース情報を、複数の物理マシン1の各々から取得することができる。
図4は、物理コスト表の説明図である。
図4(A)は、仮想マシン11のリソース使用状況と、仮想マシン11の配置先情報とをまとめて表形式で示している。換言すれば、図4(A)は、仮想マシン11のリソース使用状況、換言すれば、各々の仮想マシン11のCPU使用量やメモリ使用量と、仮想マシン11の配置先情報とを示す。例えば、仮想マシンAについて、CPU使用量は700MHzであり、メモリ使用量は10000Mバイトであり、物理マシン#2上で動作していることが、物理リソース情報として得られる。
なお、以下の説明において、複数の物理マシン1の各々を区別する場合には、「物理マシン#1」等という。また、例えば「物理マシン#1」を図示する場合には、該当する数字を丸で囲んだ「丸付き数字」で示す。複数の仮想マシン11の各々を区別する場合には、「仮想マシンA」等という。
図4(B)は、物理マシン1のリソース使用状況、換言すれば、各々の物理マシン1のCPU使用量やメモリ使用量を示す。例えば、物理マシン#1について、合計CPU使用量は1200MHzであり、CPU全体容量は5000MHzであり、合計メモリ使用量は30000Mバイトであり、メモリ全体容量は48000Mバイトであることが、物理リソース情報として得られる。
例えば、物理マシン#2上で動作している仮想マシンAを、物理マシン#1上に移行するとする。この場合、物理マシン#1における現在のメモリ使用量「30000Mバイト」に、新たに増加する仮想マシンAのメモリ使用量「10000Mバイト」を加算した値が新たなメモリ使用量である。従って、物理マシン#1への移行後の仮想マシンAについてのメモリ使用率は、図4(C)に示すように、83%となる。同様にして、物理マシン#1への移行後の仮想マシンAについてのCPU使用率は、図4(C)に示すように、38%となる。
図3に戻って、物理リソース監視部34は、取得した物理リソース情報に基づいて、「物理リソース枯渇情報」「各々の物理リソースの使用率のコスト」を生成する。
物理リソース枯渇情報は、以下のようにして得られる。物理マシン1のリソース使用状況に基づいて、CPU使用率及びメモリ使用率が算出される。そして、算出されたCPU使用率及びメモリ使用率が、各々、CPU使用率閾値及びメモリ使用率閾値を超えた回数をカウントする。これにより、物理リソース枯渇情報が得られる。CPU使用率閾値及びメモリ使用率閾値は、各々、予め定められる。物理リソース枯渇情報は、第1の時間間隔で、例えば、物理マシン1のリソース使用状況の取得の都度に得られる。
各々の物理リソースの使用率のコストは、算出したCPU使用率及びメモリ使用率を、予め定められたコストに変換することにより得られる。CPU使用率に対応するコストは予め定められ、例えば、CPU使用率が30%以下はコスト「0」とされる。メモリ使用率についても同様である。各々の物理リソースの使用率のコストは、第1の時間間隔で、例えば、CPU使用率及びメモリ使用率の算出の都度に得られる。
図5は、物理コスト表の説明図である。
図5(A)は、CPU使用率及びメモリ使用率を使用率のコストに変換するための変換表である。変換表は、実際には、保持する必要はなく、演算により変換するようにしても良い。変換表の段階の数は5段階であるが、これに限られない。変換表は、仮想マシンシステムの運用中に更新するようにしても良い。
例えば、物理マシン#1への移行後の仮想マシンAについてのメモリ使用率「83%」はコスト「10」に相当する。物理マシン#1への移行後の仮想マシンAについてのCPU使用率「38%」はコスト「1」に相当する。従って、物理マシン#1への移行後の仮想マシンAについての物理コストは、図5(B)に示すように、「11」となる。
図5(C)は、物理コスト表38の一例を示す。物理コスト表38は、複数の仮想マシン11の各々について、当該仮想マシン11を移行元の物理マシン1から移行先の物理マシン1に移行した場合の物理コストを格納する。移行元の物理マシン1は、当該仮想マシン11が現在動作している物理マシン1である。また、物理コスト表38は、「物」の欄に示すように、移行元の物理マシン1を格納する。
例えば、物理コスト表38において、仮想マシンAの移行元の物理マシン1は、物理マシン#2である。仮想マシンAを、移行元の物理マシン#2から移行先の物理マシン#1へ移行した場合において、移行後の物理マシン#1における物理コストは「11」である。仮想マシンAを他の物理マシン1に移行した場合の物理コストも、同様にして求められる。他の仮想マシン11を移行した物理コストも、同様にして求められる。
図3に戻って、ネットワーク負荷監視部33は、ネットワーク2を監視する。例えば、ネットワーク負荷監視部33は、LAN制御部36を介して、ネットワーク2から、換言すれば、ネットワークスイッチ21の各々から、逐次ネットワーク情報を取得する。
ネットワーク負荷監視部33は、ネットワーク2の監視の結果に基づいて、換言すれば、逐次取得したネットワーク情報に基づいて、複数の仮想マシン11の各々について、予め定められた第1の時間間隔で、ネットワークコストを算出する。なお、以下の説明において、ネットワークコストをNWコストということとする。NWコストは、当該仮想マシン11を移行元の物理マシン1から移行先の物理マシン1に移行させた場合における、ネットワーク2における予測通信状態に基づいて定まる値である。
NWコストは、基本的には、第2の時間間隔で算出される。これにより、ネットワーク負荷監視部33は、複数の仮想マシン11の各々についてのNWコストを格納するネットワークコスト表40を生成し、更新する。なお、以下の説明において、ネットワークコスト表40をNWコスト表ということとする。NWコストの算出において、ネットワーク負荷監視部33は影響度表39を用いる。影響度表39は、例えば予めネットワーク負荷監視部33に備えられる。
図6は、影響度表の説明図である。
図6(A)は、物理マシン1とネットワークスイッチ21との接続を示す。例えば、通信元の物理マシン1が物理マシン#1であり、通信先の物理マシン1が物理マシン#1であるとする。この場合、ネットワークスイッチ21を介することなく、換言すれば、0個のネットワークスイッチ21を介して、物理マシン#1の内部での通信が可能である。従って、通信元の物理マシン#1と通信先の物理マシン#1との間に存在するネットワークスイッチ21の数は「0」である。
ネットワークスイッチ21の数をホップ数ということとする。通信元の物理マシン1と通信先の物理マシン1との間の通信時間は、概略、経由するネットワークスイッチ21の数に依存して定まる。従って、ホップ数は、通信元の物理マシン1と通信先の物理マシン1との間のおよその通信時間、換言すれば、通信のしやすさを表すパラメータである。
また、通信元の物理マシン1が物理マシン#1であり、通信先の物理マシン1が物理マシン#2であるとする。この場合、通信元の物理マシン#1と通信先の物理マシン#2との間のホップ数は「1」である。同様にして、複数の物理マシン1の各々の組み合わせについて、通信元の物理マシン1と通信先の物理マシン1との間のホップ数を予め知ることができる。
図6(B)は、影響度表39を示す。影響度表39は、複数の物理マシン1の各々の組み合わせについて、通信元の物理マシン1と通信先の物理マシン1との間に存在するホップ数を格納する。従って、影響度表39は、複数の物理マシン1の各々の組み合わせについて、通信元の物理マシン1と通信先の物理マシン1との間の通信のしやすさを表すパラメータを格納する。
前述したように、ネットワーク2の構成はツリー状に限られない。従って、ホップ数に代えて、通信のしやすさを表すパラメータとして、通信元の物理マシン1と通信先の物理マシン1との間の通信時間を用いるようにしても良い。通信時間は、例えば経験により又は実測により得られる。通信時間は、例えばホップ数のように、段階的に数値化、換言すれば、量子化される。
図3に戻って、ネットワーク負荷監視部33は、ネットワーク情報に基づいて、ネットワーク2における異常な負荷であるネットワーク負荷を検出する。ネットワーク負荷監視部33は、ネットワーク負荷の発生を検出すると、検出したネットワーク負荷に基づいて、影響度表39を更新する。これにより、ネットワーク負荷を影響度表39を介してネットワークに反映させることができる。
ここで、ネットワーク情報について説明する。ネットワーク情報は、各々のネットワークスイッチ21における通信量であり、ネットワーク負荷監視部33が各々のネットワークスイッチ21から取得する。例えば、ネットワークスイッチ21に設けたミラーポートを、ネットワーク5を介して、監視サーバ3に接続する。これにより、ネットワーク負荷監視部33は、各々のネットワークスイッチ21における通信量、換言すれば、ネットワーク情報を得ることができる。通信量は、例えばネットワークスイッチ21を通過するパケットの数として得られる。
ネットワーク負荷監視部33は、取得したネットワーク情報に基づいて、「通信傾向情報」「通信傾向の強い仮想マシンの情報」「ネットワーク負荷発生情報」を生成する。
通信傾向情報は、通信量が通信閾値を超えた場合における、送信元の仮想マシン11と送信先の仮想マシン11とを示す情報である。通信傾向情報は、前述したように、パケットを監視することにより、通信量が通信閾値を超える都度に得られる。通信閾値は予め定められる。
通信傾向の強い仮想マシン11の情報は、予め定められた期間内において、通信傾向情報として取得された送信元の仮想マシン11及び送信先の仮想マシン11の一覧である。通信傾向の強い仮想マシン11の情報は、前述したように、パケットを監視することにより得られる。予め定められた期間は、例えば、第2の時間間隔と同一である。予め定められた期間を短くすることにより、ネットワーク負荷を確実に検出してNWコストに反映することができる。
ネットワーク負荷発生情報は、予め定められた期間内において、ネットワーク情報として取得された通信量が通信閾値を超えた場合に、通信閾値を超えた回数をカウントする。例えば、通信閾値を超えた回数がネットワーク負荷閾値を超えた場合に、ネットワーク負荷発生情報が得られる。通信閾値及びネットワーク負荷閾値は予め定められる。
図7は、NWコスト表の説明図である。
図7(A)は、物理マシン1と仮想マシン11との関係を示す。例えば、仮想マシンAが物理マシン#1上で動作し、仮想マシンDが物理マシン#4上で動作し、仮想マシンEが物理マシン#2上で動作しているとする。
図7(B)は、通信元の仮想マシン11と通信先の仮想マシン11との関係、換言すれば、通信傾向の強い仮想マシン11の情報を示す。例えば、仮想マシンAについて、通信傾向の強い仮想マシン11の情報として、仮想マシンD及びEが得られたとする。
図8は、NWコスト表の説明図である。
図8(A)は、仮想マシンAのNWコストの算出について示す。仮想マシンAは、仮想マシンD及びEとの間で通信傾向が強い。そこで、物理マシン#1上で動作する仮想マシンAを、仮想マシンDが動作する物理マシン#4上に移行させる場合について、NWコストを求める。仮想マシンAは物理マシン#4上で動作するので、影響度表39から、図8(A)に示すように、物理マシン#1及び物理マシン#2との間の通信のしやすさは「3」であり、物理マシン#3との間の通信のしやすさは「1」であり、物理マシン#4との間の通信のしやすさは「0」であることが求まる。これが、仮想マシンAの仮想マシンDに対するNWコストである。
同様にして、物理マシン#1上で動作する仮想マシンAを、仮想マシンEが動作する物理マシン#2上に移行させる場合についても、図8(A)に示すように、求めることができる。これが、仮想マシンAの仮想マシンEに対するNWコストである。
次に、仮想マシンAの仮想マシンDに対するNWコストと、仮想マシンAの仮想マシンEに対するNWコストとを合計することにより、仮想マシンAのNWコストが算出される。これにより、仮想マシンAを仮想マシンDが動作する物理マシン#4又は仮想マシンEが動作する物理マシン#2上に移行させる場合についてのNWコストが求まる。
他の仮想マシンB等についても、同様にして、NWコストが求まる。これにより、図8(B)に示すように、NWコスト表40が生成される。NWコスト表40は、複数の仮想マシン11の各々について、当該仮想マシン11を移行元の物理マシン1から移行先の物理マシン1に移行した場合の物理コストを格納する。移行元の物理マシン1は、前述したように、当該仮想マシン11が現在動作している物理マシン1である。
図9は、影響度表の更新の説明図である。
図9(A)は、ネットワーク負荷の発生について示す。ネットワーク負荷監視部33が、ネットワーク2において、例えば図9(A)に示すネットワークの部分Xでネットワーク負荷の発生を検出したとする。ネットワークの部分Xは、通信の負荷が集中している部分であり、例えば2個のネットワークスイッチ21に挟まれた区間である。この場合、ネットワーク負荷監視部33は、ネットワーク負荷の発生を検出すると、ネットワーク負荷の発生を反映するように影響度表39を更新する。更新された影響度表39を用いてNWコストを再度求めることにより、ネットワーク負荷の発生をNWコストに反映させることができる。
ネットワークの部分Xを経由する通信は、物理マシン#3又は#4が他の物理マシン#1、#2、#5〜#8との間で行う通信である。そこで、影響度表39において、ネットワークの部分Xを経由する通信に対して、予め定められた値を加算する。これにより、図9(B)に示す影響度表39を得る。
例えば、図6(B)において、通信元の物理マシン1が物理マシン#3又は#4である通信に対して、図9(B)に示すように、ホップ数「5」を加算する。但し、物理マシン#3と物理マシン#4との間の通信については、ネットワークの部分Xを経由しないので、ホップ数「5」は加算されない。また、通信元の物理マシン1が物理マシン#1、#2、#5〜#8である通信に対して、図9(B)に示すように、ホップ数「5」を加算する。但し、物理マシン#1と物理マシン#2との間の通信、及び、物理マシン#5〜#8の間の通信については、ホップ数「5」は加算されない。
なお、加算するホップ数の値は、5以外であっても良く、また、ネットワーク負荷の程度に応じて変動するようにしても良い。また、ホップ数に代えて他の通信のしやすさを表すパラメータを用いる場合には、加算する値を適宜変更するようにしても良い。
図3に戻って、移行制御部31は、第3の時間間隔で、移行対象の仮想マシン11を決定する。従って、移行コスト表41は第3の時間間隔で定期的に更新される。これにより、物理リソースの使用率を平均化し、ネットワーク負荷を減少させることができる。
第3の時間間隔は、第1の時間間隔及び第2の時間間隔より長くされる。これは、物理コスト及びネットワークコストの算出は仮想マシン11の移行に直結するので、第3の時間間隔が短いと、仮想マシン11の移行の負荷が大きくなることを防止するためである。なお、第1の時間間隔と第2の時間間隔とは、等しくても良く、異なっていても良い。
また、移行制御部31は、複数の物理マシン1のいずれかにおける物理リソースの枯渇時に、移行対象の仮想マシン11を決定する。従って、移行コスト表41は、定期的に更新される他に、物理リソースの枯渇時に、物理リソースの枯渇をトリガとして、更新される。これにより、物理リソースの枯渇を早期に解消することができる。
また、移行制御部31は、ネットワーク2におけるネットワーク負荷の発生時に、移行対象の仮想マシン11を決定する。従って、移行コスト表41は、定期的に更新される他に、ネットワーク2におけるネットワーク負荷の発生時に、ネットワーク2におけるネットワーク負荷の発生をトリガとして、更新される。これにより、ネットワーク負荷を早期に解消することができる。
移行制御部31は、第3の時間間隔で、複数の仮想マシン11の各々について、移行コストを算出する。移行コストは、当該仮想マシン11を移行元の物理マシン1から移行先の物理マシン1に移行させた場合における、物理コストとNWコストとに基づいて定まる。実際には、移行制御部31は、物理コスト表38の物理コストとNWコスト表40のNWコストとに基づいて移行コストを算出し、移行コスト表41を生成する。移行コスト表41は、複数の仮想マシン11の各々についての移行コストを格納する。
図10(A)は、物理コスト表38の物理コストとNWコスト表40のNWコストとによる移行コストの算出について示す。移行コストは、基本的には、図10(A)に示すように、物理コスト表38の物理コストと、これに対応するNWコスト表40のNWコストとを加算することにより得られる。
ここで、移行制御部31は、物理コストに予め定められた第1の係数を乗算した値と、NWコストに予め定められた第2の係数を乗算した値とを加算することにより、移行コストを算出する。第1の係数及び第2の係数は、経験的に求めることができ、例えば予め定められた固定の値とされる。第1の係数及び第2の係数は、例えば、物理リソースの枯渇の発生の回数と、ネットワーク2におけるネットワーク負荷の発生の回数とに基づいて変動させるようにしても良い。
例えば、図11(A)に示すように、物理コストに第1の係数nを乗算した値と、NWコストに第2の係数mを乗算した値とを加算することにより、移行コストを算出する。nの値は例えば「1」とされ、mの値は例えば「4」とされる。例えば、仮想マシンAの物理マシン#1への移行について見ると、物理コスト「11」に第1の係数「1」を乗算し、NWコスト「3」に第2の係数「4」を乗算することにより、物理マシン#1への移行コスト「23」が得られる。
n及びmの値は、例えば経験的に定めることができる。nの値は「1」に限られず、mの値は「4」に限られない。n及びmの値を「1」にすることにより、物理コストとNWコストとを均等に加算するようにしても良い。nの値又はmの値を「0」にすることにより、物理コストとNWコストのいずれか一方のみに基づいて移行コストを求めるようにしても良い。また、n及びmの値を動的に変更するようにしても良い。この場合、例えば物理リソースの枯渇の発生の回数とネットワーク負荷の派生の回数とを記録し、両者の比に応じてn及びmの値を定めるようにしても良い。
図3に戻って、移行制御部31は、複数の仮想マシン11の各々についての移行コストに基づいて、移行対象の仮想マシン11を決定する。実際には、移行制御部31は、移行コスト表41に基づいて、移行対象の仮想マシン11を決定する。
具体的には、移行制御部31は、複数の仮想マシン11の各々について、移行メリットPを算出する。移行メリットPは、移行元の物理マシン1についての移行コストから、当該仮想マシン11についての最小の移行コストを引くことにより、算出される。そして、移行制御部31は、移行メリットPの中の最大の移行メリットPを有する仮想マシン11を抽出し、最大の移行メリットPと移行閾値Tとを比較する。最大の移行メリットPが移行閾値Tより大きい場合に、移行制御部31は、抽出した仮想マシン11を移行対象の仮想マシン11として決定する。
移行制御部31は、移行対象の仮想マシン11を、移行実施部32に通知する。移行実施部32は、移行対象の仮想マシン11の通知を受け取ると、移行対象の仮想マシン11を、移行元の物理マシン1から移行先の物理マシン1に移行させる。
図11(B)は、移行メリットPについて示す。移行メリットPは、移行についての優先度を表す。移行メリットPが大きいほど、移行が優先される。移行メリットPは、仮想マシン11の各々について、算出される。移行メリットPは、図11(B)に示すように、移行元の物理マシン1についての移行コストから、当該仮想マシン11についての最小の移行コストを引くことにより算出される。
例えば、図10(B)において、仮想マシンAについてみると、仮想マシンAは物理マシン#2上で動作しているので、移行元の物理マシン1についての移行コストは「10」である。また、仮想マシンAの全ての移行先の物理マシン1の中で最小の移行コストは「9」である。これにより、移行メリット「1」が求まる。
他の仮想マシン11についても、同様に、各々の物理マシン1への移行コストが得られる。これにより、図10(B)に示すように、移行コスト表41が得られる。移行コスト表41は、「物」の欄に示すように、現在の物理マシン1、換言すれば、移行元の物理マシン1と、「P」の欄に示すように、移行メリットPとを格納する。
図12は、移行対象の仮想マシンの決定の説明図である。
図12に示す移行コスト表41において、例えば、仮想マシンGが、移行メリットPの中の最大の移行メリットP=30を有する。そこで、仮想マシンGが移行対象の候補として抽出され、仮想マシンGの移行メリットPが移行閾値Tと比較される。
仮想マシンGの移行メリットPが移行閾値Tより大きい場合に、抽出した仮想マシンGが移行対象の仮想マシン11として決定される。仮想マシンGの移行先物理マシン1の中で最小の移行コストを有する物理マシン1は、物理マシン#3である。従って、仮想マシンGが、移行元の物理マシン#4から、移行先である最小の移行コスト「10」を有する物理マシン#3に移行される。
仮想マシンGの移行メリットPが移行閾値T以下である場合に、抽出した仮想マシンGは、移行対象の仮想マシン11とされない。従って、仮想マシンGは移行されない。これにより、仮想マシン11の移行を頻繁に実行することにより、移行による負荷が増加することを防止することができる。
図3に戻って、移行制御部31は、移行閾値Tを動的に定める。例えば、移行制御部31は、移行対象の仮想マシン11の決定の都度に最大の移行メリットPを保持する。保持される最大の移行メリットPの数は、直近の予め定められた数とされる。そして、移行制御部31は、直近の予め定められた数の最大の移行メリットPに基づいて、移行閾値Tを定める。例えば、移行閾値Tは、直近の予め定められた数の最大の移行メリットPの平均値とされる。
図13及び図14は、移行閾値の説明図である。
図13(A)は、移行閾値Tの決定について示す。移行対象の仮想マシン11の決定の都度に、最大の移行メリットPが保持される。移行コスト表41の更新契機は、移行コストの算出が第3の時間間隔で実行された回数であり、更新契機「1」は1回目の移行コストの算出を示す。移行閾値Tは、直近の予め定められた数の最大の移行メリットPに基づいて定められる。
例えば、図13(B)に示すように、移行閾値Tは、直近の3個の最大の移行メリットPを平均することによりに定められる。この場合、最初の移行閾値Tは「28」となる。移行閾値Tが「28」であり、最大の移行メリットPが「100」であるので、図13(A)に「○」で示すように、移行が実行される。次の移行閾値Tは「52」となる。なお、3個の最大の移行メリットPが保持されるまでは、移行は実行されない。
図13(B)をグラフ化すると、図14に示すようなグラフとなる。横軸は時間であり、縦軸は移行メリットP及び移行閾値Tの値である。なお、移行メリットPは「100」以上の値であっても良い。図14のグラフによれば、移行閾値Tは、移行メリットPに基づいて、動的に変化することが判る。従って、移行メリットPが大きいほど移行の優先度が高く、移行される可能性が高いが、一方、移行メリットPが大きくても、移行閾値T以下であれば移行されない。
移行閾値Tの算出に用いる最大の移行メリットPの数は、3個に限られない。また、例えば図13(C)に示すように、標準的にはPの平均値を求め閾値Tを算出し、移行を行い難くするには2(用いたPの個数よりも小さい値)で除し閾値Tを算出し、移行を積極的に行うには4(用いたPの個数よりも大きい値)で除し閾値Tを算出すれば良い。また、仮想マシンシステムの運用中に、例えば単位時間当たりに移行が実行された回数に基づいて、移行閾値Tの算出の際に除する数値を変更するようにしても良い。
また、移行閾値Tを、予め定められた値としても良い。この場合、移行閾値Tは、経験により又は実測により基づいて求められる。仮想マシンシステムの運用中に、例えば単位時間当たりに移行が実行された回数に基づいて、移行閾値Tを段階的な値として決定するようにしても良い。
図15は、仮想マシンの移行処理フローチャートであり、特に、定期的に実行される仮想マシンの移行について示す。
物理リソース監視部34は、第1の時間間隔で、複数の物理マシン1の各々から、物理リソース情報を取得する(ステップS11)。これにより、物理リソース監視部34は、最新の物理リソース情報を保持することができる。そして、物理リソース監視部34は、移行制御部31からの物理コスト表38の再計算の要求を受信すると、その時点までに取得した物理リソース情報に基づいて、物理コスト表38を再計算して更新する(ステップS12)。この後、物理リソース監視部34は、最新の物理コスト表38を、物理コスト表38の再計算の要求に対する応答として、移行制御部31に通知する。
一方、ネットワーク負荷監視部33は、第2の時間間隔で、ネットワークスイッチ21の各々から、ネットワーク負荷情報を取得する(ステップS13)。これにより、ネットワーク負荷監視部33は、最新のネットワーク負荷情報を保持することができる。そして、ネットワーク負荷監視部33は、移行制御部31からのNWコスト表40の再計算の要求を受信すると、その時点までに取得したネットワーク負荷情報に基づいて、NWコスト表40を再計算して更新する(ステップS14)。この後、ネットワーク負荷監視部33は、最新のNWコスト表40を、NWコスト表40の再計算の要求に対する応答として、移行制御部31に通知する。
移行制御部31は、所定の時間、例えば第3の時間間隔が経過したか否かを判断し(ステップS15)、第3の時間間隔が経過しない場合には(ステップS15 NO)、ステップS15を繰り返す。第3の時間間隔が経過した場合には(ステップS15 YES)、移行制御部31は、移行コスト表41の更新を開始する(ステップS16)。これにより、移行コスト表41が定期的に更新される。
例えば、移行制御部31は、物理コスト表38の再計算の要求を物理リソース監視部34に送信し、応答として、物理リソース監視部34から最新の物理コスト表38を受信する。また、移行制御部31は、NWコスト表40の再計算の要求をネットワーク負荷監視部33に送信し、応答として、ネットワーク負荷監視部33から最新のNWコスト表40を受信する。
この後、移行制御部31は、最新の物理コスト表38の通知及び最新のNWコスト表40の通知を受信すると、最新のNWコスト表40及び最新の物理コスト表38を用いて移行コストを計算する(ステップS17)。そして、移行制御部31は、計算した移行コストに基づいて、移行メリットPを計算し(ステップS18)、計算した移行メリットPの中の最大の移行メリットPを抽出し(ステップS19)、抽出した最大の移行メリットPと移行閾値Tとを比較する(ステップS110)。
抽出した最大の移行メリットPが移行閾値Tより大きい場合には(ステップS110 YES)、移行制御部31は、当該最大の移行メリットPを有する仮想マシン11を、移行対象の仮想マシン11として選択し、移行対象として選択した仮想マシン11を移行実施部32に通知する。移行実施部32は、移行制御部31からの移行対象として選択された仮想マシン11の通知に基づいて、移行対象として選択された仮想マシン11を移行する(ステップS111)。これにより、1回の移行コスト表41の更新の都度に移行される仮想マシン11の数は1個に限られるので、移行の負荷が大きくなることを回避することができる。なお、移行の数は、2以上であっても良い。この後、移行制御部31は、ステップS16を実行する。
抽出した最大の移行メリットPが移行閾値Tより大きくない場合には(ステップS110 NO)、移行制御部31は、処理を終了する。
図16は、仮想マシンの移行処理フローチャートであり、特に、物理リソースの枯渇を検出した場合に実行される移行について示す。図17は、仮想マシンの移行処理の説明図である。
物理リソース監視部34は、複数の物理マシン1を監視することにより、いずれかの物理マシン1の物理リソースの枯渇を検出し(ステップS21)、物理リソースが枯渇した物理マシン1上に存在する仮想マシン11の一覧を取得、換言すれば、生成する(ステップS22)。そして、物理リソース監視部34は、仮想マシン11の一覧に基づいて、移行制御部31に対して、仮想マシン11の移行が必要であることを通知し、移行対象の候補である仮想マシン11を通知する。この後、物理リソース監視部34は、物理コスト表38を再計算し(ステップS23)、計算により更新した最新の物理コスト表38を、移行制御部31に対して通知する。
例えば、物理マシン#4において物理リソースの枯渇を検出され、この時、物理マシン#4上で仮想マシンA、C及びFが動作していたとする。この場合、図17(A)に示す仮想マシン11の一覧が取得され、仮想マシンA、C及びFが移行対象の候補として通知される。また、更新した最新の物理コスト表38として、図17(B)において左側に示す物理コスト表38が、移行制御部31に対して通知される。従って、物理リソース監視部34は、物理リソースの枯渇を検出された物理マシン#4上の仮想マシンA、C及びFについてのみ、物理コスト表38を更新する。
移行制御部31は、仮想マシン11の移行が必要であることの通知、及び、移行対象の候補である仮想マシン11の通知を、物理リソース監視部34から受信すると、移行対象の候補である仮想マシン11について、NWコスト表40の再計算を、ネットワーク負荷監視部33に依頼する。
ネットワーク負荷監視部33は、NWコスト表40の再計算の依頼を受信すると、NWコスト表40を再計算する(ステップS24)。この後、ネットワーク負荷監視部33が、計算により更新した最新のNWコスト表40を、移行制御部31に対して通知するようにしても良い。この場合、更新した最新のNWコスト表40として、図17(B)において右側に示すNWコスト表40が、移行制御部31に対して通知される。
移行制御部31は、最新の物理コスト表38の通知を、物理リソース監視部34から受信すると、図17(B)に示すように、最新の物理コスト表38及びNWコスト表40を用いて移行コストを計算し(ステップS25)、図17(C)に示すように、移行コスト表41を得る。この時、NWコスト表40としては、ネットワーク負荷監視部33から通知された最新のNWコスト表40を用いても、直近のステップS24において取得したNWコスト表40を用いても良い。移行コストは、物理リソースの枯渇を検出された物理マシン#4上の仮想マシンA、C及びFについてのみ計算される。
この後、移行制御部31は、最小の移行コストとなる仮想マシン11を移行対象として選択し(ステップS26)、移行対象として選択した仮想マシン11を移行実施部32に通知する。例えば、図17(C)に示す移行コスト表41において、仮想マシンCを移行元の物理マシン#4から移行先の物理マシン#3に移行した場合に、最小の移行コスト「2」となる。従って、移行対象として仮想マシンCを選択し、移行先は物理マシン#3とされる。
移行実施部32は、移行制御部31からの移行対象として選択された仮想マシン11の通知に基づいて、移行対象として選択された仮想マシン11を移行する(ステップS27)。この後、移行実施部32は、物理リソース監視部34に対して、リソース枯渇改善確認要求を送信する。
物理リソース監視部34は、リソース枯渇改善確認要求を受信すると、物理リソースが枯渇した物理マシン1において物理リソースの枯渇が改善したか否かを判断する(ステップS28)。物理リソースの枯渇が改善していない場合(ステップS28 NO)、物理リソース監視部34は、ステップS22を繰り返す。物理リソースの枯渇が改善した場合(ステップS28 YES)、物理リソース監視部34は、処理を終了する。
図18は、仮想マシンの移行処理フローチャートであり、特に、ネットワーク負荷の発生を検出した場合に実行される移行について示す。
ネットワーク負荷監視部33は、ネットワーク2を監視することにより、ネットワーク負荷の発生を検出する(ステップS31)。そして、ネットワーク負荷監視部33は、移行制御部31に対して、仮想マシン11の移行が必要であることを通知する。
この後、ネットワーク負荷監視部33は、検出したネットワーク負荷に基づいてネットワーク2への影響度表39を更新し(ステップS32)、更新した影響度表39に基づいてNWコスト表40を再計算し(ステップS33)、計算により更新した最新のNWコスト表40を、移行制御部31に対して通知する。
移行制御部31は、仮想マシン11の移行が必要であることの通知を、ネットワーク負荷監視部33から受信すると、物理コスト表38の再計算を、物理リソース監視部34に依頼する。
物理リソース監視部34は、物理コスト表38の再計算の依頼を受信すると、物理コスト表38を再計算する(ステップS34)。そして、物理リソース監視部34は、計算により更新した最新の物理コスト表38を、移行制御部31に対して通知する。
移行制御部31は、ネットワーク負荷監視部33からの最新のNWコスト表40の通知、及び、物理リソース監視部34からの最新の物理コスト表38の通知を受信すると、最新のNWコスト表40及び最新の物理コスト表38を用いて移行コストを計算する(ステップS35)。そして、移行制御部31は、計算した移行コストに基づいて、移行メリットPを計算し(ステップS36)、計算した移行メリットPに基づいて、移行メリットPが最大となる仮想マシン11の移行を選択し(ステップS37)、移行対象として選択した仮想マシン11を移行実施部32に通知する。
移行実施部32は、移行制御部31からの移行対象として選択された仮想マシン11の通知に基づいて、移行対象として選択された仮想マシン11を移行する(ステップS38)。この後、移行実施部32は、ネットワーク負荷監視部33に対して、ネットワーク負荷改善確認要求を送信する。
ネットワーク負荷監視部33は、ネットワーク負荷改善確認要求を受信すると、検出されたネットワーク負荷が改善したか否かを判断する(ステップS39)。物理リソースの枯渇が改善していない場合(ステップS39 NO)、物理リソース監視部34は、ステップS31を繰り返す。物理リソースの枯渇が改善した場合(ステップS39 YES)、物理リソース監視部34は、処理を終了する。
図19は、仮想マシンの移行処理フローチャートである。
移行制御部31は、移行対象である仮想マシン11の移行の実施と、移行先の物理マシン1とを決定する(ステップS41)。そして、移行制御部31は、移行実施部32に対して、移行対象である仮想マシン11の移行の実施、及び、移行先の物理マシン1を通知する。
移行実施部32は、仮想マシン11の移行の実施、及び、移行先の物理マシン1を通知を受けると、移行元の物理マシン1に対して、移行対象である仮想マシン11の情報の送信要求を送信する。
移行元の物理マシン1は、移行対象である仮想マシン11の情報の送信要求を受信すると、移行対象である仮想マシン11の情報を取得して(ステップS42)、取得した移行対象である仮想マシン11の情報を、移行先の物理マシン1に送信する。更に、移行元の物理マシン1は、移行対象である仮想マシン11の動作を停止させ(ステップS43)、動作を停止させた仮想マシン11についての停止完了の通知を、移行実施部32に送信する。
一方、移行先の物理マシン1は、移行対象である仮想マシン11の情報を受信すると、移行対象である仮想マシン11の動作を開始させ(ステップS44)、動作を開始させた仮想マシン11についての再開完了の通知を、移行実施部32に送信する。
移行実施部32は、仮想マシン11についての停止完了の通知と仮想マシン11についての再開完了の通知の双方を受信すると、仮想マシン11の移行を完了する(ステップS45)。そして、移行実施部32は、移行制御部31に対して、仮想マシン11の移行完了の通知を送信する。これにより、物理マシン1の負荷とネットワークの状態とを考慮して、仮想マシン11を最適な物理マシン1に移行させることができる。
1 物理マシン
2 ネットワーク
3 監視サーバ
11 仮想マシン
12 アプリケーション
13 仮想OS
14 ハイパーバイザー
15 負荷計測部
16 情報格納部
17、18 LAN制御部
21 ネットワークスイッチ
31 移行制御部
32 移行実施部
33 ネットワーク負荷監視部
34 物理リソース監視部
35 OS
36、37 LAN制御部
38 物理コスト表
39 影響度表
40 ネットワークコスト表(NWコスト表)
41 移行コスト表

Claims (8)

  1. 複数の仮想マシンが動作可能な複数の物理マシンと、
    前記複数の物理マシンを接続するネットワークと、
    前記複数の物理マシンを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、前記移行先の物理マシンにおける予測物理リソース状態に基づいて定まる物理コストを算出する物理リソース監視部と、
    前記ネットワークを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記ネットワークにおける予測通信状態に基づいて定まるネットワークコストを算出するネットワーク負荷監視部と、
    前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記物理コストと前記ネットワークコストとに基づいて定まる移行コストを算出し、前記複数の仮想マシンの各々についての前記移行コストに基づいて移行対象の仮想マシンを決定する移行制御部と、
    前記移行対象の仮想マシンを移行させる移行実施部とを含む
    ことを特徴とする情報処理装置。
  2. 前記物理リソース監視部が、前記複数の仮想マシンの各々についての前記物理コストを格納する物理コスト表を生成し、
    前記ネットワーク負荷監視部が、前記複数の仮想マシンの各々についての前記ネットワークコストを格納するネットワークコスト表を生成し、
    前記移行制御部が、前記物理コスト表の前記物理コストと前記ネットワークコスト表の前記ネットワークコストとに基づいて前記移行コストを算出することにより、前記複数の仮想マシンの各々についての前記移行コストを格納する移行コスト表を生成し、前記移行コスト表に基づいて、前記移行対象の仮想マシンを決定する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記移行制御部が、前記物理コストに予め定められた第1の係数を乗算した値と、前記ネットワークコストに予め定められた第2の係数を乗算した値とを加算することにより、前記移行コストを算出する
    ことを特徴とする請求項1に記載の情報処理装置。
  4. 前記移行制御部が、前記複数の仮想マシンの各々について、前記移行元の物理マシンについての前記移行コストから当該仮想マシンについての最小の前記移行コストを引くことにより移行メリットを算出し、前記移行メリットの中の最大の移行メリットを有する仮想マシンを抽出し、前記最大の移行メリットと閾値とを比較し、前記最大の移行メリットが前記閾値より大きい場合に、抽出した前記仮想マシンを前記移行対象の仮想マシンとして決定する
    ことを特徴とする請求項1に記載の情報処理装置。
  5. 前記移行制御部が、前記移行対象の仮想マシンの決定の都度に前記最大の移行メリットを保持し、直近の予め定められた数の前記最大の移行メリットに基づいて、前記閾値を動的に定める
    ことを特徴とする請求項5に記載の情報処理装置。
  6. 前記移行制御部が、予め定められた時間間隔で前記移行対象の仮想マシンを決定すると共に、前記複数の物理マシンのいずれかにおけるリソースの枯渇時、及び、前記ネットワークにおけるネットワーク負荷の発生時に前記移行対象の仮想マシンを決定する
    ことを特徴とする請求項1に記載の情報処理装置。
  7. 複数の仮想マシンが動作可能な複数の物理マシンと、前記複数の物理マシンを接続するネットワークと、前記複数の物理マシンと前記ネットワークとを監視する監視サーバとを含む情報処理装置における、前記仮想マシンの制御方法であって、
    前記監視サーバに設けられた物理リソース監視部が、前記複数の物理マシンを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、前記移行先の物理マシンにおける予測物理リソース状態に基づいて定まる物理コストを算出し、
    前記監視サーバに設けられたネットワーク負荷監視部が、前記ネットワークを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記ネットワークにおける予測通信状態に基づいて定まるネットワークコストを算出し、
    前記監視サーバに設けられた移行制御部が、前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記物理コストと前記ネットワークコストとに基づいて定まる移行コストを算出し、前記複数の仮想マシンの各々についての前記移行コストに基づいて移行対象の仮想マシンを決定し、
    前記監視サーバに設けられた移行実施部が、前記移行対象の仮想マシンを移行させる
    ことを特徴とする仮想マシン制御方法。
  8. 仮想マシンの制御プログラムであって、
    前記プログラムは、コンピュータに、
    複数の仮想マシンが動作可能な複数の物理マシンを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを移行元の物理マシンから移行先の物理マシンに移行させた場合における、前記移行先の物理マシンにおける予測物理リソース状態に基づいて定まる物理コストを算出する処理と、
    前記複数の物理マシンを接続するネットワークを監視し、前記監視の結果に基づいて、前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記ネットワークにおける予測通信状態に基づいて定まるネットワークコストを算出する処理と、
    前記複数の仮想マシンの各々について、当該仮想マシンを前記移行元の物理マシンから前記移行先の物理マシンに移行させた場合における、前記物理コストと前記ネットワークコストとに基づいて定まる移行コストを算出し、前記複数の仮想マシンの各々についての前記移行コストに基づいて移行対象の仮想マシンを決定する処理と、
    前記移行対象の仮想マシンを移行させる処理とを、実行させる
    ことを特徴とする仮想マシン制御プログラム。
JP2012118157A 2012-05-24 2012-05-24 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム Expired - Fee Related JP5935505B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012118157A JP5935505B2 (ja) 2012-05-24 2012-05-24 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012118157A JP5935505B2 (ja) 2012-05-24 2012-05-24 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム

Publications (2)

Publication Number Publication Date
JP2013246532A true JP2013246532A (ja) 2013-12-09
JP5935505B2 JP5935505B2 (ja) 2016-06-15

Family

ID=49846271

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012118157A Expired - Fee Related JP5935505B2 (ja) 2012-05-24 2012-05-24 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム

Country Status (1)

Country Link
JP (1) JP5935505B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016078729A1 (en) * 2014-11-21 2016-05-26 Telefonaktiebolaget L M Ericsson (Publ) Monitoring of virtual machines in a data center
CN110928636A (zh) * 2018-09-19 2020-03-27 阿里巴巴集团控股有限公司 虚拟机热迁移方法、装置和设备
JP2022524477A (ja) * 2020-02-19 2022-05-06 シトリックス・システムズ・インコーポレイテッド デスクトップ作業負荷の移行
CN116389288A (zh) * 2023-06-05 2023-07-04 中电运行(北京)信息技术有限公司 一种用于电力网络安全的多靶场场景构建方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007136021A1 (ja) * 2006-05-24 2009-10-01 日本電気株式会社 仮想マシン管理装置、仮想マシン管理方法およびプログラム
JPWO2008102739A1 (ja) * 2007-02-23 2010-05-27 日本電気株式会社 仮想サーバシステム及び物理サーバ選択方法
JP2011028408A (ja) * 2009-07-23 2011-02-10 Fujitsu Ltd 仮想マシン移動制御プログラム,仮想マシン移動制御方法および仮想マシン移動制御装置
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2011198332A (ja) * 2010-03-24 2011-10-06 Fujitsu Ltd 仮想マシン管理プログラム及び仮想マシン管理装置
JP2012094119A (ja) * 2010-10-26 2012-05-17 Internatl Business Mach Corp <Ibm> 仮想マシン間の通信

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2007136021A1 (ja) * 2006-05-24 2009-10-01 日本電気株式会社 仮想マシン管理装置、仮想マシン管理方法およびプログラム
JPWO2008102739A1 (ja) * 2007-02-23 2010-05-27 日本電気株式会社 仮想サーバシステム及び物理サーバ選択方法
JP2011028408A (ja) * 2009-07-23 2011-02-10 Fujitsu Ltd 仮想マシン移動制御プログラム,仮想マシン移動制御方法および仮想マシン移動制御装置
JP2011180889A (ja) * 2010-03-02 2011-09-15 Nec Corp ネットワークリソース管理システム、装置、方法及びプログラム
JP2011198332A (ja) * 2010-03-24 2011-10-06 Fujitsu Ltd 仮想マシン管理プログラム及び仮想マシン管理装置
JP2012094119A (ja) * 2010-10-26 2012-05-17 Internatl Business Mach Corp <Ibm> 仮想マシン間の通信

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016078729A1 (en) * 2014-11-21 2016-05-26 Telefonaktiebolaget L M Ericsson (Publ) Monitoring of virtual machines in a data center
US10387185B2 (en) 2014-11-21 2019-08-20 Telefonaktiebolaget Lm Ericsson (Publ) Performing monitoring and migration of virtual machines in a data center to prevent service level degradation due to the load imposed by the monitoring
CN110928636A (zh) * 2018-09-19 2020-03-27 阿里巴巴集团控股有限公司 虚拟机热迁移方法、装置和设备
JP2022524477A (ja) * 2020-02-19 2022-05-06 シトリックス・システムズ・インコーポレイテッド デスクトップ作業負荷の移行
CN116389288A (zh) * 2023-06-05 2023-07-04 中电运行(北京)信息技术有限公司 一种用于电力网络安全的多靶场场景构建方法及***
CN116389288B (zh) * 2023-06-05 2023-08-29 中电运行(北京)信息技术有限公司 一种用于电力网络安全的多靶场场景构建方法及***

Also Published As

Publication number Publication date
JP5935505B2 (ja) 2016-06-15

Similar Documents

Publication Publication Date Title
JP6248560B2 (ja) 管理プログラム、管理方法、および管理装置
JP5750714B2 (ja) 計算機システム、仮想サーバ配置方法及び配置制御装置
JP5609730B2 (ja) 情報処理プログラム及び方法、転送処理装置
JP6075226B2 (ja) プログラム、仮想マシン管理方法および情報処理装置
JP6687023B2 (ja) 情報処理装置、情報処理方法、情報処理プログラムおよび情報処理システム
JP5935505B2 (ja) 情報処理装置、仮想マシン制御方法、仮想マシン制御プログラム
JP2010244524A (ja) 仮想サーバの移動方法の決定方法及びその管理サーバ
JP2011180889A (ja) ネットワークリソース管理システム、装置、方法及びプログラム
JP2009237859A (ja) 仮想マシン管理システム
EP2570922A1 (en) Method and system for managing an elastic server farm
JP5448787B2 (ja) 計算機管理装置、計算機管理方法及び計算機管理プログラム
US11212174B2 (en) Network management device and network management method
WO2017141363A1 (ja) データ処理システム及びデータ処理方法
JP2017129988A (ja) バッチ制御システム、バッチ制御プログラム、及びバッチ制御方法
JP6325348B2 (ja) 仮想マシン配置装置
JP7176633B2 (ja) 仮想化基盤制御装置、仮想化基盤制御方法および仮想化基盤制御プログラム
JP6561766B2 (ja) 情報処理装置、クラスタシステム、クラスタリング方法、及びプログラム
EP2775400B1 (en) Ressource management system a method
JP6963465B2 (ja) 計算機システム及びデータ処理の制御方法
JP5483784B1 (ja) 制御装置、計算資源管理方法及び計算資源管理プログラム
JP5617586B2 (ja) 情報処理プログラム、中継装置及び中継管理装置
JP7360036B2 (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
JP2011186821A (ja) 仮想化環境管理システム、装置、方法及びプログラム
JP2013016111A (ja) データセンタシステム、運用評価装置、及び、運用評価装置のプログラム
KR20120045321A (ko) 멀티 에이전트 시스템에서의 동적 로드 밸런싱 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160322

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160425

R150 Certificate of patent or registration of utility model

Ref document number: 5935505

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees