Cloud host creation method and apparatus, computer device, and readable storage medium

By analyzing the resource requirements of cloud hosts and the available resources of computing nodes, and determining the target computing nodes based on similarity and evaluation scores, the problem of unbalanced load in cloud host creation is solved, load balancing scheduling in high-concurrency scenarios is realized, and the operational reliability and stability of the cloud platform are improved.

CN119520530BActive Publication Date: 2026-02-03CHINA TELECOM CLOUD TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411722421.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-28
Publication Date
2026-02-03
Estimated Expiration
2044-11-28

AI Technical Summary

Technical Problem

During the creation of cloud servers, the load balancing scheduling method is unreasonable, resulting in some computing nodes having high resource usage while other computing nodes have idle resources, and the accuracy of resource balancing is not high.

Method used

By receiving cloud host creation requests, parsing resource requirements, obtaining available resources for computing nodes, calculating resource evaluation scores, and determining target computing nodes from among the computing nodes based on similarity and resource evaluation scores, load balancing scheduling is performed.

Benefits of technology

It improved the accuracy of computing node resource balancing, enhanced the operational reliability and stability of the cloud platform, and achieved load balancing scheduling in high-concurrency cloud host creation scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119520530B_ABST
    Figure CN119520530B_ABST
Patent Text Reader

Abstract

The application relates to a cloud host creation method and device, computer equipment, a storage medium and a computer program product. The method comprises the following steps: receiving a cloud host creation request, and obtaining resources requested by a cloud host in multiple dimensions through analysis; obtaining available resources of multiple computing nodes in each dimension, and determining resource evaluation scores of the computing nodes based on the available resources of the computing nodes in each dimension; obtaining the similarity between the resources requested by the cloud host in each dimension and the available resources corresponding to the computing nodes based on the resources requested by the cloud host in each dimension and the available resources of the computing nodes in each dimension; determining a target computing node matched with the cloud host from the computing nodes based on the similarity corresponding to the cloud host and the resource evaluation scores of the computing nodes; and creating the cloud host in the target computing node according to the resources requested by the cloud host in each dimension based on the available resources of the target computing node in each dimension.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, computer equipment, storage medium, and computer program product for creating a cloud host. Background Technology

[0002] In a multi-cloud host scheduling platform, from the perspective of load balancing, when creating a cloud host, it is necessary to configure a reasonable load balancing scheduling method so that the resources of each computing node in the cloud platform can be allocated reasonably.

[0003] However, if the load balancing scheduling method is unreasonable, when creating cloud hosts, some computing nodes may have high resource usage while others may have idle resources, which makes the resource balancing accuracy low. Summary of the Invention

[0004] Therefore, it is necessary to provide a cloud host creation method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can improve the accuracy of resource balancing in order to address the aforementioned technical problems.

[0005] Firstly, this application provides a method for creating a cloud server. The method includes: receiving a cloud server creation request; parsing and obtaining the resources requested by the cloud server under multiple dimensions; acquiring the available resources of multiple computing nodes under each dimension, and determining the resource evaluation score of each computing node based on the available resources of each computing node under each dimension; obtaining the similarity between the resources requested by the cloud server under each dimension and the available resources of each computing node under each dimension, respectively; determining a target computing node matching the cloud server from among the computing nodes based on the similarity scores corresponding to the cloud server and the resource evaluation scores of each computing node; and creating a cloud server on the target computing node according to the resources requested by the cloud server under each dimension, based on the available resources of the target computing node under each dimension.

[0006] In one embodiment, based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node is obtained, including: obtaining the resource inner product between the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension; normalizing the resource inner products based on the statistical values ​​of the resource inner products corresponding to the cloud host to obtain a first normalization result; wherein, multiple results in the first normalization result respectively represent the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

[0007] In one embodiment, based on the similarity scores corresponding to cloud hosts and the resource evaluation scores of each computing node, a target computing node matching the cloud host is determined from among the computing nodes. This includes: determining the average number of cloud hosts corresponding to each computing node based on the node quantity statistics of each computing node and the total number of cloud hosts in the availability zone; determining the variance of matching the number of currently created cloud hosts corresponding to each computing node based on the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts; and determining the target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host, the resource evaluation scores of each computing node, and the variance of each computing node.

[0008] In one embodiment, based on the similarity scores of cloud hosts, the resource evaluation scores of each computing node, and the variance of each computing node, a target computing node matching the cloud host is determined from among the computing nodes. This includes: normalizing the variance of each computing node to obtain a second normalization result; obtaining the congestion level of the cloud host for each computing node based on the comparison result between the average number of cloud hosts and the number of currently created cloud hosts for each computing node, and the second normalization result; and determining the target computing node matching the cloud host from among the computing nodes based on the congestion level of the cloud host, the similarity scores of the cloud host, and the resource evaluation scores of each computing node.

[0009] In one embodiment, based on the congestion level of each cloud host, the similarity level of each cloud host, and the resource evaluation score of each computing node, a target computing node matching the cloud host is determined from the computing nodes. This includes: determining the similarity evaluation score corresponding to each similarity level based on the product between the similarity level and the first weight; determining the congestion evaluation score corresponding to each congestion level based on the product between the congestion level and the second weight; determining the target score of each computing node based on the sum of the similarity evaluation score and the congestion evaluation score, and the resource evaluation score of each computing node; and determining the target computing node matching the cloud host based on the target score of each computing node and the computing node corresponding to the highest target score.

[0010] In one embodiment, determining the target computing node that matches the cloud host based on the computing node corresponding to the highest target score includes: when there are multiple computing nodes corresponding to the highest target score, determining the computing node with the largest memory resources from among the computing nodes corresponding to the highest target score as the target computing node that matches the cloud host.

