JP2017091001A - Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program - Google Patents

Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program Download PDF

Info

Publication number
JP2017091001A
JP2017091001A JP2015216710A JP2015216710A JP2017091001A JP 2017091001 A JP2017091001 A JP 2017091001A JP 2015216710 A JP2015216710 A JP 2015216710A JP 2015216710 A JP2015216710 A JP 2015216710A JP 2017091001 A JP2017091001 A JP 2017091001A
Authority
JP
Japan
Prior art keywords
virtual instance
time
migration
resource usage
arrangement position
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.)
Pending
Application number
JP2015216710A
Other languages
Japanese (ja)
Inventor
健吾 沖津
Kengo Okitsu
健吾 沖津
隆彦 村山
Takahiko Murayama
隆彦 村山
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015216710A priority Critical patent/JP2017091001A/en
Publication of JP2017091001A publication Critical patent/JP2017091001A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To prevent a physical sever from falling into an overload state unable to respond to a computer resource request.SOLUTION: The present invention involves: predicting, on the basis of a resource use amount till a prescribed time before the prescribed time of day of a virtual instance operating in a physical server, a first resource use amount at each time of day till a prescribed time after the prescribed time of day of the virtual instance; predicting, on the basis of a resource use amount of the virtual instance at a prescribed time and a migration condition, a second resource use amount at each time of day till a prescribed time after the prescribed time of day arising due to migration of the virtual instance, a remaining time in which the migration is carried out, and a remaining stop time at which the virtual instance is stopped by the migration; and calculating, for each physical server, an index for evaluating suitability as a migration destination for the virtual instance at the prescribed time of day on the basis of the first resource use amount, the second resource use amount, the remaining time, and the remaining stop time.SELECTED DRAWING: Figure 3

Description

本発明は、仮想インスタンス配置位置決定装置、仮想インスタンス配置位置決定方法および仮想インスタンス配置位置決定プログラムに関する。   The present invention relates to a virtual instance arrangement position determination device, a virtual instance arrangement position determination method, and a virtual instance arrangement position determination program.

従来、仮想マシンやLinux(登録商標)コンテナ等の仮想インスタンスを提供する場合には、仮想インスタンスからの計算機リソース要求を満たしつつ、より少ない物理サーバにより多くの仮想インスタンスを配置し機器集約率を向上させることが求められている。機器集約率向上のための技術として、物理サーバの計算機リソース使用状況に応じて仮想インスタンスを再配置する技術が知られている。   Conventionally, when providing virtual instances such as virtual machines and Linux (registered trademark) containers, while satisfying computer resource requirements from virtual instances, more virtual instances are placed on fewer physical servers to improve the equipment consolidation rate It is demanded to make it. As a technique for improving the device aggregation rate, a technique is known in which virtual instances are rearranged in accordance with the usage status of physical server computer resources.

仮想インスタンスを再配置する技術の一例として、VMware DRS/DPMが知られている(例えば非特許文献1)。VMware DRS/DPMは、ライブマイグレーションによる影響を考慮しつつ、ある時刻における物理サーバの計算機リソース使用量に基づいて、物理サーバの負荷を平準化させるように仮想インスタンスの配置を決定する技術である。   As an example of a technique for rearranging virtual instances, VMware DRS / DPM is known (for example, Non-Patent Document 1). VMware DRS / DPM is a technology that determines the placement of virtual instances so that the load on the physical server is leveled based on the computer resource usage of the physical server at a certain time, while taking into account the effects of live migration.

その他にも、将来時刻における物理サーバの計算機リソース使用量を予測し、予測した使用量を考慮して物理サーバ間の負荷の偏りを抑えるように仮想インスタンスの配置を決定する技術が知られている(例えば特許文献1)。   In addition, a technology for predicting the physical server computer resource usage at a future time and determining the placement of virtual instances so as to suppress the load imbalance among physical servers in consideration of the predicted usage is known. (For example, patent document 1).

特開2015−152984号公報Japanese Patent Laying-Open No. 2015-152984

Gulati, A et al, “VMware distributed resource management design, implementation, and lessons learned.” VMware Tech. J. 1(1), 45-64 (2012)Gulati, A et al, “VMware distributed resource management design, implementation, and lessons learned.” VMware Tech. J. 1 (1), 45-64 (2012)

しかしながら、従来の仮想インスタンスを再配置する技術には、物理サーバが計算機リソース要求に応えられない過負荷状態に陥る可能性があるという問題があった。   However, the conventional technology for rearranging virtual instances has a problem that the physical server may fall into an overload state where it cannot respond to computer resource requests.

例えばVMware DRS/DPMは、仮想インスタンスの計算機リソース使用量の将来の変動を考慮していない。そのため、再配置後に仮想インスタンスの計算機リソース使用量が大きくなる場合には、物理サーバが計算機リソース要求に応えられない過負荷状態に陥る可能性がある。   For example, VMware DRS / DPM does not consider future fluctuations in computer resource usage of virtual instances. For this reason, when the computer resource usage of the virtual instance increases after the relocation, the physical server may fall into an overload state where it cannot respond to the computer resource request.

また、例えば特許文献1に記載された方法は、ライブマイグレーション処理が消費する物理サーバの計算機リソースの消費量や、ライブマイグレーション処理に伴う仮想インスタンスの停止時間といった影響を考慮していない。そのため、ライブマイグレーションの影響で、物理サーバが計算機リソース要求に応えられない過負荷状態に陥る可能性がある。   Further, for example, the method described in Patent Document 1 does not consider the influences such as the consumption of computer resources of the physical server consumed by the live migration process and the stop time of the virtual instance accompanying the live migration process. Therefore, there is a possibility that the physical server may fall into an overload state where it cannot respond to the computer resource request due to the influence of live migration.

本発明の仮想インスタンス配置位置決定装置は、物理サーバ上で稼働する仮想インスタンスの所定時刻から所定時間前までのリソース使用量を基に、前記仮想インスタンスの前記所定時刻から所定時間後までの各時刻における第1のリソース使用量を予測する使用量予測部と、前記仮想インスタンスの前記所定時刻におけるリソース使用量およびマイグレーションの状況を基に、前記所定時刻から前記所定時間後までの各時刻における、前記仮想インスタンスのマイグレーションによって生じる第2のリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって前記仮想インスタンスが停止する残り停止時間と、を予測する影響予測部と、前記使用量予測部によって予測された前記第1のリソース使用量と、前記影響予測部によって予測された前記第2のリソース使用量、前記残り時間、および前記残り停止時間とを基に、前記所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を前記物理サーバごとに算出する算出部と、を有することを特徴とする。   The virtual instance arrangement position determination device according to the present invention provides each time from the predetermined time of the virtual instance to a predetermined time later, based on the resource usage from the predetermined time of the virtual instance operating on the physical server to a predetermined time. Based on the resource usage at the predetermined time and the status of migration of the virtual instance at each time from the predetermined time to the predetermined time later, An impact prediction unit that predicts a second resource usage amount generated by migration of a virtual instance, a remaining time during which the migration is performed, and a remaining stop time during which the virtual instance is stopped by the migration; and the usage amount prediction unit The first resource usage predicted by Based on the second resource usage, the remaining time, and the remaining stop time predicted by the impact prediction unit, an index for evaluating the suitability of the virtual instance as the migration destination at the predetermined time is used as the physical server. And a calculation unit for calculating each.

物理サーバ上で稼働する仮想インスタンスの所定時刻から所定時間前までのリソース使用量を基に、前記仮想インスタンスの前記所定時刻から所定時間後までの各時刻における第1のリソース使用量を予測する使用量予測工程と、前記仮想インスタンスの前記所定時刻におけるリソース使用量およびマイグレーションの状況を基に、前記所定時刻から前記所定時間後までの各時刻における、前記仮想インスタンスのマイグレーションによって生じる第2のリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって前記仮想インスタンスが停止する残り停止時間と、を予測する影響予測工程と、前記使用量予測工程によって予測された前記第1のリソース使用量と、前記影響予測工程によって予測された前記第2のリソース使用量、前記残り時間、および前記残り停止時間とを基に、前記所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を前記物理サーバごとに算出する算出工程と、を含んだことを特徴とする。   Use of predicting the first resource usage at each time from the predetermined time to the predetermined time after the virtual instance based on the resource usage from the predetermined time to the predetermined time before the virtual instance operating on the physical server A second resource usage caused by the migration of the virtual instance at each time from the predetermined time to the predetermined time based on the amount prediction step, the resource usage of the virtual instance at the predetermined time, and the status of migration An impact prediction step of predicting an amount, a remaining time during which the migration is performed, and a remaining stop time during which the virtual instance is stopped by the migration, and the first resource usage amount predicted by the usage amount prediction step And the predicted by the impact prediction step A calculation step of calculating, for each physical server, an index for evaluating the suitability of the virtual instance as the migration destination at the predetermined time based on the resource usage amount of 2, the remaining time, and the remaining stop time. It is characterized by that.

本発明によれば、物理サーバが計算機リソース要求に応えられない過負荷状態に陥ることを防止することができる。   ADVANTAGE OF THE INVENTION According to this invention, it can prevent that a physical server falls into the overload state which cannot respond to a computer resource request | requirement.

図1は、第1の実施形態に係る仮想インスタンス配置システムの構成の一例を示す図である。FIG. 1 is a diagram illustrating an example of a configuration of a virtual instance arrangement system according to the first embodiment. 図2は、第1の実施形態に係る物理サーバ制御装置の構成を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration of the physical server control device according to the first embodiment. 図3は、第1の実施形態に係る仮想インスタンス配置位置決定装置の構成を示すブロック図である。FIG. 3 is a block diagram illustrating a configuration of the virtual instance arrangement position determining apparatus according to the first embodiment. 図4は、物理サーバ基本情報DBのデータの一例を示す図である。FIG. 4 is a diagram illustrating an example of data of the physical server basic information DB. 図5は、仮想インスタンスリソース使用量DBのデータの一例を示す図である。FIG. 5 is a diagram illustrating an example of data in the virtual instance resource usage DB. 図6は、仮想インスタンスリソース使用量DBのデータの一例を示す図である。FIG. 6 is a diagram illustrating an example of data in the virtual instance resource usage DB. 図7は、仮想インスタンス配置位置DBのデータの一例を示す図である。FIG. 7 is a diagram illustrating an example of data in the virtual instance arrangement position DB. 図8は、ライブマイグレーション状態DBのデータの一例を示す図である。FIG. 8 is a diagram illustrating an example of data in the live migration state DB. 図9は、使用量予測DBのデータの一例を示す図である。FIG. 9 is a diagram illustrating an example of data in the usage amount prediction DB. 図10は、使用量予測DBのデータの一例を示す図である。FIG. 10 is a diagram illustrating an example of data in the usage amount prediction DB. 図11は、影響予測DBのデータの一例を示す図である。FIG. 11 is a diagram illustrating an example of data in the impact prediction DB. 図12は、指標DBのデータの一例を示す図である。FIG. 12 is a diagram illustrating an example of data in the index DB. 図13は、第1の実施形態に係る仮想インスタンス配置位置決定装置の処理の一例を示すフローチャートである。FIG. 13 is a flowchart illustrating an example of processing of the virtual instance arrangement position determination device according to the first embodiment. 図14は、第1の実施形態に係る仮想インスタンス配置位置決定装置の処理の一例を示すフローチャートである。FIG. 14 is a flowchart illustrating an example of processing of the virtual instance arrangement position determination device according to the first embodiment. 図15は、プログラムが実行されることにより仮想インスタンス配置位置決定装置が実現されるコンピュータの一例を示す図である。FIG. 15 is a diagram illustrating an example of a computer in which a virtual instance arrangement position determining device is realized by executing a program.

