Elastic scaling method based on cloud management platform and cloud management platform
By introducing the function of tenants' custom elastic scaling formulas in the cloud service system, the problem that elastic scaling strategy in the existing technology is a black box for tenants, and the tenant's trust in the cloud service system and the reliability of the system are improved.
Patent Information
- Application Number
- CN202410032231.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-09-20
- Filing Date
- 2024-01-09
- Publication Date
- 2025-03-21
AI Technical Summary
The elastic scaling strategy in the existing cloud service system is a black box for tenants, which makes it impossible for tenants to know how the cloud management platform adjusts the capacity of the scaling group, reducing tenants' trust in the cloud service system and the reliability of the system.
Provides an elastic scaling method based on a cloud management platform, allowing tenants to send customized elastic scaling formulas through the network interface. The cloud management platform calculates the target capacity of the scaling group based on this formula and makes corresponding adjustments.
By allowing tenants to customize elastic scaling formulas, the adjustment process of the cloud management platform becomes transparent, improving tenants' trust in the cloud service system and system reliability.
Smart Images

Figure CN119676241A_ABST
Abstract
Description
[0001] This application claims the priority of the Chinese patent application filed with the State Intellectual Property Office on September 20, 2023, with application number 202311224341.2 and application name “A Capacity Determination Method Based on Cloud Management Platform and Cloud Management Platform”, all contents of which are incorporated by reference in this application. Technical Field
[0002] The embodiments of the present application relate to the field of cloud technology, and in particular to an elastic scaling method based on a cloud management platform and a cloud management platform. Background Art
[0003] Auto scaling (AS) technology is one of the cornerstones of cloud service systems. This technology can increase or decrease the number of cloud resources that provide cloud services to tenants according to certain strategies, in the hope of controlling the operating costs of the cloud service system by controlling the number of cloud resources while meeting the business needs of tenants.
[0004] The cloud service system in the related art includes a cloud management platform and a scaling group created by the cloud management platform for a tenant. The scaling group usually includes a cloud instance created by the cloud management platform for the tenant. When the scaling group is running the tenant's application, the cloud management platform can determine the target capacity of the scaling group based on the capacity of the scaling group and the preset elastic scaling policy. Then, the cloud management platform can adjust the number of cloud instances in the scaling group until the adjusted capacity of the scaling group is equal to the target capacity.
[0005] In the above process, the elastic scaling policy is a black box for users, that is, users cannot determine how the cloud management platform obtains the target capacity of the scaling group, that is, tenants cannot know the reasons for the adjustments made by the cloud management platform on the scaling group, resulting in reduced trust in the entire cloud service system by tenants, that is, the reliability of the entire cloud service system is low. Summary of the invention
[0006] The embodiments of the present application provide an elastic scaling method based on a cloud management platform and a cloud management platform, which can improve tenants' trust in the entire cloud service system, that is, improve the reliability of the entire cloud service system.
[0007] A first aspect of an embodiment of the present application provides an elastic scaling method based on a cloud management platform, where the cloud management platform is used to manage an infrastructure that provides cloud services, where a scaling group of a tenant is set in the infrastructure, and the method includes:
[0008] When a tenant needs to use the cloud management platform to automatically elastically scale a tenant's exclusive scaling group, the cloud management platform can provide a network interface to the tenant, so that the tenant can send the elastic scaling formula formulated by the tenant for its exclusive scaling group to the network interface, so that the cloud management platform receives the elastic scaling formula formulated by the tenant for its exclusive scaling group sent by the tenant through the network interface. The elastic scaling formula can include variables for indicating the current load of the scaling group, the target load indicator of the scaling group, and an operation symbol between the two.
[0009] After obtaining the elastic scaling formula that the tenant has formulated for its scaling group, the cloud management platform can collect information about the scaling group to obtain the current load index of the scaling group, and substitute the current load index of the scaling group into the variable used to indicate the current load index in the elastic scaling formula to obtain the target capacity of the scaling group. After obtaining the target capacity of the scaling group, the cloud management platform can adjust the number of cloud instances included in the scaling group until the adjusted capacity of the scaling group matches the target capacity of the scaling group.
[0010] It can be seen from the above method that when a tenant needs to complete elastic scaling for its scaling group, the cloud management platform can provide a network interface to the tenant to receive the elastic scaling formula for the scaling group input by the tenant through the network interface. The elastic scaling formula includes a variable for indicating the current load of the scaling group, a target load index of the scaling group, and an operation symbol. The variable for indicating the current load of the scaling group, the target load index of the scaling group, and the operation symbol are used to determine the target capacity of the scaling group. Then, the cloud management platform can obtain the current load index of the scaling group and substitute it into the variable for indicating the current load of the scaling group in the elastic scaling formula to obtain the target capacity of the scaling group. Finally, the cloud management platform can adjust the number of cloud instances contained in the scaling group until the adjusted scaling group capacity matches the target capacity of the scaling group. At this point, the cloud management platform can automatically complete the elastic scaling of the tenant's scaling group based on the elastic scaling formula formulated by the tenant. In the above process, the elastic scaling formula is formulated by the tenant for its scaling group, that is, the content of the elastic scaling formula is set by the tenant, so the cloud management platform determines the target capacity of the scaling group based on the content of the elastic scaling formula. This process is determinable for the tenant, that is, the tenant can know why and how the cloud management platform automatically elastically scales the scaling group. The elastic scaling operations performed by the cloud management platform on the scaling group have a certain degree of explainability, which can improve the tenant's trust in the entire cloud service system, which is equivalent to improving the reliability of the entire cloud service system.
[0011] In one possible implementation, the elastic scaling formula of the scaling group includes an expansion formula, and the target capacity of the scaling group is greater than the current capacity of the scaling group. In the above-mentioned method, when the elastic scaling formula is an expansion formula, the target capacity of the scaling group obtained based on the elastic scaling formula is usually greater than the current capacity of the scaling group, that is, the ratio between the current capacity of the scaling group and the target capacity of the scaling group is less than one, indicating that the cloud management platform needs to expand the capacity of the scaling group, so the cloud management platform adds additional cloud instances to the scaling group to obtain an adjusted scaling group.
[0012] In one possible implementation, the elastic scaling formula of the scaling group includes a scaling-in formula, and the target capacity of the scaling group is smaller than the current capacity of the scaling group. In the aforementioned implementation, when the elastic scaling formula is an scaling-out formula, the target capacity of the scaling group obtained based on the elastic scaling formula is usually larger than the current capacity of the scaling group, that is, the ratio between the current capacity of the scaling group and the target capacity of the scaling group is less than one, indicating that the cloud management platform needs to expand the capacity of the scaling group, so the cloud management platform adds additional cloud instances to the scaling group to obtain an adjusted scaling group.
[0013] In one possible implementation, the cloud management platform obtains the current load indicator of the scaling group, substitutes the current load indicator into the variable, and confirms the target capacity of the scaling group according to the elastic scaling formula, including: the cloud management platform obtains the current load indicator of the scaling group, substitutes the current load indicator into the variable, and obtains the ratio between the current capacity of the scaling group and the target capacity of the scaling group; the cloud management platform calculates the current capacity of the scaling group and the ratio to obtain the target capacity of the scaling group. In the aforementioned implementation, the cloud management platform can collect information on the scaling group to obtain the current load indicator of the scaling group, substitute the current load indicator of the scaling group into the variable used to indicate the current load indicator in the elastic scaling formula, and according to the elastic scaling formula, obtain the ratio between the current capacity of the scaling group and the target capacity of the scaling group. Then, the cloud management platform can calculate the current capacity of the scaling group and the ratio between the current capacity of the scaling group and the target capacity of the scaling group to obtain the target capacity of the scaling group.
[0014] In a possible implementation, the current load indicator includes at least one of the following: current usage rate of computing resources of cloud instances in the scaling group, current usage rate of storage resources of cloud instances in the scaling group, current usage rate of communication resources of cloud instances in the scaling group, current request latency of cloud instances in the scaling group, and current number of requests of cloud instances in the scaling group; the target load indicator of the scaling group includes at least one of the following: target usage rate of computing resources of cloud instances in the scaling group, target usage rate of storage resources of cloud instances in the scaling group, target usage rate of communication resources of cloud instances in the scaling group, target request latency of cloud instances in the scaling group, and target number of requests of cloud instances in the scaling group.
[0015] In a possible implementation, the current capacity of the scaling group includes at least one of the following: the current total amount of computing resources of the cloud instances in the scaling group, the current total amount of storage resources of the cloud instances in the scaling group, and the current total amount of communication resources of the cloud instances in the scaling group; the target load of the scaling group includes at least one of the following: the target total amount of computing resources of the cloud instances in the scaling group, the target total amount of storage resources of the cloud instances in the scaling group, and the target total amount of communication resources of the cloud instances in the scaling group.
[0016] In a possible implementation, a cloud instance in a scaling group is any of the following: a physical server, a virtual machine, a micro virtual machine, a container, and a bare metal server.
[0017] A second aspect of an embodiment of the present application provides a cloud management platform, which is used to manage an infrastructure that provides cloud services. A tenant's scaling group is set in the infrastructure. The cloud management platform includes: a receiving module, which receives an elastic scaling formula for the scaling group input by the tenant through a network interface, the elastic scaling formula includes a variable for indicating the current load of the scaling group, a target load indicator of the scaling group, and an operation symbol, and the variable, the target load indicator of the scaling group, and the operation symbol are used to determine the target capacity of the scaling group; an acquisition module, which is used to acquire the current load indicator of the scaling group, substitute the current load indicator into the variable, and confirm the target capacity of the scaling group according to the elastic scaling formula; an adjustment module, which is used to adjust the scaling group according to the target capacity, and the capacity of the adjusted scaling group matches the target capacity.
[0018] In a possible implementation, the elastic scaling formula of the scaling group includes a capacity expansion formula, and the target capacity of the scaling group is greater than the current capacity of the scaling group.
[0019] In a possible implementation, the elastic scaling formula of the scaling group includes a shrinking formula, and the target capacity of the scaling group is smaller than the current capacity of the scaling group.
[0020] In one possible implementation, the acquisition module is used to: obtain the current load indicator of the scaling group, substitute the current load indicator into the variable, and obtain the ratio between the current capacity of the scaling group and the target capacity of the scaling group; calculate the current capacity of the scaling group and the ratio to obtain the target capacity of the scaling group.
[0021] In a possible implementation, the current load indicator includes at least one of the following: current usage rate of computing resources of cloud instances in the scaling group, current usage rate of storage resources of cloud instances in the scaling group, current usage rate of communication resources of cloud instances in the scaling group, current request latency of cloud instances in the scaling group, and current number of requests of cloud instances in the scaling group; the target load indicator of the scaling group includes at least one of the following: target usage rate of computing resources of cloud instances in the scaling group, target usage rate of storage resources of cloud instances in the scaling group, target usage rate of communication resources of cloud instances in the scaling group, target request latency of cloud instances in the scaling group, and target number of requests of cloud instances in the scaling group.
[0022] In a possible implementation, the current capacity of the scaling group includes at least one of the following: the current total amount of computing resources of the cloud instances in the scaling group, the current total amount of storage resources of the cloud instances in the scaling group, and the current total amount of communication resources of the cloud instances in the scaling group; the target load of the scaling group includes at least one of the following: the target total amount of computing resources of the cloud instances in the scaling group, the target total amount of storage resources of the cloud instances in the scaling group, and the target total amount of communication resources of the cloud instances in the scaling group.
[0023] In a possible implementation, a cloud instance in a scaling group is any of the following: a physical server, a virtual machine, a micro virtual machine, a container, and a bare metal server.
[0024] A third aspect of an embodiment of the present application provides a computing device cluster, the computing device cluster includes at least one computing device, each computing device includes a processor and a memory: the memory is used to store instructions; the processor is used to enable the computing device cluster to execute the method described in the first aspect or any possible implementation method of the first aspect according to the instructions.
[0025] A fourth aspect of an embodiment of the present application provides a computer storage medium, which stores one or more instructions. When the instructions are executed by one or more computers, the one or more computers implement the method described in the first aspect or any possible implementation method of the first aspect.
[0026] A fifth aspect of the embodiments of the present application provides a computer program product, which stores instructions. When the instructions are executed by a computer, the computer implements the method described in the first aspect or any possible implementation method of the first aspect.
[0027] In an embodiment of the present application, when a tenant needs to complete elastic scaling for its scaling group, the cloud management platform can provide a network interface to the tenant to receive the elastic scaling formula for the scaling group input by the tenant through the network interface. The elastic scaling formula includes a variable for indicating the current load of the scaling group, a target load indicator of the scaling group, and an operation symbol. The variable for indicating the current load of the scaling group, the target load indicator of the scaling group, and the operation symbol are used to determine the target capacity of the scaling group. Then, the cloud management platform can obtain the current load indicator of the scaling group and substitute it into the variable for indicating the current load of the scaling group in the elastic scaling formula to obtain the target capacity of the scaling group. Finally, the cloud management platform can adjust the number of cloud instances included in the scaling group until the adjusted scaling group capacity matches the target capacity of the scaling group. At this point, the cloud management platform can automatically complete the elastic scaling of the tenant's scaling group based on the elastic scaling formula formulated by the tenant. In the above process, the elastic scaling formula is formulated by the tenant for its scaling group, that is, the content of the elastic scaling formula is set by the tenant, so the cloud management platform determines the target capacity of the scaling group based on the content of the elastic scaling formula. This process is determinable for the tenant, that is, the tenant can know why and how the cloud management platform automatically elastically scales the scaling group. The elastic scaling operations performed by the cloud management platform on the scaling group have a certain degree of explainability, which can improve the tenant's trust in the entire cloud service system, which is equivalent to improving the reliability of the entire cloud service system. BRIEF DESCRIPTION OF THE DRAWINGS
[0028] Figure 1 A schematic diagram of the structure of a cloud service system provided in an embodiment of the present application;
[0029] Figure 2 A schematic diagram of a flow chart of an elastic scaling method based on a cloud management platform provided in an embodiment of the present application;
[0030] Figure 3 A schematic diagram of a tenant interface provided in an embodiment of the present application;
[0031] Figure 4 Another schematic diagram of a tenant interface provided in an embodiment of the present application;
[0032] Figure 5 A schematic diagram of expansion and contraction provided in an embodiment of the present application;
[0033] Figure 6 Another schematic diagram of a process for elastic scaling based on a cloud management platform provided in an embodiment of the present application;
[0034] Figure 7 Another schematic diagram of a process for elastic scaling based on a cloud management platform provided in an embodiment of the present application;
[0035] Figure 8 A schematic diagram of the structure of the cloud management platform provided in the embodiment of the present application;
[0036] Fig. 9 A schematic diagram of a structure of a computing device provided in an embodiment of the present application;
[0037] Fig.10 A schematic diagram of the structure of a computing device cluster provided in an embodiment of the present application;
[0038] Fig.11 A schematic diagram of computer devices in a computer cluster provided in an embodiment of the present application being connected via a network. DETAILED DESCRIPTION
[0039] The embodiments of the present application provide an elastic scaling method based on a cloud management platform and a cloud management platform, which can improve tenants' trust in the entire cloud service system, that is, improve the reliability of the entire cloud service system.
[0040] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and need not be used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, which is only to describe the distinction mode adopted by the objects of the same attributes when describing in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.
[0041] Elastic scaling technology is one of the cornerstones of cloud service systems. This technology can increase or decrease the number of cloud resources that provide cloud services to tenants according to certain strategies, in the hope of controlling the operating costs of the cloud service system by controlling the number of cloud resources while meeting the business needs of tenants.
[0042] The cloud service system in the related art includes a cloud management platform and a scaling group created by the cloud management platform for tenants. The scaling group usually includes cloud instances created by the cloud management platform for tenants. When the scaling group is running the tenant's application, the cloud management platform can determine the target capacity of the scaling group based on the capacity of the scaling group and the preset elastic scaling policy. Then, the cloud management platform can adjust the number of cloud instances in the scaling group until the capacity of the adjusted scaling group is equal to the target capacity. For example, suppose that the preset elastic scaling policy includes a maximum capacity and a minimum capacity. After determining that the capacity of the scaling group is outside the interval formed by the maximum capacity and the minimum capacity, the cloud management platform can take a capacity in the interval as the target capacity, and increase or decrease the cloud instances in the scaling group so that the capacity of the adjusted scaling group is equal to the target capacity.
[0043] In the above process, the elastic scaling policy is a black box for users, that is, users cannot determine how the cloud management platform obtains the target capacity of the scaling group, that is, tenants cannot know the reasons for the adjustments made by the cloud management platform on the scaling group, resulting in reduced trust in the entire cloud service system by tenants, that is, the reliability of the entire cloud service system is low.
[0044] In order to solve the above problems, the embodiment of the present application provides an elastic scaling method based on a cloud management platform, which can be implemented through a cloud service system. Figure 1 A schematic diagram of the structure of the cloud service system provided in the embodiment of the present application is as follows: Figure 1 As shown in the figure, the cloud service system includes the infrastructure that can provide cloud services and the cloud management platform that manages these infrastructures. The cloud management platform and infrastructure are introduced separately below:
[0045] The cloud management platform can coordinate and manage all cloud instances in the entire cloud service system (for example, the cloud management platform can create a dedicated scaling group for the tenant, and the cloud instances contained in the scaling group are used to run the tenant's application. For another example, the cloud management platform can also adjust the number of cloud instances contained in the tenant's scaling group, and obtain the adjusted scaling group, etc.), and can also be open to tenants outside the system and respond to their requests. For example, the cloud management platform can provide various interfaces such as login interface and network interface for access by the tenant's client (for example, the terminal device used by the tenant or the browser on the terminal device, etc.). Among them, the cloud management platform can authenticate the tenant's client through the login interface, and after the identity authentication is successful, the tenant's client can be allowed to log in to the cloud management platform. For another example, the cloud management platform can also send the preset template to the tenant's client through the network interface, so the tenant's client can display the preset template to the tenant for viewing and use, so that the tenant can formulate an elastic scaling policy for its exclusive scaling group on its client, and send the elastic scaling policy to the cloud management platform through the network interface. For example, the cloud management platform can also allow tenants to send the elastic scaling formula (that is, elastic scaling strategy) formulated by the tenant for their exclusive scaling group to the cloud management platform through the client through the network interface. Since the elastic scaling formula contains variables used to indicate the current load of the scaling group, the target load index of the scaling group, and the operation symbol between the two, the cloud management platform can obtain the current load index of the scaling group and substitute it into the elastic scaling formula to determine the target capacity of the scaling group. In this way, the cloud management platform can adjust the number of cloud instances in the scaling group until the adjusted capacity of the scaling group matches the target capacity.
[0046] The infrastructure includes a scaling group created by the cloud management platform for tenants, and the scaling group may include one or more cloud instances. It should be noted that for any cloud instance in the scaling group, the cloud instance may be presented in a variety of ways, for example, the cloud instance may be a physical server specified by the cloud management platform, or a virtual machine (VM) created by the cloud management platform on a physical server through virtualization technology, or a container (docker) created by the cloud management platform on a physical server through virtualization technology, or a micro virtual machine (microVM) created by the cloud management platform on a physical server through virtualization technology, or a container (docker) created by the cloud management platform on a physical server through virtualization technology, or a bare metal server specified by the cloud management platform, etc.
[0047] Furthermore, if the tenant's scaling group contains multiple cloud instances, these multiple cloud instances can be set up at one or more sites. The sites can be presented in various forms. For example, one or more sites can be multiple regions in the infrastructure. For another example, one or more sites can be multiple availability zones in the infrastructure. For another example, one or more sites can be at least one edge site and at least one central cloud site in the infrastructure, and so on.
[0048] It should be noted that in the embodiment of the present application, the tenant can send the elastic scaling formula formulated for the scaling group to the cloud management platform, so that the cloud management platform calculates the target capacity of the scaling group based on the elastic scaling formula, and then adjusts the tenant's scaling group based on the target capacity to obtain the adjusted scaling group. It can be seen that in this case, the target capacity of the scaling group is calculated by the cloud management platform. If the tenant wants to protect its data security, the tenant (the client) or the tenant's cloud instance can also calculate the target capacity of the scaling group based on the elastic scaling formula, and then return the target capacity to the cloud management platform, so that the tenant's scaling group is adjusted based on the target capacity to obtain the adjusted scaling group. It can be seen that in these two cases, the target capacity of the scaling group is no longer calculated by the cloud management platform, so the cloud management platform does not need to obtain the elastic scaling policy formulated by the tenant, which is conducive to ensuring the data security of the tenant.
[0049] It can be seen that there are three situations in the method provided in the embodiment of the present application. The following mainly introduces the first situation. Figure 2 A flow chart of an elastic scaling method based on a cloud management platform provided in an embodiment of the present application is as follows: Figure 2 As shown, this method can be achieved by Figure 1 The cloud management platform in the cloud service system shown is implemented, and the cloud management platform is used to manage the infrastructure that provides cloud services. The infrastructure includes a scaling group created by the cloud management platform for a tenant. The scaling group includes one or more cloud instances for running the tenant's application. The method includes:
[0050] 201. The cloud management platform receives an elastic scaling formula for a scaling group input by a tenant through a network interface. The elastic scaling formula includes a variable for indicating a current load of the scaling group, a target load indicator of the scaling group, and an operation symbol. The variable, the target load indicator of the scaling group, and the operation symbol are used to determine a target capacity of the scaling group.
[0051] In this embodiment, when the tenant needs to use the cloud management platform to automatically elastically scale the tenant's exclusive scaling group, the cloud management platform can provide a network interface to the tenant's client (for example, the elastic scaling policy input field and template display window of the tenant interface, etc.), so the tenant can send the elastic scaling formula formulated by the tenant for its exclusive scaling group to the network interface through the client, so that the cloud management platform receives the elastic scaling formula formulated by the tenant for its exclusive scaling group sent by the tenant's client through the network interface.
[0052] It should be noted that the initial elastic scaling formula formulated by the tenant for its exclusive scaling group may also include variables for indicating the current load of the scaling group, variables for indicating the target load of the scaling group, and an operation symbol between the two, etc. Since the target load indicator of the scaling group is usually also formulated by the tenant, the tenant can directly substitute the target load indicator of the scaling group into the initial elastic scaling formula to obtain the elastic scaling formula formulated by the tenant for its exclusive scaling group. The elastic scaling formula may include variables for indicating the current load of the scaling group, the target load indicator of the scaling group, and an operation symbol between the two, etc.
[0053] The current load indicator of the scaling group may include one or more of the current usage rate of computing resources (e.g., central processing unit, graphics processing unit, etc.) of all cloud instances in the scaling group, the current usage rate of storage resources (e.g., memory, hard disk, etc.) of all cloud instances in the scaling group, the current usage rate of communication resources (e.g., network bandwidth, etc.) of all cloud instances in the scaling group, the current request latency of all cloud instances in the scaling group, the current number of requests of all cloud instances in the scaling group, etc. Similarly, the target load indicator of the scaling group may include one or more of the target usage rate of computing resources of all cloud instances in the scaling group, the target usage rate of storage resources of all cloud instances in the scaling group, the target usage rate of communication resources of all cloud instances in the scaling group, the target request latency of all cloud instances in the scaling group, the target number of requests of all cloud instances in the scaling group, etc.
[0054] For example, Figure 3 As shown ( Figure 3 ) is a schematic diagram of a tenant interface provided in an embodiment of the present application. When a tenant needs to formulate an elastic shrinking strategy for its scaling group, the tenant can first log in to the cloud management platform and enter the following initial elastic shrinking formula formulated by the tenant for its scaling group in the elastic shrinking formula input field of the tenant interface provided by the cloud management platform:
[0055]
[0056] Based on the initial elastic scaling formula customized by the tenant, it can be known that the tenant hopes that the cloud management platform will complete the capacity adjustment according to exponential changes when expanding and shrinking the scaling group. In addition, the tenant defines an initial elastic scaling formula in the elastic scaling formula, which contains the variables "current" and "target". "Current" represents the current load of the scaling group, and "target" represents the target load of the scaling group. The elastic scaling formula contains operation symbols such as multiplication "*", division " / " and "sqrt". If the tenant also customizes the target load indicator of the scaling group to 60%, the tenant can replace "target" with 60% to obtain the final elastic scaling formula. In this way, the cloud management platform can receive the final elastic scaling formula formulated by the tenant for its scaling group through the elastic scaling formula input bar.
[0057] Specifically, before sending the elastic scaling formula to the cloud management platform, the tenant can customize the elastic scaling formula in the following ways:
[0058] When a tenant needs to formulate an elastic scaling formula for its scaling group, the cloud management platform can provide a network interface to the tenant's client, and the network interface can display preset formula templates to the tenant, which can contain multiple preset variables and multiple preset operation symbols. After browsing these formula templates, the tenant can select certain variables (variables used to indicate the current load of the scaling group and variables used to indicate the target load of the scaling group, etc.), certain operation symbols and / or certain operation functions from the preset multiple variables and multiple operation symbols to build a mathematical relationship between these variables to generate the initial elastic scaling formula customized by the tenant for the scaling group. In addition, the tenant can also customize the target load index of the scaling group, and substitute the target load index of the scaling group into the variable used to indicate the target load of the scaling group in the initial elastic scaling formula to obtain the elastic scaling formula customized by the tenant for the scaling group, and send the elastic scaling formula customized by the tenant for the scaling group to the cloud management platform through the network interface.
[0059] It should be noted that the preset multiple variables and multiple operation symbols can be set in advance by the tenant or by the administrator of the cloud management platform, and there is no restriction here. Regardless of whether it is set by the tenant or the administrator, these multiple variables and multiple operation symbols are set according to certain rules agreed upon by the tenant and the administrator, so the tenant's client and the cloud management platform can both recognize and transmit these multiple variables and multiple operation symbols.
[0060] For example, Figure 4 As shown ( Figure 4 Another schematic diagram of a tenant interface provided in an embodiment of the present application, Figure 4 is Figure 3), after the tenant logs in to the cloud management platform, the cloud management platform can provide the tenant with a template display window of the tenant interface. The template display window displays multiple preset variables such as "current" and "target", and also displays multiple preset operation symbols such as "+", "-", "*", " / ", "sum" and "sqrt". After browsing the content displayed in the template display window, the tenant can select from them and input the selected "current", "target", "*", " / " and "sqrt" into the elastic scaling formula input bar to edit it into the initial elastic scaling formula formulated by the tenant for its scaling group, and substitute the target load indicator of the scaling group to obtain the final elastic scaling formula formulated by the tenant for its scaling group. In this way, the cloud management platform can receive the final elastic scaling formula formulated by the tenant for its scaling group through the elastic scaling formula input bar.
[0061] It should be understood that the usage rate involved in this embodiment can be understood as the usage rate at the current moment or the usage rate at a certain moment in the future, etc. The target usage rate involved in this embodiment can be understood as the maximum usage rate set by the tenant, etc. Similarly, the request delay involved in this embodiment can be understood as the request delay at the current moment or the request delay at a certain moment in the future, etc., and the target request delay involved in this embodiment can be understood as the maximum request delay set by the tenant, etc. Similarly, the number of requests involved in this embodiment can be understood as the request delay at the current moment or the number of requests at a certain moment in the future, etc., and the target number of requests involved in this embodiment can be understood as the maximum number of requests set by the tenant, etc.
[0062] It should also be understood that in this embodiment, Figure 3 The example shown schematically introduces that the formula in the elastic scaling formula includes parameters, operation symbols and operation functions. In actual applications, the formula in the elastic scaling formula may also only include parameters and operation symbols, or the formula in the elastic scaling formula may also only include parameters and operation functions, etc., which is not limited here.
[0063] 202. The cloud management platform obtains the current load index of the scaling group, substitutes the current load index into the variable, and determines the target capacity of the scaling group according to the elastic scaling formula.
[0064] After obtaining the elastic scaling formula formulated by the tenant for its scaling group, the cloud management platform can collect information on the scaling group to obtain the current load index of the scaling group, and substitute the current load index of the scaling group into the variable used to indicate the current load index in the elastic scaling formula to obtain the target capacity of the scaling group. Generally, when the elastic scaling formula is an expansion formula, the target capacity of the scaling group obtained based on the elastic scaling formula is usually greater than the current capacity of the scaling group, and when the elastic scaling formula is a reduction formula, the target capacity of the scaling group obtained based on the elastic scaling formula is usually less than the current capacity of the scaling group.
[0065] The current capacity of the scaling group may include one or more of the current total amount of computing resources of all cloud instances in the scaling group, the current total amount of storage resources of all cloud instances in the scaling group, and the current total amount of communication resources of all cloud instances in the scaling group. Similarly, the target load of the scaling group may include one or more of the target total amount of computing resources of all cloud instances in the scaling group, the target total amount of storage resources of all cloud instances in the scaling group, and the target total amount of communication resources of all cloud instances in the scaling group.
[0066] Specifically, the cloud management platform can obtain the target capacity of the scaling group in the following ways:
[0067] The cloud management platform can obtain the current load index of the scaling group, substitute the current load index of the scaling group into the variable indicating the current load index in the elastic scaling formula, and obtain the ratio between the current capacity of the scaling group and the target capacity of the scaling group according to the elastic scaling formula. Then, the cloud management platform can calculate the current capacity of the scaling group and the ratio between the current capacity of the scaling group and the target capacity of the scaling group to obtain the target capacity of the scaling group.
[0068] Still as in the above example, suppose there are 4 cloud instances in the scaling group, and the capacity of 1 cloud instance is regarded as 1, so the current capacity of the scaling group is 4. The current load of the scaling group is 90%, and the target load of the scaling group is 60%. According to the elastic scaling formula formulated by the tenant, the cloud management platform can perform the following calculation: (90% / 60%)*(90% / 60%)=2.25. At this time, 2.25 can be regarded as the ratio between the target capacity of the scaling group and the current capacity of the scaling group. After obtaining that the ratio between the target capacity of the scaling group and the current capacity of the scaling group is 2.25, the cloud management platform can perform the following calculation: 2.25*4=9. At this time, the cloud management platform can determine that the target capacity of the scaling group is 9.
[0069] It should be understood that the current capacity involved in this embodiment can be understood as the capacity at the current moment, and the target capacity involved in this embodiment can be understood as the ideal capacity obtained by the cloud management platform according to the needs of the tenants.
[0070] 203. The cloud management platform adjusts the scaling group according to the target capacity, and the capacity of the adjusted scaling group matches the target capacity.
[0071] After obtaining the target capacity of the scaling group, the cloud management platform can adjust the number of cloud instances included in the scaling group until the capacity of the adjusted scaling group matches the target capacity of the scaling group. Generally, if the ratio between the current capacity of the scaling group and the target capacity of the scaling group is less than one, it means that the cloud management platform needs to expand the scaling group, and the cloud management platform adds additional cloud instances to the scaling group to obtain the adjusted scaling group. If the ratio between the current capacity of the scaling group and the target capacity of the scaling group is greater than one, it means that the cloud management platform needs to reduce the capacity of the scaling group, and the cloud management platform reduces some cloud instances in the scaling group to obtain the adjusted scaling group. At this point, the cloud management platform automatically completes the elastic scaling of the tenant's scaling group based on the elastic scaling formula formulated by the tenant (that is, expansion and contraction, because the cloud instances of the adjusted scaling group are increased or decreased relative to the cloud instances of the original scaling group, the capacity of the adjusted scaling group is also increased or decreased accordingly relative to the capacity of the original scaling group).
[0072] For example, Figure 5 As shown ( Figure 5 A schematic diagram of expansion and contraction provided in an embodiment of the present application, Figure 5 is Figure 4 ), after obtaining the target capacity of the scaling group as 9, the cloud management platform can create 5 additional cloud instances for the scaling group of the tenant. At this time, the adjusted scaling group contains 9 cloud instances, and the current capacity of the adjusted scaling group is 9, reaching the target capacity.
[0073] It should be understood that in this embodiment, the cloud management platform is only used as a tenant for schematic introduction, and does not limit the specific type of the object. In actual applications, the cloud management platform can also be the internal system of the cloud vendor (for example, the staff of the cloud vendor, etc.), etc., which is not limited here.
[0074] In an embodiment of the present application, when a tenant needs to complete elastic scaling for its scaling group, the cloud management platform can provide a network interface to the tenant to receive the elastic scaling formula for the scaling group input by the tenant through the network interface. The elastic scaling formula includes a variable for indicating the current load of the scaling group, a target load indicator of the scaling group, and an operation symbol. The variable for indicating the current load of the scaling group, the target load indicator of the scaling group, and the operation symbol are used to determine the target capacity of the scaling group. Then, the cloud management platform can obtain the current load indicator of the scaling group and substitute it into the variable for indicating the current load of the scaling group in the elastic scaling formula to obtain the target capacity of the scaling group. Finally, the cloud management platform can adjust the number of cloud instances included in the scaling group until the adjusted scaling group capacity matches the target capacity of the scaling group. At this point, the cloud management platform can automatically complete the elastic scaling of the tenant's scaling group based on the elastic scaling formula formulated by the tenant. In the above process, the elastic scaling formula is formulated by the tenant for its scaling group, that is, the content of the elastic scaling formula is set by the tenant, so the cloud management platform determines the target capacity of the scaling group based on the content of the elastic scaling formula. This process is determinable for the tenant, that is, the tenant can know why and how the cloud management platform automatically elastically scales the scaling group. The elastic scaling operations performed by the cloud management platform on the scaling group have a certain degree of explainability, which can improve the tenant's trust in the entire cloud service system, which is equivalent to improving the reliability of the entire cloud service system.
[0075] Furthermore, in an embodiment of the present application, the cloud management platform provides a customized network interface for tenants. Tenants can customize exclusive elastic scaling formulas for their scaling groups according to their own requirements for service quality, so that the cloud management platform can adjust the capacity of the scaling group accordingly based on the content of the elastic scaling formula. In this way, the capacity of the adjusted scaling group can match the service quality expected by the tenant, thereby achieving an improvement in service quality.
[0076] The above is a detailed description of the first case of the method provided in the embodiment of the present application. The second case of the method provided in the embodiment of the present application will be introduced below. Figure 6 Another flowchart of the elastic scaling method based on the cloud management platform provided in the embodiment of the present application is as follows: Figure 6 As shown, this method can be achieved by Figure 1 The cloud management platform in the cloud service system shown is implemented, and the cloud management platform is used to manage the infrastructure that provides cloud services. The infrastructure includes a scaling group created by the cloud management platform for a tenant. The scaling group includes one or more cloud instances for running the tenant's application. The method includes:
[0077] 601. The cloud management platform sends the current load indicator and the current capacity of the scaling group to the tenant through the processing interface provided by the tenant.
[0078] 602. The cloud management platform receives the target capacity of the scaling group sent by the tenant through a processing interface. The target capacity is obtained by processing the current load index of the scaling group, the target load index of the scaling group, and the current capacity of the scaling group by the tenant based on a preset elastic scaling formula.
[0079] In this embodiment, when the tenant needs to use the cloud management platform to perform elastic scaling on its dedicated scaling group, the tenant can deploy the elastic scaling formula formulated by the tenant for the scaling group on its client and let the terminal provide a processing interface to the cloud management platform. The elastic scaling formula formulated by the tenant for the scaling group can be deployed in the tenant's client in the form of a plug-in, and the tenant's client is configured with a processing interface corresponding to the plug-in (for example, a representational state transfer (REST) interface, etc.), and the processing interface can be accessed by the cloud management platform.
[0080] Since the elastic scaling formula formulated by the tenant for the scaling group includes a variable for indicating the current load indicator of the scaling group, the target load indicator of the scaling group, and an operation symbol, the cloud management platform can send the current load indicator of the scaling group and the current capacity of the scaling group to the processing interface provided by the tenant's client, so that the tenant's client receives the current load indicator of the scaling group and the current capacity of the scaling group sent by the cloud management platform through the processing interface.
[0081] Then, the tenant's client can substitute the current load index of the scaling group into the variable indicating the current load index in the elastic scaling formula to obtain the target capacity of the scaling group, and send the target capacity of the scaling group to the cloud management platform through the processing interface.
[0082] It should be understood that in this embodiment, the introduction of the elastic scaling formula and the calculation process of the target capacity of the scaling group can be referred to Figure 2 The relevant description parts in the illustrated embodiment will not be repeated here.
[0083] 603. The cloud management platform adjusts the number of cloud instances included in the scaling group to obtain an adjusted scaling group, and the capacity of the adjusted scaling group matches the target capacity.
[0084] After obtaining the target capacity of the scaling group, the cloud management platform can adjust the number of cloud instances included in the scaling group until the adjusted capacity of the scaling group matches the target capacity of the scaling group. Generally, if the ratio between the current capacity of the scaling group and the target capacity of the scaling group is less than one, it means that the cloud management platform needs to expand the capacity of the scaling group, and the cloud management platform adds additional cloud instances to the scaling group to obtain the adjusted scaling group. If the ratio between the current capacity of the scaling group and the target capacity of the scaling group is greater than one, it means that the cloud management platform needs to reduce the capacity of the scaling group, and the cloud management platform reduces some cloud instances in the scaling group to obtain the adjusted scaling group. At this point, the cloud management platform automatically completes the elastic scaling of the tenant's scaling group based on the elastic scaling formula set by the tenant.
[0085] In the embodiment of the present application, the elastic scaling formula is formulated by the tenant for its scaling group, that is, the content of the elastic scaling formula is set by the tenant, so the tenant side can determine the target capacity of the scaling group based on the content of the elastic scaling formula after the cloud management platform provides the data of the scaling group required by the policy, and hand over the target capacity of the scaling group to the cloud management platform, so that the cloud management platform can complete the elastic scaling for the scaling group. In this process, the elastic scaling formula formulated by the tenant for the scaling group is always retained on the tenant side, and the cloud management platform will not obtain any information related to the elastic scaling formula. In this way, on the basis of completing the elastic scaling of the scaling group with the help of the cloud management platform, the confidentiality of the policy formulated by the tenant can also be effectively guaranteed.
[0086] The above is a detailed description of the second situation of the method provided in the embodiment of the present application. The third situation of the method provided in the embodiment of the present application will be introduced below. Figure 7 Another flowchart of the elastic scaling method based on the cloud management platform provided in the embodiment of the present application is as follows: Figure 7 As shown, this method can be achieved by Figure 1 The cloud management platform in the cloud service system shown is implemented, and the cloud management platform is used to manage the infrastructure that provides cloud services. The infrastructure includes a scaling group and a target cloud instance created by the cloud management platform for a tenant. The scaling group includes one or more cloud instances for running the tenant's application. The target cloud instance includes an elastic scaling formula and a processing interface formulated by the tenant for the scaling group. The method includes:
[0087] 701. The cloud management platform sends the current load indicator of the scaling group and the current capacity of the scaling group to the target cloud instance through the processing interface.
[0088] 702. The cloud management platform receives the target capacity of the scaling group sent by the target cloud instance through a processing interface. The target capacity is obtained by the target cloud instance processing the current load indicator of the scaling group, the target load indicator of the scaling group, and the current capacity of the scaling group based on a preset elastic scaling formula.
[0089] In this embodiment, when the tenant needs to use the cloud management platform to elastically scale its exclusive scaling group, the tenant can ask the cloud management platform to create an exclusive target cloud instance for it, and deploy the elastic scaling formula formulated by the tenant for the scaling group and the processing interface for the cloud management platform in the target cloud instance. Among them, the elastic scaling formula formulated by the tenant for the scaling group can be deployed in the target cloud instance in the form of a plug-in, and the target cloud instance is configured with a processing interface corresponding to the plug-in (for example, a REST interface, etc.), and the processing interface is accessible to the cloud management platform. Generally, the tenant's target cloud instance is isolated from the tenant's scaling group (for example, logical isolation or physical isolation, etc.).
[0090] Since the elastic scaling formula formulated by the tenant for the scaling group includes a variable for indicating the current load indicator of the scaling group, the target load indicator of the scaling group, and an operation symbol, the cloud management platform can send the current load indicator of the scaling group and the current capacity of the scaling group to the processing interface provided by the target cloud instance, so that the target cloud instance receives the current load indicator of the scaling group and the current capacity of the scaling group sent by the cloud management platform through the processing interface.
[0091] Then, the target cloud instance can substitute the current load index of the scaling group into the variable indicating the current load index in the elastic scaling formula to obtain the target capacity of the scaling group, and send the target capacity of the scaling group to the cloud management platform through the processing interface.
[0092] It should be understood that in this embodiment, the introduction of the elastic scaling formula and the calculation process of the target capacity of the scaling group can be referred to Figure 2 The relevant description parts in the illustrated embodiment will not be repeated here.
[0093] 703. The cloud management platform adjusts the number of cloud instances included in the scaling group to obtain an adjusted scaling group, and the capacity of the adjusted scaling group matches the target capacity.
[0094] After obtaining the target capacity of the scaling group, the cloud management platform can adjust the number of cloud instances included in the scaling group until the adjusted capacity of the scaling group matches the target capacity of the scaling group. Generally, if the ratio between the current capacity of the scaling group and the target capacity of the scaling group is less than one, it means that the cloud management platform needs to expand the capacity of the scaling group, and the cloud management platform adds additional cloud instances to the scaling group to obtain the adjusted scaling group. If the ratio between the current capacity of the scaling group and the target capacity of the scaling group is greater than one, it means that the cloud management platform needs to reduce the capacity of the scaling group, and the cloud management platform reduces some cloud instances in the scaling group to obtain the adjusted scaling group. At this point, the cloud management platform automatically completes the elastic scaling of the tenant's scaling group based on the elastic scaling formula set by the tenant.
[0095] In the embodiment of the present application, the elastic scaling formula is formulated by the tenant for its scaling group, that is, the content of the elastic scaling formula is set by the tenant, so the tenant's target cloud instance can determine the target capacity of the scaling group based on the content of the elastic scaling formula after the cloud management platform provides the data of the scaling group required by the policy, and hand over the target capacity of the scaling group to the cloud management platform, so that the cloud management platform can complete the elastic scaling for the scaling group. In this process, the elastic scaling formula formulated by the tenant for the scaling group is always retained in the tenant's target cloud instance, and the cloud management platform usually does not obtain any information related to the elastic scaling formula. In this way, on the basis of completing the elastic scaling of the scaling group with the help of the cloud management platform, the confidentiality of the policy formulated by the tenant can also be guaranteed to a certain extent.
[0096] The above is a detailed description of the elastic scaling method based on the cloud management platform provided in the embodiment of the present application. The cloud management platform provided in the embodiment of the present application will be introduced below. Figure 8 A schematic diagram of the structure of the cloud management platform provided in the embodiment of the present application is shown in FIG. Figure 8 As shown in the figure, the cloud management platform is used to manage the infrastructure that provides cloud services. The infrastructure includes the scaling groups of tenants. The cloud instances included in the scaling groups are used to run the tenants' applications. The cloud management platform includes:
[0097] The receiving module 801 receives an elastic scaling formula for a scaling group input by a tenant through a network interface. The elastic scaling formula includes a variable for indicating the current load of the scaling group, a target load index of the scaling group, and an operation symbol. The variable, the target load index of the scaling group, and the operation symbol are used to determine the target capacity of the scaling group. For example, the receiving module 801 is used to implement Figure 2 Step 201 in the illustrated embodiment.
[0098] The acquisition module 802 is used to obtain the current load index of the scaling group, substitute the current load index into the variable and determine the target capacity of the scaling group according to the elastic scaling formula; for example, the acquisition module 802 is used to implement Figure 2 Step 202 in the illustrated embodiment.
[0099] The adjustment module 803 is used to adjust the scaling group according to the target capacity, so that the capacity of the scaling group after adjustment matches the target capacity. Figure 2 Step 203 in the illustrated embodiment.
[0100] In a possible implementation, the elastic scaling formula of the scaling group includes a capacity expansion formula, and the target capacity of the scaling group is greater than the current capacity of the scaling group.
[0101] In a possible implementation, the elastic scaling formula of the scaling group includes a shrinking formula, and the target capacity of the scaling group is smaller than the current capacity of the scaling group.
[0102] In one possible implementation, the acquisition module is used to: obtain the current load indicator of the scaling group, substitute the current load indicator into the variable, and obtain the ratio between the current capacity of the scaling group and the target capacity of the scaling group; calculate the current capacity of the scaling group and the ratio to obtain the target capacity of the scaling group.
[0103] In a possible implementation, the current load indicator includes at least one of the following: current usage rate of computing resources of cloud instances in the scaling group, current usage rate of storage resources of cloud instances in the scaling group, current usage rate of communication resources of cloud instances in the scaling group, current request latency of cloud instances in the scaling group, and current number of requests of cloud instances in the scaling group; the target load indicator of the scaling group includes at least one of the following: target usage rate of computing resources of cloud instances in the scaling group, target usage rate of storage resources of cloud instances in the scaling group, target usage rate of communication resources of cloud instances in the scaling group, target request latency of cloud instances in the scaling group, and target number of requests of cloud instances in the scaling group.
[0104] In a possible implementation, the current capacity of the scaling group includes at least one of the following: the current total amount of computing resources of the cloud instances in the scaling group, the current total amount of storage resources of the cloud instances in the scaling group, and the current total amount of communication resources of the cloud instances in the scaling group; the target load of the scaling group includes at least one of the following: the target total amount of computing resources of the cloud instances in the scaling group, the target total amount of storage resources of the cloud instances in the scaling group, and the target total amount of communication resources of the cloud instances in the scaling group.
[0105] In a possible implementation, a cloud instance in a scaling group is any of the following: a physical server, a virtual machine, a micro virtual machine, a container, and a bare metal server.
[0106] It should be noted that the information interaction, implementation process, etc. between the modules / units of the above-mentioned device are based on the same concept as the method embodiment of the present application, and the technical effects they bring are the same as those of the method embodiment of the present application. For specific contents, please refer to the description in the method embodiment shown above in the embodiment of the present application, and will not be repeated here.
[0107] See also Fig. 9 , Fig. 9 A schematic diagram of a computing device provided in an embodiment of the present application. Fig. 9 As shown, the computing device 900 (which can be used to present the aforementioned cloud management platform) includes: a processor 901, a memory 902, a communication interface 903 and a bus 904. The processor 901, the memory 902 and the communication interface 903 are coupled via a bus (not marked in the figure). The memory 902 stores instructions. When the execution instructions in the memory 902 are executed, the computing device 900 executes the method executed by the cloud management platform in the above method embodiment.
[0108] The computing device 900 may be one or more integrated circuits configured to implement the above method, such as one or more application specific integrated circuits (ASIC), or one or more microprocessors (digital signal processors, DSP), or one or more field programmable gate arrays (FPGA), or a combination of at least two of these integrated circuit forms. For another example, when a unit in the device can be implemented in the form of a processing element scheduler, the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call a program. For another example, these units may be integrated together and implemented in the form of a system-on-a-chip (SOC).
[0109] The processor 901 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. A general-purpose processor may be a microprocessor or any conventional processor.
[0110] The memory 902 may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories. Among them, the nonvolatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0111] The memory 902 stores executable program codes, and the processor 901 executes the executable program codes to respectively implement the functions of the aforementioned receiving module, acquisition module, and adjustment module, thereby implementing the aforementioned elastic scaling method based on the cloud management platform. That is, the memory 902 stores instructions for executing the aforementioned elastic scaling method based on the cloud management platform.
[0112] The communication interface 903 uses a transceiver module such as, but not limited to, a network interface card or a transceiver to implement communication between the computing device 900 and other devices or a communication network.
[0113] In addition to the data bus, the bus 904 may also include a power bus, a control bus, a status signal bus, etc. The bus may be a peripheral component interconnect express (PCIe) bus, or an extended industry standard architecture (EISA) bus, a unified bus (Ubus or UB), a compute express link (CXL), a cache coherent interconnect for accelerators (CCIX), etc. The bus may be divided into an address bus, a data bus, a control bus, etc.
[0114] See also Fig.10 , Fig.10 A schematic diagram of the structure of a computing device cluster provided in an embodiment of the present application. Fig.10 As shown, the computing device cluster 1000 includes at least one computing device 900 .
[0115] like Fig.10 As shown, the computing device cluster 1000 includes at least one computing device 900. The memory 902 in one or more computing devices 900 in the computing device cluster 1000 may store the same instructions for executing the elastic scaling method based on the cloud management platform.
[0116] In some possible implementations, the memory 902 of one or more computing devices 900 in the computing device cluster 1000 may also respectively store some instructions for executing the elastic scaling method based on the cloud management platform. In other words, the combination of one or more computing devices 900 can jointly execute the elastic scaling method based on the cloud management platform.
[0117] It should be noted that the memory 902 in different computing devices 900 in the computing device cluster 1000 may store different instructions, which are respectively used to execute part of the functions of the above-mentioned cloud management platform. That is, the instructions stored in the memory 902 in different computing devices 900 may implement the functions of one or more modules of the receiving module, the obtaining module, and the adjusting module.
[0118] In some possible implementations, one or more computing devices 900 in the computing device cluster 1000 may be connected via a network, which may be a wide area network or a local area network.
[0119] See also Fig.11 , Fig.11 A schematic diagram of computer devices in a computer cluster provided in an embodiment of the present application being connected via a network. Fig.11 As shown, two computing devices 900A and 900B are connected via a network. Specifically, they are connected to the network via a communication interface in each computing device.
[0120] In a possible implementation, the memory in the computing device 900A stores instructions for executing the functions of the receiving module and other modules, and the memory in the computing device 900B stores instructions for executing the functions of the acquisition module and the adjustment module and other modules. Alternatively, the memory in the computing device 900A stores instructions for executing the functions of the receiving module and other modules, and the memory in the computing device 900B stores instructions for executing the functions of the adjustment module and other modules, which is not shown in the figure.
[0121] It should be understood that Fig.11 The functions of the computing device 900A shown in FIG. 1 may also be completed by multiple computing devices. Similarly, the functions of the computing device 900B may also be completed by multiple computing devices.
[0122] The embodiment of the present application also relates to a computer storage medium, in which a program for signal processing is stored. When the program is run on a computer, the computer executes the following steps: Figure 2 , Figure 6 or Figure 7 The steps performed by the cloud management platform in the illustrated embodiment.
[0123] The present application also relates to a computer program product, which stores instructions, which, when executed by a computer, enable the computer to execute the following Figure 2 , Figure 6 or Figure 7 The steps performed by the cloud management platform in the illustrated embodiment.
[0124] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0125] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0126] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0127] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0128] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), disk or optical disk and other media that can store program code.
Claims
1. An elastic scaling method based on a cloud management platform, characterized in that: The cloud management platform is used to manage an infrastructure that provides cloud services, wherein a scaling group of a tenant is provided in the infrastructure, and the method includes: The cloud management platform receives, through a network interface, an elastic scaling formula for the scaling group input by the tenant, where the elastic scaling formula includes a variable for indicating a current load of the scaling group, a target load index of the scaling group, and an operation symbol, and the variable, the target load index of the scaling group, and the operation symbol are used to determine a target capacity of the scaling group; The cloud management platform obtains a current load indicator of the scaling group, substitutes the current load indicator into the variable, and determines a target capacity of the scaling group according to the elastic scaling formula; The cloud management platform adjusts the scaling group according to the target capacity, so that the capacity of the adjusted scaling group matches the target capacity.
2. The method according to claim 1, characterized in that The elastic scaling formula of the scaling group includes a capacity expansion formula, and the target capacity of the scaling group is greater than the current capacity of the scaling group.
3. The method according to claim 1, characterized in that The elastic scaling formula of the scaling group includes a shrinking formula, and the target capacity of the scaling group is smaller than the current capacity of the scaling group.
4. The method according to any one of claims 1 to 3, characterized in that: The cloud management platform obtains the current load index of the scaling group, substitutes the current load index into the variable, and determines the target capacity of the scaling group according to the elastic scaling formula, including: The cloud management platform obtains a current load indicator of the scaling group, substitutes the current load indicator into the variable, and obtains a ratio between the current capacity of the scaling group and the target capacity of the scaling group; The cloud management platform calculates the current capacity of the scaling group and the ratio to obtain a target capacity of the scaling group.
5. The method according to any one of claims 1 to 4, characterized in that: The current load indicator includes at least one of the following: current usage rate of computing resources of the cloud instances in the scaling group, current usage rate of storage resources of the cloud instances in the scaling group, current usage rate of communication resources of the cloud instances in the scaling group, current request latency of the cloud instances in the scaling group, and current number of requests of the cloud instances in the scaling group; The target load indicator of the scaling group includes at least one of the following: a target utilization rate of computing resources of the cloud instances in the scaling group, a target utilization rate of storage resources of the cloud instances in the scaling group, a target utilization rate of communication resources of the cloud instances in the scaling group, a target request latency of the cloud instances in the scaling group, and a target number of requests for the cloud instances in the scaling group.
6. The method according to any one of claims 1 to 5, characterized in that: The current capacity of the scaling group includes at least one of the following: the current total amount of computing resources of the cloud instances in the scaling group, the current total amount of storage resources of the cloud instances in the scaling group, and the current total amount of communication resources of the cloud instances in the scaling group; The target load of the scaling group includes at least one of the following: a target total amount of computing resources of the cloud instances in the scaling group, a target total amount of storage resources of the cloud instances in the scaling group, and a target total amount of communication resources of the cloud instances in the scaling group.
7. The method according to any one of claims 1 to 6, characterized in that: The cloud instance in the scaling group is any of the following: a physical server, a virtual machine, a micro virtual machine, a container, and a bare metal server.
8. A cloud management platform, characterized in that: The cloud management platform is used to manage the infrastructure that provides cloud services, wherein the infrastructure is provided with a tenant's scaling group, and the cloud management platform includes: a receiving module, receiving, through a network interface, an elastic scaling formula for the scaling group input by the tenant, the elastic scaling formula including a variable for indicating a current load of the scaling group, a target load index of the scaling group, and an operation symbol, wherein the variable, the target load index of the scaling group, and the operation symbol are used to determine a target capacity of the scaling group; an acquisition module, configured to acquire a current load indicator of the scaling group, substitute the current load indicator into the variable, and determine a target capacity of the scaling group according to the elastic scaling formula; The adjustment module is configured to adjust the scaling group according to the target capacity, so that the capacity of the scaling group after adjustment matches the target capacity.
9. The cloud management platform according to claim 8, characterized in that: The elastic scaling formula of the scaling group includes a capacity expansion formula, and the target capacity of the scaling group is greater than the current capacity of the scaling group.
10. The cloud management platform according to claim 8, characterized in that: The elastic scaling formula of the scaling group includes a shrinking formula, and the target capacity of the scaling group is smaller than the current capacity of the scaling group.
11. The cloud management platform according to any one of claims 8 to 10, characterized in that: The acquisition module is used to: Obtaining a current load indicator of the scaling group, substituting the current load indicator into the variable, and obtaining a ratio of a current capacity of the scaling group to a target capacity of the scaling group; The current capacity of the scaling group and the ratio are calculated to obtain a target capacity of the scaling group.
12. The cloud management platform according to any one of claims 8 to 11, characterized in that: The current load indicator includes at least one of the following: current usage rate of computing resources of the cloud instances in the scaling group, current usage rate of storage resources of the cloud instances in the scaling group, current usage rate of communication resources of the cloud instances in the scaling group, current request latency of the cloud instances in the scaling group, and current number of requests of the cloud instances in the scaling group; The target load indicator of the scaling group includes at least one of the following: a target utilization rate of computing resources of the cloud instances in the scaling group, a target utilization rate of storage resources of the cloud instances in the scaling group, a target utilization rate of communication resources of the cloud instances in the scaling group, a target request latency of the cloud instances in the scaling group, and a target number of requests for the cloud instances in the scaling group.
13. The cloud management platform according to any one of claims 8 to 12, characterized in that: The current capacity of the scaling group includes at least one of the following: the current total amount of computing resources of the cloud instances in the scaling group, the current total amount of storage resources of the cloud instances in the scaling group, and the current total amount of communication resources of the cloud instances in the scaling group; The target load of the scaling group includes at least one of the following: a target total amount of computing resources of the cloud instances in the scaling group, a target total amount of storage resources of the cloud instances in the scaling group, and a target total amount of communication resources of the cloud instances in the scaling group.
14. The cloud management platform according to any one of claims 8 to 13, characterized in that: The cloud instance in the scaling group is any of the following: a physical server, a virtual machine, a micro virtual machine, a container, and a bare metal server.
15. A computing device cluster, characterized in that: The computing device cluster includes at least one computing device, each computing device including a processor and a memory: The memory is used to store instructions; The processor is configured to cause the computing device cluster to execute the method according to any one of claims 1 to 7 according to the instructions.
16. A computer storage medium, characterized in that: The computer storage medium stores one or more instructions, which, when executed by one or more computers, enable the one or more computers to implement the method of any one of claims 1 to 7.
17. A computer program product, characterized in that The computer program product stores instructions, and when the instructions are executed by a computer, the computer implements the method according to any one of claims 1 to 7.