Cloud-computing-based computer resource dynamic allocation management method

By constructing a time-series prediction model and a non-cooperative game model in a cloud computing environment, we can predict virtual machine resource requirements and optimize resource allocation, thus solving the balance problem between resource competition and SLA in the cloud computing environment and achieving comprehensive optimization of resource utilization and SLA.

CN121210070BActive Publication Date: 2026-04-24TIANJIN YINGXIN TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TIANJIN YINGXIN TECH CO LTD
Filing Date
2025-11-20
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

Existing technologies cannot effectively solve the balance between resource contention, service level agreement (SLA) compliance, and resource utilization efficiency in cloud computing environments where multiple virtual machines share physical resources, leading to frequent virtual machine migrations and resource waste.

Method used

By constructing a time-series prediction model to predict the future resource requirements of virtual machines, constructing a resource contention graph and mapping it to a non-cooperative game model, and using game theory to optimize resource allocation, a globally optimized scheduling scheme is found by comprehensively considering migration overhead, resource utilization and SLA compliance behavior.

Benefits of technology

It enables the identification of potential conflicts before resource contention, reduces migration overhead, ensures the SLA of high-priority virtual machines, avoids virtual machine migration turbulence, and achieves comprehensive optimization of resource utilization and SLA.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121210070B_ABST
    Figure CN121210070B_ABST
Patent Text Reader

Abstract

The present application belongs to the field of computer resource management, and particularly relates to a computer resource dynamic allocation management method based on cloud computing, aiming at solving the problems of localness of decision-making perspective and hysteresis of time dimension existing in related technologies. The method of the present application comprises: obtaining resource utilization rates of each virtual machine in a cloud environment, wherein the resource utilization rates comprise historical resource utilization rates and real-time resource utilization rates; predicting resource demands of each virtual machine in a future preset period according to the resource utilization rates; determining resource competition conflicts according to the predicted resource demands, and constructing a resource competition graph model; mapping the resource competition graph model into a non-cooperative game model; determining a scheduling scheme in the cloud environment based on the non-cooperative game model, and performing a resource allocation operation according to the scheduling scheme. The present application can identify potential conflicts and schedule before the actual occurrence of resource competition, thereby reducing performance degradation caused by insufficient resources.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the technical field of computer resource management, and specifically relates to a dynamic allocation and management method for computer resources based on cloud computing. Background Technology

[0002] In the field of cloud computing resource management, how to achieve globally optimized dynamic allocation that balances service level agreement (SLA) compliance and resource utilization efficiency in a complex environment where multiple virtual machines share physical resources has been a long-standing core challenge.

[0003] Existing technical solutions, whether reactive migration based on static thresholds or load balancing strategies based on instantaneous states, suffer from the problems of locality of decision-making perspective and time lag. They make decisions based only on the current instantaneous load of a single physical node, failing to anticipate resource competition across multiple nodes in the future. Therefore, resource migration can easily lead to oscillating migrations of virtual machines between nodes, not only failing to fundamentally solve resource competition but also incurring additional overhead due to frequent migrations. Ultimately, it is difficult to achieve an effective balance between ensuring SLA and improving resource utilization. Summary of the Invention

[0004] To address the aforementioned problems in existing technologies, namely the locality of decision-making perspective and the lag in time dimension, this invention proposes a dynamic allocation and management method for computer resources based on cloud computing. The method includes:

[0005] Obtain the resource utilization rate of each virtual machine in the cloud environment, including historical resource utilization rate and real-time resource utilization rate;

[0006] Based on the resource utilization rate, the resource requirements of each virtual machine in a future preset time period are predicted using a pre-built time-series prediction model.

[0007] Based on the predicted resource demand and combined with the service level agreement corresponding to each virtual machine, the resource competition conflict of the cloud environment in the future within a preset period of time is determined, and a resource competition graph model with physical hosts as nodes and virtual machines with competing relationships as edges is constructed.

[0008] The resource contention graph model is mapped to a non-cooperative game model, where the physical host is a game participant, and the strategy set of each game participant includes the decision to respond to virtual machine migration requests. The payoff function of each game participant is jointly determined by the resource utilization rate of the virtual machine hosted by the physical host, the migration cost of the virtual machine, and the performance behavior corresponding to the service level agreement.

[0009] Based on the non-cooperative game model, a scheduling scheme is determined within the cloud environment, and resource allocation operations are performed according to the scheduling scheme.

[0010] In some preferred embodiments, the step of predicting the resource requirements of each virtual machine within a preset future time period using a pre-built time-series prediction model based on the real-time resource utilization rate includes:

[0011] Historical resource utilization and real-time resource utilization are used as inputs to the time series prediction model. The time series prediction model is an attention-based time series prediction model. By capturing the long-term and short-term dependencies of resource utilization, the time series prediction model outputs the predicted resource requirements of each virtual machine in the dimensions of CPU, memory and network I / O within a preset future time period.

