Method and device for optimizing utilization rate of cloud resources and storage medium

By evaluating and migrating target services in the cloud resource pool, the low utilization rate problem caused by resource fragmentation in the cloud resource pool is solved, and a higher cloud resource utilization rate is achieved.

CN119946059AActive Publication Date: 2025-05-06CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411987440.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-05-06
Estimated Expiration
2044-12-31

AI Technical Summary

Technical Problem

The resource fragmentation problem in the cloud resource pool caused by the mismatch of business peaks and valleys and resource allocation has led to a low overall resource utilization rate.

Method used

By evaluating the cloud resource utilization of each target server in the target resource pool, migrate the high-utilization target services to the low-utilization target server until the high-utilization server is no load, and the no load server is set to the energy-saving state.

Benefits of technology

Release idle cloud resources to the greatest extent and improve the utilization rate of cloud resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119946059A_ABST
    Figure CN119946059A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of big data, and discloses a method and device for optimizing the utilization rate of cloud resources and a storage medium, and the method comprises the steps: evaluating the utilization rate of target cloud resources included in each target server in a target resource pool according to a preset first period, and based on the result of the utilization rate evaluation, determining the utilization rate of the target cloud resources; and executing the following operations on each first target server and each second target server in the target resource pool: migrating at least one target service running on each first target server to at least one second target server, and running the target service by using a target cloud resource on the second target server, the utilization rate of the target cloud resources in the first target servers is higher than the utilization rate of the target cloud resources in the second target servers, and the at least one unloaded first target server is set to be in an energy-saving state, and the utilization rate of the cloud resources is improved through the method.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of big data technology and provides a method, device and storage medium for optimizing cloud resource utilization. Background Art

[0002] Cloud resource pool usually refers to the collection of storage space and database resources of servers in the cloud computing operating environment. It is a virtual environment that can be automatically adjusted according to specific business needs during implementation. The elastic scaling function of cloud resource pool can help enterprises expand business needs in a very short time to meet current market needs. The benefits of cloud resource pool are that it can provide availability, scalability, reliability and portability.

[0003] However, business peaks and valleys and business resource mismatches will lead to the generation of more resource fragments, and a large number of scattered resource fragments cannot run new businesses, so the overall resource utilization of the cloud resource pool will be low. Summary of the invention

[0004] The embodiments of the present application provide a method, device and storage medium for optimizing cloud resource utilization, so as to improve the utilization of cloud resources.

[0005] The specific technical solutions provided by this application are as follows:

[0006] In a first aspect, an embodiment of the present application provides a method for optimizing cloud resource utilization, including:

[0007] Evaluate utilization of target cloud resources included in each target server in the target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business;

[0008] Based on the utilization evaluation result, the following operations are performed on each first target server and each second target server in the target resource pool: at least one target service running on each first target server is migrated to at least one second target server, and the target service is run using the target cloud resources on the second target server until at least one first target server is unloaded, wherein the utilization rate of the target cloud resources in the first target server is higher than the utilization rate of the target cloud resources in the second target server;

[0009] At least one unloaded first target server is set to an energy-saving state.

[0010] Optionally, before evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first period, the method further includes:

[0011] Based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from each pre-selected server in the matching target resource pool, wherein the resource application request corresponds to the target service one by one;

[0012] Calculating the utilization rate of the cloud resources of each first candidate server according to a preset second period, and determining a plurality of second candidate servers from the plurality of first candidate servers based on the respective utilization rates;

[0013] Calculating the energy efficiency value of each second candidate server respectively, and determining at least one target server from the plurality of second candidate servers based on the energy efficiency value;

[0014] Use the target cloud resources included in the target server to run the target business corresponding to the resource application request.

[0015] Optionally, based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from respective pre-selected servers in a matching target resource pool, including:

[0016] Parse the resource application request issued by the computing device to determine the target resource pool that matches the resource application request and the resource application amount included in the resource application request;

[0017] Comparing respectively whether the available quota of the available resources included in each pre-selected server is greater than the resource application quota, wherein the available quota of the available resources of the pre-selected server is configured with a resource oversale threshold;

[0018] If the available quota is greater than the resource application quota, cloud resources equal to the resource application quota are divided from the available resources, and the divided cloud resources are determined as target cloud resources, and the pre-selected server is determined as the first candidate server that can meet the resource application request.

[0019] Optionally, cloud resources include central processing unit CPU, memory, disk, network and energy efficiency values, and the utilization is determined by:

[0020] Determine the CPU utilization based on a maximum value of the CPU utilization within a preset time unit and an average value of the CPU utilization within a preset time period;

[0021] Determine the memory utilization rate based on a maximum value of the memory utilization rate within a preset time unit and an average value of the memory utilization rate within a preset time period;

[0022] Determine the disk utilization based on a maximum value of the disk utilization within a preset time unit and an average value of the disk utilization within a preset time period;

[0023] Determining the network utilization rate based on a maximum value of the network utilization rate within a preset time unit and an average value of the network utilization rate within a preset time period;

[0024] Determine the energy efficiency value based on the actual power of the first candidate server and the number of CPU cores included in the first candidate server;

[0025] Determine utilization based on CPU utilization, memory utilization, disk utilization, network utilization, and energy efficiency values.

[0026] Optionally, after using the target cloud resources included in the target server to run the target business corresponding to the resource application request, the method further includes:

[0027] Acquire the actual resource amount required by the target business during operation during the first forecast period, determine the quota change rate of the target cloud resources during the first forecast period based on the actual resource amount and the quota of the target cloud resources, and adjust the quota of the target cloud resources based on the quota change rate during the first forecast period, wherein the actual resource amount represents the maximum or minimum value of the quota of the target cloud resources of the target business within the resource oversold threshold range; and / or

[0028] During the second prediction period, if the utilization of the target cloud resources exceeds the utilization alarm threshold, an alarm is issued.

[0029] Optionally, evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to a preset first period includes:

[0030] According to the preset first cycle, the utilization rate of the target cloud resources included in each target server in the target resource pool is obtained respectively:

[0031] Compare the size of each utilization rate with a preset utilization rate threshold;

[0032] A target server corresponding to a utilization rate greater than a preset utilization rate threshold is determined as a first target server, and a target server corresponding to a utilization rate less than the preset utilization rate threshold is determined as a second target server.

[0033] Optionally, migrating at least one target service running on each first target server to at least one second target server, and running the target service using target cloud resources on the second target server until at least one first target server is unloaded, includes:

[0034] Migrating out each target service in the target cloud resources corresponding to at least one target service on each first target server respectively until at least one first target server is unloaded;

[0035] Target cloud resources are divided for each target service from available resources of at least one second target server, and each migrated target service is run using the divided target cloud resources.

[0036] In a second aspect, an embodiment of the present application further provides a device for optimizing cloud resource utilization, including:

[0037] An evaluation unit, configured to evaluate utilization of target cloud resources included in each target server in the target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business;

[0038] a migration unit, configured to perform the following operations on each first target server and each second target server in the target resource pool based on the utilization evaluation result: migrate at least one target service running on each first target server to at least one second target server, and use the target cloud resources on the second target server to run the target service until at least one first target server is unloaded, wherein the utilization rate of the target cloud resources in the first target server is higher than the utilization rate of the target cloud resources in the second target server;

[0039] A setting unit is configured to set at least one unloaded first target server to an energy-saving state.

[0040] Optionally, before evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first period, the method further includes:

[0041] Based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from each pre-selected server in the matching target resource pool, wherein the resource application request corresponds to the target service one by one;

[0042] Calculating the utilization rate of the cloud resources of each first candidate server according to a preset second period, and determining a plurality of second candidate servers from the plurality of first candidate servers based on the respective utilization rates;

[0043] Calculating the energy efficiency value of each second candidate server respectively, and determining at least one target server from the plurality of second candidate servers based on the energy efficiency value;

[0044] Use the target cloud resources included in the target server to run the target business corresponding to the resource application request.

[0045] Optionally, based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from respective pre-selected servers in a matching target resource pool, including:

[0046] Parse the resource application request issued by the computing device to determine the target resource pool that matches the resource application request and the resource application amount included in the resource application request;

[0047] Comparing respectively whether the available quota of the available resources included in each pre-selected server is greater than the resource application quota, wherein the available quota of the available resources of the pre-selected server is configured with a resource oversale threshold;

[0048] If the available quota is greater than the resource application quota, cloud resources equal to the resource application quota are divided from the available resources, and the divided cloud resources are determined as target cloud resources, and the pre-selected server is determined as the first candidate server that can meet the resource application request.

[0049] Optionally, cloud resources include central processing unit CPU, memory, disk, network and energy efficiency values, and the utilization is determined by:

[0050] Determine the CPU utilization based on a maximum value of the CPU utilization within a preset time unit and an average value of the CPU utilization within a preset time period;

[0051] Determine the memory utilization rate based on a maximum value of the memory utilization rate within a preset time unit and an average value of the memory utilization rate within a preset time period;

[0052] Determine the disk utilization based on a maximum value of the disk utilization within a preset time unit and an average value of the disk utilization within a preset time period;

[0053] Determining the network utilization rate based on a maximum value of the network utilization rate within a preset time unit and an average value of the network utilization rate within a preset time period;

[0054] Determine the energy efficiency value based on the actual power of the first candidate server and the number of CPU cores included in the first candidate server;

[0055] Determine utilization based on CPU utilization, memory utilization, disk utilization, network utilization, and energy efficiency values.

[0056] Optionally, after using the target cloud resources included in the target server to run the target business corresponding to the resource application request, the method further includes:

[0057] In the first prediction period, the actual resource quota required by the target business during operation is obtained, wherein the actual resource quota represents the maximum or minimum value of the quota of the target cloud resources of the target business within the resource oversold threshold range;

[0058] Based on the actual resource quota and the quota of the target cloud resource, determine the quota change rate of the target cloud resource in the first prediction period, and adjust the quota of the target cloud resource based on the quota change rate in the second prediction period, wherein the second prediction period is after the first prediction period;

[0059] If the utilization of the target cloud resources exceeds the utilization alarm threshold during the second forecast period, the adjusted quota of the target cloud resources is adjusted again.

[0060] Optionally, the utilization of the target cloud resources included in each target server in the target resource pool is evaluated according to a preset first period, and the evaluation unit is used to:

[0061] According to the preset first cycle, the utilization rate of the target cloud resources included in each target server in the target resource pool is obtained respectively:

[0062] Compare the size of each utilization rate with a preset utilization rate threshold;

