A container scheduling optimization method for improving cluster resource utilization

By combining a resource balance scoring model based on entropy weighting and principal component analysis with a comprehensive scheduling strategy that integrates simulated annealing and machine learning models, the problem of uneven resource allocation in container scheduling is solved, achieving efficient utilization of cluster resources and improved stability.

CN121523920BActive Publication Date: 2026-03-31GUIZHOU POLYMER COMPUTING SERVICE CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-01-19
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

Existing container scheduling strategies cannot effectively and dynamically perceive multi-dimensional resource utilization, resulting in uneven distribution of cluster resources, with some servers overloaded while other servers are idle, leading to low overall resource utilization.

Method used

Resource balance is calculated using entropy weighting and principal component analysis. Combined with simulated annealing and machine learning models, a comprehensive scheduling cost function is constructed to achieve fine-grained perception and intelligent scheduling of cluster resources, thereby optimizing container deployment decisions.

Benefits of technology

It improved the utilization rate of cluster resources, avoided resource overheating or idleness, improved overall resource efficiency and system stability, reduced resource fragmentation, and ensured reasonable resource space for subsequent operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121523920B_ABST
    Figure CN121523920B_ABST
Patent Text Reader

Abstract

The application discloses a container scheduling optimization method for improving cluster resource utilization, and relates to the technical field of container scheduling.The method comprises the following steps: step S1, collecting resource utilization data of a computing server in a cluster in real time, and cleaning and standardizing the collected data to form a standardized resource vector; step S2, calculating the real-time comprehensive health score of each computing server based on the standardized resource vector; step S3, for a job to be scheduled, constructing a comprehensive scheduling cost function to calculate the cost value of deployment to each candidate server; step S4, based on a simulated annealing algorithm, making a joint scheduling decision for the jobs in the current scheduling queue to find a deployment scheme with the lowest total cost; and step S5, executing container scheduling according to the decision result, and optimizing the scheduling model based on job operation feedback data.The application can perceive the cluster state, make a scheduling decision through an optimization algorithm, and maximize the resource utilization of the entire cluster.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of container scheduling technology, and more specifically to a container scheduling optimization method for improving cluster resource utilization. Background Technology

[0002] As the underlying support for cloud computing, traditional virtualization technology suffers from low computing efficiency, slow initialization, and poor portability because it operates on virtual machines. Container technology, however, effectively solves these problems. Containers not only retain the encapsulation and isolation characteristics of traditional virtualization technology but also offer lightweight design, high performance, and faster startup speeds. Furthermore, containers utilize image technology to not only package applications, ensuring complete consistency between the cloud and local environments, but also simplify application management and upgrades, accelerating application development and deployment processes and facilitating rapid version updates. With the development and improvement of microservice architecture, container technology, represented by Docker, has gradually matured. By packaging different microservice processes into images and starting each microservice process as a container, the entire system can be automated through a single script.

[0003] In complex cloud computing environments with multiple clusters and resources, fixed scheduling rules may fail to adapt to load changes in a timely manner, leading to uneven resource allocation. Some clusters may be overloaded, while others may be underloaded. Traditional container scheduling strategies are often based on simple resource requests and limits, lacking awareness and prediction of real-time utilization of multi-dimensional resources. This easily leads to uneven resource utilization among cluster servers, with some servers overloaded while others are idle, resulting in low overall resource utilization. Therefore, a more intelligent scheduling method is needed that can dynamically perceive the cluster status and make scheduling decisions through optimization algorithms, thereby maximizing the resource utilization of the entire cluster.

