CN116974700B - Method, system, equipment and storage medium for realizing dynamic balance of resources - Google Patents

Method, system, equipment and storage medium for realizing dynamic balance of resources Download PDF

Info

Publication number
CN116974700B
CN116974700B CN202311030736.9A CN202311030736A CN116974700B CN 116974700 B CN116974700 B CN 116974700B CN 202311030736 A CN202311030736 A CN 202311030736A CN 116974700 B CN116974700 B CN 116974700B
Authority
CN
China
Prior art keywords
virtual machine
score
node
migration
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311030736.9A
Other languages
Chinese (zh)
Other versions
CN116974700A (en
Inventor
范煜
张凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SmartX Inc
Original Assignee
SmartX Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SmartX Inc filed Critical SmartX Inc
Priority to CN202311030736.9A priority Critical patent/CN116974700B/en
Publication of CN116974700A publication Critical patent/CN116974700A/en
Application granted granted Critical
Publication of CN116974700B publication Critical patent/CN116974700B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention provides a method, a system, equipment and a storage medium for realizing dynamic balance of resources, which can comprise the following steps: acquiring cluster state data and virtual machine monitoring index data; establishing a cluster evaluation model; respectively evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through a cluster evaluation model to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result; generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result; and executing the virtual machine migration according to the virtual machine migration suggestion. According to the invention, the storage dimension is included in the cluster evaluation model in a weighted manner, so that the distribution between the storage copy and the virtual machines can be considered at the same time, and the local property of the storage copy of the virtual machine can be ensured to the greatest extent in the scheduling of the virtual machine and the balance of cluster resources can be maintained at the same time.

Description

Method, system, equipment and storage medium for realizing dynamic balance of resources
Technical Field
The present invention relates to the field of super fusion systems, and in particular, to a method, a system, an apparatus, and a storage medium for implementing dynamic resource balancing.
Background
In the super fusion scene, the data blocks of the virtual machine are stored in different nodes in a multi-copy mode according to a certain algorithm, when the storage copy required by the virtual machine and the virtual machine are on the same host, the virtual machine does not need to bring additional overhead due to remote access when reading files, the overhead of the virtual machine is minimum, and in the most ideal case, all the data blocks of the virtual machine have copies on the host.
However, in the prior art, in current dynamic resource scheduling systems, the scheduling of resources does not take into account the distribution between the storage copy and the virtual machine, especially for the following scenarios:
(1) When the CPU resource, the memory resource and the like of one virtual machine are sufficient, the virtual machine is usually migrated to a node with insufficient storage copy number in order to achieve load balancing among the nodes; however, when such migration occurs, there is a risk of traffic spurs occurring for some I/O intensive virtual machines.
(2) When the CPU, memory resources, and the like (except for storage resources) of one virtual machine are all sufficient, in the prior art, the virtual machine cannot be migrated to a node with a sufficient number of storage copies, and the distributed storage system needs to wait for the hot migration of the storage copies, but the hot migration of the storage copies often cannot happen in some cases (such as insufficient storage space of the node), and at this time, the virtual machine is in a situation of remotely accessing the storage copies for a long time.
Therefore, for scenario (1), a migration scheme is needed to migrate the virtual machine to a node with sufficient resources and sufficient copies; for scenario (2), a migration scheme is needed to migrate the virtual machine to nodes with sufficient storage copies.
Disclosure of Invention
In order to solve the technical defects in the prior art, the application provides a method, a system, equipment and a storage medium for realizing dynamic balance of resources. The method specifically comprises the steps of defining the index related to the storage copy, enhancing the decision of a dynamic resource scheduling system on the storage copy, and providing a cluster evaluation model comprising storage copy weighting, so that the locality of the storage copy of the virtual machine can be ensured to the greatest extent in the scheduling of the virtual machine, and meanwhile, the balance of cluster resources is maintained.
The first aspect of the present application provides a method for implementing dynamic resource balancing, where the method specifically may include:
acquiring cluster state data and virtual machine monitoring index data;
establishing a cluster evaluation model;
respectively evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through a cluster evaluation model to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result;
Generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result;
and executing the virtual machine migration according to the virtual machine migration suggestion.
In one possible implementation manner of the first aspect, obtaining cluster state data and virtual machine monitor indicator data includes:
the cluster configuration data, the node configuration data, the virtual machine configuration data, the DRS configuration data of the cluster, the CPU monitoring index data, the memory monitoring index data and the storage monitoring index data are obtained through a preset monitor and/or a custom monitor.
In one possible implementation manner of the first aspect, establishing the cluster evaluation model includes:
extracting all CPU utilization rates, memory space utilization rates and storage space utilization rates of a source host and a target host corresponding to the virtual machine in operation, and calculating available CPU resources, available memory space and available storage space;
calculating a first migration weight of the virtual machine according to the available CPU resources and the available memory space and a second migration weight of the virtual machine according to the available memory space and the preset rule;
and establishing a cluster evaluation model according to the first migration weight and the second migration weight.
In one possible implementation manner of the first aspect, the evaluating, by the cluster evaluation model, the current virtual machine resource idle rate, the node resource idle rate, and the cluster resource idle rate, respectively, and the obtaining the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
obtaining a CPU Score VM CPU Score of a virtual machine, a Memory Score VM Memory Score of the virtual machine and a Storage Score VM Storage Score of the virtual machine, and calculating the virtual machine Score VM Score according to a first preset algorithm;
obtaining a CPU Score of a Host, a memory Score Host Memory Score of the Host and a node Health Score of a system, and calculating the node Score Host Score according to a second preset algorithm;
and obtaining a virtual machine Score VM Score, and calculating a Cluster Score Cluster Score according to a third preset algorithm.
In one possible implementation manner of the first aspect, the algorithm corresponding to the obtaining the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
the first preset algorithm is as follows:
VM Score = first migration weight VM CPU Score + second migration weight VM Memory Score;
the VM Score is a virtual machine Score, the VM CPU Score is a CPU Score of the virtual machine, the VM Memory Score is a Memory Score of the virtual machine, and the VM Storage Score is a Storage Score of the virtual machine;
The second preset algorithm is as follows:
Host Score=Host CPU Score*Host Memory Score*Health Score
the Host Score is a node Score, the Host CPU Score is a CPU Score of a Host, the Host Memory Score memory Score of the Host and the Health Score of the node of the system;
the third preset algorithm is as follows:
wherein n is a positive integer greater than or equal to 1.
In one possible implementation manner of the first aspect, the calculation formulas for obtaining the VM CPU Score and the Host Score are respectively:
the CPU Steal Time Cost is a delay Time corresponding to the delay scheduling when all CPU threads of the virtual machine exceed the expected scheduled waiting total Time in a preset Time period, and the CPU Demand Time is a CPU Time required by the virtual machine;
the Host Total Time is the Total CPU Time of the node, the Host Used Time is the CPU resource consumed by the application program on the node, and the VM Demand Time is the Time required by the CPU resource allocated to the virtual machine for use.
In one possible implementation manner of the first aspect, generating the corresponding virtual machine migration suggestion according to the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
selecting a virtual machine to be migrated with the lowest idle rate as an evaluation result of the virtual machine;
searching a target migration node for the virtual machine to be migrated according to the benefits of the candidate nodes;
And under the condition that the target migration node exists, generating a virtual machine migration suggestion for migrating the virtual machine to be migrated to the target migration node.
In one possible implementation manner of the first aspect, searching for the target migration node for the virtual machine to be migrated includes:
setting an alternative node, and calculating a new virtual machine score (VmScore) of the alternative node dest
DRSScore at source node according to virtual machine src New virtual machine score VmScore of virtual machine at alternative node dest Calculating the benefits of the alternative nodes;
and selecting the candidate node with the highest corresponding benefit from the plurality of candidate nodes as a target migration node.
In a possible implementation manner of the first aspect, the method further includes:
and if the benefit of each candidate node is a negative value, judging that the target migration node does not exist.
In one possible implementation manner of the first aspect, performing the virtual machine migration according to the virtual machine migration proposal includes:
triggering an application virtual machine migration suggestion according to preset configuration, and generating a migration task;
migrating the virtual machine in the virtual machine migration proposal from the source node to the target migration node according to the migration task;
and under the condition that the migration task is completed, updating the migration result into the virtual machine migration suggestion.
A second aspect of the present application provides a system for implementing dynamic resource balancing, which is applied to a method for implementing dynamic resource balancing in the first aspect, and the system specifically may include:
the system of (1) comprises:
the acquisition unit is used for acquiring cluster state data and virtual machine monitoring index data;
the establishing unit is used for establishing a cluster evaluation model;
the evaluation unit is used for evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through the cluster evaluation model respectively to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result;
the generating unit is used for generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result;
and the migration unit is used for executing virtual machine migration according to the virtual machine migration suggestion.
A third aspect of the present application provides an electronic device, which may include:
a memory for storing a processing program;
a processor, wherein the processor implements a method for dynamic balancing of resources according to any of the foregoing first aspects when executing a processing program.
A fourth aspect of the present application provides a readable storage medium having stored thereon a processing program which when executed by a processor implements a method of enabling dynamic balancing of resources as in any of the preceding first aspects.
Compared with the prior art, the application has the following beneficial technical effects:
the technical scheme provided by the invention is based on the current dynamic resource scheduling system, and is used for enhancing the decision of the dynamic resource scheduling system on the stored copy by adding the index related to the defined stored copy; the method comprises the steps that a storage copy enhanced evaluation model is provided, wherein the cluster evaluation model only comprises a CPU (central processing unit), a memory and network dimensions, and the storage dimensions are included in the cluster evaluation model in a weighted mode, so that distribution between the storage copy and the virtual machines can be considered at the same time, and when the CPU, the memory resources and the like of one virtual machine are sufficient, the virtual machine can be migrated to a node with sufficient resources and sufficient copy number; when the CPU resource, the memory resource and other resources (except the storage resource) of one virtual machine are sufficient, the virtual machine is migrated to the node with sufficient storage copy by the virtual machine which is remotely accessed to the storage copy for a long time.
Drawings
Other features, objects and advantages of the present invention will become more apparent upon reading of the detailed description of non-limiting embodiments, given with reference to the accompanying drawings in which:
FIG. 1 is a flow diagram illustrating a method of implementing dynamic balancing of resources, according to an embodiment of the present application;
FIG. 2 is a flow chart illustrating sequentially scoring virtual machines, nodes, and clusters to obtain an evaluation result according to an embodiment of the present application;
FIG. 3 illustrates a system architecture in which a dynamic resource scheduling system may balance resources for multiple clusters, according to an embodiment of the present application;
FIG. 4 illustrates a flow chart for implementing resource balancing by dynamic resource scheduling according to a timing relationship, in accordance with an embodiment of the present application;
fig. 5 illustrates a system block diagram that shows one implementation of dynamic balancing of resources, in accordance with an embodiment of the present application.
Detailed Description
In the super fusion scene, the cluster is provided with a plurality of nodes, the number of the virtual machines running on each node is always uncertain, the operation and maintenance technology level of a user is dependent, when the condition of unbalanced load is met, if the virtual machines on the nodes are too many, the resources are insufficient, and if the virtual machines on the nodes are rarely idle, the user needs to manually migrate the virtual machines to balance the CPU, the memory and the storage of the computing resources in the cluster, and the operation is complex and time-consuming. With the development and expansion of user enterprises, clusters are also subjected to scale growth, capacity expansion is carried out continuously, the density of virtual machines in a development and test environment is higher, if the number of virtual machines running in the clusters reaches thousands of levels, the balance of computing resources can be more complicated and complicated by manually scheduling the virtual machines, and the operations are unrealistic and inefficient.
The method can help users to easily realize load balancing of computing resources. The implementation of dynamic resource scheduling includes:
1. the computing resource consumption conditions of the cluster nodes and the virtual machines are collected through a monitoring system or heartbeat, and generally comprise: CPU consumption, memory consumption, and storage consumption.
2. And calculating an idle rate for each node and each virtual machine through the evaluation model, wherein the idle rate reflects whether the resource usage of the node or the host is sufficient.
3. After scoring is carried out through the evaluation model, the system can achieve the aim of load balancing by migrating the virtual machine to a host with sufficient resources.
Before migration, the system needs to complete the following four steps to generate virtual machine migration suggestions:
(1) Finding a virtual machine needing to be migrated: the determination of which virtual machines need to migrate is made by:
mode I: the node idle rate is mainly considered, the virtual machines above are migrated by finding out the node with low idle rate, and finally the idle rate of each host is basically the same.
Mode II: virtual idle rate is considered, a virtual machine with low idle rate is found to migrate, so that the idle rate of the virtual machine is improved, and a host can be indirectly in load balance.
(2) Finding a migrated destination node: after the virtual machine to be migrated is determined, the system simulates benefits of migrating to other nodes through an algorithm.
The specific simulation process is as follows: deducting resources consumed by the virtual machine from a source node, calculating the resources to a node simulating migration, and recalculating the idle rate of the virtual machine and the node through an evaluation model; and (3) by carrying out simulated migration on each node, finding out the node with the highest idle rate improvement as a destination node.
(3) Generating a single virtual machine migration suggestion: after completing (1) and (2), the system will generate a virtual machine migration suggestion comprising: virtual machine, source node, destination node, etc. information to be migrated.
(4) Ending generating virtual machine migration suggestions: when a suggestion is generated each time, the system checks whether ending is needed; the end condition may be that the system task cluster is already in a load balancing state, or that the number of virtual machine migration suggestions has reached a threshold.
After the system generates the virtual machine migration suggestion, the migration is automatically or manually performed by the user according to the user configuration.
The work done by the dynamic resource scheduling system in one period is realized through the steps, and the main parameters for establishing the evaluation model mainly comprise two parts: the input of the model, which indexes need to be collected, is the calculation formula of the idle rate:
The main collected indexes are as follows:
(1) Measuring the collected node and virtual machine index of CPU resource usage condition: CPU Usage; CPU Demand Time; CPU Used Time; (VM) Steal Time, etc.
(2) Measuring the collected node and virtual machine index of the memory resource use condition: memory Usage; a Used Memory; allocated Memory, etc.
(3) Measuring the collected node and virtual machine index of the use condition of the storage resource: disk I/O throughput, IOPS, disk utilization, etc.
(4) Measuring the collected node and virtual machine index of the network resource use condition: network I/O throughput, network card bandwidth, etc.
The CPU, storage and storage scores of the host or the node can be calculated respectively through the collected indexes, and the idle rate is calculated through the following three aspects: goodness = CPU Memory, however this way of idle rate calculation thus enables dynamic resource scheduling, not taking into account the distribution between the Storage copies and the virtual machines.
The technical scheme provided by the invention specifically comprises the steps of defining the relevant indexes of the storage copy, enhancing the decision of the dynamic resource scheduling system on the storage copy, and providing an evaluation model comprising the storage copy weighting, so that the locality of the storage copy of the virtual machine can be ensured to the greatest extent in the scheduling of the virtual machine.
In some embodiments of the present application, resource load balancing is performed on a single cluster in two modes of timing triggering and manual triggering by a user.
Specifically, fig. 1 shows a flowchart of a method for implementing dynamic balancing of resources, where the method for implementing dynamic balancing of resources may include:
step S1: and acquiring cluster state data and virtual machine monitoring index data. It may be appreciated that the resource analysis may include obtaining a cluster state by multiple dimensions such as a region/a resource pool/an available partition/a host group (cluster), and monitoring a computing, storing, and a network resource pool, and in combination with a key performance indicator, continuously evaluating a capacity and a load condition of the resource pool, where the dynamic resource scheduling system may obtain the cluster state from a management platform, including: cluster configuration, node configuration, virtual machine configuration, DRS (Dynamic resource scheduling ) related configuration of the cluster by a user; the virtual machine monitoring index data can also be obtained through the proxy function of the management platform, and the virtual machine monitoring index data comprises a CPU, a memory, storage related index data and the like.
In some embodiments of the present application, in the system, one virtual machine is a process of the kernel operating system, the kernel adopts a time slice rule for scheduling the process, when a time slice of a process on a CPU is used up, a task is suspended, and a CPU usage right is handed to a next process, so that the more CPUs allocated to the virtual machine, the more available CPU time slices, the higher the performance.
In some embodiments of the present application, in order to efficiently use the memory, the host allocates the memory for the virtual machine according to the actual memory usage amount of the virtual machine, where the maximum value of the upper memory depends on the current physical memory size of the host; in order to avoid that when the memory of the host is exhausted, the virtual machine which does not reach the upper limit of the memory use cannot continue to use more memory, a part of memory can be reserved for the virtual machine, which represents the lower limit of the physical memory reserved for the virtual machine. Step S2: and establishing a cluster evaluation model. It can be understood that when the virtual machine runs, the idle rate of the virtual machine is affected by the resources of the CPU, the memory and the storage, however, the influence degree of the competition of each resource on the idle rate is different, the influence of the CPU resource on the virtual machine is generally the largest, then the memory and the storage are carried out, and the relevant weight of the evaluation model is set according to the influence of the resources of the three aspects, so that the evaluation model scores three layers of the virtual machine, the node and the cluster in sequence, and the idle rate of the virtual machine is comprehensively evaluated.
Step S3: and respectively evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through the cluster evaluation model to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result. It can be understood that a VM can run healthily, a CPU and a memory are often required to meet the condition of sufficient resources at the same time, and the storage score depends on the number of copies on the host where the VM is located, so that the virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate need to be evaluated in sequence, and a virtual machine evaluation result, a node evaluation result and a cluster evaluation result are obtained, so that the VM can be migrated to the idle host, and the VM can run healthily.
Step S4: and generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result. It can be understood that the system can generate virtual machine migration suggestions for selecting which virtual machines can be scheduled to which target migration nodes with sufficient resources according to comprehensive evaluation of virtual machine evaluation results, node evaluation results and cluster evaluation results, and finally can achieve the purpose of balancing cluster resources.
Step S5: and executing virtual machine migration according to the virtual machine migration suggestion. It will be appreciated that after the virtual machine migration suggestion is generated, the system will automatically apply or the user manually trigger the application virtual machine migration suggestion based on the user's configuration.
In the step S1, the obtaining cluster state data and virtual machine monitoring index data includes: the cluster configuration data, the node configuration data, the virtual machine configuration data, the DRS configuration data of the cluster, the CPU monitoring index data, the memory monitoring index data and the storage monitoring index data are obtained through a preset monitor and/or a custom monitor.
Specifically, regarding the relevant information of the CPU monitor index data, see specifically table 4-1:
TABLE 4-1
Specifically, the relevant information about the memory monitor index data is shown in table 4-2:
TABLE 4-2
Specifically, regarding the information about the storage of the monitoring index data, namely, the total number of copies under a single copy of the virtual machine, and the collection of the distribution of the number of copies of all virtual machines on the node, see, in particular, tables 4-3:
TABLE 4-3
In the step S2, the establishing a cluster evaluation model includes:
extracting all CPU utilization rates, memory space utilization rates and storage space utilization rates of a source host and a target host corresponding to the virtual machine in operation, and calculating available CPU resources, available memory space and available storage space;
calculating a first migration weight of the virtual machine according to the available CPU resources and the available memory space and a second migration weight of the virtual migration machine according to the available memory space and the preset rule;
and establishing a cluster evaluation model according to the first migration weight and the second migration weight.
It will be appreciated that resources including at least three of CPU, memory, storage, etc. affect the idle rate of the virtual machine when the virtual machine is running, but the degree to which contention for each resource affects the idle rate is different. CPU resource contention tends to be the most influential, followed by memory and finally storage. According to different degrees of influence of resource competition on idle rate, different weights are set, wherein the different weights comprise a first migration weight and a second migration weight, and the influence of the second migration weight corresponding to the influence of the storage space on resource balance is lower than that of the first migration weight obtained by the CPU and the memory on the resource balance.
In the step S3, the evaluating, by the cluster evaluation model, the current virtual machine resource idle rate, the node resource idle rate, and the cluster resource idle rate, respectively, and the obtaining the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes: calculating a virtual machine Score VM Score according to a first preset algorithm according to a CPU Score VM CPU Score of the virtual machine, a Memory Score VM Memory Score of the virtual machine and a Storage Score VM Storage Score of the virtual machine;
calculating a node Score according to a second preset algorithm according to the CPU Score of the Host, the memory Score Host Memory Score of the Host and the node Health Score of the system;
and calculating Cluster Score Cluster Score according to a third preset algorithm according to the virtual machine Score VM Score.
In some embodiments of the present application, the obtaining the first preset algorithm, the second preset algorithm, and the third preset algorithm corresponding to the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
the first preset algorithm is as follows:
VM Score = first migration weight VM CPU Score + second migration weight VM Memory Score;
The VM Score is a virtual machine Score, the VM CPU Score is a CPU Score of the virtual machine, the VM Memory Score is a Memory Score of the virtual machine, and the VM Storage Score is a Storage Score of the virtual machine;
the second preset algorithm is as follows:
Host Score=Host CPU Score*Host Memory Score*Health Score
the Host Score is a node Score, the Host CPU Score is a CPU Score of a Host, the Host Memory Score memory Score of the Host and the Health Score of the node of the system;
the third preset algorithm is as follows:
wherein n is a positive integer greater than or equal to 1, VMn Storage Score is the memory score of any virtual machine
Further, the calculation formulas for obtaining the VM CPU Score and the Host Score are respectively:
the CPU Steal Time Cost is a waiting total Time of all CPU threads of the virtual machine exceeding an expected dispatch in a preset Time period or a delay Time for realizing the dispatch due to the CPU threads exceeding the expected dispatch in the preset Time period, namely a delay Time corresponding to the delayed dispatch, and the CPU Demand Time is a CPU Time required by the virtual machine;
the Host Total Time is the Total CPU Time of the node, the Host Used Time is the CPU resource consumed by the application program on the node, and the VM Demand Time is the Time required by the CPU resource allocated to the virtual machine for use.
The cluster evaluation model scores all running virtual machines to obtain the idle rate VM Score of the virtual machines, wherein the lower the VM Score is, the less resources required by the virtual machines are indicated, and the virtual machines with low VM Score are the virtual machines which need to be scheduled preferentially by the system.
Specifically, fig. 2 shows a flow chart of sequentially scoring virtual machines, nodes and clusters to obtain an evaluation result according to some embodiments of the present application, where in a scenario where there are more newly added hosts or clustered hosts, the number of Vm copies on an idle host is small or there are few copies, and in this scenario, when the CPU resources and resources required by the memory resources of Vm are seriously insufficient, at this time, even if the number of copies is insufficient, the corresponding optimal virtual machine migration suggestion should be that Vm can be migrated to the target migration node of the idle host, so that Vm is in a state of resource equilibrium.
For example, in the following scenario: the CPU Score and the Memory Score of Vm on Host-1 are CPU score=0.2 and Memory score=0.2, respectively, and the Score of Vm on Host-2 is CPU score=0 and Memory score=0.9, respectively, where good=cpu Score x Memory Score "multiplication" is used so that Vm is not migrated to Host-2.
The forming of the factors, setting the second migration weight corresponding to the influence of the storage space on the resource balance, setting the first migration weight corresponding to the influence of the CPU and the memory on the resource balance, wherein the second migration weight has obviously lower influence on the resource balance, if the storage Score is incorporated into the Vm Score in a weighted manner, the free Host can store a scene with the number of the copies being 0, the weighted manner can avoid the Score of Vm in the free Host being 0, so that Vm can be migrated to the Host-2, and the weighted implementation manner can be as follows:
VM Score=0.8*VM CPU Score*VM Memory Score+0.2*VM Storage Score
wherein 0.8 is a first migration weight of the virtual machine calculated according to the available CPU resource and the available memory space and a preset rule;
and 0.2 is the second migration weight of the virtual migration machine calculated according to the available storage space and the preset rule.
Wherein the VM CPU Score calculation formula is:
CPU Steal Time Cost represents the total time that all vCPU threads of a virtual machine wait on schedule (ELF implementation is 25 s) on average for an additional per second, and it is also understood that the vCPU threads should be scheduled, but the contention due to CPU oversubstance results in delayed scheduling, the delay time due to latency not scheduled on schedule, this delay time including the virtualization layer, the overstock due to multiple vcpus sharing the physical CPU.
CPU Demand Time represents the CPU Time required by the virtual machine, which is an absolute Time, e.g., one CPU core is in 1s, then the Time is recorded as 1s, and 5 CPU cores are recorded as 5s.
The VM Memory Score formula is:
memory Score represents the Memory configuration that the user specifies for the virtual machine.
Sweped Memory represents Memory data that is transferred to the hard disk in part of the operating system, which is significantly promoted when part of the node resources are undersourced.
The VM Storage Score calculation formula is:
the Score reflects the number of stored copies stored locally or the occupancy of the stored locally, if all data blocks of a virtual machine have copies on a Host machine on which the virtual machine operates, the storage is definitely 100%, and when the Score is included, the stored copies of the virtual machine can be considered to be distributed, the locality of the stored copies is kept as far as possible, and the specific calculation formula of the node Score Host Score used when the virtual machine selects nodes with sufficient resources is as follows:
Host Score=Host CPU Score*Host Memory Score*Health Score
the Host CPU Score measures whether the remaining CPU resources of the node are sufficient, and the higher the Score, the more sufficient the CPU resources that the node can provide. The CPU resources consumed by the application on the node need to be subtracted from the total CPU time of the node and the CPU resources already allocated for use by the virtual machine. The calculation formula is as follows:
The memory Score Host Memory Score is similar to the Host CPU Score, and needs to remove the memory consumed by the node itself and the memory allocated to the virtual machine, and besides, the memory needs to be set to 0 directly if the memory exceeds Host Memory Score, considering the pre-allocated memory amount of the virtual machine, and not allowing the pre-allocated memory amount to exceed the memory amount of the Host;
the calculation formula is as follows:
host Allocated Memory allocates memory for the host, VM Allocated Memory allocates memory for the virtual machine, and the Health Score reflects the Health condition of the node, and the Score of the Health Score affected by the Health condition of the node hardware, the running state of the management control program on the node, and other factors is directly provided by the management control system.
In some embodiments of the present application, the manner in which the Cluster Score Cluster Score is calculated includes: cluster Score is the average of all virtual machine scores VM Score, which can intuitively reflect the resource health and equilibrium state of the whole Cluster to some extent.
In the step S4, generating the corresponding virtual machine migration suggestion according to the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
selecting a virtual machine to be migrated with the lowest idle rate as an evaluation result of the virtual machine;
Searching a target migration node for the virtual machine to be migrated according to the benefits of the standby node;
and under the condition that the target migration node exists, generating a virtual machine migration suggestion for migrating the virtual machine to be migrated to the target migration node.
In some embodiments of the present application, searching for a target migration node for a virtual machine to be migrated includes:
setting an alternative node, and calculating a new virtual machine score (VmScore) of the alternative node dest
DRSScore at source node according to virtual machine src New virtual machine score VmScore of virtual machine at alternative node dest Calculating the benefits of the alternative nodes;
and selecting the candidate node with the highest corresponding benefit from the plurality of candidate nodes as a target migration node.
In some embodiments of the present application, the scores of the virtual machine evaluation results, the node evaluation results and the cluster evaluation results may reflect that which virtual machines can be selected according to the scores and scheduled to which target migration nodes with sufficient resources, and the virtual machine migration implementation and the cluster resource balancing are performed.
Specifically, the specific process of generating virtual machine migration suggestions by the scores of the evaluation results may be as follows:
(1) Selecting the virtual machine with the lowest score from the virtual machine evaluation results,
(2) The process of selecting the appropriate target node for the virtual machine includes:
calculating DRSScore of virtual machine at source node src :
DRSScore src =VmScore src *HostScore src Wherein,in a related embodiment of the present application, vmScore src And HostScore src The Score of (2) may be the Score value corresponding to the VM CPU Score and the Host Score in the foregoing embodiments;
after virtual consumed CPU and memory resources are removed from the candidate node, a new score HostScare of the candidate node is calculated dest And virtual machine new virtual machine score VmScore at alternative node dest
Specifically, the virtual machine new virtual machine score VmScore at the candidate node dest When the required CPU Score VM CPU Score and Memory Score can be directly set to 1; if the resources of the candidate node are insufficient, the candidate node scores HostScore dest Will be 0, which means that the candidate node will not be considered as the target migration node.
Furthermore, store the score DRSScore dest If the number of the virtual machines stored on the alternative nodes is larger, the new storage score is higher, and the DRSScore of the virtual machines on the alternative nodes can be calculated by the method dest
DRSScore dest =VmScore dest *HostScore dest
Calculating candidate node benefits: benifit=drsscore dest -DRSScore src
For all nodes, DRSScore of the current node is calculated in sequence dest DRSScore src And selecting a Benefit, namely the candidate node with the highest Benefit, from all node benefits as a target migration node of the virtual machine to be migrated, and simultaneously generating virtual machine migration suggestions.
If the candidate node with the highest benefit is found, the candidate node is used as a target migration node, meanwhile, a virtual machine migration suggestion is generated, and the virtual machine is migrated according to the virtual machine migration suggestion.
In some embodiments of the present application, when calculating the benefit, if the benefit of each candidate node is a negative value, determining that the target migration node does not exist; if the benefits of the candidate nodes are smaller than 0, virtual machine migration suggestions do not need to be generated, and the virtual machines do not need to be migrated correspondingly.
In some embodiments of the present application, a lookup of the target migration node may be performed on all virtual machines within the cluster until all virtual machines are optimized by the system or virtual machine migration suggestions have been generated to reach an upper threshold, while all virtual machine migration suggestions need to be pushed to the management platform in order to execute the relevant virtual machine migration suggestions later.
In the step S5, executing the virtual machine migration according to the virtual machine migration proposal includes:
triggering an application virtual machine migration suggestion according to preset configuration, and generating a migration task;
Migrating the virtual machine in the virtual machine migration proposal from a source node to the target migration node according to the migration task;
and under the condition that the migration task is completed, updating a migration result into the virtual machine migration suggestion.
It can be understood that the migration task is triggered through the management platform interface, the migration task migrates the virtual machine in the virtual machine migration suggestion from the source node to the destination node, the system waits for the migration task to be completed, and the migration result is updated to the virtual machine migration suggestion.
In some embodiments of the present application, fig. 3 illustrates a system architecture in which a dynamic resource scheduling system may balance resources for multiple clusters, where the normal operation of the dynamic resource scheduling system depends on multiple cluster management platforms, cluster monitoring systems, and cluster virtualization management platforms, according to some embodiments of the present application. In the whole system architecture:
the dynamic resource scheduling system is used for driving the operation of the whole flow and is responsible for collecting monitoring indexes, evaluating the clusters through the monitoring indexes, generating virtual machine migration suggestions, carrying out load balancing on the cluster resources and triggering the responsibility of migration.
The multi-cluster management platform is an entrance for the dynamic resource scheduling system to acquire all necessary data; the management platform can provide configuration information of clusters, nodes and virtual machines, can also store cluster evaluation, virtual machine migration suggestions and the like reported by the dynamic resource scheduling system, and can be transmitted to a user through a webpage console. In addition, the management platform also provides a proxy function, and the dynamic resource scheduling system acquires the monitoring index of the single cluster through the proxy.
The cluster monitoring system is used for collecting monitoring indexes of all nodes and virtual machines from the cluster virtualization platform, gathering data and providing the data to the dynamic resource scheduling system.
The cluster virtualization management platform is used for collecting a program on each node, collecting monitoring indexes of the nodes and virtual machines on the nodes, and providing the whole monitoring system for monitoring.
In some embodiments of the present application, fig. 4 shows a flowchart for implementing resource balancing through dynamic resource scheduling according to a certain time sequence relationship, where the implementing of the dynamic resource scheduling is implemented through a frame of a dynamic resource scheduling system by data acquisition, cluster evaluation, virtual machine migration suggestion generation, and migration execution to implement a time sequence flow for implementing dynamic balancing of system resources, and a specific implementation manner of generating virtual machine migration suggestion and executing migration may be consistent with a method flow for implementing resource balancing in the foregoing embodiments, which is not described herein again.
In some embodiments of the present application, fig. 5 illustrates a block diagram of a system for implementing dynamic balancing of resources, the system comprising:
an acquiring unit 001, configured to acquire cluster state data and virtual machine monitoring index data;
A building unit 002 for building a cluster evaluation model;
the evaluation unit 003 is configured to evaluate, through the cluster evaluation model, the current virtual machine resource idle rate, the node resource idle rate, and the cluster resource idle rate, to obtain a virtual machine evaluation result, a node evaluation result, and a cluster evaluation result;
the generating unit 004 is used for generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result;
and the migration unit 005 is configured to execute virtual machine migration according to the virtual machine migration suggestion.
It can be understood that each function module for dynamic balancing of resources performs the same step flow as the dynamic balancing method of resources, and detailed description is omitted herein.
In some embodiments of the present application, an electronic device is also provided. The electronic equipment comprises a memory and a processor, wherein the memory is used for storing a processing program, and the processor executes the processing program according to the instruction. The dynamic balancing method of the resources in the foregoing embodiment is enabled when the processor executes the processing program.
In some embodiments of the present application, there is further provided a readable storage medium having stored thereon a processing program, which when executed by a processor, implements the method for dynamic balancing of resources in the foregoing embodiments.
The technical solutions presented in the present application relate to a method, an apparatus, a system, an electronic device, a computer-readable storage medium and/or a computer program product. The computer program product may include computer readable program instructions for performing various aspects of the present disclosure.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for performing the operations of the present disclosure can be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present disclosure are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information of computer readable program instructions, which can execute the computer readable program instructions.
Various aspects of the present disclosure are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processing unit of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The foregoing description of the embodiments of the present disclosure has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (8)

1. A method for implementing dynamic resource balancing, the method comprising:
step S1: acquiring cluster state data and virtual machine monitoring index data; the obtaining cluster state data and virtual machine monitoring index data comprises the following steps: acquiring cluster configuration data, node configuration data, virtual machine configuration data, DRS configuration data of a cluster, CPU monitoring index data, memory monitoring index data and storage monitoring index data through a preset monitor and/or a custom monitor;
step S2: establishing a cluster evaluation model, extracting all CPU utilization rates, memory space utilization rates and storage space utilization rates of a source host and a target host corresponding to the virtual machine in operation, and calculating available CPU resources, available memory space and available storage space; calculating a first migration weight of the virtual machine according to the available CPU resources and the available memory space and a second migration weight of the virtual machine according to the available memory space and the preset rule; establishing a cluster evaluation model according to the first migration weight and the second migration weight;
Step S3: respectively evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through the cluster evaluation model to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result;
step S4: generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result;
step S5: executing virtual machine migration according to the virtual machine migration suggestion; in the step S3, the evaluating, by the cluster evaluation model, the current virtual machine resource idle rate, the node resource idle rate, and the cluster resource idle rate, respectively, and the obtaining the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result includes:
obtaining a CPU Score VM CPU Score of a virtual machine, a Memory Score VM Memory Score of the virtual machine and a Storage Score VM Storage Score of the virtual machine, and calculating the virtual machine Score VM Score according to a first preset algorithm;
obtaining a CPU Score of the Host, a memory Score Host Memory Score of the Host and a node Health Score of the system, and calculating the node Score according to a second preset algorithm;
obtaining the virtual machine Score VM Score, and calculating a Cluster Score Cluster Score according to a third preset algorithm; the obtaining the virtual machine evaluation result, the node evaluation result, the first preset algorithm, the second preset algorithm and the third preset algorithm, which correspond to the cluster evaluation result, includes:
The first preset algorithm is as follows:
VM Score = first migration weight VM CPU Score + second migration weight VM Memory Score;
the VM Score is a virtual machine Score, the VM CPU Score is a CPU Score of the virtual machine, the VM Memory Score is a Memory Score of the virtual machine, and the VM Storage Score is a Storage Score of the virtual machine;
the second preset algorithm is as follows:
Host Score=Host CPU Score*Host Memory Score*Health Score
the Host Score is a node Score, the Host CPU Score is a CPU Score of the Host, the Host Memory Score is a memory Score of the Host, and the Health Score is a node Health Score;
the third preset algorithm is as follows:
wherein n is a positive integer greater than or equal to 1;
the calculation formulas for obtaining the VM CPU Score and the Host CPU Score are respectively as follows:
wherein CPU Steal Time Cost is the corresponding delay Time when all CPU threads of the virtual machine are scheduled by delay, and CPU Demand Time is the CPU Time required by the virtual machine;
the Host Total Time is all CPU Time of the node, the Host Used Time is CPU resource consumed on the node, and the VM Demand Time is Time required by the CPU resource Used by the virtual machine.
2. The method of claim 1, wherein in step S4, generating a corresponding virtual machine migration suggestion according to the virtual machine evaluation result, the node evaluation result, and the cluster evaluation result comprises:
Selecting the virtual machine to be migrated with the lowest idle rate as the virtual machine evaluation result;
searching a target migration node for the virtual machine to be migrated according to the benefits of the candidate nodes;
and under the condition that the target migration node exists, generating a virtual machine migration suggestion for migrating the virtual machine to be migrated to the target migration node.
3. The method for implementing dynamic resource balancing according to claim 2, wherein searching for the target migration node for the virtual machine to be migrated comprises:
setting an alternative node, and calculating a new virtual machine score (VmScore) of the alternative node dest
DRSScore at source node according to virtual machine src New virtual machine score VmScore of virtual machine at alternative node dest Calculating the benefits of the alternative nodes;
and selecting the candidate node with the highest value corresponding to the benefit from the plurality of candidate nodes as the target migration node.
4. A method for implementing dynamic resource balancing as recited in claim 3, further comprising:
and if the gain of each candidate node is a negative value, judging that the target migration node does not exist.
5. The method of claim 1, wherein in the step S5, executing the virtual machine migration according to the virtual machine migration proposal comprises:
Triggering an application virtual machine migration suggestion according to preset configuration, and generating a migration task;
migrating the virtual machine in the virtual machine migration proposal from a source node to the target migration node according to the migration task;
and under the condition that the migration task is completed, updating a migration result into the virtual machine migration suggestion.
6. A system for implementing dynamic balance of resources, applied to a method for implementing dynamic balance of resources according to any one of claims 1 to 5, characterized in that the system comprises:
the acquisition unit is used for acquiring cluster state data and virtual machine monitoring index data;
the establishing unit is used for establishing a cluster evaluation model;
the evaluation unit is used for evaluating the current virtual machine resource idle rate, the node resource idle rate and the cluster resource idle rate through the cluster evaluation model respectively to obtain a virtual machine evaluation result, a node evaluation result and a cluster evaluation result;
the generating unit is used for generating corresponding virtual machine migration suggestions according to the virtual machine evaluation result, the node evaluation result and the cluster evaluation result;
and the migration unit is used for executing virtual machine migration according to the virtual machine migration suggestion.
7. An electronic device, comprising:
a memory for storing a processing program;
a processor, which when executing the processing program, implements the method for implementing dynamic resource balancing according to any one of claims 1 to 5.
8. A readable storage medium, wherein a processing program is stored on the readable storage medium, and when the processing program is executed by a processor, the method for implementing dynamic resource balancing according to any one of claims 1 to 5 is implemented.
CN202311030736.9A 2023-08-16 2023-08-16 Method, system, equipment and storage medium for realizing dynamic balance of resources Active CN116974700B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311030736.9A CN116974700B (en) 2023-08-16 2023-08-16 Method, system, equipment and storage medium for realizing dynamic balance of resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311030736.9A CN116974700B (en) 2023-08-16 2023-08-16 Method, system, equipment and storage medium for realizing dynamic balance of resources

Publications (2)

Publication Number Publication Date
CN116974700A CN116974700A (en) 2023-10-31
CN116974700B true CN116974700B (en) 2024-04-09

Family

ID=88479599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311030736.9A Active CN116974700B (en) 2023-08-16 2023-08-16 Method, system, equipment and storage medium for realizing dynamic balance of resources

Country Status (1)

Country Link
CN (1) CN116974700B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677958A (en) * 2013-12-13 2014-03-26 华为技术有限公司 Virtualization cluster resource scheduling method and device
US11226773B1 (en) * 2020-10-02 2022-01-18 International Business Machines Corporation Workload management in networked storage systems
CN114253662A (en) * 2021-11-12 2022-03-29 苏州浪潮智能科技有限公司 Method, device, equipment and medium for dynamically migrating virtual machines
JP2022112614A (en) * 2021-01-22 2022-08-03 株式会社日立製作所 Device for determining resource movement schedule
CN115080177A (en) * 2021-03-12 2022-09-20 天翼云科技有限公司 Method and device for migrating virtual machine to server, electronic equipment and storage medium
CN116521323A (en) * 2023-05-25 2023-08-01 北京陌陌信息技术有限公司 Virtual resource allocation method and device and storage equipment

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103677958A (en) * 2013-12-13 2014-03-26 华为技术有限公司 Virtualization cluster resource scheduling method and device
US11226773B1 (en) * 2020-10-02 2022-01-18 International Business Machines Corporation Workload management in networked storage systems
JP2022112614A (en) * 2021-01-22 2022-08-03 株式会社日立製作所 Device for determining resource movement schedule
CN115080177A (en) * 2021-03-12 2022-09-20 天翼云科技有限公司 Method and device for migrating virtual machine to server, electronic equipment and storage medium
CN114253662A (en) * 2021-11-12 2022-03-29 苏州浪潮智能科技有限公司 Method, device, equipment and medium for dynamically migrating virtual machines
CN116521323A (en) * 2023-05-25 2023-08-01 北京陌陌信息技术有限公司 Virtual resource allocation method and device and storage equipment

Also Published As

Publication number Publication date
CN116974700A (en) 2023-10-31

Similar Documents

Publication Publication Date Title
US10924535B2 (en) Resource load balancing control method and cluster scheduler
CN110869909B (en) System and method for applying machine learning algorithms to calculate health scores for workload scheduling
US11431788B2 (en) Pairwise comparison and migration of workloads for load balancing
US10261842B2 (en) System and method for managing a virtualized computing environment
CN110301128B (en) Learning-based resource management data center cloud architecture implementation method
US8914598B2 (en) Distributed storage resource scheduler and load balancer
US8935500B1 (en) Distributed storage resource scheduler and load balancer
JP5218390B2 (en) Autonomous control server, virtual server control method and program
US8131519B2 (en) Accuracy in a prediction of resource usage of an application in a virtual environment
US8145456B2 (en) Optimizing a prediction of resource usage of an application in a virtual environment
JP2020003929A (en) Operation management device, migration destination recommendation method, and migration destination recommendation program
CN107301090B (en) Method and device for setting data processing path for application in storage server
US10785109B1 (en) Automated generation of a network service design
CN112948279A (en) Method, apparatus and program product for managing access requests in a storage system
US10320698B1 (en) Determining network connectivity for placement decisions
JP5515889B2 (en) Virtual machine system, automatic migration method and automatic migration program
CN105635285B (en) A kind of VM migration scheduling method based on state aware
US9998392B1 (en) Iterative network graph placement
CN116974700B (en) Method, system, equipment and storage medium for realizing dynamic balance of resources
CN108270833B (en) Automatic scheduling method, device and system for rendering cloud resources
WO2014071580A1 (en) Compute node migration method and device
CN114047883A (en) Data equalization method and device based on distributed storage system
CN116710986A (en) Dialogue model training based on referenceless discriminator
CN112882917A (en) Virtual machine service quality dynamic prediction method based on Bayesian network migration
Toutov et al. The method of calculation the total migration time of virtual machines in cloud data centers

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant