WO2014071580A1 - Compute node migration method and device - Google Patents

Compute node migration method and device Download PDF

Info

Publication number
WO2014071580A1
WO2014071580A1 PCT/CN2012/084239 CN2012084239W WO2014071580A1 WO 2014071580 A1 WO2014071580 A1 WO 2014071580A1 CN 2012084239 W CN2012084239 W CN 2012084239W WO 2014071580 A1 WO2014071580 A1 WO 2014071580A1
Authority
WO
WIPO (PCT)
Prior art keywords
computing
migration
load
computing node
simulated
Prior art date
Application number
PCT/CN2012/084239
Other languages
French (fr)
Chinese (zh)
Inventor
宋宇
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN201280002820.3A priority Critical patent/CN103250139B/en
Priority to PCT/CN2012/084239 priority patent/WO2014071580A1/en
Publication of WO2014071580A1 publication Critical patent/WO2014071580A1/en

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/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • 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

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method and apparatus for migrating a computing node. Background technique
  • Cloud computing in the field of communication network technology is a computing mode that provides dynamically scalable virtualized resources in a service manner over the Internet.
  • the virtual machine in the computing node needs to be emptied first, that is, the virtual machine managed by the computing node is migrated to another computing node, and the computing node is maintained under the condition that the load of the computing node is zero. For example, upgrade or repair work.
  • Solution 1 In a computing cluster, the compute nodes in the compute cluster are emptied one by one, and then each compute node after the vacancy is upgraded or repaired one by one; Second, in a computing cluster, by manually setting a number of concurrent migration computing nodes, the computing nodes corresponding to the set number are migrated, and the migrated computing nodes are upgraded or repaired in parallel.
  • Embodiments of the present invention provide a method and apparatus for migrating a computing node, which can perform flexible concurrent migration of the computing node according to the load condition of each computing node in the computing cluster.
  • an embodiment of the present invention provides a method for migrating a computing node, including: Step A: obtaining a current load order of each computing node in a computing cluster;
  • Step B determining that the computing node whose load quantity is not zero and the load quantity is the smallest in the load sorting is a computing node that is to be subjected to the first simulated migration;
  • Step C Perform simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, and the target computing node of the first simulated migration a computing node that is not full in the computing cluster and has a load greater than a load amount of the computing node that is currently performing the first simulated migration;
  • Determining that the computing node to be subjected to the first simulated migration can be simulated when the load of the computing node to be subjected to the first simulated migration is smaller than the sum of the load margins of the target computing node of the first simulated migration If the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of the target computing node of the first simulated migration, determining that the current to be performed first is performed.
  • the computing node that simulates the migration cannot be simulated and vacant, and step D is performed; Step D: determining that the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first batch of concurrent migration calculate node;
  • Step E Perform the first concurrent migration of the first batch of computing nodes to be concurrently migrated.
  • the obtaining the current load order of each computing node in the computing cluster includes:
  • the virtual machine managed by the computing node to be subjected to the first simulated migration is simulated to migrate to the target computing node of the first simulated migration, where the first simulated migration is to be performed.
  • the target computing node is a computing node in the computing cluster whose load is not full and the load is greater than the load of the computing node to be subjected to the first simulated migration, including:
  • the method further includes: Step C: recording each The target of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration calculate node;
  • Performing concurrent migration of the computing node to be concurrently migrated includes:
  • the virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the target of the corresponding first simulated migration according to the target computing node of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration. On the compute node.
  • Step F performing maintenance on at least one of the computing nodes after the first concurrent migration.
  • the method after performing maintenance on the at least one of the computing nodes after the first concurrent migration, the method further includes:
  • Step G Perform simulation concurrent migration on the computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and perform the second batch of computing nodes to be concurrently migrated to perform the second Concurrent migration.
  • the computing node that does not perform the first concurrent migration in the computing cluster performs a simulated concurrent migration, determines a second batch of computing nodes to be concurrently migrated, and the second batch
  • the second concurrent migration of the compute node to be concurrently migrated includes:
  • Step H Obtain a current load order of each compute node in the computing cluster, where the current load order distinguishes between the compute node that has been maintained and the compute node that is not maintained;
  • Step I determining that the computing node in the current load ordering load is not zero and the load amount is the smallest, and the computing node to be subjected to the second simulated migration is the computing node;
  • Step J migrating the virtual machine managed by the computing node currently undergoing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is performed in the computing cluster Maintained compute node;
  • the load of the computing node to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determining that the computing node to be subjected to the second simulated migration can be simulated If the compute node to be subjected to the second simulation migration is the last unsaved compute node, perform step K. If the compute node to be subjected to the second simulation migration is not the last unsaved compute node, return to execution.
  • Step H when the current pending When the load of the computing node of the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration, it is determined that the computing node to be subjected to the second simulated migration cannot be simulated to be emptied, and the steps are performed.
  • L when the current pending When the load of the computing node of the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration, it is determined that the computing node to be subjected to the second simulated migration cannot be simulated to be emptied, and the steps are performed.
  • Step K Determine all the compute nodes that are not to be maintained as the second batch of compute nodes to be concurrently migrated, and perform step M;
  • Step L determining that the calculation node whose initial load is smaller than the load of the computing node to be subjected to the second simulation migration is the second batch of computing nodes to be concurrently migrated, and performing step L;
  • Step M Perform the second concurrent migration of the second batch of compute nodes to be concurrently migrated.
  • Step N performing maintenance on at least one of the computing nodes after the second concurrent migration.
  • the method after performing maintenance on the at least one of the computing nodes after the second concurrent migration, the method further includes:
  • Step 0 Perform computational concurrent migration of the compute nodes in the computing cluster that are not subjected to the simulation concurrent migration according to the method of determining the second batch of compute nodes to be concurrently migrated.
  • the managed virtual machine load of each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
  • an embodiment of the present invention provides an apparatus for migrating a computing node, including: an obtaining module, configured to obtain a current load ordering of each computing node in a computing cluster; and a first determining module, configured to determine the load sorting The computing node whose medium load is not zero and the load is the smallest is the computing node currently undergoing the first simulated migration;
  • a first simulation migration module configured to perform a simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is Calculating a computing node in the cluster that is not full in load and whose load is greater than a load of the computing node that is currently performing the first simulated migration;
  • a second determining module configured to determine, when the load amount of the computing node to be subjected to the first simulated migration is smaller than a load balance of the target computing node of the first simulated migration, determining the current pending The computing node that performs the first simulated migration can be simulated to be emptied, and the execution of the obtaining module is returned; when the load of the computing node to be subjected to the first simulated migration is greater than the load of the target computing node of the first simulated migration When the sum of the quantities is determined, the computing node that is currently to be subjected to the first simulated migration cannot be simulated to be vacant, and the third determining module is executed;
  • the third determining module is configured to determine, by the computing node that the initial load is smaller than the load of the computing node that is currently performing the first simulated migration, to be the first computing node that is to be concurrently migrated;
  • the concurrent migration module performs the first concurrent migration of the first batch of computing nodes to be concurrently migrated.
  • the obtaining module is configured to:
  • the first analog migration module includes:
  • a first simulation migration unit configured to migrate a virtual machine simulation managed by the computing node currently undergoing the first simulated migration to a computing node in the computing cluster that has a load that is not full and has the largest load; if the load is not The node load of the compute node with the largest load and the largest load is full, and the compute node to be subjected to the first simulation migration has not been vacant, and the other loads in the compute cluster are selected in the order of decreasing load amount.
  • a full computing node is configured to migrate the remaining virtual machine simulations managed by the computing node currently undergoing the first simulated migration to the selected computing node.
  • the first analog migration module further includes:
  • a recording unit configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
  • the concurrent migration module is configured to: concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration Corresponding to the first simulated migration on the target compute node.
  • the device further includes:
  • the device further includes:
  • a processing module configured to enter a computing node that does not perform the first concurrent migration in the computing cluster The row simulates a concurrent migration, determines a second batch of compute nodes to be concurrently migrated, and performs a second concurrent migration of the second batch of compute nodes to be concurrently migrated.
  • the processing module includes:
  • An obtaining unit configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the calculated computing node and the unmaintained computing node;
  • a first determining unit configured to determine that the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is a computing node that is currently to undergo the second simulated migration
  • a simulated migration unit configured to migrate the virtual machine managed by the computing node currently undergoing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is the computing cluster a compute node that has been maintained;
  • a second determining unit configured to determine that the second simulated migration is to be performed when the load of the computing node to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration
  • the computing node can be simulated to be vacant. If the computing node to be subjected to the second simulated migration is the last unmaintained computing node, the third determining unit is executed, if the computing node to be subjected to the second simulated migration is not the last one.
  • the third determining unit is configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated, and execute the concurrent migration unit;
  • the fourth determining unit is configured to determine that the computing node whose initial load is smaller than the load of the computing node to be subjected to the second simulated migration is the second computing node that is to be concurrently migrated, and execute the concurrent migration unit;
  • the concurrent migration unit is configured to perform the second concurrent migration by the second batch of compute nodes to be concurrently migrated.
  • the second simulated migration module is further configured to perform maintenance on at least one of the computing nodes after the second concurrent migration.
  • the processing module is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
  • the load of the virtual machine managed by each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
  • an embodiment of the present invention provides another apparatus for migrating a computing node, including: a processor, configured to obtain a current load order of each computing node in the computing cluster;
  • a memory configured to store, by the computing nodes in the computing cluster, the current load ordering; the processor is further configured to determine that the computing node in the load sorting is not zero and the load is the smallest Performing a first simulation migration of the computing node; and performing a simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, the target computing node of the first simulated migration a computing node in the computing cluster that is not full in load and whose load is greater than a load of the computing node that is currently performing the first simulated migration; and when the load of the computing node to be subjected to the first simulated migration is less than Determining, by the sum of the load margins of the target computing nodes of the first simulated migration, that the computing nodes currently performing the first simulated migration can be simulated to be vacant; when the load of the computing nodes to be subjected to the first simulated migration is performed When the amount is greater than the sum of the load margins of
  • the processor is further configured to determine, by the computing node that the initial load is smaller than the load of the computing node that is currently performing the first simulated migration, to be the first computing node that is to be concurrently migrated;
  • the processor is further configured to:
  • the processor is further configured to: migrate the virtual machine simulation managed by the computing node currently undergoing the first simulated migration to the computing cluster, where the load is not full and the load is the largest. On the compute node; if the load is not full and the load of the compute node with the largest load is If the computing node that is currently to be subjected to the first simulated migration has not been vacated, the computing nodes that are not full of other loads in the computing cluster are selected in the order of decreasing load amount, and the current pending The remaining virtual machine simulations managed by the compute nodes of the first simulated migration are migrated to the selected compute nodes.
  • the memory is further configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration;
  • the processor is further configured to concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration. Corresponding to the first simulated migration on the target compute node.
  • the processor is further configured to maintain at least one of the computing nodes after the first concurrent migration.
  • the processor is further configured to perform simulation concurrent migration on a computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and perform the second batch to be concurrently migrated.
  • the compute node performs a second concurrent migration.
  • the processor is further configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the maintenance node that has been maintained and the computing node that is not maintained. ;
  • the processor is further configured to migrate the virtual machine managed by the computing node currently performing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is the Calculate the compute nodes that have been maintained in the cluster;
  • the processor is further configured to: when the load amount of the computing node that is currently to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determine that the second simulation is currently to be performed.
  • the migrated compute node can be simulated to be vacant. If the compute node to be subjected to the second simulated migration is the last unsaved compute node, perform the determination that all the unsaved compute nodes are the second batch of compute nodes to be concurrently migrated.
  • the computing node is not the last un-maintained computing node, and returns to perform load sorting on the computing node; when the load of the computing node to be subjected to the second simulated migration is greater than the load of the target computing node of the second simulated migration When the sum of the balances is determined, it is determined that the computing node to be subjected to the second simulated migration cannot be simulated to be vacant, and the computing node that determines that the initial load is smaller than the load of the computing node to be subjected to the second simulated migration is The second batch of computing nodes to be concurrently migrated; the processor is further configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated;
  • the processor is further configured to determine, by the computing node that the initial load is less than the load of the computing node to be subjected to the second simulated migration, to the second batch of computing nodes that are to be concurrently migrated;
  • the processor is further configured to perform maintenance on at least one of the computing nodes after the second concurrent migration.
  • the processor is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
  • a computer readable medium comprising: the computer readable medium comprising computer execution instructions, the computer executing a method of migrating a compute node when a central processor of the computer executes the computer to execute an instruction.
  • An embodiment of the present invention provides a method and an apparatus for migrating a computing node.
  • By obtaining a current load order of each computing node in the computing cluster it is determined that the computing node in the load sorting is not zero and the load is the smallest.
  • Performing a first simulation migration of the computing node, and performing virtual migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, the target computing node of the first simulated migration And calculating, by the computing node, that the load in the cluster is not full and the load is greater than the load of the computing node that is currently performing the first simulated migration, and then determining that the initial load is smaller than the computing node that is currently performing the first simulated migration.
  • the computing node of the load is the first batch of computing nodes to be concurrently migrated, and the first batch of concurrently migrated computing nodes perform the first concurrent migration.
  • the embodiment of the present invention can perform flexible concurrent migration on the computing node according to the load condition of each computing node in the computing cluster, thereby Further increase the flexibility and efficiency of compute node migration.
  • FIG. 1 is a flowchart of a method for migrating a computing node according to Embodiment 1 of the present invention
  • FIG. 2 is a schematic diagram of sorting a load of a virtual machine according to Embodiment 1 of the present invention
  • FIG. 4 is a flowchart of a method for migrating a computing node according to Embodiment 1 of the present invention
  • FIG. 4 is a schematic diagram of data analysis when determining a first batch of computing nodes for performing maintenance according to Embodiment 1 of the present invention
  • FIG. 5 is a flowchart of a method for determining a first batch of compute nodes to be concurrently migrated according to Embodiment 1 of the present invention
  • FIG. 6 is a flowchart of a method for determining a second batch of compute nodes to be concurrently migrated according to Embodiment 1 of the present invention
  • Figure ⁇ is a schematic diagram of data analysis when determining a second batch of computing nodes for maintenance according to Embodiment 1 of the present invention.
  • FIG. 8 is a schematic diagram of data analysis when determining a third batch of computing nodes for maintenance according to Embodiment 1 of the present invention.
  • FIG. 9 is a block diagram of an apparatus for migrating a computing node according to Embodiment 2 of the present invention
  • FIG. 10 is a block diagram of another apparatus for migrating a computing node according to Embodiment 2 of the present invention
  • Another block diagram of a device that migrates compute nodes Another block diagram of a device that migrates compute nodes. detailed description
  • an embodiment of the present invention provides a flowchart of a method for migrating a computing node, where an execution entity of the method is a management node in a computing cluster, and the method includes the following steps:
  • Step 101 Obtain a current load order of each computing node in the computing cluster.
  • a computing cluster is used to manage multiple compute nodes.
  • a compute cluster consists of one management node and several compute nodes.
  • the management node is configured to manage the plurality of computing nodes, and allocate the received task request to the relatively idle computing node according to a certain load balancing policy, where the task request is sent to the computing node by the management node, so that the computing node processes This task request.
  • a compute node may also be referred to as a host.
  • a compute node allocates a virtual compute resource node to a virtual machine it manages for processing execution of a task request.
  • the current load quantity of each computing node in the computing cluster is obtained, and the current load quantity of each computing node is sorted to obtain the current load order of each computing node.
  • the current load of each computing node may be sorted according to the current load amount, or according to the current load of each computing node, according to the largest to smallest. In this embodiment, the sorting can be performed from small to large according to the current load amount.
  • the load of the virtual machine managed by each computing node includes one of the following factors or any combination thereof: the sum of the CPUs of the virtual machines managed by the compute nodes, the sum of the memory of the virtual machines managed by the compute nodes, or the management of the compute nodes.
  • the bandwidth of the virtual machine may be sorted according to the sum of the CPUs of the virtual machines managed by the computing nodes.
  • the computing nodes may be sorted according to the sum of the memory of the virtual machines managed by the computing nodes, or the virtual nodes are managed according to the computing nodes.
  • the bandwidth of the machine sorts the compute nodes.
  • Step 102 Determine that the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is the computing node that is currently to perform the first simulated migration;
  • a computing node with a zero load may be generated. For example, according to actual needs, it may be determined that five computing nodes are maintained in one computing cluster, and the five computing nodes are loaded according to the virtual machines they manage. Sort the quantity, for example, a virtual machine managed by a compute node The sum of the CPUs is arranged in ascending order.
  • the sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount 0 of the compute node 1; the load of the compute node 2 is 10%; the load of the compute node 3 is 30%; and the load of the compute node 4 is 40%; The load of the computing node 5 is 75%, and the computing node currently to be subjected to the first simulated migration is the computing node 2.
  • a computing node with the same amount of load may be generated. For example, according to actual needs, it may be determined that six computing nodes in another computing cluster perform maintenance, and the six computing nodes are loaded according to the virtual machines they manage. Sorting is performed, and the sum of the CPUs of the virtual machines managed by the compute nodes is arranged from small to large.
  • the sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount of the compute node 1 is 0; the load of the compute node 2 is 10%; the load of the compute node 3 is 10%; and the load of the compute node 4 is 30%; the load of the computing node 5 is 75%; the load of the computing node 6 is 90%, and the computing node currently to be subjected to the first simulated migration is the computing node 2.
  • the load when the load is sorted by the computing cluster, when the computing nodes with the same load appear, for example, the load of the computing node 2 and the computing node 3 is 10%, and the current load ordering is the same as the load.
  • Other operating conditions of the computing node are understood and compared. Other operating conditions may be the sum of the memory of the virtual machine managed by the computing node, or the bandwidth of the virtual machine managed by the computing node.
  • the load conditions of all computing nodes can be strictly differentiated.
  • the load and operation of the computing nodes with the same load can be further distinguished, and the computing nodes with the same load can be randomly sorted, regardless of How to sort, the order of the initial load ordering is used for subsequent simulation calculations. If the same load computing node is differentiated in load sorting, the subsequent simulation calculation is based on the initial sorting size relationship.
  • Step 103 Simulate the virtual machine managed by the computing node that is to be subjected to the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is that the load in the computing cluster is not full and the load is a computing node that is larger than a load amount of a computing node to be subjected to the first simulated migration;
  • step 104 when the load of the computing node to be subjected to the first simulated migration is smaller than the sum of the load margins of the target computing node of the first simulated migration, it is determined that the computing node to be subjected to the first simulated migration can be simulated. Move to empty, return to step 101; when the first simulation migration is to be performed When the load of the node is greater than the sum of the load balances of the target computing nodes of the first simulated migration, it is determined that the computing node to be subjected to the first simulated migration cannot be simulated to be vacant, and step 104 is performed;
  • the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, according to computing nodes.
  • the sum of the CPUs of the managed virtual machines is arranged in ascending order.
  • the sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount of the compute node 1 is 0; the load of the compute node 2 is 10%; the load of the compute node 3 is 30%; and the load of the compute node 4 is 40%; compute node 5 load is 75%; compute node 6 load is 90%; compute node 7 load is 100%, determine the current load sorting load is not zero and the load is the smallest compute node
  • the computing node that is currently undergoing the first simulated migration, that is, the computing node that is currently to undergo the first simulated migration is the computing node 2.
  • the target computing node of the first simulated migration may be the computing node 3, the computing node 4, the computing node 5 or the computing node 6, and the sum of the load margins of all the target computing nodes of the first simulated migration is 245%, which is greater than the computing node.
  • the load of 2 so the compute node 2 can be simulated to be vacant.
  • the target compute node of the first simulated migration at the first simulation migration is the compute node 3, and of course, the target calculation for the first simulated migration.
  • the determination of the node is not limited thereto, and may also be the computing node 4, the computing node 5, or the computing node 6.
  • the 10% load on the compute node 2 is simulated and migrated to the target compute node 3 of the first simulated migration.
  • the load on compute node 3 is 40%, and the load on compute node 2 is zero.
  • the current load order is: The load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 40%; the load of compute node 4 is 40%; the load of compute node 5 is 75%; the load of the computing node 6 is 90%; the load of the computing node 7 is 100%; the computing node to be subjected to the first simulated migration is determined as the computing node 3 according to the current load order, and all the targets of the first simulated migration are The sum of the load margins of the compute nodes is 90%, which is greater than the load of the compute node 3 by 40%, so the compute node 3 can be simulated to be emptied, that is, the 40% load simulation on the compute node 3 is simulated.
  • the current load order of each computing node in the computing cluster is obtained; the current load ordering is that the load of the computing node 1 is 0; the load of the computing node 2 is 0; and the load of the computing node 3 is 0;
  • the load of the calculation node 4 is 80%; the load of the calculation node 5 is 75%; the load of the calculation node 6 is 90%; the load of the calculation node 7 is 100%;
  • the computing node of the simulated migration is the computing node 4, and the sum of the load margins of all the target computing nodes of the first simulated migration is 35%, which is smaller than the load of the computing node 4 by 80%, and the computing node to be subjected to the first simulated migration is determined. If the vacant is not simulated, step 104 is performed, that is, the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first computing node to be concurrently migrated;
  • Step 104 Determine, by the computing node that the initial load is smaller than the load of the computing node to be subjected to the first simulated migration, to be the first computing node to be concurrently migrated;
  • the first batch of compute nodes to be concurrently migrated are compute node 1, compute node 2, and compute node 3.
  • Step 105 Perform a first concurrent migration of the first batch of compute nodes to be concurrently migrated.
  • the first batch of concurrently migrated computing nodes perform the first concurrent migration, that is, the computing node 1 , the computing node 2 , and the computing node 3 perform the first concurrent migration.
  • the embodiment of the present invention provides a method for migrating a computing node.
  • the computing node that can perform concurrent migration in the calculation of a computing cluster is performed, and the determined computing node is concurrently migrated, so that the embodiment can automatically determine the concurrent migration. Calculate the number of nodes and perform parallel migration.
  • an embodiment of the present invention provides another method for migrating a computing node, where the method includes:
  • Step 301 The management node obtains a current load quantity of each computing node in the computing cluster, performs sorting according to the current load quantity of each computing node, and obtains a current load row of each computing node.
  • the management node sorts all computing nodes from small to large according to the load of the virtual machine managed by the computing node; or, determining a concurrent migration in a computing cluster.
  • the compute nodes are sorted from largest to smallest according to the load of the virtual machines managed by the compute nodes. In order to perform a migration calculation on the compute node according to the load condition of the virtual machine managed by the compute node.
  • the load of the virtual machine managed by each computing node includes one of the following factors or any combination thereof: the sum of the CPUs of all the virtual machines managed by the compute nodes, the sum of the memory of all the virtual machines managed by the compute nodes, or all compute nodes.
  • the bandwidth of the managed virtual machine may be sorted according to the sum of the CPUs of the virtual machines managed by the computing nodes.
  • the computing nodes may be sorted according to the sum of the memory of the virtual machines managed by the computing nodes, or the virtual nodes are managed according to the computing nodes.
  • the bandwidth of the machine sorts the compute nodes.
  • the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, the CPU of the virtual machine managed by the computing node.
  • the sums are arranged in ascending order. As shown in FIG. 4, the sum of the CPUs of the virtual machines managed by the compute node 1 is 20%, that is, the load of the compute node 1 is 20%; the load of the compute node 2 is 20%; and the load of the compute node 3 is 30. %; compute node 4 load is 30%; compute node 5 load is 75%; compute node 6 load is 90%; compute node 7 load is 90%.
  • the load sorting also knows and compares other running conditions of the same computing node.
  • the load conditions of all computing nodes can be strictly differentiated.
  • the load and operation of the same computing node can be further distinguished.
  • the computing nodes with the same load can be randomly sorted. Regardless of the ordering, the order of the initial load ordering is used for subsequent simulation calculations. If the same load computing node is under load
  • the sorting is divided into sizes, and the subsequent simulation calculations are based on the initial sorting relationship. For example, the initial loads of the computing nodes 1 and 2 are both 20%.
  • the computing node 1 is placed before the computing node 2.
  • the load of the computing node 2 can be considered to be greater than the calculation. Node 1.
  • Step 302 The management node calculates, according to the first simulated migration calculation model, a first batch of computing nodes to be concurrently migrated;
  • the first simulation migration calculation model is: setting a calculation node with a non-zero load and a minimum load in the current load order as a calculation node to be subjected to the first simulation migration, and the calculation node to be subjected to the first simulation migration
  • the managed virtual machine performs simulated migration to the target computing node of the first simulated migration, when the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of all the target computing nodes of the first simulated migration And determining that the computing node to be subjected to the first simulated migration cannot be emptied.
  • the vacancy means that the virtual machines managed by the compute nodes can all be migrated to other compute nodes such that the load of the compute nodes is zero.
  • the computing node is directly included in the first batch of computing nodes to be concurrently migrated; in addition, the load is not zero according to the principle that the load is from small to large.
  • the calculation node performs simulation migration calculation, and each calculation node re-updates the load condition of each calculation node, and performs the simulation migration calculation of the next calculation node with the smallest load until the calculation node cannot be emptied.
  • the computing node whose initial load is smaller than the computing node that cannot be emptied is determined to be a computing node that can be emptied, and the nodes are included in the first batch of computing nodes to be concurrently migrated.
  • calculating the first batch of computing nodes to be concurrently migrated according to the first simulated migration calculation model may specifically include the following steps (one of the implementation modes):
  • Step 501 determining that the load node in the load sorting is not zero and the load amount is the smallest, and the computing node that is currently performing the first simulated migration is the computing node A;
  • the computing node A currently undergoing the first simulated migration is a specific computing node among the computing nodes currently performing the first simulated migration.
  • the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, the CPU of the virtual machine managed by the computing node.
  • the sums are arranged in ascending order.
  • the sum of the CPUs of the virtual machines managed by the compute node 1 is 20%, that is, the load of the compute node 1 is 20%; the load of the compute node 2 is 20%; the load of the compute node 3 is 30%; The load is 30%; the load of the compute node 5 is 75%; the load of the compute node 6 is 90%; and the load of the compute node 7 is 90%.
  • the current computing node with the first simulated migration is the computing node 1.
  • Step 502 The virtual machines managed by the computing node A currently undergoing the first simulated migration are migrated one by one to the computing nodes whose load is not full and the load is the largest;
  • the virtual machine managed by the computing node A to be subjected to the first simulated migration may be simulated and migrated to the target computing node of the first simulated migration, where the first simulated migration is to be performed.
  • the target computing node is a computing node in the computing cluster whose load is not full and the load is greater than the load of the computing node A currently undergoing the first simulated migration, that is, the computing node 2, the computing node 3, the computing node 4, Compute node 5, compute node 6, or compute node 7.
  • the virtual machines managed by the computing node A to be subjected to the first simulated migration may be migrated one by one to the computing nodes with the least load and the largest load.
  • the computing node to be subjected to the first simulated migration is the computing node 1, and the computing node with the largest load is the computing node 7.
  • the sum of the load margins of the compute node 2, the compute node 3, the compute node 4, the compute node 5, the compute node 6, and the compute node 7 with the load ordering greater than the compute node 1 is 265%, which is much larger than the load of the compute node 1 by 20%. Therefore, the compute node 1 can be emptied.
  • the virtual machines managed on the computing node 1 may be migrated to the computing nodes 7 one by one according to the virtual machine simulations managed on the computing node 1. Then record the migration path: Migrate the 10% load simulation on compute node 1 to compute node 7.
  • the CPU load of each virtual machine managed on the computing node 1 can be specifically migrated from the sequential simulation to the computing node 7 so that the maximum program avoids multiple migrations. For example, if three virtual machines are managed on compute node 1, and the CPU load of each virtual machine is 1%, 9%, and 10%, the virtual machine simulation with CPU load of 10% is preferentially migrated to compute node 7. Then, the virtual machine simulation with the CPU load of 9% is migrated to the compute node 7, and finally the virtual machine simulation with the CPU load of 1% is migrated to the compute node 7. It should be noted that the calculation section of the actual calculation of concurrent migration When you point, you need to specifically consider the load of the compute node with the largest load to avoid increasing the number of migrations.
  • the load of compute node 7 is 99%, and three virtual machines are managed on compute node 1.
  • the CPU load of each virtual machine is 1%, 9%, and 10%. In this case, the CPU load needs to be directly 1% of the virtual machines are added to compute node 7.
  • the load of the computing node with the largest load is full and the computing node A currently undergoing the first simulated migration has not been vacant, the other loads in the computing cluster are not full according to the order of decreasing load.
  • the most loaded computing node, and the remaining virtual machine simulation managed by the computing node A currently undergoing the first simulated migration is migrated to the selected computing node until the virtual machine managed by the least loaded computing node is completely Move out
  • compute node 1 cannot be completely emptied. In this case, the remaining virtual machine simulation of compute node 1 needs to be migrated to compute node 6, and so on until compute node 2. If the virtual machine managed by the compute node 1 can be emptied, the virtual machine managed by the compute node 2 continues to be simulated and migrated.
  • the proportion of the load fullness may be set to the calculation nodes in the calculation cluster.
  • the ratio of the load of the calculation nodes 1-7 is 100%, or the calculation node 1 may be set.
  • the ratio of the load of 7 is 90%.
  • the ratio of the load of the computing node being full is 100% as an example for detailed description.
  • the load of the compute node 1 is 20%, and the load of the compute node 7 is 90%.
  • the load simulation of 10% of the load on the compute node 1 is migrated to the compute node 7, and the compute node The load of 7 reaches 100%, and the remaining 10% of the load on node 1 is calculated.
  • the load of the computing node 6 is 90%, and then the simulation of the remaining 10% of the load on the computing node 1 is migrated to the computing node 6.
  • the load of the computing node 1 is 0, and the load of the computing node 6 reaches 100. %.
  • the migration path Migrate the remaining 10% of the load simulation on compute node 1 to compute node 6.
  • Step 503 Record, when each load of one computing node or one computing node is saturated, record the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration, and update the load order of each computing node. Get the current load ordering;
  • Record migration path The 10% load simulation on compute node 1 is migrated to compute node 7, and the remaining 10% load simulation on compute node 1 is migrated to compute node 6.
  • the management node updates the load in the computing nodes 1-7.
  • the load of compute node 1 is 0; the load of compute node 2 is 20%; the load of compute node 3 is 30%; the load of compute node 4 is 30%; the load of compute node 5
  • the amount is 75%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
  • Step 504 Determine, in the current load ordering, that the computing node that is not zero in load and has the smallest load is the computing node B that is currently to be subjected to the first simulated migration, and the virtual machines managed by the computing node B that is currently to undergo the first simulated migration are one by one.
  • the simulation is migrated to the computing node where the current load is not full and the load is the largest; according to the load order after the reordering of the computing nodes in step 503, the computing node B whose current load is not zero and the load is the smallest is determined to be the current a computing node 2 that simulates migration, and a computing node that determines that the current load is not full and the load is the largest.
  • the computing node whose current load is not full and the largest load is the computing node 3, the computing node 4, Calculate node 5.
  • Step 505 If the load of the computing node B that is currently to be subjected to the first simulated migration is smaller than the load of the computing node in the computing cluster that is greater than the load of all computing nodes of the computing node B that is currently performing the first simulated migration.
  • the sum of the quantities, that is, the computing node B that is currently to be subjected to the first simulated migration can be emptied, and returns to step 503; if the load of the computing node B currently undergoing the first simulated migration is greater than the current in the computing cluster
  • the load ranking is greater than the sum of the load margins of all the computing nodes of the computing node B currently undergoing the first simulated migration, and determining that the current load is not zero and the load node with the smallest load cannot be emptied, the initial load is less than the
  • the computing node of the current computing load of the computing node to be subjected to the first simulated migration is the first batch of computing nodes to be concurrently migrated;
  • the virtual machine managed by the computing node 2 is continuously subjected to the simulation migration calculation, and the computing node 2 is set as the computing node B currently undergoing the first simulated migration.
  • the load of the computing node 2 is 20%, and the load of the computing node 7 and the computing node 6 is full. According to the current load, the load is not full and the load is greater than the computing node 3, 4 of the computing node 2.
  • the sum of the load margins of 5 is 165%, which is much larger than the load of the computing node 2 by 20%, so the computing node 2 can be emptied. At this time, the virtual machine simulation managed by the computing node 2 needs to be migrated to the computing node 5.
  • the calculation section can be directly
  • the virtual machines managed at point 2 are all simulated and migrated to the computing node 5, then the load of the computing node 2 is 0, and the load of the computing node 5 is 95%. Then record the migration path: Migrate the 20% load simulation on compute node 2 to compute node 5.
  • the management node updates the load in compute nodes 1-7.
  • the load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 30%; the load of compute node 4 is 30%; the load of compute node 5 It is 95%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
  • the simulation migration calculation of the virtual machine managed by the computing node 3 is continued, and the computing node 3 is set to the computing node C currently undergoing the first simulated migration.
  • the load of the computing node 3 is 30%.
  • the sum of the load margins of the computing nodes 4 and 5 whose load is not full and the load is greater than the computing node 3 is 75%, which is much larger than the calculation.
  • the load of the node 3 is 30%, and the virtual machine simulation managed on the computing node 3 is migrated to the computing node 5.
  • the 5% load amount of the computing node 3 is simulated and migrated to the computing node 5, and the load of the node 5 is calculated.
  • the management node updates the load in compute nodes 1-7.
  • the load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 0; the load of compute node 4 is 55%; the load of compute node 5 is 100%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
  • the simulation migration calculation needs to be performed on the computing node 4, and the computing node 4 is set as the computing node D currently undergoing the first simulated migration, and the node load of the computing nodes 5, 6, and 7 is found to be 100%, according to the current load. Sorting, the load is not full and the load order is greater than the compute node of compute node 4 does not exist, the load of compute node 4 55% cannot be migrated, so the virtual machine on compute node 4 cannot be Emptying, at this point, the simulation migration calculation of the first batch of compute nodes to be concurrently migrated ends.
  • the computing node that determines that the load amount is smaller than the load amount of the computing node D that is currently undergoing the first simulated migration is the computing node of the first batch of concurrent migration according to the above simulation migration calculation. That is, the first batch of compute nodes to be concurrently migrated are 1, compute node 2, and compute node 3.
  • Step 303 The virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the corresponding first simulation according to the target computing node of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration.
  • the target of the migration is calculated on the node;
  • the actual migration is performed according to the method of simulating the concurrent migration that is performed when the maintenance node is determined in step 302. Specifically, the virtual machine simulation managed by the computing node 1 is migrated to the computing node 7 and the computing node 6, and The virtual machine managed by the computing node 2 is migrated to the computing node 5, and the virtual machine managed by the computing node 3 is migrated to the computing node 5 and the computing node 4.
  • Step 304 The management node performs maintenance on at least one of the first batch of concurrently transferred computing nodes, where the maintenance includes upgrading or repairing;
  • the compute node 2 and the compute node 3 when performing maintenance on the compute node 1, the compute node 2, and the compute node 3, first perform the environment setup before the maintenance, and then obtain the version package that the compute node performs the upgrade or obtain the patch package of the version that the compute node performs maintenance. And acquiring the device information of the computing node, and finally maintaining the computing node according to the device information of the computing node.
  • Step 305 The management node calculates, according to the second simulated migration calculation model, a second batch of computing nodes to be concurrently migrated;
  • the second simulation migration calculation model is: setting a computing node with a non-zero load and a minimum load in the current load ordering as a computing node to be subjected to the second simulated migration, and managing the computing node to be subjected to the second simulated migration.
  • the virtual machine performs simulated migration to all the target computing nodes of the second simulated migration, where the target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster; when the second simulated migration is to be performed When the load of the computing node is greater than the sum of the load margins of all the target computing nodes of the second simulated migration, it is determined that the computing node to be subjected to the second simulated migration cannot be emptied.
  • the second batch of computing nodes to be concurrently migrated is calculated according to the second simulated migration calculation model, and specifically includes the following steps:
  • Step 601 Obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the calculated computing node and the unmaintained computing node;
  • the current load order of each computing node in the computing cluster is: Computation node 1-3 is a computing node after maintenance completion, and the sum of load amounts is 0; For the maintenance nodes, the load is: 55% of the load of the compute node 4; 100% of the load of the compute node 5; 100% of the load of the compute node 6; 100 load of the compute node 7 %.
  • Step 602 determining that the computing node in the current load ordering load is not zero and the load amount is the smallest is the computing node A currently undergoing the second simulated migration;
  • the load of the computing node 4 is 55%, that is, the computing node A currently undergoing the second simulated migration in this embodiment.
  • Step 603 The virtual machine managed by the computing node A that is currently to be subjected to the second simulated migration is simulated to migrate to the target computing node of the second simulated migration, and the target computing node of the second simulated migration is in the computing cluster. a compute node that has been maintained;
  • the compute nodes that have been maintained are compute nodes 1-3.
  • the load amount of the computing node A currently undergoing the second simulated migration is smaller than the sum of the load margins of all the target computing nodes of the second simulated migration, determining the current waiting
  • the compute node A performing the second simulated migration can be simulated to be vacant;
  • the sum of the load margins of the target computing nodes of all the second simulated migrations is 300%, and the computing node A currently undergoing the second simulated migration can be simulated to be vacant.
  • the 55% load simulation on compute node 4 is migrated to compute node 1 that has been maintained, ie, the maintained compute node 1 is the target compute node for the second simulated migration.
  • the load of the calculation node 1 that has been maintained is 55%, and the load of the calculation node 4 is 0.
  • the process returns to step 601. Specifically, as shown in FIG. 7, the computing node A currently undergoing the second simulated migration is not the last unsaved computing node, and the unsaved computing node further includes the computing node 5, the computing node 6, and the computing node 7. Therefore, after the virtual machine simulation migration calculation managed by the computing node 4 is completed, the management node updates the load in the computing nodes 1-7.
  • the load of compute node 1 is 55%; the load of compute node 2 is 0; the load of compute node 3 is 0; the load of compute node 4 is 0; the load of compute node 5 is 100%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
  • Compute Node B is compute node 5.
  • the sum of the load balances of the maintained compute node 1, the compute node 2, and the compute node 3 is 245%, which is greater than the load of the compute node 5, so that the compute node 5 can be emptied.
  • the 45% load simulation on the computing node 5 is migrated to the computing node 1, the load of the computing node 1 reaches 100%, and the load of the computing node 5 remains 55%, and then the computing node 5 is The remaining 55% of the load is simulated and migrated to the compute node 2. At this time, the load of the compute node 5 is 0, and the load of the compute node 2 reaches 55%. Then record the migration path: Migrate the 45% load simulation on compute node 5 to compute node 1. , Migrate the remaining 55% of the load simulation on node 2 to compute node 2.
  • the process returns to step 601. Specifically, the management node updates the load in compute nodes 1-7. As shown in Figure 7, the load of compute node 1 is 100%; the load of compute node 2 is 55%; the load of compute node 3 is 0; the load of compute node 4 is 0; the load of compute node 5 It is 0; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
  • the computing node in the current load ordering is not zero and the load amount is the smallest, and the computing node that is currently undergoing the second simulated migration is as shown in FIG.
  • the computing node C to be subjected to the second simulated migration is the computing node 6.
  • the load of the computing node 6 is 100%, and the sum of the load margins of the maintained computing nodes 1, 2, and 3 is 145%, which is greater than the load of the computing node 6, so the computing node 6 can simulate migrate.
  • the computing node 2 and the computing node 3 are used as the target computing nodes of the second simulated migration, that is, the 45% load simulation on the computing node 6 is migrated to the computing node 2, and the load of the computing node 2 reaches 100%.
  • the load of the computing node 6 is 55%, and then the remaining 55% of the load on the computing node 6 is simulated and migrated to the computing node 3.
  • the node load of the computing node 6 is 0, and the load of the node 3 is calculated. Up to 55%. Then record the migration path: Migrate the 45% load simulation on compute node 6 to compute node 2, and migrate the remaining 55% load simulation on compute node 2 to compute node 3.
  • the process returns to step 601. Specifically, the management node updates the load in compute nodes 1-7. As shown in Figure 7, the load of compute node 1 is 100%; the load of compute node 2 is 100%; the load of compute node 3 is 45%; the load of compute node 4 is 0; the load of compute node 5 The amount is 0; the load of compute node 6 is 0; the load of compute node 7 is 100%.
  • the computing node in the current load ordering is not zero and the load amount is the smallest, and the computing node D is currently performing the second simulated migration. As shown in FIG. 7, the second simulated migration is currently performed. Compute node D is compute node 7. At this time, it is necessary to continue the migration calculation of the virtual machine managed by the computing node 7. As shown in Figure 7, the load of compute node 7 is 100%. At this point, the sum of the load margins of the maintained compute nodes is 55%, which is less than the load of compute node 7.
  • step 604 is performed at this time. That is, the compute node 7 cannot simulate the migration and ends the calculation of the second batch of compute nodes to be concurrently migrated.
  • the computing node D currently undergoing the second simulated migration cannot be migrated to the second When simulating the target node of the migration, it can be judged whether there is still a case where the node load is not full in the compute node that is not being maintained.
  • the current second simulation migration is to be performed.
  • the calculation node D cannot be simulated to be emptied, and step 604 is performed at this time.
  • the load of the computing node C that is currently to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determining that the second simulated migration is currently to be performed
  • the compute node can be simulated to be vacant. If the compute node C to be subjected to the second simulated migration is the last unsaved compute node, the virtual machine managed by the compute node C to be subjected to the second simulated migration is second. The target computing node of the simulated migration is migrated, and then, step 605 is performed.
  • Step 604 Determine, by the computing node that the initial load quantity is less than the load quantity of the computing node D that is currently performing the second simulated migration, to be the second batch of computing nodes to be concurrently migrated;
  • the second batch of compute nodes to be concurrently migrated are the compute node 4 and the compute node 5 to compute node 6.
  • the second batch of compute nodes to be concurrently migrated After the second batch of compute nodes to be concurrently migrated is determined, the second batch of concurrently migrated compute nodes are actually concurrently migrated. For details, refer to step 306.
  • Step 605 Determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated.
  • the second batch of computing nodes to be concurrently migrated are the computing node 4 and the computing node 5 to calculate Node 6.
  • Step 306 concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to its corresponding second simulation according to the target computing node of the second simulated migration corresponding to the computing node to be subjected to the second simulated migration.
  • the target of the migration is on the compute node.
  • compute nodes that are to be determined for concurrent migration are compute node 4, compute node 5, and compute node 6.
  • the management node after determining the concurrently migrated computing node, performs concurrent migration on the computing node according to the manner of concurrent migration that is determined when the concurrently performing computing node is performed, and after the concurrent migration of the management node The compute nodes are maintained.
  • the migration is performed according to the method of determining the concurrent migration performed by the maintenance node in steps 601 to 605.
  • the virtual machine managed by the computing node 4 is migrated to the already-maintained computing node 1
  • the computing node 5 is The managed virtual machine is migrated to the already-maintained computing node 1 and the already-maintained computing node 2
  • the virtual machine managed by the computing node 6 is migrated to the already-maintained computing node 2 and the already-maintained computing node 3.
  • Step 307 The management node maintains at least one of the computing nodes after the second concurrent migration
  • step 304 in FIG. 3 The operation of upgrading or repairing the computing node is the same as step 304 in FIG. 3, and is not described here.
  • Step 308 The management node performs simulation and concurrent migration on the computing node that does not perform the simulation concurrent migration in the computing cluster according to the method for determining the second batch of the computing nodes to be concurrently migrated.
  • the management node continues to determine the third batch of compute nodes to be concurrently migrated according to the method of determining the second batch of compute nodes to be concurrently migrated.
  • the third batch of computing nodes to be concurrently migrated is determined to be determined; when there is no computing node that is not maintained in the computing cluster, the operation ends. .
  • the computing node that is not maintained only has the computing node 7 remaining, and then only the simulation migration calculation needs to be performed on the computing node 7, and the computing node 7 is the current calculation to be subjected to the third simulated migration.
  • Virtually managing the computing node currently undergoing the third simulated migration The pseudo-machine simulates the migration to the target computing node of the third simulated migration to perform the migration, and the target computing node of the third simulated migration is the computing node in the computing cluster that has been maintained and the load is not full. That is, the target computing nodes of the third simulated migration are the computing node 3, the computing node 4, the computing node 5, and the computing node 6.
  • the load of the calculation node 7 is 100%.
  • the sum of the load margins of the target computing nodes of all the third simulated migrations is 245%, which is much larger than the load of the computing nodes to be subjected to the third simulated migration, and the computing nodes currently undergoing the third simulated migration can be emptied.
  • the virtual machine simulation managed on the computing node 7 is migrated to the computing node 3, at which time the load of the computing node 3 is 100%, the remaining load on the computing node 7 is 55%, and then the computing node 7 is The remaining 55% of the load is simulated to migrate to the computing node 4 that has been maintained.
  • the load of the computing node 4 that has been maintained is 55%, and the load on the computing node 7 is 0. Then record the migration path: Migrate the 45% load simulation on compute node 7 to compute node 3 and migrate the remaining 55% load simulation on compute node 7 to compute node 4.
  • the management node updates the load in the computing nodes 1-7.
  • the load of compute node 1 is 100%; the load of compute node 2 is 100%; the load of compute node 3 is 100%; the load of compute node 4 is 55%; The load is 0; the load of compute node 6 is 0; the load of compute node 7 is 0.
  • the computing node to be subjected to the third simulated migration can be simulated after the load of the computing node to be subjected to the third simulated migration is smaller than the load of the target computing node of the third simulated migration. If the computing node to be subjected to the third simulated migration is the last unsaved computing node, it can be determined that the unsaved computing node 7 is the third batch of computing nodes to be concurrently migrated.
  • Step 309 The management node performs the third concurrent migration of the third batch of computing nodes to be concurrently migrated;
  • the management node migrates the compute node 7 according to the manner of concurrent migration used to determine the third batch of concurrently simulated compute nodes. Specifically, the virtual machine simulated by the compute node 7 is simulated. Move to the already-calculated compute node 3 and the already-maintained compute node 4.
  • Step 310 The management node performs maintenance on the computing node after the third concurrent migration.
  • Embodiments of the present invention provide a method for migrating a computing node. By automatically determining a concurrent computing node in all compute nodes of a computing cluster, and then performing simulated concurrent migration on the determined computing node, the calculation of the simulated concurrent migration can be automatically determined. The number of nodes, and parallel migration, thereby reducing the time to maintain compute nodes in the compute cluster.
  • An embodiment of the present invention provides a device for migrating a computing node, where the device may be a management node in a computing cluster.
  • the device includes: an obtaining module 901, a first determining module 902, and a first analog migration module. 903.
  • the obtaining module 901 is configured to obtain a current load order of each computing node in the computing cluster, where the obtaining module 901 is specifically configured to: obtain a current load amount of each computing node in the computing cluster, according to the computing nodes The current load amount is sorted to obtain the current load order of the respective compute nodes.
  • the load of the compute node is the load of the virtual machine managed by the compute node.
  • the load of the virtual machine managed by each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
  • a first determining module 902 configured to determine, in the load sorting, that the load node is not zero and the load amount is the smallest, and the computing node that is currently performing the first simulated migration;
  • the first simulation migration module 903 is configured to perform simulation migration on the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is Calculating, by the computing node, that the load in the cluster is not full and the load is greater than the load of the computing node that is currently performing the first simulated migration; a second determining module 904, configured to determine, when the load quantity of the computing node to be subjected to the first simulated migration is smaller than a load balance of the target computing node of the first simulated migration, The simulated migration computing node can be simulated to be emptied and returned to perform the obtaining module 901; when the load of the computing node to be subjected to the first simulated migration is greater than the load margin of the target computing node of the first simulated migration And determining that the computing node that is currently to be subjected to the first simulated migration cannot be simulated to be emptied, and executing the third determining module
  • the third determining module 905 is configured to determine that the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first computing node that is to be concurrently migrated; the concurrent migration module 906, The first batch of compute nodes to be concurrently migrated perform the first concurrent migration.
  • the first analog migration module 903 in the device includes: a first analog migration unit 9031, a recording unit 9032;
  • a first simulation migration unit 9031 configured to migrate a virtual machine simulation managed by the computing node currently performing the first simulated migration to a computing node in the computing cluster that has a load that is not full and has the largest load; The load of the compute node that is not full and has the largest load is full, and the compute node that is currently to be subjected to the first simulated migration has not been vacant, and the other loads in the computing cluster are selected in the order of decreasing load.
  • a full computing node is configured to migrate the remaining virtual machine simulations managed by the computing node currently undergoing the first simulated migration to the selected computing node.
  • the recording unit 9032 in the first simulated migration module 903 needs to record the mode of the simulated migration.
  • the recording unit 9032 is configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
  • the concurrent migration module 906 calculates the to-be-concurrent migration according to the target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
  • the node-managed virtual machine is concurrently migrated to its corresponding first simulated migration target computing node.
  • the device further includes: a maintenance module 907, a processing module 908; After the virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the target computing node of the corresponding first simulated migration, the maintenance module 907 is configured to perform the at least one computing node after the first concurrent migration. maintain.
  • the processing module 908 is configured to perform simulation concurrent migration on the computing node that does not perform the first concurrent migration in the computing cluster, and determine that the second batch is concurrently concurrent.
  • the migrated computing node performs the second concurrent migration of the second batch of compute nodes to be concurrently migrated.
  • the processing module 908 includes: an obtaining unit 9081, a first determining unit 9082, an analog migration unit 9083, a second determining unit 9084, a third determining unit 9085, a fourth determining unit 9086, and a concurrent migration unit 9087;
  • the obtaining unit 9081 is configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the maintenance node that has been maintained and the unmaintained calculate node;
  • the first determining unit 9082 is configured to determine that the computing node whose current load ordering is not zero and the load amount is the smallest is a computing node that is currently to be subjected to the second simulated migration;
  • the simulation node After determining that the calculation node in the current load order is not zero and the load is the smallest, the simulation node is configured to perform the second simulation migration.
  • the node-managed virtual machine migrates to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster;
  • the second determining unit 9084 is configured to determine that the second simulation is currently to be performed.
  • the migrated computing node can be simulated to be vacant.
  • the third determining unit 9085 is executed, if the computing node to be subjected to the second simulated migration is not The last unmaintained computing node returns to perform the obtaining unit 9081; when the load of the computing node currently undergoing the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration When, OK The computing node currently undergoing the second simulated migration cannot be simulated to be vacant, and the fourth determining unit is executed.
  • the third determining unit 9085 is configured to determine that all the unsaved computing nodes are the second batch of computing nodes that are concurrently migrated, and execute the concurrent migration unit 9087;
  • the fourth determining unit 9086 is configured to determine that the computing node whose initial load is smaller than the load of the computing node that is currently performing the second simulated migration is the second computing node that is to be concurrently migrated, and performs concurrent migration.
  • the concurrent migration unit 9087 is configured to perform the second concurrent migration on the second batch of compute nodes to be concurrently migrated. And maintaining, by the simulation migration module 9083, at least one of the computing nodes after the second concurrent migration.
  • processing module 908 is further configured to simulate, concurrently migrate, the computing nodes that do not perform the simulated concurrent migration in the computing cluster according to the method for determining the second batch of concurrently migrated computing nodes.
  • An embodiment of the present invention provides an apparatus for migrating a computing node, and the third determining module automatically determines a computing node that performs simulation concurrent migration in a computing node to be concurrently migrated in the computing cluster, and the concurrent migration module performs the determined computing node. Concurrent migration, and then the maintenance module maintains the compute nodes that perform concurrent migration. This makes it possible to automatically determine the number of compute nodes performing concurrent migrations, thereby reducing the time to maintain compute nodes in the compute cluster.
  • the embodiment of the present invention provides a device for migrating a computing node, and the executing entity of the device may be a management node in a computing cluster.
  • the device includes: a processor 1101, a memory 1102;
  • the processor 1101 is configured to obtain a current load order of each computing node in the computing cluster, and a storage 1102, configured to store the current load sequence of each computing node in the computing cluster;
  • the processor 1101 is further configured to: determine that the computing node whose load quantity is not zero and the minimum load quantity in the load sorting is a computing node that is to be subjected to the first simulated migration; and the current first to be simulated migration Compute node managed virtual machine to the first simulated migration target computing node Performing a simulated migration, where the target computing node of the first simulated migration is a computing node in the computing cluster that has a load that is not full and whose load is greater than a load of the computing node that is currently performing the first simulated migration;
  • the processor 1101 is further configured to determine, by the computing node that the initial load is less than the load of the computing node that is currently performing the first simulated migration, as the computing node of the first batch of concurrent migration;
  • the current load of each computing node in the computing cluster needs to be load-sorted, so the processor 1101 is further configured to obtain the computing nodes in the computing cluster.
  • the current load quantity is sorted according to the current load quantity of each computing node, and the current load order of the each computing node is obtained.
  • the memory 1102 stores the current load order of the compute nodes within the compute cluster.
  • the processor 1101 is further configured to: migrate the virtual machine simulation managed by the computing node currently undergoing the first simulated migration to the computing node in the computing cluster that has a load that is not full and has the largest load; The node load of the compute node whose load is not full and the load is the largest is full, and the compute node to be subjected to the first simulation migration has not been vacant, and the other ones in the calculation cluster are selected in descending order of the load amount.
  • the computing node that is not full is loaded, and the remaining virtual machine simulation managed by the computing node currently undergoing the first simulated migration is migrated to the selected computing node.
  • the memory 1102 is further configured to record a target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration; and record the first corresponding to the computing node to be subjected to the first simulated migration.
  • the simulated compute target compute node is used for subsequent pairs in the compute cluster The specific way when each compute node performs concurrent migration.
  • the processor 1102 is further configured to concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to It corresponds to the first simulated migration on the target compute node.
  • the processor 1101 is further configured to use at least one after the first concurrent migration.
  • the compute node is maintained.
  • the processor 1101 is further configured to perform simulation concurrent migration on a computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and use the second batch The compute node to be concurrently migrated performs the second concurrent migration.
  • the processor 1101 is further configured to obtain a current load order of each computing node in the computing cluster, where the current load sorting has been maintained before the second concurrent migration is performed. Compute nodes and compute nodes that are not maintained;
  • the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is the computing node to be subjected to the second simulated migration;
  • the processor 1101 is further configured to perform, by using the virtual machine managed by the computing node that is currently performing the second simulated migration, to the target computing node of the second simulated migration.
  • the target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster;
  • the processor 1101 is further configured to: when the load quantity of the computing node that is currently to undergo the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determine that the current to be performed is the second The simulated migration compute node can be simulated to be vacant. If the compute node to be subjected to the second simulation migration is the last unmaintained compute node, continue to perform the determination that all the unsaved compute nodes are the second batch of concurrent migrations.
  • processor 1101 is further configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated;
  • the processor 1101 is further configured to determine, by the computing node that the initial load is smaller than the load of the computing node to be subjected to the second simulated migration, to the second batch of computing nodes that are to be concurrently migrated;
  • the processor 1101 is further configured to perform maintenance on the at least one of the second concurrently migrated computing nodes after the second concurrent migration is performed on the second batch of concurrently transferred computing nodes.
  • the processor 1101 is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
  • a computer readable medium comprising: the computer readable medium comprising computer executing instructions that, when a central processor of a computer executes the computer to execute an instruction, the computer performs a method of migrating a compute node.
  • An embodiment of the present invention provides an apparatus for migrating a computing node, where a computing node that performs simulated migration in a computing node to be concurrently migrated in a computing cluster is determined by a processor, and a computing node that performs simulated migration of the determined determination is performed. Concurrent migrations are performed on compute nodes that perform concurrent migrations. This makes it possible to automatically determine the number of compute nodes that perform concurrent migrations, thereby achieving the goal of flexible operation, reduced upgrades, or fixed compute node time.
  • the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as the cells may or may not be physical. Units can be located in one place, or they can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without any creative effort.
  • the invention can be implemented by means of software plus necessary general hardware, and of course can also be realized by dedicated hardware including an application specific integrated circuit, a dedicated CPU, a dedicated memory, a dedicated component, etc., but in many cases the former is a better implementation.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a readable storage medium, such as a floppy disk of a computer.
  • U disk mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Acces s Memory), disk or optical disk, etc., including a number of instructions to make a computer device (can It is a personal computer, a server, or a network device, etc.) that performs the methods described in various embodiments of the present invention.
  • a computer device can It is a personal computer, a server, or a network device, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

