Virtual machine evacuation scheduling method, system, device and equipment and storage medium
Through the virtual machine evacuation scheduling method, dynamic migration of virtual machines is solved, the problem of low resource utilization rate of cloud computing resource pool is improved, resource utilization rate and migration efficiency are enhanced, and the stability of cloud services is enhanced.
Patent Information
- Application Number
- CN202411727762.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-28
- Publication Date
- 2025-03-14
AI Technical Summary
The existing cloud computing resource scheduling methods have the problem of low resource utilization rate of resource pools, especially when virtual machine performance deteriorates or network problems lead to inaccessibility, resources need to be dynamically migrated, but the existing methods cannot be effectively implemented.
A virtual machine evacuation scheduling method is provided. By obtaining the node operation data and the minimum number of nodes in different clusters, the availability status of the cluster is determined, and the migration order and migration order of the virtual machines on the migration node are determined based on the node operation data and availability status, thereby realizing dynamic migration of the virtual machine.
It improves resource utilization, improves resource migration efficiency and resource migration efficiency, quickly alleviates the resource pressure of nodes, reduces the impact of resource migration on the stability of cluster node services, and improves the stability of cloud services.
Smart Images

Figure CN119621241A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of cloud computing resource scheduling, and in particular to a virtual machine evacuation scheduling method, system, device, computer equipment, computer-readable storage medium, and computer program product. Background Art
[0002] In recent years, with the development of cloud computing, the efficiency of IT (Information Technology) resource utilization has been rapidly improved. The use of cloud services can help companies save costs and focus on improving core competitiveness. Its popularity and importance are self-evident.
[0003] The core of cloud computing is to manage resources through specialized software, that is, to manage resource pools. Resource pools refer to the collection of various hardware resources and software resources involved in cloud computing data centers, which can be divided into computing resources, storage resources, and network resources by type. Users can dynamically apply for resources to support the operation of various applications without having to worry about tedious details, and can focus more on their own business, which is conducive to improving efficiency, reducing production costs, and promoting technological innovation.
[0004] At present, the main demand for cloud computing is still the demand for computing resources. For cloud computing providers, how to ensure that customers can obtain the required computing resources and use these resources stably and reliably is one of the most important aspects of resource pool management.
[0005] Since cloud computing relies on virtualized resources, how to effectively allocate resources has a huge impact on cloud computing. The resource scheduler is a native function of OpenStack, but it is a static resource allocation that acts on the virtual machine creation stage. The allocated resources will not change automatically. However, in the production environment, there is still a need to dynamically migrate the allocated resources. For example, abnormal resource pool load causes the virtual machine performance to degrade, or network problems cause resources to be inaccessible, etc. Therefore, resources need to be scheduled.
[0006] However, the current cloud computing resource scheduling method has the problem of low resource utilization of resource pools. Summary of the invention
[0007] Based on this, it is necessary to provide a virtual machine evacuation scheduling method, device, computer equipment, computer readable storage medium and computer program product that can improve resource utilization in response to the above technical problems.
[0008] In a first aspect, the present application provides a virtual machine evacuation scheduling method, comprising:
[0009] Get node operation data and minimum number of nodes of different clusters;
[0010] For each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, determine the migration order of the virtual machines on the migration node;
[0011] Determine the availability status of the cluster based on the minimum number of nodes;
[0012] Determine the migration cluster of the virtual machine on the migrated node and the migration node in the migrated cluster according to the availability status of the cluster and the node operation data;
[0013] Determine the migration order of virtual machines on the migrated nodes;
[0014] Migrate the virtual machines from the migration node according to the migration order;
[0015] Migrate the migrated virtual machines to the migration nodes in the migration cluster according to the migration order.
[0016] In one embodiment, determining the migration order of virtual machines on the migration node includes:
[0017] Determine resource utilization and resource configuration occupancy of the virtual machine in the migrated node based on the operation data of the migrated node;
[0018] Determine the comprehensive resource utilization of the virtual machine in the migrated node based on the resource utilization and resource configuration occupancy rate;
[0019] According to the comprehensive resource utilization of the virtual machines, the virtual machines in the migration node are sorted to determine the migration order of the virtual machines on the migration node.
[0020] In one embodiment, the operation data of the migrated node includes the memory utilization, CPU utilization, memory proportion, CPU proportion, disk capacity proportion and network card quantity proportion of the virtual machine; based on the operation data of the migrated node, determining the resource utilization and resource configuration occupancy of the virtual machine in the migrated node includes:
[0021] For each virtual machine, the memory utilization and CPU utilization are weighted and summed to determine the resource utilization of the virtual machine;
[0022] Take the weighted sum of the memory ratio, CPU ratio, disk capacity ratio, and network card number ratio to determine the resource configuration occupancy rate of the virtual machine.
[0023] In one embodiment, determining the availability status of the cluster based on the minimum number of nodes includes:
[0024] If the number of nodes in the cluster that are operating normally is less than the minimum number of nodes, the availability status of the cluster is determined to be unavailable;
[0025] If the number of nodes in the cluster that are operating normally is greater than or equal to the minimum number of nodes, the availability status of the cluster is determined to be available.
[0026] In one embodiment, determining the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data includes any one of the following methods:
[0027] The first item is, when the availability status of the cluster where the outgoing node is located is available and there is a target node in the cluster whose comprehensive resource utilization is lower than a preset first utilization threshold, the cluster where the outgoing node is located is determined as the incoming cluster and the target node is determined as the incoming node;
[0028] The second item, when the availability status of the cluster where the migration-out node is located is unavailable, a cluster having a target node whose comprehensive resource utilization is lower than a preset first utilization threshold is determined as the migration-in cluster, and the target node is determined as the migration-in node;
[0029] The third item is that when the availability status of the cluster where the migrating node is located is available and there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster with the target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster and the target node is determined as the migrating node.
[0030] In one embodiment, determining the migration order of virtual machines on the migrated nodes includes:
[0031] Get the running data of the migrated node;
[0032] Determine the resource configuration occupancy rate of the virtual machine in the migrated node based on the operation data of the migrated node;
[0033] According to the resource configuration occupancy rate of the virtual machine, the virtual machines in the migrated node are sorted to determine the migration order of the virtual machines on the migrated node.
[0034] In an exemplary embodiment, determining whether there is a migration node in the cluster that needs to migrate resources includes at least one of the following methods:
[0035] The first item is to determine whether there is a faulty node in the cluster based on the node operation data;
[0036] In the case where there is a faulty node in the cluster, the faulty node is determined to be a migration node;
[0037] The second item is to determine the comprehensive resource utilization of each node in the cluster based on the node operation data of the cluster;
[0038] When there is a target node whose comprehensive resource utilization is higher than a preset second utilization threshold in the cluster, the target node is determined as a migration-out node.
[0039] In a second aspect, the present application also provides a virtual machine evacuation scheduling system, the system comprising a monitoring node, a computing node and a scheduling node:
[0040] The monitoring node obtains the node operation data and minimum number of nodes of different clusters, sends the node operation data of the cluster to the computing node, and sends the minimum number of nodes of the cluster to the scheduling node;
[0041] For each cluster, when the computing node determines that there is a migration node in the cluster that needs to migrate resources, it determines the migration order of the virtual machines on the migration node and sends a resource migration message carrying the node operation data of the cluster to the scheduling node;
[0042] When receiving the resource migration message, the scheduling node determines the availability status of the cluster based on the minimum number of nodes, determines the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data, and sends a resource migration message to the computing node. The resource migration message carries the migration cluster corresponding to the migration node and the migration node in the migration cluster.
[0043] When receiving the resource migration message, the computing node determines the migration order of the virtual machines on the migration node, migrates the virtual machines from the migration node according to the migration order, and migrates the migrated virtual machines to the migration node in the migration cluster according to the migration order.
[0044] In a third aspect, the present application also provides a virtual machine evacuation scheduling device, including:
[0045] Data acquisition module, used to obtain node operation data and minimum number of nodes of different clusters;
[0046] A migration resource determination module is used to determine the migration order of virtual machines on the migration nodes for each cluster when it is determined that there is a migration node in the cluster that needs to migrate resources;
[0047] A cluster status determination module, used to determine the availability status of the cluster based on the minimum number of nodes;
[0048] A migration resource determination module is used to determine the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data;
[0049] A migration order determination module, used to determine the migration order of virtual machines on the migration-out nodes;
[0050] The resource migration module is used to migrate virtual machines from the migration-out nodes according to the migration-out sequence, and migrate the migrated virtual machines to the migration-in nodes in the migration-in cluster according to the migration-in sequence.
[0051] In a fourth aspect, the present application further provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments are implemented.
[0052] In a fifth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments are implemented.
[0053] In a sixth aspect, the present application further provides a computer program product, including a computer program, which, when executed by a processor, implements the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments.
[0054] The above-mentioned virtual machine evacuation scheduling method, system, device, computer equipment, computer-readable storage medium and computer program product, on the one hand, obtain the minimum number of nodes of different clusters, and determine the availability status of different clusters based on the minimum number of nodes, thereby improving the effectiveness of resource migration when migrating the resources of the node based on the availability status of the cluster; on the other hand, when it is monitored that the node needs to migrate resources, the migration order of the virtual machines on the migrated nodes is calculated, and the virtual machines are migrated according to the migration order, which is conducive to improving the efficiency of resource migration, thereby quickly alleviating the resource pressure of the node and reducing the impact of resource migration on the cluster nodes. On the one hand, the stability of the service is improved, and the stability of the cloud service is improved; on the other hand, the migration cluster corresponding to the migration node and the migration node in the migration cluster are determined through the availability status of the cluster and the node operation data, and the cluster status and the resource conditions of the nodes in the cluster are comprehensively considered, which is conducive to improving the accuracy of determining the migration cluster and the migration node, and at the same time, it is conducive to load balancing between nodes. On the other hand, by determining the migration order and migration order of the virtual machines on the migration node, the virtual machines are evacuated and scheduled according to the migration order and migration order, which is conducive to improving the efficiency of resource migration and resource utilization, and further, it is conducive to ensuring business continuity. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0056] Figure 1 This is an application environment diagram of a virtual machine evacuation scheduling method in an embodiment;
[0057] Figure 2 A schematic diagram of a flow chart of a virtual machine evacuation scheduling method in one embodiment;
[0058] Figure 3 A flowchart of a virtual machine evacuation scheduling method in another embodiment;
[0059] Figure 4 A flowchart of a virtual machine evacuation scheduling method in another embodiment;
[0060] Figure 5 A flowchart of a virtual machine evacuation scheduling method in yet another embodiment;
[0061] Figure 6 It is a structural block diagram of a virtual machine evacuation scheduling system in one embodiment;
[0062] Figure 7 It is a structural block diagram of a virtual machine evacuation scheduling device in one embodiment;
[0063] Figure 8 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION
[0064] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0065] The virtual machine evacuation scheduling method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown, the terminal 102 communicates with the server 104 through a network. The data storage system can store data that the server 104 needs to process. The data storage system can be integrated on the server 104, or placed on the cloud or other network servers.
[0066] Specifically, the operator may send a virtual machine evacuation scheduling message to the server 104 through the terminal 102, and the server 104 obtains the node operation data and the minimum number of nodes of different clusters. Secondly, for each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, the migration order of the virtual machines on the migration nodes is determined. Then, based on the minimum number of nodes, the availability status of the cluster is determined. According to the availability status of the cluster and the node operation data, the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster are determined, and the migration order of the virtual machine on the migration node is determined. Finally, according to the migration order, the virtual machines are migrated out of the migration nodes, and according to the migration order, the migrated virtual machines are migrated to the migration nodes in the migration cluster.
[0067] The terminal 102 may be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, IoT devices, and portable wearable devices. The IoT devices may be smart speakers, smart TVs, smart air conditioners, smart car devices, projection devices, etc. Portable wearable devices may be smart watches, smart bracelets, head-mounted devices, etc. Head-mounted devices may be virtual reality (VR) devices, augmented reality (AR) devices, smart glasses, etc. The server 104 may be an independent physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides cloud computing services.
[0068] In an exemplary embodiment, Figure 2 As shown, a virtual machine evacuation scheduling method is provided, and the method is applied to Figure 1 The server 104 in the example is used for explanation, and the steps S100 to S400 are included. Among them:
[0069] S100, obtaining node operation data and the minimum number of nodes of different clusters.
[0070] In a cloud computing environment, a node can be a physical server. A cluster is a group of computing resources formed by multiple nodes that work together to complete a specific task or provide a specific service. The minimum number of nodes is used as a criterion to evaluate whether the cluster can accommodate the resources that are being migrated in.
[0071] Node operation data refers to the operation data of each node in the cluster, including but not limited to CPU usage, memory usage, disk usage, network bandwidth usage, number of network connections, process information, and system logs. It can be obtained through cluster management and monitoring tools, or the management platform of cloud services.
[0072] In this embodiment, when creating a cluster, the number of nodes in the cluster is limited to an odd number, and for each cluster, the minimum number of nodes Min=(N+1) / 2, where N is the number of nodes in the cluster. In actual applications, the operation data and number of nodes of different clusters can be obtained through cluster management and monitoring tools, and the minimum number of nodes can be obtained according to the number of nodes in the cluster.
[0073] S200 , for each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, determine the migration order of the virtual machines on the migration node.
[0074] Among them, a virtual machine is a software-simulated computer system running on physical hardware. It abstracts physical resources through virtualization technology and provides an independent operating system environment and application running space. Multiple virtual machines can run on a node. The nodes that need to migrate resources can be nodes with high resource utilization, nodes that need maintenance and upgrades, or nodes that cannot run normally due to hardware or software failures.
[0075] In practical applications, when it is determined through the operation data of the nodes in the cluster that there is a migration node that needs to migrate resources, the migration order of the virtual machines on the node can be comprehensively determined based on multiple migration indicators of the virtual machines on the migration node. Specifically, the migration indicators can include the resource utilization of the virtual machine, the business importance, and the service dependency, etc. The virtual machines with lower resource utilization will be migrated first, the virtual machines with lower business importance will be migrated first, and the virtual machines with simpler service dependencies will be migrated first. Determining the migration order based on the migration indicators can be to set weights for different indicators and determine the migration order of the virtual machines by weighted scoring.
[0076] S300, determining the availability status of the cluster based on the minimum number of nodes.
[0077] The availability status of the cluster is an indicator used to evaluate whether the cluster meets the requirements for migrating outgoing resources in. The availability status of the cluster may include an available status and an unavailable status.
[0078] In practical applications, the availability status of the cluster can be determined based on the number of nodes with low resource utilization and the minimum number of nodes in the cluster. For example, when the number of nodes with low resource utilization (below a certain threshold) in the cluster is greater than the minimum number of nodes, the availability status of the cluster is available, otherwise, the availability status of the cluster is unavailable.
[0079] S400, determining a migration cluster for a virtual machine on a migration-out node and a migration-in node in the migration-in cluster according to the availability status of the cluster and the node operation data.
[0080] In actual applications, after determining the nodes that need to migrate resources, you can filter out clusters in an unavailable state based on the availability status of the cluster. In clusters in an available state, determine the resource utilization of each node based on the operating data of the nodes in the cluster. Based on the resource utilization of the virtual machines on the migrating nodes, select the nodes that can accommodate the migration as the incoming nodes.
[0081] S500: Determine the migration order of the virtual machines on the migration-out nodes.
[0082] In practical applications, after determining the migration node corresponding to the migration node, the migration order of the virtual machines on the migration node can be comprehensively determined based on multiple migration indicators of the virtual machines on the migration node. Specifically, the migration indicators can include the resource utilization of the virtual machine, the business importance, and the service dependency, etc. The virtual machines with higher resource utilization are migrated first, the virtual machines with higher business importance are migrated first, and the virtual machines with simpler service dependencies are migrated first. Determining the migration order based on the migration indicators can be to set weights for different indicators and determine the migration order of the virtual machines by weighted scoring.
[0083] S600: Migrate the virtual machine from the migration node according to the migration order.
[0084] In practical applications, the virtual machines on the migrated nodes can be migrated out by hot migration in the virtualization management platform according to the migration order. In some implementations, the virtual machines on the migrated nodes can be migrated out to the cache server by hot migration, and the cache server has high performance and sufficient storage space.
[0085] S700: Migrate the migrated virtual machines to the migration nodes in the migration cluster according to the migration order.
[0086] In actual applications, the migration node corresponding to the migration node may be determined, and the virtual machine on the migration node may be migrated to the migration node by hot migration in the virtualization management platform according to the migration order.
[0087] In the above virtual machine evacuation scheduling method, on the one hand, by obtaining the minimum number of nodes of different clusters, the availability status of different clusters is determined based on the minimum number of nodes, thereby improving the effectiveness of resource migration when migrating the resources of the node based on the availability status of the cluster; on the other hand, when it is monitored that the node needs to migrate resources, the migration order of the virtual machines on the migration node is calculated, and the virtual machines are migrated according to the migration order, which is conducive to improving the efficiency of resource migration, thereby quickly alleviating the resource pressure of the node while reducing the impact of resource migration on the stability of the cluster node service, and improving the stability of the cloud service; on the other hand, through the availability status of the cluster and the node operation data, the migration cluster corresponding to the migration node and the migration node in the migration cluster are determined, and the cluster status and the resource situation of the nodes in the cluster are comprehensively considered, which is conducive to improving the accuracy of determining the migration cluster and the migration node, and at the same time, it is conducive to load balancing between nodes. On the other hand, by determining the migration order and migration order of the virtual machines on the migration node, the virtual machines are evacuated and scheduled according to the migration order and migration order, which is conducive to improving the efficiency of resource migration and resource utilization, and further, it is conducive to ensuring business continuity.
[0088] In order to improve the efficiency of virtual machine resource migration, in an exemplary embodiment, Figure 3 As shown, S200 includes S220 to S260. Among them:
[0089] S220, determining the resource utilization rate and resource configuration occupancy rate of the virtual machine in the migrated node based on the operation data of the migrated node.
[0090] Among them, resource utilization is used to characterize the use of node resources during the operation of the virtual machine. Resource configuration occupancy is used to characterize the occupancy of the physical resources of the node by the virtual machine.
[0091] In actual applications, the operation data of a node may include the operation data corresponding to each virtual machine on the node. For each virtual machine on the node, the resource configuration occupancy rate is determined according to the physical resource occupancy parameters in the operation data. For example, the physical resource occupancy parameters may include CPU percentage, memory capacity percentage, and disk capacity percentage, etc. The resource configuration occupancy rate of the virtual machine is obtained by weighted summing up the physical resource occupancy parameters of the virtual machine. The resource utilization rate is determined according to the resource utilization parameters in the operation data of the virtual machine. For example, the resource utilization parameters include CPU utilization rate, memory utilization rate, and disk utilization rate, etc. The resource utilization rate of the virtual machine is obtained by weighted summing up the self-use utilization parameters.
[0092] S240: Determine the comprehensive resource utilization of the virtual machine in the node to be migrated based on the resource utilization and resource configuration occupancy.
[0093] Among them, the comprehensive resource utilization is a comprehensive indicator used to measure the occupation of physical resources by virtual machines on nodes and the utilization of runtime resources.
[0094] In actual applications, after obtaining the resource utilization and resource configuration occupancy of each virtual machine on the migrated node, different weights are assigned to the resource utilization and resource configuration occupancy of each virtual machine, and the comprehensive resource utilization of the virtual machine is obtained by weighted summation.
[0095] In other implementations, the weights of resource utilization and resource configuration occupancy can be determined according to the migration reason of the migrated node. Specifically, when the migrated node needs to migrate resources due to a failure or maintenance update, the weight of resource configuration occupancy is higher, and when the migrated node needs to migrate resources due to a high load on the node, the weight of resource utilization is higher, which is conducive to the reasonable planning of the migration order of the virtual machine.
[0096] S260, sorting the virtual machines in the node to be migrated according to the comprehensive resource utilization of the virtual machines, and determining the migration order of the virtual machines on the node to be migrated.
[0097] In actual applications, after obtaining the comprehensive resource utilization of each virtual machine on the node, the migration of the virtual machines on the node is sorted. Specifically, considering that the virtual machines with lower comprehensive resource utilization have faster migration speed, the resource pressure of high-load nodes can be quickly relieved, and the user services of faulty nodes and maintenance and upgrade nodes can be quickly restored. Therefore, the comprehensive resource utilization is sorted from low to high to obtain the migration order of the virtual machines on the migrated nodes. The lower the comprehensive resource utilization, the higher the migration priority.
[0098] In this embodiment, the resource utilization and resource configuration occupancy of the virtual machines on the node are calculated through the operating data of the migrated node, and the comprehensive resource utilization of each virtual machine is obtained by comprehensive evaluation. The migration order of the virtual machines on the migrated node is determined according to the comprehensive resource utilization of the virtual machines, thereby improving the efficiency of resource migration. Therefore, for high-loaded migrated nodes, it is beneficial to quickly migrate resources to alleviate the load pressure of the node, and for faulty nodes, it is beneficial to quickly restore user services.
[0099] In an exemplary embodiment, the operation data of the migrated node includes the memory utilization, CPU utilization, memory share, CPU share, disk capacity share and network card quantity share of the virtual machine, and S220 also includes S222 to S224. Among them:
[0100] S222: For each virtual machine, perform weighted summation of the memory utilization and the CPU utilization to determine the resource utilization of the virtual machine.
[0101] In actual applications, the resource utilization of each virtual machine on the node is determined by the following formula:
[0102]
[0103] Where W1 is the resource utilization rate, is the memory utilization of the virtual machine, is the CPU utilization of the virtual machine, is the weight of memory utilization, v is the weight of CPU utilization, .
[0104] S224, performing weighted summation of the memory ratio, the CPU ratio, the disk capacity ratio, and the network card quantity ratio to determine the resource configuration occupancy rate of the virtual machine.
[0105] In actual applications, the resource configuration occupancy rate of each virtual machine on the node is determined by the following formula:
[0106]
[0107] In the formula, is the resource allocation occupancy rate, is the memory usage, is the CPU ratio, is the disk capacity ratio, is the proportion of network cards; is the weight of memory usage, is the weight of the CPU ratio, is the weight of the disk capacity ratio, is the weight of the number of network cards, .
[0108] Among them, the memory ratio, CPU ratio, disk capacity ratio and network card number ratio are defined as follows:
[0109]
[0110]
[0111]
[0112]
[0113] In the formula, P is the proportion of the current resource configuration of the virtual machine in the total resources of the node, C is the current resource configuration quantity, and S is the total number of node resources. Among them, the memory takes the size in GB; the CPU takes the number of cores in pieces; the disk takes the capacity in GB; and the network card takes the number in pieces. In this way, the normalization of the resource configuration quantity is achieved.
[0114] In this embodiment, for each virtual machine, a weighted sum is taken of different operating data parameters to obtain the resource utilization and resource configuration occupancy rate of the virtual machine, which is beneficial to improving the accuracy of the overall resource utilization and occupancy assessment of the virtual machine, thereby helping to improve the accuracy of the evacuation scheduling of the virtual machine.
[0115] In order to achieve effective resource evacuation and scheduling, the availability status of the cluster can be evaluated, such as Figure 4 As shown, in an exemplary embodiment, S300 includes S320 to S340. Among them:
[0116] S320: If the number of nodes in the cluster that are operating normally is less than the minimum number of nodes, determine that the availability state of the cluster is an unavailable state.
[0117] S340: If the number of nodes in the cluster that are operating normally is greater than or equal to the minimum number of nodes, determine that the availability state of the cluster is an available state.
[0118] In actual applications, the operating status of the nodes in the cluster can be obtained through cluster management and monitoring tools, or the operating status of the nodes can be determined by analyzing the operating data of the nodes. For each cluster, the number of normally operating nodes in the cluster is determined. If the number of normally operating nodes is less than the minimum number of nodes, the availability status of the cluster is determined to be unavailable. Otherwise, the availability status of the cluster is determined to be available.
[0119] In this embodiment, the concept of the minimum number of nodes in the cluster is introduced, and the available state of the cluster is judged according to the minimum number of nodes, which is conducive to improving the success rate of resource migration.
[0120] In order to improve the efficiency of resource evacuation scheduling, the location of the migration node corresponding to the migration node is determined in combination with the availability status and the resource utilization of the node. In an exemplary embodiment, S400 includes any one of S420 to S460. Among them:
[0121] When it is determined that there is an outgoing node in the cluster that needs to migrate resources, priority is given to evacuating resources within the cluster. Therefore, when the number of failed nodes in the cluster exceeds the minimum number of nodes, the resources of the outgoing nodes that still exist after resource evacuation are migrated to the failed nodes, resulting in invalid migration. Therefore, combined with the availability status of the cluster and the resource utilization of the nodes in the cluster, the incoming cluster corresponding to the outgoing node and the incoming node in the incoming cluster are determined.
[0122] S420, first item, when the availability status of the cluster where the migrating node is located is available and there is a target node in the cluster whose comprehensive resource utilization is lower than a preset first utilization threshold, the cluster where the migrating node is located is determined as the migrating cluster and the target node is determined as the migrating node.
[0123] Among them, the calculation method of the comprehensive resource utilization of the node can refer to the calculation method of the comprehensive resource utilization of the virtual machine. Specifically, first, according to the proportion of the current resource configuration in the total resources of the node, the memory proportion, CPU proportion, disk capacity proportion and network card quantity proportion are obtained, so as to obtain the resource configuration occupancy of the node according to the weight of each parameter. Secondly, according to the CPU utilization and memory utilization of the node and the corresponding weight, the resource utilization of the node is obtained. Finally, according to the resource configuration occupancy and resource utilization of the node and the corresponding weight, the comprehensive resource utilization is obtained.
[0124] In actual applications, after determining the node to be migrated out, determine the availability status of the cluster where the node to be migrated out is located. If the availability status of the cluster where the node to be migrated out is located is an available status, determine the comprehensive resource utilization of each node based on the node operation data in the cluster, and compare the comprehensive resource utilization with the preset first utilization threshold. Exemplarily, the first utilization threshold can be set to 10%. If there is a target node in the cluster where the node to be migrated out has a comprehensive resource utilization lower than the first utilization threshold, determine the cluster as the migration-in cluster, and determine the target node as the migration-in node.
[0125] S440, the second item, when the availability status of the cluster where the migrating node is located is unavailable, the cluster with the target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster and the target node is determined as the migrating node.
[0126] In actual applications, if the cluster where the outgoing node is located is in an unavailable state, the incoming node corresponding to the outgoing node is determined from other clusters. Specifically, it can be preferentially determined whether there is a target node whose comprehensive resource utilization is lower than a preset first utilization threshold from clusters with a closer geographical location, and the cluster of the target node whose comprehensive resource utilization is lower than the preset first utilization threshold, so as to determine the incoming cluster and the incoming node.
[0127] S460, the third item, when the availability status of the cluster where the migrating node is located is available and there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster with the target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster and the target node is determined as the migrating node.
[0128] In actual applications, if the cluster where the outgoing node is located is in an available state, but there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, then the incoming node corresponding to the outgoing node is determined from other clusters. Specifically, it can be preferentially determined whether there is a target node whose comprehensive resource utilization is lower than the preset first utilization threshold from clusters with relatively close geographical locations, and the cluster of the target node whose comprehensive resource utilization is lower than the preset first utilization threshold, so as to determine the incoming cluster and the incoming node.
[0129] In this embodiment, combined with the available status of the cluster and the comprehensive resource utilization rate of the nodes in the cluster, on the one hand, priority is given to resource evacuation scheduling within the cluster where the migrated node is located, which is conducive to improving the efficiency of resource evacuation scheduling. On the other hand, combining the two indicators to determine the migrated node is conducive to improving the effectiveness of resource evacuation scheduling.
[0130] like Figure 5 As shown, in order to ensure the load balance of resource evacuation migration as much as possible, in an exemplary embodiment, S500 includes: S520, obtaining the operating data of the migrated node, determining the resource configuration occupancy rate of the virtual machine in the migrated node based on the operating data of the migrated node, sorting the virtual machines in the migrated node according to the resource configuration occupancy rate of the virtual machine, and determining the migration order of the virtual machines on the migrated node.
[0131] In actual applications, after obtaining the node operation data of different clusters, the operation data of the migrated nodes is filtered out from the node operation data of multiple clusters.
[0132] For any migration node, when migrating virtual machines in batches, they are sorted according to the resource configuration occupancy rate of the virtual machines. Since the load (comprehensive resource utilization rate) of the migration node is relatively low, in order to improve the efficiency of determining the migration order, virtual machines with higher resource configuration occupancy rates are prioritized.
[0133] Therefore, after obtaining the operating data of the migrated node, the resource configuration occupancy rate of the virtual machine in the migrated node is determined according to the operating data of the migrated node. The specific calculation method refers to the above-mentioned method for obtaining the resource configuration occupancy rate of the virtual machine. The specific process refers to the implementation process of obtaining the resource configuration occupancy rate based on the memory ratio, CPU ratio, disk capacity ratio and network card number ratio in the above-mentioned embodiment, which will not be repeated here.
[0134] After obtaining the resource configuration occupancy rate of each virtual machine on the node to be migrated, the resource configuration occupancy rate is sorted from high to low to obtain the migration order of the virtual machines on the node to be migrated.
[0135] In this embodiment, the resource configuration occupancy rate of the virtual machine in the migrated node is determined by the operating data of the migrated node, and the migration order is determined by the resource configuration occupancy rate, which improves the calculation speed of the migration order. On the other hand, it is beneficial to give priority to migrating virtual machines with higher resource configurations according to the migration order.
[0136] In an exemplary embodiment, determining whether there is a migration node in the cluster that needs to migrate resources includes at least one of S282 to S284.
[0137] S282, the first item, determines whether there is a faulty node in the cluster according to the node operation data, and if there is a faulty node in the cluster, determines that the faulty node is a migrated node.
[0138] In actual applications, based on the node operation data, it is determined whether there is a faulty node in the cluster. The operation status of the node can be determined based on the system log in the operation data of the node in the cluster. When the system log indicates that the node has failed, the faulty node is determined to be a migrated node.
[0139] S284, the second item, determines the comprehensive resource utilization of each node in the cluster based on the node operation data of the cluster, and when there is a target node in the cluster whose comprehensive resource utilization is higher than a preset second utilization threshold, determines the target node as a migration node.
[0140] In practical applications, the comprehensive resource utilization of each node in the cluster is determined based on the node operation data of the cluster. The above-mentioned method for determining the comprehensive resource utilization of the node can be referred to. The specific process refers to the implementation process of obtaining the comprehensive resource utilization of the node based on the resource configuration occupancy rate and resource utilization rate of the node in the above-mentioned embodiment, which will not be repeated here. In the case where there is a target node in the cluster whose comprehensive resource utilization rate is higher than the preset second utilization threshold, it indicates that the load of the target node is high, and the target node is determined to be a migrated node. The second utilization threshold is set according to the resource migration demand, and illustratively, it can be set to 70%.
[0141] In this embodiment, by calculating the comprehensive resource utilization of the node and setting a second utilization threshold for monitoring whether the resources on the node are loaded, a migration standard is formulated, thereby improving the accuracy of resource evacuation scheduling.
[0142] In order to make a clearer description of the virtual machine evacuation scheduling method provided in the present application, a specific embodiment is described below, and the specific embodiment includes the following steps:
[0143] S1, obtain the node operation data and minimum number of nodes of different clusters.
[0144] S2, for each cluster, based on the node operation data, determine whether there is a faulty node in the cluster. If there is a faulty node in the cluster, determine the faulty node as a migration node. Based on the node operation data of the cluster, determine the comprehensive resource utilization of each node in the cluster. If there is a target node in the cluster whose comprehensive resource utilization is higher than a preset second utilization threshold, determine the target node as a migration node.
[0145] S3, when it is determined that there is a migration node in the cluster that needs to migrate resources, for each virtual machine, the memory utilization and CPU utilization are weightedly summed to determine the resource utilization of the virtual machine, and the memory ratio, CPU ratio, disk capacity ratio and network card number ratio are weighted summed to determine the resource configuration occupancy of the virtual machine. Based on the resource utilization and resource configuration occupancy, the comprehensive resource utilization of the virtual machines in the migration node is determined. According to the comprehensive resource utilization of the virtual machines, the virtual machines in the migration node are sorted to determine the migration order of the virtual machines on the migration node.
[0146] S4: If the number of nodes in the cluster operating normally is less than the minimum number of nodes, the availability state of the cluster is determined to be unavailable; if the number of nodes in the cluster operating normally is greater than or equal to the minimum number of nodes, the availability state of the cluster is determined to be available.
[0147] S5, the first item, when the availability status of the cluster where the migrating node is located is available, and there is a target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster where the migrating node is located is determined as the migrating cluster, and the target node is determined as the migrating node; the second item, when the availability status of the cluster where the migrating node is located is unavailable, the cluster with a target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster, and the target node is determined as the migrating node; the third item, when the availability status of the cluster where the migrating node is located is available, and there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster with a target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster, and the target node is determined as the migrating node.
[0148] S6, obtaining the operation data of the migrated node, determining the resource configuration occupancy rate of the virtual machine in the migrated node based on the operation data of the migrated node, sorting the virtual machines in the migrated node according to the resource configuration occupancy rate of the virtual machine, and determining the migration order of the virtual machines on the migrated node.
[0149] S7, migrate the virtual machines from the migration-out nodes according to the migration-out order, and migrate the migrated virtual machines to the migration-in nodes in the migration-in cluster according to the migration-in order.
[0150] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.
[0151] In an exemplary embodiment, Figure 6 As shown, a virtual machine evacuation scheduling device 600 is provided, comprising: a data acquisition module 610, a migration resource determination module 620, a cluster state determination module 630, a migration resource determination module 640, a migration order determination module 650 and a resource migration module 660, wherein:
[0152] The data acquisition module 610 is used to acquire the node operation data and the minimum number of nodes of different clusters;
[0153] The migration resource determination module 620 is used to determine the migration order of the virtual machines on the migration nodes for each cluster when it is determined that there is a migration node in the cluster that needs to migrate resources;
[0154] A cluster status determination module 630, configured to determine the availability status of the cluster based on the minimum number of nodes;
[0155] The migration resource determination module 640 is used to determine the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data;
[0156] A migration order determination module 650, used to determine the migration order of the virtual machines on the migration-out nodes;
[0157] The resource migration module 660 is used to migrate virtual machines from the migration-out nodes according to the migration-out sequence, and migrate the migrated virtual machines to the migration-in nodes in the migration-in cluster according to the migration-in sequence.
[0158] In an exemplary embodiment, the migration resource determination module 620 is also used to determine the resource utilization and resource configuration occupancy of the virtual machines in the migration node based on the operating data of the migration node; determine the comprehensive resource utilization of the virtual machines in the migration node based on the resource utilization and resource configuration occupancy; sort the virtual machines in the migration node according to the comprehensive resource utilization of the virtual machines to determine the migration order of the virtual machines on the migration node.
[0159] In an exemplary embodiment, the migration resource determination module 620 is also used to perform a weighted summation of the memory utilization and CPU utilization for each virtual machine to determine the resource utilization of the virtual machine; and perform a weighted summation of the memory ratio, CPU ratio, disk capacity ratio and network card number ratio to determine the resource configuration occupancy rate of the virtual machine.
[0160] In an exemplary embodiment, the cluster status determination module 630 is also used to determine that the availability status of the cluster is an unavailable state if the number of nodes in the cluster that are operating normally is less than the minimum number of nodes; and to determine that the availability status of the cluster is an available state if the number of nodes in the cluster that are operating normally is greater than or equal to the minimum number of nodes.
[0161] In an exemplary embodiment, the migration resource determination module 640 is also used for the first item, when the availability status of the cluster where the migration node is located is available, and there is a target node in the cluster whose comprehensive resource utilization is lower than a preset first utilization threshold, the cluster where the migration node is located is determined as the migration cluster, and the target node is determined as the migration node; the second item, when the availability status of the cluster where the migration node is located is unavailable, the cluster with a target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migration cluster, and the target node is determined as the migration node; the third item, when the availability status of the cluster where the migration node is located is available, and there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster with a target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migration cluster, and the target node is determined as the migration node.
[0162] In an exemplary embodiment, the migration order determination module 650 obtains the operating data of the migrated node; determines the resource configuration occupancy rate of the virtual machine in the migrated node based on the operating data of the migrated node; sorts the virtual machines in the migrated node according to the resource configuration occupancy rate of the virtual machine, and determines the migration order of the virtual machines on the migrated node.
[0163] In an exemplary embodiment, the resource migration module 660, first, determines whether there is a faulty node in the cluster based on the node operation data; if there is a faulty node in the cluster, determines the faulty node as a migration-out node; second, determines the comprehensive resource utilization of each node in the cluster based on the node operation data of the cluster; if there is a target node in the cluster whose comprehensive resource utilization is higher than a preset second utilization threshold, determines the target node as a migration-out node.
[0164] Each module in the above-mentioned virtual machine evacuation scheduling device 600 can be implemented in whole or in part by software, hardware, or a combination thereof. Each of the above-mentioned modules can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each of the above modules.
[0165] In an exemplary embodiment, Figure 7 As shown, a virtual machine evacuation scheduling system is provided, including a monitoring node 120, a computing node 140 and a scheduling node 160, wherein:
[0166] The monitoring node 120 obtains the node operation data and the minimum number of nodes of different clusters, sends the node operation data of the cluster to the computing node 140 , and sends the minimum number of nodes of the cluster to the scheduling node 160 .
[0167] For each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, the computing node 140 determines the migration order of the virtual machines on the migration node and sends a resource migration message carrying the node operation data of the cluster to the scheduling node 160 .
[0168] When receiving the resource migration message, the scheduling node 160 determines the availability status of the cluster based on the minimum number of nodes, determines the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the cluster availability status and node operation data, and sends the resource migration message to the computing node 140. The resource migration message carries the migration cluster corresponding to the migration node and the migration node in the migration cluster.
[0169] When receiving the resource migration message, the computing node 140 determines the migration order of the virtual machines on the migration node, migrates the virtual machines from the migration node according to the migration order, and migrates the migrated virtual machines to the migration node in the migration cluster according to the migration order.
[0170] In actual applications, monitoring nodes, computing nodes, and scheduling nodes are built in the resource pool. Among them, the most critical is the monitoring node, which is the information source of the computing nodes and scheduling nodes, and is also the basis for subsequent resource scheduling decisions. In OpenStack (an open source cloud computing management platform project), Pacemaker (cluster resource manager) or other cluster resource managers can be used to build monitoring nodes. Pacemaker can use the message management supported by the basic components of the cluster to detect faults and recover resources to achieve high availability of the cluster. Pacemaker implements resource agents through Resource Agents. Resource agents are scheduled by resource managers and manage resources on nodes. When a physical host or virtual machine fails, it can send out fault information to promote the migration of virtual machines. As for the selection of computing nodes and scheduling nodes, it only needs to be able to process the data reported by the monitoring nodes and issue instructions through messages.
[0171] In an exemplary embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as shown in FIG. Figure 8 As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. Among them, the processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store XX data. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a virtual machine evacuation scheduling method is implemented.
[0172] Those skilled in the art will understand that Figure 8 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0173] In an exemplary embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments are implemented.
[0174] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments are implemented.
[0175] In one embodiment, a computer program product is provided, including a computer program, which, when executed by a processor, implements the steps in any one of the above-mentioned virtual machine evacuation scheduling method embodiments.
[0176] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.
[0177] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.
[0178] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.
[0179] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.
Claims
1. A virtual machine evacuation scheduling method, characterized in that: The method comprises: Get node operation data and minimum number of nodes of different clusters; For each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, determine the migration order of the virtual machines on the migration node; Based on the minimum number of nodes, determining an availability status of the cluster; Determine the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data; Determine the migration order of the virtual machines on the migration-out nodes; Migrating the virtual machine from the migration node according to the migration order; The migrated virtual machines are migrated to the migration nodes in the migration cluster according to the migration order.
2. The method according to claim 1, characterized in that The step of determining the migration order of the virtual machines on the migration node includes: Determine resource utilization and resource configuration occupancy of the virtual machine in the migrated node based on the operation data of the migrated node; Determining the comprehensive resource utilization of the virtual machine in the migrated node based on the resource utilization and the resource configuration occupancy rate; The virtual machines in the migration node are sorted according to the comprehensive resource utilization of the virtual machines, and the migration order of the virtual machines on the migration node is determined.
3. The method according to claim 2, characterized in that The operation data of the migrated node includes the memory utilization rate, CPU utilization rate, memory ratio, CPU ratio, disk capacity ratio and network card number ratio of the virtual machine; The determining, based on the operation data of the migrated node, the resource utilization rate and resource configuration occupancy rate of the virtual machine in the migrated node includes: For each virtual machine, performing a weighted summation of the memory utilization and the CPU utilization to determine the resource utilization of the virtual machine; The resource configuration occupancy rate of the virtual machine is determined by taking a weighted sum of the memory ratio, the CPU ratio, the disk capacity ratio and the network card quantity ratio.
4. The method according to claim 1, characterized in that: The determining the availability status of the cluster based on the minimum number of nodes includes: If the number of nodes in the cluster that are operating normally is less than the minimum number of nodes, determining that the availability state of the cluster is an unavailable state; If the number of nodes in the cluster that are operating normally is greater than or equal to the minimum number of nodes, it is determined that the availability state of the cluster is an available state.
5. The method according to claim 4, characterized in that Determining the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data includes any one of the following methods: In the first item, when the availability status of the cluster where the migrated node is located is available and there is a target node in the cluster whose comprehensive resource utilization is lower than a preset first utilization threshold, the cluster where the migrated node is located is determined as the migrated-in cluster and the target node is determined as the migrated-in node; The second item, when the availability state of the cluster where the migration-out node is located is unavailable, a cluster having a target node with a comprehensive resource utilization rate lower than a preset first utilization rate threshold is determined as the migration-in cluster, and the target node is determined as the migration-in node; The third item is that, when the availability status of the cluster where the migrating node is located is available, and there is no target node in the cluster whose comprehensive resource utilization is lower than the preset first utilization threshold, the cluster with the target node whose comprehensive resource utilization is lower than the preset first utilization threshold is determined as the migrating cluster, and the target node is determined as the migrating node.
6. The method according to any one of claims 1 to 5, characterized in that: Determining the migration order of the virtual machines on the migration-out nodes includes: Acquiring the operation data of the migrated node; Determine the resource configuration occupancy rate of each virtual machine in the migrated node based on the operation data of the migrated node; The virtual machines in the migrated-out node are sorted according to the resource configuration occupancy rate of each virtual machine, and the migration order of the virtual machines on the migrated-out node is determined.
7. The method according to claim 6, characterized in that Determining whether there is a migration node in the cluster that needs to migrate resources includes at least one of the following methods: The first item is to determine whether there is a faulty node in the cluster according to the node operation data; In the case where there is a faulty node in the cluster, determining the faulty node as a migration-out node; The second item is to determine the comprehensive resource utilization rate of each node in the cluster according to the node operation data of the cluster; In the case that there is a target node in the cluster whose comprehensive resource utilization is higher than a preset second utilization threshold, the target node is determined to be a migration-out node.
8. A virtual machine resource evacuation scheduling system, characterized in that: The system includes monitoring nodes, computing nodes and scheduling nodes: The monitoring node obtains node operation data and the minimum number of nodes of different clusters, sends the node operation data of the cluster to the computing node, and sends the minimum number of nodes of the cluster to the scheduling node; The computing node determines the migration order of virtual machines on the migration nodes for each of the clusters, and sends a resource migration message carrying node operation data of the cluster to the scheduling node when determining that there is a migration node in the cluster that needs to migrate resources; When receiving the resource migration message, the scheduling node determines the availability status of the cluster based on the minimum number of nodes, determines the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data, and sends a resource migration message to the computing node, where the resource migration message carries the migration cluster corresponding to the migration node and the migration node in the migration cluster; When receiving the resource migration message, the computing node determines the migration order of the virtual machines on the migration node, migrates the virtual machines from the migration node according to the migration order, and migrates the migrated virtual machines to the migration node in the migration cluster according to the migration order.
9. A virtual machine evacuation scheduling device, characterized in that: The device comprises: Data acquisition module, used to obtain node operation data and minimum number of nodes of different clusters; A migration resource determination module, for each cluster, when it is determined that there is a migration node in the cluster that needs to migrate resources, determines the migration order of the virtual machines on the migration node; A cluster status determination module, configured to determine the availability status of the cluster based on the minimum number of nodes; A migration resource determination module, used to determine the migration cluster of the virtual machine on the migration node and the migration node in the migration cluster according to the availability status of the cluster and the node operation data; A migration order determination module, used to determine the migration order of the virtual machines on the migration-out nodes; The resource migration module is used to migrate the virtual machines from the migration nodes according to the migration order, and migrate the migrated virtual machines to the migration nodes in the migration cluster according to the migration order.
10. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.