[0011] Secondly, this application also provides a cloud host creation apparatus. The apparatus includes: a receiving module, configured to receive a cloud host creation request and parse it to obtain the resources requested by the cloud host in multiple dimensions; a determining module, configured to obtain the available resources of multiple computing nodes in each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node in each dimension; a calculating module, configured to obtain the similarity between the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, respectively; a processing module, configured to determine a target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node; and a creation module, configured to create a cloud host in the target computing node according to the resources requested by the cloud host in each dimension, based on the available resources of the target computing node in each dimension.

[0012] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: receiving a cloud host creation request and parsing to obtain the resources requested by the cloud host in multiple dimensions; obtaining the available resources of multiple computing nodes in each dimension, and determining the resource evaluation score of each computing node based on the available resources of each computing node in each dimension; obtaining the similarity between the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, respectively; determining the target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node; and creating a cloud host in the target computing node according to the resources requested by the cloud host in each dimension based on the available resources of the target computing node in each dimension.

[0013] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps: receiving a cloud host creation request and parsing to obtain the resources requested by the cloud host in multiple dimensions; obtaining the available resources of multiple computing nodes in each dimension, and determining the resource evaluation score of each computing node based on the available resources of each computing node in each dimension; obtaining the similarity between the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, respectively; determining a target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node; and creating a cloud host in the target computing node according to the resources requested by the cloud host in each dimension, based on the available resources of the target computing node in each dimension.

[0014] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps: receiving a cloud host creation request and parsing to obtain the resources requested by the cloud host in multiple dimensions; obtaining the available resources of multiple computing nodes in each dimension, and determining the resource evaluation score of each computing node based on the available resources of each computing node in each dimension; obtaining the similarity between the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, respectively; determining a target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node; and creating a cloud host in the target computing node according to the resources requested by the cloud host in each dimension, based on the available resources of the target computing node in each dimension.

[0015] The aforementioned cloud server creation method, apparatus, computer equipment, storage medium, and computer program product receive a cloud server creation request, parse and obtain the resources requested by the cloud server in multiple dimensions, acquire the available resources of multiple computing nodes in each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node in each dimension. Therefore, based on the resource evaluation score of the computing nodes, the available resources of the computing nodes can be effectively evaluated. Furthermore, based on the resources requested by the cloud server in each dimension and the available resources of each computing node in each dimension, the similarity between the resources requested by the cloud server and the corresponding available resources of each computing node is obtained. Thus, considering the similarity... This approach allows for more accurate identification of computing nodes matching cloud hosts. Furthermore, based on the similarity scores of cloud hosts and the resource evaluation scores of each computing node, target computing nodes matching cloud hosts can be determined from among the various computing nodes. This improves the accuracy of resource balancing among computing nodes and the accuracy of identifying matching computing nodes, while maintaining balanced computing node resources. Moreover, based on the available resources of the target computing node in each dimension, cloud hosts can be created within the target computing node according to the resources requested by the cloud host in each dimension. This enables load balancing scheduling in high-concurrency cloud host creation scenarios, reducing the load on the cloud platform while improving its reliability and stability during operation. Attached Figure Description

[0016] Figure 1 This is an application environment diagram of a cloud host creation method in one embodiment;

[0017] Figure 2 This is a flowchart illustrating a cloud host creation method in one embodiment;

[0018] Figure 3This is a flowchart illustrating the process of obtaining the similarity between the resources requested by the cloud host and the available resources of each computing node based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, in one embodiment.

[0019] Figure 4 This is a flowchart illustrating the process of determining a target computing node that matches a cloud host from among the computing nodes based on the similarity scores of the cloud host and the resource evaluation scores of each computing node in one embodiment.

[0020] Figure 5 This is a flowchart illustrating the process of determining a target computing node that matches the cloud host from among the computing nodes based on the similarity of the cloud host, the resource evaluation score of each computing node, and the variance of each computing node in one embodiment.

[0021] Figure 6 This is a flowchart illustrating the process of determining a target computing node that matches a cloud host from among the computing nodes based on the congestion level of the cloud host, the similarity level of the cloud host, and the resource evaluation score of each computing node in one embodiment.

[0022] Figure 7 This is a flowchart illustrating a cloud host creation method in another embodiment;

[0023] Figure 8 A structural block diagram of a cloud host creation device in one embodiment;

[0024] Figure 9 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0025] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0026] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations; and the acquisition, storage, processing and transmission of the data must comply with the relevant provisions of laws and regulations.

[0027] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.

[0028] The cloud host method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104, or it can be located in the cloud or on another network server.

[0029] Specifically, server 104 receives a cloud host creation request from terminal 102, parses and obtains the resources requested by the cloud host in multiple dimensions, and obtains the available resources of multiple computing nodes in each dimension. Based on the available resources of each computing node in each dimension, server 104 determines the resource evaluation score of each computing node. Based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, server 104 obtains the similarity between the resources requested by the cloud host and the available resources of each computing node. Then, based on the similarity scores of the cloud host and the resource evaluation scores of each computing node, server 104 determines the target computing node that matches the cloud host from among the computing nodes. Based on the available resources of the target computing node in each dimension, server 104 creates a cloud host in the target computing node according to the resources requested by the cloud host in each dimension.

[0030] The terminal 102 can be, but is not limited to, various personal computers, laptops, smartphones, tablets, etc. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.

[0031] In one embodiment, such as Figure 2 As shown, a method for creating a cloud server is provided, which can be applied to... Figure 1 Taking server 104 as an example, the following steps are included:

[0032] S202 receives a cloud host creation request and parses it to obtain the resources requested by the cloud host in multiple dimensions.

[0033] Among them, a cloud host creation request refers to a request initiated through a terminal to create a cloud host, and the number of cloud host creation requests can be one or more.

[0034] In some embodiments, a cloud host creation request includes resources requested by the cloud host in multiple dimensions. By parsing the cloud host creation request, the resources requested by the cloud host in multiple dimensions can be obtained.