The present invention relates to the technical field of communication networks. Disclosed are a compute node migration method and device, capable of flexibly and concurrently migrating a compute node according to the load of each compute node in a compute cluster. In an embodiment of the present invention, the method comprises: obtaining the current load sequence of each compute node in a compute cluster; determining the compute node having the least but not zero load in the load sequence as a compute node to be currently subjected to first analog migration; conducting analog migration on a virtual machine managed by the compute node to be currently subjected to first analog migration to the target compute node of the first analog migration; determining the compute node having an original load less than the load of the compute node to be currently subjected to first analog migration as the first batch of compute nodes to be concurrently migrated; and then conducting first concurrent migration on the first batch of compute nodes to be concurrently migrated. The solution provided in the embodiment of the present invention is suitable for compute node migration.

Description

一种迁移计算节点的方法及装置 技术领域  Method and device for migrating computing nodes
本发明涉及通信技术领域, 尤其涉及一种迁移计算节点的方法及装置。 背景技术  The present invention relates to the field of communications technologies, and in particular, to a method and apparatus for migrating a computing node. Background technique
通信网络技术领域中的云计算, 是一种通过 Internet以服务的方式提供 动态可伸缩的虚拟化的资源的计算模式。 对云计算***进行升级或者修复时 需要先迁空计算节点中的虚拟机, 即将计算节点管理的虚拟机迁移到其它计 算节点上, 在本计算节点负载为零的情况下对本计算节点进行维护, 例如升 级或者修复等工作。 计算节点的维护可以采用以下两种技术方案: 方案一, 在一个计算集群内, 逐一将计算集群内的计算节点进行迁空, 然后对迁空后 的每一个计算节点逐一进行升级或者修复; 方案二, 在一个计算集群内, 通 过人工设置一个并发迁移计算节点的数目, 对设置的该数目对应的计算节点 进行迁移, 并对迁空后的计算节点并行升级或者修复。  Cloud computing in the field of communication network technology is a computing mode that provides dynamically scalable virtualized resources in a service manner over the Internet. When upgrading or repairing a cloud computing system, the virtual machine in the computing node needs to be emptied first, that is, the virtual machine managed by the computing node is migrated to another computing node, and the computing node is maintained under the condition that the load of the computing node is zero. For example, upgrade or repair work. The following two technical solutions can be used for the maintenance of the compute node: Solution 1: In a computing cluster, the compute nodes in the compute cluster are emptied one by one, and then each compute node after the vacancy is upgraded or repaired one by one; Second, in a computing cluster, by manually setting a number of concurrent migration computing nodes, the computing nodes corresponding to the set number are migrated, and the migrated computing nodes are upgraded or repaired in parallel.
然而, 由于逐一对计算节点进行迁移时, 导致维护时间长; 方法二虽然 进行了并发迁移后的分批次维护, 但一次迁移的计算节点的数目是由人工设 置的一个固定值, 不够灵活且迁移效率还有进一步提升的空间。 发明内容  However, due to the migration of one pair of compute nodes, the maintenance time is long. In the second method, although the batch maintenance after concurrent migration is performed, the number of compute nodes in one migration is a fixed value manually set, which is not flexible enough. There is room for further improvement in migration efficiency. Summary of the invention
本发明的实施例提供一种迁移计算节点的方法及装置, 可以根据计算集 群内各计算节点的负载量情况对计算节点进行灵活的并发迁移。  Embodiments of the present invention provide a method and apparatus for migrating a computing node, which can perform flexible concurrent migration of the computing node according to the load condition of each computing node in the computing cluster.
一方面, 本发明的实施例提供一种迁移计算节点的方法, 包括: 步骤 A:获得计算集群内的各计算节点的当前负载排序;  In one aspect, an embodiment of the present invention provides a method for migrating a computing node, including: Step A: obtaining a current load order of each computing node in a computing cluster;
步骤 B:确定所述负载排序中负载量不为零并且负载量最小的计算节点为 当前待进行第一模拟迁移的计算节点;  Step B: determining that the computing node whose load quantity is not zero and the load quantity is the smallest in the load sorting is a computing node that is to be subjected to the first simulated migration;
步骤 C:将所述当前待进行第一模拟迁移的计算节点管理的虚拟机向第一 模拟迁移的目标计算节点进行模拟迁移, 所述第一模拟迁移的目标计算节点 为所述计算集群中负载未满且负载量大于所述当前待进行第一模拟迁移的计 算节点的负载量的计算节点; Step C: Perform simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, and the target computing node of the first simulated migration a computing node that is not full in the computing cluster and has a load greater than a load amount of the computing node that is currently performing the first simulated migration;
当所述待进行第一模拟迁移的计算节点的负载量小于所述第一模拟迁移 的目标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移的计 算节点能够被模拟迁空,返回执行步骤 A; 当所述待进行第一模拟迁移的计算 节点的负载量大于所述第一模拟迁移的目标计算节点的负载余量之和时, 确 定所述当前待进行第一模拟迁移的计算节点不能够被模拟迁空, 执行步骤 D; 步骤 D:确定初始负载量小于所述当前待进行第一模拟迁移的计算节点的 负载量的计算节点为第一批待并发迁移的计算节点;  Determining that the computing node to be subjected to the first simulated migration can be simulated when the load of the computing node to be subjected to the first simulated migration is smaller than the sum of the load margins of the target computing node of the first simulated migration If the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of the target computing node of the first simulated migration, determining that the current to be performed first is performed. The computing node that simulates the migration cannot be simulated and vacant, and step D is performed; Step D: determining that the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first batch of concurrent migration calculate node;
步骤 E: 将所述第一批待并发迁移的计算节点进行第一并发迁移。  Step E: Perform the first concurrent migration of the first batch of computing nodes to be concurrently migrated.
在本发明的另一实施例中, 所述获得计算集群内的各计算节点的当前负 载排序包括:  In another embodiment of the present invention, the obtaining the current load order of each computing node in the computing cluster includes:
获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的 当前负载量进行排序, 获得所述各计算节点的当前负载排序。  Obtaining a current load quantity of each computing node in the computing cluster, and sorting according to a current load quantity of each computing node, to obtain a current load ordering of each computing node.
在本发明的另一实施例中, 所述将所述当前待进行第一模拟迁移的计算 节点管理的虚拟机向第一模拟迁移的目标计算节点进行模拟迁移, 所述待进 行第一模拟迁移的目标计算节点为所述计算集群中负载未满且负载量大于所 述当前待进行第一模拟迁移的计算节点的负载量的计算节点, 包括:  In another embodiment of the present invention, the virtual machine managed by the computing node to be subjected to the first simulated migration is simulated to migrate to the target computing node of the first simulated migration, where the first simulated migration is to be performed. The target computing node is a computing node in the computing cluster whose load is not full and the load is greater than the load of the computing node to be subjected to the first simulated migration, including:
将所述当前待进行第一模拟迁移的计算节点管理的虚拟机模拟迁移到所 述计算集群中负载未满且负载量最大的计算节点上; 若所述负载未满且负载 量最大的计算节点的节点负载量已满而所述当前待进行第一模拟迁移的计算 节点还未迁空, 按照负载量依次递减的顺序, 选择所述计算集群中的其他负 载未满的计算节点, 并将所述当前待进行第一模拟迁移的计算节点管理的剩 余的虚拟机模拟迁移到所选择的计算节点上。  Migrating the virtual machine simulation managed by the computing node currently undergoing the first simulated migration to the computing node in the computing cluster where the load is not full and the load is the largest; if the load is not full and the load is the largest The node load is full, and the computing node that is currently to be subjected to the first simulated migration has not been vacant, and the computing nodes that are not full of other loads in the computing cluster are selected in the order of decreasing load amount, and The remaining virtual machine simulations of the computing node management currently performing the first simulated migration are migrated to the selected computing node.
在本发明的另一实施例中, 所述将所述当前待进行第一模拟迁移的计算 节点管理的虚拟机向第一模拟迁移的目标计算节点进行迁移之后, 还包括: 步骤 C,记录每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目标 计算节点; In another embodiment of the present invention, after the virtual machine managed by the computing node to be subjected to the first simulated migration is migrated to the target computing node of the first simulated migration, the method further includes: Step C: recording each The target of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration calculate node;
所述将所述待并发迁移的计算节点进行并发迁移包括:  Performing concurrent migration of the computing node to be concurrently migrated includes:
根据记录的每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的 目标计算节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁移到其对 应的第一模拟迁移的目标计算节点上。  The virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the target of the corresponding first simulated migration according to the target computing node of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration. On the compute node.
在将所述第一批待并发迁移的计算节点进行第一并发迁移之后, 还包括: 步骤 F: 对第一并发迁移后的至少一个所述计算节点进行维护。  After performing the first concurrent migration on the first batch of concurrently transferred computing nodes, the method further includes: Step F: performing maintenance on at least one of the computing nodes after the first concurrent migration.
在本发明的另一实施例中, 当对第一并发迁移后的至少一个所述计算节 点进行维护之后, 还包括:  In another embodiment of the present invention, after performing maintenance on the at least one of the computing nodes after the first concurrent migration, the method further includes:
步骤 G:将所述计算集群中没有进行第一并发迁移的计算节点进行模拟并 发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁移的 计算节点进行第二并发迁移。  Step G: Perform simulation concurrent migration on the computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and perform the second batch of computing nodes to be concurrently migrated to perform the second Concurrent migration.
在本发明的另一实施例中, 所述将所述计算集群中没有进行第一并发迁 移的计算节点进行模拟并发迁移, 确定第二批待并发迁移的计算节点, 并将 所述第二批待并发迁移的计算节点进行第二并发迁移包括:  In another embodiment of the present invention, the computing node that does not perform the first concurrent migration in the computing cluster performs a simulated concurrent migration, determines a second batch of computing nodes to be concurrently migrated, and the second batch The second concurrent migration of the compute node to be concurrently migrated includes:
步骤 H: 获得计算集群内的各计算节点的当前负载排序, 所述当前负载排 序区分已进行维护的计算节点和未进行维护的计算节点;  Step H: Obtain a current load order of each compute node in the computing cluster, where the current load order distinguishes between the compute node that has been maintained and the compute node that is not maintained;
步骤 I:确定当前负载排序中负载量不为零并且负载量最小的计算节点为 当前待进行第二模拟迁移的计算节点;  Step I: determining that the computing node in the current load ordering load is not zero and the load amount is the smallest, and the computing node to be subjected to the second simulated migration is the computing node;
步骤 J:将所述当前待进行第二模拟迁移的计算节点管理的虚拟机向第二 模拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标计算节点为所 述计算集群中已进行维护的计算节点;  Step J: migrating the virtual machine managed by the computing node currently undergoing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is performed in the computing cluster Maintained compute node;
当所述当前待进行第二模拟迁移的计算节点的负载量小于所述第二模拟 迁移的目标计算节点的负载余量之和时, 确定当前待进行第二模拟迁移的计 算节点能够被模拟迁空, 如果当前待进行第二模拟迁移的计算节点为最后一 个未进行维护的计算节点, 执行步骤 K , 如果当前待进行第二模拟迁移的计算 节点不是最后一个未进行维护的计算节点, 返回执行步骤 H; 当所述当前待进 行第二模拟迁移的计算节点的负载量大于所述第二模拟迁移的目标计算节点 的负载余量之和时, 确定当前待进行第二模拟迁移的计算节点不能够被模拟 迁空, 执行步骤 L; When the load of the computing node to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determining that the computing node to be subjected to the second simulated migration can be simulated If the compute node to be subjected to the second simulation migration is the last unsaved compute node, perform step K. If the compute node to be subjected to the second simulation migration is not the last unsaved compute node, return to execution. Step H; when the current pending When the load of the computing node of the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration, it is determined that the computing node to be subjected to the second simulated migration cannot be simulated to be emptied, and the steps are performed. L;
步骤 K: 确定所有未进行维护的计算节点为第二批待并发迁移的计算节 点, 执行步骤 M;  Step K: Determine all the compute nodes that are not to be maintained as the second batch of compute nodes to be concurrently migrated, and perform step M;
步骤 L:确定初始负载量小于所述当前待进行第二模拟迁移的计算节点的 负载量的计算节点为第二批待并发迁移的计算节点, 执行步骤 L;  Step L: determining that the calculation node whose initial load is smaller than the load of the computing node to be subjected to the second simulation migration is the second batch of computing nodes to be concurrently migrated, and performing step L;
步骤 M: 将所述第二批待并发迁移的计算节点进行第二并发迁移。  Step M: Perform the second concurrent migration of the second batch of compute nodes to be concurrently migrated.
在将所述第二批待并发迁移的计算节点进行第二并发迁移之后, 还包括: 步骤 N: 对第二并发迁移后的至少一个所述计算节点进行维护。  After performing the second concurrent migration on the second batch of concurrently migrated computing nodes, the method further includes: Step N: performing maintenance on at least one of the computing nodes after the second concurrent migration.
在本发明的另一实施例中, 当对第二并发迁移后的至少一个所述计算节 点进行维护之后, 还包括:  In another embodiment of the present invention, after performing maintenance on the at least one of the computing nodes after the second concurrent migration, the method further includes:
步骤 0:按照确定第二批待并发迁移的计算节点的方法, 将所述计算集群 中没有进行模拟并发迁移的计算节点进行模拟并发迁移。  Step 0: Perform computational concurrent migration of the compute nodes in the computing cluster that are not subjected to the simulation concurrent migration according to the method of determining the second batch of compute nodes to be concurrently migrated.
每个所述计算节点的管理的虚拟机负载包括: 所述计算节点管理的虚拟 机的中央处理器 CPU之和、 所述计算节点管理的虚拟机的内存之和、 所述计 算节点管理的虚拟机的带宽中的至少一个。  The managed virtual machine load of each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
另一方面, 本发明的实施例提供一种迁移计算节点的装置, 包括: 获得模块, 用于获得计算集群内的各计算节点的当前负载排序; 第一确定模块, 用于确定所述负载排序中负载量不为零并且负载量最小 的计算节点为当前待进行第一模拟迁移的计算节点;  In another aspect, an embodiment of the present invention provides an apparatus for migrating a computing node, including: an obtaining module, configured to obtain a current load ordering of each computing node in a computing cluster; and a first determining module, configured to determine the load sorting The computing node whose medium load is not zero and the load is the smallest is the computing node currently undergoing the first simulated migration;
第一模拟迁移模块, 用于将所述当前待进行第一模拟迁移的计算节点管 理的虚拟机向第一模拟迁移的目标计算节点进行模拟迁移, 所述第一模拟迁 移的目标计算节点为所述计算集群中负载未满且负载量大于所述当前待进行 第一模拟迁移的计算节点的负载量的计算节点;  a first simulation migration module, configured to perform a simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is Calculating a computing node in the cluster that is not full in load and whose load is greater than a load of the computing node that is currently performing the first simulated migration;
第二确定模块, 用于当所述待进行第一模拟迁移的计算节点的负载量小 于所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前待进 行第一模拟迁移的计算节点能够被模拟迁空, 返回执行所述获得模块; 当所 述待进行第一模拟迁移的计算节点的负载量大于所述第一模拟迁移的目标计 算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移的计算节点不 能够被模拟迁空, 执行第三确定模块; a second determining module, configured to determine, when the load amount of the computing node to be subjected to the first simulated migration is smaller than a load balance of the target computing node of the first simulated migration, determining the current pending The computing node that performs the first simulated migration can be simulated to be emptied, and the execution of the obtaining module is returned; when the load of the computing node to be subjected to the first simulated migration is greater than the load of the target computing node of the first simulated migration When the sum of the quantities is determined, the computing node that is currently to be subjected to the first simulated migration cannot be simulated to be vacant, and the third determining module is executed;
所述第三确定模块, 用于确定初始负载量小于所述当前待进行第一模拟 迁移的计算节点的负载量的计算节点为第一批待并发迁移的计算节点;  The third determining module is configured to determine, by the computing node that the initial load is smaller than the load of the computing node that is currently performing the first simulated migration, to be the first computing node that is to be concurrently migrated;
并发迁移模块, 将所述第一批待并发迁移的计算节点进行第一并发迁移。 在本发明的另一实施例中, 所述获得模块用于:  The concurrent migration module performs the first concurrent migration of the first batch of computing nodes to be concurrently migrated. In another embodiment of the present invention, the obtaining module is configured to:
获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的 当前负载量进行排序, 获得所述各计算节点的当前负载排序。  Obtaining a current load quantity of each computing node in the computing cluster, and sorting according to a current load quantity of each computing node, to obtain a current load ordering of each computing node.
所述第一模拟迁移模块包括:  The first analog migration module includes:
第一模拟迁移单元, 用于将所述当前待进行第一模拟迁移的计算节点管 理的虚拟机模拟迁移到所述计算集群中负载未满且负载量最大的计算节点 上; 若所述负载未满且负载量最大的计算节点的节点负载量已满而所述当前 待进行第一模拟迁移的计算节点还未迁空, 按照负载量依次递减的顺序, 选 择所述计算集群中的其他负载未满的计算节点, 并将所述当前待进行第一模 拟迁移的计算节点管理的剩余的虚拟机模拟迁移到所选择的计算节点上。  a first simulation migration unit, configured to migrate a virtual machine simulation managed by the computing node currently undergoing the first simulated migration to a computing node in the computing cluster that has a load that is not full and has the largest load; if the load is not The node load of the compute node with the largest load and the largest load is full, and the compute node to be subjected to the first simulation migration has not been vacant, and the other loads in the compute cluster are selected in the order of decreasing load amount. A full computing node is configured to migrate the remaining virtual machine simulations managed by the computing node currently undergoing the first simulated migration to the selected computing node.
所述第一模拟迁移模块, 还包括:  The first analog migration module further includes:
记录单元, 用于记录每个待进行第一模拟迁移的计算节点对应的第一模 拟迁移的目标计算节点。  a recording unit, configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
所述并发迁移模块用于: 根据记录的每个待进行第一模拟迁移的计算节 点对应的第一模拟迁移的目标计算节点, 将所述待并发迁移的计算节点管理 的虚拟机并发迁移到其对应的第一模拟迁移的目标计算节点上。  The concurrent migration module is configured to: concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration Corresponding to the first simulated migration on the target compute node.
在本发明的另一实施例中, 所述装置, 还包括:  In another embodiment of the present invention, the device further includes:
维护模块, 用于对第一并发迁移后的至少一个所述计算节点进行维护。 在本发明的另一实施例中, 所述装置, 还包括:  And a maintenance module, configured to perform maintenance on at least one of the computing nodes after the first concurrent migration. In another embodiment of the present invention, the device further includes:
处理模块, 用于将所述计算集群中没有进行第一并发迁移的计算节点进 行模拟并发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并 发迁移的计算节点进行第二并发迁移。 a processing module, configured to enter a computing node that does not perform the first concurrent migration in the computing cluster The row simulates a concurrent migration, determines a second batch of compute nodes to be concurrently migrated, and performs a second concurrent migration of the second batch of compute nodes to be concurrently migrated.
所述处理模块包括:  The processing module includes:
获得单元, 用于获得计算集群内的各计算节点的当前负载排序, 所述当 前负载排序区分已进行维护的计算节点和未进行维护的计算节点;  An obtaining unit, configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the calculated computing node and the unmaintained computing node;
第一确定单元, 用于确定当前负载排序中负载量不为零并且负载量最小 的计算节点为当前待进行第二模拟迁移的计算节点;  a first determining unit, configured to determine that the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is a computing node that is currently to undergo the second simulated migration;
模拟迁移单元, 用于将所述当前待进行第二模拟迁移的计算节点管理的 虚拟机向第二模拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标 计算节点为所述计算集群中已进行维护的计算节点;  And a simulated migration unit, configured to migrate the virtual machine managed by the computing node currently undergoing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is the computing cluster a compute node that has been maintained;
第二确定单元, 用于当所述当前待进行第二模拟迁移的计算节点的负载 量小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进 行第二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟迁移 的计算节点为最后一个未进行维护的计算节点, 执行第三确定单元, 如果当 前待进行第二模拟迁移的计算节点不是最后一个未进行维护的计算节点, 返 回执行所述获得单元; 当所述当前待进行第二模拟迁移的计算节点的负载量 大于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行 第二模拟迁移的计算节点不能够被模拟迁空, 执行第四确定单元;  a second determining unit, configured to determine that the second simulated migration is to be performed when the load of the computing node to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration The computing node can be simulated to be vacant. If the computing node to be subjected to the second simulated migration is the last unmaintained computing node, the third determining unit is executed, if the computing node to be subjected to the second simulated migration is not the last one. Calculating the node that is not in maintenance, returning to perform the obtaining unit; determining when the load amount of the computing node to be subjected to the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration The computing node currently performing the second simulated migration cannot be simulated to be vacant, and the fourth determining unit is executed;
所述第三确定单元, 用于确定所有未进行维护的计算节点为第二批待并 发迁移的计算节点, 执行并发迁移单元;  The third determining unit is configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated, and execute the concurrent migration unit;
所述第四确定单元, 用于确定初始负载量小于所述当前待进行第二模拟 迁移的计算节点的负载量的计算节点为第二批待并发迁移的计算节点, 执行 并发迁移单元;  The fourth determining unit is configured to determine that the computing node whose initial load is smaller than the load of the computing node to be subjected to the second simulated migration is the second computing node that is to be concurrently migrated, and execute the concurrent migration unit;
所述并发迁移单元, 用于将所述第二批待并发迁移的计算节点进行第二 并发迁移。  And the concurrent migration unit is configured to perform the second concurrent migration by the second batch of compute nodes to be concurrently migrated.
在本发明的另一实施例中, 所述第二模拟迁移模块, 还用于, 对第二并 发迁移后的至少一个所述计算节点进行维护。 所述处理模块, 还用于按照确定第二批待并发迁移的计算节点的方法, 将所述计算集群中没有进行模拟并发迁移的计算节点进行模拟并发迁移。 In another embodiment of the present invention, the second simulated migration module is further configured to perform maintenance on at least one of the computing nodes after the second concurrent migration. The processing module is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
每个所述计算节点管理的虚拟机的负载包括: 所述计算节点管理的虚拟 机的中央处理器 CPU之和、 所述计算节点管理的虚拟机的内存之和、 所述计 算节点管理的虚拟机的带宽中的至少一个。  The load of the virtual machine managed by each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
另一方面, 本发明实施例提供另一种迁移计算节点的装置, 包括: 处理器, 用于获得计算集群内的各计算节点的当前负载排序;  On the other hand, an embodiment of the present invention provides another apparatus for migrating a computing node, including: a processor, configured to obtain a current load order of each computing node in the computing cluster;
存储器, 用于所述计算集群内的各计算节点的存储所述当前负载排序; 所述处理器, 还用于确定所述负载排序中负载量不为零并且负载量最小 的计算节点为当前待进行第一模拟迁移的计算节点; 以及将所述当前待进行 第一模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点进行 模拟迁移, 所述第一模拟迁移的目标计算节点为所述计算集群中负载未满且 负载量大于所述当前待进行第一模拟迁移的计算节点的负载量的计算节点; 以及当所述待进行第一模拟迁移的计算节点的负载量小于所述第一模拟 迁移的目标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移 的计算节点能够被模拟迁空; 当所述待进行第一模拟迁移的计算节点的负载 量大于所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前 待进行第一模拟迁移的计算节点不能够被模拟迁空;  a memory, configured to store, by the computing nodes in the computing cluster, the current load ordering; the processor is further configured to determine that the computing node in the load sorting is not zero and the load is the smallest Performing a first simulation migration of the computing node; and performing a simulated migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, the target computing node of the first simulated migration a computing node in the computing cluster that is not full in load and whose load is greater than a load of the computing node that is currently performing the first simulated migration; and when the load of the computing node to be subjected to the first simulated migration is less than Determining, by the sum of the load margins of the target computing nodes of the first simulated migration, that the computing nodes currently performing the first simulated migration can be simulated to be vacant; when the load of the computing nodes to be subjected to the first simulated migration is performed When the amount is greater than the sum of the load margins of the target computing nodes of the first simulated migration, determining that the current to be performed An analog computing node can not be migrated to move empty simulation;
处理器, 还用于确定初始负载量小于所述当前待进行第一模拟迁移的计 算节点的负载量的计算节点为第一批待并发迁移的计算节点;  The processor is further configured to determine, by the computing node that the initial load is smaller than the load of the computing node that is currently performing the first simulated migration, to be the first computing node that is to be concurrently migrated;
以及将所述第一批待并发迁移的计算节点进行第一并发迁移。  And performing, by the first batch of computing nodes to be concurrently migrated, the first concurrent migration.
在本发明的另一实施例中, 所述处理器还用于:  In another embodiment of the present invention, the processor is further configured to:
获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的 当前负载量进行排序, 获得所述各计算节点的当前负载排序。  Obtaining a current load quantity of each computing node in the computing cluster, and sorting according to a current load quantity of each computing node, to obtain a current load ordering of each computing node.
在本发明的另一实施例中, 所述处理器还用于, 将所述当前待进行第一 模拟迁移的计算节点管理的虚拟机模拟迁移到所述计算集群中负载未满且负 载量最大的计算节点上; 若所述负载未满且负载量最大的计算节点的负载量 已满而所述当前待进行第一模拟迁移的计算节点还未迁空, 按照负载量依次 递减的顺序, 选择所述计算集群中的其他负载未满的计算节点, 并将所述当 前待进行第一模拟迁移的计算节点管理的剩余的虚拟机模拟迁移到所选择的 计算节点上。 In another embodiment of the present invention, the processor is further configured to: migrate the virtual machine simulation managed by the computing node currently undergoing the first simulated migration to the computing cluster, where the load is not full and the load is the largest. On the compute node; if the load is not full and the load of the compute node with the largest load is If the computing node that is currently to be subjected to the first simulated migration has not been vacated, the computing nodes that are not full of other loads in the computing cluster are selected in the order of decreasing load amount, and the current pending The remaining virtual machine simulations managed by the compute nodes of the first simulated migration are migrated to the selected compute nodes.
在本发明的另一实施例中, 所述存储器, 还用于记录每个待进行第一模 拟迁移的计算节点对应的第一模拟迁移的目标计算节点;  In another embodiment of the present invention, the memory is further configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration;
所述处理器, 还用于根据记录的每个待进行第一模拟迁移的计算节点对 应的第一模拟迁移的目标计算节点, 将所述待并发迁移的计算节点管理的虚 拟机并发迁移到其对应的第一模拟迁移的目标计算节点上。  The processor is further configured to concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration. Corresponding to the first simulated migration on the target compute node.
所述处理器, 还用于对第一并发迁移后的至少一个所述计算节点进行维 护。  The processor is further configured to maintain at least one of the computing nodes after the first concurrent migration.
所述处理器, 还用于将所述计算集群中没有进行第一并发迁移的计算节 点进行模拟并发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批 待并发迁移的计算节点进行第二并发迁移。  The processor is further configured to perform simulation concurrent migration on a computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and perform the second batch to be concurrently migrated. The compute node performs a second concurrent migration.
在本发明的另一实施例中, 所述处理器: 还用于获得计算集群内的各计 算节点的当前负载排序, 所述当前负载排序区分已进行维护的计算节点和未 进行维护的计算节点;  In another embodiment of the present invention, the processor is further configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the maintenance node that has been maintained and the computing node that is not maintained. ;
以及确定当前负载排序中负载量不为零并且负载量最小的计算节点为当 前待进行第二模拟迁移的计算节点;  And determining, by the computing node in the current load order that the load quantity is not zero and the load quantity is the smallest, the computing node that is to be subjected to the second simulated migration;
所述处理器, 还用于将所述当前待进行第二模拟迁移的计算节点管理的 虚拟机向第二模拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标 计算节点为所述计算集群中已进行维护的计算节点;  The processor is further configured to migrate the virtual machine managed by the computing node currently performing the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is the Calculate the compute nodes that have been maintained in the cluster;
所述处理器, 还用于当所述当前待进行第二模拟迁移的计算节点的负载 量小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进 行第二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟迁移 的计算节点为最后一个未进行维护的计算节点, 执行确定所有未进行维护的 计算节点为第二批待并发迁移的计算节点; 如果当前待进行第二模拟迁移的 计算节点不是最后一个未进行维护的计算节点, 返回执行对计算节点的负载 排序; 当所述当前待进行第二模拟迁移的计算节点的负载量大于所述第二模 拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第二模拟迁移的 计算节点不能够被模拟迁空, 执行确定初始负载量小于所述当前待进行第二 模拟迁移的计算节点的负载量的计算节点为第二批待并发迁移的计算节点; 所述处理器, 还用于确定所有未进行维护的计算节点为第二批待并发迁 移的计算节点; The processor is further configured to: when the load amount of the computing node that is currently to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determine that the second simulation is currently to be performed. The migrated compute node can be simulated to be vacant. If the compute node to be subjected to the second simulated migration is the last unsaved compute node, perform the determination that all the unsaved compute nodes are the second batch of compute nodes to be concurrently migrated. ; if the current second simulation migration is to be performed The computing node is not the last un-maintained computing node, and returns to perform load sorting on the computing node; when the load of the computing node to be subjected to the second simulated migration is greater than the load of the target computing node of the second simulated migration When the sum of the balances is determined, it is determined that the computing node to be subjected to the second simulated migration cannot be simulated to be vacant, and the computing node that determines that the initial load is smaller than the load of the computing node to be subjected to the second simulated migration is The second batch of computing nodes to be concurrently migrated; the processor is further configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated;
所述处理器, 还用于确定初始负载量小于所述当前待进行第二模拟迁移 的计算节点的负载量的计算节点为第二批待并发迁移的计算节点;  The processor is further configured to determine, by the computing node that the initial load is less than the load of the computing node to be subjected to the second simulated migration, to the second batch of computing nodes that are to be concurrently migrated;
以及将所述第二批待并发迁移的计算节点进行第二并发迁移。  And performing, by the second batch of computing nodes to be concurrently migrated, a second concurrent migration.
在本发明的另一实施例中, 所述处理器, 还用于对第二并发迁移后的至 少一个所述计算节点进行维护。  In another embodiment of the present invention, the processor is further configured to perform maintenance on at least one of the computing nodes after the second concurrent migration.
所述处理器, 还用于按照确定第二批待并发迁移的计算节点的方法, 将 所述计算集群中没有进行模拟并发迁移的计算节点进行模拟并发迁移。  The processor is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
一种计算机可读介质, 其特征在于, 包括: 所述计算机可读介质包含计 算机执行指令, 当计算机的中央处理器执行所述计算机执行指令时, 所述计 算机执行迁移计算节点的方法。  A computer readable medium, comprising: the computer readable medium comprising computer execution instructions, the computer executing a method of migrating a compute node when a central processor of the computer executes the computer to execute an instruction.
本发明实施例提供一种迁移计算节点的方法及装置, 通过获得计算集群 内的各计算节点的当前负载排序, 确定所述负载排序中负载量不为零并且负 载量最小的计算节点为当前待进行第一模拟迁移的计算节点, 以及将所述当 前待进行第一模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算 节点进行模拟迁移, 所述第一模拟迁移的目标计算节点为所述计算集群中负 载未满且负载量大于所述当前待进行第一模拟迁移的计算节点的负载量的计 算节点, 然后确定初始负载量小于所述当前待进行第一模拟迁移的计算节点 的负载量的计算节点为第一批待并发迁移的计算节点, 将所述第一批待并发 迁移的计算节点进行第一并发迁移。 与现有技术相比, 本发明实施例可以根 据计算集群内各计算节点的负载情况对计算节点进行灵活的并发迁移, 从而 进一步提升计算节点迁移的灵活性和效率。 附图说明 施例或现有技术描述中所需要使用的附图作筒单地介绍, 显而易见地, 下面 描述中的附图仅仅是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获得其他的附图。 An embodiment of the present invention provides a method and an apparatus for migrating a computing node. By obtaining a current load order of each computing node in the computing cluster, it is determined that the computing node in the load sorting is not zero and the load is the smallest. Performing a first simulation migration of the computing node, and performing virtual migration of the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, the target computing node of the first simulated migration And calculating, by the computing node, that the load in the cluster is not full and the load is greater than the load of the computing node that is currently performing the first simulated migration, and then determining that the initial load is smaller than the computing node that is currently performing the first simulated migration. The computing node of the load is the first batch of computing nodes to be concurrently migrated, and the first batch of concurrently migrated computing nodes perform the first concurrent migration. Compared with the prior art, the embodiment of the present invention can perform flexible concurrent migration on the computing node according to the load condition of each computing node in the computing cluster, thereby Further increase the flexibility and efficiency of compute node migration. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are to be regarded as Other drawings may also be obtained from these drawings without the inventive labor.
图 1为本发明实施例 1提供的一种迁移计算节点的方法的流程图; 图 2为本发明实施例 1提供的一种对虚拟机的负载量进行排序的示意图; 图 3为本发明实施例 1提供的另一种迁移计算节点的方法的流程图; 图 4为本发明实施例 1提供的确定第一批进行维护的计算节点时的数据 分析示意图;  1 is a flowchart of a method for migrating a computing node according to Embodiment 1 of the present invention; FIG. 2 is a schematic diagram of sorting a load of a virtual machine according to Embodiment 1 of the present invention; FIG. 4 is a flowchart of a method for migrating a computing node according to Embodiment 1 of the present invention; FIG. 4 is a schematic diagram of data analysis when determining a first batch of computing nodes for performing maintenance according to Embodiment 1 of the present invention;
图 5为本发明实施例 1提供的确定第一批待并发迁移的计算节点的方法 的流程图;  5 is a flowchart of a method for determining a first batch of compute nodes to be concurrently migrated according to Embodiment 1 of the present invention;
图 6为本发明实施例 1提供的确定第二批待并发迁移的计算节点的方法 的流程图;  6 is a flowchart of a method for determining a second batch of compute nodes to be concurrently migrated according to Embodiment 1 of the present invention;
图 Ί为本发明实施例 1提供的确定第二批进行维护的计算节点时的数据 分析示意图;  Figure Ί is a schematic diagram of data analysis when determining a second batch of computing nodes for maintenance according to Embodiment 1 of the present invention;
图 8为本发明实施例 1提供的确定第三批进行维护的计算节点时的数据 分析示意图;  8 is a schematic diagram of data analysis when determining a third batch of computing nodes for maintenance according to Embodiment 1 of the present invention;
图 9为本发明实施例 2提供的一种迁移计算节点的装置的框图; 图 10为本发明实施例 2提供的另一种迁移计算节点的装置的框图; 图 11为本发明实施例 2提供的另一种迁移计算节点的装置的框图。 具体实施方式  FIG. 9 is a block diagram of an apparatus for migrating a computing node according to Embodiment 2 of the present invention; FIG. 10 is a block diagram of another apparatus for migrating a computing node according to Embodiment 2 of the present invention; Another block diagram of a device that migrates compute nodes. detailed description
下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例仅仅是本发明一部分实施例, 而 不是全部的实施例。 基于本发明中的实施例, 本领域普通技术人员在没有作 出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。 实施例 1 The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all of the embodiments. Based on the embodiments of the present invention, those of ordinary skill in the art do not make All other embodiments obtained under the premise of creative labor are within the scope of the invention. Example 1
如图 1 所示, 本发明实施例提供一种迁移计算节点的方法的流程图, 该 方法的执行主体为计算集群内的管理节点, 该方法包括以下步骤:  As shown in FIG. 1 , an embodiment of the present invention provides a flowchart of a method for migrating a computing node, where an execution entity of the method is a management node in a computing cluster, and the method includes the following steps:
步骤 101 , 获得计算集群内的各计算节点的当前负载排序;  Step 101: Obtain a current load order of each computing node in the computing cluster.
计算集群用于管理多个计算节点, 计算集群由一个管理节点和若干个计 算节点组成。 其中, 管理节点用于管理该若干个计算节点, 以及按照某种负 载均衡策略将接收到的任务请求分配给相对空闲的计算节点, 任务请求为管 理节点发送给计算节点的, 以便该计算节点处理此任务请求。 计算节点也可 以称为主机, 在云计算环境中计算节点为其管理的虚拟机分配虚拟计算资源 的节点, 其用于任务请求的处理执行。  A computing cluster is used to manage multiple compute nodes. A compute cluster consists of one management node and several compute nodes. The management node is configured to manage the plurality of computing nodes, and allocate the received task request to the relatively idle computing node according to a certain load balancing policy, where the task request is sent to the computing node by the management node, so that the computing node processes This task request. A compute node may also be referred to as a host. In a cloud computing environment, a compute node allocates a virtual compute resource node to a virtual machine it manages for processing execution of a task request.
在本步骤中, 获得计算集群内各计算节点的当前负载量, 根据各计算节 点的当前负载量进行排序, 获得各计算节点的当前负载排序。 可选的, 可以 根据各计算节点的当前负载量按照从小到大进行排序, 或者根据各计算节点 的当前负载量按照从大到小进行排序。 在本实施例中, 可以按照当前负载量 从小到大进行排序。  In this step, the current load quantity of each computing node in the computing cluster is obtained, and the current load quantity of each computing node is sorted to obtain the current load order of each computing node. Optionally, the current load of each computing node may be sorted according to the current load amount, or according to the current load of each computing node, according to the largest to smallest. In this embodiment, the sorting can be performed from small to large according to the current load amount.
其中, 每个计算节点管理的虚拟机的负载量包括以下因素之一或其任意 组合: 计算节点管理的虚拟机的 CPU之和、 计算节点管理的虚拟机的内存之 和、 或者计算节点管理的虚拟机的带宽。 例如, 可以按照计算节点管理的虚 拟机的 CPU之和为主对计算节点进行排序, 当然也可以按照计算节点管理的 虚拟机的内存之和对计算节点进行排序, 或者, 按照计算节点管理的虚拟机 的带宽对计算节点进行排序。  The load of the virtual machine managed by each computing node includes one of the following factors or any combination thereof: the sum of the CPUs of the virtual machines managed by the compute nodes, the sum of the memory of the virtual machines managed by the compute nodes, or the management of the compute nodes The bandwidth of the virtual machine. For example, the computing nodes may be sorted according to the sum of the CPUs of the virtual machines managed by the computing nodes. Of course, the computing nodes may be sorted according to the sum of the memory of the virtual machines managed by the computing nodes, or the virtual nodes are managed according to the computing nodes. The bandwidth of the machine sorts the compute nodes.
步骤 102 ,确定当前负载排序中负载量不为零并且负载量最小的计算节点 为当前待进行第一模拟迁移的计算节点;  Step 102: Determine that the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is the computing node that is currently to perform the first simulated migration;
其中, 在计算集群中可能出现负载量为零的计算节点, 例如根据实际需 要, 可以确定一个计算集群内进行维护的计算节点为 5个, 对这 5个计算节 点按照其管理的虚拟机的负载量进行排序, 例如按照计算节点管理的虚拟机 的 CPU之和从小到大的顺序进行排列。 计算节点 1管理的虚拟机的 CPU之和 为 0 , 即计算节点 1的负载量 0; 计算节点 2的负载量为 10%; 计算节点 3的 负载量为 30%; 计算节点 4的负载量为 40%; 计算节点 5的负载量为 75%, 则 当前待进行第一模拟迁移的计算节点为计算节点 2。 In the computing cluster, a computing node with a zero load may be generated. For example, according to actual needs, it may be determined that five computing nodes are maintained in one computing cluster, and the five computing nodes are loaded according to the virtual machines they manage. Sort the quantity, for example, a virtual machine managed by a compute node The sum of the CPUs is arranged in ascending order. The sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount 0 of the compute node 1; the load of the compute node 2 is 10%; the load of the compute node 3 is 30%; and the load of the compute node 4 is 40%; The load of the computing node 5 is 75%, and the computing node currently to be subjected to the first simulated migration is the computing node 2.
或者, 在计算集群中可能出现负载量相同的计算节点, 例如根据实际需 要, 可以确定另一个计算集群内进行维护的计算节点为 6个, 对这 6个计算 节点按照其管理的虚拟机的负载进行排序, 且按照计算节点管理的虚拟机的 CPU之和从小到大的顺序进行排列。计算节点 1管理的虚拟机的 CPU之和为 0 , 即计算节点 1的负载量 0; 计算节点 2的负载量为 10%; 计算节点 3的负载量 为 10%; 计算节点 4的负载量为 30%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 90%, 则当前待进行第一模拟迁移的计算节点为计算节点 2。  Or, in a computing cluster, a computing node with the same amount of load may be generated. For example, according to actual needs, it may be determined that six computing nodes in another computing cluster perform maintenance, and the six computing nodes are loaded according to the virtual machines they manage. Sorting is performed, and the sum of the CPUs of the virtual machines managed by the compute nodes is arranged from small to large. The sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount of the compute node 1 is 0; the load of the compute node 2 is 10%; the load of the compute node 3 is 10%; and the load of the compute node 4 is 30%; the load of the computing node 5 is 75%; the load of the computing node 6 is 90%, and the computing node currently to be subjected to the first simulated migration is the computing node 2.
在本实施例中, 在该计算集群进行负载排序时, 出现负载相同的计算节 点时, 例如上述计算节点 2与计算节点 3的负载量都为 10%, 此时当前负载排 序还要对负载相同的计算节点的其它运行情况进行了解和比较, 其他运行情 况可以是计算节点管理的虚拟机的内存之和、 或者计算节点管理的虚拟机的 带宽。 原则上, 可以对所有计算节点的负载情况进行严格地大小关系的区分, 当然, 也可以不进一步区分负载相同的计算节点的负载和运行情况, 可以随 机地对负载相同的计算节点进行排序, 无论如何排序, 初始负载排序的顺序 用于后续的模拟计算, 若相同负载计算节点在负载排序时被区分了大小, 后 续模拟计算则以初始排序的大小关系为准。  In this embodiment, when the load is sorted by the computing cluster, when the computing nodes with the same load appear, for example, the load of the computing node 2 and the computing node 3 is 10%, and the current load ordering is the same as the load. Other operating conditions of the computing node are understood and compared. Other operating conditions may be the sum of the memory of the virtual machine managed by the computing node, or the bandwidth of the virtual machine managed by the computing node. In principle, the load conditions of all computing nodes can be strictly differentiated. Of course, the load and operation of the computing nodes with the same load can be further distinguished, and the computing nodes with the same load can be randomly sorted, regardless of How to sort, the order of the initial load ordering is used for subsequent simulation calculations. If the same load computing node is differentiated in load sorting, the subsequent simulation calculation is based on the initial sorting size relationship.
步骤 103 ,将当前待进行第一模拟迁移的计算节点管理的虚拟机向第一模 拟迁移的目标计算节点进行模拟迁移, 该第一模拟迁移的目标计算节点为计 算集群中负载未满且负载量大于当前待进行第一模拟迁移的计算节点的负载 量的计算节点;  Step 103: Simulate the virtual machine managed by the computing node that is to be subjected to the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is that the load in the computing cluster is not full and the load is a computing node that is larger than a load amount of a computing node to be subjected to the first simulated migration;
在本步骤中, 当待进行第一模拟迁移的计算节点的负载量小于该第一模 拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第一模拟迁移的 计算节点能够被模拟迁空,返回执行步骤 101 ; 当待进行第一模拟迁移的计算 节点的负载量大于该第一模拟迁移的目标计算节点的负载余量之和时, 确定 当前待进行第一模拟迁移的计算节点不能够被模拟迁空, 执行步骤 104 ; In this step, when the load of the computing node to be subjected to the first simulated migration is smaller than the sum of the load margins of the target computing node of the first simulated migration, it is determined that the computing node to be subjected to the first simulated migration can be simulated. Move to empty, return to step 101; when the first simulation migration is to be performed When the load of the node is greater than the sum of the load balances of the target computing nodes of the first simulated migration, it is determined that the computing node to be subjected to the first simulated migration cannot be simulated to be vacant, and step 104 is performed;
举例而言, 如图 2 所示, 根据实际需要, 可以确定一个计算集群内进行 维护的计算节点为 7个, 对这 7个计算节点按照其管理的虚拟机的负载进行 排序, 例如按照计算节点管理的虚拟机的 CPU之和从小到大的顺序进行排列。 计算节点 1管理的虚拟机的 CPU之和为 0 , 即计算节点 1的负载量 0; 计算节 点 2的负载量为 10%;计算节点 3的负载量为 30%;计算节点 4的负载量为 40%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 90%; 计算节点 7的负载 量为 100%, 确定当前负载排序中负载量不为零并且负载量最小的计算节点为 当前待进行第一模拟迁移的计算节点, 即当前待进行第一模拟迁移的计算节 点为计算节点 2。 该第一模拟迁移的目标计算节点可以为计算节点 3、 计算节 点 4、 计算节点 5或者计算节点 6 , 所有第一模拟迁移的目标计算节点的负载 余量之和为 245%, 其大于计算节点 2的负载量, 所以计算节点 2能够被模拟 迁空, 需要说明的是, 第一次模拟迁移时的第一模拟迁移的目标计算节点为 计算节点 3 , 当然, 对第一模拟迁移的目标计算节点的确定不限于此, 还可以 为计算节点 4、 计算节点 5或者计算节点 6。 即将计算节点 2上 10%的负载量 模拟迁移到第一模拟迁移的目标计算节点 3上, 计算节点 3的负载量为 40%, 计算节点 2上的负载量为 0。 然后记录迁移路径: 将计算节点 2上 10%的负载 量模拟迁移到计算节点 3上。  For example, as shown in FIG. 2, according to actual needs, it can be determined that there are 7 computing nodes in a computing cluster for maintenance, and the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, according to computing nodes. The sum of the CPUs of the managed virtual machines is arranged in ascending order. The sum of the CPUs of the virtual machines managed by the compute node 1 is 0, that is, the load amount of the compute node 1 is 0; the load of the compute node 2 is 10%; the load of the compute node 3 is 30%; and the load of the compute node 4 is 40%; compute node 5 load is 75%; compute node 6 load is 90%; compute node 7 load is 100%, determine the current load sorting load is not zero and the load is the smallest compute node The computing node that is currently undergoing the first simulated migration, that is, the computing node that is currently to undergo the first simulated migration is the computing node 2. The target computing node of the first simulated migration may be the computing node 3, the computing node 4, the computing node 5 or the computing node 6, and the sum of the load margins of all the target computing nodes of the first simulated migration is 245%, which is greater than the computing node. The load of 2, so the compute node 2 can be simulated to be vacant. It should be noted that the target compute node of the first simulated migration at the first simulation migration is the compute node 3, and of course, the target calculation for the first simulated migration. The determination of the node is not limited thereto, and may also be the computing node 4, the computing node 5, or the computing node 6. The 10% load on the compute node 2 is simulated and migrated to the target compute node 3 of the first simulated migration. The load on compute node 3 is 40%, and the load on compute node 2 is zero. Then record the migration path: Migrate the 10% load simulation on compute node 2 to compute node 3.
然后返回执行步骤 101 , 即获得计算集群内的各计算节点的当前负载排 序;  Then, returning to step 101, the current load order of each computing node in the computing cluster is obtained;
当前负载排序为: 计算节点 1的负载量为 0; 计算节点 2的负载量为 0; 计算节点 3的负载量为 40%; 计算节点 4的负载量为 40%; 计算节点 5的负载 量为 75%; 计算节点 6的负载量为 90%; 计算节点 7的负载量为 100%; 根据当 前负载排序确定当前待进行第一模拟迁移的计算节点为计算节点 3 ,所有第一 模拟迁移的目标计算节点的负载余量之和为 90%, 大于计算节点 3的负载量 40%, 所以计算节点 3能够被模拟迁空, 即将计算节点 3上 40%的负载量模拟 迁移到第一模拟迁移的目标计算节点 4上, 计算节点 4的负载量为 80%, 计算 节点 3上的负载量为 0。 然后记录迁移路径: 将计算节点 3上 40%的负载量模 拟迁移到计算节点 4上。 The current load order is: The load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 40%; the load of compute node 4 is 40%; the load of compute node 5 is 75%; the load of the computing node 6 is 90%; the load of the computing node 7 is 100%; the computing node to be subjected to the first simulated migration is determined as the computing node 3 according to the current load order, and all the targets of the first simulated migration are The sum of the load margins of the compute nodes is 90%, which is greater than the load of the compute node 3 by 40%, so the compute node 3 can be simulated to be emptied, that is, the 40% load simulation on the compute node 3 is simulated. Migrating to the target computing node 4 of the first simulated migration, the load of the computing node 4 is 80%, and the load of the computing node 3 is 0. The migration path is then recorded: The 40% load simulation on compute node 3 is migrated to compute node 4.
返回执行步骤 101 , 即获得计算集群内的各计算节点的当前负载排序; 当前负载排序为计算节点 1的负载量为 0; 计算节点 2的负载量为 0; 计 算节点 3的负载量为 0; 计算节点 4的负载量为 80%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 90%; 计算节点 7的负载量为 100%; 根据当前负 载排序确定当前待进行第一模拟迁移的计算节点为计算节点 4 ,所有第一模拟 迁移的目标计算节点的负载余量之和为 35%, 小于计算节点 4的负载量 80%, 确定当前待进行第一模拟迁移的计算节点不能够被模拟迁空, 执行步骤 104 , 即确定初始负载量小于当前待进行第一模拟迁移的计算节点的负载量的计算 节点为第一批待并发迁移的计算节点;  Returning to step 101, the current load order of each computing node in the computing cluster is obtained; the current load ordering is that the load of the computing node 1 is 0; the load of the computing node 2 is 0; and the load of the computing node 3 is 0; The load of the calculation node 4 is 80%; the load of the calculation node 5 is 75%; the load of the calculation node 6 is 90%; the load of the calculation node 7 is 100%; The computing node of the simulated migration is the computing node 4, and the sum of the load margins of all the target computing nodes of the first simulated migration is 35%, which is smaller than the load of the computing node 4 by 80%, and the computing node to be subjected to the first simulated migration is determined. If the vacant is not simulated, step 104 is performed, that is, the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first computing node to be concurrently migrated;
步骤 104 ,确定初始负载量小于当前待进行第一模拟迁移的计算节点的负 载量的计算节点为第一批待并发迁移的计算节点;  Step 104: Determine, by the computing node that the initial load is smaller than the load of the computing node to be subjected to the first simulated migration, to be the first computing node to be concurrently migrated;
通过计算, 第一批待并发迁移的计算节点为计算节点 1 , 计算节点 2 , 计 算节点 3。  Through calculation, the first batch of compute nodes to be concurrently migrated are compute node 1, compute node 2, and compute node 3.
步骤 105 , 将第一批待并发迁移的计算节点进行第一并发迁移。  Step 105: Perform a first concurrent migration of the first batch of compute nodes to be concurrently migrated.
根据上述计算结果, 得出将第一批待并发迁移的计算节点进行第一并发 迁移, 即将计算节点 1 , 计算节点 2 , 计算节点 3进行第一并发迁移。  According to the above calculation result, it is found that the first batch of concurrently migrated computing nodes perform the first concurrent migration, that is, the computing node 1 , the computing node 2 , and the computing node 3 perform the first concurrent migration.
本发明实施例提供一种迁移计算节点的方法, 通过确定一个计算集群的 计算中可以进行并发迁移的计算节点, 并对确定的计算节点进行并发迁移, 使得本实施例可以自动确定进行并发迁移的计算节点的数目, 并进行并行迁 移。  The embodiment of the present invention provides a method for migrating a computing node. The computing node that can perform concurrent migration in the calculation of a computing cluster is performed, and the determined computing node is concurrently migrated, so that the embodiment can automatically determine the concurrent migration. Calculate the number of nodes and perform parallel migration.
如图 3所示, 本发明实施例提供另一种迁移计算节点的方法, 该方法包 括:  As shown in FIG. 3, an embodiment of the present invention provides another method for migrating a computing node, where the method includes:
步骤 301 , 管理节点获得所述计算集群内各计算节点的当前负载量,根据 所述各计算节点的当前负载量进行排序, 获得所述各计算节点的当前负载排 序; Step 301: The management node obtains a current load quantity of each computing node in the computing cluster, performs sorting according to the current load quantity of each computing node, and obtains a current load row of each computing node. Preface
可选的, 在确定一个计算集群内待并发迁移的计算节点之后, 管理节点 按照计算节点管理的虚拟机的负载对所有计算节点从小到大排序; 或者, 在 确定一个计算集群内待并发迁移的计算节点之后, 按照计算节点管理的虚拟 机的负载对所述计算节点从大到小排序。 以便根据计算节点管理的虚拟机的 负载情况对计算节点进行迁移计算。  Optionally, after determining a computing node to be concurrently migrated in a computing cluster, the management node sorts all computing nodes from small to large according to the load of the virtual machine managed by the computing node; or, determining a concurrent migration in a computing cluster. After computing the nodes, the compute nodes are sorted from largest to smallest according to the load of the virtual machines managed by the compute nodes. In order to perform a migration calculation on the compute node according to the load condition of the virtual machine managed by the compute node.
其中, 每个计算节点管理的虚拟机的负载包括以下因素之一或其任意组 合: 所有计算节点管理的虚拟机的 CPU之和、 所有计算节点管理的虚拟机的 内存之和、 或者所有计算节点管理的虚拟机的带宽。 例如, 可以按照计算节 点管理的虚拟机的 CPU之和为主对计算节点进行排序, 当然也可以按照计算 节点管理的虚拟机的内存之和对计算节点进行排序, 或者, 按照计算节点管 理的虚拟机的带宽对计算节点进行排序。  The load of the virtual machine managed by each computing node includes one of the following factors or any combination thereof: the sum of the CPUs of all the virtual machines managed by the compute nodes, the sum of the memory of all the virtual machines managed by the compute nodes, or all compute nodes The bandwidth of the managed virtual machine. For example, the computing nodes may be sorted according to the sum of the CPUs of the virtual machines managed by the computing nodes. Of course, the computing nodes may be sorted according to the sum of the memory of the virtual machines managed by the computing nodes, or the virtual nodes are managed according to the computing nodes. The bandwidth of the machine sorts the compute nodes.
举例而言, 根据实际需要, 可以确定一个计算集群内进行维护的计算节 点为 7个, 对这 7个计算节点按照其管理的虚拟机的负载进行排序, 例如按 照计算节点管理的虚拟机的 CPU之和从小到大的顺序进行排列。 如图 4所示, 计算节点 1管理的虚拟机的 CPU之和为 20%, 即计算节点 1的负载量为 20%; 计算节点 2的负载量为 20%; 计算节点 3的负载量为 30%; 计算节点 4的负载 量为 30%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 90%; 计算节 点 7的负载量为 90%。  For example, according to actual needs, it can be determined that there are seven computing nodes in a computing cluster for maintenance, and the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, the CPU of the virtual machine managed by the computing node. The sums are arranged in ascending order. As shown in FIG. 4, the sum of the CPUs of the virtual machines managed by the compute node 1 is 20%, that is, the load of the compute node 1 is 20%; the load of the compute node 2 is 20%; and the load of the compute node 3 is 30. %; compute node 4 load is 30%; compute node 5 load is 75%; compute node 6 load is 90%; compute node 7 load is 90%.
如果有负载相同的计算节点, 所述负载排序还对负载相同的计算节点的 其它运行情况进行了解和比较, 原则上, 可以对所有计算节点的负载情况进 行严格地大小关系的区分, 当然, 也可以不进一步区分负载相同的计算节点 的负载和运行情况, 可以随机地对负载相同的计算节点进行排序, 无论如何 排序, 初始负载排序的顺序用于后续的模拟计算, 若相同负载计算节点在负 载排序时被区分了大小, 后续模拟计算则以初始排序的大小关系为准, 例如 计算节点 1和 2的初始负载均为 20%, 在排序的时候, 将计算节点 1排位于计 算节点 2之前, 则在后续模拟计算时, 则可认为计算节点 2的负载大于计算 节点 1。 If there are load nodes with the same load, the load sorting also knows and compares other running conditions of the same computing node. In principle, the load conditions of all computing nodes can be strictly differentiated. Of course, The load and operation of the same computing node can be further distinguished. The computing nodes with the same load can be randomly sorted. Regardless of the ordering, the order of the initial load ordering is used for subsequent simulation calculations. If the same load computing node is under load The sorting is divided into sizes, and the subsequent simulation calculations are based on the initial sorting relationship. For example, the initial loads of the computing nodes 1 and 2 are both 20%. When sorting, the computing node 1 is placed before the computing node 2. Then in the subsequent simulation calculation, the load of the computing node 2 can be considered to be greater than the calculation. Node 1.
步骤 302 ,管理节点按照第一模拟迁移计算模型计算出第一批待并发迁移 的计算节点;  Step 302: The management node calculates, according to the first simulated migration calculation model, a first batch of computing nodes to be concurrently migrated;
所述第一模拟迁移计算模型为: 将当前负载排序中负载不为零且负载最 小的计算节点设为当前待进行第一模拟迁移的计算节点, 将所述待进行第一 模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点进行模拟 迁移, 当所述待进行第一模拟迁移的计算节点的负载大于所有所述第一模拟 迁移的目标计算节点的负载余量之和时, 确定所述待进行第一模拟迁移的计 算节点不能够被迁空。 所述迁空意指计算节点管理的虚拟机可以被全部迁移 到其它计算节点上, 以致所述计算节点的负载为零。  The first simulation migration calculation model is: setting a calculation node with a non-zero load and a minimum load in the current load order as a calculation node to be subjected to the first simulation migration, and the calculation node to be subjected to the first simulation migration The managed virtual machine performs simulated migration to the target computing node of the first simulated migration, when the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of all the target computing nodes of the first simulated migration And determining that the computing node to be subjected to the first simulated migration cannot be emptied. The vacancy means that the virtual machines managed by the compute nodes can all be migrated to other compute nodes such that the load of the compute nodes is zero.
具体地, 如果计算集群中初始即存在负载为零的计算节点, 则该计算节 点被直接纳入第一批待并发迁移的计算节点中; 另外, 按照负载从小到大的 原则依次对负载不为零的计算节点进行模拟迁移计算, 每迁空一个计算节点 重新更新各计算节点的负载情况的排序, 再循环执行下一个负载最小的计算 节点的模拟迁移计算, 直至某计算节点无法迁空的时候, 则确定初始负载小 于该不能迁空的计算节点的计算节点为能够被迁空的计算节点, 并将这些节 点纳入第一批待并发迁移的计算节点中。  Specifically, if a computing node with a load of zero is initially calculated in the cluster, the computing node is directly included in the first batch of computing nodes to be concurrently migrated; in addition, the load is not zero according to the principle that the load is from small to large. The calculation node performs simulation migration calculation, and each calculation node re-updates the load condition of each calculation node, and performs the simulation migration calculation of the next calculation node with the smallest load until the calculation node cannot be emptied. Then, the computing node whose initial load is smaller than the computing node that cannot be emptied is determined to be a computing node that can be emptied, and the nodes are included in the first batch of computing nodes to be concurrently migrated.
需要说明的是, 上述模拟迁移计算并不实际进行并发迁移动作。  It should be noted that the above simulation migration calculation does not actually perform the concurrent migration operation.
如图 5 所示, 按照第一模拟迁移计算模型计算出第一批待并发迁移的计 算节点, 可以具体包括以下步骤(实施方式之一):  As shown in FIG. 5, calculating the first batch of computing nodes to be concurrently migrated according to the first simulated migration calculation model may specifically include the following steps (one of the implementation modes):
步骤 501 ,确定所述负载排序中负载量不为零并且负载量最小的计算节点 为当前待进行第一模拟迁移的计算节点 A;  Step 501, determining that the load node in the load sorting is not zero and the load amount is the smallest, and the computing node that is currently performing the first simulated migration is the computing node A;
其中, 当前待进行第一模拟迁移的计算节点 A为上述所述当前待进行第 一模拟迁移的计算节点中的一个具体的计算节点。  The computing node A currently undergoing the first simulated migration is a specific computing node among the computing nodes currently performing the first simulated migration.
举例而言, 根据实际需要, 可以确定一个计算集群内进行维护的计算节 点为 7个, 对这 7个计算节点按照其管理的虚拟机的负载进行排序, 例如按 照计算节点管理的虚拟机的 CPU之和从小到大的顺序进行排列。 如图 4所示, 计算节点 1管理的虚拟机的 CPU之和为 20% , 即计算节点 1的负载量为 20%; 计算节点 2的负载量为 20%; 计算节点 3的负载量为 30%; 计算节点 4的负载 量为 30%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 90%; 计算节 点 7的负载量为 90%。 则当前带进行第一模拟迁移的计算节点为计算节点 1。 For example, according to actual needs, it can be determined that there are seven computing nodes in a computing cluster for maintenance, and the seven computing nodes are sorted according to the load of the virtual machines they manage, for example, the CPU of the virtual machine managed by the computing node. The sums are arranged in ascending order. As shown in Figure 4, The sum of the CPUs of the virtual machines managed by the compute node 1 is 20%, that is, the load of the compute node 1 is 20%; the load of the compute node 2 is 20%; the load of the compute node 3 is 30%; The load is 30%; the load of the compute node 5 is 75%; the load of the compute node 6 is 90%; and the load of the compute node 7 is 90%. Then, the current computing node with the first simulated migration is the computing node 1.
步骤 502 ,将所述当前待进行第一模拟迁移的计算节点 A管理的虚拟机逐 个模拟迁移到负载未满且负载最大的计算节点上;  Step 502: The virtual machines managed by the computing node A currently undergoing the first simulated migration are migrated one by one to the computing nodes whose load is not full and the load is the largest;
需要说明的是, 在模拟迁移计算节点时, 可以将当前待进行第一模拟迁 移的计算节点 A管理的虚拟机向第一模拟迁移的目标计算节点进行模拟迁移, 所述待进行第一模拟迁移的目标计算节点为所述计算集群中负载未满且负载 量大于所述当前待进行第一模拟迁移的计算节点 A 的负载量的计算节点, 即 计算节点 2、 计算节点 3、 计算节点 4、 计算节点 5、 计算节点 6或者计算节 点 7。 本实施例为了最大程序避免多次迁移, 可将当前待进行第一模拟迁移的 计算节点 A管理的虚拟机逐个模拟迁移到负载未满且负载最大的计算节点上。  It should be noted that, when simulating the migration of the computing node, the virtual machine managed by the computing node A to be subjected to the first simulated migration may be simulated and migrated to the target computing node of the first simulated migration, where the first simulated migration is to be performed. The target computing node is a computing node in the computing cluster whose load is not full and the load is greater than the load of the computing node A currently undergoing the first simulated migration, that is, the computing node 2, the computing node 3, the computing node 4, Compute node 5, compute node 6, or compute node 7. In this embodiment, for the maximum program to avoid multiple migrations, the virtual machines managed by the computing node A to be subjected to the first simulated migration may be migrated one by one to the computing nodes with the least load and the largest load.
例如, 当前待进行第一模拟迁移的计算节点为计算节点 1 , 负载最大的计 算节点为计算节点 7。先判断计算节点 1是否能够被迁空。 负载排序大于计算 节点 1的计算节点 2、 计算节点 3、 计算节点 4、 计算节点 5、 计算节点 6、 计 算节点 7的负载余量之和为 265% , 远大于计算节点 1的负载量 20% , 因此计 算节点 1能够被迁空。  For example, the computing node to be subjected to the first simulated migration is the computing node 1, and the computing node with the largest load is the computing node 7. First determine whether the compute node 1 can be vacant. The sum of the load margins of the compute node 2, the compute node 3, the compute node 4, the compute node 5, the compute node 6, and the compute node 7 with the load ordering greater than the compute node 1 is 265%, which is much larger than the load of the compute node 1 by 20%. Therefore, the compute node 1 can be emptied.
进一步可选的, 可以将计算节点 1上管理的虚拟机逐个按计算节点 1上 管理的各个虚拟机模拟迁移到计算节点 7 上。 然后记录迁移路径: 将计算节 点 1上 1 0%的负载量模拟迁移到计算节点 7上。  Further optionally, the virtual machines managed on the computing node 1 may be migrated to the computing nodes 7 one by one according to the virtual machine simulations managed on the computing node 1. Then record the migration path: Migrate the 10% load simulation on compute node 1 to compute node 7.
其中, 具体地可以将计算节点 1上管理的各个虚拟机的 CPU负载量从大 到小的顺序模拟迁移到计算节点 7 中, 以便最大程序避免多次迁移。 例如, 计算节点 1上管理 3个虚拟机, 各个虚拟机的 CPU负载量为 1% , 9% , 1 0% , 则 优先将 CPU负载量为 1 0%的虚拟机模拟迁移到计算节点 7上,然后再将 CPU负 载量为 9%的虚拟机模拟迁移到计算节点 7上, 最后将 CPU负载量为 1%的虚拟 机模拟迁移到计算节点 7 上。 需要说明的是, 在实际计算并发迁移的计算节 点时, 需要具体考虑负载最大的计算节点的负载量, 以避免增加迁移次数。 例如, 计算节点 7的负载量为 99%, 计算节点 1上管理 3个虚拟机, 各个虚拟 机的 CPU负载量为 1%, 9%, 10%, 则此时, 需要直接将 CPU负载量为 1%的虚 拟机添加到计算节点 7上。 Specifically, the CPU load of each virtual machine managed on the computing node 1 can be specifically migrated from the sequential simulation to the computing node 7 so that the maximum program avoids multiple migrations. For example, if three virtual machines are managed on compute node 1, and the CPU load of each virtual machine is 1%, 9%, and 10%, the virtual machine simulation with CPU load of 10% is preferentially migrated to compute node 7. Then, the virtual machine simulation with the CPU load of 9% is migrated to the compute node 7, and finally the virtual machine simulation with the CPU load of 1% is migrated to the compute node 7. It should be noted that the calculation section of the actual calculation of concurrent migration When you point, you need to specifically consider the load of the compute node with the largest load to avoid increasing the number of migrations. For example, the load of compute node 7 is 99%, and three virtual machines are managed on compute node 1. The CPU load of each virtual machine is 1%, 9%, and 10%. In this case, the CPU load needs to be directly 1% of the virtual machines are added to compute node 7.
若负载最大的计算节点的负载量已满而所述当前待进行第一模拟迁移的 计算节点 A还未迁空, 按照负载量依次递减的顺序, 选择所述计算集群中的 其他负载未满且负载最大的计算节点, 并将所述当前待进行第一模拟迁移的 计算节点 A管理的剩余的虚拟机模拟迁移到所选择的计算节点上, 直到所述 负载最小的计算节点管理的虚拟机完全迁空;  If the load of the computing node with the largest load is full and the computing node A currently undergoing the first simulated migration has not been vacant, the other loads in the computing cluster are not full according to the order of decreasing load. The most loaded computing node, and the remaining virtual machine simulation managed by the computing node A currently undergoing the first simulated migration is migrated to the selected computing node until the virtual machine managed by the least loaded computing node is completely Move out
例如, 计算节点 1不能完全迁空, 此时需要将计算节点 1剩余的虚拟机 模拟迁移到计算节点 6上,依次类推直到计算节点 2。 若计算节点 1管理的虚 拟机可以迁空则继续将计算节点 2管理的虚拟机进行模拟迁移计算。  For example, compute node 1 cannot be completely emptied. In this case, the remaining virtual machine simulation of compute node 1 needs to be migrated to compute node 6, and so on until compute node 2. If the virtual machine managed by the compute node 1 can be emptied, the virtual machine managed by the compute node 2 continues to be simulated and migrated.
需要说明的是, 可对计算集群内的计算节点设置负载量已满的比例, 例 如, 设定计算节点 1-7的负载量已满的比例为 100% , 或者也可以设定计算节 点 1-7的负载量已满的比例为 90%等。本实施例中以计算节点的负载量已满的 比例为 100%为例进行详细描述。  It should be noted that the proportion of the load fullness may be set to the calculation nodes in the calculation cluster. For example, the ratio of the load of the calculation nodes 1-7 is 100%, or the calculation node 1 may be set. The ratio of the load of 7 is 90%. In this embodiment, the ratio of the load of the computing node being full is 100% as an example for detailed description.
如图 4所示, 计算节点 1的负载量为 20%, 计算节点 7的负载量为 90%, 此时, 将计算节点 1上 1 0%的负载量模拟迁移到计算节点 7上, 计算节点 7的 负载量达到 100%, 计算节点 1上剩余 10%的负载量。 计算节点 6的负载量为 90%, 然后将计算节点 1上剩余 10%的负载量模拟迁移到计算节点 6上, 此时, 计算节点 1的负载量为 0 , 计算节点 6的负载量达到 100%。 然后记录迁移路 径: 将计算节点 1上剩余 10%的负载量模拟迁移到计算节点 6上。  As shown in FIG. 4, the load of the compute node 1 is 20%, and the load of the compute node 7 is 90%. At this time, the load simulation of 10% of the load on the compute node 1 is migrated to the compute node 7, and the compute node The load of 7 reaches 100%, and the remaining 10% of the load on node 1 is calculated. The load of the computing node 6 is 90%, and then the simulation of the remaining 10% of the load on the computing node 1 is migrated to the computing node 6. At this time, the load of the computing node 1 is 0, and the load of the computing node 6 reaches 100. %. Then record the migration path: Migrate the remaining 10% of the load simulation on compute node 1 to compute node 6.
步骤 503 , 每迁空一个计算节点或者一个计算节点的负载饱和时, 记录每 个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目标计算节点, 并 更新各计算节点的负载排序, 获得当前的负载排序;  Step 503: Record, when each load of one computing node or one computing node is saturated, record the target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration, and update the load order of each computing node. Get the current load ordering;
记录迁移路径: 将计算节点 1上 10%的负载量模拟迁移到计算节点 7上, 将计算节点 1上剩余 10%的负载量模拟迁移到计算节点 6上。 可选的, 在将计算节点 1 管理的虚拟机模拟迁移计算完成后, 管理节点 将计算节点 1-7中负载量进行更新。 如图 4所示, 计算节点 1的负载量为 0; 计算节点 2的负载量为 20%; 计算节点 3的负载量为 30%; 计算节点 4的负载 量为 30%; 计算节点 5的负载量为 75%; 计算节点 6的负载量为 100%; 计算节 点 7的负载量为 100%。 Record migration path: The 10% load simulation on compute node 1 is migrated to compute node 7, and the remaining 10% load simulation on compute node 1 is migrated to compute node 6. Optionally, after the virtual machine simulation migration calculation managed by the computing node 1 is completed, the management node updates the load in the computing nodes 1-7. As shown in Figure 4, the load of compute node 1 is 0; the load of compute node 2 is 20%; the load of compute node 3 is 30%; the load of compute node 4 is 30%; the load of compute node 5 The amount is 75%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
步骤 504 ,确定当前负载排序中负载不为零且负载最小的计算节点为当前 待进行第一模拟迁移的计算节点 B,将所述当前待进行第一模拟迁移的计算节 点 B管理的虚拟机逐个模拟迁移到当前负载未满且负载最大的计算节点上; 根据步骤 503 中对计算节点的重新排序之后的负载排序, 确定当前负载 量不为零且负载量最小的计算节点 B为当前待进行第一模拟迁移的计算节点 2 , 以及确定当前负载量未满且负载量最大的计算节点, 如图 4所示, 当前负 载量未满且负载量最大的计算节点为计算节点 3、 计算节点 4、 计算节点 5。  Step 504: Determine, in the current load ordering, that the computing node that is not zero in load and has the smallest load is the computing node B that is currently to be subjected to the first simulated migration, and the virtual machines managed by the computing node B that is currently to undergo the first simulated migration are one by one. The simulation is migrated to the computing node where the current load is not full and the load is the largest; according to the load order after the reordering of the computing nodes in step 503, the computing node B whose current load is not zero and the load is the smallest is determined to be the current a computing node 2 that simulates migration, and a computing node that determines that the current load is not full and the load is the largest. As shown in FIG. 4, the computing node whose current load is not full and the largest load is the computing node 3, the computing node 4, Calculate node 5.
步骤 505 ,若所述当前待进行第一模拟迁移的计算节点 B的负载量小于所 述计算集群中当前负载排序大于所述当前待进行第一模拟迁移的计算节点 B 的所有计算节点的负载余量之和, 即当前待进行第一模拟迁移的计算节点 B 能够被迁空时, 返回执行步骤 503; 若所述当前待进行第一模拟迁移的计算节 点 B 的负载大于所述计算集群中当前负载排序大于所述当前待进行第一模拟 迁移的计算节点 B 的所有计算节点的负载余量之和, 确定当前负载不零且负 载最小的计算节点不能被迁空, 则初始负载量小于所述当前待进行第一模拟 迁移的计算节点的负载量的计算节点为第一批待并发迁移的计算节点;  Step 505: If the load of the computing node B that is currently to be subjected to the first simulated migration is smaller than the load of the computing node in the computing cluster that is greater than the load of all computing nodes of the computing node B that is currently performing the first simulated migration. The sum of the quantities, that is, the computing node B that is currently to be subjected to the first simulated migration can be emptied, and returns to step 503; if the load of the computing node B currently undergoing the first simulated migration is greater than the current in the computing cluster The load ranking is greater than the sum of the load margins of all the computing nodes of the computing node B currently undergoing the first simulated migration, and determining that the current load is not zero and the load node with the smallest load cannot be emptied, the initial load is less than the The computing node of the current computing load of the computing node to be subjected to the first simulated migration is the first batch of computing nodes to be concurrently migrated;
计算节点 1管理的虚拟机模拟迁移计算完成后, 继续将计算节点 2管理 的虚拟机进行模拟迁移计算, 计算节点 2设为当前待进行第一模拟迁移的计 算节点 B。 如图 4所示, 计算节点 2的负载量为 20%, 计算节点 7与计算节点 6的负载量已满,根据当前负载排序, 负载量未满且负载大于计算节点 2的计 算节点 3、 4、 5的负载余量之和为 165%, 远大于计算节点 2的负载量 20%, 因此计算节点 2能够被迁空。 此时需要将计算节点 2管理的虚拟机模拟迁移 到计算节点 5上。 具体的, 计算节点 5的负载量为 75%, 则可以直接将计算节 点 2上管理的虚拟机全部模拟迁移到计算节点 5 中, 则计算节点 2的负载量 为 0 , 计算节点 5的负载量为 95%。 然后记录迁移路径: 将计算节点 2上 20% 的负载量模拟迁移到计算节点 5上。 After the virtual machine simulation migration calculation managed by the computing node 1 is completed, the virtual machine managed by the computing node 2 is continuously subjected to the simulation migration calculation, and the computing node 2 is set as the computing node B currently undergoing the first simulated migration. As shown in FIG. 4, the load of the computing node 2 is 20%, and the load of the computing node 7 and the computing node 6 is full. According to the current load, the load is not full and the load is greater than the computing node 3, 4 of the computing node 2. The sum of the load margins of 5 is 165%, which is much larger than the load of the computing node 2 by 20%, so the computing node 2 can be emptied. At this time, the virtual machine simulation managed by the computing node 2 needs to be migrated to the computing node 5. Specifically, if the load of the computing node 5 is 75%, the calculation section can be directly The virtual machines managed at point 2 are all simulated and migrated to the computing node 5, then the load of the computing node 2 is 0, and the load of the computing node 5 is 95%. Then record the migration path: Migrate the 20% load simulation on compute node 2 to compute node 5.
计算节点 2管理的虚拟机模拟迁移计算完成后,管理节点将计算节点 1-7 中负载量进行更新。 如图 4所示, 计算节点 1的负载量为 0; 计算节点 2的负 载量为 0; 计算节点 3的负载量为 30%; 计算节点 4的负载量为 30%; 计算节 点 5的负载量为 95%; 计算节点 6的负载量为 100%; 计算节点 7的负载量为 100%。  After the virtual machine simulation migration calculation managed by compute node 2 is completed, the management node updates the load in compute nodes 1-7. As shown in Figure 4, the load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 30%; the load of compute node 4 is 30%; the load of compute node 5 It is 95%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
此时, 继续对计算节点 3 管理的虚拟机进行模拟迁移计算, 计算节点 3 设为当前待进行第一模拟迁移的计算节点 C。如图 4所示, 计算节点 3的负载 量为 30%, 根据当前负载排序, 负载量未满且负载大于计算节点 3的计算节点 4、 5的负载余量之和为 75%, 远大于计算节点 3的负载量 30%, 将计算节点 3 上管理的虚拟机模拟迁移到计算节点 5中, 此时计算节点 3上 5%的负载量模 拟迁移到计算节点 5中, 计算节点 5的负载量达到 100%, 而计算节点 3的负 载量剩余 25%。 然后将计算节点 3上剩余 25%的负载量模拟迁移到计算节点 4 上, 计算节点 4的负载量为 30%。 此时, 计算节点 3的负载量为 0 , 计算节点 4的负载量达到 55%。 然后记录迁移路径: 将计算节点 3上 5%的负载量模拟迁 移到计算节点 5上, 将计算节点 3上剩余 25%的负载量模拟迁移到计算节点 4 上。  At this time, the simulation migration calculation of the virtual machine managed by the computing node 3 is continued, and the computing node 3 is set to the computing node C currently undergoing the first simulated migration. As shown in FIG. 4, the load of the computing node 3 is 30%. According to the current load order, the sum of the load margins of the computing nodes 4 and 5 whose load is not full and the load is greater than the computing node 3 is 75%, which is much larger than the calculation. The load of the node 3 is 30%, and the virtual machine simulation managed on the computing node 3 is migrated to the computing node 5. At this time, the 5% load amount of the computing node 3 is simulated and migrated to the computing node 5, and the load of the node 5 is calculated. It reaches 100%, and the load on compute node 3 remains 25%. Then, the remaining 25% of the load simulation on compute node 3 is migrated to compute node 4, and the load on compute node 4 is 30%. At this time, the load of the calculation node 3 is 0, and the load of the calculation node 4 is 55%. Then record the migration path: Migrate the 5% load simulation on compute node 3 to compute node 5 and migrate the remaining 25% load simulation on compute node 3 to compute node 4.
计算节点 3管理的虚拟机模拟迁移计算完成后,管理节点将计算节点 1-7 中负载量进行更新。 如图 4所示, 计算节点 1的负载量为 0; 计算节点 2的负 载量为 0; 计算节点 3的负载量为 0; 计算节点 4的负载量为 55%; 计算节点 5的负载量为 100%;计算节点 6的负载量为 100%;计算节点 7的负载量为 100%。  After the virtual machine simulation migration calculation managed by compute node 3 is completed, the management node updates the load in compute nodes 1-7. As shown in Figure 4, the load of compute node 1 is 0; the load of compute node 2 is 0; the load of compute node 3 is 0; the load of compute node 4 is 55%; the load of compute node 5 is 100%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
此时, 需要对计算节点 4进行模拟迁移计算, 计算节点 4设为当前待进 行第一模拟迁移的计算节点 D,发现计算节点 5、 6、 7的节点负载量都为 100%, 根据当前负载排序, 负载量未满且负载排序大于计算节点 4 的计算节点不存 在, 计算节点 4的负载量 55%无法被迁移, 因此计算节点 4上的虚拟机不能被 迁空, 此时结束第一批待并发迁移的计算节点的模拟迁移计算。 At this time, the simulation migration calculation needs to be performed on the computing node 4, and the computing node 4 is set as the computing node D currently undergoing the first simulated migration, and the node load of the computing nodes 5, 6, and 7 is found to be 100%, according to the current load. Sorting, the load is not full and the load order is greater than the compute node of compute node 4 does not exist, the load of compute node 4 55% cannot be migrated, so the virtual machine on compute node 4 cannot be Emptying, at this point, the simulation migration calculation of the first batch of compute nodes to be concurrently migrated ends.
本实施例中, 根据上述模拟迁移计算确定负载量小于所述当前待进行第 一模拟迁移的计算节点 D 的负载量的计算节点为第一批待并发迁移的计算节 点。 即第一批待并发迁移的计算节点为 1、 计算节点 2以及计算节点 3。  In this embodiment, the computing node that determines that the load amount is smaller than the load amount of the computing node D that is currently undergoing the first simulated migration is the computing node of the first batch of concurrent migration according to the above simulation migration calculation. That is, the first batch of compute nodes to be concurrently migrated are 1, compute node 2, and compute node 3.
在确定完第一批待并发迁移的计算节点之后, 继续执行下述步骤。  After determining the first batch of compute nodes to be concurrently migrated, continue with the steps below.
步骤 303 ,根据记录的每个待进行第一模拟迁移的计算节点对应的第一模 拟迁移的目标计算节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁 移到其对应的第一模拟迁移的目标计算节点上;  Step 303: The virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the corresponding first simulation according to the target computing node of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration. The target of the migration is calculated on the node;
在本步骤中, 根据步骤 302 确定进行维护的计算节点时采用的模拟并发 迁移的方式进行实际迁移, 具体的, 将计算节点 1 管理的虚拟机模拟迁移到 计算节点 7和计算节点 6上, 将计算节点 2管理的虚拟机迁移到计算节点 5 上, 将计算节点 3管理的虚拟机迁移到计算节点 5和计算节点 4上。  In this step, the actual migration is performed according to the method of simulating the concurrent migration that is performed when the maintenance node is determined in step 302. Specifically, the virtual machine simulation managed by the computing node 1 is migrated to the computing node 7 and the computing node 6, and The virtual machine managed by the computing node 2 is migrated to the computing node 5, and the virtual machine managed by the computing node 3 is migrated to the computing node 5 and the computing node 4.
步骤 304 ,管理节点对所述第一批并发迁移后的至少一个所述计算节点进 行维护, 所述维护包括升级或者修复;  Step 304: The management node performs maintenance on at least one of the first batch of concurrently transferred computing nodes, where the maintenance includes upgrading or repairing;
在本步骤中, 对计算节点 1、 计算节点 2以及计算节点 3进行维护时, 首 先进行维护前的环境搭建, 然后获取计算节点进行升级的版本软件包或者获 取计算节点进行维护的版本的补丁包, 并且获取计算节点的设备信息, 最后 根据计算节点的设备信息对计算节点进行维护。  In this step, when performing maintenance on the compute node 1, the compute node 2, and the compute node 3, first perform the environment setup before the maintenance, and then obtain the version package that the compute node performs the upgrade or obtain the patch package of the version that the compute node performs maintenance. And acquiring the device information of the computing node, and finally maintaining the computing node according to the device information of the computing node.
步骤 305 ,管理节点按照第二模拟迁移计算模型计算出第二批待并发迁移 的计算节点;  Step 305: The management node calculates, according to the second simulated migration calculation model, a second batch of computing nodes to be concurrently migrated;
第二模拟迁移计算模型为: 将当前负载排序中负载不为零且负载最小的 计算节点设为当前待进行第二模拟迁移的计算节点, 将所述待进行第二模拟 迁移的计算节点管理的虚拟机向所有所述第二模拟迁移的目标计算节点进行 模拟迁移, 所述第二模拟迁移的目标计算节点为所述计算集群中已进行维护 的计算节点; 当所述待进行第二模拟迁移的计算节点的负载大于所有所述第 二模拟迁移的目标计算节点的负载余量之和时, 确定所述待进行第二模拟迁 移的计算节点不能够被迁空。 如图 6 所示, 按照第二模拟迁移计算模型计算出第二批待并发迁移的计 算节点, 具体包括以下步骤: The second simulation migration calculation model is: setting a computing node with a non-zero load and a minimum load in the current load ordering as a computing node to be subjected to the second simulated migration, and managing the computing node to be subjected to the second simulated migration. The virtual machine performs simulated migration to all the target computing nodes of the second simulated migration, where the target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster; when the second simulated migration is to be performed When the load of the computing node is greater than the sum of the load margins of all the target computing nodes of the second simulated migration, it is determined that the computing node to be subjected to the second simulated migration cannot be emptied. As shown in FIG. 6, the second batch of computing nodes to be concurrently migrated is calculated according to the second simulated migration calculation model, and specifically includes the following steps:
步骤 601 , 获得计算集群内的各计算节点的当前负载排序, 所述当前负载 排序区分已进行维护的计算节点和未进行维护的计算节点;  Step 601: Obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the calculated computing node and the unmaintained computing node;
其中, 如图 7 所示, 计算集群内的各计算节点的当前负载排序为: 计算 节点 1-3为维护完成之后的计算节点, 其负载量之和为 0; 计算节点 4-7中为 未进行维护的计算节点, 其负载量分别为: 计算节点 4的负载量为 55%; 计算 节点 5的负载量为 100%; 计算节点 6的负载量为 100%; 计算节点 7的负载量 为 100%。  As shown in FIG. 7, the current load order of each computing node in the computing cluster is: Computation node 1-3 is a computing node after maintenance completion, and the sum of load amounts is 0; For the maintenance nodes, the load is: 55% of the load of the compute node 4; 100% of the load of the compute node 5; 100% of the load of the compute node 6; 100 load of the compute node 7 %.
步骤 602 ,确定当前负载排序中负载量不为零并且负载量最小的计算节点 为当前待进行第二模拟迁移的计算节点 A;  Step 602, determining that the computing node in the current load ordering load is not zero and the load amount is the smallest is the computing node A currently undergoing the second simulated migration;
根据图 7所示, 计算节点 4的负载量为 55%, 即本实施例中的当前待进行 第二模拟迁移的计算节点 A。  According to FIG. 7, the load of the computing node 4 is 55%, that is, the computing node A currently undergoing the second simulated migration in this embodiment.
步骤 603 ,将所述当前待进行第二模拟迁移的计算节点 A管理的虚拟机依 次模拟迁移到第二模拟迁移的目标计算节点, 所述第二模拟迁移的目标计算 节点为所述计算集群中已进行维护的计算节点;  Step 603: The virtual machine managed by the computing node A that is currently to be subjected to the second simulated migration is simulated to migrate to the target computing node of the second simulated migration, and the target computing node of the second simulated migration is in the computing cluster. a compute node that has been maintained;
其中, 已进行维护的计算节点为计算节点 1-3。  The compute nodes that have been maintained are compute nodes 1-3.
具体的, 在模拟迁移计算节点时, 当所述当前待进行第二模拟迁移的计 算节点 A 的负载量小于所有所述第二模拟迁移的目标计算节点的负载余量之 和时, 确定当前待进行第二模拟迁移的计算节点 A能够被模拟迁空;  Specifically, when simulating the migration computing node, when the load amount of the computing node A currently undergoing the second simulated migration is smaller than the sum of the load margins of all the target computing nodes of the second simulated migration, determining the current waiting The compute node A performing the second simulated migration can be simulated to be vacant;
例如, 在本步骤中, 所有第二模拟迁移的目标计算节点的负载余量之和 为 300%, 则当前待进行第二模拟迁移的计算节点 A能够被模拟迁空。 此时, 将计算节点 4上 55%的负载量模拟迁移到已经进行维护的计算节点 1上,即已 维护的计算节点 1 为第二模拟迁移的目标计算节点。 此时已经进行维护的计 算节点 1的负载量为 55%, 计算节点 4的负载量为 0。 然后记录迁移路径: 将 计算节点 4上 55%的负载量模拟迁移到计算节点 1上。  For example, in this step, the sum of the load margins of the target computing nodes of all the second simulated migrations is 300%, and the computing node A currently undergoing the second simulated migration can be simulated to be vacant. At this point, the 55% load simulation on compute node 4 is migrated to compute node 1 that has been maintained, ie, the maintained compute node 1 is the target compute node for the second simulated migration. At this time, the load of the calculation node 1 that has been maintained is 55%, and the load of the calculation node 4 is 0. Then record the migration path: Migrate the 55% load simulation on compute node 4 to compute node 1.
进一步的, 如果当前待进行第二模拟迁移的计算节点 A 不是最后一个未 进行维护的计算节点, 则返回执行步骤 601。 具体的, 如图 7所示, 当前待进 行第二模拟迁移的计算节点 A 不是最后一个未进行维护的计算节点, 未进行 维护的计算节点还包括计算节点 5、 计算节点 6以及计算节点 7。 因此在将计 算节点 4管理的虚拟机模拟迁移计算完成后, 管理节点将计算节点 1-7 中负 载量进行更新。 如图 7所示, 计算节点 1的负载量为 55%; 计算节点 2的负载 量为 0; 计算节点 3的负载量为 0; 计算节点 4的负载量为 0; 计算节点 5的 负载量为 100%; 计算节点 6的负载量为 100%; 计算节点 7的负载量为 100%。 Further, if the current computing node A to be subjected to the second simulated migration is not the last one If the maintenance node is performing maintenance, the process returns to step 601. Specifically, as shown in FIG. 7, the computing node A currently undergoing the second simulated migration is not the last unsaved computing node, and the unsaved computing node further includes the computing node 5, the computing node 6, and the computing node 7. Therefore, after the virtual machine simulation migration calculation managed by the computing node 4 is completed, the management node updates the load in the computing nodes 1-7. As shown in Figure 7, the load of compute node 1 is 55%; the load of compute node 2 is 0; the load of compute node 3 is 0; the load of compute node 4 is 0; the load of compute node 5 is 100%; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
获得当前负载排序之后, 确定当前负载排序中负载量不为零并且负载量 最小的计算节点为当前待进行第二模拟迁移的计算节点 B, 如图 7所示, 当前 待进行第二模拟迁移的计算节点 B为计算节点 5。 此时, 需要继续将计算节点 5管理的虚拟机进行模拟迁移计算。 如图 7所示, 已维护的计算节点 1、 计算 节点 2、 计算节点 3的负载余量之和为 245%, 大于计算节点 5的负载量, 所 以计算节点 5可以能够被迁空。 可选的, 将计算节点 5上的 45%的负载量模拟 迁移到计算节点 1中, 计算节点 1的负载量达到 100%, 而计算节点 5的负载 量剩余 55%,然后将计算节点 5上剩余 55%的负载量模拟迁移到计算节点 2上, 此时, 计算节点 5的负载量为 0 , 计算节点 2的负载量达到 55%。 然后记录迁 移路径: 将计算节点 5上 45%的负载量模拟迁移到计算节点 1上。, 将计算节 点 2上剩余 55%的负载量模拟迁移到计算节点 2上。  After obtaining the current load ordering, it is determined that the computing node in the current load ordering is not zero and the load amount is the smallest, and the computing node that is currently undergoing the second simulated migration is the current computing node B to be subjected to the second simulated migration, as shown in FIG. Compute Node B is compute node 5. At this point, you need to continue to perform simulation migration calculations on the virtual machines managed by compute node 5. As shown in FIG. 7, the sum of the load balances of the maintained compute node 1, the compute node 2, and the compute node 3 is 245%, which is greater than the load of the compute node 5, so that the compute node 5 can be emptied. Optionally, the 45% load simulation on the computing node 5 is migrated to the computing node 1, the load of the computing node 1 reaches 100%, and the load of the computing node 5 remains 55%, and then the computing node 5 is The remaining 55% of the load is simulated and migrated to the compute node 2. At this time, the load of the compute node 5 is 0, and the load of the compute node 2 reaches 55%. Then record the migration path: Migrate the 45% load simulation on compute node 5 to compute node 1. , Migrate the remaining 55% of the load simulation on node 2 to compute node 2.
进一步的, 在将计算节点 5 管理的虚拟机迁移计算完成后, 当前待进行 第二模拟迁移的计算节点 B 不是最后一个未进行维护的计算节点, 未进行维 护的计算节点还包括计算节点 6以及计算节点 7。 因此返回执行步骤 601。 具 体的, 管理节点将计算节点 1-7中负载量进行更新。 如图 7所示, 计算节点 1 的负载量为 100%; 计算节点 2的负载量为 55%; 计算节点 3的负载量为 0; 计 算节点 4的负载量为 0;计算节点 5的负载量为 0;计算节点 6的负载量为 100%; 计算节点 7的负载量为 100%。  Further, after the virtual machine migration calculation managed by the computing node 5 is completed, the computing node B currently undergoing the second simulated migration is not the last unmaintained computing node, and the unsaved computing node further includes the computing node 6 and Calculate node 7. Therefore, the process returns to step 601. Specifically, the management node updates the load in compute nodes 1-7. As shown in Figure 7, the load of compute node 1 is 100%; the load of compute node 2 is 55%; the load of compute node 3 is 0; the load of compute node 4 is 0; the load of compute node 5 It is 0; the load of the calculation node 6 is 100%; the load of the calculation node 7 is 100%.
获得当前负载排序之后, 确定当前负载排序中负载量不为零并且负载量 最小的计算节点为当前待进行第二模拟迁移的计算节点 C, 如图 7所示, 当前 待进行第二模拟迁移的计算节点 C为计算节点 6。 此时, 需要继续将计算节点 6管理的虚拟机进行迁移计算。 如图 7所示, 计算节点 6的负载量为 100%, 已维护的计算节点 1、 2、 3的负载余量之和为 145%, 大于计算节点 6的负载 量, 所以计算节点 6可以模拟迁移。 可选的, 用计算节点 2和计算节点 3作 为第二模拟迁移的目标计算节点,即将计算节点 6上 45%的负载量模拟迁移到 计算节点 2中, 计算节点 2的负载量达到 100%, 而计算节点 6的负载量剩余 55%, 然后将计算节点 6上剩余 55%的负载量模拟迁移到计算节点 3上, 此时, 计算节点 6的节点负载量为 0 , 计算节点 3的负载量达到 55%。 然后记录迁移 路径: 将计算节点 6上 45%的负载量模拟迁移到计算节点 2上, 将计算节点 2 上剩余 55%的负载量模拟迁移到计算节点 3上。 After obtaining the current load ordering, it is determined that the computing node in the current load ordering is not zero and the load amount is the smallest, and the computing node that is currently undergoing the second simulated migration is as shown in FIG. The computing node C to be subjected to the second simulated migration is the computing node 6. At this time, it is necessary to continue the migration calculation of the virtual machine managed by the computing node 6. As shown in FIG. 7, the load of the computing node 6 is 100%, and the sum of the load margins of the maintained computing nodes 1, 2, and 3 is 145%, which is greater than the load of the computing node 6, so the computing node 6 can simulate migrate. Optionally, the computing node 2 and the computing node 3 are used as the target computing nodes of the second simulated migration, that is, the 45% load simulation on the computing node 6 is migrated to the computing node 2, and the load of the computing node 2 reaches 100%. On the other hand, the load of the computing node 6 is 55%, and then the remaining 55% of the load on the computing node 6 is simulated and migrated to the computing node 3. At this time, the node load of the computing node 6 is 0, and the load of the node 3 is calculated. Up to 55%. Then record the migration path: Migrate the 45% load simulation on compute node 6 to compute node 2, and migrate the remaining 55% load simulation on compute node 2 to compute node 3.
进一步的, 在将计算节点 6 管理的虚拟机迁移计算完成后, 当前待进行 第二模拟迁移的计算节点 C 不是最后一个未进行维护的计算节点, 未进行维 护的计算节点还包括计算节点 7。 因此返回执行步骤 601。 具体的, 管理节点 将计算节点 1-7中负载量进行更新。如图 7所示,计算节点 1的负载量为 100%; 计算节点 2的负载量为 100%; 计算节点 3的负载量为 45%; 计算节点 4的负 载量为 0; 计算节点 5的负载量为 0; 计算节点 6的负载量为 0; 计算节点 7 的负载量为 100%。  Further, after the virtual machine migration calculation managed by the computing node 6 is completed, the computing node C currently undergoing the second simulated migration is not the last unsaved computing node, and the unsaking computing node further includes the computing node 7. Therefore, the process returns to step 601. Specifically, the management node updates the load in compute nodes 1-7. As shown in Figure 7, the load of compute node 1 is 100%; the load of compute node 2 is 100%; the load of compute node 3 is 45%; the load of compute node 4 is 0; the load of compute node 5 The amount is 0; the load of compute node 6 is 0; the load of compute node 7 is 100%.
获得当前负载排序之后, 确定当前负载排序中负载量不为零并且负载量 最小的计算节点为当前待进行第二模拟迁移的计算节点 D, 如图 7所示, 当前 待进行第二模拟迁移的计算节点 D为计算节点 7。 此时, 需要继续将计算节点 7管理的虚拟机进行迁移计算。 如图 7所示, 计算节点 7的负载量为 100%, 此时, 已维护的计算节点的负载余量之和为 55%, 小于计算节点 7的负载量。 当所述当前待进行第二模拟迁移的计算节点 D 的负载量大于所述第二模拟迁 移的目标计算节点的负载余量之和时, 确定当前待进行第二模拟迁移的计算 节点不能够被模拟迁空, 此时执行步骤 604。 即计算节点 7不能模拟迁移, 结 束第二批待并发迁移的计算节点的计算。  After obtaining the current load ordering, it is determined that the computing node in the current load ordering is not zero and the load amount is the smallest, and the computing node D is currently performing the second simulated migration. As shown in FIG. 7, the second simulated migration is currently performed. Compute node D is compute node 7. At this time, it is necessary to continue the migration calculation of the virtual machine managed by the computing node 7. As shown in Figure 7, the load of compute node 7 is 100%. At this point, the sum of the load margins of the maintained compute nodes is 55%, which is less than the load of compute node 7. When the load amount of the computing node D currently undergoing the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration, determining that the computing node to be subjected to the second simulated migration cannot be The simulation is evacuated, and step 604 is performed at this time. That is, the compute node 7 cannot simulate the migration and ends the calculation of the second batch of compute nodes to be concurrently migrated.
进一步可选的, 当前待进行第二模拟迁移的计算节点 D 不能迁移至第二 模拟迁移的目标计算节点时, 可以判断未进行维护的计算节点中是否还存在 节点负载量未满的情况时。 当未进行维护的计算节点中还存在负载量未满并 且大于当前待进行第二模拟迁移的计算节点 D的计算节点 8时, 并且当前待 进行第二模拟迁移的计算节点 D的节点负载小于计算节点 8的负载余量时, 则可以将当前待进行第二模拟迁移的计算节点 D剩余的负载量模拟迁移到计 算节点 8 上; 当未进行维护的计算节点中还存在负载量未满并且大于当前待 进行第二模拟迁移的计算节点 D的计算节点 8时, 并且当前待进行第二模拟 迁移的计算节点 D的负载量大于计算节点 8的负载量时, 则当前待进行第二 模拟迁移的计算节点 D不能够被模拟迁空, 此时执行步骤 604。 Further optionally, the computing node D currently undergoing the second simulated migration cannot be migrated to the second When simulating the target node of the migration, it can be judged whether there is still a case where the node load is not full in the compute node that is not being maintained. When there is still a computing node that is not performing maintenance and is larger than the computing node 8 of the computing node D that is currently performing the second simulated migration, and the node load of the computing node D currently undergoing the second simulated migration is less than the calculation When the load balance of the node 8 is used, the remaining load simulation of the computing node D that is currently undergoing the second simulated migration may be migrated to the computing node 8; when the unsaved computing node still has a load that is not full and greater than When the computing node 8 of the computing node D is to be subjected to the second simulation migration, and the load of the computing node D to be subjected to the second simulated migration is greater than the loading amount of the computing node 8, the current second simulation migration is to be performed. The calculation node D cannot be simulated to be emptied, and step 604 is performed at this time.
进一步可选的, 当所述当前待进行第二模拟迁移的计算节点 C 的负载量 小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行 第二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟迁移的 计算节点 C 为最后一个未进行维护的计算节点, 则将当前待进行第二模拟迁 移的计算节点 C 管理的虚拟机向第二模拟迁移的目标计算节点进行迁移, 之 后, 执行步骤 605。  Further, when the load of the computing node C that is currently to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determining that the second simulated migration is currently to be performed The compute node can be simulated to be vacant. If the compute node C to be subjected to the second simulated migration is the last unsaved compute node, the virtual machine managed by the compute node C to be subjected to the second simulated migration is second. The target computing node of the simulated migration is migrated, and then, step 605 is performed.
步骤 604 ,确定初始负载量小于所述当前待进行第二模拟迁移的计算节点 D的负载量的计算节点为第二批待并发迁移的计算节点;  Step 604: Determine, by the computing node that the initial load quantity is less than the load quantity of the computing node D that is currently performing the second simulated migration, to be the second batch of computing nodes to be concurrently migrated;
如图 7所示, 第二批待并发迁移的计算节点为计算节点 4、计算节点 5以 计算节点 6。  As shown in FIG. 7, the second batch of compute nodes to be concurrently migrated are the compute node 4 and the compute node 5 to compute node 6.
在确定第二批待并发迁移的计算节点之后, 对第二批待并发迁移的计算 节点进行实际并发迁移, 具体操作参照步骤 306。  After the second batch of compute nodes to be concurrently migrated is determined, the second batch of concurrently migrated compute nodes are actually concurrently migrated. For details, refer to step 306.
步骤 605 ,确定所有未进行维护的计算节点为第二批待并发迁移的计算节 点;  Step 605: Determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated.
由于当前待进行第二模拟迁移的计算节点 C 为最后一个未进行维护的计 算节点, 即不存在计算节点 7 , 此时第二批待并发迁移的计算节点为计算节点 4、 计算节点 5以计算节点 6。  Since the computing node C to be subjected to the second simulation migration is the last unmaintained computing node, that is, the computing node 7 does not exist, the second batch of computing nodes to be concurrently migrated are the computing node 4 and the computing node 5 to calculate Node 6.
在确定第二批待并发迁移的计算节点之后, 对第二批待并发迁移的计算 节点进行实际并发迁移, 具体操作参照步骤 306。 Calculation of the second batch of concurrent migrations after determining the second batch of compute nodes to be concurrently migrated The node performs the actual concurrent migration. For details, refer to step 306.
步骤 306 ,根据记录的每个待进行第二模拟迁移的计算节点对应的第二模 拟迁移的目标计算节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁 移到其对应的第二模拟迁移的目标计算节点上。  Step 306: concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to its corresponding second simulation according to the target computing node of the second simulated migration corresponding to the computing node to be subjected to the second simulated migration. The target of the migration is on the compute node.
如图 7所示, 即将确定进行并发迁移的计算节点为计算节点 4、 计算节 点 5、 计算节点 6。  As shown in Figure 7, the compute nodes that are to be determined for concurrent migration are compute node 4, compute node 5, and compute node 6.
进一步的, 在确定进行并发迁移的计算节点之后, 按照确定进行并发迁 移的计算节点时采用的并发迁移的方式, 管理节点对所述计算节点进行并发 迁移, 并对管理节点对所述并发迁移后的计算节点进行维护。  Further, after determining the concurrently migrated computing node, the management node performs concurrent migration on the computing node according to the manner of concurrent migration that is determined when the concurrently performing computing node is performed, and after the concurrent migration of the management node The compute nodes are maintained.
具体的, 根据步骤 601-步骤 605确定进行维护的计算节点时采用的并发 迁移的方式进行迁移, 具体的, 将计算节点 4 管理的虚拟机迁移至已经维护 的计算节点 1上, 将计算节点 5管理的虚拟机迁移至已经维护的计算节点 1 和已经维护的计算节点 2上, 将计算节点 6管理的虚拟机迁移至已经维护的 计算节点 2和已经维护的计算节点 3上。  Specifically, the migration is performed according to the method of determining the concurrent migration performed by the maintenance node in steps 601 to 605. Specifically, the virtual machine managed by the computing node 4 is migrated to the already-maintained computing node 1, and the computing node 5 is The managed virtual machine is migrated to the already-maintained computing node 1 and the already-maintained computing node 2, and the virtual machine managed by the computing node 6 is migrated to the already-maintained computing node 2 and the already-maintained computing node 3.
步骤 307 , 管理节点对第二并发迁移后的至少一个所述计算节点进行维 护;  Step 307: The management node maintains at least one of the computing nodes after the second concurrent migration;
其中对计算节点进行的升级或者修复的操作与附图 3 中步骤 304相同, 在此不——赘述。  The operation of upgrading or repairing the computing node is the same as step 304 in FIG. 3, and is not described here.
步骤 308 , 管理节点按照确定第二批待并发迁移的计算节点的方法, 将所 述计算集群中没有进行模拟并发迁移的计算节点进行模拟并发迁移;  Step 308: The management node performs simulation and concurrent migration on the computing node that does not perform the simulation concurrent migration in the computing cluster according to the method for determining the second batch of the computing nodes to be concurrently migrated.
在本步骤中, 管理节点按照确定第二批待并发迁移的计算节点的方法, 继续确定第三批待并发迁移的计算节点。 可选的, 当计算集群内还存在未进 行维护的计算节点时, 则继续进行第三批待并发迁移的计算节点的确定; 当 计算集群内不存在未进行维护的计算节点时, 则结束操作。  In this step, the management node continues to determine the third batch of compute nodes to be concurrently migrated according to the method of determining the second batch of compute nodes to be concurrently migrated. Optionally, when there is still an unmaintained computing node in the computing cluster, the third batch of computing nodes to be concurrently migrated is determined to be determined; when there is no computing node that is not maintained in the computing cluster, the operation ends. .
进一步的, 如图 8所示, 未进行维护的计算节点仅剩下计算节点 7 , 则此 时仅需要对计算节点 7进行模拟迁移计算, 计算节点 7即为当前待进行第三 模拟迁移的计算节点。 将所述当前待进行第三模拟迁移的计算节点管理的虚 拟机依次模拟迁移到第三模拟迁移的目标计算节点进行迁移, 所述第三模拟 迁移的目标计算节点为所述计算集群中已进行维护并且负载量未满的计算节 点。 即第三模拟迁移的目标计算节点为计算节点 3、 计算节点 4、 计算节点 5 以及计算节点 6。 Further, as shown in FIG. 8, the computing node that is not maintained only has the computing node 7 remaining, and then only the simulation migration calculation needs to be performed on the computing node 7, and the computing node 7 is the current calculation to be subjected to the third simulated migration. node. Virtually managing the computing node currently undergoing the third simulated migration The pseudo-machine simulates the migration to the target computing node of the third simulated migration to perform the migration, and the target computing node of the third simulated migration is the computing node in the computing cluster that has been maintained and the load is not full. That is, the target computing nodes of the third simulated migration are the computing node 3, the computing node 4, the computing node 5, and the computing node 6.
其中, 计算节点 7的负载量为 100%。 所有第三模拟迁移的目标计算节点 的负载余量之和为 245%, 远大于当前待进行第三模拟迁移的计算节点的负载 量, 则可以将当前待进行第三模拟迁移的计算节点迁空。 此时将计算节点 7 上管理的虚拟机模拟迁移到所述计算节点 3上, 此时计算节点 3的负载量为 100%, 计算节点 7上剩余的负载量为 55%, 然后将计算节点 7上剩余 55%的负 载量模拟迁移到已经进行维护的所述计算节点 4 上, 此时已经进行维护的所 述计算节点 4的负载量为 55%, 计算节点 7上的负载量为 0。 然后记录迁移路 径: 将计算节点 7上 45%的负载量模拟迁移到计算节点 3上, 将计算节点 7上 剩余 55%的负载量模拟迁移到计算节点 4上。  Among them, the load of the calculation node 7 is 100%. The sum of the load margins of the target computing nodes of all the third simulated migrations is 245%, which is much larger than the load of the computing nodes to be subjected to the third simulated migration, and the computing nodes currently undergoing the third simulated migration can be emptied. . At this time, the virtual machine simulation managed on the computing node 7 is migrated to the computing node 3, at which time the load of the computing node 3 is 100%, the remaining load on the computing node 7 is 55%, and then the computing node 7 is The remaining 55% of the load is simulated to migrate to the computing node 4 that has been maintained. At this time, the load of the computing node 4 that has been maintained is 55%, and the load on the computing node 7 is 0. Then record the migration path: Migrate the 45% load simulation on compute node 7 to compute node 3 and migrate the remaining 55% load simulation on compute node 7 to compute node 4.
进一步的, 在将计算节点 7 管理的虚拟机模拟迁移计算完成后, 管理节 点将计算节点 1-7中负载量进行更新。 如图 8所示, 计算节点 1的负载量为 100%; 计算节点 2的负载量为 100%; 计算节点 3的负载量为 100%; 计算节点 4的负载量为 55%; 计算节点 5的负载量为 0; 计算节点 6的负载量为 0; 计 算节点 7的负载量为 0。  Further, after the virtual machine simulation migration calculation managed by the computing node 7 is completed, the management node updates the load in the computing nodes 1-7. As shown in Figure 8, the load of compute node 1 is 100%; the load of compute node 2 is 100%; the load of compute node 3 is 100%; the load of compute node 4 is 55%; The load is 0; the load of compute node 6 is 0; the load of compute node 7 is 0.
由于当所述当前待进行第三模拟迁移的计算节点的负载量小于所述第三 模拟迁移的目标计算节点的负载余量之和, 则当前待进行第三模拟迁移的计 算节点能够被模拟迁空, 并且当前待进行第三模拟迁移的计算节点为最后一 个未进行维护的计算节点, 则可以确定未进行维护的计算节点 7 为第三批待 并发迁移的计算节点。  The computing node to be subjected to the third simulated migration can be simulated after the load of the computing node to be subjected to the third simulated migration is smaller than the load of the target computing node of the third simulated migration. If the computing node to be subjected to the third simulated migration is the last unsaved computing node, it can be determined that the unsaved computing node 7 is the third batch of computing nodes to be concurrently migrated.
步骤 309 ,管理节点将所述第三批待并发迁移的计算节点进行第三并发迁 移;  Step 309: The management node performs the third concurrent migration of the third batch of computing nodes to be concurrently migrated;
按照确定第三批模拟并发迁移的计算节点时采用的并发迁移的方式, 管 理节点对计算节点 7进行迁移; 具体的, 将计算节点 7管理的虚拟机模拟迁 移至已经维护的计算节点 3和已经维护的计算节点 4上。 The management node migrates the compute node 7 according to the manner of concurrent migration used to determine the third batch of concurrently simulated compute nodes. Specifically, the virtual machine simulated by the compute node 7 is simulated. Move to the already-calculated compute node 3 and the already-maintained compute node 4.
步骤 310 , 管理节点对第三并发迁移后的所述计算节点进行维护。  Step 310: The management node performs maintenance on the computing node after the third concurrent migration.
在对所述并发迁移后的计算节点 7进行维护时,可参照附图 3中步骤 304 , 在此不——赘述。  In the maintenance of the concurrently transferred computing node 7, reference may be made to step 304 in FIG. 3, which is not described here.
本发明实施例提供一种迁移计算节点的方法, 通过自动确定一个计算集 群的所有计算节点中并发迁移的计算节点, 然后对确定的计算节点进行模拟 并发迁移, 可以自动确定进行模拟并发迁移的计算节点的数目, 并进行并行 迁移, 从而缩短维护计算集群中计算节点的时间。  Embodiments of the present invention provide a method for migrating a computing node. By automatically determining a concurrent computing node in all compute nodes of a computing cluster, and then performing simulated concurrent migration on the determined computing node, the calculation of the simulated concurrent migration can be automatically determined. The number of nodes, and parallel migration, thereby reducing the time to maintain compute nodes in the compute cluster.
实施例 2  Example 2
本发明实施例提供一种迁移计算节点的装置, 该装置可以为一个计算集 群中的管理节点, 如图 9 所示, 该装置包括: 获得模块 901 , 第一确定模块 902 , 第一模拟迁移模块 903 , 第二确定模块 904 , 第三确定模块 905 , 并发迁 移模块 906。  An embodiment of the present invention provides a device for migrating a computing node, where the device may be a management node in a computing cluster. As shown in FIG. 9, the device includes: an obtaining module 901, a first determining module 902, and a first analog migration module. 903. The second determining module 904, the third determining module 905, and the concurrent migration module 906.
获得模块 901 , 用于获得计算集群内的各计算节点的当前负载排序; 其中, 所述获得模块 901 具体用于: 获得所述计算集群内各计算节点的 当前负载量, 根据所述各计算节点的当前负载量进行排序, 获得所述各计算 节点的当前负载排序。  The obtaining module 901 is configured to obtain a current load order of each computing node in the computing cluster, where the obtaining module 901 is specifically configured to: obtain a current load amount of each computing node in the computing cluster, according to the computing nodes The current load amount is sorted to obtain the current load order of the respective compute nodes.
计算节点的负载量即为计算节点管理的虚拟机的负载。 每个所述计算节 点管理的虚拟机的负载包括: 所述计算节点管理的虚拟机的中央处理器 CPU 之和、 所述计算节点管理的虚拟机的内存之和、 所述计算节点管理的虚拟机 的带宽中的至少一个。  The load of the compute node is the load of the virtual machine managed by the compute node. The load of the virtual machine managed by each of the computing nodes includes: a sum of a central processing unit CPU of the virtual machine managed by the computing node, a sum of memory of the virtual machine managed by the computing node, and a virtuality managed by the computing node At least one of the bandwidth of the machine.
第一确定模块 902 ,用于确定所述负载排序中负载量不为零并且负载量最 小的计算节点为当前待进行第一模拟迁移的计算节点;  a first determining module 902, configured to determine, in the load sorting, that the load node is not zero and the load amount is the smallest, and the computing node that is currently performing the first simulated migration;
第一模拟迁移模块 903 ,用于将所述当前待进行第一模拟迁移的计算节点 管理的虚拟机向第一模拟迁移的目标计算节点进行模拟迁移, 所述第一模拟 迁移的目标计算节点为所述计算集群中负载未满且负载量大于所述当前待进 行第一模拟迁移的计算节点的负载量的计算节点; 第二确定模块 904 ,用于当所述待进行第一模拟迁移的计算节点的负载量 小于所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前待 进行第一模拟迁移的计算节点能够被模拟迁空, 返回执行所述获得模块 901 ; 当所述待进行第一模拟迁移的计算节点的负载量大于所述第一模拟迁移的目 标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移的计算节 点不能够被模拟迁空, 执行第三确定模块 905 ; The first simulation migration module 903 is configured to perform simulation migration on the virtual machine managed by the computing node currently undergoing the first simulated migration to the target computing node of the first simulated migration, where the target computing node of the first simulated migration is Calculating, by the computing node, that the load in the cluster is not full and the load is greater than the load of the computing node that is currently performing the first simulated migration; a second determining module 904, configured to determine, when the load quantity of the computing node to be subjected to the first simulated migration is smaller than a load balance of the target computing node of the first simulated migration, The simulated migration computing node can be simulated to be emptied and returned to perform the obtaining module 901; when the load of the computing node to be subjected to the first simulated migration is greater than the load margin of the target computing node of the first simulated migration And determining that the computing node that is currently to be subjected to the first simulated migration cannot be simulated to be emptied, and executing the third determining module 905;
所述第三确定模块 905 ,用于确定初始负载量小于所述当前待进行第一模 拟迁移的计算节点的负载量的计算节点为第一批待并发迁移的计算节点; 并发迁移模块 906 ,将所述第一批待并发迁移的计算节点进行第一并发迁 移。  The third determining module 905 is configured to determine that the computing node whose initial load is smaller than the load of the computing node to be subjected to the first simulated migration is the first computing node that is to be concurrently migrated; the concurrent migration module 906, The first batch of compute nodes to be concurrently migrated perform the first concurrent migration.
进一步的, 如图 10所示, 该装置中的所述第一模拟迁移模块 903包括: 第一模拟迁移单元 9031 , 记录单元 9032;  Further, as shown in FIG. 10, the first analog migration module 903 in the device includes: a first analog migration unit 9031, a recording unit 9032;
第一模拟迁移单元 9031 , 用于将所述当前待进行第一模拟迁移的计算节 点管理的虚拟机模拟迁移到所述计算集群中负载未满且负载量最大的计算节 点上; 若所述负载未满且负载量最大的计算节点的负载量已满而所述当前待 进行第一模拟迁移的计算节点还未迁空, 按照负载量依次递减的顺序, 选择 所述计算集群中的其他负载未满的计算节点, 并将所述当前待进行第一模拟 迁移的计算节点管理的剩余的虚拟机模拟迁移到所选择的计算节点上。  a first simulation migration unit 9031, configured to migrate a virtual machine simulation managed by the computing node currently performing the first simulated migration to a computing node in the computing cluster that has a load that is not full and has the largest load; The load of the compute node that is not full and has the largest load is full, and the compute node that is currently to be subjected to the first simulated migration has not been vacant, and the other loads in the computing cluster are selected in the order of decreasing load. A full computing node is configured to migrate the remaining virtual machine simulations managed by the computing node currently undergoing the first simulated migration to the selected computing node.
在将所述当前待进行第一模拟迁移的计算节点管理的剩余的虚拟机模拟 迁移到所选择的计算节点上时, 第一模拟迁移模块 903中的记录单元 9032需 要记录模拟迁移的方式, 所述记录单元 9032 , 用于记录每个待进行第一模拟 迁移的计算节点对应的第一模拟迁移的目标计算节点。  When the remaining virtual machine simulation managed by the computing node currently undergoing the first simulated migration is migrated to the selected computing node, the recording unit 9032 in the first simulated migration module 903 needs to record the mode of the simulated migration. The recording unit 9032 is configured to record a target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
在记录单元 9032记录模拟迁移的方式之后, 所述并发迁移模块 906根据 记录的每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目标计算 节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁移到其对应的第一 模拟迁移的目标计算节点上。  After the recording unit 9032 records the mode of the simulated migration, the concurrent migration module 906 calculates the to-be-concurrent migration according to the target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration. The node-managed virtual machine is concurrently migrated to its corresponding first simulated migration target computing node.
进一步的,如图 10所示,所述装置还包括: 维护模块 907 ,处理模块 908 ; 在所述待并发迁移的计算节点管理的虚拟机并发迁移到其对应的第一模 拟迁移的目标计算节点上之后, 维护模块 907 , 用于对第一并发迁移后的至少 一个所述计算节点进行维护。 Further, as shown in FIG. 10, the device further includes: a maintenance module 907, a processing module 908; After the virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the target computing node of the corresponding first simulated migration, the maintenance module 907 is configured to perform the at least one computing node after the first concurrent migration. maintain.
在对第一并发迁移后的至少一个所述计算节点进行维护之后, 处理模块 908 , 用于将所述计算集群中没有进行第一并发迁移的计算节点进行模拟并发 迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁移的计 算节点进行第二并发迁移。  After performing maintenance on the at least one of the computing nodes after the first concurrent migration, the processing module 908 is configured to perform simulation concurrent migration on the computing node that does not perform the first concurrent migration in the computing cluster, and determine that the second batch is concurrently concurrent. The migrated computing node performs the second concurrent migration of the second batch of compute nodes to be concurrently migrated.
其中, 所述处理模块 908包括: 获得单元 9081 , 第一确定单元 9082 , 模 拟迁移单元 9083 , 第二确定单元 9084 , 第三确定单元 9085 , 第四确定单元 9086 , 并发迁移单元 9087 ;  The processing module 908 includes: an obtaining unit 9081, a first determining unit 9082, an analog migration unit 9083, a second determining unit 9084, a third determining unit 9085, a fourth determining unit 9086, and a concurrent migration unit 9087;
管理节点在对各计算节点的进行当前负载排序之后, 获得单元 9081 , 用 于获得计算集群内的各计算节点的当前负载排序, 所述当前负载排序区分已 进行维护的计算节点和未进行维护的计算节点;  After the management node sorts the current load of each computing node, the obtaining unit 9081 is configured to obtain a current load order of each computing node in the computing cluster, where the current load ordering distinguishes between the maintenance node that has been maintained and the unmaintained calculate node;
进一步的, 第一确定单元 9082 , 用于确定当前负载排序中负载量不为零 并且负载量最小的计算节点为当前待进行第二模拟迁移的计算节点;  Further, the first determining unit 9082 is configured to determine that the computing node whose current load ordering is not zero and the load amount is the smallest is a computing node that is currently to be subjected to the second simulated migration;
在确定当前负载排序中负载量不为零并且负载量最小的计算节点为当前 待进行第二模拟迁移的计算节点之后, 模拟迁移单元 9083 , 用于将所述当前 待进行第二模拟迁移的计算节点管理的虚拟机向第二模拟迁移的目标计算节 点进行迁移, 所述第二模拟迁移的目标计算节点为所述计算集群中已进行维 护的计算节点;  After determining that the calculation node in the current load order is not zero and the load is the smallest, the simulation node is configured to perform the second simulation migration. The node-managed virtual machine migrates to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster;
当所述当前待进行第二模拟迁移的计算节点的负载量小于所述第二模拟 迁移的目标计算节点的负载余量之和时, 第二确定单元 9084 , 用于确定当前 待进行第二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟 迁移的计算节点为最后一个未进行维护的计算节点,执行第三确定单元 9085 , 如果当前待进行第二模拟迁移的计算节点不是最后一个未进行维护的计算节 点, 返回执行所述获得单元 9081 ; 当所述当前待进行第二模拟迁移的计算节 点的负载量大于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定 当前待进行第二模拟迁移的计算节点不能够被模拟迁空, 执行第四确定单元When the load of the computing node to be subjected to the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, the second determining unit 9084 is configured to determine that the second simulation is currently to be performed. The migrated computing node can be simulated to be vacant. If the computing node to be subjected to the second simulated migration is the last unmaintained computing node, the third determining unit 9085 is executed, if the computing node to be subjected to the second simulated migration is not The last unmaintained computing node returns to perform the obtaining unit 9081; when the load of the computing node currently undergoing the second simulated migration is greater than the sum of the load margins of the target computing node of the second simulated migration When, OK The computing node currently undergoing the second simulated migration cannot be simulated to be vacant, and the fourth determining unit is executed.
9086; 9086;
进一步的, 所述第三确定单元 9085, 用于确定所有未进行维护的计算节 点为第二批待并发迁移的计算节点, 执行并发迁移单元 9087;  Further, the third determining unit 9085 is configured to determine that all the unsaved computing nodes are the second batch of computing nodes that are concurrently migrated, and execute the concurrent migration unit 9087;
进一步的, 所述第四确定单元 9086, 用于确定初始负载量小于所述当前 待进行第二模拟迁移的计算节点的负载量的计算节点为第二批待并发迁移的 计算节点, 执行并发迁移单元 9087;  Further, the fourth determining unit 9086 is configured to determine that the computing node whose initial load is smaller than the load of the computing node that is currently performing the second simulated migration is the second computing node that is to be concurrently migrated, and performs concurrent migration. Unit 9087;
在确定第一批待并发迁移的计算节点之后, 所述并发迁移单元 9087, 用 于将所述第二批待并发迁移的计算节点进行第二并发迁移。 并由模拟迁移模 块 9083对第二并发迁移后的至少一个所述计算节点进行维护。  After determining the first batch of compute nodes to be concurrently migrated, the concurrent migration unit 9087 is configured to perform the second concurrent migration on the second batch of compute nodes to be concurrently migrated. And maintaining, by the simulation migration module 9083, at least one of the computing nodes after the second concurrent migration.
进一步的, 所述处理模块 908, 还用于按照确定第二批待并发迁移的计算 节点的方法, 将所述计算集群中没有进行模拟并发迁移的计算节点进行模拟 并发迁移。  Further, the processing module 908 is further configured to simulate, concurrently migrate, the computing nodes that do not perform the simulated concurrent migration in the computing cluster according to the method for determining the second batch of concurrently migrated computing nodes.
本发明实施例提供一种迁移计算节点的装置, 通过第三确定模块自动确 定一个计算集群内待并发迁移的计算节点中进行模拟并发迁移的计算节点, 并发迁移模块对确定的所述计算节点进行并发迁移, 然后维护模块对进行并 发迁移的计算节点进行维护。 使得可以自动确定进行并发迁移的计算节点的 数目, 从而缩短维护计算集群中计算节点的时间。  An embodiment of the present invention provides an apparatus for migrating a computing node, and the third determining module automatically determines a computing node that performs simulation concurrent migration in a computing node to be concurrently migrated in the computing cluster, and the concurrent migration module performs the determined computing node. Concurrent migration, and then the maintenance module maintains the compute nodes that perform concurrent migration. This makes it possible to automatically determine the number of compute nodes performing concurrent migrations, thereby reducing the time to maintain compute nodes in the compute cluster.
本发明实施例提供一种迁移计算节点的装置, 该装置的执行主体可以为 计算集群中的管理节点, 如图 11 所示, 该装置包括: 处理器 1101, 存储器 1102;  The embodiment of the present invention provides a device for migrating a computing node, and the executing entity of the device may be a management node in a computing cluster. As shown in FIG. 11, the device includes: a processor 1101, a memory 1102;
处理器 1101, 用于获得计算集群内的各计算节点的当前负载排序; 存储器 1102, 用于存储所述计算集群内的各计算节点的所述当前负载排 序;  The processor 1101 is configured to obtain a current load order of each computing node in the computing cluster, and a storage 1102, configured to store the current load sequence of each computing node in the computing cluster;
所述处理器 1101, 还用于确定所述负载排序中负载量不为零并且负载量 最小的计算节点为当前待进行第一模拟迁移的计算节点; 以及将所述当前待 进行第一模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点 进行模拟迁移, 所述第一模拟迁移的目标计算节点为所述计算集群中负载量 未满且负载量大于所述当前待进行第一模拟迁移的计算节点的负载量的计算 节点; The processor 1101 is further configured to: determine that the computing node whose load quantity is not zero and the minimum load quantity in the load sorting is a computing node that is to be subjected to the first simulated migration; and the current first to be simulated migration Compute node managed virtual machine to the first simulated migration target computing node Performing a simulated migration, where the target computing node of the first simulated migration is a computing node in the computing cluster that has a load that is not full and whose load is greater than a load of the computing node that is currently performing the first simulated migration;
以及当所述待进行第一模拟迁移的计算节点的负载量小于所述第一模拟 迁移的目标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移 的计算节点能够被模拟迁空; 当所述待进行第一模拟迁移的计算节点的负载 量大于所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前 待进行第一模拟迁移的计算节点不能够被模拟迁空;  And determining, when the load amount of the computing node to be subjected to the first simulated migration is smaller than the load balance of the target computing node of the first simulated migration, determining that the computing node to be subjected to the first simulated migration can be Simulating the vacancy; determining, when the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of the target computing node of the first simulated migration, determining the current simulation to be performed Nodes cannot be simulated to be vacant;
进一步的, 处理器 1101 , 还用于确定初始负载量小于所述当前待进行第 一模拟迁移的计算节点的负载量的计算节点为第一批待并发迁移的计算节 点;  Further, the processor 1101 is further configured to determine, by the computing node that the initial load is less than the load of the computing node that is currently performing the first simulated migration, as the computing node of the first batch of concurrent migration;
以及将所述第一批待并发迁移的计算节点进行第一并发迁移。  And performing, by the first batch of computing nodes to be concurrently migrated, the first concurrent migration.
在对计算集群中的计算节点进行模拟迁移之前, 需要对所述计算集群内 各计算节点的当前负载量进行负载排序, 所以所述处理器 1101 , 还用于获得 所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的当前负载 量进行排序, 获得所述各计算节点的当前负载排序。  Before the simulated migration of the computing nodes in the computing cluster, the current load of each computing node in the computing cluster needs to be load-sorted, so the processor 1101 is further configured to obtain the computing nodes in the computing cluster. The current load quantity is sorted according to the current load quantity of each computing node, and the current load order of the each computing node is obtained.
在获得所述各计算节点的当前负载排序之后, 存储器 1102 , 存储所述计 算集群内的各计算节点的当前负载排序。 所述处理器 1101 , 还用于: 将所述 当前待进行第一模拟迁移的计算节点管理的虚拟机模拟迁移到所述计算集群 中负载未满且负载量最大的计算节点上; 若所述负载未满且负载量最大的计 算节点的节点负载量已满而所述当前待进行第一模拟迁移的计算节点还未迁 空, 按照负载量依次递减的顺序, 选择所述计算集群中的其他负载未满的计 算节点, 并将所述当前待进行第一模拟迁移的计算节点管理的剩余的虚拟机 模拟迁移到所选择的计算节点上。  After obtaining the current load ordering of the compute nodes, the memory 1102 stores the current load order of the compute nodes within the compute cluster. The processor 1101 is further configured to: migrate the virtual machine simulation managed by the computing node currently undergoing the first simulated migration to the computing node in the computing cluster that has a load that is not full and has the largest load; The node load of the compute node whose load is not full and the load is the largest is full, and the compute node to be subjected to the first simulation migration has not been vacant, and the other ones in the calculation cluster are selected in descending order of the load amount. The computing node that is not full is loaded, and the remaining virtual machine simulation managed by the computing node currently undergoing the first simulated migration is migrated to the selected computing node.
进一步的, 所述存储器 1102 , 还用于记录每个待进行第一模拟迁移的计 算节点对应的第一模拟迁移的目标计算节点; 记录每个待进行第一模拟迁移 的计算节点对应的第一模拟迁移的目标计算节点用于后续在对计算集群中的 各个计算节点进行并发迁移时的具体方式。 Further, the memory 1102 is further configured to record a target computing node corresponding to the first simulated migration corresponding to the computing node to be subjected to the first simulated migration; and record the first corresponding to the computing node to be subjected to the first simulated migration. The simulated compute target compute node is used for subsequent pairs in the compute cluster The specific way when each compute node performs concurrent migration.
在记录每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目标 计算节点之后, 所述处理器 1102 , 还用于将所述待并发迁移的计算节点管理 的虚拟机并发迁移到其对应的第一模拟迁移的目标计算节点上。  After the target computing node of the first simulated migration corresponding to the computing node to be subjected to the first simulated migration is recorded, the processor 1102 is further configured to concurrently migrate the virtual machine managed by the computing node to be concurrently migrated to It corresponds to the first simulated migration on the target compute node.
在将所述待并发迁移的计算节点管理的虚拟机并发迁移到其对应的第一 模拟迁移的目标计算节点上之后, 所述处理器 1101 , 还用于对第一并发迁移 后的至少一个所述计算节点进行维护。  After the virtual machine managed by the computing node to be concurrently migrated is concurrently migrated to the target computing node of the corresponding first simulated migration, the processor 1101 is further configured to use at least one after the first concurrent migration. The compute node is maintained.
进一步的, 所述处理器 1101 , 还用于将所述计算集群中没有进行第一并 发迁移的计算节点进行模拟并发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁移的计算节点进行第二并发迁移。  Further, the processor 1101 is further configured to perform simulation concurrent migration on a computing node that does not perform the first concurrent migration in the computing cluster, determine a second batch of computing nodes to be concurrently migrated, and use the second batch The compute node to be concurrently migrated performs the second concurrent migration.
在将进行第二批待并发迁移的计算节点进行第二并发迁移之前, 所述处 理器 1101 , 还用于获得计算集群内的各计算节点的当前负载排序, 所述当前 负载排序区分已进行维护的计算节点和未进行维护的计算节点;  The processor 1101 is further configured to obtain a current load order of each computing node in the computing cluster, where the current load sorting has been maintained before the second concurrent migration is performed. Compute nodes and compute nodes that are not maintained;
以及当前负载排序中负载量不为零并且负载量最小的计算节点为当前待 进行第二模拟迁移的计算节点;  And the computing node in the current load ordering that the load quantity is not zero and the load quantity is the smallest is the computing node to be subjected to the second simulated migration;
在确定当前待进行第二模拟迁移的计算节点之后, 所述处理器 1101 , 还 用于将所述当前待进行第二模拟迁移的计算节点管理的虚拟机向第二模拟迁 移的目标计算节点进行迁移, 所述第二模拟迁移的目标计算节点为所述计算 集群中已进行维护的计算节点;  After determining the current computing node to be subjected to the second simulated migration, the processor 1101 is further configured to perform, by using the virtual machine managed by the computing node that is currently performing the second simulated migration, to the target computing node of the second simulated migration. The target computing node of the second simulated migration is a computing node that has been maintained in the computing cluster;
所述处理器 1101 , 还用于当所述当前待进行第二模拟迁移的计算节点的 负载量小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前 待进行第二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟 迁移的计算节点为最后一个未进行维护的计算节点, 继续执行确定所有未进 行维护的计算节点为第二批待并发迁移的计算节点; 如果当前待进行第二模 拟迁移的计算节点不是最后一个未进行维护的计算节点, 返回执行对计算节 点的负载排序; 当所述当前待进行第二模拟迁移的计算节点的负载量大于所 述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第二模 拟迁移的计算节点不能够被模拟迁空, 执行确定初始负载量小于所述当前待 进行第二模拟迁移的计算节点的负载量的计算节点为第二批待并发迁移的计 算节点; The processor 1101 is further configured to: when the load quantity of the computing node that is currently to undergo the second simulated migration is smaller than the sum of the load margins of the target computing node of the second simulated migration, determine that the current to be performed is the second The simulated migration compute node can be simulated to be vacant. If the compute node to be subjected to the second simulation migration is the last unmaintained compute node, continue to perform the determination that all the unsaved compute nodes are the second batch of concurrent migrations. Calculating a node; if the computing node to be subjected to the second simulated migration is not the last unmaintained computing node, returning to perform load sorting on the computing node; when the load of the computing node to be subjected to the second simulated migration is greater than Determining the current second mode to be performed when the sum of the load margins of the target nodes of the second simulated migration is calculated The computing node to be migrated cannot be simulated, and the computing node that determines that the initial load is less than the load of the computing node to be subjected to the second simulated migration is the second batch of computing nodes to be concurrently migrated;
进一步的, 所述处理器 1101 , 还用于确定所有未进行维护的计算节点为 第二批待并发迁移的计算节点;  Further, the processor 1101 is further configured to determine that all the unsaved computing nodes are the second batch of computing nodes to be concurrently migrated;
所述处理器 1101 , 还用于确定初始负载量小于所述当前待进行第二模拟 迁移的计算节点的负载量的计算节点为第二批待并发迁移的计算节点;  The processor 1101 is further configured to determine, by the computing node that the initial load is smaller than the load of the computing node to be subjected to the second simulated migration, to the second batch of computing nodes that are to be concurrently migrated;
以及将所述第二批待并发迁移的计算节点进行第二并发迁移。  And performing, by the second batch of computing nodes to be concurrently migrated, a second concurrent migration.
在对所述第二批待并发迁移的计算节点进行第二并发迁移之后, 所述处 理器 1101 , 还用于对第二并发迁移后的至少一个所述计算节点进行维护。  The processor 1101 is further configured to perform maintenance on the at least one of the second concurrently migrated computing nodes after the second concurrent migration is performed on the second batch of concurrently transferred computing nodes.
所述处理器 1101 ,还用于按照确定第二批待并发迁移的计算节点的方法, 将所述计算集群中没有进行模拟并发迁移的计算节点进行模拟并发迁移。  The processor 1101 is further configured to simulate, concurrently migrate, a computing node that does not perform simulated concurrent migration in the computing cluster according to a method for determining a second batch of compute nodes to be concurrently migrated.
一种计算机可读介质, 其特征在于, 包括: 所述计算机可读介质包含计 算机执行指令, 当计算机的中央处理器执行所述计算机执行指令时, 所述计 算机执行一种迁移计算节点的方法。  A computer readable medium, comprising: the computer readable medium comprising computer executing instructions that, when a central processor of a computer executes the computer to execute an instruction, the computer performs a method of migrating a compute node.
本发明实施例提供一种迁移计算节点的装置, 主要通过处理器来确定一 个计算集群内待并发迁移的计算节点中进行模拟迁移的计算节点, 并对确定 的所述确定进行模拟迁移的计算节点进行并发迁移, 在对进行并发迁移的计 算节点进行维护。 使得可以自动确定进行并发迁移的计算节点的数目, 从而 达到操作灵活、 缩短升级或者修复计算节点时间的目的。  An embodiment of the present invention provides an apparatus for migrating a computing node, where a computing node that performs simulated migration in a computing node to be concurrently migrated in a computing cluster is determined by a processor, and a computing node that performs simulated migration of the determined determination is performed. Concurrent migrations are performed on compute nodes that perform concurrent migrations. This makes it possible to automatically determine the number of compute nodes that perform concurrent migrations, thereby achieving the goal of flexible operation, reduced upgrades, or fixed compute node time.
需要说明的是, 以上所描述的装置实施例仅仅是示意性的, 其中所述作 为分离部件说明的单元可以是或者也可以不是物理上分开的, 作为单元显示 的部件可以是或者也可以不是物理单元, 即可以位于一个地方, 或者也可以 分布到多个网络单元上。 可以根据实际的需要选择其中的部分或者全部模块 来实现本实施例方案的目的。 本领域普通技术人员在不付出创造性劳动的情 况下, 即可以理解并实施。  It should be noted that the device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as the cells may or may not be physical. Units can be located in one place, or they can be distributed to multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment. Those of ordinary skill in the art can understand and implement without any creative effort.
通过以上的实施方式的描述, 所属领域的技术人员可以清楚地了解到本 发明可借助软件加必需的通用硬件的方式来实现, 当然也可以通过专用硬件 包括专用集成电路、 专用 CPU、 专用存储器、 专用元器件等来实现, 但很多情 况下前者是更佳的实施方式。 基于这样的理解, 本发明的技术方案本质上或 者说对现有技术做出贡献的部分可以以软件产品的形式体现出来, 该计算机 软件产品存储在可读取的存储介质中, 如计算机的软盘, U盘、 移动硬盘、 只 读存储器(ROM, Read-Only Memory ), 随机存取存储器( RAM, Random Acces s Memory ), 磁碟或者光盘等, 包括若干指令用以使得一台计算机设备(可以是 个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述的方法。 Through the description of the above embodiments, those skilled in the art can clearly understand this The invention can be implemented by means of software plus necessary general hardware, and of course can also be realized by dedicated hardware including an application specific integrated circuit, a dedicated CPU, a dedicated memory, a dedicated component, etc., but in many cases the former is a better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a readable storage medium, such as a floppy disk of a computer. , U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Acces s Memory), disk or optical disk, etc., including a number of instructions to make a computer device (can It is a personal computer, a server, or a network device, etc.) that performs the methods described in various embodiments of the present invention.
本说明书中的各个实施例均采用递进的方式描述, 各个实施例之间相同 相似的部分互相参见即可, 每个实施例重点说明的都是与其他实施例的不同 之处。 尤其, 对于装置和***实施例而言, 由于其基本相似于方法实施例, 所以描述得比较筒单, 相关之处参见方法实施例的部分说明即可。  The various embodiments in the specification are described in a progressive manner, and the same or similar parts of the various embodiments may be referred to each other, and each embodiment focuses on differences from other embodiments. In particular, for device and system embodiments, since they are substantially similar to the method embodiments, they are described in a relatively straightforward manner, as described in the section of the method embodiments.
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限 于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可轻易 想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护 范围应所述以权利要求的保护范围为准。  The above is only the specific embodiment of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily think of changes or substitutions within the technical scope of the present invention. It should be covered by the scope of the present invention. Therefore, the scope of the invention should be determined by the scope of the claims.