[0063] A target server corresponding to a utilization rate greater than a preset utilization rate threshold is determined as a first target server, and a target server corresponding to a utilization rate less than the preset utilization rate threshold is determined as a second target server.

[0064] Optionally, at least one target service running on each first target server is migrated to at least one second target server, and the target service is run using target cloud resources on the second target server until at least one first target server is unloaded, and the migration unit is used to:

[0065] Migrating out each target service in the target cloud resources corresponding to at least one target service on each first target server respectively until at least one first target server is unloaded;

[0066] Target cloud resources are divided for each target service from available resources of at least one second target server, and each migrated target service is run using the divided target cloud resources.

[0067] In a third aspect, a management server includes:

[0068] A memory for storing executable instructions;

[0069] A processor is used to read and execute executable instructions stored in a memory to implement any method as described in the first aspect.

[0070] In a fourth aspect, a computer-readable storage medium is provided. When instructions in the storage medium are executed by a processor, the processor is enabled to execute any method described in the first aspect.

[0071] The beneficial effects of this application are as follows:

[0072] In summary, in an embodiment of the present application, a method, device and storage medium for optimizing cloud resource utilization are provided, the method comprising: evaluating the utilization of target cloud resources included in each target server in a target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business, and based on the result of the utilization evaluation, performing the following operations on each first target server and each second target server in the target resource pool: migrating at least one target business running on each first target server to at least one second target server, and using the target cloud resources on the second target server to run the target business until at least one first target server is unloaded, wherein the utilization of the target cloud resources in the first target server is higher than the utilization of the target cloud resources in the second target server, and setting the unloaded at least one first target server to an energy-saving state. The above method can release idle cloud resources to the greatest extent, greatly improving the utilization of cloud resources.

[0073] Other features and advantages of the present application will be described in the following description, and partly become apparent from the description, or be understood by practicing the present application. The purpose and other advantages of the present application can be realized and obtained by the structures specifically pointed out in the written description, claims, and drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0074] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0075] Figure 1 A schematic diagram of a system architecture for optimizing cloud resource utilization in an embodiment of the present application;

[0076] Figure 2 A schematic diagram of a process for optimizing cloud resource utilization in an embodiment of the present application;

[0077] Figure 3 A schematic diagram of a process for determining a target server in an embodiment of the present application;

[0078] Figure 4 A schematic diagram of a process for determining a first candidate server in an embodiment of the present application;

[0079] Figure 5 A schematic diagram of a process for adjusting the quota of target cloud resources in an embodiment of the present application;

[0080] Figure 6 A schematic diagram of a process for evaluating the utilization rate of target cloud resources in an embodiment of the present application;

[0081] Figure 7 A schematic diagram of a process for migrating a target service in an embodiment of the present application;

[0082] Figure 8 A schematic diagram of the logical architecture of a device for optimizing cloud resource utilization according to an embodiment of the present application;

[0083] Fig. 9 This is a schematic diagram of the physical architecture of a management server in an embodiment of the present application. DETAILED DESCRIPTION

[0084] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the technical solution of the present application, rather than all of the embodiments. Based on the embodiments recorded in the application documents, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the technical solution of the present application.

[0085] The terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented using sequences other than those illustrated or described herein.

[0086] The preferred implementation modes of the present application are described in detail below with reference to the accompanying drawings.

[0087] See also Figure 1 As shown, in the embodiment of the present application, the system includes at least one management server and a target resource pool. Figure 1 In the target resource pool, multiple servers are usually included in the target resource pool. The CPU, memory, disk, network and energy efficiency values ​​of each server are collectively referred to as resources. When a target business applies for resources from the target resource pool, the management server can allocate them according to the distribution of available resources on the server, thereby enabling the target business to run.

[0088] In an embodiment of the present application, a method for optimizing cloud resource utilization is implemented, which is mainly performed on the management server side and is described in detail below.

[0089] See also Figure 2 As shown, in the embodiment of the present application, a specific process for optimizing cloud resource utilization is as follows:

[0090] Step 201: Evaluate the utilization of target cloud resources included in each target server in a target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business.

[0091] Considering that there are many target servers in the target resource pool, the target cloud resources included in each target server are also different, and in order to facilitate the statistical utilization, the target cloud resources running at least one target business are usually used as monitoring objects. During the implementation process, the utilization of the target cloud resources will be periodically evaluated. For example, the utilization of the target cloud resources included in each target server is evaluated according to a preset first period.

[0092] It is necessary to add that, see Figure 3 As shown, before evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first cycle, the method further includes:

[0093] Step 101: Based on a resource application request issued by a computing device, multiple first candidate servers that can satisfy the resource application request are determined from various pre-selected servers in a matching target resource pool, wherein the resource application request corresponds to the target service one-to-one.

[0094] During the implementation process, when the computing device wants to run the target business, it will generate a resource application request and send the resource application request to the management server, so that the management server can allocate resources to the target business according to the resource application request. After receiving the above resource application request, the management server will first find a matching resource pool from multiple resource pools according to the resource application request, that is, the target resource pool. The matching process of the resource pool will not be repeated here.

[0095] After the target resource pool is determined, it is necessary to select multiple first candidate servers from the multiple pre-selected servers included in the target resource pool, that is, to determine the resource conditions included in the multiple pre-selected servers included in the target resource pool, see Figure 4 As shown, including:

[0096] Step 1011: Parse the resource application request sent by the computing device to determine the target resource pool that matches the resource application request and the resource application quota included in the resource application request.

[0097] During the implementation process, in order to determine which resource pool is the target resource pool and to determine the amount of resources required for the target business represented by the resource application request, after receiving the resource application request issued by the computing device, the resource application request is first parsed, and then the target resource pool that matches the resource application request is determined based on the nature of the required resources after the parsing, that is, from which resource pool should resources be allocated to the target business.

[0098] After the target resource pool is determined, the resource application amount included in the resource application request is determined based on the parsed required resource amount.

[0099] Step 1012: Compare respectively whether the available quota of the available resources included in each pre-selected server is greater than the resource application quota, wherein the available quota of the available resources of the pre-selected server is configured with a resource oversold threshold.

[0100] Considering that the available quota of available resources of the pre-selected servers is configured with a resource overselling threshold, that is, when the business resource configuration and resource consumption peaks and valleys are too large, the amount of CPU resources virtually allocated by the resource overselling strategy will be twice or more than the actual CPU resources. During the implementation process, first determine the available quota of available resources included in each pre-selected server in the target resource pool, and then compare whether the available quota of available resources included in each pre-selected server is greater than the resource application quota, that is, determine one by one whether the resources on each pre-selected server can meet the usage requirements of the target business.

[0101] Step 1013: If the available quota is greater than the resource application quota, cloud resources equal to the resource application quota are divided from the available resources, and the divided cloud resources are determined as target cloud resources, and the pre-selected server is determined as the first backup server that can meet the resource application request.

[0102] During the implementation process, if the resources included in the pre-selected server are greater than (including equal to) the above-mentioned resource application request, it means that the available amount of available resources in the pre-selected server can meet the operation requirements of the target business, that is, cloud resources equal to the resource application amount are divided from the available resources for use by the target business, and the divided cloud resources running the target business are determined as the target cloud resources, and the pre-selected server is determined as the first alternative server that can meet the resource application request.

[0103] If the resources included in the pre-selected server are less than the resource application request, it means that the available amount of available resources in the pre-selected server cannot meet the target business operation requirements, so the pre-selected server will not be determined as the first candidate server that can meet the resource application request, that is, the pre-selected server will be eliminated. Further, multiple first candidate servers are screened out from the target resource pool through the above method.

[0104] Step 102: Calculate the utilization rate of the cloud resources of each first candidate server respectively according to a preset second period, and determine a plurality of second candidate servers from the plurality of first candidate servers based on the respective utilization rates.

[0105] First of all, it should be explained that the preset time interval setting of the second cycle here can be the same as the time interval setting of the first cycle mentioned above, or it can be different from the time interval setting of the first cycle mentioned above. That is, in the process of allocating target cloud resources to target services, the utilization of cloud resources calculated with the same time interval as the first cycle in the monitoring process can be used, or the utilization of cloud resources calculated with a time interval different from the first cycle in the monitoring process can be used. Among them, the calculation process of cloud resource utilization is the same.

[0106] During the implementation process, after determining multiple first candidate servers, the multiple first candidate servers will be further screened according to the utilization of cloud resources to obtain multiple second candidate servers. For example, the utilization of cloud resources of each first candidate server is calculated according to the preset second period, and the server with lower utilization of cloud resources indicates that the server can provide more available cloud resources. That is, a better server is further determined by green evaluation, for example, only the first candidate servers with cloud resource utilization below 60% are screened as second candidate servers.

[0107] The following is a detailed calculation process of the utilization of the above cloud resources. Cloud resources include central processing unit CPU, memory, disk, network and energy efficiency value. The utilization is determined by the following method:

[0108] During the implementation process, a preset unit time (eg, one day) and a preset time period (eg, one month) are first set.

[0109] (1) The CPU utilization is determined based on a maximum value of the CPU utilization within a preset time unit and an average value of the CPU utilization within a preset time period.

[0110] For the CPU indicator, the CPU utilization rate within n preset time units will be obtained first. And from the above utilization Filter out the maximum value Then, the first average value Umax is calculated according to formula (1).

[0111]

[0112] For the CPU indicator, the CPU utilization rate within the preset time period is also obtained. Then, the second average value U is calculated according to formula (2): avg .

[0113]

[0114] The first average value U max and the second mean value Uavg The CPU utilization can be determined by comparing them with preset thresholds.

[0115] (2) Determine the memory utilization based on a maximum value of the memory utilization within a preset time unit and an average value of the memory utilization within a preset time period.

[0116] For the memory indicator, we first obtain the memory utilization within n preset time units. And from the above utilization Filter out the maximum value Then, the third average value Umax is calculated according to the above formula (1).

[0117] For the memory indicator, the memory utilization rate within the preset time period is also obtained. Then, the fourth average value U is calculated according to the above formula (2): avg .

[0118] The third average value U max and the fourth mean value U avg The memory utilization can be determined by comparing them with preset thresholds.

[0119] (3) The disk utilization is determined based on a maximum value of the disk utilization within a preset time unit and an average value of the disk utilization within a preset time period.

[0120] For the disk indicator, the disk utilization rate within n preset time units will be obtained first. And from the above utilization Filter out the maximum value Then, the fifth average value Umax is calculated according to the above formula (1).