[0012] In some preferred embodiments, the time-series prediction model is constructed using the following methods:

[0013] The initial model was initially trained using time-series data on the resource utilization of each virtual machine in the cloud environment.

[0014] During the operation of the time series prediction model, the deviation between the model's predicted values ​​and the actual values ​​is continuously monitored. When the mean absolute percentage error exceeds a set threshold, the model is incrementally trained using recent data to update the model parameters.

[0015] In some preferred embodiments, the resource contention graph model is constructed by means of:

[0016] Determine the predicted resource requirements of each physical machine and its hosted virtual machines in the cloud environment;

[0017] For any physical host, if the sum of the predicted resource requirements of at least two virtual machines hosted on it reaches or exceeds the physical resource capacity of the host, then it is determined that there is resource contention among the virtual machines hosted on it.

[0018] The resource contention graph model is constructed by mapping a group of virtual machines that are in competition with each other to edges connecting their respective physical host nodes.

[0019] In some preferred embodiments, in the revenue function, the resource utilization rate refers to the current and predicted overall resource load rate of the physical host;

[0020] The migration overhead is quantified by the memory usage, network bandwidth, and estimated service interruption duration of the virtual machine to be migrated.

[0021] The performance behavior is determined based on whether the virtual machine meets the performance indicators specified in its service level agreement, and is converted into quantified rewards or penalties and then included in the revenue function.

[0022] In some preferred embodiments, determining the virtual machine scheduling scheme within the cloud environment based on the non-cooperative game model includes:

[0023] In each round of negotiation in the non-cooperative game model, each player evaluates potential virtual machine migration operations based on their local payoff function.

[0024] Participants exchange migration proposals and information on changes in benefits, and filter potential virtual machine migration operations according to preset consensus rules to form a local consensus scheme.

[0025] The above process is executed iteratively until a stable state is reached where no better solution is produced or the maximum number of iterations is reached. Then, all existing local consensus schemes are aggregated to form a global virtual machine scheduling scheme.

[0026] In some preferred embodiments, the consensus rule adopted by the non-cooperative game model is the Pareto improvement principle, and the construction process of the local consensus scheme includes:

[0027] Based on the Pareto improvement principle, when a proposed virtual machine migration operation improves the payoff of at least one player without reducing the payoff of any other player, the virtual machine migration operation is included in the local consensus scheme of the current iteration round.

[0028] In some preferred embodiments, after determining the scheduling scheme within the cloud environment, the method further includes:

[0029] Before performing resource allocation operations, the scheduling scheme is verified for security and feasibility. The verification includes whether the target physical host has enough remaining resources to support the virtual machines to be migrated, and whether the preset security policy is violated during the migration process.

[0030] Once the verification is successful, resource allocation operations are performed according to the scheduling scheme.

[0031] In some preferred embodiments, after performing the resource allocation operation, the method further includes:

[0032] The actual resource usage and service level agreement fulfillment rate of the cloud environment after monitoring resource allocation are compared with the predicted returns of the non-cooperative game model.

[0033] The parameters of the payoff function are adjusted based on the comparison results to optimize the game decision in the next scheduling cycle.

[0034] The beneficial effects of this invention are:

[0035] This invention first uses a pre-built time-series prediction model to predict the future resource requirements of virtual machines based on historical and real-time data. Therefore, it can identify potential conflicts before resource contention actually occurs and perform scheduling in advance, which greatly reduces the performance degradation caused by insufficient resources and effectively guarantees the SLA of high-priority virtual machines.

[0036] Meanwhile, this invention constructs the resource competition problem as a graph model and maps it as a non-cooperative game, treating each physical host as a rational game participant. It comprehensively considers factors such as migration overhead, resource utilization, and SLA compliance, and seeks a stable solution (such as Nash equilibrium) that is better or acceptable to all participants (i.e., physical hosts) through distributed negotiation. This effectively avoids oscillating migration and achieves global resource optimization from the perspective of the overall interests of the cluster. Attached Figure Description

[0037] 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:

[0038] Figure 1 This is a flowchart illustrating a cloud computing-based dynamic allocation and management method for computer resources proposed in an embodiment of the present invention.

[0039] Figure 2 This is a schematic diagram of the framework of a cloud computing-based dynamic allocation and management system for computer resources proposed in an embodiment of the present invention.

[0040] Figure 3 This is a schematic diagram of the structure of a computer system proposed in an embodiment of the present invention. Detailed Implementation

[0041] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the invention. Furthermore, it should be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings.

[0042] It should be noted that, unless otherwise specified, the embodiments and features described in the present invention can be combined with each other. The present invention will now be described in detail with reference to the accompanying drawings and embodiments.

[0043] Please refer to Figure 1 The first embodiment of the present invention provides a method for dynamic allocation and management of computer resources based on cloud computing, comprising:

[0044] Step S10: Obtain the resource utilization rate of each virtual machine in the cloud environment, including historical resource utilization rate and real-time resource utilization rate;

[0045] Step S20: Based on the resource utilization rate, use a pre-built time-series prediction model to predict the resource requirements of each virtual machine in a future preset time period.

[0046] Step S30: Based on the predicted resource demand and combined with the service level agreement corresponding to each virtual machine, determine the resource competition conflict of the cloud environment in the future preset time period, and construct a resource competition graph model with physical hosts as nodes and virtual machines with competing relationships as edges.

[0047] Step S40: Map the resource contention graph model to a non-cooperative game model, wherein the physical host is a game participant, the strategy set of each game participant includes the decision to respond to virtual machine migration requests, and the payoff function of each game participant is jointly determined by the resource utilization rate of the virtual machine hosted by the physical host, the migration cost of the virtual machine, and the performance behavior corresponding to the service level agreement.

[0048] Step S50: Based on the non-cooperative game model, determine the scheduling scheme within the cloud environment, and perform resource allocation operations according to the scheduling scheme.

[0049] This embodiment provides a cloud computing-based dynamic allocation and management method for computer resources, which achieves comprehensive optimization of resource utilization, service level and migration cost by proactively predicting resource conflicts and using game theory models for intelligent scheduling.

[0050] Specifically, the method in this embodiment can be applied to a typical cloud computing environment, which is uniformly managed by a cloud management platform (such as OpenStack or VMware vCenter). The environment deploys several physical hosts (servers), each running one or more virtual machines. The cloud management platform has the capability to monitor, create, destroy, and migrate virtual machines.

[0051] This embodiment first obtains the resource utilization rate of each virtual machine in the cloud environment. Taking the cloud management platform mentioned above as an example, a resource monitoring module can be built into or integrated into the cloud management platform to periodically collect data.

[0052] Specifically, a lightweight data collection agent, such as Telegraf or a custom script, can be deployed on each physical host. This agent is responsible for collecting performance data of the various virtual machines running on the host machine from the host's operating system kernel and hypervisor (such as KVM, ESXi).

[0053] For example, its performance metrics include:

[0054] CPU utilization: The percentage of physical CPU time used by the virtual machine's VCPU;

[0055] Memory utilization: The percentage of active memory in the virtual machine's allocated memory;

[0056] Network I / O throughput: The incoming and outgoing traffic (Mbps) of a virtual machine's network interface card per unit time.

[0057] Disk I / O: Virtual disk read / write operations per second (IOPS) and read / write speed (MB / s);

[0058] In this embodiment, the periodically collected real-time data is aggregated into a time-series database (such as Prometheus or InfluxDB) and timestamped. By querying this database, the resource utilization sequence of any virtual machine in any past time window (such as the past 24 hours) can be obtained as historical data.

[0059] Then, time-series forecasting models are used to predict virtual machine resource requirements.

[0060] This embodiment pre-builds one or more time-series prediction models offline. In this embodiment, a Long Short-Term Memory (LSTM) network model is selected, which can effectively capture long-term dependencies and complex nonlinear patterns, and is therefore suitable for predicting virtual machine loads with periodicity and burstiness.

[0061] The training data can use a large amount of historical resource utilization data accumulated in step S10 as the training set. The model input can use the sliding window method. For example, the multi-dimensional utilization data sequence of CPU, memory and other resources in the past 60 minutes (one data point per minute, a total of 60 points) can be used as input, and the average or peak demand of the virtual machine for each resource in a future preset period (e.g., the next 15 minutes) can be predicted.

[0062] As one feasible implementation, the model is deployed as an online service that periodically (e.g., every 5 minutes) calls the model to each active virtual machine: taking its latest historical data as input and generating a prediction of future resource requirements.

[0063] Then, this embodiment identifies resource competition conflicts and constructs a resource competition graph model. That is, the prediction results are transformed into a structured mathematical model that can be used for game analysis.

[0064] Specifically, for each physical host H_i in the environment, the predicted resource requirements of all virtual machines hosted on it for a future preset time period are aggregated.

[0065] If the total predicted demand of virtual machines on a physical host H_i exceeds the host's resource capacity threshold, then a resource contention conflict is determined to exist on H_i. For example:

[0066] Σ (VM_j on H_i) [Predicted_CPU_j]>H_i_Capacity_CPU 90%

[0067] This embodiment uses Service Level Agreements (SLAs) to define the severity of conflicts. If the virtual machines involved in the conflict include virtual machines with high SLA levels, then the conflict has a higher priority and is more urgent to resolve.

[0068] Construct a resource contention graph model G=(V, E):

[0069] Node (V): Each node v_i in the graph represents a physical host H_i;

[0070] Edge (E): An edge e_k represents a virtual machine VM_k in a resource contention state, connecting two nodes v_i and v_j. This indicates that VM_k is currently located on host H_i, and H_j is a potential and feasible migration target for it. In other words, edges in the resource contention graph model represent potential migration operations triggered by contention.