Claims

权利要求 书 claims
1、 一种迁移计算节点的方法, 其特征在于, 包括: 1. A method of migrating computing nodes, which is characterized by including:
步骤 A: 获得计算集群内的各计算节点的当前负载排序; Step A: Obtain the current load ranking of each computing node in the computing cluster;
步骤 B:确定所述负载排序中负载量不为零并且负载量最小的计算节点为当 前待进行第一模拟迁移的计算节点; Step B: Determine the computing node with a non-zero load and the smallest load in the load sorting as the computing node currently to be performed for the first simulation migration;
步骤 C:将所述当前待进行第一模拟迁移的计算节点管理的虚拟机向第一模 拟迁移的目标计算节点进行模拟迁移, 所述第一模拟迁移的目标计算节点为所 述计算集群中负载未满且负载量大于所述当前待进行第一模拟迁移的计算节点 的负载量的计算节点; Step C: Simulate the migration of the virtual machine managed by the computing node currently to be performed for the first simulated migration to the target computing node of the first simulated migration. The target computing node of the first simulated migration is the load in the computing cluster. A computing node that is not full and has a load greater than the load of the computing node currently to be subjected to the first simulated migration;
当所述待进行第一模拟迁移的计算节点的负载量小于所有所述第一模拟迁 移的目标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移的计 算节点能够被模拟迁空,返回执行步骤 A; 当所述待进行第一模拟迁移的计算节 点的负载量大于所有所述第一模拟迁移的目标计算节点的负载余量之和时, 确 定所述当前待进行第一模拟迁移的计算节点不能够被模拟迁空, 执行步骤 D; 步骤 D:确定初始负载量小于所述当前待进行第一模拟迁移的计算节点的负 载量的计算节点为第一批待并发迁移的计算节点; When the load of the computing node to be subjected to the first simulated migration is less than the sum of the load margins of all the target computing nodes of the first simulated migration, it is determined that the computing node currently to be subjected to the first simulated migration can be Simulate the migration and return to step A; when the load of the computing node to be migrated for the first simulated migration is greater than the sum of the load margins of all target computing nodes for the first simulated migration, determine that the computing node currently to be migrated is The computing node of the first simulated migration cannot be simulated to be migrated, and step D is executed; Step D: Determine the computing nodes whose initial load is less than the load of the computing node currently to be simulated to migrate as the first batch to be concurrently Migrated compute nodes;
步骤 E: 将所述第一批待并发迁移的计算节点进行第一并发迁移。 Step E: Perform the first concurrent migration of the first batch of computing nodes to be concurrently migrated.
2、 根据权利要求 1所述的方法, 其特征在于, 所述获得计算集群内的各计 算节点的当前负载排序包括: 2. The method according to claim 1, wherein obtaining the current load ranking of each computing node in the computing cluster includes:
获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的当 前负载量进行排序, 获得所述各计算节点的当前负载排序。 Obtain the current load of each computing node in the computing cluster, sort according to the current load of each computing node, and obtain the current load ranking of each computing node.
3、 根据权利要求 1或 2所述的方法, 其特征在于, 所述将所述当前待进行 第一模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点进行模 拟迁移, 所述待进行第一模拟迁移的目标计算节点为所述计算集群中负载未满 且负载量大于所述当前待进行第一模拟迁移的计算节点的负载量的计算节点, 包括: 3. The method according to claim 1 or 2, characterized in that: performing simulated migration of the virtual machine managed by the computing node currently to be subjected to the first simulated migration to the target computing node of the first simulated migration, so The target computing node to be subjected to the first simulated migration is a computing node in the computing cluster that is not fully loaded and has a load greater than the load of the computing node currently to be subjected to the first simulated migration, including:
将所述当前待进行第一模拟迁移的计算节点管理的虚拟机模拟迁移到所述 计算集群中负载未满且负载量最大的计算节点上; 若所述负载未满且负载量最 大的计算节点的节点负载量已满而所述当前待进行第一模拟迁移的计算节点还 未迁空, 按照负载量依次递减的顺序, 选择所述计算集群中的其他负载未满的 计算节点, 并将所述当前待进行第一模拟迁移的计算节点管理的剩余的虚拟机 模拟迁移到所选择的计算节点上。 Simulate and migrate the virtual machine managed by the computing node currently to be migrated to the first simulation On the computing node that is not fully loaded and has the largest load in the computing cluster; if the node load of the computing node that is not fully loaded and has the largest load is full and the computing node that is currently to be migrated for the first simulation has not yet been migrated. Empty, in order of decreasing load, select other computing nodes in the computing cluster that are not fully loaded, and simulate and migrate the remaining virtual machines managed by the computing node that is currently to be migrated for the first simulation to the selected node. on the computing node.
4、 根据权利要求 3所述的方法, 其特征在于, 所述将所述当前待进行第一 模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点进行迁移之 后, 还包括: 步骤 C, 记录每个待进行第一模拟迁移的计算节点对应的第一模拟 迁移的目标计算节点; 4. The method according to claim 3, characterized in that, after migrating the virtual machine managed by the computing node currently to be subjected to the first simulated migration to the target computing node of the first simulated migration, it further includes: Step C, record the target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration;
所述将所述待并发迁移的计算节点进行并发迁移包括: The concurrent migration of the computing nodes to be concurrently migrated includes:
根据记录的每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目 标计算节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁移到其对应的 第一模拟迁移的目标计算节点上。 According to the recorded target computing node of the first simulated migration corresponding to each computing node to be concurrently migrated, concurrently migrate the virtual machines managed by the computing node to be concurrently migrated to its corresponding target of the first simulated migration. on the computing node.
5、 根据权利要求 1-4任意一项所述的方法, 其特征在于, 在将所述第一批 待并发迁移的计算节点进行第一并发迁移之后, 还包括: 5. The method according to any one of claims 1 to 4, characterized in that, after performing the first concurrent migration of the first batch of computing nodes to be concurrently migrated, it further includes:
步骤 F: 对第一并发迁移后的至少一个所述计算节点进行维护。 Step F: Maintain at least one of the computing nodes after the first concurrent migration.
6、 根据权利要求 5所述的方法, 其特征在于, 当对第一并发迁移后的至少 一个所述计算节点进行维护之后, 还包括: 6. The method according to claim 5, characterized in that, after maintaining at least one of the computing nodes after the first concurrent migration, it further includes:
步骤 G:将所述计算集群中没有进行第一并发迁移的计算节点进行模拟并发 迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁移的计算 节点进行第二并发迁移。 Step G: Simulate concurrent migration of the computing nodes in the computing cluster that have not undergone the first concurrent migration, determine the second batch of computing nodes to be concurrently migrated, and perform the second batch of computing nodes to be concurrently migrated. Concurrent migrations.
7、 根据权利要求 6所述的方法, 其特征在于, 所述将所述计算集群中没有 进行第一并发迁移的计算节点进行模拟并发迁移, 确定第二批待并发迁移的计 算节点, 并将所述第二批待并发迁移的计算节点进行第二并发迁移包括: 7. The method according to claim 6, characterized in that: performing simulated concurrent migration on the computing nodes in the computing cluster that have not undergone the first concurrent migration, determining the second batch of computing nodes to be concurrently migrated, and The second concurrent migration of the second batch of computing nodes to be concurrently migrated includes:
步骤 H: 获得计算集群内的各计算节点的当前负载排序, 所述当前负载排序 区分已进行维护的计算节点和未进行维护的计算节点; Step H: Obtain the current load ranking of each computing node in the computing cluster, and the current load ranking distinguishes between computing nodes that have been maintained and computing nodes that have not been maintained;
步骤 I:确定当前负载排序中负载量不为零并且负载量最小的计算节点为当 前待进行第二模拟迁移的计算节点; Step I: Determine the computing node with a non-zero load and the smallest load in the current load sorting. The computing node to be migrated for the second simulation;
步骤 J :将所述当前待进行第二模拟迁移的计算节点管理的虚拟机向第二模 拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标计算节点为所述计 算集群中已进行维护的计算节点; Step J: Migrate the virtual machine managed by the computing node currently to be subjected to the second simulated migration to the target computing node of the second simulated migration. The target computing node of the second simulated migration is the computing node that has been processed in the computing cluster. Maintained computing nodes;
当所述当前待进行第二模拟迁移的计算节点的负载量小于所述第二模拟迁 移的目标计算节点的负载余量之和时, 确定当前待进行第二模拟迁移的计算节 点能够被模拟迁空, 如果当前待进行第二模拟迁移的计算节点为最后一个未进 行维护的计算节点,执行步骤 K , 如果当前待进行第二模拟迁移的计算节点不是 最后一个未进行维护的计算节点,返回执行步骤 H ; 当所述当前待进行第二模拟 迁移的计算节点的负载量大于所述第二模拟迁移的目标计算节点的负载余量之 和时,确定当前待进行第二模拟迁移的计算节点不能够被模拟迁空,执行步骤 L; 步骤 K: 确定所有未进行维护的计算节点为第二批待并发迁移的计算节点, 执行步骤 M; When the load of the computing node currently to be subjected to the second simulated migration is less than the sum of the load margins of the target computing nodes of the second simulated migration, it is determined that the computing node currently to be subjected to the second simulated migration can be simulated migrated. Empty. If the computing node currently to be migrated for the second simulation is the last computing node that has not been maintained, perform step K. If the computing node currently to be migrated for the second simulation is not the last computing node that has not been maintained, return to execution. Step H; When the load of the computing node currently to be subjected to the second simulated migration is greater than the sum of the load margins of the target computing nodes of the second simulated migration, determine that the computing node currently to be subjected to the second simulated migration is not Can be simulated to be migrated, perform step L; Step K: Determine all computing nodes that have not been maintained as the second batch of computing nodes to be concurrently migrated, perform step M;
步骤 L:确定初始负载量小于所述当前待进行第二模拟迁移的计算节点的负 载量的计算节点为第二批待并发迁移的计算节点, 执行步骤 M; Step L: Determine the computing nodes whose initial load is less than the load of the computing node currently to be migrated for the second simulation as the second batch of computing nodes to be migrated concurrently, and execute step M;
步骤 M: 将所述第二批待并发迁移的计算节点进行第二并发迁移。 Step M: Perform the second concurrent migration of the second batch of computing nodes to be concurrently migrated.
8、 根据权利要求 7所述的方法, 其特征在于, 在将所述第二批待并发迁移 的计算节点进行第二并发迁移之后, 还包括: 8. The method according to claim 7, characterized in that, after performing the second concurrent migration on the second batch of computing nodes to be concurrently migrated, it further includes:
步骤 N: 对第二并发迁移后的至少一个所述计算节点进行维护。 Step N: Maintain at least one of the computing nodes after the second concurrent migration.
9、 根据权利要求 8所述的方法, 其特征在于, 当对第二并发迁移后的至少 一个所述计算节点进行维护之后, 还包括: 9. The method according to claim 8, characterized in that, after maintaining at least one of the computing nodes after the second concurrent migration, it further includes:
步骤 0:按照确定第二批待并发迁移的计算节点的方法, 将所述计算集群中 没有进行模拟并发迁移的计算节点进行模拟并发迁移。 Step 0: According to the method of determining the second batch of computing nodes to be concurrently migrated, simulate concurrent migration of the computing nodes in the computing cluster that have not been simulated concurrently migrated.
1 0、 根据权利要求 1-9 中任一项所述的方法, 其特征在于, 每个所述计算 节点管理的虚拟机的负载包括: 所述计算节点管理的虚拟机的中央处理器 CPU 之和、 所述计算节点管理的虚拟机的内存之和、 所述计算节点管理的虚拟机的 带宽中的至少一个。 10. The method according to any one of claims 1 to 9, characterized in that the load of each virtual machine managed by the computing node includes: one of the central processing units (CPUs) of the virtual machines managed by the computing node. and, at least one of the sum of the memory of the virtual machines managed by the computing node, and the bandwidth of the virtual machines managed by the computing node.
11、 一种迁移计算节点的装置, 其特征在于, 包括: 11. A device for migrating computing nodes, characterized by including:
获得模块, 用于获得计算集群内的各计算节点的当前负载排序; Obtain module, used to obtain the current load ranking of each computing node in the computing cluster;
第一确定模块, 用于确定所述负载排序中负载量不为零并且负载量最小的 计算节点为当前待进行第一模拟迁移的计算节点; A first determination module, configured to determine that the computing node with a non-zero load and the smallest load in the load sorting is the computing node currently to be subjected to the first simulation migration;
第一模拟迁移模块, 用于将所述当前待进行第一模拟迁移的计算节点管理 的虚拟机向第一模拟迁移的目标计算节点进行模拟迁移, 所述第一模拟迁移的 目标计算节点为所述计算集群中负载未满且负载量大于所述当前待进行第一模 拟迁移的计算节点的负载量的计算节点; The first simulated migration module is configured to perform simulated migration of the virtual machine managed by the computing node currently to be subjected to the first simulated migration to the target computing node of the first simulated migration, and the target computing node of the first simulated migration is the first simulated migration target computing node. The computing nodes in the computing cluster that are not fully loaded and have a load greater than the load of the computing node currently to be subjected to the first simulated migration;
第二确定模块, 用于当所述待进行第一模拟迁移的计算节点的负载量小于 所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前待进行第 一模拟迁移的计算节点能够被模拟迁空, 返回执行所述获得模块; 当所述待进 行第一模拟迁移的计算节点的负载量大于所述第一模拟迁移的目标计算节点的 负载余量之和时, 确定所述当前待进行第一模拟迁移的计算节点不能够被模拟 迁空, 执行第三确定模块; A second determination module, configured to determine that the first simulation is currently to be performed when the load of the computing node to be performed for the first simulated migration is less than the sum of the load margins of the target computing nodes for the first simulated migration. The migrated computing node can be simulated to be migrated, and the acquisition module is returned to execution; when the load of the computing node to be subjected to the first simulated migration is greater than the sum of the load margins of the target computing nodes of the first simulated migration. , determine that the computing node currently to be subjected to the first simulated migration cannot be simulated to be migrated, and execute the third determination module;
所述第三确定模块, 用于确定初始负载量小于所述当前待进行第一模拟迁 移的计算节点的负载量的计算节点为第一批待并发迁移的计算节点; The third determination module is used to determine that the computing nodes whose initial load is less than the load of the computing node currently to be migrated for the first simulation are the first batch of computing nodes to be migrated concurrently;
并发迁移模块, 将所述第一批待并发迁移的计算节点进行第一并发迁移。 The concurrent migration module performs the first concurrent migration of the first batch of computing nodes to be concurrently migrated.
12、 根据权利要求 11所述的装置, 其特征在于, 所述获得模块用于: 获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的当 前负载量进行排序, 获得所述各计算节点的当前负载排序。 12. The device according to claim 11, wherein the obtaining module is configured to: obtain the current load of each computing node in the computing cluster, sort according to the current load of each computing node, and obtain The current load ranking of each computing node.
13、 根据权利要求 11或 12所述的装置, 其特征在于, 所述第一模拟迁移 模块包括: 13. The device according to claim 11 or 12, characterized in that the first simulated migration module includes:
第一模拟迁移单元, 用于将所述当前待进行第一模拟迁移的计算节点管理 的虚拟机模拟迁移到所述计算集群中负载未满且负载量最大的计算节点上; 若 所述负载未满且负载量最大的计算节点的节点负载量已满而所述当前待进行第 一模拟迁移的计算节点还未迁空, 按照负载量依次递减的顺序, 选择所述计算 集群中的其他负载未满的计算节点, 并将所述当前待进行第一模拟迁移的计算 节点管理的剩余的虚拟机模拟迁移到所选择的计算节点上。 The first simulated migration unit is used to simulate the migration of the virtual machine managed by the computing node currently to be subjected to the first simulated migration to the computing node in the computing cluster that is not fully loaded and has the largest load; if the load is not fully loaded, If the node load of the computing node that is full and has the largest load is full but the computing node currently to be migrated for the first simulation has not yet been emptied, select other unloaded nodes in the computing cluster in the order of decreasing load. The computing nodes are full, and the calculations currently to be migrated for the first simulation The remaining virtual machines managed by the node are simulated and migrated to the selected computing node.
14、 根据权利要求 1 3所述的装置, 其特征在于, 所述第一模拟迁移模块, 还包括: 14. The device according to claim 13, characterized in that the first simulated migration module further includes:
记录单元, 用于记录每个待进行第一模拟迁移的计算节点对应的第一模拟 迁移的目标计算节点。 A recording unit, configured to record the target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration.
15、 根据权利要求 14所述的装置, 其特征在于, 所述并发迁移模块用于: 根据记录的每个待进行第一模拟迁移的计算节点对应的第一模拟迁移的目 标计算节点, 将所述待并发迁移的计算节点管理的虚拟机并发迁移到其对应的 第一模拟迁移的目标计算节点上。 15. The apparatus according to claim 14, wherein the concurrent migration module is configured to: according to the recorded target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration, The virtual machines managed by the computing nodes to be concurrently migrated are concurrently migrated to their corresponding target computing nodes of the first simulated migration.
16、 根据权利要求 11-15 任意一项所述的装置, 其特征在于, 所述装置, 还包括: 16. The device according to any one of claims 11-15, characterized in that, the device further includes:
维护模块, 用于对第一并发迁移后的至少一个所述计算节点进行维护。 A maintenance module, configured to maintain at least one computing node after the first concurrent migration.
17、 根据权利要求 16 所述的装置, 其特征在于, 所述装置, 还包括: 处理模块, 用于将所述计算集群中没有进行第一并发迁移的计算节点进行 模拟并发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁 移的计算节点进行第二并发迁移。 17. The device according to claim 16, characterized in that, the device further includes: a processing module, configured to simulate concurrent migration of computing nodes in the computing cluster that have not undergone the first concurrent migration, and determine the second Batch the computing nodes to be migrated concurrently, and perform a second concurrent migration on the second batch of computing nodes to be migrated concurrently.
18、 根据权利要求 17 所述的装置, 其特征在于, 所述处理模块包括: 获得单元, 用于获得计算集群内的各计算节点的当前负载排序, 所述当前 负载排序区分已进行维护的计算节点和未进行维护的计算节点; 18. The device according to claim 17, wherein the processing module includes: an obtaining unit, configured to obtain the current load ranking of each computing node in the computing cluster, and the current load ranking distinguishes between calculations that have been maintained nodes and compute nodes that are not undergoing maintenance;
第一确定单元, 用于确定当前负载排序中负载量不为零并且负载量最小的 计算节点为当前待进行第二模拟迁移的计算节点; The first determination unit is used to determine that the computing node with a non-zero load and the smallest load in the current load sorting is the computing node currently to be performed for the second simulation migration;
模拟迁移单元, 用于将所述当前待进行第二模拟迁移的计算节点管理的虚 拟机向第二模拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标计算 节点为所述计算集群中已进行维护的计算节点; A simulated migration unit, configured to migrate the virtual machine managed by the computing node currently to be subjected to the second simulated migration to the target computing node of the second simulated migration, where the target computing node of the second simulated migration is the computing cluster. Computing nodes that have been maintained;
第二确定单元, 用于当所述当前待进行第二模拟迁移的计算节点的负载量 小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第 二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟迁移的计算 节点为最后一个未进行维护的计算节点, 执行第三确定单元, 如果当前待进行 第二模拟迁移的计算节点不是最后一个未进行维护的计算节点, 返回执行所述 获得单元; 当所述当前待进行第二模拟迁移的计算节点的负载量大于所述第二 模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第二模拟迁移的 计算节点不能够被模拟迁空, 执行第四确定单元; A second determination unit configured to determine that the second simulated migration is currently to be performed when the load of the computing node currently to be performed for the second simulated migration is less than the sum of the load margins of the target computing nodes for the second simulated migration. The computing nodes can be simulated to be migrated, if the calculation of the second simulated migration is currently to be performed The node is the last computing node that has not been maintained, and the third determination unit is executed. If the computing node currently to be subjected to the second simulated migration is not the last computing node that has not been maintained, return to execute the obtaining unit; When the load of the computing node performing the second simulated migration is greater than the sum of the load margins of the target computing nodes of the second simulated migration, it is determined that the computing node currently to be subjected to the second simulated migration cannot be simulated to be migrated, and the first step is executed. Four determination units;
所述第三确定单元, 用于确定所有未进行维护的计算节点为第二批待并发 迁移的计算节点, 执行并发迁移单元; The third determination unit is used to determine all computing nodes that have not been maintained as the second batch of computing nodes to be concurrently migrated, and execute the concurrent migration unit;
所述第四确定单元, 用于确定初始负载量小于所述当前待进行第二模拟迁 移的计算节点的负载量的计算节点为第二批待并发迁移的计算节点, 执行并发 迁移单元; The fourth determination unit is used to determine that the computing nodes whose initial load is less than the load of the computing node currently to be subjected to the second simulated migration are the second batch of computing nodes to be concurrently migrated, and execute the concurrent migration unit;
所述并发迁移单元, 用于将所述第二批待并发迁移的计算节点进行第二并 发迁移。 The concurrent migration unit is used to perform a second concurrent migration on the second batch of computing nodes to be concurrently migrated.
19、 根据权利要求 18所述的装置, 其特征在于, 所述第二模拟迁移模块, 还用于, 对第二并发迁移后的至少一个所述计算节点进行维护。 19. The apparatus according to claim 18, wherein the second simulated migration module is further configured to maintain at least one of the computing nodes after the second concurrent migration.
20、 根据权利要求 19所述的装置, 其特征在于, 所述处理模块, 还用于按 照确定第二批待并发迁移的计算节点的方法, 将所述计算集群中没有进行模拟 并发迁移的计算节点进行模拟并发迁移。 20. The device according to claim 19, characterized in that, the processing module is further configured to, according to the method of determining the second batch of computing nodes to be concurrently migrated, calculate the calculations in the computing cluster that have not simulated concurrent migration. Nodes perform simulated concurrent migration.
21、 根据权利要求 11-20 中任一项所述的装置, 其特征在于, 每个所述计 算节点管理的虚拟机的负载包括:所述计算节点管理的虚拟机的中央处理器 CPU 之和、 所述计算节点管理的虚拟机的内存之和、 所述计算节点管理的虚拟机的 带宽中的至少一个。 21. The apparatus according to any one of claims 11 to 20, wherein the load of each virtual machine managed by the computing node includes: the sum of the central processing units (CPUs) of the virtual machines managed by the computing node. , at least one of the sum of the memory of the virtual machines managed by the computing node, and the bandwidth of the virtual machines managed by the computing node.
22、 一种迁移计算节点的装置, 其特征在于, 包括: 22. A device for migrating computing nodes, characterized by including:
处理器, 用于获得计算集群内的各计算节点的当前负载排序; Processor, used to obtain the current load ranking of each computing node in the computing cluster;
存储器, 用于所述计算集群内的各计算节点的存储所述当前负载排序; 所述处理器, 还用于确定所述负载排序中负载量不为零并且负载量最小的 计算节点为当前待进行第一模拟迁移的计算节点; 以及将所述当前待进行第一 模拟迁移的计算节点管理的虚拟机向第一模拟迁移的目标计算节点进行模拟迁 移, 所述第一模拟迁移的目标计算节点为所述计算集群中负载未满且负载量大 于所述当前待进行第一模拟迁移的计算节点的负载量的计算节点; The memory is used to store the current load ranking of each computing node in the computing cluster; the processor is also used to determine that the computing node with a non-zero load and the smallest load in the load ranking is currently to be processed. The computing node that performs the first simulated migration; and performs the simulated migration of the virtual machine managed by the computing node that is currently to be subjected to the first simulated migration to the target computing node of the first simulated migration. Move, the target computing node of the first simulated migration is a computing node in the computing cluster that is not fully loaded and has a load greater than the load of the computing node currently to be subjected to the first simulated migration;
以及当所述待进行第一模拟迁移的计算节点的负载量小于所述第一模拟迁 移的目标计算节点的负载余量之和时, 确定所述当前待进行第一模拟迁移的计 算节点能够被模拟迁空; 当所述待进行第一模拟迁移的计算节点的负载量大于 所述第一模拟迁移的目标计算节点的负载余量之和时, 确定所述当前待进行第 一模拟迁移的计算节点不能够被模拟迁空; And when the load of the computing node to be subjected to the first simulated migration is less than the sum of the load margins of the target computing nodes of the first simulated migration, it is determined that the computing node currently to be subjected to the first simulated migration can be Simulate empty migration; When the load of the computing node to be performed for the first simulated migration is greater than the sum of the load margins of the target computing nodes for the first simulated migration, determine the calculations currently to be performed for the first simulated migration. Nodes cannot be simulated to be empty;
处理器, 还用于确定初始负载量小于所述当前待进行第一模拟迁移的计算 节点的负载量的计算节点为第一批待并发迁移的计算节点; 以及将所述第一批 待并发迁移的计算节点进行第一并发迁移。 The processor is also configured to determine that the computing nodes whose initial load is less than the load of the computing nodes currently to be migrated for the first simulated migration are the first batch of computing nodes to be migrated concurrently; and to migrate the first batch of computing nodes to be concurrently migrated. The computing nodes perform the first concurrent migration.
23、 根据权利要求 22所述的装置, 其特征在于, 所述处理器还用于: 获得所述计算集群内各计算节点的当前负载量, 根据所述各计算节点的当 前负载量进行排序, 获得所述各计算节点的当前负载排序。 23. The device according to claim 22, wherein the processor is further configured to: obtain the current load of each computing node in the computing cluster, and sort according to the current load of each computing node, Obtain the current load ranking of each computing node.
24、 根据权利要求 22或 23所述的装置, 其特征在于, 所述处理器, 还用 于: 将所述当前待进行第一模拟迁移的计算节点管理的虚拟机模拟迁移到所述 计算集群中负载未满且负载量最大的计算节点上; 若所述负载未满且负载量最 大的计算节点的节点负载量已满而所述当前待进行第一模拟迁移的计算节点还 未迁空, 按照负载量依次递减的顺序, 选择所述计算集群中的其他负载未满的 计算节点, 并将所述当前待进行第一模拟迁移的计算节点管理的剩余的虚拟机 模拟迁移到所选择的计算节点上。 24. The apparatus according to claim 22 or 23, characterized in that the processor is further configured to: simulate and migrate the virtual machine managed by the computing node currently to be subjected to the first simulated migration to the computing cluster. On the computing node that is not fully loaded and has the largest load; if the node load of the computing node that is not fully loaded and has the largest load is full and the computing node that is currently to be migrated for the first simulation has not yet been emptied, In order of decreasing load, select other computing nodes in the computing cluster that are not fully loaded, and simulate and migrate the remaining virtual machines managed by the computing node currently to be migrated to the selected computing node. on the node.
25、 根据权利要求 24所述的装置, 其特征在于, 25. The device according to claim 24, characterized in that,
所述存储器, 还用于记录每个待进行第一模拟迁移的计算节点对应的第一 模拟迁移的目标计算节点; The memory is also used to record the target computing node of the first simulated migration corresponding to each computing node to be subjected to the first simulated migration;
所述处理器, 还用于根据记录的每个待进行第一模拟迁移的计算节点对应 的第一模拟迁移的目标计算节点, 将所述待并发迁移的计算节点管理的虚拟机 并发迁移到其对应的第一模拟迁移的目标计算节点上。 The processor is further configured to concurrently migrate the virtual machines managed by the computing nodes to be concurrently migrated to the corresponding first simulated migration target computing node corresponding to each of the recorded computing nodes to be concurrently migrated. Corresponding to the target computing node of the first simulated migration.
26、 根据权利要求 22-25任意一项所述的装置, 其特征在于, 所述处理器, 还用于对第一并发迁移后的至少一个所述计算节点进行维护。 26. The device according to any one of claims 22-25, characterized in that, the processor, It is also used to maintain at least one computing node after the first concurrent migration.
27、 根据权利要求 26所述的装置, 其特征在于, 所述处理器, 27. The device according to claim 26, characterized in that, the processor,
还用于: 将所述计算集群中没有进行第一并发迁移的计算节点进行模拟并 发迁移, 确定第二批待并发迁移的计算节点, 并将所述第二批待并发迁移的计 算节点进行第二并发迁移。 It is also used for: simulating concurrent migration of the computing nodes in the computing cluster that have not undergone the first concurrent migration, determining the second batch of computing nodes to be concurrently migrated, and performing the second batch of computing nodes to be concurrently migrated. 2. Concurrent migration.
28、 根据权利要求 27 所述的装置, 其特征在于, 所述处理器: 28. The device according to claim 27, characterized in that, the processor:
还用于获得计算集群内的各计算节点的当前负载排序, 所述当前负载排序 区分已进行维护的计算节点和未进行维护的计算节点; It is also used to obtain the current load ranking of each computing node in the computing cluster, where the current load ranking distinguishes between computing nodes that have been maintained and computing nodes that have not been maintained;
以及确定当前负载排序中负载量不为零并且负载量最小的计算节点为当前 待进行第二模拟迁移的计算节点; and determining that the computing node with a non-zero load and the smallest load in the current load sorting is the computing node currently to be performed for the second simulation migration;
所述处理器, 还用于将所述当前待进行第二模拟迁移的计算节点管理的虚 拟机向第二模拟迁移的目标计算节点进行迁移, 所述第二模拟迁移的目标计算 节点为所述计算集群中已进行维护的计算节点; The processor is further configured to migrate the virtual machine managed by the computing node currently to be subjected to the second simulated migration to a target computing node of the second simulated migration, where the target computing node of the second simulated migration is the Computing nodes that have been maintained in the computing cluster;
所述处理器, 还用于当所述当前待进行第二模拟迁移的计算节点的负载量 小于所述第二模拟迁移的目标计算节点的负载余量之和时, 确定当前待进行第 二模拟迁移的计算节点能够被模拟迁空, 如果当前待进行第二模拟迁移的计算 节点为最后一个未进行维护的计算节点, 执行确定所有未进行维护的计算节点 为第二批待并发迁移的计算节点; 如果当前待进行第二模拟迁移的计算节点不 是最后一个未进行维护的计算节点, 返回执行对计算节点的负载排序; 当所述 当前待进行第二模拟迁移的计算节点的负载量大于所述第二模拟迁移的目标计 算节点的负载余量之和时, 确定当前待进行第二模拟迁移的计算节点不能够被 模拟迁空, 执行确定初始负载量小于所述当前待进行第二模拟迁移的计算节点 的负载量的计算节点为第二批待并发迁移的计算节点; The processor is also configured to determine that the second simulation is currently to be performed when the load of the computing node currently to be performed for the second simulated migration is less than the sum of the load margins of the target computing nodes for the second simulated migration. The migrated computing nodes can be simulated to be empty. If the computing node currently to be migrated for the second simulated migration is the last computing node that has not been maintained, the execution determines that all the computing nodes that have not been maintained are the second batch of computing nodes that are to be migrated concurrently. ; If the computing node currently to be subjected to the second simulated migration is not the last computing node that has not been maintained, return to performing the load sorting of the computing nodes; When the load of the computing node currently to be subjected to the second simulated migration is greater than the When the sum of the load margins of the target computing nodes of the second simulated migration is determined, it is determined that the computing nodes currently to be subjected to the second simulated migration cannot be simulated to be migrated, and it is determined that the initial load is smaller than the current load of the target computing nodes to be subjected to the second simulated migration. The computing nodes that calculate the load of the node are the second batch of computing nodes to be concurrently migrated;
所述处理器, 还用于确定所有未进行维护的计算节点为第二批待并发迁移 的计算节点; The processor is also used to determine all computing nodes that have not been maintained as the second batch of computing nodes to be concurrently migrated;
所述处理器, 还用于确定初始负载量小于所述当前待进行第二模拟迁移的 计算节点的负载量的计算节点为第二批待并发迁移的计算节点; 以及将所述第二批待并发迁移的计算节点进行第二并发迁移。 The processor is further configured to determine that computing nodes whose initial load is smaller than the load of the computing node currently to be migrated for the second simulated migration are the second batch of computing nodes to be migrated concurrently; and performing a second concurrent migration on the second batch of computing nodes to be concurrently migrated.
29、 根据权利要求 28所述的装置, 其特征在于, 所述处理器, 29. The device according to claim 28, characterized in that, the processor,
还用于对第二并发迁移后的至少一个所述计算节点进行维护。 It is also used to maintain at least one computing node after the second concurrent migration.
30、 根据权利要求 29所述的装置, 其特征在于, 所述处理器, 30. The device according to claim 29, characterized in that, the processor,
还用于按照确定第二批待并发迁移的计算节点的方法, 将所述计算集群中 没有进行模拟并发迁移的计算节点进行模拟并发迁移。 It is also used to perform simulated concurrent migration on the computing nodes in the computing cluster that have not been simulated concurrent migration according to the method of determining the second batch of computing nodes to be concurrently migrated.
31、 一种计算机可读介质, 其特征在于, 包括: 所述计算机可读介质包含 计算机执行指令, 当计算机的中央处理器执行所述计算机执行指令时, 所述计 算机执行权利要求 1至 10任一所述的方法。 31. A computer-readable medium, characterized in that: the computer-readable medium contains computer-executable instructions, and when the central processor of the computer executes the computer-executable instructions, the computer executes any of claims 1 to 10. The method described in 1.
PCT/CN2012/084239 2012-11-07 2012-11-07 Compute node migration method and device WO2014071580A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201280002820.3A CN103250139B (en) 2012-11-07 2012-11-07 A kind of method and device migrating calculating node
PCT/CN2012/084239 WO2014071580A1 (en) 2012-11-07 2012-11-07 Compute node migration method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2012/084239 WO2014071580A1 (en) 2012-11-07 2012-11-07 Compute node migration method and device

Publications (1)

Publication Number Publication Date
WO2014071580A1 true WO2014071580A1 (en) 2014-05-15

Family

ID=48928425

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2012/084239 WO2014071580A1 (en) 2012-11-07 2012-11-07 Compute node migration method and device

Country Status (2)

Country Link
CN (1) CN103250139B (en)
WO (1) WO2014071580A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580328A (en) * 2013-10-28 2015-04-29 华为技术有限公司 Virtual machine migration method, device and system
CN106101270A (en) * 2016-08-05 2016-11-09 成都佳荣科技有限公司 Data distributed memory system
CN107360067B (en) * 2017-06-29 2021-08-10 青岛恒金源电子科技有限公司 Network load balancing method in intelligent household system
CN107491352B (en) * 2017-08-22 2020-09-08 郑州云海信息技术有限公司 Resource scheduling method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102082732A (en) * 2011-02-23 2011-06-01 中国人民解放军信息工程大学 Virtual network energy saving method based on virtual router on the move (VROOM)
US20110131569A1 (en) * 2009-11-30 2011-06-02 Itamar Heim Mechanism for Load Balancing in a Memory-Constrained Virtualization System
CN102158513A (en) * 2010-02-11 2011-08-17 联想(北京)有限公司 Service cluster and energy-saving method and device thereof
CN102724277A (en) * 2012-05-04 2012-10-10 华为技术有限公司 Virtual machine thermomigration method, virtual machine arrangement method, server and cluster system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110131569A1 (en) * 2009-11-30 2011-06-02 Itamar Heim Mechanism for Load Balancing in a Memory-Constrained Virtualization System
CN102158513A (en) * 2010-02-11 2011-08-17 联想(北京)有限公司 Service cluster and energy-saving method and device thereof
CN102082732A (en) * 2011-02-23 2011-06-01 中国人民解放军信息工程大学 Virtual network energy saving method based on virtual router on the move (VROOM)
CN102724277A (en) * 2012-05-04 2012-10-10 华为技术有限公司 Virtual machine thermomigration method, virtual machine arrangement method, server and cluster system

