Scaling management device, scaling management method, and program
The scaling management device addresses inefficient resource utilization in heterogeneous virtualization environments by optimizing scaling based on power efficiency and performance differences, reducing power consumption.
Patent Information
- Application Number
- JP2023559383
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-15
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2041-11-15
AI Technical Summary
Existing virtualization platforms lack consideration for power efficiency characteristics in heterogeneous environments, leading to inefficient resource utilization and increased power consumption due to unsuitable scaling thresholds.
A scaling management device that calculates power efficiency characteristics and performance differences across hardware, setting optimal scaling thresholds based on these metrics to efficiently allocate virtual resources.
Enables efficient resource utilization with reduced power consumption by optimizing scaling decisions based on hardware-specific power efficiency and performance ratios.
Smart Images

Figure 0007704212000001 
Figure 0007704212000002 
Figure 0007704212000003
Abstract
Description
Technical Field
[0001] The present invention relates to a scaling management device, a scaling management method, and a program for controlling scaling in a virtualization infrastructure.
Background Art
[0002] In recent years, in server farms such as data centers, it has become common to construct and operate a virtualization infrastructure. The virtualization infrastructure refers to a virtual environment in which physical resources such as servers and networks are abstracted and hidden using virtualization technology and prepared as a common base for a plurality of applications and services, and a system for managing those virtual environments.
[0003] As open-source virtualization infrastructures, OpenStack, which is software for constructing a cloud environment, and Kubernetes, which is software for managing and operating containerized workloads and services, are known. OpenStack is mainly used for managing and operating physical machines and virtual machines (VMs). Kubernetes is mainly used for managing and operating containers (see Non-Patent Document 1).
[0004] In the virtualization infrastructure constructed in this data center or the like, there is concern about an increase in power consumption by IT devices such as servers, and in server farms such as data centers, power efficiency is being focused on rather than the maximum performance of the devices.
[0005] Power efficiency is defined as "Power efficiency = Average load / Average power" (the amount of processing per watt). Also, the transition of power efficiency at each usage rate (0 to 100%) when the power efficiency at a usage rate of 100% is set to 1.0 is evaluated as the "power efficiency characteristic". It is known that this power efficiency shows different tendencies depending on the architecture of the device, and there are servers in which the power efficiency is not always the maximum at a usage rate of 100%, and the power efficiency is maximum at a usage rate of about 60 to 70% (see Non-Patent Document 2).
Prior Art Documents
[0006] [Non-Patent Document 1] Kubernetes, “Horizontal Pod Autoscaler Walkthrough,” [online], [Retrieved November 1, 2021], Internet<URL:https: / / kubernetes.io / ja / docs / tasks / run-application / horizontal-pod-autoscale-walkthrough / > [Non-Patent Document 2] C. Jiang, et al., “Energy Proportional Servers: Where Are We in 2016? ,” [online], 2017 IEEE 37th International Conference on Distributed Computing Systems, [Retrieved November 1, 2021], Internet<URL:https: / / ieeexplore.ieee.org / document / <7980102> Summary of the Invention [Problem to be solved by the invention]
[0007] Regarding the problem of power consumption of servers, etc., commercially available virtualization platforms are equipped with auto-scaling (a function that automatically adjusts the number of VMs and containers based on the system usage status). However, the scaling threshold is a value that is set in advance by the system operator, and is not a value that takes into account the power efficiency characteristics of each piece of hardware. In particular, even when multiple types and multiple servers (for example, heterogeneous hardware including accelerators such as GPUs and FPGAs) are abstracted as physical resources using virtualization technology, no consideration is given to a heterogeneous environment in which there are differences in performance and power efficiency characteristics between each server.
[0008] For example, in the above-mentioned Kubernetes, autoscaling is achieved by a function called HPA (Horizontal Pod Autoscaler), but the metrics (evaluation criteria) used for scaling judgment are not calculated considering a heterogeneous environment. Specifically, in HPA, as a metric for Pods (the minimum execution unit of Kubernetes applications) participating in the cluster, for example, CPU utilization is used, and the average value of the CPU utilization is compared with a threshold value to determine whether to scale. At this time, the performance difference of the hardware (hereinafter sometimes referred to as "HW") (the difference in processing performance of each server) and the difference in power efficiency characteristics (the difference in the utilization rate at which the power efficiency is maximized) are not considered.
[0009] Here, in a cloud infrastructure (virtualization infrastructure) with HW_A and HW_B as physical resources, assume that an operator of this system inputs the required resource "800m" (where "m" is a unit represented by 1 core = 1000 millicores in Kubernetes) into the resource configuration file of the Pod, and inputs the scaling threshold "CPU utilization = 60%" into the configuration file related to scaling. Also, as shown in FIG. 11, assume that the performance ratio of HW_A and HW_B is "2:1", and as the power efficiency characteristics of HW_A, the power efficiency is maximized when the utilization rate is 90%, and as the power efficiency characteristics of HW_B, the power efficiency is maximized when the utilization rate is 60%. Furthermore, assume that each of HW_A and HW_B has the same number of Pods ("1") and the same scaling threshold (60%).
[0010] Assume that the cloud infrastructure is operated with the above settings, and as shown in FIG. 11, the average utilization rate of the Pods is 400m for HW_A and 800m for HW_B. The determination of whether to perform scaling in this case is as follows. Average CPU utilization of Pods... (400m + 800m) / 2 = 600m On the one hand, since the scaling threshold is "CPU usage rate = 60%", it becomes 800m × 0.6 = 480m. Therefore, since the average CPU usage rate of the Pod "600m" exceeds the scaling threshold "480m", scaling is executed and one more Pod is added. Thus, because the HW performance difference and the power efficiency characteristic difference are not considered, although there is still room in the Pod of HW_A, a Pod will be added.
[0011] In view of such points, the present invention has been made, and an object of the present invention is to enable efficient utilization of resources with reduced power consumption in a virtualization infrastructure.
Means for Solving the Problem
[0012] The scaling management device according to the present invention is a scaling management device that manages the scaling of virtual resources installed on hardware by a virtualization infrastructure. The scaling management device calculates the power efficiency characteristics of each of a plurality of pieces of hardware by measuring the power efficiency by changing the level of the usage rate of the hardware, and determines the usage rate at which the value of the power efficiency is the highest among the measured power efficiencies. A power efficiency characteristic calculation unit; measuring the performance of each of the hardware by measuring a predetermined metric, identifying the hardware having the lowest performance value, and calculating the performance values of other hardware when the performance value of the identified hardware is set to 1 as a performance ratio. A performance ratio calculation unit; calculating a score obtained by multiplying the calculated performance ratio of each of the hardware by the usage rate at which the value of the power efficiency is the highest in the hardware, and according to the ratio of the magnitudes of the scores calculated for each hardware, A virtual resource number calculation unit that calculates the number of virtual resources to be installed on the hardware; based on the performance ratio of other hardware with respect to the performance value 1 of the hardware having the lowest performance value, when the requested resource for the virtual resources installed on other hardware is set to 1, A request resource calculation unit that sets the request resource of the hardware having the lowest performance value to a value indicated by the performance ratio with respect to 1, and calculates the request resources for the virtual resources installed on the hardware having the lowest performance value and other hardware; for each of the hardware, a scaling setting file is created with the usage rate at which the value of the power efficiency is the highest as the target value of the scaling of the hardware, and the calculated number of virtual resources installed on the hardware and the request resources of the virtual resources installed on the hardware are included. And a setting file creation unit for creating a resource setting file.
Effect of the Invention
[0013] According to the present invention, in a virtualization infrastructure, it is possible to efficiently operate resources while suppressing power consumption.
Brief Description of the Drawings
[0014]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Embodiments for Carrying Out the Invention
[0015] Next, embodiments for carrying out the present invention (hereinafter referred to as "the present embodiment") will be described. First, an outline of the processing executed by the scaling management device 10 according to the present embodiment will be described.
[0016] FIG. 1 is a diagram for explaining the outline of the processing executed by the scaling management device 10 according to the present embodiment. The scaling management device 10 calculates set values of required resources and scaling thresholds in consideration of performance differences and power efficiency characteristic differences for a plurality of hardware devices 3 (HW_A and HW_B in FIG. 1) set and managed by a virtualization infrastructure 20 (see FIG. 2 described later).
[0017] This scaling management device 10 executes the following processes. <1> Using a benchmark tool or the like, calculate the performance difference and power efficiency characteristics for each hardware device. Here, the performance difference is calculated as a performance ratio, which is the ratio of the performance values of each hardware device when the performance value of the hardware device with the lowest performance among the plurality of hardware devices is set to "1". For example, the performance ratio between HW_A and HW_B is calculated as "2:1". Also, by gradually applying a load using a benchmark tool and measuring, calculate the power efficiency characteristics of each hardware device and obtain the usage rate at which the power efficiency is maximized. As shown in FIG. 1, the power efficiency of HW_A is maximized when the usage rate is "90%". Also, the power efficiency of HW_B is maximized when the usage rate is "60%".
[0018] <2> Calculate the number of virtual resources (number of virtual resources) installed on each hardware device. First, set the usage rate corresponding to the maximum value of the power efficiency in the power efficiency characteristics of each hardware device as the scaling target value. Here, for HW_A, the target value of the power efficiency is the usage rate of "90%". For HW_B, the target value of the power efficiency is the usage rate of "60%". Then, based on this target value of the power efficiency and the performance ratio "2:1", calculate the score for each hardware device. · Score of HW_A ··· Performance "2" × Power efficiency "90%" = 1.8 · Score of HW_B ··· Performance "1" × Power efficiency "60%" = 0.6 Based on this score ratio, calculate the number of virtual resources (such as containers and VMs) installed on each hardware. In this specification, an application virtualized in a virtualization infrastructure (composed of one or more containers, one or more VMs, etc.) is referred to as a virtual resource, and the number of virtual resources means the number of containers or the number of VMs. Also, in the following description, the virtual resources set in the virtualization infrastructure are described as containers, but it is not limited to this. Here, the number of containers installed on the hardware is made "3:1" for HW_A:HW_B corresponding to the score ratio "1.8:0.6". That is, for example, assume that 3 virtual resources are installed on HW_A and 1 virtual resource is installed on HW_B.
[0019] <3>Set the required resources so that the performance per container is the same. When the performance ratio of HW_A and HW_B is "2:1" as described above, for example, for the required resources "400m" for the containers installed on HW_A, set the required resources "800m" for the containers installed on HW_B. That is, set the required resources so that the ratio of the required resources of HW_A and HW_B is "1:2".
[0020] Based on the above calculation results, create a resource setting file required at the time of container deployment and a scaling setting file required at the time of scaling execution. Here, in the resource setting file, together with the number of containers installed on the hardware, the required resources for the containers installed on that hardware are set. For example, the required resources "400m" for the containers installed on HW_A and the required resources "800m" for the containers installed on HW_B are set. Also, in the scaling setting file, the target value of scaling is set to a usage rate of "90%" based on the power efficiency characteristics of HW_A, and the target value of scaling is set to a usage rate of "60%" based on the power efficiency characteristics of HW_B.
[0021] <4>During operation, scaling is performed based on the scaling configuration file. During operation, the usage status (utilization rate) of the containers is monitored, and scaling is performed based on the scaling configuration file. At this time, the determination is made with different target values for each hardware type. When the utilization rate of the hardware is extremely high or low, the hardware itself is started or stopped.
[0022] This scaling management device 10 creates a resource configuration file (specifically, the setting of the number of containers installed for each hardware and the setting of the requested resources to be allocated) in consideration of the performance difference (performance ratio) and the power efficiency characteristic difference (the difference in the utilization rate at which the power efficiency is maximized). Therefore, if the traffic is evenly distributed to all containers by a load balancer or the like, all hardware will reach the scaling threshold almost simultaneously. Note that the scaling management device 10 monitors the containers and makes scaling decisions, but the actual container control is performed by the virtualization infrastructure 20 (Figure 2).
[0023] The scaling management device 10 according to this embodiment can control the virtualization infrastructure to operate at the load amount with the highest power efficiency for each hardware by creating a resource configuration file considering the performance difference (performance ratio) and setting the scaling target value (threshold) considering the power efficiency characteristic difference. Note that the virtualization infrastructure controlled by the scaling management device 10 is particularly useful in a heterogeneous environment where different types of hardware are mixed, but it may also be composed of the same type of hardware. In the following, it will be described assuming that the hardware is configured in a heterogeneous environment consisting of multiple types and multiple units. Hereinafter, the scaling management system 1 including the scaling management device 10 of the present invention will be specifically described.
[0024] Figure 2 is a diagram showing the overall configuration of the scaling management system 1 including the scaling management device 10 according to this embodiment. The scaling management system 1 includes a hardware (HW) 3 (3A, 3B, 3C, ···) which is a physical resource consisting of multiple types and multiple servers, a virtualization platform 20 that virtualizes the heterogeneous hardware 3 which is a physical resource by virtualization technology and constructs a common platform to provide multiple applications and services by virtual resources (such as containers and VMs) set on each hardware 3, and a scaling management device 10 that is communicatively connected to each hardware 3 and the virtualization platform 20.
[0025] The hardware 3 is heterogeneous hardware including accelerators such as GPUs and FPGAs. The hardware 3 of this embodiment is composed of at least multiple hardware with different power efficiency characteristics.
[0026] The virtualization platform 20 manages a virtualization environment that abstracts and conceals physical resources such as the hardware 3 using virtualization technology and constructs multiple applications and services as a common platform. This virtualization platform 20 is realized by, for example, a server provided on the cloud. As shown in FIG. 2, the virtualization platform 20 includes a resource management unit 21 and a virtual resource control unit 22. The resource management unit 21 sets and manages physical resources such as the hardware 3. The virtual resource control unit 22 sets and manages virtual resources (containers and VMs) constructed (installed) on the hardware 3.
[0027] The virtual resource control unit 22 of this virtualization platform 20 installs virtual resources (such as containers) on each hardware 3 based on the number of virtual resources indicated in the resource setting file obtained from the scaling management device 10. Also, the virtual resource control unit 22 adjusts (adds or deletes) virtual resources based on a request from the scaling management device 10. In addition, when the resource management unit 21 receives an instruction to start or stop the hardware 3 from the scaling management device based on the usage status of the hardware 3, it starts or stops the hardware 3 which is a physical resource.
[0028] <Scaling Management Device> Based on the power efficiency characteristics of each piece of hardware 3 and the performance difference (performance ratio) between pieces of hardware 3, the scaling management device 10 calculates the number of virtual resources to be constructed on each piece of hardware 3, sets a scaling policy, and causes the virtual resources constructed on the hardware 3 to be scaled via the virtualization infrastructure 20. This scaling management device 10 is composed of a computer including a control unit, an input / output unit, and a storage unit (all not shown in the figures).
[0029] The input / output unit inputs and outputs information regarding the virtualization infrastructure 20, each piece of hardware 3, etc. This input / output unit is composed of a communication interface that transmits and receives information via a communication line, and an input / output interface that inputs and outputs information between an input device such as a keyboard (not shown) and an output device such as a monitor.
[0030] The storage unit is composed of a hard disk, a flash memory, a RAM (Random Access Memory), etc. In this storage unit, a program for executing each function of the control unit and information necessary for the processing of the control unit are temporarily stored.
[0031] The control unit oversees all the processing executed by the scaling management device 10, and is configured to include a HW characteristics calculation unit 11, a resource setting unit 12, a monitoring unit 13, a scaling control unit 14, and a HW control unit 15.
[0032] The HW characteristics calculation unit 11 calculates the performance difference (performance ratio) and the power efficiency characteristics for each piece of hardware 3 using a benchmark tool or the like. This HW characteristics calculation unit 11 is configured to include a power efficiency characteristics calculation unit 111 and a performance ratio calculation unit 112.
[0033] The power efficiency characteristics calculation unit 111 calculates the power efficiency characteristics of each piece of hardware 3 by measuring the power efficiency while changing the level of the usage rate of that piece of hardware 3, and determines the usage rate at which the value of the power efficiency is the highest among the measured power efficiencies.
[0034] Specifically, first, the power efficiency characteristic calculation unit 111 applies a benchmark load to the hardware 3 to calculate the maximum RPS (Requests Per Second). For example, "5000" is calculated as the maximum RPS (RPS_MAX). The power efficiency characteristic calculation unit 111 stores the value of the maximum RPS of each hardware 3 in the storage unit. Next, the power efficiency characteristic calculation unit 111 applies the maximum load of the hardware 3 in 10% increments for a predetermined time T (an arbitrary value set in advance, for example, T seconds). Then, the power efficiency characteristic calculation unit 111 calculates the average power (Power_x [W]) and the average load (RPS_x) at the predetermined time T. The power efficiency characteristic calculation unit 111 also calculates the average power for the predetermined time T in a state where no load is applied.
[0035] Subsequently, the power efficiency characteristic calculation unit 111 calculates the power efficiency (EE_x) using the calculated average power (Power_x [W]) and average load (RPS_x) based on the formula "power efficiency = average load / average power". Furthermore, the power efficiency characteristic calculation unit 111 calculates a normalized value (normalized EENormalize_x) by normalizing the power efficiency calculated in 10% load increments with the power efficiency at the maximum RPS being "1.0".
[0036] Figure 3 is a diagram showing the calculation results of the power efficiency characteristics of the hardware 3 according to the present embodiment. The first row of Figure 3 shows the usage rate of the resources with the load set in 10% increments when the maximum throughput (load) is "1.0". To distinguish this usage rate from the usage rate measured by monitoring the hardware 3, it is hereinafter referred to as the "set usage rate". The power efficiency EE_x in the fourth row is the value obtained by dividing the average load RPS_x in the third row by the average power Power_x [W] in the second row. The normalized EENormalize_x in the fifth row is the normalized value of the power efficiency at each set usage rate (0.9 to 0.1) with the power efficiency at the maximum RPS (in Figure 3, "4950") being "1.0" (in Figure 3, "4.95"). In FIG. 3, when the set usage rate (usage rate) is “0.9” (90%), the normalized value becomes the highest “1.10”. Therefore, this hardware 3 has the highest power efficiency EE_x when the usage rate is “0.9” (90%).
[0037] Note that the power efficiency characteristic calculation unit 111 is not limited to calculating the power efficiency characteristics by applying a benchmark load, and other methods may be used. For example, the power efficiency characteristic calculation unit 111 may measure the power efficiency and the usage rate during operation using the applications actually installed on the hardware 3 without applying a benchmark load, and calculate (learn) the optimal value of the usage rate at which the power efficiency is maximized.
[0038] Returning to FIG. 2, the performance ratio calculation unit 112 measures the performance of each hardware 3 by measuring a predetermined metric, identifies the hardware 3 with the lowest performance value, and calculates the performance values of the other hardware 3 when the performance value of the identified hardware 3 is set to “1” as the performance ratio.
[0039] Specifically, the performance ratio calculation unit 112 first refers to the information on the maximum RPS of each hardware 3 calculated by the power efficiency characteristic calculation unit 111, and selects the RPS value of the hardware 3 with the lowest maximum RPS value.
[0040] Next, the performance ratio calculation unit 112 applies a load in 10% increments of the selected RPS value for a predetermined time T (an arbitrary value set in advance). Then, the average usage rate (for example, CPU usage rate, GPU usage rate, etc.) for each predetermined time T is calculated. The performance ratio calculation unit 112 measures the average usage rate for all hardware types. Then, the performance ratio calculation unit 112 calculates the ratio of the average usage rate of the other hardware 3 to the average usage rate of the hardware 3 with the lowest RPS value in 10% increments of the load, and calculates the performance score by averaging overall.
[0041] FIG. 4 is a diagram showing the calculation result of the performance ratio of the hardware 3 according to the present embodiment. The setting usage rate (usage rate) in the first row of Figure 4 indicates the resource usage rate in 10% increments when the RPS value of the hardware 3 with the lowest maximum RPS value is set to "1.0". The third row shows the average usage rate [%] of HW_B, which is the hardware 3 with the lowest maximum RPS value. The second row shows the average usage rate [%] of HW_A, which is the other hardware 3. The performance ratio in the fourth row is the value obtained by dividing the average usage rate [%] of HW_B, which is the hardware 3 with the lowest maximum RPS value in the third row, by the average usage rate [%] of HW_A, which is the other hardware 3 in the second row, for each setting usage rate (1.0 to 0.1). Based on this calculation result, the performance ratio calculation unit 112 calculates the average of the performance ratios at each setting usage rate (in Figure 4, it is "1.91"). That is, the performance ratio between HW_A and HW_B is approximately "2:1". The performance ratio calculation unit 112 sets the performance score of HW_A to "2" and the performance score of HW_B to "1" based on this performance ratio.
[0042] Here, the performance ratio calculation unit 112 obtains the calculation of the performance ratio by calculating the performance ratio of the average usage rates between the hardware 3. This is because the scaling control unit 14 (Figure 2) described later makes scaling judgments based on the usage rate, and by calculating the performance ratio in the same way as the ratio of the usage rates, a more accurate value can be obtained. However, the calculation of this performance ratio is not limited to the method based on this usage rate. For example, the performance ratio calculation unit 112 may calculate the ratio of the RPS value of the hardware 3 with the lowest maximum RPS value to the maximum RPS value of the other hardware 3 to be compared as the performance ratio.
[0043] When the hardware 3 is composed of a plurality of the same type of hardware 3, the measured performance values are basically the same. At this time, the performance ratio calculation unit 112 identifies one of the plurality of hardware 3 as the hardware 3 with the lowest performance value, compares it with the performance values of the other hardware 3, and calculates a performance ratio of "1:1". Also, the scaling management device 10 may obtain in advance from the system management terminal or the like information indicating that the performance ratio of each hardware 3 is "1:1" and have the performance ratio calculation unit 112 hold it.
[0044] Returning to FIG. 2, the resource setting unit 12 calculates the number of virtual resources (such as containers) to be installed on each piece of hardware 3, and sets the required resources so that the performance per virtual resource unit is the same. This resource setting unit 12 includes a virtual resource number calculation unit 121, a required resource calculation unit 122, and a setting file creation unit 123.
[0045] The virtual resource number calculation unit 121 calculates, for each piece of hardware 3, a score obtained by multiplying the performance ratio calculated by the performance ratio calculation unit 112 by the usage rate at which the power efficiency value is the highest in that piece of hardware 3, and calculates the number of virtual resources to be installed on the hardware 3 according to the ratio of the magnitudes of the scores calculated for each piece of hardware 3.
[0046] Specifically, the virtual resource number calculation unit 121 calculates a score by multiplying the performance score of each piece of hardware 3 calculated by the performance ratio calculation unit 112 by the set usage rate (usage rate) at which the highest power efficiency is indicated by the power efficiency characteristics. Score of HW_A... Performance score "2" × Usage rate of the highest power efficiency "90%" = 1.8 Score of HW_B... Performance score "1" × Usage rate of the highest power efficiency "60%" = 0.6 Based on this ratio of scores, the virtual resource number calculation unit 121 sets the number of containers installed on the hardware 3 to be "3:1" for HW_A:HW_B.
[0047] Note that when the ratio of HW_A:HW_B is not an integer, such as "2.5:1", the virtual resource number calculation unit 121 sets a logic such as rounding the number in the first decimal place in advance so that the number of containers can be calculated as an integer.
[0048] In addition, when the hardware 3 is composed of a plurality of the same type of hardware 3, in each hardware 3, there is a "1" with the same performance score, and the highest power efficiency utilization rate is also the same. Therefore, the virtual resource number calculation unit 121 sets the number of containers installed in each hardware 3 to "1:1".
[0049] The required resource calculation unit 122 sets the required resources to be set for each hardware 3 so that the performance of the virtual resource unit is the same based on the performance ratio calculated by the performance ratio calculation unit 112. Here, the required resource calculation unit 122 uses the performance ratio of other hardware to the performance value "1" of the hardware 3 with the lowest performance value. When the required resources for the virtual resources installed in other hardware 3 are "1", the required resources of the hardware 3 with the lowest performance value are set to the value indicated by the performance ratio to "1". Based on this, the required resources for the virtual resources installed in the hardware 3 with the lowest performance value and other hardware 3 are calculated.
[0050] Specifically, when the performance ratio of HW_A and HW_B is "2:1" as described above, for example, for the required resources "400m" of HW_A, the required resources "800m" of HW_B are set. That is, the required resources are determined so that the ratio of the required resources of HW_A and HW_B is "1:2", which is the inverse of the performance ratio.
[0051] When the hardware 3 is composed of a plurality of the same type of hardware 3, the required resource calculation unit 122 specifies one performance value among the plurality of hardware 3 as the lowest performance value, compares it with the performance values of other hardware 3, and determines the ratio of the required resources to be "1:1".
[0052] The configuration file creation unit 123 creates a scaling configuration file for each piece of hardware 3, with the usage rate at which the power efficiency value is highest as the target value for the scaling of the corresponding hardware 3. Further, the configuration file creation unit 123 creates a resource configuration file that includes the number of virtual resources installed on the hardware 3 calculated by the virtual resource number calculation unit 121 and the required resources of the virtual resources installed on the hardware 3 calculated by the required resource calculation unit 122.
[0053] The configuration file creation unit 123 determines the target value of scaling according to the set usage rate (usage rate) of the peak value of the power efficiency indicated by the power efficiency characteristics of the hardware 3. For example, the configuration file creation unit 123 determines a usage rate of 90% for HW_A and a usage rate of 60% for HW_B. Then, the configuration file creation unit 123 creates a scaling configuration file that includes information on the determined target value of scaling.
[0054] Further, the configuration file creation unit 123 creates a resource configuration file that includes the number of virtual resources (e.g., the number of containers) calculated by the virtual resource number calculation unit 121 and the required resources for the virtual resources (containers) installed on each piece of hardware 3 (e.g., the required resource of HW_A is "400m", and the required resource of HW_B is "800m"). The configuration file creation unit 123 transmits the created resource configuration file to the virtualization infrastructure 20. As a result, the resource management unit 21 of the virtualization infrastructure 20 sets virtual resources (such as containers) on each piece of hardware 3 based on the resource configuration file.
[0055] The monitoring unit 13 monitors by obtaining information on the usage rate (predetermined metrics such as CPU usage rate and GPU usage rate) of virtual resources (containers) at predetermined intervals for each piece of hardware 3. The monitoring unit 13 may obtain this usage rate information directly from each piece of hardware 3 or through the virtualization infrastructure 20. When the monitoring unit 13 acquires the usage rate information for each piece of this hardware 3, it outputs that information to the scaling control unit 14 and the HW control unit 15.
[0056] The scaling control unit 14 compares, at predetermined intervals, the difference between the target value of the usage rate based on the power efficiency characteristics of each piece of hardware 3 set in the scaling setting file and the usage rate acquired by the monitoring unit 13, and executes scaling processing. Specifically, the scaling control unit 14 acquires from the monitoring unit 13 information on the usage rate of virtual resources such as containers and VMs (for example, CPU usage rate and RPS, etc.). Then, the scaling control unit 14 calculates a moving average at a predetermined interval (monitoring interval), averages it with the virtual resources (for example, the number of containers) installed on each piece of hardware 3, and compares it with the target value. When the target value is exceeded, the scaling control unit 14 performs a scale-out, that is, adds virtual resources such as containers. On the other hand, when the target value is fallen below, the monitoring unit 13 performs a scale-in, that is, deletes virtual resources such as containers.
[0057] When making a scaling determination, the scaling control unit 14 may set the number of comparison times with the target value or provide a width with the target value for each of scale-out / scale-in. For example, in the determination of scale-out, the scaling control unit 14 sets the number of comparison times to 1 time, and if it is 1 time or more (that is, if the target value is exceeded even once), it adds a container. Also, in the determination of scale-in, the monitoring unit 13 sets the number of comparison times to 3 times, and deletes a container if the target value is continuously below the target value by 10% for 3 times.
[0058] When the scaling control unit 14 determines the number of virtual resources to be added or deleted, it transmits that information as a container addition / removal request to the virtualization infrastructure 20. Thereby, the virtual resource control unit 22 of the virtualization infrastructure 20 executes the addition or deletion of the virtual resources installed on the hardware 3.
[0059] The HW control unit (Hardware Control Unit) 15 acquires information on the usage rate of the hardware 3 (CPU usage rate, GPU usage rate), and when the usage rate is extremely high (higher than a predetermined threshold (first threshold)), or when a container addition failure response due to resource shortage is received for a container addition request to the virtualization infrastructure 20 by the scaling control unit 14, it selects one piece from the unactivated HW resources, activates the hardware 3, and adds free resources to the resource management unit 21 of the virtualization infrastructure 20.
[0060] The HW resource selected by this HW control unit 15 selects the hardware 3 based on the following predetermined policy in order to minimize power consumption. (1) Select the hardware with the lowest maximum power consumption. (2) Select the hardware with the lowest standby power in the idle state (standby state). In the cases of (1) and (2), since the performance generally becomes low, it is the hardware with the lowest maximum RPS. (3) Select the hardware based on the increasing trend of traffic. In the case of (3), when the increasing trend of traffic is large, select the hardware with high performance but high maximum power consumption. On the other hand, when the increasing trend is gentle, select the hardware with the lowest maximum power consumption. Note that the HW control unit 15 is not limited to selecting only one piece according to the increasing trend, and may select multiple pieces of hardware.
[0061] Also, the HW control unit 15 acquires information on the usage rate of the hardware 3 (CPU usage rate, GPU usage rate), and when the usage rate is extremely low (lower than a predetermined threshold (second threshold)), it shuts down the hardware 3 that becomes surplus resources.
[0062] In this case, the HW control unit 15 selects one piece of the hardware 3 that is in operation, and instructs the virtualization infrastructure 20 to stop distributing new processes to the virtual resources such as containers that are running on the selected hardware 3. Then, at the timing when all the processes being executed are completed, the HW control unit 15 instructs the resource management unit 2 of the virtualization infrastructure 20 to delete the resource information of the hardware 3 and to stop the hardware 3.
[0063] Note that the HW resource selected by the HW control unit 15 selects the hardware 3 based on the following predetermined policy in order to minimize power consumption. (1) Select the hardware with the largest maximum power consumption. (2) Select the hardware with the largest standby power in the idle state (standby state). In the cases of (1) and (2), since the performance is generally high, the hardware will also have a large maximum RPS. (3) Select the hardware based on the decreasing trend of traffic. In the case of (3), when the decreasing trend of traffic is large, select the hardware with a large maximum power consumption and high performance. On the other hand, when the decreasing trend is gentle, select the hardware with a small maximum power consumption. Note that the HW control unit 15 is not limited to selecting only one piece of hardware according to the decreasing trend, and may select a plurality of pieces of hardware.
[0064] Note that the HW control unit 15 has been described as performing the startup and stop of the hardware 3 via the resource management unit 21 of the virtualization infrastructure 20, but the HW control unit 15 may directly give instructions for startup and stop to the selected hardware 3 without going through the virtualization infrastructure 20.
[0065] <Processing of the Scaling Management Device> Next, the flow of the processing executed by the scaling management device 10 according to the present embodiment will be described in detail. Here, the calculation process of power efficiency characteristics (Fig. 5), the calculation process of performance ratio (Fig. 6), the scaling process (Figs. 7 and 8), and the startup / shutdown process of hardware (Fig. 9) executed by the scaling management device 10 will be described in detail.
[0066] <<Calculation Process of Power Efficiency Characteristics>> Fig. 5 is a flowchart showing the flow of the calculation process of power efficiency characteristics according to this embodiment.
[0067] First, the power efficiency characteristic calculation unit 111 of the scaling management device 10 applies a benchmark load to each piece of hardware 3 (step S101). Then, the power efficiency characteristic calculation unit 111 determines the maximum RPS for each piece of hardware 3 (step S102). Note that the power efficiency characteristic calculation unit 111 stores the maximum RPS of each piece of hardware 3 in the storage unit. Then, the power efficiency characteristic calculation unit 111 sets "x = 1.0" for the utilization rate (set utilization rate) x at the maximum RPS (step S103).
[0068] Subsequently, the power efficiency characteristic calculation unit 111 applies a load of maximum RPS × "x" to the hardware 3 and measures the power for a predetermined time (for example, T seconds) (step S104). Next, the power efficiency characteristic calculation unit 111 calculates the average power (Power_x) and the average load (RPS_x) over a predetermined time (T seconds) (step S105).
[0069] Then, in order to apply the maximum load of the hardware 3 in 10% increments, the power efficiency characteristic calculation unit 111 sets "x = x - 0.1" for the utilization rate x (step S106). Subsequently, the power efficiency characteristic calculation unit 111 determines whether "x = 0" (step S107). If x ≠ 0 (step S107 → No), it returns to step S104 and continues the process. On the other hand, if x = 0 (step S107 → Yes), it proceeds to the next step S108.
[0070] In step S108, the power efficiency characteristic calculation unit 111 measures power for a predetermined time (T seconds) in a state where no load is applied (no-load state). Then, the power efficiency characteristic calculation unit 111 calculates the average power (Power_0) in the no-load state (step S109). Note that through the processing of steps S101 to S109, the power efficiency characteristic calculation unit 111 obtains information on the average power (Power_x) and the average load (RPS_x) shown in FIG. 3.
[0071] Subsequently, the power efficiency characteristic calculation unit 111 repeats the process from 1.0 to 0.1 for the usage rate (set usage rate) x 10 times (steps S110 to S113). In step S111, the power efficiency characteristic calculation unit 111 calculates the power efficiency (EE_x) at each usage rate x based on the formula "power efficiency = average load / average power". Next, the power efficiency characteristic calculation unit 111 calculates a value (normalized EENormalize_x) obtained by normalizing the power efficiency calculated in 10% increments of the load with the power efficiency at the maximum RPS being "1.0" (step S112).
[0072] Through the processing of steps S110 to S113, the power efficiency characteristic calculation unit 111 obtains information on the power efficiency (EE_x) and normalization (EENormalize_x) shown in FIG. 3. In the power efficiency characteristic indicated by the information of the normalized value (EENormalize_x) in FIG. 3, it is shown that the power efficiency is the highest when the normalized value is the highest "1.10", that is, when the usage rate (set usage rate) is "0.9" (90%).
[0073] ≪Performance ratio calculation process≫ FIG. 6 is a flowchart showing the flow of the performance ratio calculation process according to the present embodiment.
[0074] First, the performance ratio calculation unit 112 of the scaling management device 10 acquires information on the maximum RPS for each piece of hardware 3 measured during the calculation of the power efficiency characteristic by the power efficiency characteristic calculation unit 111 (step S201). Then, the performance ratio calculation unit 112 selects the information of the lowest maximum RPS (RPS_Low) from the acquired maximum RPS information (step S202).
[0075] Next, the performance ratio calculation unit 112 repeats the processes of steps S203 to S209 for each hardware type. At this time, the performance ratio calculation unit 112 sets the selected lowest maximum RPS value as the usage rate "1.0", and applies a load with the maximum RPS value in 10% increments.
[0076] First, the performance ratio calculation unit 112 sets the selected lowest maximum RPS value as the usage rate (set usage rate) x to "x = 1.0" (step S204). Next, the performance ratio calculation unit 112 applies a load of the selected lowest maximum RPS × "x" to the hardware 3, and measures the usage rate (for example, CPU usage rate or GPU usage rate) for a predetermined time of T seconds (step S205). Subsequently, the performance ratio calculation unit 112 calculates the average usage rate (Utilizatin_x) in a predetermined time (T seconds) (step S206).
[0077] Then, in order to apply the maximum load of the hardware 3 in 10% increments, the performance ratio calculation unit 112 sets "x = x - 0.1" for the usage rate (set usage rate) x (step S207). Subsequently, the performance ratio calculation unit 112 determines whether "x = 0" (step S208). If x is not 0 (step S208 → No), it returns to step S205 and continues the process. On the other hand, if x = 0 (step S208 → Yes), it proceeds to the next step S209. Note that by repeating the processes of steps S204 to S208 for each hardware type, the performance ratio calculation unit 112 obtains information such as the average usage rate of HW_A and the average usage rate of HW_B shown in FIG. 4, for example.
[0078] Subsequently, the performance ratio calculation unit 112 repeats the processes for the usage rate (set usage rate) x from 1.0 to 0.1 ten times (steps S210 to S212). In step S211, the performance ratio calculation unit 112 calculates the ratio of the utilization rates at each utilization rate (set utilization rate) x. Specifically, the performance ratio calculation unit 112 calculates a value obtained by dividing the average utilization rate of the hardware 3 with the lowest maximum RPS value (HW_B in FIG. 5) by the average utilization rate of the other hardware 3 to be compared (HW_A in FIG. 5). By repeating the process of step S211 at each utilization rate (set utilization rate) x, the performance ratio calculation unit 112 calculates the performance ratio shown in FIG. 4.
[0079] Next, in step S213, the performance ratio calculation unit 112 calculates the average of the performance ratios for the utilization rate (set utilization rate) x = 1.0 to 0.1 (average "1.91" in FIG. 4). Then, the performance ratio calculation unit 112 sets the performance ratio (HW_A:HW_B) between the other hardware 3 to be compared (HW_A in FIG. 4) and the hardware 3 with the lowest maximum RPS value (HW_B in FIG. 4) as "1.91:1" ≈ "2:1". Note that based on this performance ratio, the performance ratio calculation unit 112 sets the performance score of HW_A as "2" and the performance score of HW_B as "1". The performance ratio calculation unit 112 calculates the performance ratio between each hardware 3 of a different type to be compared and the hardware 3 with the lowest maximum RPS value (HW_B in FIG. 4).
[0080] ≪Scaling process≫ FIGS. 7 and 8 are flowcharts showing the flow of the scaling process according to the present embodiment. When the scaling control unit 14 of the scaling management device 10 executes the scaling process, it is assumed that the monitoring unit 13 acquires information on the metrics to be monitored for each hardware 3 (for example, the utilization rate obtained from the CPU utilization rate, RPS, etc.).
[0081] In step S301, first, the scaling control unit 14 sets α times as the threshold value of the number of scale-out determinations and β times as the threshold value of the number of scale-in determinations. Also, (γ%) is set as the width from the target value of the scale-out determination, and (δ%) is set as the width from the target value of the scale-in determination.
[0082] Next, in step S302, the scaling control unit 14 initializes the number of scale-out determinations "Y" to "0". Also, the scaling control unit 14 initializes the number of scale-in determinations "Z" to "0".
[0083] Then, the scaling control unit 14 calculates the moving average (U) of the metrics at a predetermined interval for each piece of hardware 3 (step S303). Subsequently, the scaling control unit 14 determines whether or not a predetermined monitoring interval has been exceeded (step S304). If the predetermined monitoring interval has not been exceeded (step S304→No), the process returns to step S303 and continues. On the other hand, if the predetermined monitoring interval has been exceeded (step S304→Yes), the process proceeds to the next step S305.
[0084] In step S305, the scaling control unit 14 determines whether the moving average (U) of the metrics is greater than or equal to the value of the target value × (1 + γ). And when the value of the moving average (U) exceeds it (step S305→Yes), the process proceeds to step S306, and the scale-out determination count "Y" is set to Y + 1.
[0085] Subsequently, the scaling control unit 14 determines whether the number of scale-out determinations "Y" is α or more (step S307). Here, if "Y" is not α or more (step S307→No), the process returns to step S303 and continues. On the other hand, if "Y" is α or more (step S307→Yes), the process proceeds to step S311 in FIG. 8.
[0086] Also, in step S305, if the moving average (U) of the metrics is less than the value of the target value × (1 + γ) (step S305 → No), the scaling control unit 14 determines whether the moving average (U) of the metrics is less than the value of the target value × (1 - δ) (step S308). And if the moving average (U) is not less than the value of the target value × (1 - δ), that is, if the moving average (U) is greater than or equal to the value of the target value × (1 - δ) (step 308 → No), it returns to step S302 and continues the process. On the other hand, if the moving average (U) is less than the value of the target value × (1 - δ) (step S308 → Yes), it proceeds to step S309, and sets the number of scaling-in determination times "Z" to Z + 1.
[0087] Subsequently, the scaling control unit 14 determines whether the number of scaling-in determination times "Z" is equal to or greater than "β" (step S310). If "Z" is not equal to or greater than "β" here (step S310 → No), it returns to step S303 and continues the process. On the other hand, if "Z" is equal to or greater than "β" (step S310 → Yes), it proceeds to the next step S311.
[0088] In step S311 of FIG. 8, the scaling control unit 14 initializes the total number of virtual resources (TotalNum) required as a whole to "0".
[0089] Subsequently, the scaling control unit 14 repeats the following process for all hardware types (steps S312 to S314). Specifically, in step S313, the scaling control unit 14 calculates TotalNum + (total load value / target value) for a certain type of selected hardware 3. And sets the calculated value as the new TotalNum. Here, the total load value is the total load value of multiple units if there are multiple units of one type of hardware 3. Also, the target value is 90% if it is HW_A of the required resources set for each virtual resource in the resource setting file, and 60% if it is HW_B. By repeating the process of this step S313 for all hardware types, TotalNum based on all hardware types is calculated.
[0090] Next, in step S315, the scaling control unit 14 calculates the number of virtual resources (scale) to be added / removed. Specifically, the scaling control unit 14 rounds up the calculated TotalNum to an integer value (Ceil(TotalNum)) and subtracts the current number of virtual resources.
[0091] Then, the scaling control unit 14 determines whether the calculated number of virtual resources to be added / removed (scale) is 0 or more (step S316). If the calculated number of virtual resources to be added / removed (scale) is 0 or more (step S316 → Yes), it proceeds to step S317. In step S317, the scaling control unit 14 sends a request to add scale number of virtual resources (such as containers) to the virtualization infrastructure 20. If scale is 0, the request is not sent.
[0092] On the other hand, in step S316, if the calculated number of virtual resources to be added / removed (scale) is less than 0 (step S316 → No), it proceeds to step S318. In step S318, the scaling control unit 14 sends a request to delete scale number of virtual resources to the virtualization infrastructure 20.
[0093] In this way, the scaling management device 10 can perform scaling considering the power efficiency of each hardware 3.
[0094] ≪Startup / Shutdown Processing of Hardware≫ FIG. 9 is a flowchart showing the flow of the startup / shutdown processing of the hardware 3 according to the present embodiment. When the HW control unit 15 of the scaling management device 10 executes the startup and stop processes of the hardware 3, it is assumed that the monitoring unit 13 acquires information on metrics to be monitored for each hardware 3 (for example, resource utilization rates based on CPU utilization rate, RPS, etc.).
[0095] When the HW control unit 15 sends a container addition request to the virtualization infrastructure 20 through the processing of the scaling control unit 14, it receives a container addition failure response due to resource shortage from the virtualization infrastructure 20 (step S401). In this case, the HW control unit 15 proceeds to step S406 to add new hardware 3.
[0096] Also, for each hardware 3, the HW control unit 15 sets, as a threshold value (predetermined upper limit utilization rate (predetermined first threshold value)) that is the upper limit of the monitored metrics (resource utilization rate such as CPU utilization rate), for example, A%, and as a threshold value (predetermined lower limit utilization rate (predetermined second threshold value)) that is the lower limit, for example, B% (step S402).
[0097] Subsequently, the HW control unit 15 calculates the moving average of the metrics (resource utilization rate) at predetermined intervals for each hardware 3 (step S403). Subsequently, the HW control unit 15 determines whether or not a predetermined monitoring interval has been exceeded (step S404). If the predetermined monitoring interval has not been exceeded (step S404 → No), it returns to step S403 and continues the process. On the other hand, if the predetermined monitoring interval has been exceeded (step S403 → Yes), it proceeds to the next step S405.
[0098] Next, the HW control unit 15 determines whether or not the calculated moving average of the metrics (resource utilization rate) is equal to or higher than the predetermined upper limit utilization rate (A) (step S405). If it is equal to or higher than the predetermined upper limit utilization rate (A) (step S405 → Yes), it proceeds to step S406.
[0099] In step S406, the HW control unit 15 selects the hardware 3 to be added. At this time, for power consumption minimization, the HW control unit 15 may select the hardware 3 with low maximum power consumption or the hardware 3 with low standby power, or may select the hardware 3 with high (or low) maximum power consumption and high (or low) processing performance according to the increasing trend of traffic.
[0100] Then, the HW control unit 15 instructs the virtualization infrastructure 20 to add the selected hardware 3 (step S407). Specifically, the HW control unit 15 requests the virtualization infrastructure 20 to start the selected hardware 3, thereby starting the hardware 3 and causing the resource management unit 21 of the virtualization infrastructure 20 to add free resources.
[0101] On the other hand, in step S405, when the moving average of the calculated metrics (resource utilization rate) is not equal to or higher than the predetermined upper limit utilization rate (A) (step S405 → No), the HW control unit 15 determines whether the moving average of the calculated metrics is less than the predetermined lower limit utilization rate (B) (step S408). If it is not less than the predetermined lower limit utilization rate (B) (step S408 → No), the process returns to step S403 and continues. On the other hand, if it is less than the predetermined lower limit utilization rate (B) (step S408 → Yes), the process proceeds to the next step S409.
[0102] In step S409, the HW control unit 15 selects the hardware 3 to be stopped. At this time, for power consumption minimization, the HW control unit 15 may select the hardware 3 with high maximum power consumption or the hardware 3 with high standby power, or may select the hardware 3 with high (or low) maximum power consumption and high (or low) processing performance according to the decreasing trend of traffic.
[0103] Next, in step S410, when the HW control unit 15 selects the hardware 3 to be stopped, it instructs the virtualization infrastructure 20 to stop distributing requests for the selected hardware 3. Then, after the resource management unit 21 of the virtualization infrastructure 20 completes the processing requests of the selected hardware 3, it stops the hardware 3.
[0104] In this way, the scaling management device 10 can perform the startup and stop processing of the hardware in consideration of power efficiency.
[0105] <Hardware Configuration> The scaling management device 10 according to the present embodiment is realized by a computer 900 configured as shown in FIG. 10, for example. FIG. 10 is a hardware configuration diagram showing an example of a computer 900 that realizes the functions of the scaling management device 10 according to the present embodiment. The computer 900 includes a CPU (Central Processing Unit) 901, a ROM (Read Only Memory) 902, a RAM 903, an HDD (Hard Disk Drive) 904, an input / output I / F (Interface) 905, a communication I / F 906, and a media I / F 907.
[0106] The CPU 901 operates based on a program stored in the ROM 902 or the HDD 904 and performs control by the control unit. The ROM 902 stores a boot program executed by the CPU 901 when the computer 900 starts up, a program related to the hardware of the computer 900, and the like.
[0107] The CPU 901 controls an input device 910 such as a mouse and a keyboard, and an output device 911 such as a display and a printer via the input / output I / F 905. The CPU 901 acquires data from the input device 910 via the input / output I / F 905 and outputs the generated data to the output device 911. Note that a GPU (Graphics Processing Unit) or the like may be used together with the CPU 901 as a processor.
[0108] The HDD 904 stores programs executed by the CPU 901, data used by the programs, and the like. The communication I / F 906 receives data from other devices via a communication network (for example, NW (Network) 920) and outputs it to the CPU 901, and also transmits data generated by the CPU 901 to other devices via the communication network.
[0109] The media I / F 907 reads a program or data stored in the recording medium 912 and outputs it to the CPU 901 via the RAM 903. The CPU 901 loads a program related to the target process from the recording medium 912 onto the RAM 903 via the media I / F 907 and executes the loaded program. The recording medium 912 is an optical recording medium such as a DVD (Digital Versatile Disc) or a PD (Phase change rewritable Disk), a magneto-optical recording medium such as an MO (Magneto Optical disk), a magnetic recording medium, a semiconductor memory, or the like.
[0110] For example, when the computer 900 functions as the scaling management device 10 of the present invention, the CPU 901 of the computer 900 realizes the functions of the scaling management device 10 by executing the program loaded on the RAM 903. Also, the data in the RAM 903 is stored in the HDD 904. The CPU 901 reads and executes a program related to the target process from the recording medium 912. In addition, the CPU 901 may read a program related to the target process from other devices via the communication network (NW 920).
[0111] <Effect> Hereinafter, the effects of the scaling management device 10 and the like according to the present invention will be described. The scaling management device according to the present invention is a scaling management device 10 that manages the scaling of virtual resources installed on hardware 3 by a virtualization infrastructure 20. The scaling management device 10 calculates the power efficiency characteristics of each of the plurality of hardware 3 by measuring the power efficiency by changing the level of the usage rate of the hardware 3, and determines the usage rate at which the value of the power efficiency is the highest among the measured power efficiencies. A power efficiency characteristic calculation unit 111, measures the performance of each of the hardware 3 by measuring a predetermined metric, identifies the hardware 3 with the lowest performance value, and calculates the performance values of the other hardware 3 when the performance value of the identified hardware 3 is set to "1" as a performance ratio. A performance ratio calculation unit 112, for each of the hardware 3, calculates a score obtained by multiplying the calculated performance ratio by the usage rate at which the value of the power efficiency is the highest in the hardware 3, and according to the ratio of the magnitudes of the scores calculated for each hardware 3, calculates the number of virtual resources to be installed on the hardware 3. A virtual resource number calculation unit 121, based on the performance ratio of the other hardware 3 to the performance value "1" of the hardware 3 with the lowest performance value, when the required resources for the virtual resources installed on the other hardware 3 are set to "1", sets the required resources of the hardware 3 with the lowest performance value to the value indicated by the performance ratio to "1". A required resource calculation unit 122 that calculates the required resources for the virtual resources installed on the hardware 3 with the lowest performance value and the other hardware 3, and for each of the hardware 3, creates a scaling setting file with the usage rate at which the value of the power efficiency is the highest as the target value of the scaling of the hardware 3, and creates a resource setting file including the calculated number of virtual resources to be installed on the hardware 3 and the required resources of the virtual resources installed on the hardware 3. It is characterized by comprising a setting file creation unit 123.
[0112] According to this scaling management device 10, it is possible to perform scaling in consideration of the performance differences and power efficiency characteristics differences of the hardware 3 in the virtualization infrastructure 20. As a result, for each piece of hardware 3, it becomes possible to operate with the load amount that has the best power efficiency. In addition, the scaling management device 10 creates a resource setting file according to the performance differences of each piece of hardware 3, and creates a scaling setting file by setting a target value for scaling according to the power efficiency characteristics differences. Therefore, in the virtualization infrastructure 20, it is only necessary to evenly distribute the traffic to each virtual resource without considering the performance differences and power efficiency characteristics differences between the hardware 3.
[0113] Further, in the scaling management device 10, a monitoring unit 13 that acquires the usage rate of the virtual resources installed on the hardware 3 in units of the hardware 3, and compares the acquired usage rate of the virtual resources with the target value of scaling indicated in the scaling setting file, and a scaling control unit 14 that determines whether to add or delete virtual resources, are further provided.
[0114] In this way, the scaling management device 10 can determine whether to add or delete virtual resources based on the target value of scaling according to the power efficiency characteristics differences. Therefore, compared with the prior art, it becomes possible to operate the virtualization infrastructure 20 with reduced power consumption.
[0115] Further, in the scaling management device 10, when the addition of virtual resources fails, or when the acquired usage rate of the virtual resources is higher than a predetermined first threshold value, a hardware control unit 15 that determines the hardware with the lowest maximum power consumption or the hardware with the lowest standby power as the hardware to be added is further provided.
[0116] By doing so, the scaling management device 10 can select the hardware 3 with the lowest maximum power consumption or the lowest standby power when adding the hardware 3. Therefore, the power consumption can be reduced compared with the prior art.
[0117] Further, the scaling management device 10 is further provided with a hardware control unit 15 that determines, as hardware to be stopped, the hardware 3 with the highest maximum power or the hardware 3 with the highest standby power when the utilization rate of the acquired virtual resources is lower than a predetermined second threshold value.
[0118] By doing so, when stopping the hardware 3, the scaling management device 10 can select the hardware 3 with the highest maximum power consumption or the highest standby power. Therefore, power consumption can be reduced compared to the prior art.
[0119] Note that the present invention is not limited to the embodiments described above, and many modifications are possible by those with ordinary knowledge in the art within the technical idea of the present invention.
Explanation of Reference Numerals
[0120] 1 Scaling management system 3 Hardware (HW) 10 Scaling management device 11 HW characteristic calculation unit 12 Resource setting unit 13 Monitoring unit 14 Scaling control unit 15 HW control unit (hardware control unit) 20 Virtualization infrastructure 21 Resource management unit 22 Virtual resource control unit 111 Power efficiency characteristic calculation unit 112 Performance ratio calculation unit 121 Virtual resource number calculation unit 122 Required resource calculation unit 123 Setting file creation unit
Claims
1. A scaling management device that manages the scaling of virtual resources installed on hardware by means of a virtualization infrastructure, wherein the scaling management device, for each of a plurality of said hardware, calculates the power efficiency characteristics of the hardware by changing the level of utilization of the hardware and measuring the power efficiency, and determines the utilization rate at which the value of the power efficiency is highest among the measured power efficiency values; a power efficiency characteristic calculation unit; measures the performance of each of the hardware by measuring a predetermined metric, identifies the hardware with the lowest performance value, and calculates the performance values of the other hardware as performance ratios when the performance value of the identified hardware is set to 1; a performance ratio calculation unit; for each of the hardware, calculates a score by multiplying the calculated performance ratio by the utilization rate at which the value of the power efficiency is highest in the hardware, and calculates the number of virtual resources to be installed on the hardware according to the ratio of the magnitudes of the scores calculated for each hardware; a virtual resource number calculation unit; based on the performance ratio of the other hardware to the performance value 1 of the hardware with the lowest performance value, when the requested resources for the virtual resources installed on the other hardware are set to 1, sets the requested resources of the hardware with the lowest performance value to the value indicated by the performance ratio to 1, and calculates the requested resources for the virtual resources installed on the hardware with the lowest performance value and the other hardware; a requested resource calculation unit; for each of the hardware, creates a scaling setting file in which the utilization rate at which the value of the power efficiency is highest is set as the scaling target value of the hardware, and creates a resource setting file including the calculated number of virtual resources to be installed on the hardware and the requested resources of the virtual resources installed on the hardware; a setting file creation unit; A scaling management device characterized by comprising the above.
2. a monitoring unit that acquires the utilization rate of the virtual resources installed on the hardware in hardware units; a scaling control unit that determines whether to add or delete the virtual resources by comparing the acquired utilization rate of the virtual resources with the scaling target value indicated in the scaling setting file. The scaling management device according to claim 1, further comprising
3. When the addition of the virtual resource fails, or when the utilization rate of the acquired virtual resource is higher than a predetermined first threshold, a hardware control unit that determines, as the hardware to be added, hardware with low maximum power consumption or hardware with low standby power The scaling management device according to claim 2, further comprising
4. When the utilization rate of the acquired virtual resource is lower than a predetermined second threshold, a hardware control unit that determines, as the hardware to be stopped, the hardware with high maximum power or the hardware with high standby power The scaling management device according to claim 2, further comprising
5. A scaling management method for a scaling management device that manages the scaling of virtual resources mounted on hardware by a virtualization infrastructure, wherein the scaling management device For each of the plurality of pieces of hardware, calculate the power efficiency characteristics of the hardware by changing the level of the utilization rate of the hardware and measuring the power efficiency, and determine the utilization rate at which the value of the power efficiency is the highest among the measured power efficiencies; Measure the performance of each piece of hardware by measuring a predetermined metric, identify the hardware with the lowest performance value, and calculate the performance ratio of the other hardware when the performance value of the identified hardware is set to 1; For each piece of hardware, calculate a score by multiplying the calculated performance ratio by the utilization rate at which the value of the power efficiency is the highest in the hardware, and calculate the number of virtual resources to be mounted on the hardware according to the ratio of the magnitudes of the scores calculated for each piece of hardware; Based on the performance ratio of the other hardware to the performance value 1 of the hardware with the lowest performance value, when the required resources for the virtual resources mounted on the other hardware are set to 1, set the required resources for the hardware with the lowest performance value to the value indicated by the performance ratio to 1, thereby calculating the required resources for the virtual resources mounted on the hardware with the lowest performance value and the other hardware; For each of the hardware, create a scaling setting file that sets the usage rate at which the power efficiency value is highest as the target value for the scaling of the hardware, and create a resource setting file that includes the number of virtual resources installed on the calculated hardware and the required resources of the virtual resources installed on the hardware. A scaling management method characterized by executing the above. **Claim 6** A program for causing a computer to function as the scaling management device according to any one of claims 1 to 4.
Citation Information
Patent Citations
Performance adjustment program and performance adjustment method
JP2019135597A
Auto scale type performance guarantee system and auto scale type performance guarantee method
JP2020123849A
Operational management method for information processing system and information processing system
WO2011030469A1
Management computer and performance degradation sign detection method
WO2017168484A1