[0004] Chinese patent CN109714400B discloses an energy-optimized resource scheduling system and method for container clusters. The system includes a server resource monitor, a container performance testing pool, a container energy consumption model manager, a container energy consumption caching module, a container scheduling decision-maker, a dynamic adjustment module, and multiple servers. The scheduling method involves: periodically collecting characteristic parameters of the container runtime environment and checking the status of the container energy consumption estimation model; dynamically optimizing scheduling decisions based on the energy consumption estimates of the container energy consumption estimation model; and simultaneously copying containers from the production environment to the container performance testing pool to iteratively train the dataset and update the model, thereby improving the accuracy of the container energy consumption estimates. This invention customizes scheduling strategies with the goal of minimizing overall data center energy consumption, scheduling requested containers to suitable servers in real time to achieve optimal energy consumption, and possesses self-updating and iterative capabilities. It reduces energy consumption while integrating server resources, improving resource utilization and saving data center operating costs.

[0005] For example, Chinese patent CN111124689B discloses a method for dynamic allocation of container resources in a cluster. First, an LSTM-RBF model is used to analyze the historical resource usage time series of containers and predict future resource usage. Second, a multi-container, multi-resource allocation model is constructed, which considers different types of applications, sets different weights for applications with different QoS requirements, and can set weights according to the degree of demand of each application for each type of resource. Then, a system utility maximization model is constructed, which dynamically allocates various resources used by multiple containers with the goal of maximizing the overall system utility. Finally, an improved whale optimization algorithm is used to solve the multi-container, multi-resource problem. By dynamically scheduling various resources used by multiple containers simultaneously from the perspective of the overall system, the system utility can be maximized and the overall system resource utilization can be optimized. Summary of the Invention

[0006] The technical problem to be solved by the present invention is to address the shortcomings of the existing technology by providing an open container scheduling optimization method based on a multi-dimensional resource scoring and cost model. This method monitors the resource load of computing servers in real time, establishes a quantitative scoring model, constructs a scheduling cost function based on this model, and finally selects the server with the lowest overall cost for container deployment, thereby improving the utilization rate of cluster resources.

[0007] To achieve the above objectives, the technical solution adopted by the present invention is as follows:

[0008] A container scheduling optimization method to improve cluster resource utilization includes the following steps:

[0009] Step S1: Collect resource utilization data of computing servers in the cluster in real time, and clean and standardize the collected data to form a standardized resource vector;

[0010] Step S2: Based on the standardized resource vector, the entropy weight method is used to dynamically calculate the weight of each resource indicator, and the principal component analysis method is used to calculate the resource balance of each computing server. The real-time comprehensive health score of each computing server is calculated by combining the resource indicator weights and the resource balance.

[0011] Step S3: For the job to be scheduled, construct a comprehensive scheduling cost function to calculate the cost value of its deployment to each candidate server. The comprehensive scheduling cost function includes: a real-time load cost item based on the real-time comprehensive health score, a resource matching cost item based on the matching degree between job resource requirements and available server resource vectors, a conflict prediction cost item to predict performance conflicts after deployment, and a cross-server communication cost item based on inter-job communication dependencies.

[0012] Step S4: Based on the simulated annealing algorithm, perform joint scheduling decisions on the jobs in the current scheduling queue to find the deployment scheme with the lowest total cost;

[0013] Step S5: Perform container scheduling based on the decision results, and optimize the scheduling model based on job operation feedback data.

[0014] Furthermore, in step S1, the resource utilization data of the server includes: CPU utilization, memory utilization, disk I / O utilization, network interface utilization, CPU wait rate, memory paging rate, and average disk I / O wait time.

[0015] Furthermore, in step S2, the dynamic calculation of the weights of each resource indicator using the entropy weight method includes the following steps:

[0016] Based on the standardized resource vectors of all computing servers, a resource indicator judgment matrix is ​​constructed.

[0017] Calculate the characteristic weight of each resource indicator;

[0018] Calculate the entropy value of each resource indicator;

[0019] Calculate the difference coefficients of each resource indicator based on the entropy value;

[0020] The difference coefficients are normalized to obtain the dynamic weights of each resource indicator.

[0021] Furthermore, in step S2, the calculation of the resource balance of each computing server based on principal component analysis includes the following steps:

[0022] Perform principal component analysis on the resource utilization data of a single computing server;

[0023] Obtain the variance contribution rate of the first principal component;

[0024] Resource balance is defined as the difference between 1 and the variance contribution rate.