[0071] It should be noted that a feasible migration target host H_j will only be sought for VM_k and a corresponding edge will be constructed if the host H_i where the virtual machine VM_k resides is determined to have a resource conflict. A host H_j is considered a feasible target if it at least satisfies the following conditions:

[0072] The predicted remaining resources of H_j are sufficient to accommodate the predicted resource requirements of VM_k.

[0073] Building upon the preceding steps, this embodiment maps the resource contention graph model to a non-cooperative game model, that is, it uses game theory to simulate the self-interested behavior of each physical host in resource scheduling, thereby seeking a globally stable solution. Wherein:

[0074] Players: In the resource contention graph model G, each node, i.e., each physical host H_i, is a rational player. Their goal is to maximize their own gains.

[0075] Strategies: For a resource-overloaded host H_i (the source of conflict), the strategy is to decide which competing virtual machines (i.e., edges originating from it) on it should be migrated out.

[0076] For a resource-rich host H_j (potential target), the strategy is to respond to migration requests, i.e., to decide whether to "accept" or "reject" the migration of a virtual machine.

[0077] Payoff Function: Define a payoff function U_i for each participant H_i to quantify their payoff under a certain strategy combination.

[0078] For example, the function is a weighted combination of multiple objectives:

[0079] U_i = w1 F(Util_i) - w2 C(Migration_i) - w3 P(SLA_i);

[0080] The resource utilization benefit F(Util_i) is a non-linear function. When the host utilization is in an optimal range (e.g., 60%-80%), the benefit is positive and maximum. When the utilization is too high (e.g., >90%, leading to performance risks) or too low (<20%, leading to resource waste), the benefit is negative.

[0081] For migration overhead C(Migration_i), if H_i performs a migration operation in this round of the game (whether it is migration in or migration out), this term is positive, representing the cost of network bandwidth, CPU resources consumed during the migration process, as well as the cost caused by possible short-term service jitter.

[0082] For SLA compliance behavior P(SLA_i), if the decision of host H_i results in the unmet resource requirements of virtual machines with higher SLA levels, a penalty cost (a negative value) will be incurred; conversely, if the SLA is guaranteed, this cost will be zero or a positive reward.

[0083] w1, w2, and w3 are configurable weight coefficients used to balance the importance of different optimization objectives.

[0084] Finally, this embodiment determines the scheduling scheme and executes the resource allocation operation.

[0085] As a feasible implementation, the goal of non-cooperative game theory is to find a Nash equilibrium. In this equilibrium state, no single participant (physical host) can unilaterally change their strategy to gain a higher payoff. For example, an iterative optimal response algorithm can be used to find an approximate Nash equilibrium solution. The algorithm iterates, with each participant in each round choosing the strategy that maximizes their current payoff based on the strategies of other participants in the previous round, until the system state converges.

[0086] The combination of policies corresponding to the converged Nash equilibrium states constitutes the final virtual machine scheduling scheme. This scheme is a specific list of operations, for example:

[0087] {MIGRATE VM_A FROM Host_1 TO Host_3};

[0088] {MIGRATE VM_B FROM Host_1 TO Host_5};

[0089] The cloud management platform parses the scheduling scheme and performs specific live migration operations by calling the APIs of the underlying virtualization facilities (such as VMware vMotion API or OpenStack Live Migration API).

[0090] Furthermore, in the above embodiments, based on the real-time resource utilization rate, a pre-built time-series prediction model is used to predict the resource requirements of each virtual machine within a preset future time period, including:

[0091] Historical resource utilization and real-time resource utilization are used as inputs to the time series prediction model. The time series prediction model is an attention-based time series prediction model. By capturing the long-term and short-term dependencies of resource utilization, the time series prediction model outputs the predicted resource requirements of each virtual machine in the dimensions of CPU, memory and network I / O within a preset future time period.

[0092] Furthermore, in the above embodiments, the method for constructing the time series prediction model includes:

[0093] The initial model was initially trained using time-series data on the resource utilization of each virtual machine in the cloud environment.

[0094] During the operation of the time series prediction model, the deviation between the model's predicted values ​​and the actual values ​​is continuously monitored. When the mean absolute percentage error exceeds a set threshold, the model is incrementally trained using recent data to update the model parameters.

[0095] Among them, recent data refers to historical data (such as 24 hours) that are no more than a certain time interval from the current time point of the model. The above-mentioned threshold can be set according to the prediction accuracy required by the model.

[0096] Furthermore, in the above embodiments, the method for constructing the resource contention graph model includes:

[0097] Determine the predicted resource requirements of each physical machine and its virtual machines in the cloud environment; for any physical host, if the sum of the predicted resource requirements of at least two virtual machines it hosts reaches or exceeds the physical resource capacity of the host, then it is determined that there is resource contention among the virtual machines it hosts; map the group of virtual machines with competing relationships to edges connecting their respective physical host nodes, and construct the resource contention graph model.