[0121] For the disk indicator, the disk utilization rate within the preset time period is also obtained. Then, the sixth average value U is calculated according to the above formula (2): avg .

[0122] The fifth average value U max and the sixth mean value U avg The disk utilization can be determined by comparing them with preset thresholds.

[0123] It should be noted that the above disk utilization includes the reading and / or writing operations on the disk.

[0124] (4) Determine the network utilization based on a maximum value of the network utilization within a preset time unit and an average value of the network utilization within a preset time period.

[0125] For the network indicator, we first obtain the network utilization of the disk within n preset time units. And from the above utilization Filter out the maximum value Then, the seventh average value Umax is calculated according to the above formula (1).

[0126] For the network indicator, the network utilization rate within the preset time period is also obtained. Then, according to the above formula (2), the eighth average value U is calculated: avg .

[0127] The seventh average value U max and the eighth mean value U avg The data can be compared with the preset thresholds to determine the network utilization.

[0128] It should be noted that the utilization rate of the above network includes uplink data transmission and downlink data transmission on the network.

[0129] (5) Determine an energy efficiency value based on the actual power of the first candidate server and the number of CPU cores included in the first candidate server.

[0130] During the calculation process, the actual power u of the first candidate server is obtained respectively t and the number of CPU cores P included in the first candidate server t , and then determine the energy efficiency value according to formula (3).

[0131]

[0132] (6) Determine utilization based on CPU utilization, memory utilization, disk utilization, network utilization, and energy efficiency values.

[0133] During the calculation process, after obtaining the above-mentioned CPU utilization, memory utilization, disk utilization, network utilization and energy efficiency values, the CPU utilization, memory utilization, disk utilization, network utilization and energy efficiency values ​​are further normalized, and finally the normalized values ​​are summed to obtain the final utilization.

[0134] That is, during the implementation process, a group of servers, namely, a plurality of second candidate servers, are first determined from the first candidate servers according to the green evaluation result of the utilization rate.

[0135] Step 103: Calculate the energy efficiency value of each second candidate server respectively, and determine at least one target server from the multiple second candidate servers based on the energy efficiency value.

[0136] During the implementation process, in order to better improve the utilization rate of cloud resources, after determining multiple second candidate servers, the energy efficiency value of each second candidate server is calculated respectively. Here, the calculation of the energy efficiency value of the second candidate server can be achieved by the above formula (3).

[0137] After obtaining the energy efficiency values ​​of each second candidate server, at least one target server is determined from the multiple second candidate servers in order of energy efficiency values ​​from high to low. It should be supplemented that the specific number of target servers here needs to be determined based on the amount of available resources required for the resource application request. For example, when there are three second candidate servers, the resources on any one of the second candidate servers can meet the requirements of the resource application request. In this case, the second candidate server with the highest energy efficiency value can be selected. For another example, when there are two second candidate servers, the resources on any one of the second candidate servers cannot meet the requirements of the resource application request. In this case, the above two second candidate servers need to provide cloud resources, and the above two second candidate servers must be determined as target servers.

[0138] Step 104: Use the target cloud resources included in the target server to run the target business corresponding to the resource application request.

[0139] During the implementation process, after the target server is determined and the target cloud resources are allocated to the target business corresponding to the resource application request using the available resources on the target server, the target cloud resources can be used to run the target business.

[0140] However, considering that with the actual operation of the target business, the target cloud resources allocated for the resource application request may become incompatible, it is necessary to monitor the running target business in real time.

[0141] See also Figure 5 As shown, after using the target cloud resources included in the target server to run the target business corresponding to the resource application request, it also includes:

[0142] Step 105: obtaining the actual resource amount required by the target business during operation within the first forecast period, determining the quota change rate of the target cloud resources within the first forecast period based on the actual resource amount and the quota of the target cloud resources, and adjusting the quota of the target cloud resources within the first forecast period based on the quota change rate, wherein the actual resource amount represents the maximum or minimum value of the quota of the target cloud resources of the target business within the resource oversold threshold range; and / or

[0143] During the specific implementation process, a periodic first forecast period (for example, one month) is pre-set, and the actual amount of resources required by the target business during operation is obtained during the first forecast period, that is, the maximum or minimum amount of target cloud resources within the resource oversold threshold range for the target business in the above-mentioned first forecast period is obtained.

[0144] After obtaining the actual resource quota, the quota difference between the actual resource quota and the quota of the target cloud resource is calculated, and the quota change rate of the above quota difference within the first prediction period is obtained. The above quota change rate represents the floating range of the target cloud resources required by the target business.

[0145] In order to make the quota of target cloud resources corresponding to the target business more accurate, the quota of target cloud resources will be adjusted according to the quota change rate during the implementation process, that is, the quota of target cloud resources will be increased according to the increasing quota change rate, or the quota of target cloud resources will be reduced accordingly according to the decreasing quota change rate.

[0146] Step 106: During the second prediction period, if the utilization of the target cloud resources exceeds the utilization alarm threshold, an alarm is issued.

[0147] At the same time, considering that there are a large number of target businesses running simultaneously in the target resource pool, in order to achieve comprehensive monitoring of the target businesses, a periodic second prediction period can be pre-set. During the second prediction period, after obtaining the utilization of the target cloud resources, the utilization of each target cloud resource is compared with the utilization alarm threshold, and when the utilization of the target cloud resource exceeds the utilization alarm threshold, an alarm is issued to prompt the management server to handle it in time, for example, adding resources to the corresponding target server.