[0025] Furthermore, in step S3, the value of the real-time load cost item is negatively correlated with the real-time comprehensive health score of the computing server; the resource matching cost item is obtained by calculating the Euclidean norm of the job resource demand vector and the server available resource vector; the conflict prediction cost item is predicted by a machine learning model, representing the probability value of server performance conflict after the job is deployed on the server; the cross-server communication cost item is calculated based on the network topology distance between servers when there is a communication dependency between the job to be scheduled and the deployed job.

[0026] Furthermore, the machine learning model in the conflict prediction cost item is a gradient boosting decision tree model; this model uses historical monitoring data and job operation logs as training samples, and its input features include job resource demand vector, server current resource status vector and server historical operation feature vector, and the output is a conflict probability value between 0 and 1.

[0027] Furthermore, in step S4, the simulated annealing algorithm includes the following steps:

[0028] Randomly assign a server that meets the resource requirements to each job in the scheduling queue to form an initial solution, and calculate the total cost;

[0029] New solutions are generated by randomly changing the deployment server of a job or randomly swapping the deployment servers of two jobs.

[0030] Calculate the cost difference between the new solution and the current solution. If the cost difference is less than 0, accept the new solution. If the cost difference is greater than or equal to 0, accept it with a preset probability. The preset probability follows the Metropolis criterion and is related to the cost difference and the current temperature of the simulated annealing algorithm.

[0031] The algorithm temperature is reduced according to the preset cooling rate;

[0032] When the temperature drops to the termination temperature or the maximum number of iterations is reached, the current optimal solution is output as the final scheduling decision.

[0033] Furthermore, step S5 specifically includes the following steps:

[0034] The management server parses the decision plan into container creation instructions and sends them to the target compute server. The compute server then pulls the image from the shared storage, mounts the storage, and starts the program according to the instructions.

[0035] During job execution, collect actual resource usage data of container instances and performance metrics data of the servers they reside on;

[0036] Based on the collected data, evaluate the effectiveness of this scheduling decision, including determining whether performance conflicts occur and analyzing resource utilization efficiency, and generate labeled training samples.

[0037] Using the labeled training samples, the machine learning model in the conflict prediction cost item is incrementally trained and updated.

[0038] A storage medium, characterized in that the storage medium stores instructions, which, when read by a computer, cause the computer to execute a container scheduling optimization method to improve the utilization of cluster resources.

[0039] An electronic device, characterized in that it includes a processor and a storage medium, wherein the processor executes instructions in the storage medium.

[0040] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0041] 1. This invention achieves refined perception and intelligent scheduling of cluster resources through a comprehensive health scoring model based on entropy weighting and PCA, as well as a multi-factor cost function. It can accurately schedule jobs to the most suitable servers, effectively avoiding the problem of local resource overheating while other resources are idle, thereby improving the overall resource utilization efficiency.

[0042] 2. By introducing resource balancing and conflict prediction costs, this invention can effectively identify and avoid servers with potential bottlenecks and performance conflicts. This prevents application performance fluctuations or crashes caused by resource contention, improving the stability and service quality of the entire cluster.

[0043] 3. The entropy weight method employed in this invention can dynamically adjust resource weights based on the current actual load of the cluster, enabling the scheduling strategy to adapt to the workload characteristics of different periods. Simultaneously, the global search and feedback learning mechanism based on simulated annealing allows the system to continuously learn and optimize from historical decisions.

[0044] 4. This invention uses the Euclidean norm to calculate resource matching costs, which can prioritize the deployment of servers with relatively balanced resources. This not only reduces resource fragmentation, allowing the cluster to accommodate more jobs, but also leaves more reasonable resource space for subsequent jobs, achieving a higher level of scheduling quality. Attached Figure Description

[0045] Other features, objects, and advantages of the invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0046] Figure 1This is a flowchart illustrating an embodiment of the present invention;

[0047] Figure 2 This is a schematic diagram of the container architecture according to an embodiment of the present invention;