[0098] In this implementation, each physical host H_i in the cloud environment is traversed. For each host, the following checks are performed sequentially:

[0099] Aggregate predicted demand: Calculate the sum of predicted resource requirements for all virtual machines running on host H_i;

[0100] Set a conflict trigger threshold: In order to reserve a safety margin and avoid overly frequent scheduling, the system sets a soft threshold for resource capacity, such as 85% of its physical resource capacity;

[0101] Conflict determination: If the aggregated predicted demand exceeds the soft threshold of the resource corresponding to H_i, then host H_i is determined to be a conflicting host, and the group of virtual machines hosted on it is in a state of resource contention.

[0102] At the same time, the main virtual machine causing the conflict was further identified.

[0103] Within the group of virtual machines identified as conflicting hosts, they are sorted in descending order according to their projected resource requirements (or the ratio of requirements to allocated resources).

[0104] Migration candidates are identified by prioritizing top-ranking or fastest-growing virtual machines as key factors in triggering competition and marking them as migration candidates that need to resolve conflicts through migration.

[0105] For example, in the above example, if VM_A's predicted memory requirement is as high as 30GB, making it the main resource consumer, then VM_A will be highlighted.

[0106] After determining the competitive relationships, a graph model is constructed. Each node v_i in the graph model represents a physical host H_i in the cloud environment. The set of nodes V is the set of all physical hosts.

[0107] In this implementation, an edge represents a problem arising from resource competition, and its specific generation logic includes:

[0108] For each virtual machine VM_k identified as a migration candidate (assuming it is currently on the conflicting host H_i), find a feasible migration target host;

[0109] By traversing all other physical host nodes H_j in the graph except H_i, we check whether each can be a migration target for VM_k. For example, a host H_j is considered a feasible target if it meets the following conditions:

[0110] The predicted remaining capacity of H_j > the predicted demand of VM_k plus the safety margin.

[0111] Wherein, the predicted remaining capacity of H_j = the total capacity of H_j - the sum of the predicted demand of existing virtual machines on H_j. Once one or more feasible migration target hosts (e.g., H_j1, H_j2, ...) are found, the system creates the corresponding edges in the graph model.

[0112] In this implementation, an edge e_k represents a potential migration path for virtual machine VM_k. This edge e_k connects its current source host node v_i to a potential target host node v_j.

[0113] For example, each edge can be accompanied by a weight or attribute, such as:

[0114] VM_ID: Identifier of the corresponding virtual machine (VM_k); Migration_Cost: Estimated migration cost (e.g., based on virtual machine memory size and network conditions); SLA_Level: Service level of the virtual machine.

[0115] For example, suppose VM_A on the conflicting host H1 is identified as a migration candidate. It is then found that hosts H3 and H5 have sufficient remaining resources to accommodate VM_A. Therefore, in the resource contention graph model, two edges will be generated:

[0116] e_A1: Connects nodes v1 (representing H1) and v3 (representing H3), representing the potential operation of "migrating VM_A from H1 to H3";

[0117] e_A2: Connects nodes v1 (representing H1) and v5 (representing H5), representing the potential operation of "migrating VM_A from H1 to H5";

[0118] The resource contention graph model finalized in this implementation can intuitively display all scheduling problems arising from resource prediction conflicts in the current cloud environment.

[0119] Furthermore, in the above embodiments, in the revenue function, the resource utilization rate refers to the current and predicted overall resource load rate of the physical host; the migration overhead is quantified by the memory usage, network bandwidth and estimated service interruption duration of the virtual machine to be migrated; the performance behavior is determined based on whether the virtual machine meets the performance indicators specified in its service level agreement, and is converted into quantified rewards or penalties before being included in the revenue function.

[0120] This implementation method defines and quantifies the profit function, and the specific process can be set according to the actual application environment:

[0121] Regarding overall resource load, if a decision causes the overall resource load of this physical host (whether current or predicted) to reach a high level, such as CPU or memory utilization exceeding 90%, the host is on the verge of dangerous overload and faces a very high risk of performance degradation. Therefore, the payoff function will assign a very large negative score to this decision as a penalty. The higher the load, the larger the negative score.

[0122] Correspondingly, if a decision would cause the load on this physical host to become extremely low, such as the resource utilization rate being less than 20%, meaning that hardware resources are being severely wasted, the payoff function will give a negative score as a penalty.

[0123] This portion of the benefit is mainly reflected in "costs," or negative points, which are used to quantify the overhead and impact of performing virtual machine migration itself.