Also Published As

Publication number Publication date
CN103250139A (en) 2013-08-14
CN103250139B (en) 2016-08-03

Similar Documents

Publication Publication Date Title
US10924535B2 (en) Resource load balancing control method and cluster scheduler
CN109582433B (en) Resource scheduling method and device, cloud computing system and storage medium
US9378032B2 (en) Information processing method, information processing apparatus, recording medium, and system
CN107391031B (en) Data migration method and device in computing system based on hybrid storage
US20130212578A1 (en) Optimizing traffic load in a communications network
CN103873534B (en) A kind of application cluster moving method and device
US9612751B2 (en) Provisioning advisor
CN104731528B (en) A kind of construction method and system of cloud computing block storage service
CN108363643B (en) HDFS copy management method based on file access heat
CN102834807A (en) Method and device for balancing load of multiprocessor system
EP3191948A1 (en) Computing instance launch time
US9984044B2 (en) Predicting performance regression of a computer system with a complex queuing network model
WO2014071580A1 (en) Compute node migration method and device
WO2021056909A1 (en) Resource management platform-based task allocation method and system
CN109976879B (en) Cloud computing virtual machine placement method based on resource usage curve complementation
CN108833592A (en) Cloud host schedules device optimization method, device, equipment and storage medium
JP2011192049A (en) Virtual machine system, automatic migration method, and automatic migration program
CN107621980A (en) A kind of virtual machine migration method, cluster control system and control device
WO2021078256A1 (en) Virtual machine migration method and related device
CN105718297A (en) Virtual machine establishing system and method
CN109617954B (en) Method and device for creating cloud host
CN109558214B (en) Host machine resource management method and device in heterogeneous environment and storage medium
CN114385342A (en) Container cloud overload protection method and device, computer device and storage medium
Surya et al. Dynamic resource allocation for distributed Tensorflow training in kubernetes cluster
Nair et al. Performance degradation assessment and VM placement policy in cloud

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12887881

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12887881

Country of ref document: EP

Kind code of ref document: A1