[0048] Figure 3 This is a schematic diagram illustrating the feedback optimization in an embodiment of the present invention. Detailed Implementation

[0049] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be described in detail below with reference to the accompanying drawings and specific embodiments.

[0050] like Figure 1 As shown, a container scheduling optimization method for improving cluster resource utilization is characterized by the following steps:

[0051] Step S1: Collect resource utilization data of computing servers in the cluster in real time, and clean and standardize the collected data to form a standardized resource vector;

[0052] Step S2: Based on the standardized resource vector, the entropy weight method is used to dynamically calculate the weight of each resource indicator, and the principal component analysis method is used to calculate the resource balance of each computing server. The real-time comprehensive health score of each computing server is calculated by combining the resource indicator weights and the resource balance.

[0053] Step S3: For the job to be scheduled, construct a comprehensive scheduling cost function to calculate the cost value of its deployment to each candidate server. The comprehensive scheduling cost function includes: a real-time load cost item based on the real-time comprehensive health score, a resource matching cost item based on the matching degree between job resource requirements and available server resource vectors, a conflict prediction cost item to predict performance conflicts after deployment, and a cross-server communication cost item based on inter-job communication dependencies.

[0054] Step S4: Based on the simulated annealing algorithm, perform joint scheduling decisions on the jobs in the current scheduling queue to find the deployment scheme with the lowest total cost;

[0055] Step S5: Perform container scheduling based on the decision results, and optimize the scheduling model based on job operation feedback data.

[0056] In step S1, the resource utilization data of the server includes: CPU utilization, memory utilization, disk I / O utilization, network interface utilization, CPU wait rate, memory paging rate, and average disk I / O wait time.

[0057] In step S2, the dynamic calculation of the weights of each resource indicator using the entropy weight method includes the following steps:

[0058] Based on the standardized resource vectors of all computing servers, a resource indicator judgment matrix is ​​constructed.

[0059] Calculate the characteristic weight of each resource indicator:

[0060]

[0061] in, This represents the standardized value of the metric j for server i. This indicates the feature weight of indicator j in server i. Indicates the number of servers. This indicates the calculation of the server index. Indicates the index of indicators;

[0062] Calculate the entropy value of each resource indicator:

[0063]

[0064] in, This represents the entropy value of index j. The coefficient representing the number of servers is as follows: ;

[0065] Calculate the difference coefficients for each resource indicator based on the entropy value:

[0066] ;

[0067] in, The coefficient of variation for index j;

[0068] The difference coefficients are normalized to obtain the dynamic weights of each resource indicator:

[0069]

[0070] in, Represents a dynamic weight vector. Indicates the number of indicators. This represents the dynamic weight after normalization of the difference coefficients from indicator 1 to indicator n.

[0071] In step S2, calculating the resource balance of each computing server based on principal component analysis includes the following steps:

[0072] Perform principal component analysis on the resource utilization data of a single computing server;

[0073] Obtain the variance contribution rate of the first principal component;

[0074] Resource balance is defined as the difference between 1 and the variance contribution rate:

[0075]

[0076] in, This indicates the degree of balance in the utilization of various resources within server i. This represents the variance contribution rate of the first principal component within server i.

[0077] The formula for calculating the real-time comprehensive health score of the computing server is as follows:

[0078]

[0079] in, This represents the overall health score of server i. Indicates the harmonic parameters.

[0080] If the cluster contains a mix of different job types (both CPU-intensive and I / O-intensive), configure... Greater than 0.5, such as 0.6~0.7. Because at this point, it is more important to avoid placing new jobs on nodes that already have bottlenecks, even if they appear to be not busy overall.

[0081] If the cluster consists entirely of the same type of jobs, resource utilization will typically tend to balance automatically. Values ​​less than 0.5, such as 0.3 to 0.4, focus more on the absolute idle rate.

[0082] In step S3, the value of the real-time load cost item is negatively correlated with the real-time comprehensive health score of the computing server; the resource matching cost item is obtained by calculating the Euclidean norm of the job resource demand vector and the server available resource vector; the conflict prediction cost item is predicted by a machine learning model, representing the probability value of server performance conflict after the job is deployed on the server; the cross-server communication cost item is calculated based on the network topology distance between servers when there is a communication dependency between the job to be scheduled and the deployed job.

[0083] The specific formula for the comprehensive scheduling cost function is as follows:

[0084]

[0085] in, This represents the cost of deploying job k to computing server i. Indicates real-time load cost. Indicates the cost of resource matching. Indicates the cost of conflict prediction. Indicates the cost of cross-server communication. , , and These represent the weights of real-time load cost, resource matching cost, conflict prediction cost, and cross-server communication cost, respectively. This indicates the job index.

[0086] When the cluster scenario is compute-intensive, in order to avoid resource contention and ensure computing efficiency, set... =0.2, =0.4, =0.3, =0.1, ensuring that the job has sufficient absolute resources and preventing CPU and memory contention;

[0087] When the cluster scenario is a microservice / web service cluster, in order to reduce inter-service latency and ensure response time, set... =0.2, =0.2, =0.2, =0.4, deploy services that need to communicate on the same node or rack as much as possible to reduce network hops;

[0088] When the cluster scenario is data-intensive, in order to improve throughput and avoid I / O bottlenecks, set... =0.3, =0.3, =0.4, =0.0, there are usually no strong dependencies between jobs.

[0089] The formula for calculating real-time load cost is as follows:

[0090]

[0091] The formula for calculating resource matching cost is:

[0092]

[0093] in, This represents the resource requirement of index j for task k. This represents the available resources of server i index j. For a given resource, the larger the ratio of job demand to available node resources, the more strained that resource is.

[0094] The machine learning model in the conflict prediction cost item is a gradient boosting decision tree model. This model uses historical monitoring data and job operation logs as training samples. Its input features include job resource demand vector, server current resource status vector and server historical operation feature vector. The output is a conflict probability value between 0 and 1.

[0095] The formula for calculating the cost of cross-server communication is:

[0096]

[0097] in, This represents the scaling factor, used to adjust the weight of network cost in the total cost. This represents the network distance between server i and server m where the job is located.

[0098] If the cost of network latency is very high, you can set A value greater than 1 amplifies its impact;

[0099] Network distance can be determined by the rack / availability zone topology defined by the cluster administrator. For example, the distance is 0 when communicating within the same physical machine; 1 when communicating between different servers within the same rack; 2 when communicating between servers in different racks; and 3 when communicating between servers in different data centers.

[0100] In step S4, the simulated annealing algorithm includes the following steps:

[0101] Randomly assign a server that meets the resource requirements to each job in the scheduling queue to form an initial solution, and calculate the total cost;

[0102] New solutions are generated by randomly changing the deployment server of a job or randomly swapping the deployment servers of two jobs.

[0103] Calculate the cost difference between the new solution and the current solution. If the cost difference is less than 0, accept the new solution. If the cost difference is greater than or equal to 0, accept it with a preset probability. The preset probability follows the Metropolis criterion and is related to the cost difference and the current temperature of the simulated annealing algorithm.

[0104] The formula for calculating the preset probability is:

[0105]

[0106] in, Indicates the preset probability. Indicates cost difference, This indicates the temperature used in the simulated annealing algorithm;

[0107] The initial temperature for the simulated annealing algorithm is determined through the following steps:

[0108] Perform V random state changes and calculate the cost variance of these V solutions.

[0109] Set the initial temperature to a multiple of the variance, such as five or ten times the variance.

[0110] The algorithm temperature is reduced according to the preset cooling rate:

[0111]

[0112] in, This indicates the updated algorithm temperature. This indicates the current algorithm temperature. This represents the cooling rate, which is usually a constant close to 1, such as 0.95.

[0113] When the temperature drops to the termination temperature or the maximum number of iterations is reached, the current optimal solution is output as the final scheduling decision.

