The present invention relates to a technique for allocating virtual machines to a plurality of bases that use electric power generated by renewable energy power generation.
In recent years, various network services and applications have been provided by virtual machines (hereinafter referred to as VMs) operating on servers (physical machines) at a plurality of bases (for example, data centers).
In addition, in order to reduce power purchase costs, decarbonize, or the like, in many cases, each base receives power supply from two systems: renewable energy power generation such as solar power generation, and commercial power supplied from an electric power company. Here, such a case is assumed.
In renewable energy power generation, an amount of power supply fluctuates from moment to moment. For that reason, for example, in a case in which an amount of renewable energy supply of a base A is reduced, a VM of the base A is moved to a base B having a margin in the amount of renewable energy supply, and thus renewable energy of the base B can be used without waste, and an amount of power purchase from an electric power company at the base A can be reduced.
NPL 1 discloses a vector-based algorithm for calculating at which base each VM should be disposed in order to use renewable energy at each base as efficiently as possible.
However, in the known art disclosed in NPL 1, since an amount of surplus power of the renewable energy for each base is not considered, there is a possibility that the renewable energy may be wasted in some time periods or at some bases.
The present invention has been made in view of the above points, and an object thereof is to provide a technique for minimizing surplus power of renewable energy power generation at a plurality of bases at which supply of electric power is performed by renewable energy power generation.
According to the disclosed technique, a virtual machine allocation device (virtual machine allocation apparatus) configured to perform allocation of virtual machines to a plurality of bases to which supply of electric power is performed by renewable energy power generation, the device including:
According to the disclosed technique, it is possible to reduce the surplus power of the renewable energy power generation at the plurality of bases to which the supply of electric power is performed by the renewable energy power generation.
An embodiment of the present invention (the present embodiment) will be described below with reference to the drawings. The embodiment described below is merely an example, and embodiments to which the present invention is applied are not limited to the following embodiment.
At each base, commercial power supplied from an electric power company is supplied, and electric power generated by renewable energy power generation is supplied. Also, there may be bases to which only commercial power supplied from an electric power company is supplied or bases to which only electric power of renewable energy power generation is supplied.
Zero or more VMs are installed on each server at each base. Each VM can be moved between bases in accordance with a setting command from the virtual machine allocation device 100. Various existing techniques can be used for moving VMs (which may be referred to as migration).
The virtual machine allocation device 100 derives an arrangement (allocation) of respective VMs to each base in consideration of surplus power of the renewable energy power generation at each base and power consumption of each VM and transmits a setting command for moving VMs to corresponding bases in accordance with results of the allocation processing. The virtual machine allocation device 100 can acquire information needed for allocation calculation (such as an amount of renewable energy power generation, or power consumption of each VM) from each base (or monitoring system, or the like).
The virtual machine allocation device 100 first selects a VM serving as a moving target from among all VMs from the viewpoint of minimizing the surplus power of the renewable energy power generation prior to deriving the arrangement. In deriving the arrangement, an approximation guarantee is obtained by sequentially allocating VMs such that a VM with the highest power consumption is allocated to a base and a time period with the highest surplus power.
The schedule management unit 110 manages a schedule for executing a control pattern calculated by the allocation unit 170 from an updated state of prediction information and a control time constant of the physical network 200. For example, in a case in which it is known to take 30 minutes for control based on the control time constant, when preferable VM arrangement is desired at a certain time T, the schedule is managed so that the control (such as VM arrangement calculation and command transmission) is started 30 minutes before the time T.
The power generation amount prediction unit 120 predicts an amount of power generation of renewable energy power generation equipment at each base from weather information or the like. The power consumption prediction unit 130 predicts power consumption for each moving load and non-moving load from past power consumption results or the like.
The physical resource acquisition unit 140 acquires and manages information regarding physical resources (CPU capacity of each base, link bandwidth of each link, and the like).
The traffic prediction unit 150 acquires an amount of traffic (an amount of predicted traffic) during the time when virtual network control is performed. The service request management unit 160 manages service requests.
The allocation unit 170 calculates an optimal virtual network control pattern via the procedure described later, for example, in accordance with instructions from the schedule management unit 110.
The setting command unit 180 transmits a virtual network setting command to each physical resource (for example, a server, various communication devices, and the like) to realize the optimal virtual network control pattern calculated by the allocation unit 170.
Also, the virtual machine allocation device 100 may be configured of one device (computer), or may be configured of a plurality of devices. Further, the virtual machine allocation device 100 may have only a function of determining allocation of VMs to bases, and a device other than the virtual machine allocation device 100 may perform a setting command for actual movement of VMs. In addition, for example, the virtual machine allocation device 100 may include the prediction unit and the allocation unit 170, and functions other than these may be provided outside the virtual machine allocation device 100.
Next, detailed processing performed by the virtual machine allocation device 100 according to Example 1 will be described along the procedure of the flowchart in
In the present embodiment, a predetermined time length is divided into a plurality of time periods, and allocation of VMs is performed for each time period. The predetermined time length is, for example, 24 hours. Also, one time period is, for example, 30 minutes. The time period is called a “frame” or “time frame.”
Further, in the present embodiment, it is assumed that control for each base is performed at a predetermined time interval (for example, 3 hours), and allocation is performed in units of frames each having a predetermined time length (for example, 24 hours) before the predetermined time for actual control. In the figures used in the following description, for the sake of convenience, frames each having a time length of about 3 to 4 hours are used so that the figures can be easily understood.
In S101 (step 101), the power consumption prediction unit 130 acquires a predicted value of power consumption for a moving load and a predicted value of power consumption for a non-moving load for each base and each frame. In addition, the power generation amount prediction unit 120 acquires a prediction value of generated electric power of renewable energy for each base and each frame. Information of the acquired electric power is stored in a storage unit such as a memory of the virtual machine allocation device 100, read from the memory in subsequent processing, and used for processing.
Further, the moving load is a load that can move power consumption between bases and corresponds to a VM. The non-moving load is a load that cannot move power consumption between bases and corresponds to, for example, air conditioning equipment of a building, or the like. Hereinafter, power consumption corresponding to the moving load will be referred to as moving load power, and power consumption corresponding to the non-moving load will be referred to as non-moving load power. Also, in the following description, unless otherwise specified, electric power is assumed to be a predicted value even if not explicitly stated so.
In S102, the allocation unit 170 manages a VM group serving as a source of the moving load power in all bases as a control target VM group. That is, for example, information of the control target VM group is stored in the memory.
In S103, the allocation unit 170 excludes, from the control target VM group, VMs of frames that generate (or increase) surplus power of renewable energy power generation when moved, on the basis of a predicted value of the renewable energy power generation.
An example will be described with reference to
In the case shown in
In S104, the allocation unit 170 compares an amount of power generation with “non-moving load power+moving load power” for each base and each frame and determines whether or not there is surplus power. The moving load power here is electric power obtained by adding electric power of the VMs excluded from the control target (that is, electric power of the VMs not moved) and electric power of VMs rearranged in allocation processing, which will be described later.
The allocation unit 170 determines that there is surplus power if the “amount of power generation> (non-moving load power+moving load power).”
<S105>
In S105, the allocation unit 170 selects a base and a frame in which the surplus power of the renewable energy power generation is largest for each frame in all the bases. In the example shown in
In S106, the allocation unit 170 selects a VM having the largest electric power among the frames (time) selected in S105 from the control target VM group.
In S107, the allocation unit 170 allocates the VM selected in S106 to the base selected in S105 and excludes the VM from the control target VM group. In S108, electric power of the allocated VM is added to power consumption of the base.
The allocation unit 170 repeats the operations of S105 to S108 until there is no VM in the control target VM group or the surplus power is no longer present at all the bases.
In S110, the allocation unit 170 allocates, to original bases, the VMs (moving load power) in the control target VM group after there is no longer any the surplus power.
After that, when the time of control managed by the schedule management unit 110 comes, the setting command unit 180 transmits a setting command to each base on the basis of allocation results calculated by the allocation unit 170.
Next, Example 2 will be described. In Example 2, after arrangement of the control target VM group to the base with surplus power is completed, when remaining VMs of the control target VM group are arranged to the bases, the arrangement is performed to further improve communication quality.
Specifically, in Example 2, S110 in
In S111, the allocation unit 170 randomly selects one VM for determining a migration destination from the remaining control target VM group.
In S112, the allocation unit 170 determines a base having the smallest round trip delay time as an arrangement destination for the VM selected in S111. The round trip delay time here is, for example, a round trip delay time of communication between a user terminal accessing the VM and the VM. The round trip delay time may be estimated on the basis of a distance between the user terminal and the VM, may be estimated using a measurement value measured in the past for communication between the user terminal and the base, or may be acquired or estimated by other methods.
In S113, the allocation unit 170 excludes the VM for which the arrangement destination has been determined from the control target VM group.
In S114, the allocation unit 170 determines whether or not any VMs remain in the control target VM group, returns to S111 if any VMs remain, and terminates the processing if no VMs remain. The allocation unit 170 repeats the S111 to S114 until there are no VMs left in the control target VM group.
In the above example, the round trip delay time has been used as an example of a communication quality parameter, but the present invention is not limited thereto. For example, migration destinations of VMs may be determined in consideration of server resources (a CPU, a memory, a storage, and the like) of each base and free bands of each link. Alternatively, migration destinations of VMs may be determined by incorporating a plurality of these parameters.
The physical resource acquisition unit 140 acquires server resources, and the traffic prediction unit 150 acquires free bands.
For example, a VM for executing an application for processing large amounts of data is disposed at a base at which remaining capacity of a memory is larger than a threshold, and a VM for executing an application requiring large capacity communication is disposed at a base having a free band larger than a threshold.
The virtual machine allocation device 100 can be realized, for example, by causing a computer to execute a program. This computer may be a physical computer or a virtual machine on the cloud.
That is, the virtual machine allocation device 100 can be realized by executing a program corresponding to the processing performed by the virtual machine allocation device 100 using hardware resources such as a CPU and a memory built into a computer. The program can be recorded in a computer-readable recording medium (a portable memory or the like) to be stored or distributed. The program can also be provided through a network such as the Internet or an electronic mail.
A program for implementing processing in the computer is provided by, for example, a recording medium 1001 such as a CD-ROM or a memory card. When the recording medium 1001 storing the program is set in the drive device 1000, the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000. However, the program need not necessarily be installed from the recording medium 1001 and may be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program and also stores necessary files, data, and the like.
The memory device 1003 reads and stores the program from the auxiliary storage device 1002 when an instruction to start the program is given. The CPU 1004 implements functions relating to the virtual machine allocation device 100 according to the program stored in the memory device 1003. The interface device 1005 is used as an interface for connection to a network or the like. The display device 1006 displays a Graphical User Interface (GUI) and the like according to the program. The input device 1007 is configured of a keyboard and a mouse, buttons, a touch panel, or the like and is used for inputting various operational instructions. The output device 1008 outputs calculation results.
With the technique according to the present embodiment, it is possible to reduce surplus power of renewable energy at all bases, and to cover more electric power with the renewable energy.
In addition, it will lead to corporate social responsibility (CSR) initiatives by improving a ratio of the renewable energy and can contribute to reducing power purchasing costs from electric power companies.
The present specification discloses at least the following virtual machine allocation device, virtual machine allocation method, and program.
A virtual machine allocation device configured to perform allocation of virtual machines to a plurality of bases to which supply of electric power is performed by renewable energy power generation, the device including:
The virtual machine allocation device according to item 1, wherein
The virtual machine allocation device according to item 2, wherein
The virtual machine allocation device according to any one of items 1 to 3, wherein,
The virtual machine allocation device according to any one of items 1 to 3, wherein,
A virtual machine allocation method executed by a virtual machine allocation device configured to perform allocation of virtual machines to a plurality of bases to which supply of electric power is performed by renewable energy power generation, the method including:
A program configured to cause a computer to function as each unit of the virtual machine allocation device according to any one of items 1 to 5.
Although the embodiment has been described above, the present invention is not limited to the specific embodiment, and various modifications and changes can be made within the scope of the gist of the present invention described in the claims.
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2021/046098 | 12/14/2021 | WO |