[0148] Step 202: Based on the result of the utilization evaluation, the following operations are performed on each first target server and each second target server in the target resource pool: at least one target business running on each first target server is migrated to at least one second target server, and the target business is run using the target cloud resources on the second target server until at least one first target server is unloaded, wherein the utilization rate of the target cloud resources in the first target server is higher than the utilization rate of the target cloud resources in the second target server.

[0149] Considering that there are a large number of target servers running target services simultaneously in the target resource pool, in order to improve the utilization of the target servers, that is, to use fewer servers as much as possible to complete more target services, the embodiment of the present application will perform an overall evaluation of the target servers that are already running target services.

[0150] The above evaluation of the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first cycle is as follows: Figure 6 As shown, including:

[0151] Step 2011: Obtain the utilization rate of the target cloud resources included in each target server in the target resource pool according to the preset first cycle.

[0152] During the implementation process, a first cycle is pre-set to cyclically calculate the utilization of the target cloud resources, that is, each target server included in the target resource pool is first determined, and then the utilization of the target cloud resources included in each target server is calculated according to the first cycle. It should be noted that the calculation process of the utilization of the target cloud resources is the same as above and will not be repeated here.

[0153] Step 2012: Compare each utilization rate with a preset utilization rate threshold.

[0154] During implementation, after multiple utilizations are calculated, each utilization is compared with a preset utilization threshold. The preset utilization threshold is usually an empirical value determined based on historical experience values ​​and used to distinguish the utilization status of the target server.

[0155] Step 2013: Determine the target server corresponding to the utilization rate greater than the preset utilization rate threshold as the first target server, and determine the target server corresponding to the utilization rate less than the preset utilization rate threshold as the second target server.

[0156] During the implementation, after comparing the size between each utilization rate and the preset utilization rate threshold, the target server corresponding to the utilization rate greater than the preset utilization rate threshold is determined as the first target server, and the target server corresponding to the utilization rate less than the preset utilization rate threshold is determined as the second target server. Exemplarily, the preset utilization rate threshold is 5, and the target server with a utilization rate greater than 5 (for example, a utilization rate of 6 to 8) is determined as the first target server, and the utilization rate of the first target server is relatively high, and there are fewer idle resources; the target server with a utilization rate less than 5 (for example, a utilization rate of 1 to 4) is determined as the second target server, and the utilization rate of the second target server is relatively low, and there are more idle resources.

[0157] The above-mentioned migration of at least one target service running on each first target server to at least one second target server, and using the target cloud resources on the second target server to run the target service until at least one first target server is unloaded, see Figure 7 As shown, including:

[0158] Step 2021: Migrate out each target service in the target cloud resources corresponding to at least one target service on each first target server respectively until at least one first target server is unloaded.

[0159] After determining multiple first target servers with high utilization rates, in order to release more first target servers, during the implementation process, the target cloud resources corresponding to the target services on the first target servers are first determined, and then each target service in the target cloud resources is migrated out. The above migration operation will make multiple first target servers unloaded.

[0160] It should be noted that when the target business migrated from the first target server cannot find matching target cloud resources in the second target server, the above migration operation is canceled. That is, in this case, the target business on the first target server is kept running. Obviously, in this case, the first target server cannot be idle.

[0161] Step 2022: Divide target cloud resources for each target business from available resources of at least one second target server, and use the divided target cloud resources to run each migrated target business.

[0162] Taking into account that the second target server has more available resources, in order to enable the above-mentioned migrated target businesses to continue running, for each target business, target cloud resources are allocated for the migrated target business from the available resources of the second target server. The newly allocated target cloud resources need to meet the resource usage quota of the target business, and then the newly allocated target cloud resources are used to run the migrated target business.

[0163] Step 203: Setting at least one unloaded first target server to an energy-saving state.

[0164] During the implementation process, in order to further optimize the utilization of cloud resources, the first target servers without target services running are set to energy-saving state, that is, each first target server that is already in an idle state is set to standby or shut down. During the implementation process, each first target server can be set to standby first, and after a period of time, if it is determined that the first target server is still idle, the first target server is set to shut down.

[0165] Based on the same inventive concept, refer to Figure 8 As shown, an embodiment of the present application provides a device for optimizing cloud resource utilization, including:

[0166] An evaluation unit 801 is used to evaluate the utilization of target cloud resources included in each target server in the target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business;

[0167] The migration unit 802 is used to perform the following operations on each first target server and each second target server in the target resource pool based on the utilization evaluation result: migrate at least one target business running on each first target server to at least one second target server, and use the target cloud resources on the second target server to run the target business until at least one first target server is unloaded, wherein the utilization rate of the target cloud resources in the first target server is higher than the utilization rate of the target cloud resources in the second target server;

[0168] The setting unit 803 is configured to set at least one unloaded first target server to an energy-saving state.

[0169] Optionally, before evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first period, the method further includes:

[0170] Based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from each pre-selected server in the matching target resource pool, wherein the resource application request corresponds to the target service one by one;

[0171] Calculating the utilization rate of the cloud resources of each first candidate server according to a preset second period, and determining a plurality of second candidate servers from the plurality of first candidate servers based on the respective utilization rates;