以下に、本願に係る仮想インスタンス配置位置決定装置、仮想インスタンス配置位置決定方法および仮想インスタンス配置位置決定プログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願に係る仮想インスタンス配置位置決定装置、仮想インスタンス配置位置決定方法および仮想インスタンス配置位置決定プログラムが限定されるものではない。   Hereinafter, embodiments of a virtual instance arrangement position determining apparatus, a virtual instance arrangement position determining method, and a virtual instance arrangement position determining program according to the present application will be described in detail with reference to the drawings. Note that the virtual instance arrangement position determining device, the virtual instance arrangement position determining method, and the virtual instance arrangement position determining program according to the present application are not limited to the embodiment.

[第1の実施形態]
まず、第1の実施形態に係る仮想インスタンス配置システムの構成、処理の流れおよび効果を説明する。
[First Embodiment]
First, the configuration, process flow, and effects of the virtual instance arrangement system according to the first embodiment will be described.

[第1の実施形態の構成]
(仮想インスタンス配置システムの構成)
まず、図1を用いて、仮想インスタンス配置システムの構成について説明する。図1は、第1の実施形態に係る仮想インスタンス配置システムの構成の一例を示す図である。図1に示すように、物理サーバ上には仮想インスタンスが配置されている。このとき、仮想インスタンスは、物理サーバの計算機リソースを使用して稼働する。
[Configuration of First Embodiment]
(Configuration of virtual instance placement system)
First, the configuration of the virtual instance arrangement system will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of a configuration of a virtual instance arrangement system according to the first embodiment. As shown in FIG. 1, virtual instances are arranged on the physical server. At this time, the virtual instance operates using the computer resources of the physical server.

また、1つの物理サーバ上に配置される仮想インスタンスの数は0であってもよいし、1以上であってもよい。さらに、物理サーバ間では、仮想サーバのライブマイグレーションが行われる場合がある。また、ライブマイグレーションにおいては、仮想インスタンスの稼働が所定時間停止することがある。   In addition, the number of virtual instances arranged on one physical server may be 0, or 1 or more. Furthermore, live migration of virtual servers may be performed between physical servers. In live migration, the operation of a virtual instance may stop for a predetermined time.

また、図1に示すように、仮想インスタンス配置システム1は、各物理サーバと接続されている。仮想インスタンス配置システム1は、物理サーバ制御装置10、仮想インスタンス配置位置決定装置20および時刻クロック30を有する。   As shown in FIG. 1, the virtual instance placement system 1 is connected to each physical server. The virtual instance placement system 1 includes a physical server control device 10, a virtual instance placement location determination device 20, and a time clock 30.

物理サーバ制御装置10は、物理サーバおよび仮想インスタンスに関する情報を収集し、仮想インスタンス配置位置決定装置20に提供する。仮想インスタンス配置位置決定装置20は、仮想インスタンスの配置位置を決定する。また、物理サーバ制御装置10は、物理サーバ上の仮想インスタンスを仮想インスタンス配置位置決定装置20が決定した位置に配置する。時刻クロック30は、所定のタイミングで物理サーバ制御装置10および仮想インスタンス配置位置決定装置20に処理依頼を行う。   The physical server control device 10 collects information related to the physical server and the virtual instance and provides the information to the virtual instance arrangement position determination device 20. The virtual instance arrangement position determination device 20 determines the arrangement position of the virtual instance. Further, the physical server control device 10 arranges the virtual instance on the physical server at the position determined by the virtual instance arrangement position determination device 20. The time clock 30 makes a processing request to the physical server control device 10 and the virtual instance arrangement position determination device 20 at a predetermined timing.

(物理サーバ制御装置の構成)
次に、図2を用いて物理サーバ制御装置10の構成について説明する。図2は、第1の実施形態に係る物理サーバ制御装置の構成を示すブロック図である。図2に示すように、物理サーバ制御装置10は、制御部11および記憶部12を有する。
(Configuration of physical server controller)
Next, the configuration of the physical server control device 10 will be described with reference to FIG. FIG. 2 is a block diagram illustrating a configuration of the physical server control device according to the first embodiment. As illustrated in FIG. 2, the physical server control device 10 includes a control unit 11 and a storage unit 12.

制御部11は、仮想インスタンスリソース使用量収集部111、仮想インスタンス配置位置収集部112および仮想インスタンス配置変更部113を有する。また、記憶部12は、物理サーバ基本情報DB121、仮想インスタンスリソース使用量DB122、仮想インスタンス配置位置DB123およびライブマイグレーション状態DB124を有する。   The control unit 11 includes a virtual instance resource usage collection unit 111, a virtual instance arrangement position collection unit 112, and a virtual instance arrangement change unit 113. The storage unit 12 includes a physical server basic information DB 121, a virtual instance resource usage DB 122, a virtual instance arrangement position DB 123, and a live migration state DB 124.

仮想インスタンスリソース使用量収集部111は、時刻クロック30から処理依頼を受けるたびに、各仮想インスタンスのリソース使用量を収集し、収集したリソース使用量を仮想インスタンス使用量DB122に記憶させる。例えば、時刻クロック30が1秒ごとに処理依頼を行う場合、仮想インスタンスリソース使用量収集部111は、1秒ごとに仮想インスタンス使用量DB122を更新することになる。   The virtual instance resource usage collection unit 111 collects the resource usage of each virtual instance each time a processing request is received from the time clock 30, and stores the collected resource usage in the virtual instance usage DB 122. For example, when the time clock 30 makes a processing request every second, the virtual instance resource usage collection unit 111 updates the virtual instance usage DB 122 every second.

仮想インスタンス配置位置収集部112は、時刻クロック30から処理依頼を受けるたびに、各仮想インスタンスの配置位置を収集し、収集した配置位置を仮想インスタンス配置位置DB123に記憶させる。例えば、時刻クロック30が1秒ごとに処理依頼を行う場合、仮想インスタンス配置位置収集部112は、1秒ごとに仮想インスタンス配置位置DB123を更新することになる。   The virtual instance arrangement position collection unit 112 collects the arrangement position of each virtual instance each time a processing request is received from the time clock 30 and stores the collected arrangement position in the virtual instance arrangement position DB 123. For example, when the time clock 30 makes a processing request every second, the virtual instance arrangement position collection unit 112 updates the virtual instance arrangement position DB 123 every second.

仮想インスタンス配置変更部113は、仮想インスタンスのマイグレーション先が決定された場合に、仮想インスタンスを当該配置先の物理サーバへ配置する。仮想インスタンス配置変更部113は、例えばライブマイグレーション状態DB124に記憶されている情報を一定時間ごとに参照して配置先の物理サーバを取得する。   When the virtual instance migration destination is determined, the virtual instance arrangement changing unit 113 arranges the virtual instance on the physical server of the arrangement destination. For example, the virtual instance arrangement changing unit 113 refers to information stored in the live migration state DB 124 at regular time intervals to acquire an arrangement destination physical server.

物理サーバ基本情報DB121は、各物理サーバのCPUスペックおよびメモリ容量を記憶する。ここで、図4を用いて物理サーバ基本情報DB121のデータについて説明する。図4は、物理サーバ基本情報DBのデータの一例を示す図である。図4に示すように、物理サーバ基本情報DB121は、物理サーバのサーバIDごとにCPUスペック(単位:GHz)およびメモリ容量(単位MB)を記憶する。   The physical server basic information DB 121 stores the CPU specifications and memory capacity of each physical server. Here, the data of the physical server basic information DB 121 will be described with reference to FIG. FIG. 4 is a diagram illustrating an example of data of the physical server basic information DB. As shown in FIG. 4, the physical server basic information DB 121 stores a CPU specification (unit: GHz) and a memory capacity (unit MB) for each server ID of the physical server.

物理サーバIDは、物理サーバを識別するためのIDである。以降、物理サーバIDがiである物理サーバを物理サーバkと表す。また、CPUスペックは、使用可能なCPUスペックの最大値を示す。また、メモリ容量は、使用可能なメモリ容量の最大値を示す。例えば、物理サーバ1は、最大3.0GHzのCPUスペックおよび最大2000MBのメモリ容量が使用可能であることを示している。なお、物理サーバ基本情報DB121のデータは、あらかじめ手動または自動で入力されているものとする。   The physical server ID is an ID for identifying the physical server. Hereinafter, a physical server whose physical server ID is i is represented as a physical server k. Further, the CPU spec indicates the maximum value of the usable CPU spec. The memory capacity indicates the maximum value of usable memory capacity. For example, the physical server 1 indicates that a CPU specification of maximum 3.0 GHz and a memory capacity of maximum 2000 MB can be used. It is assumed that the data in the physical server basic information DB 121 is input manually or automatically in advance.

仮想インスタンスリソース使用量DB122は、各仮想インスタンスの各時刻におけるリソース使用量を記憶する。ここで、図5および図6を用いて仮想インスタンスリソース使用量DB122のデータについて説明する。図5および図6は、仮想インスタンスリソース使用量DBのデータの一例を示す図である。   The virtual instance resource usage DB 122 stores the resource usage at each time of each virtual instance. Here, the data in the virtual instance resource usage DB 122 will be described with reference to FIGS. 5 and 6. 5 and 6 are diagrams illustrating an example of data in the virtual instance resource usage DB.

図5に示すように、仮想インスタンスリソース使用量DB122は、各仮想インスタンスの各時刻におけるCPUスペックの使用量を記憶する。仮想インスタンスIDは、仮想インスタンスを識別するIDである。以降、仮想インスタンスがiである仮想インスタンスを仮想インスタンスiと表す。例えば、仮想インスタンス1の時刻tにおけるCPUスペックの使用量は、0.33GHzである。   As shown in FIG. 5, the virtual instance resource usage DB 122 stores the usage amount of the CPU spec at each time of each virtual instance. The virtual instance ID is an ID for identifying a virtual instance. Hereinafter, a virtual instance whose virtual instance is i is represented as a virtual instance i. For example, the usage amount of the CPU spec at the time t of the virtual instance 1 is 0.33 GHz.

また、図6に示すように、仮想インスタンスリソース使用量DB122は、各仮想インスタンスの各時刻におけるメモリ容量を記憶する。例えば、仮想インスタンス1の時刻tにおけるメモリ容量の使用量は、30MBである。   As illustrated in FIG. 6, the virtual instance resource usage DB 122 stores the memory capacity of each virtual instance at each time. For example, the usage amount of the memory capacity of virtual instance 1 at time t is 30 MB.

仮想インスタンス配置位置DB123は、各仮想インスタンスの配置されている物理サーバを記憶する。ここで、図7を用いて仮想インスタンス配置位置DB123のデータについて説明する。図7は、仮想インスタンス配置位置DBのデータの一例を示す図である。例えば、仮想インスタンス1は物理サーバ3に配置されている。   The virtual instance arrangement position DB 123 stores a physical server in which each virtual instance is arranged. Here, the data in the virtual instance arrangement position DB 123 will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of data in the virtual instance arrangement position DB. For example, the virtual instance 1 is arranged on the physical server 3.

ライブマイグレーション状態DB124は、各仮想インスタンスのライブマイグレーションの状態を記憶する。ここで、図8を用いてライブマイグレーション状態DB124のデータについて説明する。図8は、ライブマイグレーション状態DBのデータの一例を示す図である。マイグレーション状態は、マイグレーション中であるか否かを示している。また、マイグレーション送信元物理サーバIDは、現在配置されている物理サーバのIDを示している。また、マイグレーション宛先物理サーバIDは、配置先の物理サーバのIDを示している。   The live migration status DB 124 stores the live migration status of each virtual instance. Here, the data of the live migration state DB 124 will be described with reference to FIG. FIG. 8 is a diagram illustrating an example of data in the live migration state DB. The migration status indicates whether migration is in progress. The migration source physical server ID indicates the ID of the physical server currently arranged. The migration destination physical server ID indicates the ID of the physical server that is the placement destination.

例えば、仮想インスタンス1は、マイグレーション状態が0であるため、ライブマイグレーション中ではない。また、仮想インスタンス2は、マイグレーション状態が1であるため、ライブマイグレーション中であり、物理サーバ2から物理サーバ1へ配置が変更されている。   For example, the virtual instance 1 is not in live migration because the migration state is 0. In addition, since the migration state of the virtual instance 2 is 1, live migration is being performed, and the arrangement of the physical instance 2 is changed from the physical server 2 to the physical server 1.

(仮想インスタンス配置位置決定装置の構成)
次に、図3を用いて仮想インスタンス配置位置決定装置20の構成について説明する。図3は、第1の実施形態に係る仮想インスタンス配置位置決定装置の構成を示すブロック図である。図3に示すように、仮想インスタンス配置位置決定装置20は、制御部21および記憶部22を有する。
(Configuration of virtual instance placement position determination device)
Next, the configuration of the virtual instance arrangement position determination device 20 will be described with reference to FIG. FIG. 3 is a block diagram illustrating a configuration of the virtual instance arrangement position determining apparatus according to the first embodiment. As illustrated in FIG. 3, the virtual instance arrangement position determination device 20 includes a control unit 21 and a storage unit 22.

制御部21は、決定部211、使用量予測部212、影響予測部213および算出部214を有する。また、記憶部22は、使用量予測DB221、影響予測DB222および指標DB223を有する。   The control unit 21 includes a determination unit 211, a usage amount prediction unit 212, an influence prediction unit 213, and a calculation unit 214. The storage unit 22 includes a usage amount prediction DB 221, an impact prediction DB 222, and an index DB 223.

決定部211は、時刻クロック30から処理依頼を受けるたびに、制御部21の各部に処理を実行させ、算出部214によって算出された指標が最大となる物理サーバを、仮想インスタンスのマイグレーション先として決定する。また、決定部211は、配置先を決定した仮想インスタンスのライブマイグレーション状態DB124のマイグレーション状態を1に更新し、マイグレーション送信元物理サーバIDを当該仮想インスタンスが配置されている物理サーバの物理サーバIDに更新し、マイグレーション宛先物理サーバIDを決定した配置先の物理サーバの物理サーバIDに更新する。   Each time the determination unit 211 receives a processing request from the time clock 30, the determination unit 211 causes each unit of the control unit 21 to execute processing, and determines the physical server with the maximum index calculated by the calculation unit 214 as the migration destination of the virtual instance. To do. In addition, the determination unit 211 updates the migration state of the live migration state DB 124 of the virtual instance whose placement destination has been determined to 1, and sets the migration source physical server ID to the physical server ID of the physical server in which the virtual instance is placed. The migration destination physical server ID is updated and updated to the physical server ID of the placement destination physical server.

使用量予測部212は、物理サーバ上で稼働する仮想インスタンスの所定時刻(例えば時刻t)から所定時間前(例えば時刻t−A)までのリソース使用量を基に、仮想インスタンスの所定時刻から所定時間後(例えば時刻t+B)までの各時刻における第1のリソース使用量を予測する。また、使用量予測部212は、予測したリソース使用量を使用量予測DB221に記憶させる。   The usage amount predicting unit 212 is predetermined from a predetermined time of the virtual instance based on a resource usage amount from a predetermined time (for example, time t) of the virtual instance operating on the physical server to a predetermined time before (for example, time t-A). The first resource usage amount at each time after time (for example, time t + B) is predicted. Further, the usage amount prediction unit 212 stores the predicted resource usage amount in the usage amount prediction DB 221.

使用量予測DB221は、各仮想インスタンスの各時刻におけるリソース使用量の予測値を記憶する。ここで、図9および図10を用いて使用量予測DB221のデータについて説明する。図9および図10は、使用量予測DBのデータの一例を示す図である。   The usage amount prediction DB 221 stores the predicted value of the resource usage amount at each time of each virtual instance. Here, data of the usage amount prediction DB 221 will be described with reference to FIGS. 9 and 10. 9 and 10 are diagrams illustrating an example of data in the usage amount prediction DB.

図9に示すように、使用量予測DB221は、各仮想インスタンスの各時刻におけるCPUスペックの使用量の予測値を記憶する。例えば、仮想インスタンスIDが1である仮想インスタンスの時刻t+BにおけるCPUスペックの使用量の予測値は、0.33GHzである。   As illustrated in FIG. 9, the usage amount prediction DB 221 stores a predicted value of the usage amount of the CPU spec at each time of each virtual instance. For example, the predicted value of the usage amount of the CPU spec at time t + B of the virtual instance whose virtual instance ID is 1 is 0.33 GHz.

また、図10に示すように、使用量予測DB221は、各仮想インスタンスの各時刻におけるメモリ容量を記憶する。例えば、仮想インスタンス1の時刻t+Bにおけるメモリ容量の使用量の予測値は、30MBである。   As illustrated in FIG. 10, the usage amount prediction DB 221 stores the memory capacity of each virtual instance at each time. For example, the predicted value of the memory capacity usage of virtual instance 1 at time t + B is 30 MB.

使用量予測部212がリソース使用量を予測する手順について説明する。まず、予測において使用される各データの表し方について説明する。   A procedure for the usage amount prediction unit 212 to predict the resource usage amount will be described. First, how to represent each data used in prediction will be described.

仮想インスタンスの集合は式(1)のように表される。例えば、第i番目の仮想インスタンスは、CO等と表される。 A set of virtual instances is expressed as shown in Equation (1). For example, the i-th virtual instance is represented as CO i or the like.

Figure 2017091001
Figure 2017091001

物理サーバの集合は、式(2)のように表される。例えば、第k番目の物理サーバは、S等と表される。 A set of physical servers is expressed as shown in Equation (2). For example, the k-th physical server is expressed as S k or the like.

Figure 2017091001
Figure 2017091001

各物理サーバのCPUスペックの最大値は、式(3)に示す1×nベクトルによって表される。式(3)は、図4の物理サーバ基本情報DB121のCPUスペックをベクトルで表したものである。 The maximum value of the CPU specifications of each physical server is represented by a 1 × ns vector shown in Expression (3). Expression (3) represents the CPU specifications of the physical server basic information DB 121 of FIG. 4 as a vector.

Figure 2017091001
Figure 2017091001

なお、MX(S)は、物理サーバSのCPUスペックの最大値を表している。また、全ての物理サーバが同一のCPUスペックの最大値を持つ場合は、物理サーバSのCPUスペックの最大値は単にMXと表してもよい。 Incidentally, MX c (S k) represents the maximum value of the CPU specification of the physical server S k. Further, if all of the physical servers with the largest value of the same CPU specification, the maximum value of the CPU specification of the physical server S k may be simply expressed as MX c.

各物理サーバのメモリ容量の最大値は、式(4)に示す1×nベクトルによって表される。式(4)は、図4の物理サーバ基本情報DB121のメモリ容量をベクトルで表したものである。 The maximum value of the memory capacity of each physical server is represented by a 1 × ns vector shown in Equation (4). Expression (4) represents the memory capacity of the physical server basic information DB 121 of FIG. 4 as a vector.

Figure 2017091001
Figure 2017091001

なお、MX(S)は、物理サーバSのメモリ容量の最大値を表している。また、全ての物理サーバが同一のメモリ容量の最大値を持つ場合は、物理サーバSのメモリ容量の最大値は単にMXと表してもよい。 MX m (S k ) represents the maximum value of the memory capacity of the physical server S k . Further, if all of the physical servers with the largest value of the same memory capacity, the maximum value of the memory capacity of the physical server S k may be simply expressed as MX m.

時刻tにおける各仮想インスタンスのCPUスペックの消費量は、式(5)に示す1×ncoベクトルによって表される。式(5)は、図5の仮想インスタンスリソース使用量DB122の時刻tにおけるCPUスペックの使用量をベクトルで表したものである。 The CPU spec consumption of each virtual instance at time t is represented by a 1 × n co vector shown in Equation (5). Expression (5) represents the CPU spec usage at time t in the virtual instance resource usage DB 122 of FIG. 5 as a vector.

Figure 2017091001
Figure 2017091001

なお、c(t)は、時刻tにおける仮想インスタンスcoのCPUスペックの消費量を表している。 Note that c i (t) represents the CPU spec consumption of the virtual instance co i at time t.

時刻tにおける各仮想インスタンスのメモリ容量の消費量は、式(6)に示す1×ncoベクトルによって表される。式(6)は、図6の仮想インスタンスリソース使用量DB122の時刻tにおけるメモリ容量の使用量をベクトルで表したものである。 The consumption of the memory capacity of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (6). Expression (6) represents the amount of memory capacity used at time t in the virtual instance resource usage DB 122 of FIG. 6 as a vector.

Figure 2017091001
Figure 2017091001

なお、m(t)は、時刻tにおける仮想インスタンスcoのメモリ容量の消費量を表している。 Note that m i (t) represents the memory capacity consumption of the virtual instance co i at time t.

時刻tにおける各仮想インスタンスが配置されている物理サーバは、式(7)に示す1×ncoベクトルによって表される。式(7)は、図7の仮想インスタンス配置位置DB123の時刻tにおける配置されている物理サーバのIDをベクトルで表したものである。 A physical server in which each virtual instance at time t is arranged is represented by a 1 × n co vector shown in Expression (7). Expression (7) represents the ID of the physical server arranged at the time t in the virtual instance arrangement position DB 123 of FIG. 7 as a vector.

Figure 2017091001
Figure 2017091001

ただし、p(t)は、式(8)に示すように、時刻tにおける仮想インスタンスIDがiである仮想インスタンスが配置されている物理サーバの物理サーバIDを返す関数である。 However, p i (t) is a function that returns the physical server ID of the physical server in which the virtual instance whose virtual instance ID is i at time t is arranged, as shown in Expression (8).

Figure 2017091001
Figure 2017091001

また、予測においては、式(9)に示すような、時刻tにおいて物理サーバkに配置されている仮想インスタンスの仮想インスタンスIDの成分だけ1を取る1×ncoベクトルも使用される。 In the prediction, a 1 × n co vector that takes 1 only for the component of the virtual instance ID of the virtual instance placed in the physical server k at time t as shown in Expression (9) is also used.

Figure 2017091001
Figure 2017091001

また、予測においては、式(10)に示すような、全ての成分が1である1×ncoベクトルも使用される。 In the prediction, a 1 × n co vector in which all components are 1 as shown in Expression (10) is also used.

Figure 2017091001
Figure 2017091001

