WO2024022443A1 - 一种资源弹性伸缩方法、装置及设备 - Google Patents
一种资源弹性伸缩方法、装置及设备 Download PDFInfo
- Publication number
- WO2024022443A1 WO2024022443A1 PCT/CN2023/109593 CN2023109593W WO2024022443A1 WO 2024022443 A1 WO2024022443 A1 WO 2024022443A1 CN 2023109593 W CN2023109593 W CN 2023109593W WO 2024022443 A1 WO2024022443 A1 WO 2024022443A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- resource
- load information
- condition
- met
- expansion
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 69
- 230000009467 reduction Effects 0.000 claims description 54
- 230000015654 memory Effects 0.000 claims description 28
- 230000008859 change Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000008602 contraction Effects 0.000 description 10
- 230000007423 decrease Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 239000002699 waste material Substances 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 4
- 238000005129 volume perturbation calorimetry Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
Definitions
- the present application relates to the field of computer technology, and in particular, to a resource elastic expansion method, device and equipment.
- AS auto scaling
- Embodiments of the present application provide a resource elastic expansion method, device and equipment, which are used to realize automatic expansion or contraction of resources, and help avoid the delay problem of resource expansion and contraction.
- embodiments of the present application provide a resource elastic scaling method, which includes: obtaining first load information and second load information.
- the first load information represents the current actual load information
- the second load information is for users.
- Load information for estimating future load determining whether to expand the resource or whether to shrink the resource according to the first load information and the second load information.
- control node can determine the current actual load condition based on the acquired first load information, and can also estimate the load condition in a future period of time based on the second load information, so as to determine the current actual load condition and the expected load condition based on the second load information. load conditions in the future to determine whether resources need to be expanded or reduced.
- the above solution can be combined with the predicted load status to determine whether the resource needs to be expanded or reduced, making the system's available resources closer to the actual needs and reducing the cost due to Delay caused by elastic scaling strategy.
- the determining whether to expand or shrink resources according to the first load information and the second load information includes: determining whether the first load information satisfies the requirements of A resource expansion condition or a first resource reduction condition; determining whether the second resource expansion condition or the second resource reduction condition is satisfied according to the second load information; if the first resource expansion condition is satisfied and the third resource expansion condition is not satisfied. If the second resource scaling condition is met, or the second resource scaling condition is met and the first resource scaling condition is not met, then it is determined to expand the resource; if the first resource scaling condition is met and the third resource scaling condition is not met, If the second resource expansion condition is met, or the second resource reduction condition is met but the first resource expansion condition is not met, it is determined to reduce the resource capacity.
- both the first resource expansion condition and the second resource reduction condition are met, it means that although the current actual load is heavy, the load is predicted to decrease significantly in the future, and the control node can determine that it is not necessary to expand the resource to avoid After the resource capacity is expanded but the business volume decreases, the resource utilization rate drops significantly, resulting in a waste of resources. If both the first resource shrinkage condition and the second resource expansion condition are met, it means that although the current actual load is light, the load is predicted to increase significantly in the future, then the control node can determine that it is not necessary to shrink the resource to avoid After the resource is scaled down, the business volume increases, resulting in a heavier load and affecting the quality of business services.
- the method further includes: if it is determined according to the first load information that the first resource expansion condition is met, determining a first expansion step size according to the first load information; if according to the second load The information determines that the second resource expansion condition is met, and the second expansion step is determined according to the second load information; the resource is expanded according to the larger step of the first expansion step and the second expansion step; or, If it is determined based on the first load information that the first resource scaling condition is met, determine the first scaling step size based on the first load information; if Determine that the second resource shrinking condition is met based on the second load information, determine the second shrinking step size based on the second load information, and determine the second shrinking step size based on the larger of the first shrinking step size and the second shrinking step size.
- the control node can determine the first step size based on the larger of the first step size and the second step size. Expand resources in steps to better meet user needs.
- the second load information includes a change rate of used resources within a preset period, and/or a change rate of business volume within a preset period.
- the second load information includes historical load information for the same period.
- the method further includes: obtaining configuration information of scalable nodes from different resource pools, where the configuration information of nodes in different resource pools is different; when determining to expand the resource, based on the required The resources to be expanded and the configuration information of each scalable node are used to determine the nodes to be expanded.
- the method further includes: obtaining configuration information of currently used nodes; when determining to scale down resources, based on the resources that need to be scaled down and the configuration information of each currently used node , determine the node to be reduced.
- obtaining configuration information of currently used nodes when determining to scale down resources, based on the resources that need to be scaled down and the configuration information of each currently used node , determine the node to be reduced.
- embodiments of the present application provide a resource elastic scaling device, including: an acquisition module, configured to acquire first load information and second load information, where the first load information is used to represent the current actual load information, so The second load information is load information used to estimate the current or future load; the decision-making module is used to determine whether to expand or shrink the resource based on the first load information and the second load information.
- the decision-making module is specifically configured to: determine whether the first resource expansion condition or the first resource reduction condition is satisfied according to the first load information; determine whether the first resource expansion condition or the first resource contraction condition is satisfied according to the second load information.
- the second resource expansion condition or the second resource reduction condition if the first resource expansion condition is met and the second resource reduction condition is not met, or the second resource expansion condition is met but the first resource reduction condition is not met, If the resource shrinking condition is met, it is determined to expand the resource; if the first resource shrinking condition is met and the second resource scaling condition is not met, or the second resource shrinking condition is met but the first resource scaling condition is not met. If the resource expansion conditions are met, it is determined to reduce the resource capacity.
- the decision-making module is further configured to: if it is determined that the first resource expansion condition is met according to the first load information, determine the first expansion step size according to the first load information; The second load information determines that the second resource expansion condition is met, and the second expansion step is determined according to the second load information; the resource is expanded according to the larger step of the first expansion step and the second expansion step; Or, if it is determined that the first resource scaling condition is met based on the first load information, the first scaling step size is determined based on the first load information; if it is determined that the second resource scaling condition is met based on the second load information, based on The second load information determines the second shrinkage step size; the resource is scaled down according to the larger step size of the first shrinkage step size and the second shrinkage step size.
- the second load information includes a change rate of used resources within a preset period, and/or a change rate of business volume within a preset period.
- the second load information includes historical load information for the same period.
- the acquisition module is also used to obtain the configuration information of scalable nodes from different resource pools, and the configuration information of nodes in different resource pools is different;
- the decision-making module is also used to: When determining to expand resources, determine the nodes to be expanded based on the resources that need to be expanded and the configuration information of each scalable node.
- the acquisition module is also used to obtain the configuration information of the currently used node; the decision-making module is also used to: when determining to reduce the resource size, based on the resources required to be reduced and the The configuration information of each currently used node determines the node to be scaled down.
- inventions of the present application provide a computer device.
- the computer device includes a memory and a processor; the memory stores a computer program; the processor is used to call the computer program stored in the memory to execute the following: The method described in the first aspect and any implementation of the first aspect.
- embodiments of the present application provide a resource elastic scaling system, including the resource elastic scaling device described in the second aspect and any implementation manner of the second aspect, and a plurality of nodes that provide resources.
- embodiments of the present application provide a computer-readable storage medium. Instructions are stored in the computer-readable storage medium. When the instructions are run on a computer, they cause the computer to execute the steps as described in the first aspect and the third aspect. On the one hand, any of the methods described in the implementation.
- embodiments of the present application provide a computing device cluster, including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is used to execute the memory of the at least one computing device. Zhongcun stored instructions, so that the computing device cluster executes the first aspect and the method described in any one of the first aspect.
- embodiments of the present application provide a computer program product containing instructions.
- the computing device cluster causes the computing device cluster to execute the method described in any one of the first aspect and the first aspect. method.
- embodiments of the present application provide a computer program product containing instructions that, when run on a computer, cause the method described in the first aspect and any implementation manner of the first aspect to be executed.
- Figure 1 is a schematic flowchart of a resource elastic scaling method provided by an embodiment of the present application
- Figure 2 is a schematic flowchart of another resource elastic scaling method provided by an embodiment of the present application.
- Figure 3 is a schematic structural diagram of a resource elastic scaling device provided by an embodiment of the present application.
- Figure 4 is a schematic structural diagram of a computer device provided by an embodiment of the present application.
- horizontal scaling which is the increase or decrease in the number of instances (workers), such as horizontal automatic expansion (horizontal pod autoscaling, HPA); the other is vertical scaling, which is corresponding to a single instance. increase or decrease in resources.
- embodiments of the present application provide a resource elastic scaling method to realize automatic expansion or contraction of resources, avoid the delay problem of resource expansion and contraction, and further improve resource utilization.
- the resource elastic scaling method provided by the embodiments of this application can be applied to systems including AS services, such as cloud computing systems, cloud storage systems, edge cloud systems, CDN and other scenarios.
- This method can be executed by a server, node or instance in a cloud system or CDN.
- the above server, node or instance can be an independent server, node or instance that is only used to perform resource elastic scaling functions, or it can be deployed integrated with other functional modules.
- the application examples do not limit this.
- Figure 1 takes the execution of an independent node (referred to as a control node) as an example. As shown in the figure, the method may include the following steps:
- Step 101 The control node obtains first load information and second load information.
- the first load information represents current actual load information, for example, current CPU utilization, current memory utilization, current business volume and other information.
- the second load information represents load information for estimating current or future load.
- the second load information may be historical load information and historical business volume; or, the second load information may be load information calculated based on historical load information and historical business volume that can be used to estimate current or future loads, such as predetermined load information.
- the second load information may be the rate of change of resource utilization in the past 30 minutes.
- the second load information can also be the load information of the same historical period.
- the second load information can be yesterday's total business volume; or, if the current time is 10 a.m., the second load information can also be yesterday's 10 a.m.
- the business volume information from 10:30 to 10:30; or, if today is Monday, the second load information can also be the business volume information of Monday in the historical data.
- Step 102 The control node determines whether to expand or shrink the resource based on the first load information and the second load information.
- the control node can determine the current load status based on the first load information, such as determining whether the current load is heavier, lighter, etc.; and since the second load information can be used for Load information for estimating the current or future load. Therefore, the control node can estimate the current or future load status based on the second load information, such as estimating a heavier load in a future period or a lighter load in a future period. The control node can consider the current actual load status and the estimated load status in the future to make decisions that not only meet business needs but also help improve resource utilization.
- control node determines that the current load is relatively heavy based on the first load information, it determines that it needs to be modified based on the traditional elastic scaling strategy.
- the resource is expanded; however, in the embodiment of the present application, the control node also determines that the load will be significantly reduced in the future based on the second load information, then the control node can determine that it is not necessary to expand the resource to avoid business interruption after the resource expansion.
- the resource utilization rate dropped significantly due to the decline in volume, resulting in a waste of resources.
- control node determines that the current load is light based on the first load information and determines that the resource needs to be scaled down based on the traditional elastic scaling strategy; however, in this embodiment of the present application, the control node also determines that the future load is based on the second load information. If the business volume will increase significantly over a period of time, the control node can determine that it is not necessary to reduce the resource capacity, so as to avoid the problem that the increase in business volume will lead to a heavier load and affect the business service quality after the resource is reduced.
- control node can determine the current actual load condition based on the acquired first load information, and can also estimate the load condition in a future period of time based on the second load information, so as to determine the current actual load condition and the expected load condition based on the second load information. load conditions in the future to determine whether resources need to be expanded or reduced.
- the above solution can be combined with the predicted load status to determine whether the resource needs to be expanded or reduced, making the system's available resources closer to the actual needs and reducing the cost due to Delay caused by elastic scaling strategy.
- step 102 may include the steps shown in Figure 2:
- Step a The control node determines whether the first resource expansion condition or the first resource reduction condition is satisfied based on the first load information.
- the first load information may be the current resource utilization
- the first resource expansion condition may be that the resource utilization is greater than or equal to the first utilization threshold
- the first resource reduction condition may be that the resource utilization is less than or equal to the second utilization rate threshold, wherein the second utilization threshold is less than the first utilization threshold. If the current resource utilization is greater than or equal to the first utilization threshold, it means that the current load is heavy, and the control node determines that the first resource expansion condition is met; if the current resource utilization is less than or equal to the second utilization threshold, it means that the load is light, Then the control node determines the first resource reduction condition; if the current resource utilization is greater than the second utilization threshold and less than the first utilization threshold, it means that the current load is within the normal range.
- Step b The control node determines whether the second resource expansion condition or the second resource reduction condition is met based on the second load information.
- the second load information may be the change rate of resource utilization determined based on the load information in the past period.
- the second resource expansion condition may be that the change rate of resource utilization is greater than or equal to the first change rate threshold. (Take the first change rate threshold as a positive number as an example), and the second resource scaling condition may be that the resource utilization rate is less than or equal to the second change rate threshold (take the second change rate threshold as a negative number as an example).
- the current change rate is greater than or equal to the first change rate threshold, it can be considered that the business volume is increasing, the resource utilization is on an upward trend and the rising speed is fast, and the control node determines that the second resource expansion condition is met; if the current change rate is less than or equal to the first change rate threshold, the control node determines that the second resource expansion condition is met.
- Second change rate threshold it can be considered that the business volume is declining, the resource utilization is declining and the rate of decline is fast, and the control node determines the second resource shrinkage condition; if the current resource utilization is greater than the second utilization threshold and less than the first utilization rate threshold, indicating that the current resource utilization changes within the normal range.
- the current time is 10 a.m.
- the second load information can be the business volume information from 10 a.m. to 10:30 a.m. yesterday
- the second resource expansion condition can be that the currently used nodes process the traffic from 10 a.m. to 10:30 a.m. yesterday.
- the resource utilization rate of the business is greater than or equal to the first utilization threshold
- the second resource reduction condition is that the resource utilization rate of the node currently used to process the business from 10:00 to 10:30 yesterday morning is less than or equal to the second utilization threshold.
- first resource expansion condition and the first resource reduction condition are mutually exclusive, that is, if the first resource expansion condition is met, the first resource reduction condition cannot be met, and if the first resource reduction condition is met, the first resource reduction condition cannot be met. Meet the first resource expansion conditions.
- second resource expansion condition and the second resource reduction condition are also mutually exclusive, that is, if the second resource expansion condition is met, the second resource reduction condition cannot be met, and if the second resource reduction condition is met, then The second resource expansion condition cannot be met.
- Step b may also be performed first and then step a, or they may be performed simultaneously.
- Step c If the first resource expansion condition is met and the second resource reduction condition is not met, or if the second resource expansion condition is met but the first resource reduction condition is not met, the control node determines to expand the resource.
- the control node can determine to expand the resource.
- the control node can also determine to expand the resource. Alternatively, it can also be set to neither expand nor shrink when only the first resource expansion condition is met.
- both the first resource expansion condition and the second resource reduction condition are met, it means that although the current actual load is heavy, the load is predicted to decrease significantly in the future, and the control node can determine that it is not necessary to expand the resource to avoid After the resource capacity is expanded but the business volume decreases, the resource utilization rate drops significantly, resulting in a waste of resources.
- Step d If the first resource reduction condition is met but the second resource expansion condition is not met, or the second resource reduction condition is met but the first resource expansion condition is not met, the control node determines to scale down the resource.
- the control node can determine to shrink the resource to avoid resource loss. waste.
- the control node can also determine to shrink the resource. Alternatively, it can also be set to neither expand nor shrink when only the first resource shrinking condition is met.
- both the first resource shrinkage condition and the second resource expansion condition are met, it means that although the current actual load is light, the load is predicted to increase significantly in the future, then the control node can determine that it is not necessary to shrink the resource to avoid After the resource is scaled down, the business volume increases, resulting in a heavier load and affecting the quality of business services.
- Step d can also be performed first and then step c, or they can be performed simultaneously.
- the control node may further determine the first expansion step size based on the first load information. For example, if the CPU utilization is greater than or equal to 70%, expansion is required. If the current CPU utilization is between 70% and 80%, add X A nodes to increase computing resources. At this time, X is the above step size.
- M% is the above step size; if the current CPU utilization is between 80% and 90%, add Y A nodes to increase computing resources, where Y>X, this When , Y is the above-mentioned step size, or, if N% of computing resources are added, where N>M, then N% is the above-mentioned step size.
- the control node can determine the first expansion step based on the first expansion step and the second expansion step.
- the larger step size in the expansion step size expands the resource. For example, if the first expansion step is determined to be 2 A nodes, and the second expansion step is 1 A node, then 2 A nodes will be used as the actual expansion step; if the first expansion step is determined, The expansion step is 2 A nodes, and the determined second expansion step is 3 A nodes, then 3 A nodes are used as the actual expansion step.
- the control node can determine based on The resource is expanded with the determined first expansion step; or if the control node determines that neither the first expansion condition nor the first reduction condition is satisfied based on the first load information, but determines that the second expansion condition is satisfied based on the second load information. If the expansion condition is determined, the second expansion step is further determined, and the control node can expand the resource according to the determined second expansion step.
- the control node can determine the first shrinkage step based on the first shrinkage step and the second shrinkage step.
- the larger step size in the second scaling down step size expands the resource. For example, if the first shrinkage step is determined to be 2 A nodes, and the second shrinkage step is determined to be 1 A node, then 2 A nodes will be used as the actual shrinkage step; if The first shrinkage step is 2 A nodes, and the determined second shrinkage step is 3 A nodes, then 3 A nodes are used as the actual shrinkage step.
- the control node can Scale down the resource according to the determined first scale-down step; or, if the control node determines based on the first load information that neither the first expansion condition nor the first scale-down condition is met, but determines based on the second load information If the second shrinkage condition is met, the second shrinkage step is further determined, and the control node can shrink the resource according to the determined second shrinkage step.
- each node In a traditional system that can provide AS services, the resource configuration of each node is basically the same.
- each node contains the same number of CPUs and the computing power of each CPU. This facilitates the regulation of control nodes. However, this also brings troubles to the deployment of cloud computing systems. In order to ensure that the resource configuration of each node in the system is the same, the cost of system deployment is increased.
- multiple resource pools may exist in the system, and the configuration information of nodes in different resource pools is different.
- the system can be deployed with resource pool A and resource pool B.
- Resource pool A includes several A nodes
- resource pool B includes several B nodes.
- the computing resources that one A node can provide are about two B nodes. Provide computing resources.
- the control node Before the control node provides expansion services, it needs to obtain resource configuration information that can be used as an expansion node from different resource pools. Therefore, when it is determined that resource expansion is required, it can determine the resources to be expanded and the resource configuration information of each node. Determine the nodes to be expanded. Since the resource configuration information of different nodes is different, the control node cannot only determine the expansion node when determining expansion as in traditional AS services. The number of nodes needs to be selected based on the resource configuration information of each node.
- the control node determines that the expansion step is 2 A nodes, then the control node can select 2 A nodes from the scalable nodes, or select 4 B nodes, or it can Select 1 A node and 2 B nodes; or, considering that it is difficult for one node to achieve 100% resource utilization, when deciding to select B node, you can choose a node whose theoretical computing resources are slightly larger than the required computing resources, or That is to say, you can select more than 4 B nodes.
- the control node Before the control node provides the reduction service, it needs to obtain the resource configuration information of each used node, so that when it is determined that resource reduction is required, it can determine the resources that need to be reduced and the resource configuration information of each using node. Determine the nodes to be scaled down. Since the resource configuration information of different nodes is different, the control node cannot only determine the number of nodes to be reduced when determining the reduction, as in the traditional AS service, but needs to select the reduction node based on the resource configuration information of each node. For example, if the control node determines that the shrinkage step is 2 A nodes, then the control node can select 2 A nodes from the used nodes, or select 4 B nodes, or it can also select 1 A node and 2 Node B.
- embodiments of the present application also provide a resource elastic scaling device. Used to implement the functions of the control node in the above method embodiment.
- the device may include modules/units that execute any of the possible implementation methods in the above method embodiments; these modules/units may be implemented by hardware, or may be implemented by hardware executing corresponding software.
- the device may be shown in Figure 3 and include: an acquisition module 301 and a decision-making module 302.
- the acquisition module 301 is used to acquire first load information and second load information.
- the first load information is used to represent the current actual load information
- the second load information is used to estimate the current or future load. load information.
- the decision-making module 302 is configured to determine whether to expand the resource or whether to shrink the resource according to the first load information and the second load information.
- the decision-making module 302 is specifically configured to: determine whether the first resource expansion condition or the first resource reduction condition is satisfied according to the first load information; determine whether the first resource expansion condition or the first resource reduction condition is satisfied according to the second load information.
- the second resource expansion condition or the second resource reduction condition is met; if the first resource expansion condition is met and the second resource reduction condition is not met, or the second resource expansion condition is met but the third resource reduction condition is not met. If a resource shrinking condition is met, it is determined to expand the resource; if the first resource shrinking condition is met and the second resource scaling condition is not met, or the second resource shrinking condition is met but the third resource scaling condition is not met. If a resource expansion condition is met, it is determined to reduce the resource capacity.
- the decision-making module 302 is further configured to: if it is determined that the first resource expansion condition is met according to the first load information, determine the first expansion step size according to the first load information; The second load information determines that the second resource expansion condition is met, the second expansion step is determined according to the second load information, and the resource is expanded according to the larger step of the first expansion step and the second expansion step.
- the second load information includes a change rate of used resources within a preset period, and/or a change rate of business volume within a preset period.
- the second load information includes historical load information for the same period.
- the obtaining module 301 is also used to obtain the configuration information of scalable nodes from different resource pools, and the configuration information of nodes in different resource pools is different; the decision-making module 302 is also used to obtain : When determining to expand resources, determine the nodes to be expanded based on the resources that need to be expanded and the configuration information of each scalable node.
- the obtaining module 301 is also used to obtain the configuration information of the currently used node; the decision-making module 302 is also used to: when determining to reduce the resource, according to the required reduction resources and the configuration information of each currently used node to determine the node to be scaled down.
- the acquisition module and the decision-making module can be implemented by software or can be implemented by hardware.
- a module is an example of a software functional unit
- a decision-making module may include code running on a computing instance.
- the computing instance may include at least one of a physical host (computing device), a virtual machine, and a container.
- the above computing instance may be one or more.
- decide Policy modules can include code running on multiple hosts/VMs/containers. It should be noted that multiple hosts/virtual machines/containers used to run the code can be distributed in the same region (region) or in different regions.
- multiple hosts/virtual machines/containers used to run the code can be distributed in the same availability zone (AZ) or in different AZs.
- Each AZ includes one data center or multiple AZs. geographically close data centers. Among them, usually a region can include multiple AZs.
- the multiple hosts/VMs/containers used to run the code can be distributed in the same virtual private cloud (VPC) or across multiple VPCs. Among them, usually a VPC is set up in a region. Cross-region communication between two VPCs in the same region and between VPCs in different regions requires a communication gateway in each VPC, and the interconnection between VPCs is realized through the communication gateway. .
- VPC virtual private cloud
- a module may include at least one computing device, such as a server.
- the decision-making module may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD).
- ASIC application-specific integrated circuit
- PLD programmable logic device
- the above-mentioned PLD can be implemented by a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a general array logic (GAL), or any combination thereof.
- CPLD complex programmable logical device
- FPGA field-programmable gate array
- GAL general array logic
- the decision-making module can be used to perform other steps in the above method, such as the acquisition step.
- the acquisition module can also be used to perform any step in the above method.
- the acquisition module and the decision-making module are responsible for implementing The steps can be specified as needed, and the different steps in the above method are respectively implemented through the acquisition module and the decision-making module to realize all functions of the resource elastic expansion device.
- embodiments of the present application also provide a computer device for implementing the functions of the control node in the above method embodiments.
- the computer device includes a processor 401 as shown in Figure 4, and a communication interface 402 connected to the processor 401.
- the processor 401 may be a general processor, a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, or one or more integrated circuits used to control the execution of the program of this application, etc.
- a general-purpose processor may be a microprocessor or any conventional processor, etc.
- Communication interface 402 is used to communicate with other devices, such as PCI bus interface, Ethernet, wireless access network (radio access network, RAN), wireless local area networks (WLAN), etc.
- PCI bus interface Ethernet
- wireless access network radio access network
- WLAN wireless local area networks
- the processor 401 is configured to call the communication interface 402 to perform receiving and/or sending functions, and to perform the method as described in any of the previous possible implementations.
- the computer device may also include a memory 403 and a communication bus 404.
- the memory 403 is used to store program instructions and/or data, so that the processor 401 calls the instructions and/or data stored in the memory 403 to implement the above functions of the processor 401.
- Memory 403 may be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (random access memory (RAM)) or other type that can store information and instructions.
- a dynamic storage device that can also be an electrically erasable programmable read-only memory (EEPROM) or can be used to carry or store desired program code in the form of instructions or data structures and can be stored by a computer. any other medium, but not limited to this.
- the memory 403 may exist independently, such as an off-chip memory, and is connected to the processor 401 through a communication bus 404.
- the memory 403 may also be integrated with the processor 401.
- Communication bus 404 may include a path for communicating information between the above-described components.
- the processor 401 can perform the following steps through the communication interface 402: obtain first load information and second load information, the first load information represents the current actual load information, and the second load information is used for Load information for estimating future load; determining whether to expand or shrink resources based on the first load information and second load information.
- the processor 401 determines whether to expand or shrink resources based on the first load information and the second load information
- the processor 401 is specifically configured to: based on the first load information and the second load information.
- a load information determines whether the first resource expansion condition or the first resource reduction condition is met; determining whether the second resource expansion condition or the second resource reduction condition is met according to the second load information; if the first resource expansion condition is met condition and the second resource reduction condition is not met, or the second resource expansion condition is met and the first resource reduction condition is not met, then it is determined to expand the resource; if the first resource reduction condition is met condition and the second resource expansion condition is not met, or the second resource reduction condition is met but the first resource expansion condition is not met, then it is determined to reduce the resource capacity.
- the processor 401 is further configured to: if it is determined according to the first load information that the first resource expansion condition is met, determine a first expansion step size according to the first load information; if according to the second The load information determines that the second resource expansion condition is met, the second expansion step is determined according to the second load information, and the resource is processed according to the larger step of the first expansion step and the second expansion step.
- the second load information includes a change rate of used resources within a preset period, and/or a change rate of business volume within a preset period.
- the second load information includes historical load information for the same period.
- the processor 401 is also configured to: obtain the configuration information of each scalable node from different resource pools, where the configuration information of nodes in different resource pools is different; when determining to expand the resource , determine the nodes to be expanded based on the resources required for expansion and the configuration information of each scalable node.
- the processor 401 is also configured to: obtain the configuration information of the currently used nodes; when determining to reduce the resource size, based on the resources that need to be reduced and the configuration of each currently used node Information to determine the node to be scaled down.
- embodiments of the present application provide a resource elastic scaling system, including the resource elastic scaling device described in any of the above implementations, and a plurality of nodes that provide resources.
- Embodiments of the present application also provide a computing device cluster, including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is configured to execute a program stored in the memory of the at least one computing device. Instructions to cause the computing device cluster to execute the foregoing method embodiments.
- the above computing device may be a server, such as a central server, an edge server, or a local server in a local data center.
- the computing device may also be a terminal device such as a desktop computer, a laptop computer, or a smartphone.
- the memory of one or more computing devices in the computing device cluster may also store part of the instructions for executing the resource elastic scaling method.
- a combination of one or more computing devices may jointly execute instructions for performing the resource elastic scaling method.
- the memories in different computing devices in the computing device cluster can store different instructions, which are respectively used to execute part of the functions of the resource elastic scaling device. That is, instructions stored in memories in different computing devices can implement the functions of one or more modules in the acquisition module and the decision-making module.
- one or more computing devices in a cluster of computing devices may be connected through a network.
- the network may be a wide area network or a local area network, etc.
- embodiments of the present application also provide a computer program product containing instructions.
- the computing device cluster causes the computing device cluster to execute the above method embodiment.
- embodiments of the present application also provide a computer-readable storage medium.
- Computer-readable instructions are stored in the computer-readable storage medium.
- the above-mentioned Method embodiments are executed.
- embodiments of the present application provide a computer program product containing instructions, which when run on a computer causes the above method embodiments to be executed.
- embodiments of the present application may be provided as methods, systems, or computer program products. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment that combines software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
- computer-usable storage media including, but not limited to, disk storage, CD-ROM, optical storage, etc.
- These computer program instructions may also be stored in a computer-readable memory that causes a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction means, the instructions
- the device implements the functions specified in a process or processes of the flowchart and/or a block or blocks of the block diagram.
- These computer program instructions may also be loaded onto a computer or other programmable data processing device, causing a series of operating steps to be performed on the computer or other programmable device to produce computer-implemented processing, thereby executing on the computer or other programmable device.
- Instructions provide steps for implementing the functions specified in a process or processes of a flowchart diagram and/or a block or blocks of a block diagram.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种资源弹性伸缩方法、装置及设备。在该方法中,获取第一负载信息和第二负载信息,所述第一负载信息表示当前实际的负载信息,所述第二负载信息为用于对未来负载进行估计的负载信息;根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。控制节点能够根据第一负载信息确定当前实际的负载状况,还能够根据第二负载信息对未来一段时间内的负载进行预测,从而根据当前实际负载状况和预计的未来一段时间内的负载状况,判断是否需要对资源进行扩缩容,使得系统可用资源更加贴近真实所需,降低了由于弹性伸缩策略导致的延迟性。
Description
相关申请的交叉引用
本申请要求在2022年07月29日提交中国专利局、申请号为202210905626.1、申请名称为“一种资源弹性伸缩方法、装置及设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及计算机技术领域,尤其涉及一种资源弹性伸缩方法、装置及设备。
若当前的计算、存储资源不能满足业务需求时,可以增加多个服务器(或节点、实例等)实现共同访问、共同提供服务。若当前的计算、存储资源过剩,为了避免资源浪费,可以减少提供服务的服务器(或节点、实例等)数量。
为了自动实现上述操作,提出了弹性伸缩(auto scaling,AS)的概念。AS可以根据业务需求和策略来设置伸缩规则,自动调整后端服务器(或节点、实例等)的数量。目前的AS实现方式,大多基于CPU、内存的使用率进行调控,例如,若CPU使用率达到阈值上限,则进行资源扩容,若CPU使用率达到阈值下限,则进行资源缩容。
在公有云、边缘云、内容分发网络(content delivery network,CDN)等场景中,提高AS服务的资源利用率进而降低成本是一个一直存在的课题。受限于业务变动的未知性和弹性伸缩策略的延迟性,当前业务中弹性策略往往不准确,存在大量的资源浪费。
发明内容
本申请实施例提供一种资源弹性伸缩方法、装置及设备,用于实现自动对资源进行扩容或缩容,且有助于避免资源扩容、缩容的延迟问题。
第一方面,本申请实施例提供一种资源弹性伸缩方法,包括:获取第一负载信息和第二负载信息,所述第一负载信息表示当前实际的负载信息,所述第二负载信息为用于对未来负载进行估计的负载信息;根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
在上述实施例中,控制节点能够根据获取到的第一负载信息确定当前实际的负载状况,还能够根据第二负载信息对未来一段时间内的负载状况进行估计,从而根据当前实际负载状况和预计的未来一段时间内的负载状况,确定是否需要对资源进行扩容或缩容。上述方案与传统的仅根据当前资源利用率进行扩缩容的方案相比,能够结合预判的负载状况判断是否需要对资源进行扩缩容,使得系统可用资源更加贴近真实所需,降低了由于弹性伸缩策略导致的延迟性。
在一种可能的实现方式中,所述根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容,包括:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。若即满足第一资源扩容条件,又满足第二资源缩容条件,则说明虽然当前实际负载较重,但预测未来一段时间内负载显著降低,那么控制节点可以确定不必对资源进行扩容,以避免资源扩容后但业务量下降而导致的资源利用率显著下降,造成资源浪费。若即满足第一资源缩容条件,又满足第二资源扩容条件,则说明虽然当前实际负载轻,但预测未来一段时间内负载显著增加,那么控制节点可以确定不必对资源进行缩容,以避免在对资源进行缩容后业务量上升导致负载较重、影响业务服务质量的问题。
在一种可能的实现方式中,所述方法还包括:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行扩容;或者,若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若
根据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。若控制节点根据第一负载信息确定出的第一步长,与根据第二负载信息确定出的第二步长不相同,那么控制节点可以根据第一步长和第二步长中较大的步长对资源进行扩容,从而更好的满足用户需要。
在一种可能的实现方式中,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
在一种可能的实现方式中,所述第二负载信息包括历史同时段负载信息。
在一种可能的实现方式中,所述方法还包括:从不同的资源池中获取可扩容节点的配置信息,不同资源池中的节点的配置信息不同;在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
在一种可能的实现方式中,所述方法还包括:获取当前已使用节点的配置信息;在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。在对资源进行扩容、缩容时,充分利用高资源配置的节点和低资源配置的节点,更有利于提升系统的整体资源利用率,从而有利于降低资源使用成本。
第二方面,本申请实施例提供一种资源弹性伸缩装置,包括:获取模块,用于获取第一负载信息和第二负载信息,所述第一负载信息用于表示当前实际的负载信息,所述第二负载信息为用于对当前或未来负载进行估计的负载信息;决策模块,用于根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
在一种可能的实现方式中,所述决策模块具体用于:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。
在一种可能的实现方式中,所述决策模块还用于:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行扩容;或者,若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若根据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。
在一种可能的实现方式中,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
在一种可能的实现方式中,所述第二负载信息包括历史同时段负载信息。
在一种可能的实现方式中,所述获取模块还用于从不同的资源池中获取可扩容节点的配置信息,不同资源池中的节点的配置信息不同;所述决策模块还用于:在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
在一种可能的实现方式中,所述获取模块还用于获取当前已使用节点的配置信息;所述决策模块还用于:在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。
第三方面,本申请实施例提供一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器存储有计算机程序;所述处理器用于调用所述存储器中存储的计算机程序,以执行如第一方面及第一方面任一实现方式所述的方法。
第四方面,本申请实施例提供一种资源弹性伸缩系统,包括第二方面及第二方面任一实现方式所述的资源弹性伸缩装置,以及多个提供资源的节点。
第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面及第一方面任一实现方式所述的方法。
第六方面,本申请实施例提供一种计算设备集群,包括至少一个计算设备,每个计算设备包括处理器和存储器;所述至少一个计算设备的处理器用于执行所述至少一个计算设备的存储器中存
储的指令,以使得所述计算设备集群执行如第一方面及第一方面任一项所述的方法。
第七方面,本申请实施例提供一种包含指令的计算机程序产品,当所述指令被计算设备集群运行时,使得所述计算设备集群执行如第一方面及第一方面任一项所述的方法。
第八方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得如第一方面及第一方面任一实现方式所述的方法被执行。
上述第二方面至第八方面中任一方面中的任一可能实现方式可以实现的技术效果,请参照上述第一方面中相应实现方案可以达到的技术效果说明,重复之处不予论述。
图1为本申请实施例提供的一种资源弹性伸缩方法的流程示意图;
图2为本申请实施例提供的又一种资源弹性伸缩方法的流程示意图;
图3为本申请实施例提供的一种资源弹性伸缩装置的结构示意图;
图4为本申请实施例提供的一种计算机设备的结构示意图。
弹性伸缩主要分为两种,一种为水平伸缩,即对于实例(worker)数目的增减,如水平自动扩展(horizontal pod autoscaling,HPA);另一种为垂直伸缩,即对应单个实例可以使用的资源的增减。
以转码服务为例,传统的AS服务通常根据HPA策略来控制资源的扩容、缩容,主要方式为监控资源利用率(如CPU利用率),配置扩容、缩容的步长。然而,该实现方式无法感知未来的业务需求量,仅依靠CPU利用率等指标来扩缩容,策略较为单一,对资源的扩容、缩容存在延迟问题,造成业务高峰过后,系统仍然在扩容,业务低谷结束后,系统仍然在缩容等情况,随着业务变化,整体CPU利用率低,大量资源被浪费,很难维持高利用率。
为了解决上述问题,本申请实施例提供一种资源弹性伸缩方法,用于实现自动对资源进行扩容或缩容,避免资源扩容、缩容的延迟问题,进一步提高资源利用率。
本申请实施例提供的资源弹性伸缩方法,可以应用于包含有AS服务的系统中,例如云计算系统、云存储系统、边缘云系统、CDN等场景中。该方法可以由云系统、CDN中的服务器、节点或实例执行,上述服务器、节点或实例可以是仅用于执行资源弹性伸缩功能的独立服务器、节点或实例,或者与其他功能模块集成部署,本申请实施例对此不做限定。
参见图1,为本申请实施例提供资源弹性伸缩方法的流程示意图。图1中以独立的节点(简称控制节点)执行为例进行举例说明,如图所示,该方法可以包括以下步骤:
步骤101、控制节点获取第一负载信息和第二负载信息。
其中,第一负载信息表示当前实际的负载信息,例如,当前的CPU利用率,当前内存利用率,当前的业务量等信息。
第二负载信息表示用于对当前或未来负载进行估计的负载信息。例如,第二负载信息可以为历史负载信息,历史业务量;或者,第二负载信息可以为根据历史负载信息、历史业务量计算出的可用于对当前或未来负载进行估计的负载信息,如预设时段(过去的时段)内已使用资源的变化率、预设时段(过去的时段)内业务量的变化率等。例如,第二负载信息可以是过去30分钟内的资源利用率的变化率。又例如,第二负载信息也可以是历史同时段的负载信息,如第二负载信息可以是昨天的业务总量;或者,若当前时间为上午10点,第二负载信息也可以是昨天上午10点至10点半的业务量信息;或者,若今天为周一,第二负载信息也可以为历史数据中周一的业务量信息。
步骤102、控制节点根据第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
由于第一负载信息表示当前实际的负载情况,控制节点可以根据第一负载信息确定当前的负载状态,如确定当前的负载较重、负载较轻等;又由于第二负载信息为能够用于对当前或未来负载进行估计的负载信息,因此,控制节点可以根据第二负载信息对当前或未来的负载状况进行估计,如估计未来一段时间内的负载较重或者未来一段时间内的负载较轻。控制节点可以将当前实际的负载状况和估计的未来一段时间内的负载状况结合考虑,从而做出既满足业务需要又有利于提高资源利用率的决策。
例如,控制节点虽然根据第一负载信息确定当前的负载较重,根据传统弹性伸缩策略则确定需要对
资源进行扩容;但在本申请实施例中,控制节点还根据第二负载信息确定出未来一段时间内的负载将显著降低,那么控制节点可以确定不必对资源进行扩容,以避免资源扩容后但业务量下降而导致的资源利用率显著下降,造成资源浪费。
又例如,控制节点虽然根据第一负载信息确定当前的负载较轻,根据传统弹性伸缩策略确定需要对资源进行缩容;但在本申请实施例中,控制节点还根据第二负载信息确定出未来一段时间内业务量将明显增加,那么控制节点可以确定不必对资源进行缩容,以避免在对资源进行缩容后业务量上升导致负载较重、影响业务服务质量的问题。
在上述实施例中,控制节点能够根据获取到的第一负载信息确定当前实际的负载状况,还能够根据第二负载信息对未来一段时间内的负载状况进行估计,从而根据当前实际负载状况和预计的未来一段时间内的负载状况,确定是否需要对资源进行扩容或缩容。上述方案与传统的仅根据当前资源利用率进行扩缩容的方案相比,能够结合预判的负载状况判断是否需要对资源进行扩缩容,使得系统可用资源更加贴近真实所需,降低了由于弹性伸缩策略导致的延迟性。
在一种可能的实现方式中,步骤102可以包括如图2所示的步骤:
步骤a、控制节点根据第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件。
例如,第一负载信息可以为当前的资源利用率,第一资源扩容条件可以是资源利用率大于或等于第一利用率阈值,第一资源缩容条件可以是资源利用率小于或等于第二利用率阈值,其中,第二利用率阈值小于第一利用率阈值。若当前的资源利用率大于等于第一利用率阈值,表示当前负载较重,则控制节点判断满足第一资源扩容条件;若当前的资源利用率小于等于第二利用率阈值,表示负载较轻,则控制节点判断第一资源缩容条件;若当前的资源利用率大于第二利用率阈值且小于第一利用率阈值,表示当前负载在正常范围内。
步骤b、控制节点根据第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件。
例如,第二负载信息可以是根据过去一段时间内的负载信息确定出的资源利用率的变化率,相应的,第二资源扩容条件可以是资源利用率的变化率大于或等于第一变化率阈值(以第一变化率阈值为正数为例),第二资源缩容条件可以是资源利用率小于或等于第二变化率阈值(以第二变化率阈值为负数为例)。若当前的变化率大于等于第一变化率阈值,可以认为业务量增加,资源利用率呈上升趋势且上升速度较快,则控制节点判断满足第二资源扩容条件;若当前的变化率小于等于第二变化率阈值,可以认为业务量下降,资源利用率呈下降趋势且下降速度较快,控制节点判断第二资源缩容条件;若当前的资源利用率大于第二利用率阈值且小于第一利用率阈值,表示当前资源利用率在正常范围内变化。
又例如,当前时间为上午十点,第二负载信息可以是昨天上午十点至十点半的业务量信息,第二资源扩条件可以是当前已使用节点处理昨天上午十点至十点半的业务的资源利用率大于等于第一利用率阈值,第二资源缩容条件为当前已使用节点处理昨天上午十点至十点半的业务的资源利用率小于等于第二利用率阈值。
应当理解,上述第一资源扩容条件和第一资源缩容条件具有互斥性,即,若满足第一资源扩容条件则不能满足第一资源缩容条件,若满足第一资源缩容条件则不能满足第一资源扩容条件。类似的,上述第二资源扩容条件和第二资源缩容条件也具有互斥性,即,若满足第二资源扩容条件则不能满足第二资源缩容条件,若满足第二资源缩容条件则不能满足第二资源扩容条件。
本申请实施例对上述步骤a和步骤b的先后顺序不做限定,也可以先执行步骤b再执行步骤a,或者同时执行。
步骤c、若满足第一资源扩容条件且不满足第二资源缩容条件,或者,若满足第二资源扩容条件且不满足第一资源缩容条件,则控制节点确定对资源进行扩容。
若既满足第一资源扩容条件,又满足第二资源扩容条件,则说明当前实际负载较重,且未来一段时间内负载仍然较重,那么控制节点可以确定对资源进行扩容。
若满足第一资源扩容条件,但不满足第二资源扩容条件,也不满足第二资源缩容条件,则说明当前实际负载较重,预测未来一段时间内负载没有显著增加但也没有显著降低,那么控制节点也可以确定对资源进行扩容。或者,也可以设置在仅满足第一资源扩容条件时既不扩容也不缩容。
若即满足第一资源扩容条件,又满足第二资源缩容条件,则说明虽然当前实际负载较重,但预测未来一段时间内负载显著降低,那么控制节点可以确定不必对资源进行扩容,以避免资源扩容后但业务量下降而导致的资源利用率显著下降,造成资源浪费。
步骤d、若满足第一资源缩容条件且不满足第二资源扩容条件,或者满足第二资源缩容条件且不满足第一资源扩容条件,则控制节点确定对资源进行缩容。
若既满足第一资源缩容条件,又满足第二资源缩容条件,则说明当前实际负载较轻,且未来一段时间内负载显著下降,那么控制节点可以确定对资源进行缩容,以避免资源浪费。
若满足第一资源缩容条件,但不满足第二资源扩容条件,也不满足第二资源缩容条件,则说明当前实际负载较轻,预测未来一段时间内负载没有显著增加但也没有显著降低,那么控制节点也可以确定对资源进行缩容。或者,也可以设置在仅满足第一资源缩容条件时既不扩容也不缩容。
若即满足第一资源缩容条件,又满足第二资源扩容条件,则说明虽然当前实际负载轻,但预测未来一段时间内负载显著增加,那么控制节点可以确定不必对资源进行缩容,以避免在对资源进行缩容后业务量上升导致负载较重、影响业务服务质量的问题。
本申请实施例对上述步骤c和步骤d的先后顺序不做限定,也可以先执行步骤d再执行步骤c,或者同时执行。
在一种可能的实现方式中,若根据第一负载信息确定第一资源扩容条件,控制节点还可以进一步根据第一负载信息确定第一扩容步长。例如,可以设置CPU利用率大于等于70%则需要进行扩容,若当前CPU利用率在70%~80%之间,则增加X个A节点以增加计算资源,此时,X即为上述步长,或者,增加M%的计算资源,则M%即为上述步长;若当前CPU利用率在80%~90%之间,则增加Y个A节点以增加计算资源,其中Y>X,此时,Y即为上述步长,或者,增加N%的计算资源,其中N>M,则N%即为上述步长。
进一步的,若控制节点根据第一负载信息确定出的第一扩容步长,与根据第二负载信息确定出的第二扩容步长不相同,那么控制节点可以根据第一扩容步长和第二扩容步长中较大的步长对资源进行扩容。例如,若确定出的第一扩容步长为2个A节点,确定出的第二扩容步长为1个A节点,则将2个A节点作为实际的扩容步长;若确定出的第一扩容步长为2个A节点,确定出的第二扩容步长为3个A节点,则将3个A节点作为实际的扩容步长。
在一些实施例中,若控制节点根据第一负载信息确定出第一扩容步长,但根据第二负载信息确定既不满足第二扩容条件也不满足第二缩容条件,则控制节点可以根据确定出的第一扩容步长对资源进行扩容;或者,若控制节点根据第一负载信息确定既不满足第一扩容条件也不满足第一缩容条件,但根据第二负载信息确定满足第二扩容条件,则进一步确定第二扩容步长,则控制节点可以根据确定出的第二扩容步长对资源进行扩容。
类似的,控制节点根据第一负载信息确定出的第一缩容步长,与根据第二负载信息确定出的第二缩容步长不相同,那么控制节点可以根据第一缩容步长和第二缩容步长中较大的步长对资源进行扩容。例如,若确定出的第一缩容步长为2个A节点,确定出的第二缩容步长为1个A节点,则将2个A节点作为实际的缩容步长;若确定出的第一缩容步长为2个A节点,确定出的第二缩容步长为3个A节点,则将3个A节点作为实际的缩容步长。
在另一些实施例中,若控制节点根据第一负载信息确定第一缩容步长,但根据第二负载信息确定既不满足第二扩容条件也不满足第二缩容条件,则控制节点可以根据确定出的第一缩容步长对资源进行缩容;或者,若控制节点根据第一负载信息确定既不满足第一扩容条件也不满足第一缩容条件,但根据第二负载信息确定满足第二缩容条件,则进一步确定第二缩容步长,则控制节点可以根据确定出的第二缩容步长对资源进行缩容。
在传统的能够提供AS服务的系统中,每个节点的资源配置基本相同,例如,在能够提供AS服务的云计算系统中,每个节点包含的CPU数量、每个CPU的计算能力均相同,从而便于控制节点的调控。但是,这也给云计算系统的部署带来了麻烦,为了保证系统中各节点资源配置相同,增加了系统部署的成本。
为了降低成本,在申请实施例中,系统中可以存在多种资源池,不同资源池中的节点的配置信息不同。例如,系统中可以部署有资源池A和资源池B,其中,资源池A中包括若干A节点,资源池B中包括若干B节点,一个A节点能够提供的计算资源约为两个B节点能够提供个计算资源。
此时,控制节点在提供扩容服务之前,需要先从不同资源池中获取可作为扩容节点的资源配置信息,从而在确定需要进行资源扩容时,根据需要扩容的资源以及各节点的资源配置信息,确定扩容的节点。由于不同节点的资源配置信息不同,使得控制节点在确定扩容时不能像传统AS服务中仅确定扩容的节
点数量,而是需要根据个节点的资源配置信息进行扩容节点的选择。例如,获取资源池A中的节点A的资源配置信息,以及可用节点A的数量,获取资源池B中节点B的资源配置信息,以及可用节点B的数量,且一个A节点能够提供的计算资源约为两个B节点能够提供个计算资源;若控制节点确定扩容步长为2个A节点,那么控制节点可以从可扩容节点中选择2个A节点,或者选择4个B节点,或者还可以选择1个A节点和2个B节点;又或者,考虑到一个节点难以实现百分百的资源利用率,在确定选择B节点时,可以选择理论计算资源略大于所需计算资源的节点,也就是说,可以选择数量大于4个的B节点。
类似的,控制节点在提供缩容服务之前,需要先获取每个已使用节点的资源配置信息,从而在确定需要进行资源缩容时,根据需要缩容的资源以及各使用节点的资源配置信息,确定缩容的节点。由于不同节点的资源配置信息不同,使得控制节点在确定缩容时不能像传统AS服务中仅确定缩容的节点数量,而是需要根据个节点的资源配置信息进行缩容节点的选择。例如,若控制节点确定缩容步长为2个A节点,那么控制节点可以从已使用的节点中选择2个A节点,或者选择4个B节点,或者还可以选择1个A节点和2个B节点。
在对资源进行扩容、缩容时,能够充分利用高资源配置的节点和低资源配置的节点,更有利于提升系统的整体资源利用率,从而有利于降低资源使用成本。
基于相同的技术构思,本申请实施例还提供一种资源弹性伸缩装置。用于实现上述方法实施例中控制节点的功能。装置可以包括执行上述方法实施例中任意一种可能的实现方式的模块/单元;这些模块/单元可以通过硬件实现,也可以通过硬件执行相应的软件实现。
示例性的,该装置可以如图3所示,包括:获取模块301和决策模块302。
其中,获取模块301,用于获取第一负载信息和第二负载信息,所述第一负载信息用于表示当前实际的负载信息,所述第二负载信息为用于对当前或未来负载进行估计的负载信息。
决策模块302,用于根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
在一种可能的实现方式中,所述决策模块302具体用于:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。
在一种可能的实现方式中,所述决策模块302还用于:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行扩容;或者,若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若根据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。
在一种可能的实现方式中,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
在一种可能的实现方式中,所述第二负载信息包括历史同时段负载信息。
在一种可能的实现方式中,所述获取模块301还用于从不同的资源池中获取可扩容节点的配置信息,不同资源池中的节点的配置信息不同;所述决策模块302还用于:在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
在一种可能的实现方式中,所述获取模块301还用于获取当前已使用节点的配置信息;所述决策模块302还用于:在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。
其中,获取模块、决策模块可以通过软件实现,或者可以通过硬件实现。示例性的,模块作为软件功能单元的一种举例,决策模块可以包括运行在计算实例上的代码。其中,计算实例可以包括物理主机(计算设备)、虚拟机、容器中的至少一种。进一步地,上述计算实例可以是一台或者多台。例如,决
策模块可以包括运行在多个主机/虚拟机/容器上的代码。需要说明的是,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的区域(region)中,也可以分布在不同的region中。进一步地,用于运行该代码的多个主机/虚拟机/容器可以分布在相同的可用区(availability zone,AZ)中,也可以分布在不同的AZ中,每个AZ包括一个数据中心或多个地理位置相近的数据中心。其中,通常一个region可以包括多个AZ。同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云(virtual private cloud,VPC)中,也可以分布在多个VPC中。其中,通常一个VPC设置在一个region内,同一region内两个VPC之间,以及不同region的VPC之间跨区通信需在每个VPC内设置通信网关,经通信网关实现VPC之间的互连。模块作为硬件功能单元的一种举例,决策模块可以包括至少一个计算设备,如服务器等。或者,决策模块也可以是利用专用集成电路(application-specific integrated circuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。获取模块与决策模块类似,不再赘述。
需要说明的是,在其他实施例中,决策模块可以用于执行上述方法中的其他步骤,例如获取的步骤,获取模块也可以用于执行上述方法中的任意步骤,获取模块、决策模块负责实现的步骤可根据需要指定,通过获取模块、决策模块分别实现上述方法中不同的步骤来实现资源弹性伸缩装置的全部功能。
基于相同的技术构思,本申请实施例还提供一种计算机设备,用于实现上述方法实施例中控制节点的功能。该计算机设备包括如图4所示的处理器401,以及与处理器401连接的通信接口402。
处理器401可以是通用处理器,微处理器,特定集成电路(application specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件,分立门或者晶体管逻辑器件,或一个或多个用于控制本申请方案程序执行的集成电路等。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
通信接口402,用于与其他设备通信,如PCI总线接口、以太网,无线接入网(radio access network,RAN),无线局域网(wireless local area networks,WLAN)等。
在本申请实施例中,处理器401用于调用通信接口402执行接收和/或发送的功能,并执行如前任一种可能实现方式所述的方法。
进一步的,该计算机设备还可以包括存储器403以及通信总线404。
存储器403,用于存储程序指令和/或数据,以使处理器401调用存储器403中存储的指令和/或数据,实现处理器401的上述功能。存储器403可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器403可以是独立存在,例如片外存储器,通过通信总线404与处理器401相连接。存储器403也可以和处理器401集成在一起。
通信总线404可包括一通路,用于在上述组件之间传送信息。
示例性的,处理器401可以通过通信接口402执行以下步骤:获取第一负载信息和第二负载信息,所述第一负载信息表示当前实际的负载信息,所述第二负载信息为用于对未来负载进行估计的负载信息;根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
在一种可能的实现方式中,处理器401在所述根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容时,具体用于:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。
在一种可能的实现方式中,处理器401还用于:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行
扩容;或者,若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若根据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。
在一种可能的实现方式中,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
在一种可能的实现方式中,所述第二负载信息包括历史同时段负载信息。
在一种可能的实现方式中,处理器401还用于:从不同的资源池中获取每个可扩容节点的配置信息,不同资源池中的节点的配置信息不同;在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
在一种可能的实现方式中,处理器401还用于:获取当前已使用节点的配置信息;在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。
基于相同的技术构思,本申请实施例提供一种资源弹性伸缩系统,包括上述任一实现方式所述的资源弹性伸缩装置,以及多个提供资源的节点。
本申请实施例还提供一种计算设备集群,包括至少一个计算设备,每个计算设备包括处理器和存储器;所述至少一个计算设备的处理器用于执行所述至少一个计算设备的存储器中存储的指令,以使得所述计算设备集群执行前述方法实施例。上述计算设备可以是服务器,例如是中心服务器、边缘服务器,或者是本地数据中心中的本地服务器。在一些实施例中,计算设备也可以是台式机、笔记本电脑或者智能手机等终端设备。
在一些可能的实现方式中,上述计算设备集群中的一个或多个计算设备的存储器中也可以分别存有用于执行资源弹性伸缩方法的部分指令。换言之,一个或多个计算设备的组合可以共同执行用于执行资源弹性伸缩方法的指令。
需要说明的是,计算设备集群中的不同的计算设备中的存储器可以存储不同的指令,分别用于执行资源弹性伸缩装置的部分功能。也即,不同的计算设备中的存储器存储的指令可以实现获取模块、决策模块中的一个或多个模块的功能。
在一些可能的实现方式中,计算设备集群中的一个或多个计算设备可以通过网络连接。其中,所述网络可以是广域网或局域网等等。
基于相同的技术构思,本申请实施例还提供一种包含指令的计算机程序产品,当所述指令被计算设备集群运行时,使得所述计算设备集群执行上述方法实施例。
基于相同的技术构思,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,当所述计算机可读指令在计算机上运行时,使得上述方法实施例被执行。
基于相同的技术构思,本申请实施例提供还一种包含指令的计算机程序产品,当其在计算机上运行时,使得上述方法实施例被执行。
需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个
方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (19)
- 一种资源弹性伸缩方法,其特征在于,所述方法包括:获取第一负载信息和第二负载信息,所述第一负载信息表示当前实际的负载信息,所述第二负载信息为用于对未来负载进行估计的负载信息;根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
- 根据权利要求1所述的方法,其特征在于,所述根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容,包括:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。
- 根据权利要求2所述的方法,其特征在于,所述方法还包括:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行扩容;或者若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若根据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。
- 根据权利要求1-3任一项所述的方法,其特征在于,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
- 根据权利要求1-3任一项所述的方法,其特征在于,所述第二负载信息包括历史同时段负载信息。
- 根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:从不同的资源池中获取可扩容节点的配置信息,不同资源池中的节点的配置信息不同;在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
- 根据权利要求1-5任一项所述的方法,其特征在于,所述方法还包括:获取当前已使用节点的配置信息;在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。
- 一种资源弹性伸缩装置,其特征在于,所述装置包括:获取模块,用于获取第一负载信息和第二负载信息,所述第一负载信息用于表示当前实际的负载信息,所述第二负载信息为用于对当前或未来负载进行估计的负载信息;决策模块,用于根据所述第一负载信息和第二负载信息确定是否对资源进行扩容或者是否对资源进行缩容。
- 根据权利要求8所述的装置,其特征在于,所述决策模块具体用于:根据所述第一负载信息确定是否满足第一资源扩容条件或第一资源缩容条件;根据所述第二负载信息确定是否满足第二资源扩容条件或第二资源缩容条件;若满足所述第一资源扩容条件且不满足所述第二资源缩容条件,或者满足所述第二资源扩容条件且不满足所述第一资源缩容条件,则确定对资源进行扩容;若满足所述第一资源缩容条件且不满足所述第二资源扩容条件,或者满足所述第二资源缩容条件且不满足所述第一资源扩容条件,则确定对资源进行缩容。
- 根据权利要求9所述的装置,其特征在于,所述决策模块还用于:若根据所述第一负载信息确定满足第一资源扩容条件,根据第一负载信息确定第一扩容步长;若根据所述第二负载信息确定满足第二资源扩容条件,根据第二负载信息确定第二扩容步长;根据所述第一扩容步长和所述第二扩容步长中的较大步长对资源进行扩容;或者若根据所述第一负载信息确定满足第一资源缩容条件,根据第一负载信息确定第一缩容步长;若根 据所述第二负载信息确定满足第二资源缩容条件,根据第二负载信息确定第二缩容步长;根据所述第一缩容步长和所述第二缩容步长中的较大步长对资源进行缩容。
- 根据权利要求8-10任一项所述的装置,其特征在于,所述第二负载信息包括预设时段内已使用资源的变化率,和/或预设时段内业务量的变化率。
- 根据权利要求8-10任一项所述的装置,其特征在于,所述第二负载信息包括历史同时段负载信息。
- 根据权利要求8-12任一项所述的装置,其特征在于,所述获取模块还用于:从不同的资源池中获取可扩容节点的配置信息,不同资源池中的节点的配置信息不同;所述决策模块还用于:在确定对资源进行扩容时,根据所需扩容的资源以及每个可扩容节点的配置信息,确定扩容的节点。
- 根据权利要求8-12任一项所述的装置,其特征在于,所述获取模块还用于:获取当前已使用节点的配置信息;所述决策模块还用于:在确定对资源进行缩容时,根据所需缩容的资源以及当前每个已使用节点的配置信息,确定缩容的节点。
- 一种资源弹性伸缩系统,其特征在于,包括如权利要求8-14任一项所述的资源弹性伸缩装置,以及多个提供资源的节点。
- 一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;所述存储器存储有计算机程序;所述处理器用于调用所述存储器中存储的计算机程序,以执行权利要求1-7任一项所述的方法。
- 一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;所述至少一个计算设备的处理器用于执行所述至少一个计算设备的存储器中存储的指令,以使得所述计算设备集群执行如权利要求1-7任一项所述的方法。
- 一种包含指令的计算机程序产品,其特征在于,当所述指令被计算设备集群运行时,使得所述计算设备集群执行如权利要求的1-7任一项所述的方法。
- 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如权利要求1-7任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210905626.1A CN117527591A (zh) | 2022-07-29 | 2022-07-29 | 一种资源弹性伸缩方法、装置及设备 |
CN202210905626.1 | 2022-07-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024022443A1 true WO2024022443A1 (zh) | 2024-02-01 |
Family
ID=89705454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/109593 WO2024022443A1 (zh) | 2022-07-29 | 2023-07-27 | 一种资源弹性伸缩方法、装置及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117527591A (zh) |
WO (1) | WO2024022443A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069291A (zh) * | 2024-02-08 | 2024-05-24 | 中国兵器工业计算机应用技术研究所 | 一种基于业务和结果导向的弹性扩缩容方法 |
CN118093204A (zh) * | 2024-04-25 | 2024-05-28 | 数据空间研究院 | 一种容器编排的集群扩缩容方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010260A (zh) * | 2020-09-29 | 2021-06-22 | 证通股份有限公司 | 容器数量弹性伸缩方法以及容器数量弹性伸缩方法系统 |
CN114637650A (zh) * | 2022-03-11 | 2022-06-17 | 电子科技大学 | 一种基于Kubernetes集群的弹性伸缩方法 |
CN115412449A (zh) * | 2022-08-31 | 2022-11-29 | 西安交通大学 | 一种基于负载预测的容器动态伸缩方法及系统 |
-
2022
- 2022-07-29 CN CN202210905626.1A patent/CN117527591A/zh active Pending
-
2023
- 2023-07-27 WO PCT/CN2023/109593 patent/WO2024022443A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010260A (zh) * | 2020-09-29 | 2021-06-22 | 证通股份有限公司 | 容器数量弹性伸缩方法以及容器数量弹性伸缩方法系统 |
CN114637650A (zh) * | 2022-03-11 | 2022-06-17 | 电子科技大学 | 一种基于Kubernetes集群的弹性伸缩方法 |
CN115412449A (zh) * | 2022-08-31 | 2022-11-29 | 西安交通大学 | 一种基于负载预测的容器动态伸缩方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118069291A (zh) * | 2024-02-08 | 2024-05-24 | 中国兵器工业计算机应用技术研究所 | 一种基于业务和结果导向的弹性扩缩容方法 |
CN118093204A (zh) * | 2024-04-25 | 2024-05-28 | 数据空间研究院 | 一种容器编排的集群扩缩容方法 |
Also Published As
Publication number | Publication date |
---|---|
CN117527591A (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2024022443A1 (zh) | 一种资源弹性伸缩方法、装置及设备 | |
JP6671468B2 (ja) | クラウドモニタリングに基づく負荷分散の最適化方法および装置 | |
Hoang et al. | Optimal admission control policy for mobile cloud computing hotspot with cloudlet | |
WO2020199487A1 (zh) | 访问请求的响应方法、装置、设备及存储介质 | |
US20170237647A1 (en) | Virtual network function resource allocation and management system | |
US11316792B2 (en) | Method and system of limiting traffic | |
US10652360B2 (en) | Access scheduling method and apparatus for terminal, and computer storage medium | |
WO2020019743A1 (zh) | 流量控制方法及装置 | |
CN103559072A (zh) | 虚拟机双向自动伸缩服务实现方法及其系统 | |
CN109639833B (zh) | 一种基于无线城域网微云负载均衡的任务调度方法 | |
WO2018121178A1 (zh) | 一种资源调整方法、装置和系统 | |
CN111526031A (zh) | 一种业务虚拟网络功能vnf的扩缩容方法及设备 | |
CN104639415A (zh) | 一种虚拟机的迁移方法和软件定义网络sdn控制器 | |
WO2020259208A1 (zh) | 内存调度方法、装置、设备及存储介质 | |
CN112703774A (zh) | 网络切片管理 | |
CN107800574B (zh) | 存储qos调节方法、系统、设备及计算机可读存储器 | |
CN111064666B (zh) | 组网方法及装置 | |
TW201627873A (zh) | 用於在分散式計算中處理重發請求的方法與設備 | |
WO2024088079A1 (zh) | 请求处理方法以及系统 | |
CN109739513B (zh) | 一种多边缘云下服务请求动态调度方法及装置 | |
CN112291326B (zh) | 负载均衡方法、负载均衡装置、存储介质与电子设备 | |
WO2022142515A1 (zh) | 管理实例的方法、装置以及云应用引擎 | |
CN107301092A (zh) | 一种云计算资源池系统节能方法、装置及系统 | |
CN115190180A (zh) | 在网络资源请求骤增时的网络资源请求调度方法和装置 | |
CN113986454A (zh) | 一种云平台的虚拟机cpu资源管理系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23845650 Country of ref document: EP Kind code of ref document: A1 |