[0114] The temperature threshold is set to 0.001, and the maximum number of iterations is set to 1000. The algorithm stops when the temperature is below 0.001 or the number of iterations exceeds 1000.

[0115] Step S5 specifically includes the following steps:

[0116] The management server parses the decision plan into container creation instructions and sends them to the target compute server. The compute server then pulls the image from the shared storage, mounts the storage, and starts the program according to the instructions.

[0117] During job execution, collect actual resource usage data of container instances and performance metrics data of the servers they reside on;

[0118] Based on the collected data, evaluate the effectiveness of this scheduling decision, including determining whether performance conflicts occur and analyzing resource utilization efficiency, and generate labeled training samples.

[0119] Using the labeled training samples, the machine learning model in the conflict prediction cost item is incrementally trained and updated.

[0120] like Figure 2 As shown, the system architecture of this invention mainly includes three parts: a management server, multiple computing servers, and shared storage.

[0121] Management server: As the brain of the cluster, it contains two core modules.

[0122] Job Management Module: Responsible for receiving computing jobs submitted by users, parsing the resource requirements of the jobs, and putting the jobs to be scheduled into the scheduling queue.

[0123] The container management module includes a built-in monitoring unit, a scoring unit, and a scheduling decision unit. The monitoring unit collects resource utilization data from each compute server in real time; the scoring unit calculates a real-time score for each node based on this data; and the scheduling decision unit runs a scheduling algorithm to select the optimal compute server for the job.

[0124] N compute servers: worker nodes in the cluster. Each compute server runs a container engine used to create and manage multiple container instances. Each container instance contains:

[0125] Management program: Responsible for communicating with the container engine and management server and reporting status.

[0126] Run the script: Used to prepare the container's internal environment and mount storage.

[0127] Calculation program: The actual entity that performs the task.

[0128] Shared storage: typically a network file system or distributed storage, storing three types of data:

[0129] Container images: All compute servers pull images from these images to create containers.

[0130] Job input / output files: Centralized management of job input data and calculation results.

[0131] Log files: centrally collect runtime logs from all container instances for easy debugging and monitoring.

[0132] like Figure 3 As shown, the system collects data from two sources:

[0133] Historical execution data is an accumulated, tagged database. New job execution data is the new knowledge that is currently happening and needs to be learned and absorbed; it contains detailed runtime information of jobs that have just been scheduled.

[0134] Incremental training: Gradient boosting decision trees are not retrained from scratch, but rather additional training rounds are performed using new data samples on the basis of the original model weights.

[0135] The optimized model is then deployed to the production environment, allowing it to begin influencing subsequent scheduling decisions, thereby completing the model update cycle.

[0136] Any combination of one or more computer-readable media may be used. A computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this document, a computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0137] The examples described herein are merely preferred embodiments of the invention and are not intended to limit the concept and scope of the invention. Any modifications and improvements made by those skilled in the art to the technical solutions of the invention without departing from the design concept of the invention should fall within the protection scope of the invention.

Claims

