JP2012141671A - 仮想計算機の移動方法、仮想計算機システム及び管理サーバ - Google Patents

仮想計算機の移動方法、仮想計算機システム及び管理サーバ Download PDF

Info

Publication number
JP2012141671A
JP2012141671A JP2010292268A JP2010292268A JP2012141671A JP 2012141671 A JP2012141671 A JP 2012141671A JP 2010292268 A JP2010292268 A JP 2010292268A JP 2010292268 A JP2010292268 A JP 2010292268A JP 2012141671 A JP2012141671 A JP 2012141671A
Authority
JP
Japan
Prior art keywords
computer
physical
virtual
management server
time
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
JP2010292268A
Other languages
English (en)
Other versions
JP5257709B2 (ja
Inventor
Toshiaki Tarui
俊明 垂井
Hiroo Miyamoto
啓生 宮本
Isao Shimokawa
功 下川
Tomohiro Baba
智宏 馬場
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010292268A priority Critical patent/JP5257709B2/ja
Publication of JP2012141671A publication Critical patent/JP2012141671A/ja
Application granted granted Critical
Publication of JP5257709B2 publication Critical patent/JP5257709B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)

Abstract

【課題】仮想計算機の移動のオーバヘッドとネットワーク機器の負荷変動を考慮して、ネットワーク機器を含めた計算機システム全体の消費電力を削減する。
【解決手段】物理計算機へ割り当てる仮想計算機を制御する管理サーバは、移動対象の前記仮想計算機と仮想計算機の移動先の候補となる物理計算機を選択する移動先判定部と、移動先の候補として選択された物理計算機について、選択した仮想計算機を移動させるのに必要な第1電力量を演算し、移動先の候補として選択された物理計算機へ仮想計算機を移動させた後に削減される第2電力を演算し、仮想計算機を移動させた後に削減される第2電力が、第1電力量と等しくなる第1の時間を演算する負荷予測部と、を備え、移動先判定部は、移動先の候補としての物理計算機へ仮想計算機を移動させた後に稼動可能な第2の時間を演算し、第2の時間が第1の時間を超える物理計算機を仮想計算機の移動先として決定する。
【選択図】図3

Description

