Deployment method, system, and storage media for cloud service console based on dynamic programming
Patent Information
- Application Number
- CN202211681938.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-27
- Publication Date
- 2026-09-01
- Estimated Expiration
- 2042-12-27
AI Technical Summary
[0005]本发明所要解决的技术问题:目前云服务控制台部署时容易出现资源挤兑情况的问题
[0050]本发明的有益技术效果包括:通过建立目标函数与启动部署的云服务控制台的关系,结合了动态规划算法与高资源利用率的分配策略,能更加合理且快速的找出高资源利用率的最佳方案,进而推导出多个云服务控制台初始化的顺序,提高云服务控制台初始化的效率,同时减少因资源不足而导致云服务控制台初始化失败的次数,降低服务故障率。
Smart Images

Figure CN115941758B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of cloud computing technology, specifically to a cloud service console deployment method, system, and storage medium based on dynamic programming. Background Technology
[0002] In the field of cloud computing technology, a resource pool is the basic unit by which a platform isolates various machines and computing resources for different regions of a user. It can be divided into several resource pools according to actual scenarios, and the administrator of each resource pool can initialize multiple cloud service consoles. Dynamic programming is a method used in mathematics and computer science to solve complex problems by decomposing them into relatively simpler subproblems. The cloud service console is a platform for unified viewing and management of PaaS cloud products or services, and can be configured through graphical interfaces, Cloud Shell command-line tools, etc.
[0003] When deploying cloud service consoles in a resource pool, if multiple consoles are initialized simultaneously within a short period, the console initialization center will start multiple initialization threads. Console initialization involves media downloads and significant host resource consumption, which can easily lead to resource pool memory exhaustion and initialization center crashes, resulting in console deployment failure and system malfunctions. Therefore, it is necessary to study cloud service console deployment planning techniques.
[0004] Existing technology discloses a method for rapid deployment of multi-tenant services based on a cloud platform, including building an automated application deployment platform; building a basic PaaS platform; building an application development middleware platform; implementing stateless multi-tenant service application design based on the middleware platform; and an automatic and rapid deployment method for multi-tenant applications. This technical solution, based on existing PaaS platform application deployments, can dynamically and rapidly deploy multi-tenant applications in cloud-native multi-tenant application deployment scenarios by assessing the processing capacity of the application middleware platform, calculating the service capacity of the entire system, and adjusting the service levels of each module of the multi-tenant service. However, this technical solution cannot solve the problem of unreasonable deployment planning in current cloud service consoles. Summary of the Invention
[0005] The technical problem this invention aims to solve is the issue of resource congestion during the deployment of cloud service consoles. This invention proposes a dynamic programming-based cloud service console deployment method, system, and storage medium, which can effectively plan the deployment of cloud service consoles and avoid resource congestion in cloud service hardware.
[0006] To solve the above technical problems, the present invention adopts the following technical solution: a cloud service console deployment method based on dynamic programming, comprising the following steps:
[0007] Read the resources of the resource pool host to obtain the total number of available resources R;
[0008] Establish objective function Where w[i] represents the total amount of resources used when the i-th cloud service console is successfully deployed, selected[i] represents the deployment status of the i-th cloud service console, selected[i]=1 means the i-th cloud service is deployed, N is the number of cloud service consoles to be deployed, i∈[1,N];
[0009] Set constraints: ;
[0010] Using an optimization algorithm, obtain the combination of selected[i] values that maximize the objective function;
[0011] The deployment of the corresponding cloud service console is initiated based on the stated value combination;
[0012] If a cloud service console is successfully deployed, re-execute this method until there are no more cloud service consoles to be deployed.
[0013] As a preferred option, the total resources required for the successful deployment of the i-th cloud service. , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console, and t[i] is the time required to deploy the i-th cloud service console.
[0014] As a preferred method, the average resource consumption r[i] per unit time during the deployment of the i-th cloud service console includes:
[0015] The functional components of the cloud service console are used as the characteristic quantities of the cloud service console.
[0016] Read deployment data from the historical cloud service console;
[0017] Filter out deployment data from cloud service consoles with the same characteristic;
[0018] Calculate the average amount of resources used during the deployment of cloud service consoles with the same characteristic, and use it as the average amount of resources r[i] used per unit time during the deployment of the i-th cloud service console.
[0019] As a preferred method, the method for determining the time t[i] required to deploy the i-th cloud service console includes:
[0020] Read the deployment data from the historical cloud service console, which records the time required to complete the deployment of each function;
[0021] Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
[0022] Preferred methods for obtaining combinations of values that maximize the objective function include:
[0023] Randomly set the value of j, and divide all combinations of selected[i] into two categories based on selected[j]=1 and selected[j]=0, denoted as set P_j1 and set P_j0 respectively;
[0024] Find the combinations of values in sets P_j1 and P_j0 that maximize the objective function. Among these two combinations, the combination that maximizes the objective function is the final combination that maximizes the objective function.
[0025] As a preferred method, the methods for finding the combination of values in set P_j1 that maximizes the objective function include:
[0026] Subtract the amount of resources occupied by the j-th cloud service console from the total available resources R;
[0027] Then, the value of j is randomly set, and the set P_j1 is divided into two categories with selected[k]=1 and selected[k]=0, respectively denoted as set P_j1_k1 and set P_j1_k0;
[0028] Find the combinations of values in sets P_j1_k1 and P_j1_k0 that maximize the objective function. Among these two combinations, the combination that maximizes the objective function is taken as the combination of values in set P_j1 that maximizes the objective function.
[0029] Recursively execute the above steps until the classified set contains only one combination of values, and you will obtain the combination of values in set P_j1 that maximizes the objective function.
[0030] Preferably, the cloud service consoles to be deployed are associated with priorities, including high priority and low priority. The deployment status of high priority cloud service consoles is always set to 1. If the total number of available resources R is insufficient to deploy all the high priority cloud service consoles to be deployed, then the low priority cloud service consoles that have started but not yet completed are traversed, and the resources occupied by the low priority cloud service consoles that have started but not yet completed are released one by one, until the total number of available resources R is sufficient to deploy all the high priority cloud service consoles to be deployed.
[0031] A dynamic programming-based cloud service console deployment system is used to execute the aforementioned dynamic programming-based cloud service console deployment method. It includes a resource module, a scheduling module, and a monitoring module. The resource module establishes a mapping of host resources in the resource pool. The resource module is connected to the scheduling module. The scheduling module receives cloud service console deployment tasks and executes the deployment of the cloud service console. The monitoring module monitors the deployment status of the cloud service console. The steps of the scheduling module in deploying the cloud service console include:
[0032] The scheduling module reads the resources of the resource pool host through the resource module to obtain the total number of available resources R;
[0033] Establish objective function Where w[i] represents the total amount of resources used by the i-th cloud service console to be successfully deployed. , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console, t[i] is the time required to deploy the i-th cloud service console, selected[i] indicates the deployment status of the i-th cloud service console, selected[i]=1 indicates the deployment of the i-th cloud service, N is the number of cloud service consoles to be deployed, i∈[1,N];
[0034] Set constraints: ;
[0035] Using an optimization algorithm, obtain all combinations of selected[i] values that maximize the objective function;
[0036] The deployment of the corresponding cloud service console is initiated based on the stated value combination;
[0037] When a cloud service console is successfully deployed, the monitoring module notifies the scheduling module, which then re-executes the steps to deploy the cloud service console until there are no more cloud service consoles to be deployed.
[0038] Preferably, when the scheduling module determines the average resource usage r[i] per unit time during the deployment of the i-th cloud service console, it performs the following steps:
[0039] The functional components of the cloud service console are used as the characteristic quantities of the cloud service console.
[0040] Read deployment data from the historical cloud service console;
[0041] Filter out deployment data from cloud service consoles with the same characteristic;
[0042] Calculate the average amount of resources used during the deployment of cloud service consoles with the same characteristic, and use it as the average amount of resources r[i] used per unit time during the deployment of the i-th cloud service console.
[0043] Preferably, when the scheduling module determines the time t[i] required to deploy the i-th cloud service console, it performs the following steps:
[0044] Read the deployment data from the historical cloud service console, which records the time required to complete the deployment of each function;
[0045] Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
[0046] Preferably, when the scheduling module obtains the combination of values that maximizes the objective function, it performs the following steps:
[0047] Enumerate all possible combinations of selected[i] values, calculate the corresponding objective function value, and obtain the combination of selected[i] values that maximizes the objective function.
[0048] A computer system includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the aforementioned dynamic programming-based cloud service console deployment method.
[0049] A computer-readable storage medium storing a computer program that, when executed by a processor, implements the aforementioned dynamic programming-based cloud service console deployment method.
[0050] The beneficial technical effects of this invention include: by establishing the relationship between the objective function and the cloud service console to be deployed, and by combining dynamic programming algorithm with a high resource utilization allocation strategy, the optimal solution with high resource utilization can be found more reasonably and quickly, thereby deriving the initialization order of multiple cloud service consoles, improving the efficiency of cloud service console initialization, and reducing the number of times cloud service console initialization fails due to insufficient resources, thus reducing the service failure rate.
[0051] Other features and advantages of the present invention will be disclosed in detail in the following detailed description and accompanying drawings. Attached Figure Description
[0052] The invention will be further described below with reference to the accompanying drawings:
[0053] Figure 1This is a schematic diagram of the cloud service console deployment method according to an embodiment of the present invention.
[0054] Figure 2 This is a schematic diagram of the method for determining the average amount of resources used in an embodiment of the present invention.
[0055] Figure 3 This is a schematic diagram of the process for finding value combinations in an embodiment of the present invention.
[0056] Figure 4 This is a schematic diagram of the cloud service console deployment system structure according to an embodiment of the present invention.
[0057] Figure 5 This is a schematic diagram of the computer system structure according to an embodiment of the present invention.
[0058] Among them: 10, resource module; 20, scheduling module; 30, monitoring module; 40, computer system; 41, memory; 42, computer program; 43, processor. Detailed Implementation
[0059] The technical solutions of the embodiments of the present invention will be explained and described below with reference to the accompanying drawings. However, the following embodiments are only preferred embodiments of the present invention and not all of them. Other embodiments obtained by those skilled in the art based on the embodiments in the implementation methods without creative effort are all within the protection scope of the present invention.
[0060] In the following description, terms such as “inner,” “outer,” “upper,” “lower,” “left,” and “right” are used only to indicate orientation or positional relationship for the convenience of describing the embodiments and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the present invention.
[0061] Before introducing the technical solution of this embodiment, the application background of this embodiment will be introduced.
[0062] When deploying cloud service consoles in a resource pool, if multiple cloud service consoles are initialized simultaneously in a short period of time, the cloud service console initialization center will start multiple initialization threads. Console initialization involves media downloading and the occupation of a large amount of host resources, which can easily lead to the exhaustion of resource pool memory and the crash of the initialization center, resulting in console deployment failure and causing system failure.
[0063] Among them, the resource pool is the basic unit by which the platform isolates various machines and computing resources for different regions of users. It can be divided into several resource pools according to the actual scenario. The administrator of the resource pool can initialize multiple cloud service consoles.
[0064] Dynamic programming is a method used in mathematics and computer science to solve complex problems by breaking them down into relatively simpler subproblems.
[0065] Cloud Service Console: A unified platform for viewing and managing PaaS cloud products or cloud services. Configuration operations can be performed through a graphical interface, Cloud Shell command-line tool, etc.
[0066] To avoid resource pool host resource exhaustion and deployment failure during cloud service console deployment, and to maximize deployment efficiency, this embodiment proposes a dynamic programming-based cloud service console deployment method. Please refer to the appendix. Figure 1 This includes the following steps:
[0067] Step A01) Read the resources of the resource pool host to obtain the total number of available resources R;
[0068] Step A02) Establish the objective function Where w[i] represents the total amount of resources used when the i-th cloud service console is successfully deployed, selected[i] represents the deployment status of the i-th cloud service console, selected[i]=1 means the i-th cloud service is deployed, N is the number of cloud service consoles to be deployed, i∈[1,N];
[0069] Step A03) Set constraints: ;
[0070] Step A04) Use an optimization algorithm to obtain the combination of selected[i] values that maximize the objective function;
[0071] Step A05) Deploy the corresponding cloud service console based on the value combination;
[0072] Step A06) If a cloud service console is successfully deployed, re-execute this method until there are no more cloud service consoles to be deployed.
[0073] Each time a cloud service console is deployed, this method is executed once to obtain the combination of values for selected[i]. Therefore, this embodiment is suitable for the deployment planning of dynamically added cloud service consoles. By establishing the relationship between the objective function and the cloud service consoles being deployed, and combining dynamic programming algorithms with high resource utilization allocation strategies, the optimal solution with high resource utilization can be found more reasonably and quickly. This leads to the derivation of the initialization order of multiple cloud service consoles, improving the efficiency of cloud service console initialization, while reducing the number of times cloud service console initialization fails due to insufficient resources, thus lowering the service failure rate.
[0074] Total resources used by the successful deployment of the i-th cloud service , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console, and t[i] is the time required to deploy the i-th cloud service console.
[0075] On the other hand, this embodiment provides a method for determining the average resource consumption r[i] per unit time during the deployment of the i-th cloud service console. Please refer to the appendix. Figure 2 ,include:
[0076] Step B01) The functional components of the cloud service console are used as the characteristic quantities of the cloud service console;
[0077] Step B02) Read the deployment data from the historical cloud service console;
[0078] Step B03) Filter out deployment data from cloud service consoles with the same characteristic values;
[0079] Step B04) Calculate the average amount of resources occupied during the deployment of cloud service consoles with the same characteristic quantity, and use it as the average amount of resources occupied per unit time during the deployment of the i-th cloud service console r[i].
[0080] By establishing characteristic quantities, the functional components of the cloud service console are used as the basis for the amount of resources required by the cloud service console. The average amount of resources occupied by the cloud service console with the same characteristic quantities during the deployment process is calculated with the help of historical data, and is used as the average amount of resources r[i] occupied per unit time during the deployment process of the i-th cloud service console.
[0081] Methods for determining the time t[i] required to deploy the i-th cloud service console include:
[0082] Read deployment data from the historical cloud service console. The deployment data records the time required to complete the deployment of each function.
[0083] Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
[0084] Methods for obtaining the combination of values that maximizes the objective function include:
[0085] Randomly set the value of j, and divide all combinations of selected[i] into two categories based on selected[j]=1 and selected[j]=0, denoted as set P_j1 and set P_j0 respectively;
[0086] Find the combinations of values in sets P_j1 and P_j0 that maximize the objective function. Among these two combinations, the combination that maximizes the objective function is the final combination that maximizes the objective function.
[0087] On the other hand, this embodiment provides a method for finding the combination of values in set P_j1 that maximizes the objective function. Please refer to the appendix. Figure 3 ,include:
[0088] Step C01) Subtract the amount of resources occupied by the j-th cloud service console from the total number of available resources R;
[0089] Step C02) Then, randomly set the value of j, and divide the set P_j1 into two categories with selected[k]=1 and selected[k]=0, respectively denoted as set P_j1_k1 and set P_j1_k0;
[0090] Step C03) Find the combination of values in set P_j1_k1 and set P_j1_k0 that maximizes the objective function. Among the two combinations, the combination that maximizes the objective function is taken as the combination of values in set P_j1 that maximizes the objective function.
[0091] Step C04) Recursively execute the above steps until the classified set contains only one combination of values, and then obtain the combination of values in set P_j1 that makes the objective function achieve the maximum value.
[0092] On the other hand, this embodiment provides that the cloud service consoles to be deployed are associated with priorities, including high priority and low priority. The deployment status of high-priority cloud service consoles is always set to 1. If the total number of available resources R is insufficient to deploy all the high-priority cloud service consoles to be deployed, then the resources occupied by the low-priority cloud service consoles that have started but not yet completed are released one by one until the total number of available resources R is sufficient to deploy all the high-priority cloud service consoles to be deployed. By setting priorities, cloud service consoles that need to be deployed immediately are deployed as quickly as possible.
[0093] On the other hand, this embodiment provides a cloud service console deployment system based on dynamic programming, used to execute the cloud service console deployment method based on dynamic programming as described above. Please refer to the appendix. Figure 4It includes a resource module 10, a scheduling module 20, and a monitoring module 30. The resource module 10 establishes a mapping of host resources in the resource pool. The resource module 10 is connected to the scheduling module 20. The scheduling module 20 receives the cloud service console task to be deployed and executes the deployment of the cloud service console. The monitoring module 30 monitors the result status of the cloud service console deployment. The steps of the scheduling module 20 in deploying the cloud service console include:
[0094] The scheduling module 20 reads the resources of the resource pool host through the resource module 10 to obtain the total number of available resources R;
[0095] Establish objective function Where w[i] represents the total amount of resources used by the i-th cloud service console to be successfully deployed. , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console, t[i] is the time required to deploy the i-th cloud service console, selected[i] indicates the deployment status of the i-th cloud service console, selected[i]=1 indicates the deployment of the i-th cloud service, N is the number of cloud service consoles to be deployed, i∈[1,N];
[0096] Set constraints: ;
[0097] Using an optimization algorithm, obtain all combinations of selected[i] values that maximize the objective function;
[0098] Deployment of the corresponding cloud service console is initiated based on the combination of values;
[0099] When a cloud service console is successfully deployed, the monitoring module 30 notifies the scheduling module 20, which then re-executes the steps to deploy the cloud service console until there are no more cloud service consoles to be deployed.
[0100] When scheduling module 20 determines the average resource consumption r[i] per unit time during the deployment of the i-th cloud service console, it performs the following steps:
[0101] The functional components of the cloud service console are used as the characteristic quantities of the cloud service console.
[0102] Read deployment data from the historical cloud service console;
[0103] Filter out deployment data from cloud service consoles with the same characteristic;
[0104] Calculate the average amount of resources used during the deployment of cloud service consoles with the same characteristic, and use it as the average amount of resources r[i] used per unit time during the deployment of the i-th cloud service console.
[0105] When scheduling module 20 determines the time t[i] required to deploy the i-th cloud service console, it performs the following steps:
[0106] Read deployment data from the historical cloud service console. The deployment data records the time required to complete the deployment of each function.
[0107] Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
[0108] When scheduling module 20 obtains the combination of values that maximizes the objective function, it performs the following steps:
[0109] Enumerate all possible combinations of selected[i] values, calculate the corresponding objective function value, and obtain the combination of selected[i] values that maximizes the objective function.
[0110] A computer system 40 includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When executed by the processor, the computer program implements the cloud service console deployment method based on dynamic programming as described above.
[0111] On the other hand, this application provides a computer system 40, please refer to the appendix. Figure 5 The computer system 40 includes a memory 41, a processor 43, and a computer program 42 stored in the memory 41 and executable on the processor 43. When the computer program 42 is executed by the processor 43, it implements the cloud service console deployment method based on dynamic programming as described above.
[0112] Computer system 40 can be a general-purpose computer system 40 or a special-purpose computer system 40. In specific implementations, computer system 40 can be a server cluster including multiple servers, such as a blockchain system including multiple nodes. Those skilled in the art will understand that... Figure 5 This is merely an example of computer system 40 and does not constitute a limitation on computer system 40. It may include more or fewer components than shown in the figure, or combine certain components, or different components, such as input / output devices, network access devices, etc.
[0113] Processor 43 can be a Central Processing Unit (CPU), or it can be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. General-purpose processor 43 can be a microprocessor or any conventional processor.
[0114] In some embodiments, memory 41 may be an internal storage unit of computer system 40, such as a hard disk or RAM of computer system 40. In other embodiments, memory 41 may be an external storage device of computer system 40, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., provided on computer system 40. Furthermore, memory 41 may include both internal storage units and external storage devices of computer system 40. Memory 41 is used to store operating system, application programs, boot loader, data, and other programs. Memory 41 may also be used to temporarily store data that has been output or will be output.
[0115] On the other hand, embodiments of this application provide a computer-readable storage medium storing a computer program 42, which, when executed by a processor 43, implements the aforementioned cloud service console deployment method based on dynamic programming.
[0116] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Those skilled in the art should understand that the present invention includes, but is not limited to, the contents described in the accompanying drawings and the specific embodiments above. Any modifications that do not depart from the functional and structural principles of the present invention will be included within the scope of the claims.
Claims
1. A cloud service console deployment method based on dynamic programming, characterized in that, Includes the following steps: Read the resources of the resource pool host to obtain the total number of available resources R; Establish objective function Where w[i] represents the total amount of resources used when the i-th cloud service console is successfully deployed, selected[i] represents the deployment status of the i-th cloud service console, selected[i]=1 means the i-th cloud service is deployed, N is the number of cloud service consoles to be deployed, i∈[1,N]; Set constraints: , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console; Using an optimization algorithm, obtain the combination of selected[i] values that maximize the objective function; The deployment of the corresponding cloud service console is initiated based on the stated value combination; If a cloud service console is successfully deployed, re-execute this method until there are no more cloud service consoles to be deployed. Total resources used by the successful deployment of the i-th cloud service , where t[i] is the time required to deploy the i-th cloud service console; Methods for determining the average resource consumption r[i] per unit time during the deployment of the i-th cloud service console include: The functional components of the cloud service console are used as the characteristic quantities of the cloud service console. Read deployment data from the historical cloud service console; Filter out deployment data from cloud service consoles with the same characteristic; Calculate the average amount of resources used during the deployment of cloud service consoles with the same characteristic, and use it as the average amount of resources r[i] used per unit time during the deployment of the i-th cloud service console.
2. The cloud service console deployment method based on dynamic programming according to claim 1, characterized in that, Methods for determining the time t[i] required to deploy the i-th cloud service console include: Read the deployment data from the historical cloud service console, which records the time required to complete the deployment of each function; Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
3. The cloud service console deployment method based on dynamic programming according to claim 1, characterized in that, Methods for obtaining the combination of values that maximizes the objective function include: Randomly set the value of j, and divide all combinations of selected[i] into two categories based on selected[j]=1 and selected[j]=0, denoted as set P_j1 and set P_j0 respectively; Find the combinations of values in sets P_j1 and P_j0 that maximize the objective function. Among these two combinations, the combination that maximizes the objective function is the final combination that maximizes the objective function.
4. The cloud service console deployment method based on dynamic programming according to claim 3, characterized in that, Methods for finding the combination of values in set P_j1 that maximizes the objective function include: Subtract the amount of resources occupied by the j-th cloud service console from the total available resources R; Then, the value of j is randomly set, and the set P_j1 is divided into two categories with selected[k]=1 and selected[k]=0, respectively denoted as set P_j1_k1 and set P_j1_k0; Find the combinations of values in sets P_j1_k1 and P_j1_k0 that maximize the objective function. Among these two combinations, the combination that maximizes the objective function is taken as the combination of values in set P_j1 that maximizes the objective function. Recursively execute the above steps until the classified set contains only one combination of values, and you will obtain the combination of values in set P_j1 that maximizes the objective function.
5. The cloud service console deployment method based on dynamic programming according to claim 1, characterized in that, The cloud service consoles to be deployed are associated with priorities, including high priority and low priority. The deployment status of high priority cloud service consoles is always set to 1. If the total number of available resources R is insufficient to deploy all the high priority cloud service consoles to be deployed, then the low priority cloud service consoles that have started but not yet completed are traversed, and the resources occupied by the low priority cloud service consoles that have started but not yet completed are released one by one, until the total number of available resources R is sufficient to deploy all the high priority cloud service consoles to be deployed.
6. A cloud service console deployment system based on dynamic programming, used to execute the cloud service console deployment method based on dynamic programming as described in any one of claims 1 to 5, characterized in that, The system includes a resource module, a scheduling module, and a monitoring module. The resource module establishes a mapping of host resources in the resource pool. The resource module is connected to the scheduling module. The scheduling module receives tasks to be deployed as cloud service consoles and executes the deployment of the cloud service consoles. The monitoring module monitors the deployment status of the cloud service consoles. The steps of the scheduling module in deploying the cloud service consoles include: The scheduling module reads the resources of the resource pool host through the resource module to obtain the total number of available resources R; Establish objective function Where w[i] represents the total amount of resources used by the i-th cloud service console to be successfully deployed. , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console, t[i] is the time required to deploy the i-th cloud service console, selected[i] indicates the deployment status of the i-th cloud service console, selected[i]=1 indicates the deployment of the i-th cloud service, N is the number of cloud service consoles to be deployed, i∈[1,N]; Set constraints: , where r[i] is the average amount of resources used per unit time during the deployment of the i-th cloud service console; Using an optimization algorithm, obtain all combinations of selected[i] values that maximize the objective function; The deployment of the corresponding cloud service console is initiated based on the stated value combination; When a cloud service console is successfully deployed, the monitoring module notifies the scheduling module, which then re-executes the steps to deploy the cloud service console until there are no more cloud service consoles to be deployed.
7. The cloud service console deployment system based on dynamic programming according to claim 6, characterized in that, When the scheduling module determines the average resource usage r[i] per unit time during the deployment of the i-th cloud service console, it performs the following steps: The functional components of the cloud service console are used as the characteristic quantities of the cloud service console. Read deployment data from the historical cloud service console; Filter out deployment data from cloud service consoles with the same characteristic; Calculate the average amount of resources used during the deployment of cloud service consoles with the same characteristic, and use it as the average amount of resources r[i] used per unit time during the deployment of the i-th cloud service console.
8. The cloud service console deployment system based on dynamic programming according to claim 6 or 7, characterized in that, When the scheduling module determines the time t[i] required to deploy the i-th cloud service console, it performs the following steps: Read the deployment data from the historical cloud service console, which records the time required to complete the deployment of each function; Obtain the functional components of the cloud service console, find the function with the longest required time, and use the time required to complete the deployment of the function as the time t[i] required to deploy the i-th cloud service console.
9. The cloud service console deployment system based on dynamic programming according to claim 6 or 7, characterized in that, When the scheduling module obtains the combination of values that maximizes the objective function, it performs the following steps: Enumerate all possible combinations of selected[i] values, calculate the corresponding objective function value, and obtain the combination of selected[i] values that maximizes the objective function.
10. A computer system, characterized in that, The computer system includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the cloud service console deployment method based on dynamic programming as described in any one of claims 1 to 5.
11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the cloud service console deployment method based on dynamic programming as described in any one of claims 1 to 5.