1. A container scheduling optimization method for improving cluster resource utilization, characterized in that, Comprise the following steps: Step S1, real-time collection of resource utilization data of computing servers in the cluster and cleaning and standardizing the collected data to form a standardized resource vector; Step S2, based on the standardized resource vector, dynamically calculating the weight of each resource index by entropy weight method, and calculating the resource balance degree of each computing server based on principal component analysis method, combining the resource index weight and the resource balance degree to calculate the real-time comprehensive health score of each computing server; In step S2, the resource balance degree of each computing server is calculated based on the principal component analysis method, comprising the following steps: Perform principal component analysis on the resource utilization data of a single computing server; Obtain the variance contribution rate of the first principal component; The resource balance degree is defined as the difference between 1 and the variance contribution rate; Step S3, for the job to be scheduled, a comprehensive scheduling cost function is constructed to calculate the cost value of deploying it to each candidate computing server, wherein the comprehensive scheduling cost function includes: a real-time load cost item based on the real-time comprehensive health score, a resource matching cost item based on the matching degree of job resource demand and computing server available resource vector, a conflict prediction cost item for predicting performance conflict after deployment, and a cross-computing server communication cost item based on the communication dependency relationship between jobs; In step S3, the value of the real-time load cost item is negatively correlated with the real-time comprehensive health score of the computing server; the resource matching cost item is obtained by calculating the Euclidean norm of the job resource demand vector and the computing server available resource vector; the conflict prediction cost item is obtained by predicting the probability value of causing computing server performance conflict after deploying the job on the computing server through a machine learning model; when the to-be-scheduled job and the deployed job exist communication dependency, the cross-computing server communication cost item is calculated according to the network topology distance between computing servers; Step S4, based on the simulated annealing algorithm, joint scheduling decision is made for the jobs in the current scheduling queue to find the deployment scheme with the lowest total cost; Step S5, execute container scheduling according to the decision result, and optimize the scheduling model based on job running feedback data; In step S5, the following steps are included: The management server parses the decision scheme into container creation instructions and issues them to the target computing server, and the computing server pulls the image from the shared storage, mounts the storage and starts the program according to the instructions; In the process of job execution, the actual resource usage data of the container instance and the performance index data of the computing server where the container instance is located are collected; Based on the collected data, the effect of this scheduling decision is evaluated, including judging whether performance conflict occurs and analyzing resource usage efficiency, and generating labeled training samples; Using the labeled training samples, the machine learning model in the conflict prediction cost item is incrementally trained, and the machine learning model in the conflict prediction cost item is updated.

2. The method of claim 1, wherein, In step S1, the resource utilization data of the computing server includes: CPU utilization, memory utilization, disk input / output utilization, network interface utilization, CPU waiting rate, memory page rate and disk input / output average waiting time.

3. The method of claim 2, wherein, The step S2 comprises the following steps of dynamically calculating the weight of each resource index by using the entropy weight method: Based on the normalized resource vector of all computing servers, a resource index judgment matrix is constructed; The characteristic proportion of each resource index is calculated; The entropy value of each resource index is calculated; The difference coefficient of each resource index is calculated according to the entropy value; The difference coefficient is normalized to obtain the dynamic weight of each resource index.

4. The method of claim 3, wherein, The machine learning model in the conflict prediction cost term is a gradient boosting decision tree model; the model takes historical monitoring data and job running logs as training samples, and the input features include a job resource demand vector, a current resource state vector of a computing server, and a historical running feature vector of the computing server, and the output is a conflict probability value between 0 and 1.

5. The method of claim 4, wherein, In the step S4, the simulated annealing algorithm comprises the following steps: Randomly assign a computing server that meets the resource demand of each job in the scheduling queue to form an initial solution, and calculate the total cost; A new solution is generated by randomly changing the deployment computing server of a job or randomly exchanging the deployment computing servers of two jobs; Calculate the cost difference between the new solution and the current solution, if the cost difference is less than 0, accept the new solution, if the cost difference is greater than or equal to 0, accept it with a preset probability, the preset probability is subject to the Metropolis criterion, related to the cost difference and the current temperature of the simulated annealing algorithm; The algorithm temperature is reduced at a preset cooling rate; When the temperature is reduced to the termination temperature or the maximum iteration number is reached, the current optimal solution is output as the final scheduling decision.

6. A storage medium, characterized by The storage medium stores instructions, when the computer reads the instructions, the computer executes the container scheduling optimization method for improving the resource utilization rate of the cluster according to any one of claims 1-5.

7. An electronic device, comprising: The storage medium comprises a processor and the storage medium of claim 6, and the processor executes the instructions in the storage medium. The storage medium comprises a processor and the storage medium of claim 6, and the processor executes the instructions in the storage medium.

Citation Information

Patent Citations

  • An energy-efficient resource scheduling system and method for container clusters

    CN109714400B

  • A method for dynamic allocation of container resources in a cluster

    CN111124689B

  • Computing power resource processing method

    CN118069380A

  • Resource scheduling method and device, electronic equipment and storage medium

    CN119603253A