本発明は、サーバ、ストレージ、ネットワークより構成されるデータセンタ及びデータセンタ間を結ぶ広域ネットワークの運用管理に係り、特に、データセンタと広域ネットワークの統合的な省電力運用管理を行うのに好適な技術に関する。
近年、ICT(Information and Communication Technology)システムの処理量の増大や高速化に伴い、データセンタ内のサーバ、ストレージ、ネットワーク装置及びデータセンタ間を結ぶ広域ネットワーク(WAN等)を構成するネットワーク装置の消費電力が急激に増大している。
このような消費電力の増大に対処するため、データセンタ内のIT機器と給電設備及び冷却設備の消費電力の総和を低減するように、IT機器へ作業負荷を割り当てる手法が提案されている(例えば、特許文献1)。上記従来技術では、データセンタ全体の消費電力の総和を目的関数とし、IT機器等の装置群へ作業負荷(仮想計算機または業務)を割り当てる組み合わせの最適化問題を定義し、前記目的関数を最小化する詰め込み問題(ビンパッキング問題)を解くことにより、目的関数を最小化する最適解または最適解近傍の実行可能な近似解を求めてデータセンタ全体の消費電力を低減させる。
特開2009−252056号公報
上記従来例では、データセンタ内のサーバ(物理計算機)に割り当てる仮想計算機(業務)を最適化するが、データセンタ間をまたがった仮想計算機の割り当てについて最適化は行われない。そのため、上記従来例では、データセンタ間を結ぶネットワークの消費電力は削減されず、また、サーバに割り当てる仮想計算機の最適化に際して、ネットワーク機器の帯域を考慮することはない。
しかし、近年の調査結果によれば、ICTシステムの消費電力の約半分は、WANのルータ等のネットワーク機器の消費電力が占めることが指摘されており、ネットワーク機器の消費電力を削減することは今後必須の課題である。さらに、今後適用範囲が広がると予想されるクラウドコンピューティングにおいては、データセンタ間にまたがった業務が広く行われるようになると予想される。したがって、ネットワークをまたがったデータセンタ間での業務の広域割り当ての最適化により、個々のデータセンタ内の仮想計算機への業務の割り当ての最適化だけでは達成できないレベルの、さらなる消費電力低減を実現するとともに、ネットワーク機器の消費電力を削減することが今後は求められる。上記を実現するためには、サーバに割り当てる仮想計算機の配置を最適化する業務配置最適化において、ネットワーク機器の稼働状況、消費電力を考慮する必要がある。
さらに、近年の仮想化技術の発達により、上記業務配置最適化を行う際の、物理サーバ間での業務の移動は仮想計算機(Virtual Machine、以下VMとする)のマイグレーションにより実現されるが、VMのマイグレーションに伴うオーバヘッド(主記憶や、ディスク領域のコピー等に伴う消費電力増大)に関しても考慮する必要がある。
上記マイグレーション処理では、VMの主記憶、ディスク領域のコピーが必要になる。特に、マイグレーション先の物理計算機がWANにより接続された環境では、上記コピー処理に伴うネットワーク装置を経由した通信で余計な電力が発生し、上記従来の業務の配置最適化による電力削減効果を減少させる。さらに、上記従来の業務の配置最適化によって多数のVMのマイグレーションが必要な場合、VMのマイグレーションの完了までに時間がかかり、計算機システムが消費電力の少ない適正な業務の配置で運用を始めるまでの時刻が遅れ、業務の配置適正化の効果を減少させる。さらに、マイグレーションが余りに頻発する場合、マイグレーションに伴う電力増大が、マイグレーションの結果削減される電力削減効果を上回る危険性がある。
上記従来技術では、上記VMの移動に伴うオーバヘッドは考慮されていない。つまり、VMマイグレーションによる電力消費の増大と適正な業務の配置を実現するまでの時間の遅延からなるオーバヘッドについて、上記従来技術では検討されていない、という問題があった。
特に、従来の主流である、上記詰め込み問題により業務の最適配置を求める場合には、現在迄の業務の配置の連続性は考慮されず、結果として、VMのマイグレーションが頻発する配置を生成する危険性がある。
VMのマイグレーション先を検討する場合、該当するVMの将来のリソース使用量予測値と、マイグレーション先の将来のリソース使用量予測値の合計が、物理リソースの限界値を超えないようにする必要がある。例えばリソース使用量として、ネットワークトラヒックを考えた場合、該当するVMが移動したことにより、各物理サーバの出口のNICのみならず、各仮想サーバに割り当てられた仮想NIC、データセンタ内のネットワーク回線、データセンタ出口の回線のトラヒックが増える可能性があるため、何れの部分もボトルネックにならないことを確かめる必要がある。ネットワーク使用量の予測値は時々刻々変化するため、VMを移行した後、しばらくの間ネットワーク使用量は帯域(実効通信速度の最大値)以下であるが、将来のある時点でネットワーク使用量が帯域を超えると予想される場合がある。そのような場合でも、ネットワーク使用量がネットワークの帯域を超えない時間が長く、消費電力を十分節約できるならば、該当する物理サーバにVMを一時的に移動させることにより、消費電力を節約できる。例えば、VMの負荷の変動で夜間にトラヒックが減る場合が該当する。
これに対して、VMをマイグレーションした直後に負荷変動によりネットワーク使用量が帯域を超えてしまい、仮想サーバに割り当てる業務の配置を元に戻さなければならない場合は、マイグレーションによる電力節約は小さく、場合によっては、マイグレーションに要する電力が上回ってしまうため、該当するVMの移動を行うことで消費電力が増大するため得策ではない。このように、VMのマイグレーション先の決定には、VMの負荷の変動を考慮して、該当するVMのマイグレーションにより、データセンタ内のトータルでどれだけ電力を削減できるかを考慮する必要がある。従来の業務の最適配置を適用する計算機システムでは、負荷の状況を固定された時間範囲で判定していたため、上記のように変動する物理サーバの負荷に対して効率よく対処することができなかった。
本発明は、業務を提供する仮想計算機を物理サーバ間で移動させて消費電力を低減させる際に、仮想計算機の移動のオーバヘッドを考慮し、かつ、ネットワーク機器の負荷変動を考慮し、ネットワーク機器を含めた計算機システム全体の消費電力を削減することが可能な制御方法の提供を目的とする。
本発明は、プロセッサとメモリをそれぞれ備えた複数の物理計算機と、前記複数の物理計算機を接続するネットワーク機器と、前記複数の物理計算機を管理する管理サーバとを備えて、前記物理計算機で1つ以上の仮想計算機を提供する仮想化部を実行し、前記管理サーバが前記複数の物理計算機の消費電力を低減するように前記物理計算機へ割り当てる前記仮想計算機を制御する仮想計算機の移動方法であって、前記管理サーバが、移動対象の前記仮想計算機を選択する第1のステップと、前記管理サーバが、前記選択した仮想計算機の移動先の候補となる物理計算機を選択する第2のステップと、前記管理サーバが、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させるのに必要な第1の電力量を演算する第3のステップと、前記管理サーバが、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させた後に削減される第2の電力を演算する第4のステップと、前記管理サーバが、前記選択した仮想計算機を移動させた後に削減される第2の電力に時間を乗じた第2の電力量が、前記第1の電力量と等しくなる第1の時間を演算する第5のステップと、前記管理サーバが、前記移動先の候補として選択された物理計算機で、前記選択した仮想計算機を移動させた後に稼動可能な第2の時間を演算する第6のステップと、前記管理サーバが、前記第2の時間が前記第1の時間を超える物理計算機を、前記選択した仮想計算機の移動先として決定する第7のステップと、を含む。
したがって、本発明は、仮想計算機の移動の結果削減される消費電力量だけでなく、仮想計算機の移動に必要となる消費電力量を求め、仮想計算機の移動によりネットワーク機器を含めた計算機システムのトータルの消費電力量が削減される場合に限り、処理の移動を行うと判定する。これにより、無駄な処理の移動を行うことを防止することができる。
本発明の実施形態を示し、データセンタの計算機システムのブロック図である。 本発明の実施形態を示し、管理サーバのブロック図である。 本発明の実施形態を示し、データセンタの計算機システムで仮想計算機の移動を行った場合の通信経路の変化を示すブロック図である。 本発明の実施形態を示し、管理サーバで行われる負荷の収集処理の一例を示すフローチャートである。 本発明の実施形態を示し、管理サーバで行われるVM移動先判定処理の一例を示すフローチャートである。 本発明の実施形態を示し、仮想サーバの移動に伴う消費電力の収支を判定する一例を示すグラフである。 本発明の実施形態を示し、ネットワーク機器の負荷変動を考慮して仮想計算機の移動後に運用可能な時間を判定する例を示すための説明図である。 本発明の実施形態を示し、図5の移動先判定処理の詳細を示すフローチャートである。 本発明の実施形態を示し、モニタリング情報の一例を示す説明図である。 本発明の実施形態を示し、ネットワーク管理テーブルの一例を示す説明図でマイグレーション前の状態を示す。 本発明の実施形態を示し、ネットワーク管理テーブルの一例を示す説明図でマイグレーション後の状態を示す。 本発明の実施形態を示し、サーバ1の構成の一例を示すブロック図である。 本発明の実施形態を示し、負荷予測値の一例を示す説明図である。 本発明の実施形態を示し、仮想サーバ割当テーブルの一例を示す説明図である。 本発明の第2の実施形態を示し、複数のデータセンタの計算機システムのブロック図である。
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明の実施形態を示し、本発明を適用するデータセンタ内の計算機システムの構成の一例を示すブロック図である。
本発明はデータセンタ間での仮想計算機(業務)の移動先判定に適用できるが、仮想計算機(以下、仮想サーバ)の移動先の判定はデータセンタ内での仮想サーバの移動にも適用可能である。第一の実施形態では、説明を簡易にするために、データセンタ100内についての仮想サーバの移動について説明する。なお、本実施形態では、一つの仮想サーバが一つの業務またはサービスを提供するため、アプリケーションまたはサービスあるいはデーモンを実行する例を示し、以下の説明では、仮想サーバの移動を業務の移動とする。
図1において、100はデータセンタ、50はWAN、10〜11はクライアントである。データセンタ100の中では、140はデータセンタ100の入口のルータ、150〜154はデータセンタ内のスイッチ、110〜118はサーバである。サーバ(物理計算機)110〜118はルータ140、スイッチ150〜154を介してWAN50及びクライアント10,11に接続される。
データセンタ100内にはさらに、サーバ110〜118を管理する管理サーバ120と、管理サーバ120との間で入出力を行う管理者端末190が設置される。管理サーバ120は、管理者端末190から受け付けた指令に応じてサーバ110〜118や仮想計算機を制御する。
各サーバ110〜118内では業務の提供を行う仮想サーバ(以下ではVM(Virtual Server)と呼ぶ)110a、110b、111a、111b、112a、112b、113a、116b、117a、117bが実行される。サーバ110〜118やルータ140、スイッチ150〜154、VM110a〜117bは、図1の構成だけでなく、任意の台数、構成をとることが可能である。
管理サーバ120内には、データセンタ100内の計算機システムの構成情報121と、データセンタ100内のネットワーク機器(ルータ140、スイッチ150〜154)やサーバ110〜118及びVM110a〜117bより収集した稼働情報のレポジトリであるモニタリング情報122をメモリ(主記憶)に格納する。管理サーバ120は、管理ネットワーク120aを介してサーバ110〜118、スイッチ150〜154及びルータ140に接続され、稼動情報を取得する。サーバ110〜118は、スイッチ150〜154、ルータ140及びWAN50を介してクライアント((クライアント計算機)10、11に接続され、サーバ110〜118はクライアント10、11からの要求に応じてサービスや業務を提供する。
なお、図1において、ルータ140やスイッチ150〜154のp0〜p3はそれぞれポート番号0〜3を示すものである。
図2は管理サーバ120の構成の一例を示すブロック図を示す。管理サーバ120は、上述した構成情報121やモニタリング情報122を記憶するストレージ126と、演算処理を行うCPU130と、CPU130と主記憶やインタフェースを接続するチップセット123と、管理ネットワーク120aに接続されるNIC(ネットワークインタフェースカード)125と、データやプログラムを格納する主記憶124を主体にして構成される計算機である。
構成情報121は、サーバの物理構成(CPUの性能やメモリ、ストレージの容量)等の基本的な情報を格納する構成情報テーブル(図示省略)と、サーバ(物理計算機)110〜118の識別子と、仮想サーバ110a〜117bの識別子の対応関係を管理する仮想サーバ割り当てテーブル1210を含む。なお、構成情報121は、管理サーバ120のVM管理プログラム(VM管理部)129が管理する。
主記憶124内には、各サーバ110〜118やルータ140の負荷値を収集する負荷値収集プログラム128と、本発明の移動先判定プログラム(移動先判定部)127と、移動先判定プログラム127の判定結果に基づき、各サーバ110〜118に割り当てられたVM110a〜117bをサーバ110〜118に移動させるVM管理プログラム(VM管理部)129と、収集されたモニタリング情報122に基づき将来の各機器(サーバ110〜118やスイッチ150〜154またはルータ140)の負荷を予測する負荷予測プログラム(負荷予測部)131が格納され、CPU130で実行される。
ここで、サーバ110〜118やネットワーク機器の負荷を監視する負荷値収集プログラム128(負荷モニタ部)は公知または周知の技術を適用することができるので、ここでは詳述しない。この負荷値の収集処理は、例えば、SNMPマネージャ等の手段により、各スイッチ150〜154やサーバ110〜118の稼働状況を表すモニタリングデータを収集することができる。
サーバ110〜118の物理資源を仮想サーバ110a〜117bに割り当てるVM管理プログラム129(仮想化管理部)は、公知または周知の技術を用いることができる。仮想化管理部としては、ハイパーバイザやVMM(Virtual Machine Monitor)の管理ソフトウェアを利用すればよいので、ここでは詳述しない。また、仮想サーバ110a〜117bを他のサーバ(物理計算機)に移動させるVMマイグレーション処理は、公知または周知の技術を採用すればよいので、ここでは詳述しない。VMマイグレーションを実行するプログラムが各社より提供されている。例えば、VMware社の提供するVCenter等のプログラムにより、VM110a〜117bやVMの使用するデータをサーバ間で移動させることができる。
負荷予測プログラム131(負荷予測部)も公知または周知の技術を用いることができる。例えば、ARIMAモデル(Autoregressive Integrated Moving Average:自己回帰和分移動平均モデル)等を用いて過去の負荷の値の履歴から将来の値を予測するプログラムが各社より提供されている(例えば、IBM社のSPSS等が例である)。本実施形態では、負荷予測の処理について公知または周知の技術を採用するので、詳細についての説明は省略する。
主記憶124にはさらに、負荷予測プログラム131により予測された、将来のサーバ110〜118やネットワーク機器の稼働状況を表す負荷予測値リポジトリ131aと、仮想サーバ110a〜117bの通信経路の構成情報を示すネットワーク管理テーブル127aが格納される。ネットワーク管理テーブル127aは、VMの移動時の各機器の稼働状況を判定するために管理サーバ120が使用する。
なお、管理サーバ120で実行される各プログラムは、ストレージ126に保持され、必要に応じて主記憶124へロードされる。ストレージ126は、これらプログラムの記憶媒体として機能される。
図10は、サーバ110の構成の一例を示すブロック図である。サーバ110は、演算処理を行うCPU200と、主記憶202やインタフェース204とCPU200を接続するチップセット201と、WAN50や管理ネットワーク120aに接続されるNIC(ネットワークインタフェースカード)203と、データやプログラムを格納する主記憶202を主体にして構成される物理計算機である。インタフェース204にはデータ211やプログラム212を保持するストレージ210が接続される。なお、ストレージ210は、各サーバ110〜118がアクセス可能な共有ストレージとして機能することができる。
主記憶202には、サーバ110の物理資源を複数の仮想サーバ(仮想計算機)に割り当てる仮想化部220が格納され、CPU200によって実行される。図10の例では、仮想化部220が2つの仮想サーバ110a、110bを実行させる例を示す。仮想サーバ110aでは、OS160aが実行され、OS160a上でアプリケーション170aが実行されクライアント10,11に業務(またはサービス)を提供する。仮想サーバ110bでは、OS160bが実行され、OS160b上でアプリケーション170bが実行されクライアント10,11に業務(またはサービス)を提供する。
ここで、仮想化部220としては、例えば、ハイパーバイザやVMM(Virtual Machine Monitor)を採用することができる。仮想化部220は、管理サーバ120からの指令に応じて仮想サーバ110a〜117bの生成、移動、削除を行う。また、仮想化部220は、管理サーバ120の負荷値収集プログラム128から稼動情報を要求された場合には、図8に示した仮想サーバ110a、110bのフロー毎のトラヒック量と、各仮想サーバ110a、110bのOS160aが検知したCPUの使用率と、CPU200の使用率を稼動情報として応答することができる。
図12は、管理サーバ120のVM管理プログラム129が管理する仮想サーバ割当テーブル1210の一例を示す説明図である。VM管理プログラム129は、サーバ(物理計算機)110〜118の物理リソースを割り当てた仮想サーバ110a〜117bに対する割り当て量等を管理する。
仮想サーバ割当テーブル1210は、物理計算機の識別子を格納する物理計算機NO1211と、仮想サーバの識別子を格納する仮想計算機NO1212と、仮想サーバに割り当てたプロセッサの量を格納する割当プロセッサ量1213と、仮想サーバに割り当てたメモリの量を格納する割当メモリ量1214と、仮想サーバに割り当てたストレージの量を格納する割当ストレージ量1215と、仮想サーバで実行するアプリケーションの識別子を格納するアプリケーションNO1216とからひとつのエントリが構成される。
管理サーバ120のVM管理プログラム129は、仮想サーバの生成、移動、削除を行う際に、仮想サーバ割当テーブル1210を更新する。
図3は、図1の計算機システムにおいて、本発明のVM移動先判定により、サーバ110〜118間で業務を提供するVMをマイグレーションさせることにより、計算機システム全体の消費電力を低減する手法を示す説明図である。
図3のP0〜p3は、図1と同様に、各スイッチ150〜154、及びルータ140で入出力を行うport番号を記す。ここでは例として、サーバ4(113)で稼動しているVM113aをサーバ7(116)のVM116aにマイグレーションさせる場合について示す。
上記マイグレーションにより、サーバ4(113)で稼動するVMが無くなり、該サーバはアイドル状態になるので、電源を遮断したり、省電力モードに移行させたりすることが可能になり、計算機システムの消費電力を制限することができる。さらに、スイッチ4(152)に接続されたサーバ1103〜115ではVMが稼動していないため、通信も発生していない。このため、電源の遮断や省電力モードに移行したサーバが接続されたポートについても、電源の遮断や省電力モードへの移行を実施することで、さらなる消費電力の削減を図ることができる。なお。スイッチ等のネットワーク機器の省電力制御については、例えば、特開2009−33691号公報などの公知の技術を用いればよい。
ここで、VM112aは、ネットワークを介してサーバ1(110)で稼動するVM110a、及びクライアント10と通信を行っている。VMマイグレーション前の通信経路に関して、VM110aとVM113aの通信経路(フロー)を太実線90と二点鎖線91で示し、VM113aとクライアント10の通信経路を太実線95と、一点鎖線96で示す。
これに対して、VM116aのマイグレーション後には、上記通信経路の一部が太点線90,95を経由するようになる。具体的にはVM110aとVM116aのフローに関しては、二点鎖線91の代わりに太点線92を、クライアント10とVM116aのフローに関しては、一点鎖線96の代わりに破線97を経由するようになる。したがって、新しくフローが経由するルータ140、スイッチ153、154のトラヒック量は増加する一方、スイッチ4(152)、スイッチ1(150)のトラヒック量は減少することになる。
図8は、モニタリング情報の一例を示す説明図である。図8は、本発明におけるモニタリング情報122において、ネットワークフロー毎のトラヒック量を管理サーバ120がモニタリングした結果の一例を示す。
管理サーバ120の負荷値収集プログラム128は、各フロー(ソースIPアドレス、デスティネーションIPアドレスの組み合わせ)毎に、一定時間毎(図の例では10秒毎)のトラヒックを測定し、主記憶124のモニタリング情報122に蓄積する。このモニタリング情報122のデータをもとに、負荷予測プログラム131は将来の稼働状況を予測する。
モニタリング情報122は、送信元のIPアドレスを格納するSourceIP1221と、宛先のIPアドレスを格納するdestIP1222と、SourceIP1221とdestIP1222間のトラヒック量を各時間毎に格納するモニタリング結果1223−1〜1223−nから一つのエントリが構成される。なお、図示の例では、説明を簡易にするため、IPアドレスに代わって、計算機の識別子を格納した例を示す。モニタリング結果1223−1〜1223−nは、上記一定時間毎のトラヒック量をそれぞれ格納する。トラヒック量は、例えば、単位時間当たりのデータ量(例えば、Mbps)で表現する。なお、トラヒック量は、この他、一定時間毎のデータ量の平均値や、最大値などで表すようにしてもよい。なお、本実施形態では、管理サーバ120が仮想サーバ110a〜117b毎にIPアドレスを割り当てるものとするが、管理者端末190から手動でIPアドレスを設定するようにしても良い。また、SourceIP1221と、destIP1222は送信元と宛先が特定できればよいので、IPアドレスの他に、MACアドレス(または仮想MACアドレス)やWWN等一意の識別子を用いるようにしてもよい。
このモニタリング情報122は、管理サーバ120とネットワーク機器により、公知または周知のモニタリング技術を用いて測定される。あるいは、各サーバ110〜118の仮想化部220が収集したトラヒック量を、管理サーバ120の負荷値収集プログラム128が取得するようにしてもよい。また、モニタリング情報122が、各仮想サーバ110a〜117bの稼動情報の場合には、destIP1222をブランクとして、仮想サーバ110a〜117b上のOS160aが検知したCPUの使用率を各時間毎のモニタリング結果1223−1〜1223−nに格納すればよい。また、モニタリング情報122が、各サーバ110〜118の稼動情報の場合には、destIP1222をブランクとして、各仮想化部220が検知したCPU200の使用率を各時間毎のモニタリング結果1223−1〜1223−nに格納すればよい。
図9A、図9Bは、ネットワーク管理テーブル127aの一例を示す説明図である。図9Aは、マイグレーション前の状態を示し、図9Bは、マイグレーション後の状態を示す。
ネットワーク管理テーブル127aは、各フロー(ソースIPアドレス、デスティネーションIPアドレスの組み合わせ)毎に、当該フローが経由する通信機器及び通信機器のポートを表す。このネットワーク管理テーブル127aは、管理サーバ120によって管理される。ネットワーク管理テーブル127aは、送信元のIPアドレスを格納するSourceIP1271と、宛先のIPアドレスを格納するdestIP1272と、SourceIP1271とdestIP1272間の通信経路のネットワーク機器のポートの識別子を格納するポート1273−1〜1273−nから一つのエントリが構成される。なお、図示の例では、IPアドレスに代わって、計算機の識別子を格納した例を示す。
ネットワーク管理テーブル127aは、マイグレーション前のフローと、マイグレーション後のフローがどのように変化したかを示すことができる。
ネットワーク管理テーブル127aは、公知または周知のシステム構成管理技術により作成することができる。
ネットワーク管理テーブル127aを管理者端末190を利用する管理者などが参照することにより、各ネットワークフローがデータセンタ100内のどこのネットワーク機器を経由しており、VM110a〜117bをマイグレーションさせることにより、フローの経由するネットワーク機器がどのように変化するかを知ることができる。
図3に示したマイグレーションで、VM113a(マイグレーション後はVM116a)とVM110aとの通信フローについて説明すると、マイグレーション前ではVM113aとVM110a間のフローが、スイッチ3、スイッチ1、スイッチ4を経由するのに対し、マイグレーション後ではVM116aとVM110a間のフローがスイッチ3、スイッチ1、ルータ、スイッチ2、スイッチ5を経由するようになる(表の中に示されているport番号は、図3においての各スイッチ、ルータに示されているポート番号である)。図9Bにおいて、マイグレーション後の表における網かけ部がマイグレーション前と異なる部分である。したがって、網かけを行った部分に関しては、トラヒックが新たに増える可能性があるため、本発明の方法にしたがって、マイグレーション後のトラヒック量がハードウェアの限界を超えない期間を判定し、VMの移動後にどれだけの時間まで運用可能であるかの判定が必要である。
<管理サーバの処理>
以下では、本発明によるVMの移動先判定の処理を図4、図7のフローチャートを用いて説明する。
図4A、図4Bに、管理サーバ120で行われる処理の全体のフローチャートを示す。管理サーバ120は、図4Aに示すフローチャートを所定の短い周期(例えば、10秒毎)で実行し、図4Bで示すフローチャートを定期的(もしくは必要に応じて)実行し、データセンタ100内の計算機システム全体の消費電力が削減できるように、計算機システム内のVMの配置を適正化する。なお、図4Bのフローチャートを実行する周期は、例えば10分などとする。
管理サーバ120は先ず、ステップ1001において、負荷値収集プログラム128により、管理ネットワーク120aを介して、データセンタ100内に設置された、各サーバ、スイッチ、ルータの稼働情報を収集し、ストレージ126上にモニタリング情報122として記憶する。収集されたデータは図8で示したように、各VM110a〜117bのCPU使用率、各ネットワークフロー(ソースIP、デスティネーションIPの組)のトラヒック量である。収集されるデータの一例を図8に示す。図8では、ネットワーク上のフロー毎にトラヒック量の時系列変化を記録した例を示している。
ここで注意しなければならないことは、負荷値の収集を行う図4Aのフローチャートと、図4Bで行われるフローチャートの実行周期は異なり、図4Bのステップ1002〜1004の処理が行われる期間に、複数の時刻のデータが収集されることである。例えば、図4BのVM配置判定の処理が10分に一回行われる場合でも、図8に示すように、図4Aの負荷値収集処理は例えば10秒毎に実行される。その理由は、一般にVMのマイグレーションには数十秒〜数分かかるため、配置判定を短い周期で行っても、短い周期に追従したシステム構成の変更を行うことは困難である。それに対して、負荷値の収集においては、負荷の細かい変動に伴うジッタ等の影響を考慮してVMの配置判定を行うために、ある程度細かい時間間隔で負荷値をモニタリングする必要があるからである。
ステップ1001で負荷値を収集した後、管理サーバ120は、所定の周期(10分毎)になると図4Bの処理を開始する。管理サーバ120は、図4Bのステップ1002において、図4Aの処理で蓄積されたモニタリング情報122に基づき、負荷予測プログラム131を起動して、上述のARIMAモデルなどを用いて、時系列データである負荷値のパターンを特定し、特定したパターンをモデル化して、将来の負荷値を予測し、主記憶上の負荷予測値リポジトリ131aに格納する。
負荷予測値リポジトリ131aのデータ形式は、図8のモニタリング情報122と同じく、各VMのCPU使用率や、各ネットワークフローのトラヒック量の未来の時系列変化を、所定時間間隔(例えば、10秒)毎に求めたテーブルである。
図11は、負荷予測値リポジトリ131aの一例を示す説明図である。負荷予測値リポジトリ131aは、送信元のIPアドレスを格納するSourceIP1311と、宛先のIPアドレスを格納するdestIP1312と、SourceIP1311とdestIP1312間のトラヒック量の予測値を各時間毎に格納する予測値1313−1〜1313−nから一つのエントリが構成される。なお、図示の例では、説明を簡易にするため、IPアドレスに代わって、計算機の識別子を格納した例を示す。また、負荷予測値リポジトリ131aが、各仮想サーバ110a〜117bの稼動情報の場合には、destIP1312をブランクとして、仮想サーバ110a〜117b上のOS160aが使用するCPUの使用率を各時間毎の予測値1313−1〜1313−nに格納すればよい。
上記負荷予測値リポジトリ131aを使用して、管理サーバ120は、ステップ2003において移動対象とするべきVM110a〜117bを選択する。移動対象となるVMは下記の観点で選択される。
(場合1)リソース使用量が限界を超えると予測される場合
例えば、あるVMが接続されたネットワークのリンクを流れるトラヒック量が所定の限界値に達していたり、サーバ110〜118のCPU使用率が100%に達する等、負荷予測値リポジトリ131aで予測される負荷値が物理リソースのキャパシティに達する場合、当該物理リソースを使用するVMを、物理リソースに空きのあるサーバ(物理計算機)へ移動させる。また、ネットワークリソースが限界に達した場合は、物理リソースの空きがあるスイッチの配下で物理リソースに空きがあるサーバにVMを移動させる。この移動はシステムのオーバーロードを避けるため必須である。なお、ネットワークのトラヒック量の限界は、データセンタ100の管理者などが予め設定したもので、実効通信速度の上限値などに設定される。また、ネットワークのトラヒック量の限界は、ルータ140やスイッチ150〜154等のネットワーク機器のメーカや仕様が異なる場合には、ネットワーク機器間毎にトラヒック量の限界値を設定することができる。
この場合の移動対象とするVMは、キャパシティに達する物理リソースを使用しているVMである。複数のVMが同一の物理リソースを使用している場合は、リソース使用量が小さいVMが選択される。
(場合2)リソース使用量が少ない場合
例えば、サーバ110〜118のリソース使用率(例えば、CPU200の使用率)が予め設定したしきい値より小さい場合、該当するサーバ上で稼働している全VMを、他のリソース使用量に余裕のあるサーバに移動させ、該当するサーバの電源を遮断、もしくは省電力モードに移行させることにより、計算機システム全体の消費電力低減を図る(図3の例において、サーバ4(113)に置かれたVM133aをサーバ7(116)のVM116aにマイグレーションさせる場合が該当する)。
この場合、移動対象とするVMは、該当するリソース使用率が小さいサーバで動作している全てのVMである。
本実施形態のVM移動先判定が対象にするのは、上記の場合2において、選択されたVMをどのサーバ110〜118に移動させるかを判定する処理である。場合1におけるVMの移動先判定については、後述する変形例で述べる。
図4のステップ1003で上記の場合2に該当し、移動対象となるVMが選択されると、管理サーバ120はステップ1004でVMの移動先の判定を行う。VMの移動先の判定の詳細な処理を図7に示す。
図7に示すVM移動先判定処理の説明に先立ち、VMの移動による電力収支について図5を用いて示す。
図5は、複数のサーバで稼動するVMをひとつのサーバに集約して消費電力を低減する際の、将来の電力変化の模式図である。横軸は時刻であり、時刻0は現在の(管理サーバがVMの移動先を判定する)時刻である。縦軸は計算機システム全体の消費電力であり、全サーバの消費電力と、全ネットワーク機器の消費電力の総和である(データセンタ間の配置最適化を行う場合は、各データセンタの消費電力と、WAN上のネットワーク機器の消費電力の総和とすればよい)。
図5において、現在の電力はW0とする。VMマイグレーションを行わなかった場合、計算機システムの消費電力はW0で推移する。
以下の変数を定義する。
マイグレーションによる配置変更で削減される電力:Wb
マイグレーションに要する時間:t0
配置変更トリガ後、VMマイグレーション後の構成で消費電力の低減が実現できる期間(以下、電力削減実現期間とする):tf
マイグレーションに要する電力量:A
マイグレーション後に削減できる電力量:B
マイグレーションの開始から電力削減実現期間tfまでに削減できる電力量:Pm
次に、VMの移動により計算機システムの消費電力を削減するには、
Pm>0 ………(1)
である必要があり、上記条件式(1)が成立する電力削減実現期間tfの条件を求める。以下に処理の詳細を述べる。
先ず、マイグレーション基本パラメータを計算する。マイグレーションの内容(マイグレーション対象となるVMが使用する主記憶のサイズ、ストレージのサイズ、VMマイグレーションのトラヒックに割り当てる回線スループット)に基づき、下記の基本パラメータを計算する(下記で求める値は近似値である)。
マイグレーションに必要な時間:t0
0=(C1×VM主記憶サイズ+C2×ストレージサイズ+C3)÷回線スループット
……(2)
マイグレーションに必要な電力量:A
A = C4×VM主記憶サイズ+C5×ストレージサイズ+C6)
×(C8+C7×ネットワーク通信距離) ……(3)
ここで、C1〜C7はシステムにより決まる定数である。t0やAには、VMの主記憶サイズだけでなく、データを移動するコスト(ストレージサイズ)も含む。また、回線スループットは、データセンタ100内のネットワークの通信速度の平均値や実効値を用いることができる。あるいは、回線スループットは、ネットワーク機器間毎に予め設定し、複数の回線スループットから最も遅いものを選択してもよい。
マイグレーションの結果削減(省電力化)できる電力:Wb
Wb = shutdown/省電力モードに移行したサーバの消費電力削減量
− 負荷が増えたサーバの消費電力増加量
+ C9 × Σ(各ネットワーク機器のトラヒック削減量) ……(4)
ここでC9はシステムにより決まる定数である。最終項のネットワーク機器の電力に関しては、関連する(マイグレーション対象となるVMのフローが通過する)全てのネットワーク機器について、電力の収支を計算する必要がある(トラヒックが増える場合は負の値になる)。
上記の基本パラメータを用いて、マイグレーション後の構成で運用しなければならない電力削減実現期間tfを計算する。先ず、マイグレーションにより削減できる電力量Pmを計算すると、下記で表すことができる(ただしtf > t0が前提)。
Pm = B−A = Wb×(tf−t0)−A ……(5)
ここで、マイグレーションにより電力削減を実現するためには、
Pm > 0
であるから、
Pm = B−A = Wb×(tf−t0)−A > 0 ……(5’)
である必要がある。上記の不等式を解くことにより電力削減実現期間tfを求めることができる。負荷変動により、VMの移動後の構成で電力削減実現期間tfの期間が経過するまで運用できないと予想される場合は、VMを移動しても消費電力の削減ができないため、VMの移動を行わない。
一方、負荷変動により、VMの移動後の構成で電力削減実現期間tfの期間まで運用できると予想される場合は、VMを移動すれば消費電力の削減が可能となるので、VMの移動を実行する。すなわち、
図6にVMの移動後の構成でどれだけの期間運用できるかを、負荷変動を考慮して判定する例を示す。図6では、物理的なネットワークリンクのネットワークトラヒックが、物理リソースの限界値に達するか否かを判定する例を示すが、CPU使用率が物理リソースの限界値に達するか否かの判定も同様の処理で実施できる。
図6では、移動するVM及び、各移動先候補となるサーバにフローが流れる際に経由するネットワーク機器のリソース使用量の予測値を示す(例えばスイッチのリンクの帯域使用量)。
ここで、図9で述べたように、一般にはVMマイグレーション後に新たにフローが経由する機器(図9Bの網かけ部)は複数存在する。したがって、ネットワーク使用量のグラフは、一般には一つの移動先候補に対して、(フローが経由する機器ごとに)複数存在する。ネットワークフローが複数の機器を経由する場合、何れか一つの機器がボトルネックになると、システム性能が低下することより、VMの移動後の構成で運用可能な時間は、各ネットワーク機器で求めた運用可能な時間の最小値となる。さらに、CPU使用率に関しても同様の評価を行い、CPU使用率の方がトラヒック量よりも早くボトルネックになる場合は、CPU使用率がボトルネックにならない期間を運用可能な期間tf1としなければならない。以下では、VMの移動後の構成で、リソースの使用量が限界値に達することなくサーバ110〜118を運用可能な期間を運用可能期間tf1と置く。換言すれば、移動対象のVMを、移動先の候補となるサーバ(物理計算機)で円滑に稼動可能な期間が運用可能期間tf1となる。つまり、移動先の候補となるサーバに接続されたネットワーク機器でトラヒック量が限界値に達したり、サーバのCPU200の使用率が限界値(100%)に到達すると、VMで実行するアプリケーション170aのレスポンスが低下する。このため、VMをマイグレーションした後に、円滑な稼動を保証できる期間を運用可能期間tf1とするのである。そして、マイグレーション後のVMは、運用可能期間tf1を経過すると、管理サーバ120によって次に稼動可能なサーバにマイグレーションされる。
図6において、横軸は現在以降の時刻であり、縦軸はネットワーク使用量(例えば、Mbps)である。図6に示す(A)は、移動対象のVMxが使用するネットワークトラヒック量の予測値2001を示す。図6に示す(B)〜(D)は、移動先候補となるサーバが3つあった場合を示し、各移動先のサーバからのトラヒック量の予測値を示している。
図6に示す(B)は、移動先候補Aのサーバ上で稼動するVMのトラヒック量の予測値2012を示す。そして、移動先候補Aのサーバ上に移動対象のVMxが使用するトラヒック量の予測値を加えた値が一点鎖線2011で示される。
ステップ1004の移動先判定処理では、管理サーバ120の移動先判定プログラム127が、移動先候補Aのサーバ上のVMのトラヒック量の予測値2012に、移動対象のVMxが使用するトラヒック量の予測値を加えた値(予測値の総和)2011が、予め設定したしきい値(限界値)に達するまでの運用可能時間tf1を求める。管理サーバ120は、負荷予測値リポジトリ131aを読み込んで、該当するフローについて各時刻の予測値1313−1〜1313−nを取得し、移動先候補Aのサーバ上で稼動するVMのトラヒック量の予測値2012に、移動対象のVMxが使用するトラヒック量の予測値2001を各時間毎に加算し、所定の限界値に達するまでの運用可能期間をtf1として求める。図6の(B)の場合、移動先候補Aのサーバ上に移動対象のVMxをマイグレーションした場合、現在から3時間以降にトラヒック量の予測値の総和が限界値に達する。そこで、管理サーバ120は、所定の限界値に達するまでの運用可能期間をtf1を3時間として設定する。
図6の(C)の場合も上記(B)と同様であり、移動先候補Bのサーバ上のVMのトラヒック量の予測値2022に、移動対象のVMxが使用するトラヒック量の予測値を加えた値(予測値の総和)2021が、予め設定したしきい値(限界値)に達するまでの運用可能期間tf1を求める。管理サーバ120は、現在から2時間以降にトラヒック量の予測値の総和2021が限界値に達する。そこで、管理サーバ120は、所定の限界値に達するまでの運用可能期間をtf1を2時間として設定する。
図6の(D)の場合も上記(B)と同様であり、移動先候補Cのサーバ上のVMのトラヒック量の予測値2032に、移動対象のVMxが使用するトラヒック量の予測値を加えた値(予測値の総和)2031が、予め設定したしきい値(限界値)に達するまでの運用可能期間tf1を求める。管理サーバ120は、現在から5時間以降にトラヒック量の予測値の総和2031が限界値に達する。そこで、管理サーバ120は、所定の限界値に達するまでの運用可能期間をtf1を5時間として設定する。
VMのマイグレーションにより、各移動先候補にVMが移動された場合、移動先候補のネットワーク機器の使用量(トラヒック量)は、移動されたVMへのフロー(図6の(A)のグラフ)分だけ増える。図6の(B)〜(D)で示すように、各移動先候補にフローが流れる際に経由するネットワーク機器のリソース使用量のグラフでは、VMを移動させる前のネットワーク使用量を実線で示し、VMを移動した後のネットワーク使用量を一点鎖線で示す。実線のグラフは、管理サーバ120の負荷予測値リポジトリ131aより得られる値である。実線に対して一点鎖線の値は、上記実線のグラフに、図6の(A)に示した移動対象のVMのネットワーク使用量(この値も、負荷予測値リポジトリ131aより得られる)を加えた値となる。
ここで、図6の(B)〜(D)の各移動先候補の予測値のグラフにおいて、ネットワーク帯域(限界値)を点線で示す。図6の(B)〜(D)に示すように、VMマイグレーション後のネットワーク使用量のグラフ(一点鎖線)がネットワーク帯域(限界値)を超えない間は、各移動先候補にVMを移動させた後の構成で運用可能である。
したがって、図6の(B)〜(D)の例では、運用可能期間tf1の値は、上述のように移動先候補Aの場合は3時間、移動先候補Bの場合は2時間、移動先候補Cの場合は5時間となる。ここで求めた、上記運用可能期間tf1と、図5で求めた電力削減実現期間tfを比較することにより、該当する移動先候補のサーバに移動対象のVMを移動できるか否かを判定できる。
つまり、
f < tf1 ……(6)
となる移動先候補を選択すればよい。さらに、管理サーバ120では、上記(6)式を満たす移動先候補のうち運用可能期間tf1が最大の移動先候補を選択することで、次回のマイグレーションまでの時間を増大させて、マイグレーションの発生頻度を抑制することができる。
以上の例では、VMの移動後の構成で運用可能な期間を求める判定基準として、リソース使用量が限界値に達するか否かを用いたが、VM移動後の構成が変更される要因としては、上記の他にも下記が考えられ、運用可能期間tf1の算出には、下記も考慮する必要がある。
・計算機システムの負荷がさらに減少し、サーバ(物理計算機)をさらに減らせると予想される時刻
・ユーザによりサーバが予約される場合や、管理者によるメンテナンスがスケジューリングされている場合等、システム構成を再度見直す必要がある場合
・その他、サーバ割り当ての変更が必要なことが予め分かっている場合
これらの予定またはスケジュールを加味してマイグレーション後の運用可能期間tf1を求めるようにしてもよい。
図7は、上記図4Bのステップ1004のVMの移動先判定処理の詳細を示すフローチャートである。先ず、管理サーバ120は、負荷予測値リポジトリ131aより、移動対象VMのネットワークリソース使用量の予測値を取得する(ステップ1101)。
次に、管理サーバ120は、上記ステップ1003で求めたVMの移動先探索候補となるサーバ(物理計算機)の集合を取得する(ステップ1102)。VMの移動先となるサーバは、基本的にデータセンタ100内の全サーバを対象とするが、下記の選択条件に従い、VMを移動するのが適切では無いサーバを予め除外する。
・配置の制約に抵触するサーバは除外する
例えば、信頼性(冗長性)向上のため、複数のVMを複数のサーバ110〜118に分散して作成している場合は、これらのVMを同一の物理サーバに配置しない。
・レスポンスタイムが長い(RTT大)サーバは除外する
移動させるVM上のアプリケーションのレスポンスタイムが確保できなくなるのを回避する。なお、各サーバ110〜118のレスポンスタイムは、仮想サーバ割り当てテーブル1210等の構成情報に設定しておけばよい。
・データ移動量が大きいサーバは除外
大量のデータを使用するデータベースサーバ等を移動することはしない。マイグレーションの際にデータ転送に要する時間が過大となるのを回避する。
移動先候補となるサーバの集合を求めた後、管理サーバ120は、ステップ1105の処理を、全移動先候補物理サーバに対して実行する。
すなわち、先ず、図5で述べた手順に従って、管理サーバ120は、該当するサーバにVMを移動させた場合に、VM移動の電力収支がプラスとなる時間tfを求める(ステップ1105−1)。
さらに、管理サーバ120は、負荷予測値リポジトリ131aより、該サーバにVMを移動させた場合に、移動対象VMのフローが新たに経由するネットワーク機器のリソース使用量予測値を取得する(ステップ1105−2)。ここで、移動対象のVMのフローの情報はネットワーク管理テーブル127aより得る。その後、図6で述べた手順に従い、VMの移動後の構成でリソースの使用量が限界値に到達するまでサーバを運用可能な運用可能期間tf1を求める(ステップ1105−3)。
ここで、移動対象のVMのフローが新たに経由するネットワーク機器が複数ある場合には、管理サーバ120は各々のネットワーク機器に関して運用可能期間tf1を求め、そのうち最小の値を選択する必要がある(さらに、CPU使用率より求めた運用可能期間tf1も考慮する必要がある)。
運用可能な時間tf1を求めた後、管理サーバ120は、運用可能な時間tf1と、電力削減実現期間tfを比較し(ステップ1105−4)、運用可能期間tf1が電力削減実現期間tfよりも小さい場合はVMの移動により電力が削減できないので、該当するサーバにVMを移動させることはできないと判定する(ステップ1105−7)。一方、運用可能期間tf1が電力削減実現期間tfよりも大きい場合には、該当するサーバにVMを移動することが可能である(ステップ1105−5)。この場合、運用可能期間tf1まで当該サーバで運用した場合に削減できる電力量Pm1を、図5で説明した下記の式により求める(ステップ1105−6)。
Pm1 = B−A = Wb×(tf1−t0)−A ……(7)
全ての移動先候補の物理サーバについて上記の処理(1105−1〜1105−7)を行った後に、移動可能なサーバが一台もなかった場合は、VMの移動は行われない(ステップ1106、1108)。一方、移動可能なサーバがあった場合は、各移動先候補のPm1を比較し、Pm1が最大の移動先候補のサーバにVMを移動することを決定する(ステップ1107)。
以上の処理により、ネットワークトラヒックの変動状況と、VMマイグレーションによるVMの移動による電力収支を考慮してVMの移動先を決定することができる。
<変形例1>
上記実施形態では、VMの移動の可否を判定する際に、マイグレーションにより削減可能な電力量(B)と、マイグレーションに必要な電力量(A)の差分が正である(マイグレーションにより少しでも電力が削減できる)ことを判定基準としていた。
Pm = B−A > 0 ……(5’)
しかし、上記パラメータ計算の近似計算の誤差や、VMマイグレーションに伴うリスク(何らかの原因でマイグレーションに失敗すると、システムダウンが発生する)を考慮すると、電力削減量が僅少の場合にマイグレーションを行うことは得策ではない。したがって、VMの移動による電力削減量の最小値Cを定義し、
Pm = B−A > C ……(8)
の場合のみ、VMのマイグレーションを行う方式が考えられる。これにより、電力削減量がほとんど無いマイグレーションが頻発することを防止することができる。上記定数Cはデータセンタ100内の計算機システムの運用ポリシーにより決定される閾値であり、システム管理者により、管理者端末190から入力された値である。
<変形例2>
以上の実施形態及び第1の変形例では、VMをひとつのサーバへ集約することによって、消費電力を削減する場合を示したVM移動先判定の処理である(図4ステップ1003の場合2)。これに対して、計算機システムの負荷が増え、今迄サーバ(物理計算機)一台で行っていたVMを複数のサーバに分散する場合等(ステップ1003の場合1)におけるVMの移動先も、本実施形態の手順を応用して判定することができる。
この場合は、処理する機器の台数が増えるので、データセンタ100内の計算機システムのトータルの消費電力は増大する。したがって、上述の電力削減実現期間tfによりマイグレーションの可否を判定する部分は適用できない。しかし、各々の移動先候補のサーバについて図7に示したステップ1105−6で述べた手順によりサーバで運用した場合に削減できる電力量Pm1を計算し(Pm1は負になる)、Pm1が最大の(絶対値が最小の)サーバにVMを移動させることにより、VMの移動に伴う消費電力の増大を最小限に抑えることができる。
あるいは、前記実施形態で、マイグレーション後のVMが、運用可能期間tf1に達した場合も本変形例2によって、再度マイグレーション先を探索することができる。
<変形例3>
図13は、本発明の第3の変形例であり、複数のデータセンタ間でVMの配置を判定する場合の計算機システムのブロック図を示す。
以上の実施形態及び第1、第2の変形例は、ひとつのデータセンタ100内におけるVMの移動先の判定方法について述べた。複数のデータセンタにまたがったVMの移動先も上記と同様の処理で判定することができる。図13に全体のアーキテクチャを示す。
図13において、600、700、800はデータセンタ、500はWAN、510、511はクライアントである。データセンタ600、700、800はWAN500を介してクライアント510,511に接続される。データセンタ600、700、800の構成は前記実施形態の図1と同様の構成である。
データセンタの中では600を例に述べると、640はデータセンタ入口のルータ(データセンタ内スイッチは省略する)、610、611、612はサーバ(物理計算機)、620は管理サーバである。各サーバ610、611、612では、業務(またはサービス)をクライアント510,511に提供する仮想サーバ(以下、VM)610a、610b、611a、611b、612a、612bが実行される。
管理サーバ620内には、前記実施形態の図1と同様に構成情報621、モニタリング情報622を持つ。WAN500の中ではルータ551〜554が設置され、データセンタ600、700,800やクライアント510、511を接続する。WAN500にも管理サーバ520が置かれる。各データセンタ600、700、800、WAN500の管理サーバ間では、管理サーバ間ネットワーク590が配置され、相互にアクセスが可能である。データセンタの各管理サーバ620,720,820は、前記実施形態の図1と同様に、図示しない管理ネットワークを介して各データセンタ内のサーバに接続される。
図13では、データセンタ2(700)のVM710aをデータセンタ3(800)のVM810aに移動させる例を示す。
データセンタ間のVMの移動先判定では、基本的には移動対象のVMが稼働しているデータセンタの管理サーバが(この例では720)が移動先を判定する。データセンタ内のVMの移動先判定と比較して、以下が異なる。
各データセンタの管理サーバは、自データセンタ内のサーバ、ネットワーク機器の構成情報(データセンタ2の管理サーバの場合721)、モニタリング情報(722)を持つ。他のデータセンタに置かれた機器の構成や稼働情報は、管理サーバ間ネットワーク590を通じて、他の管理サーバが持っている情報(621、622、821、822)にアクセスする。
WAN500に関しては、データセンタとは違うキャリアにより提供されている。したがって、データセンタ600の管理サーバ620が、VMの移動時にWAN500の部分で削減可能な電力量を直接求めることは困難である。上記を解決するために、WAN500の部分の消費電力の削減に関しては、VMの移動元の管理サーバ(720)がWAN500の管理サーバ520に問い合わせ、移動させるVMのフローの経路が変更になった場合の電力削減量Wb2を問い合わせるインタフェースをWAN500の管理サーバ520に設ける。
問い合わせインタフェースの例は下記である。
query_power_differnce(flow流量、現在のWAN入口、現在のWAN出口、VM移動後のWAN入口、VM移動後のWAN出口)
VMの移動の結果、移動後のVMのフローがWAN500を経由しなくなった場合は、入口、出口には空の引数(NILまたはNULL等)を与える。
図5に示したVMの移動によって削減される電力Wbの計算において上記の問い合わせ結果を使用することにより、ブラックボックスであるWAN500の部分の電力を考慮したVMの移動先判定が可能である。つまり、各データセンタ(700、800)内で削減される電力Wbと、通信経路の変更によってWAN500で削減される消費電力Wb2の和に時間tfを乗じた電力量Bが、VMを移動させるための電力量A以上となればよい。
図13の例では、データセンタ2(700)のVM710aをデータセンタ3(800)のサーバ810のVM810aに移動させるため、管理サーバ720は、データセンタ2(700)で削減される電力wb−1を求める。管理サーバ720は、データセンタ3(800)で削減(または増加)する電力Wb−2を管理サーバ820に問い合わせる。さらに、管理サーバ720は、WAN500で削減(または増加)する電力Wb−3を管理サーバ520に問い合わせる。そして、管理サーバ720は、上記取得した電力Wb−1〜Wb−3の総和を、VMの移動により削減される電力Wbとして求めることができる。
<まとめ>
以上のように、本発明によれば、データセンタ内外のVMの配置の最適化において、
・VMの移動オーバヘッド(VMの移動に必要となる電力)
・ネットワーク機器の使用状況
・負荷変動状況
を考慮して、移動先のサーバ(物理計算機)を選択することが可能である。
上記により、負荷変動がある計算機システムにおいても、ネットワーク機器を含めた機器のリソースの使用量を考慮して、適切なVMの移動先を判定することができる。
以上のように、本発明は仮想計算機のマイグレーションを行う計算機システム及び、計算機システムの管理サーバに適用することができる。
50 WAN
100 データセンタ
110〜118 サーバ
110a〜117b 仮想サーバ
121 構成情報
122 モニタリング情報
127 移動先判定プログラム
127a ネットワーク管理テーブル
128 負荷値収集プログラム
129 VM管理プログラム
131 負荷予測プログラム
131a 負荷予測値リポジトリ
140 ルータ
150〜154 スイッチ

Claims (15)

  1. プロセッサとメモリをそれぞれ備えた複数の物理計算機と、前記複数の物理計算機を接続するネットワーク機器と、前記複数の物理計算機を管理する管理サーバとを備えて、前記物理計算機で1つ以上の仮想計算機を提供する仮想化部を実行し、前記管理サーバが前記複数の物理計算機の消費電力を低減するように前記物理計算機へ割り当てる前記仮想計算機を制御する仮想計算機の移動方法であって、
    前記管理サーバが、移動対象の前記仮想計算機を選択する第1のステップと、
    前記管理サーバが、前記選択した仮想計算機の移動先の候補となる物理計算機を選択する第2のステップと、
    前記管理サーバが、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させるのに必要な第1の電力量を演算する第3のステップと、
    前記管理サーバが、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させた後に削減される第2の電力を演算する第4のステップと、
    前記管理サーバが、前記選択した仮想計算機を移動させた後に削減される第2の電力に時間を乗じた第2の電力量が、前記第1の電力量と等しくなる第1の時間を演算する第5のステップと、
    前記管理サーバが、前記移動先の候補として選択された物理計算機で、前記選択した仮想計算機を移動させた後に稼動可能な第2の時間を演算する第6のステップと、
    前記管理サーバが、前記第2の時間が前記第1の時間を超える物理計算機を、前記選択した仮想計算機の移動先として決定する第7のステップと、
    を含むことを特徴とする仮想計算機の移動方法。
  2. 請求項1に記載の仮想計算機の移動方法であって、
    前記第2の時間は、
    前記選択した仮想計算機を前記移動先の候補として選択された物理計算機で稼動させてから当該物理計算機が使用するリソース量が所定の限界値に達するまでの時間であることを特徴とする仮想計算機の移動方法。
  3. 請求項2に記載の仮想計算機の移動方法であって、
    前記リソース量は、
    前記選択した仮想計算機を前記選択された物理計算機へ移動した後に前記物理計算機が使用するネットワークのトラヒック量の予測値であることを特徴とする仮想計算機の移動方法。
  4. 請求項1に記載の仮想計算機の移動方法であって、
    前記第7のステップは、
    前記第2の時間が前記第1の時間を超える物理計算機のそれぞれについて、前記仮想計算機を移動してから前記第2の時間までに削減される第3の電力量を演算するステップと、
    前記第3の電力量が最大となる物理計算機を前記仮想計算機の移動先として選択するステップと、
    を含むことを特徴とする仮想計算機の移動方法。
  5. 請求項1に記載の仮想計算機の移動方法であって、
    前記第7のステップは、
    前記第2の時間と前記第1の時間の差が、所定の閾値を超える物理計算機を、前記選択した仮想計算機の移動先として決定することを特徴とする仮想計算機の移動方法。
  6. 請求項1に記載の仮想計算機の移動方法であって、
    前記ネットワーク機器は、第2のネットワークに接続されたルータを含み、当該ルータは配下の物理計算機と前記第2のネットワークを介して他の計算機群との通信を行い、前記管理サーバは、前記他の計算機群を管理する第2の管理サーバと通信を行って、前記ルータの配下の物理計算機で稼動する仮想計算機を、前記他の計算機群の物理計算機へ移動可能であって、前記第2のネットワークは、当該第2のネットワークの消費電力を管理する第3の管理サーバを含み、
    前記第2のステップは、
    前記管理サーバが、前記選択した仮想計算機の移動先の候補となる物理計算機を、前記他の計算機群の物理計算機から選択し、
    前記第4のステップは、
    前記管理サーバが、前記移動先の候補として選択された前記他の計算機群へ前記仮想計算機を移動させた後に、前記ルータの配下の物理計算機で削減される電力を求める第8のステップと、
    前記移動先の候補として選択された前記他の計算機群の物理計算機へ前記選択した仮想計算機を移動させた後に削減される電力を前記第2の管理サーバに前記管理サーバが問い合わせる第9のステップと、
    前記移動先の候補として選択された前記他の計算機群の物理計算機へ前記選択した仮想計算機を移動させた後に前記第2のネットワークで削減される電力を前記第3の管理サーバへ前記管理サーバが問い合わせる第10のステップと、
    前記第8のステップで求めた電力と、前記第9のステップで問い合わせた電力と、前記第10のステップで問い合わせた電力の和を第2の電力として求める第11のステップと、
    を含むことを特徴とする仮想計算機の移動方法。
  7. プロセッサとメモリをそれぞれ備えた複数の物理計算機と、
    前記複数の物理計算機を接続するネットワーク機器と、
    プロセッサとメモリを備えて前記複数の物理計算機を管理する管理サーバと、を備えて、前記物理計算機で1つ以上の仮想計算機を提供する仮想化部を実行し、前記管理サーバが前記複数の物理計算機の消費電力を低減するように前記物理計算機へ割り当てる前記仮想計算機を制御する仮想計算機システムであって、
    前記管理サーバは、
    移動対象の前記仮想計算機を選択し、前記選択した仮想計算機の移動先の候補となる物理計算機を選択する移動先判定部と、
    前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させるのに必要な第1の電力量を演算し、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させた後に削減される第2の電力を演算し、前記選択した仮想計算機を移動させた後に削減される第2の電力に時間を乗じた第2の電力量が、前記第1の電力量と等しくなる第1の時間を演算する負荷予測部と、を備え、
    前記移動先判定部は、
    前記移動先の候補として選択された物理計算機で、前記選択した仮想計算機を移動させた後に稼動可能な第2の時間を演算して、前記第2の時間が前記第1の時間を超える物理計算機を、前記選択した仮想計算機の移動先として決定することを特徴とする仮想計算機システム。
  8. 請求項7に記載の仮想計算機システムであって、
    前記第2の時間は、
    前記選択した仮想計算機を前記移動先の候補として選択された物理計算機で稼動させてから当該物理計算機が使用するリソース量が所定の限界値に達するまでの時間であることを特徴とする仮想計算機システム。
  9. 請求項8に記載の仮想計算機システムであって、
    前記リソース量は、
    前記選択した仮想計算機を前記選択された物理計算機へ移動した後に前記物理計算機が使用するネットワークのトラヒック量の予測値であることを特徴とする仮想計算機システム。
  10. 請求項7に記載の仮想計算機システムであって、
    前記移動先判定部は、
    前記第2の時間が前記第1の時間を超える物理計算機のそれぞれについて、前記仮想計算機を移動してから前記第2の時間までに削減される第3の電力量を演算し、前記第3の電力量が最大となる物理計算機を前記仮想計算機の移動先として選択することを特徴とする仮想計算機システム。
  11. 請求項7に記載の仮想計算機システムであって、
    前記移動先判定部は、
    前記第2の時間と前記第1の時間の差が、所定の閾値を超える物理計算機を、前記選択した仮想計算機の移動先として決定することを特徴とする仮想計算機システム。
  12. プロセッサとメモリを備えて、複数の物理計算機の消費電力を低減するように前記物理計算機へ割り当てる仮想計算機を制御する管理サーバであって、
    移動対象の前記仮想計算機を選択し、前記選択した仮想計算機の移動先の候補となる物理計算機を選択する移動先判定部と、
    前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させるのに必要な第1の電力量を演算し、前記移動先の候補として選択された物理計算機について、前記選択した仮想計算機を移動させた後に削減される第2の電力を演算し、前記選択した仮想計算機を移動させた後に削減される第2の電力に時間を乗じた第2の電力量が、前記第1の電力量と等しくなる第1の時間を演算する負荷予測部と、を備え、
    前記移動先判定部は、
    前記移動先の候補として選択された物理計算機で、前記選択した仮想計算機を移動させた後に稼動可能な第2の時間を演算して、前記第2の時間が前記第1の時間を超える物理計算機を、前記選択した仮想計算機の移動先として決定することを特徴とする管理サーバ。
  13. 請求項12に記載の管理サーバであって、
    前記第2の時間は、
    前記選択した仮想計算機を前記移動先の候補として選択された物理計算機で稼動させてから当該物理計算機が使用するリソース量が所定の限界値に達するまでの時間であることを特徴とする管理サーバ。
  14. 請求項13に記載の管理サーバであって、
    前記リソース量は、
    前記選択した仮想計算機を前記選択された物理計算機へ移動した後に前記物理計算機が使用するネットワークのトラヒック量の予測値であることを特徴とする管理サーバ。
  15. 請求項12に記載の管理サーバであって、
    前記移動先判定部は、
    前記第2の時間が前記第1の時間を超える物理計算機のそれぞれについて、前記仮想計算機を移動してから前記第2の時間までに削減される第3の電力量を演算し、前記第3の電力量が最大となる物理計算機を前記仮想計算機の移動先として選択することを特徴とする管理サーバ。
JP2010292268A 2010-12-28 2010-12-28 仮想計算機の移動方法、仮想計算機システム及び管理サーバ Active JP5257709B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010292268A JP5257709B2 (ja) 2010-12-28 2010-12-28 仮想計算機の移動方法、仮想計算機システム及び管理サーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010292268A JP5257709B2 (ja) 2010-12-28 2010-12-28 仮想計算機の移動方法、仮想計算機システム及び管理サーバ

Publications (2)

Publication Number Publication Date
JP2012141671A true JP2012141671A (ja) 2012-07-26
JP5257709B2 JP5257709B2 (ja) 2013-08-07

Family

ID=46677933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010292268A Active JP5257709B2 (ja) 2010-12-28 2010-12-28 仮想計算機の移動方法、仮想計算機システム及び管理サーバ

Country Status (1)

Country Link
JP (1) JP5257709B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014024612A1 (ja) * 2012-08-06 2014-02-13 日本電気株式会社 コンピュータネットワークシステム、コンピュータネットワークシステムでの負荷の移動要否の判定方法
JP2014153897A (ja) * 2013-02-08 2014-08-25 Hitachi Ltd 計算機システム及びリソース管理装置並びにリソース管理方法
JP2014170372A (ja) * 2013-03-04 2014-09-18 Ntt Comware Corp 再配置支援装置、再配置支援方法、及び再配置支援プログラム
JP5983888B2 (ja) * 2013-09-13 2016-09-06 富士通株式会社 情報処理システム、情報処理装置、制御装置、プログラム、及び消費電力制御方法
JP2016212609A (ja) * 2015-05-08 2016-12-15 株式会社日立製作所 仮想マシン運用支援システムおよび仮想マシン運用支援方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008102739A1 (ja) * 2007-02-23 2008-08-28 Nec Corporation 仮想サーバシステム及び物理サーバ選択方法
JP2008276320A (ja) * 2007-04-25 2008-11-13 Nec Corp 仮想システム制御方法およびコンピュータシステム
JP2009252056A (ja) * 2008-04-09 2009-10-29 Hitachi Ltd 情報処理システムの運用管理方法および運用管理装置
JP2010146420A (ja) * 2008-12-22 2010-07-01 Hitachi Ltd 余剰資源管理システム、その管理方法、及びサーバ装置
WO2010140183A1 (ja) * 2009-06-01 2010-12-09 富士通株式会社 サーバ管理プログラム、管理サーバ、仮想サーバ配置方法
JP2011028408A (ja) * 2009-07-23 2011-02-10 Fujitsu Ltd 仮想マシン移動制御プログラム,仮想マシン移動制御方法および仮想マシン移動制御装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008102739A1 (ja) * 2007-02-23 2008-08-28 Nec Corporation 仮想サーバシステム及び物理サーバ選択方法
JP2008276320A (ja) * 2007-04-25 2008-11-13 Nec Corp 仮想システム制御方法およびコンピュータシステム
JP2009252056A (ja) * 2008-04-09 2009-10-29 Hitachi Ltd 情報処理システムの運用管理方法および運用管理装置
JP2010146420A (ja) * 2008-12-22 2010-07-01 Hitachi Ltd 余剰資源管理システム、その管理方法、及びサーバ装置
WO2010140183A1 (ja) * 2009-06-01 2010-12-09 富士通株式会社 サーバ管理プログラム、管理サーバ、仮想サーバ配置方法
JP2011028408A (ja) * 2009-07-23 2011-02-10 Fujitsu Ltd 仮想マシン移動制御プログラム,仮想マシン移動制御方法および仮想マシン移動制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014024612A1 (ja) * 2012-08-06 2014-02-13 日本電気株式会社 コンピュータネットワークシステム、コンピュータネットワークシステムでの負荷の移動要否の判定方法
JPWO2014024612A1 (ja) * 2012-08-06 2016-07-25 日本電気株式会社 コンピュータネットワークシステム、コンピュータネットワークシステムでの負荷の移動要否の判定方法
US9712609B2 (en) 2012-08-06 2017-07-18 Nec Corporation Computer network system and method of determining necessity of transferring load in computer network system
JP2014153897A (ja) * 2013-02-08 2014-08-25 Hitachi Ltd 計算機システム及びリソース管理装置並びにリソース管理方法
JP2014170372A (ja) * 2013-03-04 2014-09-18 Ntt Comware Corp 再配置支援装置、再配置支援方法、及び再配置支援プログラム
JP5983888B2 (ja) * 2013-09-13 2016-09-06 富士通株式会社 情報処理システム、情報処理装置、制御装置、プログラム、及び消費電力制御方法
JP2016212609A (ja) * 2015-05-08 2016-12-15 株式会社日立製作所 仮想マシン運用支援システムおよび仮想マシン運用支援方法