[0035] These dimensions can include, but are not limited to, CPU, memory, network, and storage dimensions. For example, resources requested by a cloud server under the CPU dimension can include CPU resources; resources requested under the memory dimension can include memory resources; resources requested under the network dimension can include network resources; and resources requested under the storage dimension can include storage resources. CPU resources can include the number of available CPU cores in the tenant area.

[0036] For example, assuming the number of cloud server creation requests is j, meaning the number of cloud servers to be created is j, and each cloud server requests resources across multiple dimensions, including CPU, memory, network, and storage resources, in a high-concurrency cloud server creation scenario on a cloud platform, for the j cloud server creation requests, a resource requirement matrix F can be established based on the resource specifications requested by different cloud servers, such as CPU, memory, network, and storage resources.

[0037]

[0038] in, to These represent the specifications and resources of each cloud server, which can be further refined as follows:

[0039]

[0040] in, This represents the CPU resources requested by the j-th cloud host. This represents the memory resources requested by the j-th cloud host. This represents the network resource requested by the j-th cloud host. This represents the storage resources requested by the j-th cloud host.

[0041] S204: Obtain the available resources of multiple computing nodes under each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node under each dimension.

[0042] In this context, a compute node refers to a candidate compute node in the cloud platform that can be used to create a cloud host. A compute node can represent a physical server, and its available resources can include CPU resources, memory resources, network resources, and storage resources. For example, assuming the number of available compute nodes in the cloud platform is i, then based on the CPU resources, memory resources, network resources, and storage resources corresponding to each compute node, a cloud platform resource model matrix H can be established:

[0043]

[0044] in, to These represent the available resources of each computing node in each dimension, which can be further refined as follows:

[0045]

[0046] in, This represents the available CPU resources for the i-th computing node. This represents the available memory resources for the i-th computing node. This represents the network resources available to the i-th computing node. This represents the storage resources available for i compute nodes.

[0047] There are no restrictions on how to determine the resource evaluation score of each computing node based on the available resources of each computing node in each dimension. The following are examples of several methods.

[0048] In one embodiment, for each computing node, the resource evaluation score matching the available resources of the computing node in each dimension can be determined based on the mapping relationship between available resources and resource evaluation scores in different dimensions; the average resource evaluation score of the computing node in each dimension is calculated to obtain the resource evaluation score of the computing node.

[0049] In one embodiment, for each computing node, a resource evaluation score is determined based on the available resources of the computing node in each dimension and the corresponding resource weights for each dimension. Specifically, the resource evaluation score of the computing node is obtained by weighted summing of the available resources of the computing node in each dimension and the corresponding resource weights for each dimension.

[0050] For example, taking the available resources of a computing node, including CPU resources, memory resources, network resources, and storage resources, as an example, a resource weight vector W can be established:

[0051]

[0052] This means that CPU resources, memory resources, network resources, and storage resources can be assigned weight ratios of 0.3, 0.4, 0.2, and 0.1, respectively. Furthermore, combining this with the cloud platform resource model matrix H described above, a resource evaluation score matrix S can be constructed:

[0053]

[0054] Furthermore, the resource evaluation score matrix S can be refined as follows:

[0055]

[0056] in, , This represents the resource evaluation score of the i-th computing node.

[0057] S206, based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, obtain the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

[0058] There are no restrictions on how the similarity between the resources requested by the cloud host and the available resources of each computing node in each dimension can be obtained, based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension. Examples of possible methods are given below.

[0059] In one embodiment, for each compute node, the resource ratio between the cloud host's requested resources in each dimension and the compute node's available resources in each dimension is determined. Based on the statistical values ​​between the resource ratios corresponding to each dimension, the similarity corresponding to the statistical values ​​is determined as the similarity between the cloud host's requested resources and the compute node's available resources. The similarity corresponding to the statistical values ​​is obtained based on the mapping relationship between statistical values ​​and similarity.

[0060] S208. Based on the similarity scores of the cloud host and the resource evaluation scores of each computing node, determine the target computing node that matches the cloud host from among the computing nodes.

[0061] The target computing node refers to the computing node used to create the cloud host. Based on the similarity scores of the cloud host and the resource evaluation scores of each computing node, the implementation method for determining the target computing node matching the cloud host is not limited. Examples of possible implementation methods are given below.

[0062] In one embodiment, the similarity scores corresponding to the cloud hosts are sorted in descending order to determine the computing nodes corresponding to the top M similarity scores. From the resource evaluation scores of each computing node, the computing node corresponding to the highest resource evaluation score is determined as the second computing node. If the second computing node is included among the M computing nodes, the second computing node is determined as the target computing node matching the cloud host. If the second computing node is not included among the M computing nodes, any one of the M computing nodes is determined as the target computing node matching the cloud host.

[0063] S210: Based on the available resources of the target computing node in each dimension, create a cloud host in the target computing node according to the resources requested by the cloud host in each dimension.

[0064] Specifically, based on the available resources of the target computing node in each dimension, a cloud host is created in the target computing node according to the resources requested by the cloud host in each dimension. Thus, the cloud host can perform the corresponding processing based on the requested resources.

[0065] based on Figure 2 The method described above receives a cloud host creation request, parses and obtains the resources requested by the cloud host across multiple dimensions, acquires the available resources of multiple compute nodes across each dimension, and determines the resource evaluation score of each compute node based on its available resources across each dimension. Thus, based on the resource evaluation score of the compute nodes, the available resources of the compute nodes can be effectively evaluated. Furthermore, based on the resources requested by the cloud host across each dimension and the available resources of each compute node across each dimension, the similarity between the resources requested by the cloud host and the corresponding available resources of each compute node is obtained. Therefore, considering similarity, it is possible to more accurately find the cloud host... The system matches computing nodes with cloud hosts, and then, based on the similarity scores of the cloud hosts and the resource evaluation scores of each computing node, it determines the target computing nodes that match the cloud hosts. This can improve the accuracy of resource balancing of computing nodes and the accuracy of the determined computing nodes that match the cloud hosts while balancing the resources of computing nodes. Furthermore, based on the available resources of the target computing nodes in each dimension, cloud hosts are created in the target computing nodes according to the resources requested by the cloud hosts in each dimension. This can achieve load balancing scheduling in high-concurrency cloud host creation scenarios, reducing the load on the cloud platform while improving the reliability and stability of the cloud platform during operation.