次に、使用量予測部212がリソース使用量を予測する際の具体的な計算方法について説明する。使用量予測部212は、リソース使用量に対して確率過程モデルを想定し、現在の時刻tよりAだけ前の時刻までのリソース使用量のデータを使ってモデルパラメータを推定し、現在の時刻tからBだけ後の時刻までのリソース使用量を予測する。   Next, a specific calculation method when the usage amount prediction unit 212 predicts the resource usage amount will be described. The usage amount prediction unit 212 assumes a stochastic process model for the resource usage amount, estimates model parameters using data of the resource usage amount up to time A before the current time t, and determines the current time t The resource usage from B to the time after B is predicted.

使用量予測部212は、確率過程モデルとして例えばランダム・ウォーク、ポアソン過程、AR(AutoRegressive)モデル、MA(Moving Average)モデル、ARMAモデル、ARIMAモデル等を用いることができる。また、使用量予測部212は、パラメータ推定方法として、例えばARモデルであればYule Walker法、ポアソン過程であれば最尤法等を用いることができる。   The usage amount prediction unit 212 can use, for example, a random walk, a Poisson process, an AR (Auto Regressive) model, an MA (Moving Average) model, an ARMA model, an ARIMA model, or the like as a stochastic process model. Further, the usage amount prediction unit 212 can use, for example, the Yule Walker method for the AR model and the maximum likelihood method for the Poisson process as the parameter estimation method.

本実施形態においては、使用量予測部212は、確率過程モデルとしてARモデルを用い、パラメータ推定方法としてYule Walker法を用いることとする。なお、使用量予測部212は、時刻t+B以降は、これまでのリソース使用量の平均値が無限に続くものとして定式化する。   In the present embodiment, the usage amount prediction unit 212 uses the AR model as the stochastic process model and uses the Yule Walker method as the parameter estimation method. Note that the usage amount prediction unit 212 formulates that the average value of the resource usage so far continues indefinitely after time t + B.

まず、使用量予測部212は、時刻tまでのCPUスペックの使用量のデータを仮想インスタンスリソース使用量DB122から取得し、取得したCPUスペックの使用量を基に、式(11)によって仮想インスタンスiの時刻t+1におけるCPUスペックの使用量を予測する。   First, the usage amount prediction unit 212 acquires CPU spec usage data up to time t from the virtual instance resource usage DB 122, and based on the acquired CPU spec usage amount, the virtual instance i is expressed by Expression (11). CPU usage at time t + 1 is predicted.

Figure 2017091001
Figure 2017091001

そして、使用量予測部212は、標本平均を式(12)のようにおき、標本自己相関関数を式(13)のようにおく。   Then, the usage amount prediction unit 212 places the sample average as shown in Equation (12) and places the sample autocorrelation function as shown in Equation (13).

Figure 2017091001
Figure 2017091001

Figure 2017091001
Figure 2017091001

さらに、使用量予測部212は、式(14)に示すYule Walker方程式を解くことで、パラメータa,a,…,aの最尤推定値を求める。 Further, the usage amount prediction unit 212 obtains the maximum likelihood estimated value of the parameters a 1 , a 2 ,..., A M by solving the Yule Walker equation shown in Expression (14).

Figure 2017091001
Figure 2017091001

また、使用量予測部212は、式(15)によりσ の推定値を求める。 In addition, the usage amount predicting unit 212 obtains an estimated value of σ i 2 using Equation (15).

Figure 2017091001
Figure 2017091001

ここで、求めたσ の推定値を次数Mの時の分散の推定値として表すと、次数MのAICは式(16)のように表される。 Here, when the obtained estimated value of σ i 2 is expressed as an estimated value of variance when the order is M, the AIC of the order M is expressed as Expression (16).

Figure 2017091001
Figure 2017091001

使用量予測部212は、式(16)のAICが最小となる次数Mを選択することで、予測モデルを決定する。そして、使用量予測部212は、決定した予測モデルを用いて、式(17)によって時刻t+τにおける仮想インスタンスiのCPUスペックの使用量を予測する。 The usage amount prediction unit 212 determines the prediction model by selecting the order M * that minimizes the AIC M in Expression (16). Then, the usage amount prediction unit 212 predicts the usage amount of the CPU spec of the virtual instance i at the time t + τ by Expression (17) using the determined prediction model.

Figure 2017091001
Figure 2017091001

なお、上記の説明においては、リソース使用量の例としてCPUスペックの使用量を用いたが、使用量予測部212は、例えばメモリ容量の使用量についても同様の方法で予測することができる。   In the above description, the usage amount of the CPU spec is used as an example of the resource usage amount. However, the usage amount prediction unit 212 can predict the usage amount of the memory capacity in the same manner, for example.

影響予測部213は、仮想インスタンスの所定時刻におけるリソース使用量およびマイグレーションの状況を基に、所定時刻から所定時間後までの各時刻における、仮想インスタンスのマイグレーションによって生じるリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって仮想インスタンスが停止する残り停止時間と、を予測する。また、影響予測部213は、予測したマイグレーションによる影響を影響予測DB222に記憶させる。   Based on the resource usage and migration status of the virtual instance at a predetermined time, the impact prediction unit 213 determines the resource usage generated by the migration of the virtual instance at each time from the predetermined time to a predetermined time and the migration. And the remaining stop time during which the virtual instance stops due to the migration. Further, the impact prediction unit 213 stores the impact due to the predicted migration in the impact prediction DB 222.

影響予測DB222は、各仮想インスタンスの各時刻におけるマイグレーションの影響の観測値および予測値を記憶する。ここで、図11を用いて影響予測DB222のデータについて説明する。図11は、影響予測DBのデータの一例を示す図である。   The impact prediction DB 222 stores observed values and predicted values of the impact of migration at each time of each virtual instance. Here, the data of the impact prediction DB 222 will be described with reference to FIG. FIG. 11 is a diagram illustrating an example of data in the impact prediction DB.

図11に示すように、影響予測DB222は、各仮想インスタンスの各時刻におけるマイグレーション残り時間、マイグレーションによる停止時間、送信元サーバの平均CPUスペック使用量、宛先サーバの平均CPUスペック使用量、送信元サーバの平均メモリ容量使用量、宛先サーバの平均メモリ容量使用量、および停止フラグの観測値および予測値を記憶する。   As shown in FIG. 11, the impact prediction DB 222 includes the remaining migration time at each time of each virtual instance, the stop time due to migration, the average CPU spec usage of the transmission source server, the average CPU spec usage of the destination server, and the transmission source server. The average memory capacity use amount, the average memory capacity use amount of the destination server, and the observed value and predicted value of the stop flag are stored.

例えば、仮想インスタンス1は、マイグレーションが開始される直前の状態であり、マイグレーション残り時間が50であり、マイグレーションによる停止時間、送信元サーバの平均CPUスペック使用量、宛先サーバの平均CPUスペック使用量、宛先サーバの平均メモリ容量使用量、宛先サーバの平均メモリ容量使用量、および停止フラグは0である。   For example, the virtual instance 1 is in a state immediately before the start of migration, the remaining migration time is 50, the stop time due to migration, the average CPU spec usage of the transmission source server, the average CPU spec usage of the destination server, The average memory capacity usage of the destination server, the average memory capacity usage of the destination server, and the stop flag are 0.

また、例えば、仮想インスタンス2は、マイグレーション中かつ仮想インスタンスが未停止の状態であり、マイグレーション残り時間が100、マイグレーションによる停止時間が50、送信元サーバの平均CPUスペック使用量が0.01、宛先サーバの平均CPUスペック使用量が0.02、送信元サーバの平均メモリ容量使用量が30、宛先サーバの平均メモリ容量使用量が50、停止フラグが0である。   Further, for example, the virtual instance 2 is in the state of being migrated and the virtual instance is not stopped, the remaining migration time is 100, the migration stop time is 50, the average CPU spec usage of the transmission source server is 0.01, the destination The average CPU spec usage of the server is 0.02, the average memory capacity usage of the transmission source server is 30, the average memory usage of the destination server is 50, and the stop flag is 0.

また、例えば、仮想インスタンス3は、マイグレーション中かつ仮想インスタンスが停止している状態であり、マイグレーション残り時間が40、マイグレーションによる停止時間が40、送信元サーバの平均CPUスペック使用量が0.02、宛先サーバの平均CPUスペック使用量が0.01、送信元サーバの平均メモリ容量使用量が20、宛先サーバの平均メモリ容量使用量が20、停止フラグが1である。   Further, for example, the virtual instance 3 is in a state of being migrated and the virtual instance is stopped, the migration remaining time is 40, the migration stop time is 40, the average CPU spec usage of the transmission source server is 0.02, The destination server's average CPU spec usage is 0.01, the source server's average memory capacity usage is 20, the destination server's average memory capacity usage is 20, and the stop flag is 1.

なお、時刻tを現在時刻とすると、影響予測DB222は、時刻tについては観測値を記憶し、時刻t+1以降については、後述の予測方法によって予測された予測値を記憶する。また、時刻t+Bまでの予測が行われた場合、影響予測DB222は、各時刻について図11に示すようなテーブルを記憶するため、B+1個のテーブルを記憶することになる。また、マイグレーションが行われていない場合、影響予測DB222の各値はいずれも0になる。また、マイグレーションが行われていて、かつ仮想インスタンスが稼働を停止している場合は停止フラグが1になる。   When time t is the current time, the impact prediction DB 222 stores an observed value for time t, and stores a predicted value predicted by a prediction method described later for time t + 1 and thereafter. Further, when the prediction is performed up to time t + B, the impact prediction DB 222 stores a table as shown in FIG. 11 for each time, and therefore stores B + 1 tables. When migration is not performed, each value in the impact prediction DB 222 is 0. Further, when migration is being performed and the virtual instance has stopped operating, the stop flag becomes 1.

影響予測部213がマイグレーションによる影響を予測する手順について説明する。まず、予測において使用される各データの表し方について説明する。   A procedure for the influence prediction unit 213 to predict the influence of migration will be described. First, how to represent each data used in prediction will be described.

時刻tにおける各仮想インスタンスのマイグレーション状態は、式(18)に示す1×ncoベクトルによって表される。式(18)は、図8のライブマイグレーション状態DB124のマイグレーション状態をベクトルで表したものである。 The migration state of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (18). Expression (18) represents the migration state of the live migration state DB 124 of FIG. 8 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスのマイグレーションの残り時間は、式(19)に示す1×ncoベクトルによって表される。式(19)は、図11の影響予測DB222のマイグレーション残り時間をベクトルで表したものである。 The remaining migration time of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (19). Expression (19) represents the remaining migration time in the impact prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

ここで、例えば時刻がtからt+1に変化した場合、マイグレーション残り時間は1だけ減算されるため、mgt(t)>0である場合、mgt(t+1)=mgt(t)−1と表される。 Here, for example, when the time changes from t to t + 1, the remaining migration time is subtracted by 1. Therefore, when mgt i (t)> 0, mgt i (t + 1) = mgt i (t) −1 expressed.

時刻tにおける各仮想インスタンスのマイグレーション送信元物理サーバは、式(20)に示す1×ncoベクトルによって表される。式(20)は、図8のライブマイグレーション状態DB124のマイグレーション送信元物理サーバIDをベクトルで表したものである。 The migration source physical server of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (20). Expression (20) represents the migration source physical server ID of the live migration state DB 124 of FIG. 8 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスのマイグレーション宛先物理サーバは、式(21)に示す1×ncoベクトルによって表される。式(21)は、図8のライブマイグレーション状態DB124のマイグレーション宛先物理サーバIDをベクトルで表したものである。 The migration destination physical server of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (21). Expression (21) represents the migration destination physical server ID of the live migration state DB 124 of FIG. 8 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスのマイグレーションによる停止時間は、式(22)に示す1×ncoベクトルによって表される。式(22)は、図11の影響予測DB222のマイグレーションによる停止時間をベクトルで表したものである。 The stop time due to migration of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (22). Expression (22) represents the stop time due to migration of the influence prediction DB 222 of FIG. 11 as a vector.

ここで、例えば時刻がtからt+1に変化した場合に、ft(t)≦mgt(t)であれば、マイグレーションによる停止時間は1だけ減算されるため、ft(t+1)=ft(t)−1と表される。 Here, for example, when the time changes from t to t + 1, if ft i (t) ≦ mgt i (t), the stop time due to migration is subtracted by 1, so ft i (t + 1) = ft i It is expressed as (t) -1.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスの送信元サーバの平均CPUスペック使用量は、式(23)に示す1×ncoベクトルによって表される。式(23)は、図11の影響予測DB222の送信元サーバの平均CPUスペック使用量をベクトルで表したものである。 The average CPU spec usage of the transmission source server of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (23). Expression (23) represents the average CPU spec usage of the transmission source server in the influence prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスの宛先サーバの平均CPUスペック使用量は、式(24)に示す1×ncoベクトルによって表される。式(24)は、図11の影響予測DB222の宛先サーバの平均CPUスペック使用量をベクトルで表したものである。 The average CPU spec usage of the destination server of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (24). Expression (24) represents the average CPU spec usage of the destination server in the impact prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスの送信元サーバの平均メモリ容量使用量は、式(25)に示す1×ncoベクトルによって表される。式(25)は、図11の影響予測DB222の送信元サーバの平均メモリ容量使用量をベクトルで表したものである。 The average memory capacity usage of the transmission source server of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (25). Expression (25) represents the average memory capacity usage of the transmission source server in the influence prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスの宛先サーバの平均メモリ容量使用量は、式(26)に示す1×ncoベクトルによって表される。式(26)は、図11の影響予測DB222の宛先サーバの平均メモリ容量使用量をベクトルで表したものである。 The average memory capacity usage of the destination server of each virtual instance at time t is represented by a 1 × n co vector shown in Equation (26). Expression (26) represents the average memory capacity usage of the destination server in the impact prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

時刻tにおける各仮想インスタンスの停止フラグは、式(27)に示す1×ncoベクトルによって表される。式(27)は、図11の影響予測DB222の停止フラグをベクトルで表したものである。 The stop flag of each virtual instance at time t is represented by a 1 × n co vector shown in Expression (27). Expression (27) represents the stop flag of the influence prediction DB 222 of FIG. 11 as a vector.

Figure 2017091001
Figure 2017091001

次に、これまで説明した各ベクトルMgT(t)、FT(t)、MgC(t)、MgC(t)、MgM(t)、MgM(t)、FF(t)の影響予測部213による算出方法について説明する。なお、各予測係数αmgt、αft、α mgc、α mgc、α mgm、α mgmは、いずれも正の実数であり、事前に計測実験により求められた定数である。 Next, each vector MgT described so far (t), FT (t) , MgC s (t), MgC d (t), MgM s (t), MgM d (t), effects the prediction of FF (t) A calculation method by the unit 213 will be described. Note that each of the prediction coefficients α mgt , α ft , α s mgc , α d mgc , α s mgm , and α d mgm is a positive real number and is a constant obtained in advance by a measurement experiment.

仮想インスタンスのマイグレーションの残り時間はメモリ容量の使用量m(t)に比例するため、影響予測部213は、式(19)のベクトルMgT(t)の各要素を式(28)によって求める。 Since the remaining virtual instance migration time is proportional to the memory capacity usage m i (t), the impact prediction unit 213 obtains each element of the vector MgT (t) of Equation (19) by Equation (28).

Figure 2017091001
Figure 2017091001

仮想インスタンスのマイグレーションによる停止時間はメモリ容量の使用量m(t)に比例するため、影響予測部213は、式(22)のベクトルFT(t)の各要素を式(29)によって求める。 Since the stop time due to the migration of the virtual instance is proportional to the memory capacity use amount m i (t), the impact prediction unit 213 obtains each element of the vector FT (t) of Expression (22) by Expression (29).

Figure 2017091001
Figure 2017091001

仮想インスタンスのマイグレーションによる送信元物理サーバのCPUスペックの使用量は、メモリ容量の使用量m(t)の影響をほとんど受けないため、影響予測部213は、式(23)のベクトルMgC(t)の各要素を式(30)によって求める。 Since the usage amount of the CPU specification of the transmission source physical server due to the migration of the virtual instance is hardly affected by the usage amount m i (t) of the memory capacity, the impact prediction unit 213 uses the vector MgC s ( Each element of t) is obtained by equation (30).

Figure 2017091001
Figure 2017091001

仮想インスタンスのマイグレーションによる宛先物理サーバのCPUスペックの使用量は、メモリ容量の使用量m(t)にゆるやかに比例するため、影響予測部213は、式(24)のベクトルMgC(t)の各要素を式(31)によって求める。 Since the usage amount of the CPU specification of the destination physical server due to the migration of the virtual instance is gently proportional to the usage amount m i (t) of the memory capacity, the influence prediction unit 213 uses the vector MgC d (t) in Expression (24). Each element of is calculated | required by Formula (31).

Figure 2017091001
Figure 2017091001

また、仮想インスタンスのマイグレーションによる宛先物理サーバのCPUスペックの使用量は、メモリ容量の使用量m(t)に比例するとみなして、影響予測部213は、式(24)のベクトルMgC(t)の各要素を式(32)によって求めてもよい。 Also, assuming that the usage amount of the CPU specification of the destination physical server due to the migration of the virtual instance is proportional to the usage amount m i (t) of the memory capacity, the impact prediction unit 213 determines the vector MgC d (t) in Expression (24). ) May be obtained by equation (32).

Figure 2017091001
Figure 2017091001

仮想インスタンスのマイグレーションによる送信元物理サーバのメモリ容量の使用量は、メモリ容量の使用量m(t)の影響をほとんど受けないため、影響予測部213は、式(25)のベクトルMgM(t)の各要素を式(33)によって求める。 Since the memory capacity usage of the transmission source physical server due to the virtual instance migration is hardly affected by the memory capacity usage m i (t), the impact prediction unit 213 uses the vector MgM s ( Each element of t) is obtained by Expression (33).

Figure 2017091001
Figure 2017091001

仮想インスタンスのマイグレーションによる宛先物理サーバのメモリ容量の使用量は、メモリ容量の使用量m(t)に比例するため、影響予測部213は、式(26)のベクトルMgM(t)の各要素を式(34)によって求める。 Since the usage amount of the memory capacity of the destination physical server due to the migration of the virtual instance is proportional to the usage amount m i (t) of the memory capacity, the impact prediction unit 213 calculates each of the vectors MgM d (t) in Expression (26). An element is calculated | required by Formula (34).

Figure 2017091001
Figure 2017091001

算出部214は、使用量予測部212によって予測されたリソース使用量と、影響予測部213によって予測されたリソース使用量、残り時間、および残り停止時間とを基に、所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を物理サーバごとに算出する。   The calculation unit 214 migrates the virtual instance at a predetermined time based on the resource usage predicted by the usage prediction unit 212 and the resource usage, remaining time, and remaining stop time predicted by the impact prediction unit 213. An index for evaluating suitability as a destination is calculated for each physical server.

算出部214は、使用量予測部212によって予測されたリソース使用量および影響予測部213によって予測されたリソース使用量が小さくなるにつれて大きくなる超過ペナルティと、残り停止時間に基づく仮想インスタンスの停止により要求に答えられなかったリソース使用量が小さくなるにつれて大きくなる使用要求不可ペナルティとを算出し、超過ペナルティおよび使用要求不可ペナルティの和に基づいて指標を算出する。   The calculation unit 214 requests a resource usage amount predicted by the usage amount prediction unit 212 and an excess penalty that increases as the resource usage amount predicted by the influence prediction unit 213 decreases and a virtual instance stop based on the remaining stop time. The usage request impossibility penalty that increases as the resource usage that cannot be answered is calculated, and an index is calculated based on the sum of the excess penalty and the use request impossibility penalty.

さらに、算出部214は、仮想インスタンスが配置された物理サーバの数が小さくなるにつれて大きくなる使用物理サーバ台数ペナルティを算出し、超過ペナルティおよび使用要求不可ペナルティの和に第1の係数を乗じた値と、第3の値に第2の係数を乗じた値と、の和に基づいて指標を算出するようにしてもよい。なお、第1の係数と第2の係数との和は、一定の定数(例えば1)である。   Further, the calculation unit 214 calculates a used physical server number penalty that increases as the number of physical servers on which virtual instances are arranged decreases, and a value obtained by multiplying the sum of the excess penalty and the use request impossible penalty by the first coefficient The index may be calculated based on the sum of the third value multiplied by the second coefficient. Note that the sum of the first coefficient and the second coefficient is a constant (for example, 1).

ここで、算出部214は、まずCPUスペックの使用量を正規化するための定数N、およびメモリ容量の使用量を正規化するための定数Nを定義する。算出部214は、例えばNを物理サーバのCPUスペックの平均値E[MX]とすることができる。また、算出部214は、Nを例えば物理サーバのメモリ容量の平均値E[MX]とすることができる。 Here, the calculation unit 214 first defines a constant N c for normalizing the usage amount of the CPU specification and a constant N m for normalizing the usage amount of the memory capacity. For example, the calculation unit 214 can set N c as the average value E [MX c ] of the CPU specifications of the physical server. In addition, the calculation unit 214 can set N m to, for example, the average value E [MX m ] of the memory capacity of the physical server.

算出部214は、式(35)によって、マイグレーションの影響による全物理サーバのCPUスペックの使用量を算出する。なお、マイグレーションの影響による物理サーバkのCPUスペックの使用量は、MgCA(t)と表される。 The calculation unit 214 calculates the usage amount of the CPU specifications of all the physical servers due to the influence of migration, using Expression (35). Note that the usage amount of the CPU specifications of the physical server k due to the influence of migration is expressed as MgCA k (t).

Figure 2017091001
Figure 2017091001

算出部214は、式(36)によって、マイグレーションの影響による全物理サーバのメモリ容量の使用量を算出する。なお、マイグレーションの影響による物理サーバkのメモリ容量の使用量は、MgMA(t)と表される。 The calculation unit 214 calculates the usage amount of the memory capacity of all the physical servers due to the influence of migration, using Expression (36). Note that the usage amount of the memory capacity of the physical server k due to the influence of migration is expressed as MgMA k (t).

Figure 2017091001
Figure 2017091001

算出部214は、式(37)によって、マイグレーションによる仮想インスタンスの停止のため要求に応えることができないCPUスペックの全物理サーバの合計を算出する。   The calculation unit 214 calculates the total of all physical servers with CPU specifications that cannot respond to the request due to the suspension of the virtual instance due to migration, using Expression (37).

Figure 2017091001
Figure 2017091001

算出部214は、式(38)によって、マイグレーションによる仮想インスタンスの停止のため要求に応えることができないメモリ容量の全物理サーバの合計を算出する。   The calculation unit 214 calculates the sum of all physical servers having a memory capacity that cannot respond to the request due to the suspension of the virtual instance due to the migration, using Expression (38).

Figure 2017091001
Figure 2017091001

算出部214は、式(39)によって時刻tにおける各物理サーバのCPUスペックの使用量を表す。   The calculation unit 214 represents the usage amount of the CPU specifications of each physical server at time t by Expression (39).

Figure 2017091001
Figure 2017091001

また、算出部214は、式(40)によって時刻tにおける物理サーバkのCPUスペックの使用量を表す。   In addition, the calculation unit 214 represents the usage amount of the CPU specifications of the physical server k at time t by Expression (40).

Figure 2017091001
Figure 2017091001

算出部214は、式(41)によって時刻tにおける各物理サーバのメモリ容量の使用量を表す。   The calculation unit 214 represents the usage amount of the memory capacity of each physical server at the time t by Expression (41).

Figure 2017091001
Figure 2017091001

また、算出部214は、式(42)によって時刻tにおける物理サーバkのメモリ容量の使用量を表す。   Further, the calculation unit 214 represents the usage amount of the memory capacity of the physical server k at the time t by Expression (42).

Figure 2017091001
Figure 2017091001

算出部214は、式(43)によって時刻tにおける全物理サーバのCPUスペックの超過ペナルティの総和を算出する。なお、超過ペナルティは、物理サーバのリソース量の空きが多いほど大きい値になる。   The calculation unit 214 calculates the total sum of excess penalties for CPU specifications of all physical servers at time t using equation (43). The excess penalty increases as the resource amount of the physical server increases.

Figure 2017091001
Figure 2017091001

算出部214は、式(44)によって時刻tにおける全物理サーバのメモリ容量の超過ペナルティの総和を算出する。   The calculation unit 214 calculates the sum of excess penalties for memory capacity of all the physical servers at time t using equation (44).

Figure 2017091001
Figure 2017091001

算出部214は、式(45)によって時刻tにおける全物理サーバのCPUスペックの使用要求不可ペナルティの総和を算出する。使用要求不可ペナルティは、停止している仮想インスタンスによって使用されているリソース量が少ないほど大きい値になる。   The calculation unit 214 calculates the sum of the use request impossibility penalty of the CPU specifications of all physical servers at time t by the equation (45). The use request impossibility penalty increases as the amount of resources used by the stopped virtual instance decreases.

Figure 2017091001
Figure 2017091001

算出部214は、式(46)によって時刻tにおける全物理サーバのCPUスペックの使用要求不可ペナルティの総和を算出する。   The calculation unit 214 calculates the sum of the use request impossible penalties for the CPU specifications of all the physical servers at time t according to the equation (46).

Figure 2017091001
Figure 2017091001

算出部214は、式(47)によって時刻tにおける仮想インスタンスが配置されている物理サーバの台数を算出する。   The calculation unit 214 calculates the number of physical servers on which virtual instances at time t are arranged according to equation (47).

Figure 2017091001
Figure 2017091001

そして、算出部214は、式(48−1)、または式(48−2)によって時刻tにおける使用物理サーバ台数ペナルティを算出する。使用物理サーバ台数ペナルティは、仮想インスタンスが配置されている物理サーバの台数が少ないほど大きい値になる。   Then, the calculation unit 214 calculates the number of physical server use penalties at time t by using the equation (48-1) or the equation (48-2). The number of used physical servers penalty increases as the number of physical servers on which virtual instances are arranged decreases.

Figure 2017091001
Figure 2017091001

そして、算出部214は、式(49)によって時刻tにおける総ペナルティを算出する。   Then, the calculation unit 214 calculates the total penalty at the time t according to the equation (49).

Figure 2017091001
Figure 2017091001

ここで、超過ペナルティ、使用不可ペナルティおよび使用物理サーバ台数ペナルティは、マイグレーションが適切であるほど値が大きくなる。例えば、マイグレーションの宛先を、仮想インスタンスが全く配置されていない物理サーバとすることで、超過ペナルティおよび使用不可ペナルティが大きくなる場合が多い。一方、この場合、使用物理サーバ台数ペナルティは小さくなる。   Here, the excess penalty, the unusable penalty, and the used physical server number penalty become larger as migration is appropriate. For example, when the migration destination is a physical server on which no virtual instance is arranged, the excess penalty and the unusable penalty are often increased. On the other hand, in this case, the penalty for the number of used physical servers is small.

このように、超過ペナルティおよび使用不可ペナルティと、使用物理サーバ台数ペナルティとの間には、トレードオフの関係が成り立つため、算出部214は、w+w=1という条件を設定している。これにより、できるだけ少ない物理サーバに仮想インスタンスを配置することができるようになる。 Thus, the excess penalty and disabling penalty between the use physical number of servers penalty, since the trade-off relationship is established, the calculation unit 214 has set a condition that w s + w h = 1. As a result, virtual instances can be arranged on as few physical servers as possible.

算出部214は、式(50)を用いて、仮想インスタンスiを物理サーバkに配置変更した場合の配置位置指標Q(P(t),mgd(t)=k)を算出する。 The calculation unit 214 calculates an arrangement position index Q i (P (t), mgd i (t) = k) when the arrangement of the virtual instance i is changed to the physical server k, using Expression (50).

Figure 2017091001
Figure 2017091001

ここで、指標の算出方法として、例えば時刻に伴い0<γ≦1で指数割引された、現在時刻から無限の将来時刻までのペナルティの総和を指標として算出する方法が考えられる。ここで、算出部214は、計算時間短縮のため有限の将来時刻までのペナルティの総和を指標として算出することとする。   Here, as an index calculation method, for example, a method of calculating as an index a total sum of penalties from the current time to an infinite future time, which is exponentially discounted with time 0 <γ ≦ 1, can be considered. Here, the calculation unit 214 calculates, as an index, the total penalty up to a finite future time in order to shorten the calculation time.

算出部214は、例えば式(50)のτに示すように、最もメモリ容量の大きい物理サーバのメモリ容量を使用する仮想インスタンスがマイグレーションを行ったと仮定した時に要するマイグレーションの残り時間だけ将来の時刻を有限の将来時刻とする。そして、算出部214は、算出した指標を、指標DB223に記憶させる。図12に示すように、指標DB223は各物理サーバをマイグレーションの宛先とした場合の指標を記憶する。図12は、指標DBのデータの一例を示す図である。 For example, as indicated by τ p in the equation (50), the calculation unit 214 calculates the future time by the remaining time of migration required when it is assumed that the virtual instance using the memory capacity of the physical server having the largest memory capacity has migrated. Is a finite future time. Then, the calculation unit 214 stores the calculated index in the index DB 223. As shown in FIG. 12, the index DB 223 stores an index when each physical server is a migration destination. FIG. 12 is a diagram illustrating an example of data in the index DB.

決定部211は、指標DB223を参照し、配置指標が最も大きい物理サーバk´を配置位置として決定する。このとき、k´≠mgd(t)の場合、マイグレーションが決定されたことになるため、決定部211は、式(51−1)、式(51−2)および式(51−3)によってそれぞれライブマイグレーション状態DB124のマイグレーション状態、マイグレーション送信元物理サーバIDおよびマイグレーション宛先物理サーバIDを更新する。 The determination unit 211 refers to the index DB 223 and determines the physical server k ′ having the largest allocation index as the allocation position. At this time, in the case of k ′ ≠ mgd i (t), the migration is determined. Therefore, the determination unit 211 uses the expressions (51-1), (51-2), and (51-3). The migration status, migration source physical server ID, and migration destination physical server ID in the live migration status DB 124 are updated.

Figure 2017091001
Figure 2017091001

[第1の実施形態の処理]
図13および図14を用いて、仮想インスタンス配置位置決定装置20の処理について説明する。図13および図14は、第1の実施形態に係る仮想インスタンス配置位置決定装置の処理の一例を示すフローチャートである。
[Process of First Embodiment]
The process of the virtual instance arrangement position determination device 20 will be described with reference to FIGS. 13 and 14. FIG. 13 and FIG. 14 are flowcharts illustrating an example of processing of the virtual instance arrangement position determination device according to the first embodiment.

まず、図13に示すように、決定部211は、時刻クロック30から現在時刻tを取得する(ステップS21)。そして、決定部211は、仮想インスタンスリソース使用量DB122から全仮想インスタンスの時刻t−Aから時刻tまでのリソース使用量を抽出する(ステップS22)。次に、決定部211は、仮想インスタンス配置位置DB123から全仮想インスタンスの時刻tの配置位置を抽出する(ステップS23)。   First, as illustrated in FIG. 13, the determination unit 211 acquires the current time t from the time clock 30 (step S21). Then, the determination unit 211 extracts the resource usage from time t-A to time t of all virtual instances from the virtual instance resource usage DB 122 (step S22). Next, the determination unit 211 extracts the arrangement positions at the time t of all virtual instances from the virtual instance arrangement position DB 123 (step S23).

そして、決定部211は、現在時刻t、各DBから抽出したデータ、および予測時刻t+Bを使用量予測部212に送信し、処理を依頼する(ステップS24)。使用量予測部212は、処理の依頼を受けると、全仮想インスタンスについて時刻tから時刻t+Bまでのリソース使用量を予測する(ステップS25)。ここで、算出部214は、iを1に設定する(ステップS26)。   Then, the determination unit 211 transmits the current time t, the data extracted from each DB, and the predicted time t + B to the usage amount prediction unit 212, and requests processing (step S24). When receiving the processing request, the usage amount prediction unit 212 predicts the resource usage amount from time t to time t + B for all virtual instances (step S25). Here, the calculation unit 214 sets i to 1 (step S26).

算出部214は、ライブマイグレーション状態DB124を参照し、仮想インスタンスiがマイグレーション状態であるか否かを判定する(ステップS27)。仮想インスタンスiがマイグレーション状態である場合(ステップS27、Yes)、算出部214はステップS30へ進む。仮想インスタンスiがマイグレーション状態でない場合(ステップS27、No)、算出部214は仮想インスタンスiについて指標を算出する(ステップS28)。   The calculation unit 214 refers to the live migration state DB 124 and determines whether or not the virtual instance i is in the migration state (step S27). When the virtual instance i is in the migration state (step S27, Yes), the calculation unit 214 proceeds to step S30. When the virtual instance i is not in the migration state (step S27, No), the calculation unit 214 calculates an index for the virtual instance i (step S28).

算出部214が指標を算出する処理について、図14を用いて説明する。まず、図14に示すように、算出部214は、kを1に設定する(ステップS281)。ここで、kは仮想インスタンスiのマイグレーション先の候補となる物理サーバのIDを示している。仮想インスタンスiの配置位置がkである場合(ステップS282、Yes)、マイグレーションは行われないため、算出部214は、指標の算出を行わずにステップS286へ進む。   The process in which the calculation unit 214 calculates the index will be described with reference to FIG. First, as illustrated in FIG. 14, the calculation unit 214 sets k to 1 (step S281). Here, k indicates the ID of a physical server that is a candidate for the migration destination of the virtual instance i. When the placement position of the virtual instance i is k (Yes in step S282), migration is not performed, and the calculation unit 214 proceeds to step S286 without calculating the index.