[0124] Regarding migration overhead, migrating a virtual machine that consumes a large amount of memory (e.g., a large database virtual machine with 128GB of memory) will consume a significant amount of network bandwidth for an extended period and incur overhead on the CPUs of both the source and target hosts. Therefore, the larger the memory footprint of the virtual machine to be migrated, the higher its migration cost, and the greater the negative score included in the revenue function.

[0125] If the migration requires traversing an already congested network link, it will exacerbate network congestion and prolong migration time. Therefore, the more congested the network, the higher the negative score of the migration cost.

[0126] Meanwhile, this implementation method estimates the interruption duration based on the service characteristics of the virtual machine. The longer the interruption duration or the more sensitive the service, the more severe the corresponding negative score.

[0127] For performance behavior, preferably, it can be considered as the term with the highest weight in the revenue function.

[0128] If a decision causes a virtual machine to fail to achieve the performance metrics promised in its Service Level Agreement (SLA) (e.g., CPU response is below a certain threshold, disk read / write latency is above a certain standard), it will be considered a breach of contract, and the payoff function will assign a negative score to the host decision that caused the breach as a penalty.

[0129] Accordingly, if a decision improves a virtual machine's compliance with its service level agreement, for example, by migrating a high-priority virtual machine that is plagued by resource contention to a resource-rich environment, the reward function will award a significant positive score as a bonus to safeguard the core business value of the cloud environment.

[0130] Furthermore, in the above embodiments, determining the virtual machine scheduling scheme within the cloud environment based on the non-cooperative game model includes:

[0131] In each round of negotiation in the non-cooperative game model, each game participant evaluates potential virtual machine migration operations based on their local payoff function. Participants exchange migration proposals and payoff change information, and filter potential virtual machine migration operations according to preset consensus rules to form a local consensus scheme. The above process is executed iteratively until a stable state is reached where no better solution is generated or the maximum number of iterations is reached. Then, all existing local consensus schemes are aggregated to form a global virtual machine scheduling scheme.

[0132] The consensus rule adopted by the non-cooperative game model is the Pareto improvement principle, and the construction process of the local consensus scheme includes:

[0133] Based on the Pareto improvement principle, when a proposed virtual machine migration operation improves the payoff of at least one player without reducing the payoff of any other player, the virtual machine migration operation is included in the local consensus scheme of the current iteration round.

[0134] Specifically, in this implementation, an initial payoff baseline is first established for each game participant (i.e., physical host). Based on the current state of the cloud environment (i.e., the location of all virtual machines and the predicted resource load), the aforementioned payoff function is used to calculate the current payoff score for each physical host. This initial score serves as the reference standard for all subsequent decision evaluations.

[0135] Based on this, each game's physical host enters a multi-round iterative cycle. In each round, all participants try to find a win-win or multi-win solution that can improve the situation.

[0136] In each round of negotiations, taking an overloaded host A as an example, it identifies the virtual machines it hosts that can be migrated (e.g., virtual machine X), as well as the potential migration targets for these virtual machines (e.g., host B).

[0137] Host A will perform a simulation to see how its revenue score would change if virtual machine X were successfully migrated to host B. Typically, host A's score will increase due to the reduced load.

[0138] Based on the simulation results, host A will broadcast a specific migration proposal to the system. The proposal will contain explicit information, such as "Host A proposes to migrate virtual machine X to host B. If this operation is successful, my reward is expected to increase by 50 points."

[0139] The migration proposal is received and evaluated by all relevant game participants. For example, after receiving the proposal, host B also performs a deduction to calculate how its own payoff score would change if it accepted the migration of virtual machine X.

[0140] At this point, the Pareto principle of improvement was strictly implemented as the guiding principle of this negotiation:

[0141] First, the benefits to the initiator (host A) must be increased;

[0142] Secondly, in this proposal, has host B's revenue score decreased? Have the revenues of any other unrelated hosts (such as hosts C, D, and E) been unexpectedly reduced due to this potential migration (e.g., potentially triggering network competition)?

[0143] A proposal is considered a Pareto improvement only if both conditions are met simultaneously: at least one participant (host A) experiences an increase in profit and no other participant (including host B and all spectators) experiences a decrease in profit.

[0144] Ultimately, all migration proposals that passed the Pareto improvement principle review in this round of negotiations were collected to form the partial consensus proposal for this round.

[0145] After a round of negotiations, the simulated state of the entire cloud environment is updated based on the local consensus proposal of this round (at this time, the actual migration has not yet been implemented). All physical hosts recalculate their own benefit scores based on this simulated state, which serves as the baseline for the next round of negotiations, and initiates a new round of proposals, evaluations, and decisions.

[0146] Repeat the above iterative process until one of the following two conditions is met:

[0147] In a complete round of negotiations, no migration proposal can pass the Pareto improvement principle, that is, reach a relatively stable Pareto optimal state; the maximum number of iterations (e.g., 100 rounds) is reached. If the process is still not stable after reaching this number, the negotiations are forcibly terminated.