[0066] In the scheduling process of multiple cloud hosts, from the perspective of load balancing, it is desirable for the resources of each computing node on the cloud platform to be reasonably allocated, avoiding a situation where some computing nodes have high resource usage while others are idle. A reasonable cloud host load balancing scheduling algorithm should satisfy two scenarios. First, the cloud host should be scheduled to a computing node that can provide the resources required for its specifications. Furthermore, the scheduled computing node should be the node that best satisfies the cloud host. For example, for CPU-enhanced cloud hosts or cloud hosts with a large number of CPU cores, among the computing nodes that meet the scheduling requirements, it is preferable for the cloud host to be scheduled to the node with the richest available CPU resources. The same applies to other types of cloud hosts. Second, the load balancing algorithm should also, under the premise of satisfying resource load balancing, satisfy the load balancing of the number of cloud hosts as much as possible, that is, the number of cloud hosts on each computing node should be as close as possible. The dot product (or vector dot product) geometrically represents the projection of one vector onto another vector. The larger the dot product of two vectors, the closer the projection of one vector is to the other vector, that is, the more similar the two vectors are.

[0067] Based on this, the similarity between the resources requested by the cloud host and the available resources of each computing node can be determined by the resource inner product between the resources requested by the cloud host and the available resources of each computing node. Specifically, in one embodiment, the implementation method for obtaining the similarity between the resources requested by the cloud host and the available resources of each computing node in each dimension (i.e., S206) based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension can be as follows: Figure 3 As shown, it includes the following steps:

[0068] S302, obtain the resource inner product between the cloud host's requested resources in each dimension and the available resources of each computing node in each dimension.

[0069] For example, taking the number of cloud hosts as j and the number of compute nodes as i, combining the resource requirement matrix F and the cloud platform resource model matrix H mentioned above, we can obtain:

[0070]

[0071] Furthermore, it can be broken down into:

[0072]

[0073] in, That is, the inner product of the resources requested by the j-th cloud host and the available resources of the i-th compute node.

[0074] S304, based on the statistical values ​​of the inner products of each resource corresponding to the cloud host, normalize each inner product to obtain the first normalization result; the multiple results in the first normalization result respectively represent the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

[0075] It should be understood that the inner product of resources corresponding to a cloud server is a quantitative value and cannot intuitively show the similarity between the cloud server's resource status and that of each compute node. Therefore, a normalization function, such as... Functions, etc., linearly transform the inner product of each resource corresponding to the cloud host to convert the corresponding similarity into a probability distribution, which can intuitively represent which computing node the cloud host feels more attached to.

[0076] For example, the first normalized result for each cloud server can be obtained through a benefit-seeking and belonging matrix. This indicates that cloud servers tend to favor the computing nodes with the most abundant resources when scheduling tasks. Specifically:

[0077]

[0078] Furthermore, the self-interest belonging matrix L can be refined as follows:

[0079]

[0080] As can be seen from the above, the self-interest and belonging matrix Each value in the matrix is ​​normalized to the interval [0,1], and the sense of belonging matrix is... Each value in each row represents the similarity between the resources requested by the corresponding cloud host and the available resources of each computing node, and can also represent the cloud host's preference for the resources of each computing node.

[0081] based on Figure 3 The content shown can determine the cosine similarity between the resources requested by the cloud host in each dimension and the resource inner product between each compute node and its available resources in each dimension. Based on this similarity, the cloud host's preference for the available resources of each compute node can be reflected. This allows for the determination of the target compute node to match the cloud host, improving the accuracy of resource balancing and the accuracy of the identified matching compute nodes while maintaining resource balance.

[0082] In one embodiment, the implementation method for determining the target computing node (i.e., S208) matching the cloud host based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node can be as follows: Figure 4 As shown, it includes the following steps:

[0083] S402, based on the node count statistics of each compute node and the total number of cloud hosts in the availability zone, determine the average number of cloud hosts corresponding to each compute node.

[0084] In cloud computing platforms, an Availability Zone (AZ) is an important concept. It refers to a physical area within the same geographic region that has highly redundant and independent power, network, and hardware facilities. Compute nodes are deployed within an Availability Zone.

[0085] Specifically, the ratio of the total number of cloud hosts to the statistical value of the number of nodes is determined as the average number of cloud hosts per compute node, meaning the average number of cloud hosts per compute node is the same. For example, if the total number of cloud hosts in an availability zone is N, the statistical value of the number of nodes is i, and the average number of cloud hosts is... .

[0086] S404, based on the average number of cloud hosts corresponding to each compute node and the number of currently created cloud hosts, determine the variance that matches the number of currently created cloud hosts corresponding to each compute node.

[0087] For cloud platforms with balanced cloud host counts, the number of currently created cloud hosts on each compute node should be very close to the average number of cloud hosts. Therefore, this application uses variance to measure the degree of balance in the number of created cloud hosts on compute nodes. For example, a large variance may indicate that the number of currently created cloud hosts on a compute node differs significantly from the average number of cloud hosts; a small variance indicates that the number of currently created cloud hosts on a compute node is not significantly different from the average number of cloud hosts.

[0088] Specifically, for each compute node, the difference between the number of currently created cloud hosts corresponding to the compute node and the average number of cloud hosts is determined; the square of the difference is determined as the variance that matches the number of currently created cloud hosts corresponding to each compute node.

[0089] for example, This represents the number of cloud hosts currently created corresponding to the i-th compute node. Let represent the variance matching the number of currently created cloud hosts corresponding to the i-th compute node. .

