A method for pre-allocating cloud hosts in a resource pool
By establishing a quantitative model of the resource pool, the best arrangement and combination of cloud hosting is solved, and automated deployment has solved the problem of limited resources and low benefits in the resource pool, and realized the efficient utilization of the resource pool and the satisfaction of customer needs.
Patent Information
- Application Number
- CN202311711805.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-13
- Publication Date
- 2025-01-24
- Estimated Expiration
- 2043-12-13
AI Technical Summary
The existing technology is difficult to effectively solve the problems of limited resources in the resource pool, mutually exclusive cloud host resources, resulting in resource fragmentation and low efficiency. At the same time, it is difficult to determine the best cloud host arrangement and combination to meet customer needs and improve resource utilization.
By establishing the quantitative model of the resource pool, the software and hardware inputs of the cloud host -based are different quantities, models, configurations and resource pools, establish mathematical models, quantitative resource pool benefits, solve the best arrangement and combination of cloud hosting, and automate according to this solution. Deploy cloud consoles.
It achieves the optimal combination of cloud hosts in the resource pool, improves the efficiency and resource utilization of the resource pool, meets customer needs, and reduces the risks and costs of manual deployment.
Smart Images

Figure CN117827435B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of cloud computing, and in particular relates to a cloud host pre-allocation method in a resource pool. Background Art
[0002] Cloud hosts, as the main products sold by cloud computing vendors, are actually virtual machines created on host machines through virtualization technology. Applications deployed on cloud hosts are not much different from physical servers. Host machines are usually deployed in various resource pools. Considering factors such as energy consumption, domestic cloud vendors' resource pools are mostly distributed in Yunnan, Guizhou, Sichuan, and Inner Mongolia. A large number of host machines are deployed in each resource pool, and multiple cloud hosts are virtualized on each host machine.
[0003] According to different usage scenarios, cloud computing vendors provide a variety of cloud host products. Commonly used cloud host products include general entry-level, general-purpose, general computing enhanced, memory optimized, etc. Each type of cloud host has different configurations according to actual needs, and the unit prices of cloud hosts of different models and configurations vary greatly. Taking Tianyi Cloud vendor as an example, a general entry-level cloud host with 1 core and 1G configuration costs 74 yuan per month, and a memory-optimized cloud host with 16 cores and 128G configuration costs 2,804 yuan per month. Obviously, the prices of cloud hosts with different configurations vary greatly. Using the remaining resources in the resource pool to deploy cloud hosts of different models, configurations, and quantities will dynamically change the benefits of the entire resource pool.
[0004] Improving the efficiency of resource pools is a core issue for every cloud vendor, and it is also a major problem. On the one hand, the resources in the resource pool are limited, and the resources occupied by cloud hosts are often mutually exclusive. Improper planning and deployment may lead to resource fragmentation. For example, in the resource pool, host A still has 1 core and 2GB of resources, and host B still has 3 cores and 6GB of resources, while a cloud host with 4 cores and 8GB is often more efficient. Although the sum of the resources on host A and host B is enough to provision a cloud host with 4 cores and 8GB, a cloud host with 4 cores and 8GB can no longer be provisioned in the resource pool at this time. This is resource fragmentation, and obviously, resource fragmentation will lead to lower efficiency of the resource pool. On the other hand, cloud hosts of different models and configurations have completely different efficiency ratios for vendors. The permutations and combinations of cloud hosts of different models, configurations, and quantities will bring different benefits. How to determine the best permutation and combination is a difficult problem. In addition, considering the different needs of different customers, it is also a major problem to improve efficiency while meeting customer needs. At the same time, manual deployment is inefficient and prone to errors, which will bring potential risks to the resource pool. Summary of the invention
[0005] In view of the above shortcomings of the prior art, the purpose of the invention is to provide a method for pre-allocating cloud hosts in a resource pool. By deeply analyzing the resource pool efficiency factors, a model for determining the optimal arrangement and combination of cloud hosts is established to meet customer needs, improve resource utilization and resource pool efficiency, and automatically deploy cloud hosts according to the optimal arrangement and combination.
[0006] The present invention proposes a method for pre-allocating a cloud host in a resource pool, comprising the following steps:
[0007] S1. Build a model based on the price of cloud hosts of different quantities, models and configurations and the investment in resource pool hardware and software, quantify the benefits of the resource pool, and solve the pre-allocation plan to obtain the cloud host permutation and combination;
[0008] S2. If the current pre-allocation plan does not meet customer needs, dynamically adjust the upper and lower limit constraints in the mathematical model according to customer needs and reversely generate a new pre-allocation plan;
[0009] S3. Automatically deploy cloud hosts according to the pre-allocation plan, and automatically deploy cloud hosts under the constraints of the pre-allocation plan.
[0010] Furthermore, the model is established based on the price of cloud hosts of different quantities, models and configurations and the investment in software and hardware of the resource pool to quantify the benefits of the resource pool, and to solve the pre-allocation plan to obtain the cloud host arrangement and combination, which specifically includes the following steps:
[0011] S11. Input available resources;
[0012] S12. Input cloud host configuration;
[0013] S13. Input cost and selling price;
[0014] S14. Set the upper and lower limits of each configured cloud host;
[0015] S15. solving the model;
[0016] S16. Pre-allocation scheme.
[0017] Furthermore, the configuration includes the number of CPU cores, memory capacity, network bandwidth and PPS.
[0018] Furthermore, the calculation formula of the resource pool benefit is:
[0019] ;
[0020] in, is the unit price of the ith cloud host, For the common investment of the entire resource pool, For the The cloud host is in The total input on the host machine, For the The cloud host is in Exclusive investment on the host machine, Refers to the cloud host to be deployed. Configuration, Refers to the remaining hosts in the resource pool. tower, Refers to the The cloud host is in The number of machines deployed on the host. For the resource pool The total number of cloud hosts deployed.
[0021] Furthermore, the The calculation formula is:
[0022] ;
[0023] in, Refers to the cloud host to be deployed. Configuration, Refers to the remaining hosts in the resource pool. tower, Refers to the The cloud host is in The number of machines deployed on the host. It is a shared investment for the entire resource pool.
[0024] Furthermore, the The formula is:
[0025] ;
[0026] in, , , Respectively The investment of host CPU, memory, network card and accessories, , , , Respectively The remaining available CPU cores, memory capacity, network bandwidth and PPS on the host machine. , Respectively The CPU over-provisioning ratio and memory over-provisioning ratio of the cloud host. The CPU cores, memory capacity, network bandwidth and PPS of the cloud host configurations are , , , For the The unit price of a cloud host.
[0027] Furthermore, the calculation formula for maximizing the resource pool benefit is:
[0028]
[0029] ;
[0030] in, is the unit price of the ith cloud host, For the common investment of the entire resource pool, For the The cloud host is in The total input on the host machine, For the The cloud host is in Exclusive investment on the host machine, Refers to the cloud host to be deployed. Configuration, Refers to the remaining hosts in the resource pool. tower, Refers to the The cloud host is in The number of machines deployed on the host. For the resource pool The total number of cloud hosts deployed, The CPU cores, memory capacity, network bandwidth and PPS of the cloud host configurations are , , , , Respectively The CPU over-provisioning ratio and memory over-provisioning ratio of the cloud host. , , , Respectively The remaining available CPU cores, memory capacity, network bandwidth and PPS on the host machine. For the The number of CPU cores occupied by the cloud hosts deployed on the host cannot exceed the number of remaining available CPU cores. For the The memory capacity occupied by the cloud host deployed on the host cannot exceed the remaining available capacity; For the The bandwidth occupied by the cloud hosts deployed on the host machine cannot exceed the remaining available bandwidth. For the The PPS occupied by the cloud host deployed on the host machine cannot exceed the remaining available PPS. middle, and Respectively The upper and lower limits of the number of cloud hosts to be deployed.
[0031] Furthermore, the exclusive investment refers to the investment in resources that each cloud host exclusively owns, including CPU, memory, network card and supporting investment.
[0032] Furthermore, the shared investment refers to the investment in shared resources of all cloud hosts on the host machine, including hardware investment in racks, switches, and routers, as well as investment in research and development, operation and maintenance manpower, and investment in various licenses and system software.
[0033] Furthermore, the The value range is , The value range is .
[0034] The beneficial effects of the present invention are as follows:
[0035] 1. The present invention proposes a resource pool benefit quantification model, which can fully consider factors such as the unit price, configuration, investment, and available resources of various types of cloud hosts, and can accurately obtain the optimal combination of cloud hosts of different models, configurations, and quantities in the resource pool, thereby improving the benefits and resource utilization of the resource pool; this patent establishes and solves a model with resource pool benefits as the goal, and can accurately evaluate the maximum benefits of the current available resources in the resource pool, providing data support for cloud host deployment and resource pool evaluation decisions.
[0036] 2. The pre-allocation scheme proposed in the present invention can reversely adjust the constraint relationship in the mathematical model according to the type and number of cloud hosts required by customers. The new pre-allocation scheme solved can not only meet customer needs, but also improve resource utilization under existing constraints;
[0037] 3. The pre-allocation scheme proposed in the present invention stipulates that different configurations and different numbers of cloud hosts are deployed on each host machine. The automated deployment method needs to deploy the cloud hosts required by the customer under the constraints of this scheme. Automatically deploying cloud hosts according to the pre-allocation scheme reduces human-induced misoperations, reduces manpower investment, and improves deployment efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The accompanying drawings are only used to illustrate specific embodiments and are not considered to limit the present invention. In the entire drawings, the same reference symbols represent the same components. Obviously, the drawings described below are only some embodiments recorded in the embodiments of the present invention. For those of ordinary skill in the art, other drawings can also be obtained based on these drawings.
[0039] Figure 1 is a flow chart of an embodiment of the present invention;
[0040] Figure 2 4 is a device sequence diagram of an embodiment of the present invention. DETAILED DESCRIPTION
[0041] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present invention, the technical solutions of the present invention will be clearly and completely described below in conjunction with the accompanying drawings. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all of the embodiments. It should be understood that these descriptions are only exemplary and are not intended to limit the scope of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in the field without making creative work should fall within the scope of protection of the present invention.
[0042] Furthermore, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily obscuring the concepts disclosed in the present invention.
[0043] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Instead, they are merely examples of methods and systems consistent with some aspects of the present invention as detailed in the appended claims.
[0044] The present invention proposes a method for pre-allocating cloud hosts in a resource pool, which is used to solve the problem that resources in the resource pool are limited, the resources occupied by the cloud hosts are often mutually exclusive, improper planning and deployment may lead to resource fragmentation, and how to determine the best arrangement and combination.
[0045] Method Embodiment
[0046] In order to assist people in understanding the present invention, the terms appearing in this document are explained.
[0047] Pre-allocation plan: The number of cloud hosts of each type deployed on each host.
[0048] Exclusive investment: The investment in resources that each cloud host exclusively owns, mainly including CPU, memory, network card and related supporting investments.
[0049] Shared investment: The investment in resources shared by all cloud hosts on the host, such as hardware investment such as racks, switches, routers, as well as manpower investment such as R&D, operation and maintenance, and software investment such as licenses and systems. These investments are shared by all cloud hosts on the host in the resource pool and have little to do with the type of cloud host.
[0050] PPS (Packet Per Second): Indicates the transmission rate in network packets.
[0051] In addition, in the present invention, in view of the above problems, the resource pool efficiency factors are deeply analyzed, and a model for determining the optimal arrangement and combination of cloud hosts is established to meet customer needs, improve resource utilization and resource pool efficiency, and automatically deploy cloud hosts according to the optimal arrangement and combination. Figure 1-Figure 2 As shown, the following implementation modes are provided:
[0052] Implementation Method 1
[0053] In order to meet customer needs, improve resource utilization, improve resource pool efficiency, and automatically deploy cloud hosts, this patent proposes a cloud host pre-allocation method in a resource pool. This patent is mainly divided into the following three steps:
[0054] S1: Build a model based on the price of cloud hosts of different quantities, models and configurations and the hardware and software investment of resource pools, quantify the benefits of resource pools, and solve for the pre-allocation plan to obtain the best combination of cloud hosts;
[0055] S2: When the current pre-allocation plan does not meet customer needs, dynamically adjust the upper and lower limit constraints in the mathematical model according to customer needs and reversely generate a new pre-allocation plan;
[0056] S3: Automatically deploy cloud hosts according to the pre-allocation plan, that is, automatically deploy cloud hosts under the constraints of the pre-allocation plan;
[0057] Based on the above content, the pre-allocation plan is generated through model derivation and solution, which ensures that deploying cloud hosts according to the pre-allocation plan can improve the efficiency of the resource pool; at the same time, the user's needs are taken into consideration when deploying cloud hosts. If the pre-allocation plan meets the needs, it is deployed under the constraints of the pre-allocation. If the pre-allocation plan does not meet the needs, the user's needs are incorporated into the constraints and a new pre-allocation plan is calculated again with the goal of maximizing benefits, and then the cloud host is deployed again under the constraints of the new pre-allocation plan. This mutually constrained adaptive adjustment and automated deployment method can both meet user needs and improve resource utilization. At the same time, the automated deployment of cloud hosts according to the best permutation and combination reduces the risk of manual deployment and improves deployment efficiency.
[0058] In addition, in order to assist the understanding of the personnel, another embodiment is provided in the present invention:
[0059] Implementation Method 2
[0060] The purpose of the present invention is to establish a resource pool benefit model to solve a pre-allocation plan, and automatically deploy cloud hosts under the constraints of the pre-allocation plan.
[0061] In order to find the best arrangement and combination of cloud hosts in the resource pool, that is, how many cloud hosts of each type should be deployed on each host machine, and to improve the efficiency of the resource pool while making full use of existing resources, it is necessary to establish a model to derive the best allocation plan.
[0062] After investigation, it was found that although the unit price of cloud hosts fluctuates with market conditions, it is still mainly related to their configuration. The main factors considered in configuration are: number of CPU cores, memory capacity, network bandwidth and PPS.
[0063] From the perspective of investment, cloud computing is an asset-heavy industry, and the investment behind cloud host support is also a huge expense. The main investment includes R&D investment (such as product and platform R&D investment), hardware investment (such as CPU, memory, rack, etc.), software investment (various licenses, certificates, systems, etc.), maintenance and other investments; in order to further estimate the investment of each cloud host, the cloud host investment is divided into exclusive investment and shared investment.
[0064] Exclusive investment refers to the investment of resources owned by each cloud host, mainly including CPU, memory, network card and related supporting investment; shared investment refers to the investment of resources shared by all cloud hosts on the host, such as hardware investment such as racks, switches, routers, as well as human investment such as R&D, operation and maintenance, and software investment such as licenses and systems. These investments are shared by all cloud hosts on the host in the resource pool and have little to do with the type of cloud host. In this technical solution, exclusive investment and shared investment are stored in the database.
[0065] Based on the above content, in order to obtain the resource pool pre-allocation plan with the maximum benefit, it is necessary to establish a mathematical model and solve it. The following detailed technical solutions are provided:
[0066] The derivation is as follows:
[0067] Assume that the cloud hosts to be deployed have Configuration, the remaining hosts in the resource pool have tower, For the The cloud host is in The number of machines deployed on the host. For the resource pool The total number of cloud hosts deployed; The CPU cores, memory capacity, network bandwidth and PPS of the cloud host configurations are , , , , and assuming that The CPU over-provisioning ratio and memory over-provisioning ratio of the cloud hosts are , , obviously , , when the above work is completed and ready.
[0068] First, code a shell script to automatically collect and organize the remaining resources. Execute the script on the control node and send commands to each host to collect the remaining resource information, including the number of remaining CPU cores, remaining memory capacity, remaining network bandwidth and PPS, and save them in the database. The remaining available CPU cores, memory capacity, network bandwidth, and PPS on the host are , , , The emphasis here on remaining available means that in addition to allocating resources such as the number of CPU cores and memory capacity on each host machine to the cloud host, a portion of resources should be reserved to maintain the basic operation of basic software such as operating systems and virtualization components. As for the specific number of resources to be reserved, each cloud vendor will get a relatively ideal empirical value for different host machine tests. The common practice is that test engineers repeatedly adjust the number of reserved resources (CPU cores, memory capacity, etc.) to obtain the minimum number of resources that meet product performance indicators.
[0069] For For a host machine, the number of CPU cores occupied by the deployed cloud host cannot exceed the number of remaining available CPU cores:
[0070] (1)
[0071] Similarly, the memory capacity occupied by the deployed cloud host cannot exceed the remaining available capacity:
[0072] (2)
[0073] The bandwidth and PPS occupied by the deployed cloud host cannot exceed the remaining available bandwidth and PPS, because if they exceed, the network performance will not reach the calibration value:
[0074] (3)
[0075] (4)
[0076] In actual applications, for some specific needs, there are certain requirements for the number of cloud hosts deployed for each type. and Respectively The upper and lower limits of the number of cloud hosts deployed are:
[0077] (5)
[0078] in, It will change with customer demand. When calculating the initial pre-allocation plan (i.e., when there is no customer demand), the value is 0; Whether to add more depends on specific needs, and generally there is no need to set an upper limit.
[0079] Assume The investment in CPU, memory, network card and accessories of each host machine is , , , then The cloud host is in Exclusive investment on the host for:
[0080] (6)
[0081] Among them, the bandwidth and PPS overhead are comprehensively considered when calculating the network exclusive investment, so the previous coefficient is one-half.
[0082] Assume that the total input of the entire resource pool is , then The cloud host is in The total input on the host for
[0083] (7)
[0084] Assume The unit price of this cloud host is , then the benefit of the entire resource pool for:
[0085] (8)
[0086] In summary, in order to determine the best cloud host combination, the following mathematical model is derived:
[0087]
[0088]
[0089] (9) In order to solve the above model, the branch and bound method is used to solve the The cloud host is in Number of servers deployed on the host In this way, the number of cloud hosts of each type deployed on each host is obtained, that is, the initial pre-allocation plan of the cloud hosts in the resource pool is obtained. , and store the solution in the database.
[0090] In summary, a mathematical model is established to solve the resource pool cloud host pre-allocation plan. However, the deployment of cloud hosts is always based on customer needs, so it is necessary to further schedule and deploy in combination with customer needs and pre-allocation plans.
[0091] Assume that the customer's demand for the number of cloud hosts of each configuration is ,in, First, determine the initial pre-allocation plan Check whether the number of cloud hosts in each configuration meets the requirements:
[0092] (10)
[0093] If requirement (10) is met, the automated deployment script is executed on the control node, the host number and the number and configuration of the target cloud hosts are input, cloud hosts that automatically deploy customer requirements are created in sequence, and the available resource data of each host in the database is updated.
[0094] If requirement (10) is not met, the pre-allocation scheme needs to be regenerated as follows:
[0095] If the cloud host configuration ID set that does not meet the requirements is , for any numbered set Medium No. , adjust the The minimum number of cloud hosts that can be deployed with this configuration is:
[0096] (11)
[0097] When generating a new pre-allocation plan, in addition to the above adjustments, you also need to adjust the remaining resource constraints, that is, adjust the number of remaining available CPU cores. , Memory capacity , Network bandwidth and .
[0098] After readjusting the constraints of the model, a new pre-allocation plan is solved again and deployed automatically, and the available resource data of each host in the database is updated.
[0099] If the new solution still does not meet the requirements (10), it will prompt that the current resource pool capacity is full and it is impossible to create a cloud host that meets the requirements.
[0100] Finally, the cloud host is automatically deployed according to the latest allocation plan. The allocation plan has clearly defined the planned number of cloud hosts of various models and configurations on each host in the resource pool. At this time, you only need to write a script to enter the host IP and the model and configuration of the cloud host to be created. The script is executed on the control node to call IasS layer software such as openstack to complete the creation of the target cloud host on the specified host.
[0101] When a new request is received from a customer, we first determine whether the existing solution meets the requirements. If not, we repeat the above steps to generate a new solution and deploy the cloud host. Figure 1 shown.
[0102] Obviously, the pre-allocation plan is always solved based on the goal of maximizing benefits, which ensures that deploying cloud hosts according to the pre-allocation plan can improve the benefits of the resource pool; at the same time, the user's needs are taken into consideration when deploying cloud hosts. If the pre-allocation plan meets the needs, it is deployed under the constraints of the pre-allocation. If the pre-allocation plan does not meet the needs, the user's needs are incorporated into the constraints and a new pre-allocation plan is calculated again with the goal of maximizing benefits, and then the cloud host is deployed again under the constraints of the new pre-allocation plan. This mutually constrained adaptive adjustment and automated deployment method can both meet user needs and improve resource utilization.
[0103] In addition, in the present invention, in order to help people better understand the technical solution of the present invention, the following Figure 2 The technical solution of the present invention is further described as follows:
[0104] Implementation 3
[0105] like Figure 2 As shown, the core parts of the present invention are the pre-allocation module and the automatic deployment module; the pre-allocation module is responsible for deriving the benefit maximization model and solving the model according to the input cloud host price, configuration, investment, and available resource quota to obtain the pre-allocation plan; the automatic deployment verifies whether the pre-allocation meets the requirements according to the user requirements and the pre-allocation plan. If it does not meet the requirements, the pre-allocation module is called again to derive a new pre-allocation plan.
[0106] Regarding the above content, the overall process is as follows:
[0107] S1: The administrator sends a request to obtain the remaining resources on the control node. The control node executes a shell script to collect the remaining resources of the host machine, and sends commands to each host machine through the control node to collect the available resource data on each host machine, including the remaining number of CPU cores, remaining memory capacity, remaining network bandwidth and PPS, and saves it in the database.
[0108] S2: The administrator sends a request to calculate the pre-allocation plan to the pre-allocation plan module. The pre-allocation module will derive and solve the model based on the input cloud host price, configuration, investment (total investment and investment of each host's CPU, memory, network card and related components), and available resource quota, and finally send the pre-allocation plan to the administrator. The administrator needs to verify the pre-allocation plan, mainly to check whether the configuration and number of cloud hosts allocated to each host are reasonable.
[0109] S3: When receiving a customer demand, the administrator first reviews whether the demand is reasonable; if the demand is reasonable, the deployment demand is forwarded to the automatic deployment module, which will determine whether the latest pre-allocation solution meets the demand according to formula (10);
[0110] If the demand is not met, the lower limit of the number of corresponding cloud hosts and the remaining resource quota are adjusted according to formula (11), and a new pre-allocation plan is regenerated; if the new pre-allocation plan still does not meet the demand, the administrator is notified that a cloud host that meets the demand cannot be created;
[0111] If the requirements are met, the specified configuration and number of cloud hosts are deployed on the host cluster according to the pre-allocation plan, that is, the script is called on the control node, and the host IP, cloud host model, configuration, and quantity information are automatically entered. The script execution will call the IaaS layer software such as openstack to create the target cloud host on the specified host, update the remaining resource information in the database, and store the new pre-allocation plan in the database for subsequent calls.
[0112] S4: When a new customer demand is received again, repeat step S3.
[0113] Based on the same inventive concept, another embodiment of the present invention provides an electronic device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus.
[0114] Memory, used to store computer programs;
[0115] The processor is used to implement the cloud host pre-allocation method in the resource pool of the present invention when executing the program stored in the memory.
[0116] The communication bus mentioned in the above terminal may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. The communication interface is used for communication between the above terminal and other devices. The memory may include a random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage. Optionally, the memory may also be at least one storage system located away from the aforementioned processor.
[0117] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
[0118] In addition, to achieve the above-mentioned purpose, an embodiment of the present invention further proposes a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the cloud host pre-allocation method in a resource pool of an embodiment of the present invention.
[0119] It should be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, embodiments of the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable vehicles (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0120] The embodiments of the present invention are described with reference to flowcharts and / or block diagrams of methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A system that specifies the functions of a box or multiple boxes.
[0121] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction system, which is implemented in the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0122] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0123] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. "And / or" means that either one of the two can be selected, or both can be selected. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of more restrictions, the elements defined by the sentence "including one..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.
[0124] The above are only specific embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed by the present invention, and these modifications or replacements should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.
[0125] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the embodiments of the present invention, rather than to limit them. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the above embodiments, or replace some of the technical features therein by equivalents; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention. Any changes or replacements that can be easily thought of by those skilled in the art within the technical scope disclosed in the present invention should be covered within the protection scope of the present invention.
Claims
1. A method for pre-allocating a cloud host in a resource pool, characterized in that: The steps include: S1. Build a model based on the price of cloud hosts of different quantities, models and configurations and the investment in resource pool hardware and software, quantify the benefits of the resource pool, and solve the pre-allocation plan to obtain the cloud host permutation and combination; S2. If the current pre-allocation plan does not meet customer needs, dynamically adjust the upper and lower limit constraints in the mathematical model according to customer needs and reversely generate a new pre-allocation plan; S3. Automatically deploy cloud hosts according to the pre-allocation plan, and automatically deploy cloud hosts under the constraints of the pre-allocation plan; The calculation formula of the resource pool benefit is: Among them, p i is the unit price of the ith cloud host, Ω is the total investment of the entire resource pool, ω i,j is the total investment of the ith cloud host on the jth host, θ i,j is the exclusive investment of the ith cloud host on the jth host, I means that there are I configurations of cloud hosts to be deployed, J means that there are J remaining hosts in the resource pool, and x i,j Refers to the number of cloud hosts of type i deployed on the jth host, x i The total number of deployed cloud hosts of type i in the resource pool; The ω i,j The calculation formula is: Here, I refers to the total number of cloud hosts to be deployed, J refers to the total number of hosts remaining in the resource pool, and x i,j It refers to the number of cloud hosts of the i-th type deployed on the j-th host, and Ω is the total investment of the entire resource pool; The θ i,j The formula is: Among them, δ cpu,j , δ mem,j , δ nic,j are the CPU, memory, network card and accessories of the jth host, C j 、M j , B j 、PPS j are the number of available CPU cores, memory capacity, network bandwidth and PPS on the jth host, respectively. i , β i are the CPU over-provisioning ratio and memory over-provisioning ratio of the ith cloud host, and the number of CPU cores, memory capacity, network bandwidth, and PPS of the ith cloud host are c i 、m i 、b i ,pps i ,p i is the unit price of the i-th cloud host.
2. A method for pre-allocating cloud hosts in a resource pool according to claim 1, characterized in that: The steps of establishing a model based on the prices of cloud hosts of different quantities, models and configurations and the input of software and hardware of resource pools, quantifying the benefits of resource pools, and solving to obtain pre-allocation plans and cloud host permutations and combinations specifically include: S11. Input available resources; S12. Input cloud host configuration; S13. Input cost and selling price; S14. Set the upper and lower limits of each configured cloud host; S15. solving the model; S16. Pre-allocation scheme.
3. A method for pre-allocating cloud hosts in a resource pool according to claim 2, characterized in that: The configuration includes the number of CPU cores, memory capacity, network bandwidth, and PPS.
4. A method for pre-allocating cloud hosts in a resource pool according to claim 1, characterized in that: The calculation formula for maximizing the resource pool benefit is: Among them, p i is the unit price of the ith cloud host, Ω is the total investment of the entire resource pool, ω i,j is the total investment of the ith cloud host on the jth host, θ i,j is the exclusive investment of the ith cloud host on the jth host, I means that there are I configurations of cloud hosts to be deployed, J means that there are J remaining hosts in the resource pool, and x i,j Refers to the number of cloud hosts of type i deployed on the jth host, x i is the total number of deployed cloud hosts of the i-th type in the resource pool. The number of CPU cores, memory capacity, network bandwidth, and PPS of the i-th cloud host are c i 、m i 、b i ,pps i , α i , β i are the CPU over-provisioning ratio and memory over-provisioning ratio of the ith cloud host, C j 、M j , B j 、PPS j are the number of CPU cores, memory capacity, network bandwidth, and PPS remaining on the jth host, respectively. The number of CPU cores occupied by the cloud host deployed for the jth host cannot exceed the number of remaining available CPU cores. The memory capacity of the cloud host deployed for the jth host cannot exceed the remaining available capacity; The bandwidth occupied by the cloud host deployed for the jth host cannot exceed the remaining available bandwidth. The PPS occupied by the cloud host deployed for the jth host cannot exceed the remaining available PPS. In, L i and U i are the upper and lower limits of the number of deployments of the i-th type of cloud host respectively.
5. A method for pre-allocating cloud hosts in a resource pool according to claim 4, characterized in that: The exclusive investment refers to the investment in resources that each cloud host exclusively owns, including CPU, memory, network card and supporting investment.
6. A method for pre-allocating cloud hosts in a resource pool according to claim 4, characterized in that: The shared investment refers to the investment in shared resources of all cloud hosts on the host machine, including hardware investment in racks, switches, routers, as well as investment in R&D, operation and maintenance manpower, and investment in various licenses and system software.
7. A method for pre-allocating cloud hosts in a resource pool according to claim 4, characterized in that: The α i The value range is 0<α i ≤1, the β i The value range is 0<β i ≤1.
Citation Information
Patent Citations
Virtual machine dynamic scheduling algorithm under limited bandwidth in mobile cloud computing
CN106612324A