[0172] Calculating the energy efficiency value of each second candidate server respectively, and determining at least one target server from the plurality of second candidate servers based on the energy efficiency value;

[0173] Use the target cloud resources included in the target server to run the target business corresponding to the resource application request.

[0174] Optionally, based on the resource application request sent by the computing device, a plurality of first candidate servers that can satisfy the resource application request are determined from respective pre-selected servers in a matching target resource pool, including:

[0175] Parse the resource application request issued by the computing device to determine the target resource pool that matches the resource application request and the resource application amount included in the resource application request;

[0176] Comparing respectively whether the available quota of the available resources included in each pre-selected server is greater than the resource application quota, wherein the available quota of the available resources of the pre-selected server is configured with a resource oversale threshold;

[0177] If the available quota is greater than the resource application quota, cloud resources equal to the resource application quota are divided from the available resources, and the divided cloud resources are determined as target cloud resources, and the pre-selected server is determined as the first candidate server that can meet the resource application request.

[0178] Optionally, cloud resources include central processing unit CPU, memory, disk, network and energy efficiency values, and the utilization is determined by:

[0179] Determine the CPU utilization based on a maximum value of the CPU utilization within a preset time unit and an average value of the CPU utilization within a preset time period;

[0180] Determine the memory utilization rate based on a maximum value of the memory utilization rate within a preset time unit and an average value of the memory utilization rate within a preset time period;

[0181] Determine the disk utilization based on a maximum value of the disk utilization within a preset time unit and an average value of the disk utilization within a preset time period;

[0182] Determining the network utilization rate based on a maximum value of the network utilization rate within a preset time unit and an average value of the network utilization rate within a preset time period;

[0183] Determine the energy efficiency value based on the actual power of the first candidate server and the number of CPU cores included in the first candidate server;

[0184] Determine utilization based on CPU utilization, memory utilization, disk utilization, network utilization, and energy efficiency values.

[0185] Optionally, after using the target cloud resources included in the target server to run the target business corresponding to the resource application request, the method further includes:

[0186] Acquire the actual resource amount required by the target business during operation during the first forecast period, determine the quota change rate of the target cloud resources during the first forecast period based on the actual resource amount and the quota of the target cloud resources, and adjust the quota of the target cloud resources based on the quota change rate during the first forecast period, wherein the actual resource amount represents the maximum or minimum value of the quota of the target cloud resources of the target business within the resource oversold threshold range; and / or

[0187] During the second prediction period, if the utilization of the target cloud resources exceeds the utilization alarm threshold, an alarm is issued.

[0188] Optionally, the utilization of the target cloud resources included in each target server in the target resource pool is evaluated according to a preset first period, and the evaluation unit 801 is used to:

[0189] According to the preset first cycle, the utilization rate of the target cloud resources included in each target server in the target resource pool is obtained respectively:

[0190] Compare the size of each utilization rate with a preset utilization rate threshold;

[0191] A target server corresponding to a utilization rate greater than a preset utilization rate threshold is determined as a first target server, and a target server corresponding to a utilization rate less than the preset utilization rate threshold is determined as a second target server.

[0192] Optionally, at least one target service running on each first target server is migrated to at least one second target server, and the target service is run using the target cloud resources on the second target server until at least one first target server is unloaded, and the migration unit 802 is used to:

[0193] Migrating out each target service in the target cloud resources corresponding to at least one target service on each first target server respectively until at least one first target server is unloaded;

[0194] Target cloud resources are divided for each target service from available resources of at least one second target server, and each migrated target service is run using the divided target cloud resources.

[0195] Based on the same inventive concept, refer to Fig. 9 As shown, an embodiment of the present application provides a management server, including: a memory 901, used to store executable instructions; a processor 902, used to read and execute the executable instructions stored in the memory, and execute any one of the methods of the first aspect above.

[0196] Based on the same inventive concept, an embodiment of the present application provides a computer-readable storage medium. When instructions in the storage medium are executed by a processor, the processor is enabled to execute the method described in any one of the first aspects above.

[0197] In summary, in an embodiment of the present application, a method, device and storage medium for optimizing cloud resource utilization are provided, the method comprising: evaluating the utilization of target cloud resources included in each target server in a target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business, and based on the result of the utilization evaluation, performing the following operations on each first target server and each second target server in the target resource pool: migrating at least one target business running on each first target server to at least one second target server, and using the target cloud resources on the second target server to run the target business until at least one first target server is unloaded, wherein the utilization of the target cloud resources in the first target server is higher than the utilization of the target cloud resources in the second target server, and setting the unloaded at least one first target server to an energy-saving state. The above method can release idle cloud resources to the greatest extent, greatly improving the utilization of cloud resources.

[0198] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program product systems. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product system implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0199] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program product systems according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0200] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0201] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0202] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A method for optimizing cloud resource utilization, characterized in that: The method comprises: Evaluate the utilization of target cloud resources included in each target server in the target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business; Based on the utilization evaluation result, performing the following operations on each first target server and each second target server in the target resource pool: migrating at least one of the target services running on each of the first target servers to at least one of the second target servers, and using the target cloud resources on the second target servers to run the target services until at least one of the first target servers is unloaded, wherein the utilization of the target cloud resources in the first target servers is higher than the utilization of the target cloud resources in the second target servers; At least one of the first target servers that is unloaded is set to an energy-saving state.