[0090] S406. Based on the similarity scores of the cloud host, the resource evaluation scores of each computing node, and the variance of each computing node, determine the target computing node that matches the cloud host from among the computing nodes.

[0091] The implementation method for determining the target computing node that matches the cloud host based on the similarity of the cloud host, the resource evaluation score of each computing node, and the variance of each computing node is not limited. The following are examples of possible implementation methods.

[0092] In one embodiment, the similarity scores corresponding to the cloud hosts are sorted in descending order to determine the computing nodes corresponding to the top M similarity scores; based on the resource evaluation scores of each computing node, the computing node corresponding to the highest resource evaluation score is determined as the second computing node; based on the variance of each computing node, the computing node corresponding to the lowest variance is determined as the third computing node; if the M computing nodes include the second computing node, and the second computing node is not the same as the third computing node, the second computing node is determined as the target computing node matching the cloud host.

[0093] In one embodiment, if the M computing nodes do not include the second computing node, any one of the M computing nodes is determined as the target computing node that matches the cloud host.

[0094] In one embodiment, if the M computing nodes include a second computing node and the second computing node is the same as the third computing node, then any one of the M computing nodes other than the second computing node is determined as the target computing node that matches the cloud host.

[0095] based on Figure 4 The content shown demonstrates that by considering the number of cloud hosts currently created on each compute node, and thus determining the variance corresponding to each compute node based on the number of cloud hosts currently created, the cloud host creation status of each compute node can be evaluated. Furthermore, by determining the target compute node that matches the cloud host based on the variance corresponding to each compute node, the accuracy of determination can be improved while balancing compute node resources.

[0096] Combination Figure 3 As shown, the variance corresponding to a compute node can measure the load balancing of the number of cloud hosts on the compute node, but it cannot show the congestion of the compute node for the cloud hosts to be created. This is because a large variance may indicate a large difference between the number of currently created cloud hosts on the compute node and the average number of cloud hosts, but it cannot show whether the number of currently created cloud hosts is less than or more than the average number of cloud hosts. In order to characterize the congestion of the compute node for the cloud hosts to be created, the variance corresponding to the compute node can be normalized, thereby reducing the variance corresponding to the compute node to a probability distribution represented in the interval [0,1].

[0097] In one embodiment, the method for determining the target computing node (i.e., S406) matching the cloud host from among the computing nodes based on the similarity scores of the cloud host, the resource evaluation scores of each computing node, and the variance of each computing node can be as follows: Figure 5 As shown, it includes the following steps:

[0098] S502, normalize the variance corresponding to each calculation node to obtain the second normalization result.

[0099] S504, based on the comparison between the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts, as well as the second normalization result, obtains the congestion level of cloud hosts for each computing node.

[0100] Among them, congestion level is used to characterize how appropriately cloud hosts are created on computing nodes.

[0101] Specifically, based on the comparison between the average number of cloud hosts corresponding to each compute node and the current number of created cloud hosts, it is determined whether to adjust the sign of the second normalization result. If no adjustment is needed, the congestion level of cloud hosts on each compute node is obtained based on the second normalization result. If adjustment is needed, the congestion level of cloud hosts on each compute node is obtained based on the adjusted second normalization result. For example, if the current number of created cloud hosts is less than the average number of cloud hosts, the sign of the second normalization result is adjusted; otherwise, it is not adjusted.

[0102] For example, taking the number of computation nodes as i, the symbolic function can be defined as:

[0103]

[0104] in, Through symbolic functions Adjust the sign of the variance probability distribution to affect the sign of the second normalization result; this applies to the number of currently created cloud hosts corresponding to the compute node. Less than the average number of cloud servers hour, A positive value indicates that the weight of the computing node needs to be increased; conversely, a negative value indicates that the weight of the computing node needs to be decreased.

[0105] Furthermore, based on the variance of each computing node, a variance matrix D can be constructed:

[0106]

[0107] Furthermore, based on the variance matrix D, a crowding aversion matrix is ​​constructed. :

[0108]

[0109] Furthermore, the crowding aversion matrix It can be further refined as follows:

[0110]

[0111] in, Each value in the table represents the congestion level of the cloud host for each computing node.

[0112] S506, based on the congestion level of each cloud host, the similarity level of each cloud host, and the resource evaluation score of each computing node, determines the target computing node that matches the cloud host from among the computing nodes.

[0113] The implementation method for determining the target computing node that matches the cloud host based on each congestion level, the similarity level corresponding to the cloud host, and the resource evaluation score of each computing node is not limited. The following are examples of possible implementation methods.

[0114] In one embodiment, the congestion levels corresponding to the cloud hosts are sorted in ascending order to determine the top Q congestion levels; the similarity levels corresponding to the cloud hosts are sorted in descending order to determine the computing nodes corresponding to the top M similarity levels; based on the resource evaluation scores of each computing node, the computing node corresponding to the highest resource evaluation score is determined as the second computing node; when the second computing node is included in both the M computing nodes and the computing nodes corresponding to the Q congestion levels, the second computing node is determined as the target computing node matching the cloud host.

[0115] In one embodiment, when the M computing nodes include the second computing node and the Q congestion levels do not include the second computing node, any computing node other than the second computing node among the M computing nodes is determined as the target computing node matching the cloud host.

[0116] In some embodiments, when the M computing nodes do not include the second computing node, and the computing nodes corresponding to the Q congestion levels include the second computing node, any one of the computing nodes corresponding to the Q congestion levels is determined as the target computing node matching the cloud host.

[0117] based on Figure 5 The content shown can improve the accuracy of determining the target computing node that matches the cloud host by taking into account the congestion of the cloud host on each computing node.

[0118] In one embodiment, the method for determining the target computing node (i.e., S506) matching the cloud host from among the computing nodes, based on the congestion level of the cloud host, the similarity level of the cloud host, and the resource evaluation score of each computing node, can be as follows: Figure 6 As shown, it includes the following steps:

[0119] S602, based on the product between each similarity and the first weight corresponding to the cloud host, determine the similarity evaluation score corresponding to each similarity, and based on the product between each congestion and the second weight corresponding to the cloud host, determine the congestion evaluation score corresponding to each congestion.

[0120] S604. Based on the sum of the similarity evaluation scores corresponding to each similarity level and the congestion evaluation scores corresponding to each congestion level, as well as the resource evaluation scores of each computing node, determine the target score of each computing node.

[0121] The similarity evaluation score corresponding to each similarity level, the congestion evaluation score corresponding to each congestion level, the resource evaluation score of each computing node, and the target score of each computing node can be represented by a matrix.

[0122] Specifically, by adding the matrix corresponding to the similarity evaluation score for each similarity level to the matrix corresponding to the congestion evaluation score for each congestion level, and then multiplying it by the transpose of the matrix corresponding to the resource evaluation score for each computing node, the target score matrix can be obtained. Each value in the target score matrix represents the target score of each computing node.

[0123] For example, based on the resource evaluation score matrix S mentioned above, the resource evaluation score of each computing node can be obtained; based on the above-mentioned benefit-seeking and belonging matrix... This allows us to obtain the similarity scores for each cloud host; based on the aforementioned crowding aversion matrix... We can obtain the congestion levels corresponding to each cloud host, and then obtain the target score matrix corresponding to the j-th cloud host. :

[0124]

[0125] in, express The j-th line in Each value in the table represents the target score of each computing node corresponding to the j-th cloud host; and These are represented as the first weight and the second weight, respectively. and They can be 0.8 and 0.2 respectively, or set to other values.

[0126] Based on the above, taking the resources requested by a cloud server across multiple dimensions, including CPU resources, memory resources, network resources, and storage resources, as an example, in one embodiment, such as... Figure 7 As shown, a method for creating a cloud server is provided, which can be applied to... Figure 1 Taking server 104 as an example, the following steps are included:

[0127] S702 receives cloud host creation requests and parses them to obtain the resources requested by the cloud host in multiple dimensions.

[0128] For example, if the number of cloud servers is j, and each cloud server requests resources across multiple dimensions, including CPU resources, memory resources, network resources, and storage resources, then a resource demand matrix F is established:

[0129]

[0130] Among them, among them, This represents the CPU resources requested by the j-th cloud host. This represents the memory resources requested by the j-th cloud host. This represents the network resource requested by the j-th cloud host. This represents the storage resources requested by the j-th cloud host.

[0131] S704 obtains the available resources of multiple computing nodes under each dimension, and determines the resource evaluation score of each computing node based on the available resources of each computing node under each dimension.

[0132] In hybrid cloud platform scenarios, tenant area memory resources are typically scarce. Due to the high risk of memory over-provisioning, high memory loads can easily lead to Out of Memory (OOM) errors, causing the cloud platform's operating system to kill cloud host processes, resulting in significant losses and inconvenience. Furthermore, CPU resources are usually under lower load, and their utilization can be improved by serialization and increasing over-provisioning. Network and storage resources, on the other hand, are more abundant than CPU and memory resources. Therefore, a resource weight vector, including CPU, memory, network, and storage resources, is established to achieve load balancing scheduling.

[0133] Memory overflow occurs when an application system has unrecoverable memory or uses too much memory, ultimately causing the program to require more memory than the maximum available memory. In this case, the program will fail to run, the system will display a memory overflow warning, and sometimes the software will automatically close.

[0134] For example, assuming the number of computing nodes is i, then based on the CPU resources, memory resources, network resources, and storage resources corresponding to each computing node, a cloud platform resource model matrix H is established:

[0135]

[0136] in, This represents the CPU resources of the i-th computing node. This represents the memory resources of the i-th computing node. This represents the network resources of the i-th computing node. This represents the storage resources of i computing nodes.

[0137] Furthermore, construct the resource evaluation score matrix S:

[0138]

[0139] in, , This represents the resource evaluation score of the i-th computing node.

[0140] S706 obtains the resource inner product between the cloud host's requested resources in each dimension and the available resources of each compute node in each dimension.

[0141] Combining the resource demand matrix F and the cloud platform resource model matrix H mentioned above, we can obtain:

[0142]

[0143] in, That is, the inner product of the resources requested by the j-th cloud host and the available resources of the i-th compute node.

[0144] S708, based on the statistical values ​​of the inner products of each resource corresponding to the cloud host, normalize each inner product to obtain the first normalization result; wherein, the multiple results in the first normalization result respectively represent the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

[0145] S710 determines the average number of cloud hosts corresponding to each compute node based on the node count statistics of each compute node and the total number of cloud hosts in the availability zone.

[0146] For example, if the total number of cloud servers is N, the number of nodes is i, and the average number of cloud servers is... .

[0147] S712 determines the variance that matches the number of currently created cloud hosts corresponding to each compute node, based on the average number of cloud hosts corresponding to each compute node and the number of currently created cloud hosts.

[0148] for example, This represents the number of cloud hosts currently created corresponding to the i-th compute node. Let represent the variance of the number of currently created cloud hosts corresponding to the i-th compute node. .

[0149] S714, normalizes the variance corresponding to each computing node to obtain the second normalization result, and obtains the congestion degree of cloud hosts for each computing node based on the comparison result between the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts, as well as the second normalization result.

[0150] It should be understood that, while ensuring resource load balancing, the number of cloud hosts should be balanced as much as possible; that is, the number of cloud hosts on each compute node should be as close as possible. Therefore, a congestion aversion matrix can be established to further maximize the balanced number of cloud hosts while still ensuring resource load balancing.

[0151] Among them, the variance matrix D is constructed based on the variance of each computing node:

[0152]