仮想インスタンスiの配置位置がkでない場合(ステップS282、No)、算出部214は、仮想インスタンスiの現在時刻tのリソース使用量、および配置位置を影響予測部213に送信し、処理を依頼する(ステップS283)。影響予測部213は、処理の依頼を受けると、仮想インスタンスiの物理サーバkへのマイグレーションが行われると仮定して、物理サーバkについて時刻tから時刻t+Bまでのマイグレーションの影響を予測する(ステップS284)。そして、算出部214は、使用量予測部212が予測したリソースの使用量、および影響予測部213が予測したマイグレーションの影響を基に、指標を算出する(ステップS285)。   When the placement position of the virtual instance i is not k (step S282, No), the calculation unit 214 transmits the resource usage amount and the placement position of the virtual instance i at the current time t to the influence prediction unit 213 and requests processing. (Step S283). When receiving the processing request, the impact prediction unit 213 assumes that the migration of the virtual instance i to the physical server k is performed, and predicts the impact of the migration from time t to time t + B on the physical server k (step S284). Then, the calculation unit 214 calculates an index based on the resource usage amount predicted by the usage amount prediction unit 212 and the migration influence predicted by the influence prediction unit 213 (step S285).

ここで、kが全物理サーバの数と一致している場合(ステップS286、Yes)、全物理サーバについて指標が算出されたことになるため、算出部214は、処理を終了する。また、kが物理サーバの数と一致していない場合(ステップS286、No)、算出部214は、kをk+1に設定し、ステップS282に戻り処理を繰り返す。   Here, if k matches the number of all physical servers (Yes in step S286), the index is calculated for all physical servers, and thus the calculation unit 214 ends the process. If k does not match the number of physical servers (No at Step S286), the calculation unit 214 sets k to k + 1, returns to Step S282, and repeats the processing.

決定部211は、指標の算出が終わると、指標に基づいて仮想インスタンスのiの配置位置を決定する(ステップS29)。このとき、決定部211は決定した配置位置に基づいてライブマイグレーション状態DB124を更新する。   When the calculation of the index ends, the determination unit 211 determines the placement position of i of the virtual instance based on the index (step S29). At this time, the determination unit 211 updates the live migration state DB 124 based on the determined arrangement position.

ここで、iが全仮想インスタンスの数と一致している場合(ステップS30、Yes)、全仮想インスタンスについて配置位置の検討が行われたことになるため、決定部211は、処理を終了する。また、iが全仮想インスタンスの数と一致していない場合(ステップS30、No)、決定部211は、iをi+1に設定し(ステップS31)、ステップS27に戻り処理を繰り返す。   Here, when i matches the number of all virtual instances (step S30, Yes), since the placement positions have been examined for all virtual instances, the determination unit 211 ends the process. If i does not match the number of all virtual instances (No in step S30), the determination unit 211 sets i to i + 1 (step S31), returns to step S27, and repeats the process.

[第1の実施形態の効果]
使用量予測部212は、物理サーバ上で稼働する仮想インスタンスの所定時刻から所定時間前までのリソース使用量を基に、仮想インスタンスの所定時刻から所定時間後までの各時刻における第1のリソース使用量を予測する。また、影響予測部213は、仮想インスタンスの所定時刻におけるリソース使用量およびマイグレーションの状況を基に、所定時刻から所定時間後までの各時刻における、仮想インスタンスのマイグレーションによって生じる第2のリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって仮想インスタンスが停止する残り停止時間と、を予測する。そして、算出部214は、使用量予測部212によって予測された第1のリソース使用量と、影響予測部213によって予測された第2のリソース使用量、残り時間、および残り停止時間とを基に、所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を物理サーバごとに算出する。
[Effect of the first embodiment]
The usage amount predicting unit 212 uses the first resource usage at each time from the predetermined time of the virtual instance to the predetermined time later, based on the resource usage from the predetermined time of the virtual instance operating on the physical server to the predetermined time before. Predict the amount. In addition, the impact prediction unit 213 uses the second resource usage amount generated by the migration of the virtual instance at each time from the predetermined time to a predetermined time later, based on the resource usage amount and the migration status of the virtual instance at the predetermined time. The remaining time during which the migration is performed and the remaining stop time during which the virtual instance is stopped by the migration are predicted. Then, the calculation unit 214 is based on the first resource usage amount predicted by the usage amount prediction unit 212, the second resource usage amount predicted by the influence prediction unit 213, the remaining time, and the remaining stop time. An index for evaluating the suitability of the virtual instance as a migration destination at a predetermined time is calculated for each physical server.

これにより、仮想インスタンスの再配置後のリソース使用量の増加、およびライブマイグレーションの影響による負荷の増加の両方を考慮して仮想インスタンスの再配置を行うことができ、物理サーバが計算機リソース要求に応えられない過負荷状態に陥ることを防止することができる。   This makes it possible to relocate virtual instances taking into account both the increase in resource usage after relocation of virtual instances and the increase in load due to the effect of live migration, and the physical server responds to computer resource requests. It is possible to prevent an overload condition that is not possible.

また、決定部211は、算出部214によって算出された指標が最大となる物理サーバを、仮想インスタンスのマイグレーション先として決定する。   In addition, the determination unit 211 determines the physical server having the maximum index calculated by the calculation unit 214 as the migration destination of the virtual instance.

このように、所定のルールに従って仮想インスタンスの再配置先を決定することで、安定した仮想インスタンスの再配置を行うことができる。   As described above, by determining the relocation destination of the virtual instance according to a predetermined rule, it is possible to perform stable relocation of the virtual instance.

また、算出部214は、第1のリソース使用量および第2のリソース使用量が小さくなるにつれて大きくなる第1の値と、残り停止時間に基づく仮想インスタンスの停止により要求に答えられなかったリソース使用量が小さくなるにつれて大きくなる第2の値とを算出し、第1の値および第2の値の和に基づいて指標を算出してもよい。   In addition, the calculation unit 214 uses the first value that increases as the first resource usage amount and the second resource usage amount decrease, and the resource usage that cannot be answered by the virtual instance stop based on the remaining stop time. The second value that increases as the amount decreases may be calculated, and the index may be calculated based on the sum of the first value and the second value.

このように、複数のリソース使用量およびマイグレーションに関する所要時間の両方に基づいて指標を算出することで、より正確な配置先の評価を行うことができる。   Thus, by calculating the index based on both the plurality of resource usage amounts and the required time for migration, it is possible to evaluate the placement destination more accurately.

さらに、算出部214は、仮想インスタンスが配置された物理サーバの数が小さくなるにつれて大きくなる第3の値を算出し、第1の値および第2の値の和に第1の係数を乗じた値と、第3の値に第2の係数を乗じた値と、の和に基づいて指標を算出するようにしてもよい。なお、第1の係数と第2の係数との和は、一定の定数である。   Further, the calculation unit 214 calculates a third value that increases as the number of physical servers in which virtual instances are arranged decreases, and multiplies the sum of the first value and the second value by the first coefficient. The index may be calculated based on the sum of the value and the value obtained by multiplying the third value by the second coefficient. Note that the sum of the first coefficient and the second coefficient is a constant.

これにより、できるだけ少ない物理サーバに仮想インスタンスを配置することができるようになる。   As a result, virtual instances can be arranged on as few physical servers as possible.

[その他の実施形態]
第1の実施形態においては、仮想インスタンスが使用する物理サーバのリソースの例として、CPUスペックおよびメモリ容量を挙げた。しかし、物理サーバのリソースはこれらに限られず、例えば仮想インスタンスが使用するネットワークの帯域を予測し、指標に反映させることが考えられる。
[Other Embodiments]
In the first embodiment, CPU specifications and memory capacity are given as examples of physical server resources used by virtual instances. However, the resources of the physical server are not limited to these. For example, it is conceivable that the network bandwidth used by the virtual instance is predicted and reflected in the index.

[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPU(Central Processing Unit)および当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[System configuration, etc.]
Further, each component of each illustrated apparatus is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. Further, all or any part of each processing function performed in each device is realized by a CPU (Central Processing Unit) and a program analyzed and executed by the CPU, or hardware by wired logic. Can be realized as

また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。   In addition, among the processes described in the present embodiment, all or part of the processes described as being automatically performed can be manually performed, or the processes described as being manually performed can be performed. All or a part can be automatically performed by a known method. In addition, the processing procedure, control procedure, specific name, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.

[プログラム]
一実施形態として、仮想インスタンス配置位置決定装置は、パッケージソフトウェアやオンラインソフトウェアとして上記の仮想インスタンス配置位置決定を実行する仮想インスタンス配置位置決定プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の仮想インスタンス配置位置決定プログラムを情報処理装置に実行させることにより、情報処理装置を仮想インスタンス配置位置決定装置として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistants)等のスレート端末等がその範疇に含まれる。
[program]
As one embodiment, the virtual instance arrangement position determination device can be implemented by installing a virtual instance arrangement position determination program that executes the above-described virtual instance arrangement position determination as package software or online software on a desired computer. For example, by causing the information processing apparatus to execute the virtual instance arrangement position determination program, the information processing apparatus can function as a virtual instance arrangement position determination apparatus. The information processing apparatus referred to here includes a desktop or notebook personal computer. In addition, the information processing apparatus includes mobile communication terminals such as smartphones, mobile phones and PHS (Personal Handyphone System), and slate terminals such as PDA (Personal Digital Assistants).

また、仮想インスタンス配置位置決定装置は、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記の仮想インスタンス配置位置決定に関するサービスを提供するサーバ装置として実装することもできる。例えば、仮想インスタンス配置位置決定装置は、仮想インスタンスのリソース使用状況を入力とし、仮想インスタンスの配置位置を出力とする仮想インスタンス配置位置決定サービスを提供するサーバ装置として実装される。この場合、仮想インスタンス配置位置決定装置は、Webサーバとして実装することとしてもよいし、アウトソーシングによって上記の仮想インスタンス配置位置決定に関するサービスを提供するクラウドとして実装することとしてもかまわない。   In addition, the virtual instance arrangement position determination device can be implemented as a server device that uses the terminal device used by the user as a client and provides the client with the service related to the virtual instance arrangement position determination. For example, the virtual instance arrangement position determination apparatus is implemented as a server apparatus that provides a virtual instance arrangement position determination service that receives the resource usage status of a virtual instance and outputs the virtual instance arrangement position. In this case, the virtual instance arrangement position determination device may be implemented as a Web server, or may be implemented as a cloud that provides a service related to the above-described virtual instance arrangement position determination by outsourcing.

図15は、プログラムが実行されることにより仮想インスタンス配置位置決定装置が実現されるコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。   FIG. 15 is a diagram illustrating an example of a computer in which a virtual instance arrangement position determining device is realized by executing a program. The computer 1000 includes a memory 1010 and a CPU 1020, for example. The computer 1000 also includes a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. These units are connected by a bus 1080.

メモリ1010は、ROM(Read Only Memory)1011およびRAM(Random Access Memory)1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。   The memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM (Random Access Memory) 1012. The ROM 1011 stores a boot program such as BIOS (Basic Input Output System). The hard disk drive interface 1030 is connected to the hard disk drive 1090. The disk drive interface 1040 is connected to the disk drive 1100. For example, a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100. The serial port interface 1050 is connected to a mouse 1110 and a keyboard 1120, for example. The video adapter 1060 is connected to the display 1130, for example.

ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、仮想インスタンス配置位置決定装置の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、仮想インスタンス配置位置決定装置における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSD(Solid State Drive)により代替されてもよい。   The hard disk drive 1090 stores, for example, an OS 1091, an application program 1092, a program module 1093, and program data 1094. That is, the program that defines each process of the virtual instance arrangement position determination device is implemented as a program module 1093 in which a code executable by a computer is described. The program module 1093 is stored in the hard disk drive 1090, for example. For example, a program module 1093 for executing the same processing as the functional configuration in the virtual instance arrangement position determining apparatus is stored in the hard disk drive 1090. The hard disk drive 1090 may be replaced by an SSD (Solid State Drive).