[0148] When the iteration process terminates, the system brings together the local consensus schemes formed in all rounds, which is the final virtual machine scheduling scheme, representing a series of Pareto improvement steps from the initial state to the final stable state.

[0149] Ultimately, the cloud management platform receives the global scheduling plan and executes the actual online migration operations of virtual machines one by one according to the instructions in the list.

[0150] Furthermore, in the above embodiments, after determining the scheduling scheme within the cloud environment, the method further includes:

[0151] Before performing the resource allocation operation, the scheduling scheme is verified for security and feasibility. The verification includes whether the target physical host has enough remaining resources to support the virtual machines to be migrated, and whether the preset security policy is violated during the migration process. After the verification is passed, the resource allocation operation is performed according to the scheduling scheme.

[0152] Furthermore, in some embodiments, after performing the resource allocation operation, the method further includes:

[0153] The actual resource usage and service level agreement fulfillment rate of the cloud environment after monitoring resource allocation are compared with the predicted returns of the non-cooperative game model. Based on the comparison results, the parameters of the return function are adjusted to optimize the game decision in the next scheduling cycle.

[0154] Regarding the adjustment of the parameters of the profit function, adaptive adjustments can be made based on the comparison results, with emphasis on the weight of any item in the profit function. This implementation method does not impose too many restrictions on this.

[0155] The second embodiment of the present invention proposes a cloud computing-based dynamic allocation and management system for computer resources, comprising:

[0156] The data acquisition module 210 acquires the resource utilization rate of each virtual machine in the cloud environment, including historical resource utilization rate and real-time resource utilization rate.

[0157] The model prediction module 220 predicts the resource requirements of each virtual machine in a future preset period based on the resource utilization rate using a pre-built time-series prediction model.

[0158] The model building module 230 determines the resource competition conflicts in the cloud environment within a preset time period in the future based on the predicted resource demand and the service level agreement corresponding to each virtual machine, and constructs a resource competition graph model with physical hosts as nodes and virtual machines with competing relationships as edges.

[0159] Model mapping model 240 maps the resource contention graph model to a non-cooperative game model, wherein the physical host is a game participant, the strategy set of each game participant includes the decision to respond to virtual machine migration requests, and the payoff function of each game participant is jointly determined by the resource utilization rate of the virtual machine hosted by the physical host, the migration overhead of the virtual machine, and the performance behavior corresponding to the service level agreement.

[0160] The scheduling execution module 250 determines the scheduling scheme within the cloud environment based on the non-cooperative game model, and performs resource allocation operations according to the scheduling scheme.

[0161] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process and related descriptions of the system described above can be found in the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0162] The following is for reference. Figure 3 It shows a schematic diagram of the structure of a computer system suitable for implementing the system and method embodiments of the present invention. Figure 3 The server shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.

[0163] like Figure 3 As shown, the computer system includes a Central Processing Unit (CPU) 301, which can perform various appropriate actions and processes based on programs stored in Read Only Memory (ROM) 302 or programs loaded from storage section 308 into Random Access Memory (RAM) 303. The RAM 303 also stores various programs and data required for system operation. The CPU 301, ROM 302, and RAM 303 are interconnected via a bus 304. An Input / Output (I / O) interface 305 is also connected to the bus 304.

[0164] The following components are connected to the input / output interface 305: an input section 306 including a keyboard, mouse, etc.; an output section 307 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 308 including a hard disk, etc.; and a communication section 309 including a network interface card such as a LAN (Local Area Network) card, modem, etc. The communication section 309 performs communication processing via a network such as the Internet. A drive 310 is also connected to the input / output interface 305 as needed. A removable medium 311, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 310 as needed so that computer programs read from it can be installed into the storage section 308 as needed.

[0165] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 309, and / or installed from removable medium 311. When the computer program is executed by central processing unit 301, it performs the functions defined in the methods of the present invention. It should be noted that the computer-readable medium described above in the present invention can be a computer-readable signal medium or a computer-readable storage medium or any combination thereof. The 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.

[0166] More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory, optical fiber, portable compact disk read-only memory, optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this invention, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium, which can transmit, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0167] Computer program code for performing the operations of this invention can be written in one or more programming languages ​​or a combination thereof. These programming languages ​​include object-oriented programming languages—such as Java, Smalltalk, and C++—and conventional procedural programming languages—such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including local area networks (LANs) or wide area networks (WANs), or it can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0168] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0169] The terms “first”, “second”, etc., are used to distinguish similar objects, not to describe or indicate a specific order or sequence.

[0170] The term "comprising" or any other similar term is intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus / device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent in such process, method, article, or apparatus / device.

[0171] The technical solution of the present invention has now been described in conjunction with the preferred embodiments shown in the accompanying drawings.

[0172] The above description is merely an embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principle of the present invention should be included within the scope of the claims of the present invention.

Claims