[0153] Furthermore, based on the constructed variance matrix D, a crowding aversion matrix is ​​constructed. :

[0154]

[0155] in, Each value in the table represents the congestion level of the cloud host for each computing node.

[0156] S716 determines the similarity evaluation score corresponding to each similarity based on the product between each similarity and the first weight corresponding to the cloud host, and determines the congestion evaluation score corresponding to each congestion based on the product between each congestion and the second weight corresponding to the cloud host.

[0157] S718. Add the matrix corresponding to the similarity evaluation score for each similarity level to the matrix corresponding to the congestion evaluation score for each congestion level, and multiply it by the transpose of the matrix corresponding to the resource evaluation score for each computing node to obtain the target score matrix; each value in the target score matrix represents the target score of each computing node.

[0158] Specifically, based on the resource evaluation score matrix S mentioned above, the resource evaluation score of each computing node can be obtained; based on the aforementioned benefit-seeking and belonging matrix... This allows us to obtain the similarity scores for each cloud host; based on the aforementioned crowding aversion matrix... We can obtain the congestion levels corresponding to each cloud host, and then obtain the target score matrix corresponding to the j-th cloud host. :

[0159]

[0160] in, express The j-th line in Each value in the table represents the target score of each computing node corresponding to the j-th cloud host; and These are represented as the first weight and the second weight, respectively.

[0161] S720 creates cloud hosts on the target computing node according to the resources requested by the cloud hosts in each dimension, based on the available resources of the target computing node in each dimension.

[0162] The specific details of S702-S720 can be found in the content adaptation description, and will not be repeated here.

[0163] based on Figure 7As shown, the process begins by initially scoring each computing node based on its available resources, resulting in a resource evaluation score. Then, the similarity between the resources requested by the cloud host and the available resources of each computing node is calculated using matrix inner product operations, reflecting the cloud host's preference for each node's resources. Next, a preference matrix is ​​defined based on the vector inner product and cosine similarity, allowing for the rapid calculation of each cloud host's affinity for each computing node, representing a percentage-based preference. Furthermore, by using the average number of cloud hosts and variance corresponding to each computing node, a congestion aversion matrix is ​​constructed, reflecting the cloud host's congestion level across computing nodes, quickly revealing the overall cloud host distribution on the cloud platform. Finally, based on the resource evaluation scores, preference matrix, and congestion aversion matrix, each cloud host's final score for each computing node is calculated. The host with the highest score is then scheduled, achieving load balancing in high-concurrency cloud host creation scenarios. This reduces the cloud platform load while improving system reliability and stability.

[0164] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0165] Based on the same inventive concept, this application provides a cloud server creation apparatus for implementing the cloud server creation method described above. The solution provided by this apparatus is similar to the implementation described in the above method; therefore, the specific limitations in one or more cloud server creation apparatus embodiments provided below can be found in the limitations of the cloud server creation method described above, and will not be repeated here.

[0166] In one embodiment, such as Figure 8As shown, a cloud host creation apparatus is provided, including: a receiving module 802, a determining module 804, a computing module 806, a processing module 808, and a creation module 810, wherein: the cloud host creation apparatus includes: a receiving module 802, used to receive a cloud host creation request and parse it to obtain the resources requested by the cloud host under multiple dimensions; a determining module 804, used to obtain the available resources of multiple computing nodes under each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node under each dimension; a computing module 806, used to obtain the similarity between the resources requested by the cloud host under each dimension and the available resources of each computing node under each dimension, respectively; a processing module 808, used to determine the target computing node matching the cloud host from among the computing nodes based on the similarity corresponding to the cloud host and the resource evaluation score of each computing node; and a creation module 810, used to create a cloud host in the target computing node according to the resources requested by the cloud host under each dimension based on the available resources of the target computing node under each dimension.

[0167] In one embodiment, the computing module is further configured to: obtain the resources requested by the cloud host in each dimension, and the resource inner product between them and the available resources of each computing node in each dimension; normalize each resource inner product based on the statistical value of each resource inner product corresponding to the cloud host to obtain a first normalization result; wherein, multiple results in the first normalization result respectively characterize the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

[0168] In one embodiment, the processing module is further configured to: determine the average number of cloud hosts corresponding to each computing node based on the node count statistics of each computing node and the total number of cloud hosts in the availability zone; determine the variance that matches the number of currently created cloud hosts corresponding to each computing node based on the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts; and determine the target computing node that matches the cloud host from among the computing nodes based on the similarity of the cloud host, the resource evaluation score of each computing node, and the variance of each computing node.

[0169] In one embodiment, the processing module is further configured to: normalize the variance corresponding to each computing node to obtain a second normalization result; obtain the congestion level of the cloud host for each computing node based on the comparison result between the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts, and the second normalization result; and determine the target computing node that matches the cloud host from among the computing nodes based on the congestion level corresponding to the cloud host, the similarity level corresponding to the cloud host, and the resource evaluation score of each computing node.

[0170] In one embodiment, the processing module is further configured to: determine the similarity evaluation score corresponding to each similarity based on the product between each similarity and the first weight corresponding to the cloud host; and determine the congestion evaluation score corresponding to each congestion based on the product between each congestion and the second weight corresponding to the cloud host; determine the target score for each computing node based on the sum of the similarity evaluation score corresponding to each similarity and the congestion evaluation score corresponding to each congestion, and the resource evaluation score of each computing node; and determine the target computing node matching the cloud host based on the target score of each computing node and the computing node corresponding to the largest target score.

[0171] In one embodiment, the processing module is further configured to: when there are multiple computing nodes corresponding to the maximum target score, determine the computing node with the largest memory resources from among the computing nodes corresponding to the maximum target score as the target computing node that matches the cloud host.

[0172] The modules in the aforementioned cloud server creation device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the processor of a computer device in hardware form or independent of it, or stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each module.