また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して実行する。   The setting data used in the processing of the above-described embodiment is stored as program data 1094 in, for example, the memory 1010 or the hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 to the RAM 1012 and executes them as necessary.

なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093およびプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093およびプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。   The program module 1093 and the program data 1094 are not limited to being stored in the hard disk drive 1090, but may be stored in, for example, a removable storage medium and read out by the CPU 1020 via the disk drive 1100 or the like. Alternatively, the program module 1093 and the program data 1094 may be stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.). The program module 1093 and the program data 1094 may be read by the CPU 1020 from another computer via the network interface 1070.

1 仮想インスタンス配置システム
10 物理サーバ制御装置
20 仮想インスタンス配置位置決定装置
30 時刻クロック
11、21 制御部
12、22 記憶部
111 仮想インスタンスリソース使用量収集部
112 仮想インスタンス配置位置収集部
113 仮想インスタンス配置変更部
121 物理サーバ基本情報DB
122 仮想インスタンスリソース使用量DB
123 仮想インスタンス配置位置DB
124 ライブマイグレーション状態DB
211 決定部
212 使用量予測部
213 影響予測部
214 算出部
221 使用量予測DB
222 影響予測DB
223 指標DB
DESCRIPTION OF SYMBOLS 1 Virtual instance arrangement system 10 Physical server control apparatus 20 Virtual instance arrangement position determination apparatus 30 Time clock 11, 21 Control part 12, 22 Storage part 111 Virtual instance resource usage collection part 112 Virtual instance arrangement position collection part 113 Virtual instance arrangement change Part 121 Physical Server Basic Information DB
122 Virtual Instance Resource Usage DB
123 Virtual instance location DB
124 Live migration status DB
211 Determination Unit 212 Usage Prediction Unit 213 Impact Prediction Unit 214 Calculation Unit 221 Usage Prediction DB
222 Impact prediction DB
223 Index DB

Claims (6)

物理サーバ上で稼働する仮想インスタンスの所定時刻から所定時間前までのリソース使用量を基に、前記仮想インスタンスの前記所定時刻から所定時間後までの各時刻における第1のリソース使用量を予測する使用量予測部と、
前記仮想インスタンスの前記所定時刻におけるリソース使用量およびマイグレーションの状況を基に、前記所定時刻から前記所定時間後までの各時刻における、前記仮想インスタンスのマイグレーションによって生じる第2のリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって前記仮想インスタンスが停止する残り停止時間と、を予測する影響予測部と、
前記使用量予測部によって予測された前記第1のリソース使用量と、前記影響予測部によって予測された前記第2のリソース使用量、前記残り時間、および前記残り停止時間とを基に、前記所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を前記物理サーバごとに算出する算出部と、
を有することを特徴とする仮想インスタンス配置位置決定装置。
Use of predicting the first resource usage at each time from the predetermined time to the predetermined time after the virtual instance based on the resource usage from the predetermined time to the predetermined time before the virtual instance operating on the physical server A quantity prediction unit;
Based on the resource usage and migration status of the virtual instance at the predetermined time, the second resource usage generated by the migration of the virtual instance at each time from the predetermined time to the time after the predetermined time, and the migration An impact prediction unit that predicts a remaining time during which the virtual instance is stopped due to the migration, and
Based on the first resource usage predicted by the usage prediction unit, the second resource usage predicted by the influence prediction unit, the remaining time, and the remaining stop time, the predetermined amount A calculation unit that calculates an index for evaluating the suitability of the virtual instance at the time as the migration destination for each physical server;
A virtual instance arrangement position determining apparatus comprising:
前記算出部によって算出された前記指標が最大となる物理サーバを、仮想インスタンスのマイグレーション先として決定する決定部をさらに有することを特徴とする請求項1に記載の仮想インスタンス配置位置決定装置。   The virtual instance arrangement position determining apparatus according to claim 1, further comprising a determining unit that determines a physical server having the maximum index calculated by the calculating unit as a migration destination of a virtual instance. 前記算出部は、前記第1のリソース使用量および前記第2のリソース使用量が小さくなるにつれて大きくなる第1の値と、前記残り停止時間に基づく仮想インスタンスの停止により要求に答えられなかったリソース使用量が小さくなるにつれて大きくなる第2の値とを算出し、前記第1の値および前記第2の値の和に基づいて前記指標を算出することを特徴とする請求項1または2に記載の仮想インスタンス配置位置決定装置。   The calculation unit is configured such that the first value that increases as the first resource usage amount and the second resource usage amount decrease, and a resource that has not been answered by a virtual instance stop based on the remaining stop time. The second value that increases as the usage amount decreases, and the index is calculated based on a sum of the first value and the second value. Virtual instance arrangement position determination device. 前記算出部は、前記仮想インスタンスが配置された前記物理サーバの数が小さくなるにつれて大きくなる第3の値をさらに算出し、
前記第1の値および前記第2の値の和に第1の係数を乗じた値と、前記第3の値に第2の係数を乗じた値と、の和に基づいて前記指標を算出し、
前記第1の係数と前記第2の係数との和は、一定の定数であることを特徴とする請求項3に記載の仮想インスタンス配置位置決定装置。
The calculation unit further calculates a third value that increases as the number of the physical servers on which the virtual instances are arranged decreases.
The index is calculated based on a sum of a value obtained by multiplying a sum of the first value and the second value by a first coefficient and a value obtained by multiplying the third value by a second coefficient. ,
The virtual instance arrangement position determining apparatus according to claim 3, wherein a sum of the first coefficient and the second coefficient is a constant.
物理サーバ上で稼働する仮想インスタンスの所定時刻から所定時間前までのリソース使用量を基に、前記仮想インスタンスの前記所定時刻から所定時間後までの各時刻における第1のリソース使用量を予測する使用量予測工程と、
前記仮想インスタンスの前記所定時刻におけるリソース使用量およびマイグレーションの状況を基に、前記所定時刻から前記所定時間後までの各時刻における、前記仮想インスタンスのマイグレーションによって生じる第2のリソース使用量と、該マイグレーションが行われる残り時間と、該マイグレーションによって前記仮想インスタンスが停止する残り停止時間と、を予測する影響予測工程と、
前記使用量予測工程によって予測された前記第1のリソース使用量と、前記影響予測工程によって予測された前記第2のリソース使用量、前記残り時間、および前記残り停止時間とを基に、前記所定時刻における仮想インスタンスのマイグレーション先としての適性を評価する指標を前記物理サーバごとに算出する算出工程と、
を含んだことを特徴とする仮想インスタンス配置位置決定方法。
Use of predicting the first resource usage at each time from the predetermined time to the predetermined time after the virtual instance based on the resource usage from the predetermined time to the predetermined time before the virtual instance operating on the physical server A quantity prediction process;
Based on the resource usage and migration status of the virtual instance at the predetermined time, the second resource usage generated by the migration of the virtual instance at each time from the predetermined time to the time after the predetermined time, and the migration An impact prediction step of predicting a remaining time during which the virtual instance is stopped due to the migration,
Based on the first resource usage predicted by the usage prediction step, the second resource usage estimated by the influence prediction step, the remaining time, and the remaining stop time, the predetermined amount A calculation step for calculating, for each physical server, an index for evaluating the suitability of the virtual instance as a migration destination at the time;
A virtual instance arrangement position determining method including:
コンピュータを請求項1から4のいずれか1項に記載の仮想インスタンス配置位置決定装置として機能させるための仮想インスタンス配置位置決定プログラム。   A virtual instance arrangement position determination program for causing a computer to function as the virtual instance arrangement position determination apparatus according to any one of claims 1 to 4.
JP2015216710A 2015-11-04 2015-11-04 Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program Pending JP2017091001A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015216710A JP2017091001A (en) 2015-11-04 2015-11-04 Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015216710A JP2017091001A (en) 2015-11-04 2015-11-04 Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program

Publications (1)

Publication Number Publication Date
JP2017091001A true JP2017091001A (en) 2017-05-25

Family

ID=58770748

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015216710A Pending JP2017091001A (en) 2015-11-04 2015-11-04 Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program

Country Status (1)

Country Link
JP (1) JP2017091001A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019079334A (en) * 2017-10-25 2019-05-23 富士通株式会社 Information processing apparatus, information processing system, and information processing method
EP3876097A1 (en) 2020-03-04 2021-09-08 Fujitsu Limited Method for determining container to be migrated and program for determining container to be migrated
JP2021196687A (en) * 2020-06-10 2021-12-27 株式会社日立製作所 Computer system and computer system control method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019079334A (en) * 2017-10-25 2019-05-23 富士通株式会社 Information processing apparatus, information processing system, and information processing method
EP3876097A1 (en) 2020-03-04 2021-09-08 Fujitsu Limited Method for determining container to be migrated and program for determining container to be migrated
JP2021196687A (en) * 2020-06-10 2021-12-27 株式会社日立製作所 Computer system and computer system control method
JP7163341B2 (en) 2020-06-10 2022-10-31 株式会社日立製作所 Computer system and computer system control method
US11586471B2 (en) 2020-06-10 2023-02-21 Hitachi, Ltd. Computer system and control method for computer system

Similar Documents

Publication Publication Date Title
US10924535B2 (en) Resource load balancing control method and cluster scheduler
Yu et al. Stochastic load balancing for virtual resource management in datacenters
CN108089921B (en) Server for cloud big data operation architecture and operation resource optimization method thereof
Beloglazov et al. Managing overloaded hosts for dynamic consolidation of virtual machines in cloud data centers under quality of service constraints
Chen et al. Distributed autonomous virtual resource management in datacenters using finite-markov decision process
Rasooli et al. COSHH: A classification and optimization based scheduler for heterogeneous Hadoop systems
US7668703B1 (en) Determining required capacity for a resource
US8024737B2 (en) Method and a system that enables the calculation of resource requirements for a composite application
US20140165070A1 (en) Ranking and scheduling of monitoring tasks
Minarolli et al. Tackling uncertainty in long-term predictions for host overload and underload detection in cloud computing
US9037880B2 (en) Method and system for automated application layer power management solution for serverside applications
US20190347134A1 (en) Capacity Expansion Method and Apparatus
CN107911399B (en) Elastic expansion method and system based on load prediction
KR101471749B1 (en) Virtual machine allcoation of cloud service for fuzzy logic driven virtual machine resource evaluation apparatus and method
WO2015194182A1 (en) Service chain management apparatus, service chain management system, service chain management method, and program recording medium
Sridharan et al. Defragmentation of resources in virtual desktop clouds for cost-aware utility-optimal allocation
Hasan et al. Heuristic based energy-aware resource allocation by dynamic consolidation of virtual machines in cloud data center
Monshizadeh Naeen et al. Adaptive Markov‐based approach for dynamic virtual machine consolidation in cloud data centers with quality‐of‐service constraints
JP2017091001A (en) Virtual instance arrangement position determination device, virtual instance arrangement position determination method, and virtual instance arrangement position determination program
US20220050716A1 (en) Virtual machine placement method and virtual machine placement device implementing the same
CN112328395B (en) Cloud resource capacity planning method and system
Lu et al. VM scaling based on Hurst exponent and Markov transition with empirical cloud data
Leena Sri et al. An empirical model of adaptive cloud resource provisioning with speculation
US9501321B1 (en) Weighted service requests throttling
Surya et al. Prediction of resource contention in cloud using second order Markov model