1. A dynamic allocation and management method for computer resources based on cloud computing, applied to a cloud management platform, characterized in that, The method includes: Obtain the resource utilization rate of each virtual machine in the cloud environment, including historical resource utilization rate and real-time resource utilization rate; Based on the resource utilization rate, the resource requirements of each virtual machine in a future preset time period are predicted using a pre-built time-series prediction model. Based on the predicted resource demand and combined with the service level agreement corresponding to each virtual machine, the resource competition conflict of the cloud environment in the future preset period is determined, and a resource competition graph model is constructed with physical hosts as nodes and virtual machines with competing relationships as edges. In this model, virtual machines with competing relationships are used as edges connecting their current physical host node and potential migration target physical host node. The resource contention graph model is mapped to a non-cooperative game model, wherein the physical host is a game participant, the strategy set of each game participant includes the decision to respond to virtual machine migration requests, and the payoff function of each game participant is jointly determined by the current and predicted overall resource load rate of the physical host it represents, the migration cost of the virtual machine, and the performance behavior corresponding to the service level agreement. Based on the non-cooperative game model, a scheduling scheme is determined within the cloud environment, and resource allocation operations are performed according to the scheduling scheme.

2. The method according to claim 1, characterized in that, Based on the resource utilization rate, a pre-built time-series prediction model is used to predict the resource requirements of each virtual machine within a preset future time period, including: Historical resource utilization and real-time resource utilization are used as inputs to the time series prediction model. The time series prediction model is an attention-based time series prediction model. By capturing the long-term and short-term dependencies of resource utilization, the time series prediction model outputs the predicted resource requirements of each virtual machine in the dimensions of CPU, memory and network I / O within a preset future time period.

3. The method according to claim 2, characterized in that, The time-series prediction model is constructed using the following methods: The initial model was initially trained using time-series data on the resource utilization of each virtual machine in the cloud environment. During the operation of the time series prediction model, the deviation between the model's predicted values ​​and the actual values ​​is continuously monitored. When the mean absolute percentage error exceeds a set threshold, the model is incrementally trained using recent data to update the model parameters.

4. The method according to claim 1, characterized in that, The resource contention graph model is constructed using the following methods: Determine the predicted resource requirements of each physical machine and its hosted virtual machines in the cloud environment; For any physical host, if the sum of the predicted resource requirements of at least two virtual machines hosted on it reaches or exceeds the physical resource capacity of the host, then it is determined that there is resource contention among the virtual machines hosted on it. The resource contention graph model is constructed by mapping a group of virtual machines with competing relationships to edges connecting their respective physical host nodes. In this model, virtual machines with competing relationships are used as edges connecting their current physical host node and potential migration target physical host nodes.

5. The method according to claim 1, characterized in that, In the said profit function, The migration overhead is quantified by the memory usage, network bandwidth, and estimated service interruption duration of the virtual machine to be migrated. The performance behavior is determined based on whether the virtual machine meets the performance indicators specified in its service level agreement, and is converted into quantified rewards or penalties and then included in the revenue function.

6. The method according to claim 1, characterized in that, The process of determining the virtual machine scheduling scheme within the cloud environment based on the non-cooperative game model includes: In each round of negotiation in the non-cooperative game model, each player evaluates potential virtual machine migration operations based on their local payoff function. Participants exchange migration proposals and information on changes in benefits, and filter potential virtual machine migration operations according to preset consensus rules to form a local consensus scheme. The above process is executed iteratively until a stable state is reached where no better solution is produced or the maximum number of iterations is reached. Then, all existing local consensus schemes are aggregated to form a global virtual machine scheduling scheme.

7. The method according to claim 6, characterized in that, The consensus rule adopted by the non-cooperative game model is the Pareto improvement principle, and the construction process of the local consensus scheme includes: Based on the Pareto improvement principle, when a proposed virtual machine migration operation improves the payoff of at least one player without reducing the payoff of any other player, the virtual machine migration operation is included in the local consensus scheme of the current iteration round.

8. The method according to claim 1, characterized in that, After determining the scheduling scheme within the cloud environment, the method further includes: Before performing resource allocation operations, the scheduling scheme is verified for security and feasibility. The verification includes whether the target physical host has enough remaining resources to support the virtual machines to be migrated, and whether the preset security policy is violated during the migration process. Once the verification is successful, resource allocation operations are performed according to the scheduling scheme.

9. The method according to claim 1, characterized in that, After performing the resource allocation operation, the method further includes: The actual resource usage and service level agreement fulfillment rate of the cloud environment after monitoring resource allocation are compared with the predicted returns of the non-cooperative game model. The parameters of the payoff function are adjusted based on the comparison results to optimize the game decision in the next scheduling cycle.

Citation Information

Patent Citations

  • Virtualized resource distribution method based on game theory

    CN102567077A

  • Game theory-based improved model cloud computing node storage, calculation and training resource competition scheduling method

    CN119473600A