[0173] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 9 As shown, this computer device includes a processor, memory, input / output interfaces (I / O), and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operating system and computer programs stored in the non-volatile storage media. The database stores data such as cloud host creation requests. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a cloud host creation method.

[0174] Those skilled in the art will understand that Figure 9The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0175] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0176] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0177] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0178] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments described above. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0179] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0180] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for creating a cloud server, characterized in that, The method includes: Receive cloud host creation requests and parse them to obtain the resources requested by the cloud host in multiple dimensions; Obtain the available resources of multiple computing nodes under each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node under each dimension; Based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension, the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node is obtained respectively. Based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node, a target computing node matching the cloud host is determined from among the computing nodes. Based on the available resources of the target computing node in each of the dimensions, the cloud host is created in the target computing node according to the resources requested by the cloud host in each of the dimensions; The step of determining a target computing node matching the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node includes: determining the average number of cloud hosts corresponding to each computing node based on the node quantity statistics of each computing node and the total number of cloud hosts in the availability zone; determining the variance matching the number of currently created cloud hosts corresponding to each computing node based on the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts; normalizing the variance corresponding to each computing node to obtain a second normalization result corresponding to each computing node; obtaining the congestion degree of the cloud host for each computing node based on the comparison result between the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts, and the second normalization result, wherein the congestion degree is used to characterize the suitability of the cloud host being created on the computing node; and determining a target computing node matching the cloud host from among the computing nodes based on the congestion degree corresponding to the cloud host, the similarity scores corresponding to the cloud host, and the resource evaluation scores of each computing node.

2. The method according to claim 1, characterized in that, The step of obtaining the similarity between the resources requested by the cloud host in each of the dimensions and the available resources of each computing node in each of the dimensions includes: Obtain the resource inner product between the cloud host's requested resources in each dimension and the available resources of each computing node in each dimension; Based on the statistical values ​​of the inner products of each resource corresponding to the cloud host, the inner products of each resource are normalized to obtain the first normalization result. Among them, the multiple results in the first normalization result respectively represent the similarity between the resources requested by the cloud host and the available resources corresponding to each computing node.

3. The method according to claim 1, characterized in that, The step of determining a target computing node matching the cloud host from among the computing nodes based on the congestion level of each cloud host, the similarity level of each cloud host, and the resource evaluation score of each computing node includes: Based on the product between the similarity and the first weight corresponding to each cloud host, the similarity evaluation score corresponding to each similarity is determined, and based on the product between the congestion and the second weight corresponding to each cloud host, the congestion evaluation score corresponding to each congestion is determined. The target score for each computing node is determined based on the sum of the similarity evaluation score corresponding to each similarity and the congestion evaluation score corresponding to each congestion and the resource evaluation score of each computing node. Based on the target scores of each computing node, and based on the computing node corresponding to the largest target score, a target computing node matching the cloud host is determined.

4. The method according to claim 1, characterized in that, The step of obtaining the similarity between the resources requested by the cloud host in each of the dimensions and the available resources of each computing node in each of the dimensions includes: For each computing node, determine the resource ratio between the cloud host's requested resources in each dimension and the available resources of the computing node in each dimension; Based on the statistical values ​​between the resource ratios corresponding to each dimension, the similarity corresponding to the statistical values ​​is determined as the similarity between the resources requested by the cloud host and the available resources corresponding to the computing node; wherein, the similarity corresponding to the statistical values ​​is obtained based on the mapping relationship between the statistical values ​​and the similarity.

5. The method according to claim 1, characterized in that, The method further includes: Sort the similarities corresponding to the cloud hosts in descending order, and determine the calculation nodes corresponding to the top M similarities. From the resource evaluation scores of each computing node, the computing node corresponding to the highest resource evaluation score is determined as the second computing node; If the M computing nodes include the second computing node, the second computing node is determined as the target computing node that matches the cloud host; If the second computing node is not included among the M computing nodes, any one of the M computing nodes shall be determined as the target computing node that matches the cloud host.

6. The method according to claim 1, characterized in that, The step of determining the target computing node matching the cloud host based on the computing node corresponding to the highest target score includes: When there are multiple computing nodes corresponding to the highest target score, the computing node with the largest memory resources among the computing nodes corresponding to the highest target score is determined as the target computing node that matches the cloud host.

7. A cloud server creation device, characterized in that, The device includes: The receiving module is used to receive cloud host creation requests and parse them to obtain the resources requested by the cloud host in multiple dimensions. The determination module is used to obtain the available resources of multiple computing nodes under each dimension, and determine the resource evaluation score of each computing node based on the available resources of each computing node under each dimension. The computing module is used to obtain the similarity between the resources requested by the cloud host and the available resources of each computing node in each dimension, based on the resources requested by the cloud host in each dimension and the available resources of each computing node in each dimension. The processing module is used to determine a target computing node that matches the cloud host from among the computing nodes based on the similarity scores corresponding to the cloud host and the resource evaluation scores of each computing node. A creation module is used to create a cloud host in the target computing node according to the resources requested by the cloud host in each of the dimensions, based on the available resources of the target computing node in each of the dimensions. The processing module is further configured to: determine the average number of cloud hosts corresponding to each computing node based on the node count statistics of each computing node and the total number of cloud hosts in the availability zone; determine the variance matching the number of currently created cloud hosts corresponding to each computing node based on the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts; normalize the variance corresponding to each computing node to obtain a second normalization result corresponding to each computing node; obtain the congestion degree of the cloud host for each computing node based on the comparison result between the average number of cloud hosts corresponding to each computing node and the number of currently created cloud hosts, and the second normalization result, wherein the congestion degree is used to characterize the suitability of the cloud host being created on the computing node; and determine the target computing node matching the cloud host from among the computing nodes based on the congestion degree corresponding to each cloud host, the similarity degree corresponding to each cloud host, and the resource evaluation score of each computing node.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Cloud host building method and device, electronic equipment and readable storage medium

    CN111866054A