2. The method according to claim 1, characterized in that Before evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first period, the method further includes: Based on the resource application request issued by the computing device, determine a plurality of first candidate servers that can satisfy the resource application request from the pre-selected servers of the matching target resource pool, wherein the resource application request corresponds to the target service one by one; Calculating the utilization rate of the cloud resources of each of the first candidate servers respectively according to a preset second period, and determining a plurality of second candidate servers from the plurality of first candidate servers based on the respective utilization rates; Calculating the energy efficiency value of each of the second candidate servers respectively, and determining at least one of the target servers from the plurality of the second candidate servers based on the energy efficiency value; The target cloud resources included in the target server are used to run the target business corresponding to the resource application request.

3. The method according to claim 2, characterized in that The method of determining, based on the resource application request issued by the computing device, a plurality of first candidate servers that can satisfy the resource application request from the pre-selected servers of the matching target resource pool comprises: Parsing the resource application request issued by the computing device to determine the target resource pool matching the resource application request and the resource application amount included in the resource application request; Comparing respectively whether the available amount of the available resources included in each of the pre-selected servers is greater than the resource application amount, wherein the available amount of the available resources of the pre-selected servers is configured with a resource oversold threshold; If the available quota is greater than the resource application quota, cloud resources equal to the resource application quota are divided from the available resources, and the divided cloud resources are determined as the target cloud resources, and the pre-selected server is determined as the first alternative server that can meet the resource application request.

4. The method according to claim 2, characterized in that The cloud resources include central processing unit CPU, memory, disk, network and energy efficiency value, and the utilization rate is determined by the following method: Determine the CPU utilization based on a maximum value of the CPU utilization within a preset time unit and an average value of the CPU utilization within a preset time period; Determining memory utilization based on a maximum value of memory utilization within a preset time unit and an average value of memory utilization within a preset time period; Determine the disk utilization based on a maximum utilization of the disk within a preset time unit and an average utilization of the disk within a preset time period; Determining the network utilization based on a maximum value of the network utilization within a preset time unit and an average value of the network utilization within a preset time period; Determining the energy efficiency value based on the actual power of the first candidate server and the number of cores of the CPU included in the first candidate server; The utilization is determined based on the CPU utilization, the memory utilization, the disk utilization, the network utilization, and the energy efficiency value.

5. The method according to claim 2, characterized in that After the target cloud resource included in the target server is used to run the target business corresponding to the resource application request, the method further includes: Acquire the actual amount of resources required by the target business during operation during the first forecast period, determine the rate of change of the amount of the target cloud resources during the first forecast period based on the actual amount of resources and the amount of the target cloud resources, and adjust the amount of the target cloud resources based on the rate of change of the amount during the first forecast period, wherein the actual amount of resources represents the maximum or minimum value of the amount of the target cloud resources of the target business within the resource oversold threshold range; and / or During the second prediction period, if the utilization of the adjusted target cloud resources exceeds a utilization alarm threshold, an alarm is issued.

6. The method according to claim 1, characterized in that The evaluating the utilization of the target cloud resources included in each target server in the target resource pool according to the preset first period includes: Obtain the utilization rate of the target cloud resources included in each of the target servers in the target resource pool according to the preset first cycle: Comparing the utilization rates with a preset utilization rate threshold; The target server corresponding to the utilization rate greater than the preset utilization rate threshold is determined as the first target server, and the target server corresponding to the utilization rate less than the preset utilization rate threshold is determined as the second target server.

7. The method according to any one of claims 1 to 6, characterized in that: The migrating at least one of the target services running on each of the first target servers to at least one of the second target servers, and running the target services using the target cloud resources on the second target servers until at least one of the first target servers is unloaded, includes: Migrating out each of the target services in the target cloud resources corresponding to at least one of the target services on each of the first target servers respectively until at least one of the first target servers is unloaded; Target cloud resources are divided for each of the target services from the available resources of at least one of the second target servers, and each of the migrated target services is run using the divided target cloud resources.

8. A device for optimizing cloud resource utilization, characterized in that: include: An evaluation unit, configured to evaluate the utilization of target cloud resources included in each target server in the target resource pool according to a preset first period, wherein the target cloud resources are used to run at least one target business; a migration unit, configured to perform the following operations on each first target server and each second target server in the target resource pool based on a utilization evaluation result: migrate at least one target service running on each first target server to at least one second target server, and use the target cloud resources on the second target server to run the target service until at least one first target server is unloaded, wherein the utilization rate of the target cloud resources in the first target server is higher than the utilization rate of the target cloud resources in the second target server; A setting unit is configured to set at least one of the first target servers which is unloaded to an energy-saving state.

9. A management server, characterized in that: include: A memory for storing executable instructions; A processor, configured to read and execute the executable instructions stored in the memory to implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: When the instructions in the storage medium are executed by a processor, the processor is enabled to execute the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Method and system for distributing cloud computing resources

    CN103164279A

  • Edge cloud resource collaborative scheduling method, cloud management platform and edge cloud node

    CN114721810A

  • Cloud resource management method and device, storage medium and electronic equipment

    CN115118731A

  • Method and device for determining resource utilization rate and computer equipment

    CN117221250A

  • Multi-cloud platform resource management method and device, equipment and storage medium

    CN118748677A