Also Published As

Publication number Publication date
JP5257709B2 (ja) 2013-08-07

Similar Documents

Publication Publication Date Title
Farahnakian et al. Utilization prediction aware VM consolidation approach for green cloud computing
Sayadnavard et al. A reliable energy-aware approach for dynamic virtual machine consolidation in cloud data centers
Mazumdar et al. Power efficient server consolidation for cloud data center
Ismaeel et al. Proactive dynamic virtual-machine consolidation for energy conservation in cloud data centres
CN107003887B (zh) Cpu超载设置和云计算工作负荷调度机构
Stage et al. Network-aware migration control and scheduling of differentiated virtual machine workloads
Beloglazov et al. Optimal online deterministic algorithms and adaptive heuristics for energy and performance efficient dynamic consolidation of virtual machines in cloud data centers
Tarafdar et al. Energy and quality of service-aware virtual machine consolidation in a cloud data center
US9807159B2 (en) Allocation of virtual machines in datacenters
KR20130016237A (ko) 분산 컴퓨팅에서의 전력 공급 관리
Sampaio et al. PIASA: A power and interference aware resource management strategy for heterogeneous workloads in cloud data centers
Zakarya et al. An energy aware cost recovery approach for virtual machine migration
Li An adaptive overload threshold selection process using Markov decision processes of virtual machine in cloud data center
Chaabouni et al. Energy management strategy in cloud computing: a perspective study
JP5257709B2 (ja) 仮想計算機の移動方法、仮想計算機システム及び管理サーバ
Farahnakian et al. Multi-agent based architecture for dynamic VM consolidation in cloud data centers
Farahnakian et al. Hierarchical vm management architecture for cloud data centers
Chehelgerdi-Samani et al. PCVM. ARIMA: predictive consolidation of virtual machines applying ARIMA method
Wang et al. Research on virtual machine consolidation strategy based on combined prediction and energy-aware in cloud computing platform
Banerjee et al. Efficient resource utilization using multi-step-ahead workload prediction technique in cloud
Diallo et al. AutoMigrate: a framework for developing intelligent, self-managing cloud services with maximum availability
Rahmani et al. Burstiness-aware virtual machine placement in cloud computing systems
Babu et al. Interference aware prediction mechanism for auto scaling in cloud
Rahmani et al. Burst‐aware virtual machine migration for improving performance in the cloud
Deepika et al. Multi-objective prediction-based optimization of power consumption for cloud data centers

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130305

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130410

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5257709

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150