A virtual machine scheduling method and system

CN121166281BActive Publication Date: 2026-06-19HARBIN UNIV OF COMMERCE
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HARBIN UNIV OF COMMERCE
Filing Date
2025-09-16
Publication Date
2026-06-19

Smart Images

  • Figure CN121166281B_ABST
    Figure CN121166281B_ABST
Patent Text Reader

Abstract

This invention discloses a virtual machine scheduling method and system. The method includes the following steps: a scheduling module determines whether a virtual machine needs to be migrated; if the scheduling module determines that the virtual machine needs to be migrated, it determines the physical hosts existing in the allowed list; after determining the physical hosts in the allowed list, the scheduling module determines the destination physical host; after determining the destination physical host, the scheduling module determines the overhead of migrating the virtual machine and source data to the destination physical host; based on the overhead of migrating the virtual machine and source data to the destination physical host, the scheduling module migrates the virtual machine and source data to a second or third physical host. This invention's method can help the scheduling algorithm select a more suitable physical host, thereby improving the efficiency of the entire system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of cloud computing technology, and in particular to a virtual machine scheduling method and system. Background Technology

[0002] Virtual machines (VMs), a key technology in cloud computing, allow physical hardware to be divided into multiple virtualized environments, each capable of running independent operating systems and applications. VM scheduling is crucial for ensuring the effective operation of VMs in a cloud computing environment. Through intelligent scheduling algorithms and strategies, VMs are allocated or migrated to suitable physical hosts to achieve load balancing, maximized resource utilization, energy efficiency, and high availability, directly impacting the performance and efficiency of the entire cloud computing system. Current VM scheduling algorithms tend to prioritize load balancing, maximized resource utilization, and energy efficiency; however, these algorithms often overlook the communication overhead during VM migration, which may prevent the system from making optimal decisions. Summary of the Invention

[0003] To achieve the above objectives, this invention provides a virtual machine scheduling method. This method improves upon existing virtual machine scheduling algorithms by comprehensively considering the migration communication overhead of the virtual machine itself and the data migration communication overhead during the virtual machine migration process. This method can help the scheduling algorithm select a more suitable physical host, thereby improving the efficiency of the entire system.

[0004] This invention provides a virtual machine scheduling method, comprising the following steps:

[0005] The scheduling module determines whether a virtual machine needs to be migrated, where the virtual machine is currently located on the first physical host;

[0006] If the scheduling module determines that a virtual machine needs to be migrated, then the scheduling module determines the physical hosts that exist in the allowed list;

[0007] After the scheduling module determines the physical hosts that exist in the allowed list, the scheduling module determines the destination physical host, which includes the second physical host and the third physical host;

[0008] After the scheduling module determines the destination physical host, it determines the cost of migrating the virtual machine and source data to the destination physical host. The source data is the data required by the virtual machine to complete its task.

[0009] The scheduling module migrates virtual machines and source data to a second or third physical host based on the cost of migrating them to the destination physical host.

[0010] In a preferred embodiment, the overhead of migrating virtual machines and source data to the destination physical host includes:

[0011] The first overhead of migrating a virtual machine from the first physical host to the second physical host;

[0012] The second overhead of migrating source data to a second physical host;

[0013] The third overhead of migrating a virtual machine from the first physical host to the third physical host;

[0014] The fourth overhead is migrating the source data to a third physical host.

[0015] In a preferred embodiment, the overhead of migrating the virtual machine and source data to the destination physical host, as determined by the scheduling module, includes:

[0016] The scheduling module determines whether the lookup table records the first cost, the second cost, the third cost, and the fourth cost.

[0017] If the scheduling module determines that the lookup table contains records of the first overhead, the second overhead, the third overhead, and the fourth overhead, then the scheduling module calculates the sum of the first overhead and the second overhead, as well as the sum of the third overhead and the fourth overhead.

[0018] In a preferred embodiment, the scheduling module migrates the virtual machine and source data to a second or third physical host based on the overhead of migrating the virtual machine and source data to the destination physical host, including:

[0019] If the sum of the first and second overheads is greater than the sum of the third and fourth overheads, then migrate the virtual machine and source data to the third physical host.

[0020] If the sum of the first and second overheads is less than the sum of the third and fourth overheads, then the virtual machine and source data are migrated to the second physical host.

[0021] In a preferred embodiment, the method further includes:

[0022] If the scheduling module determines that the first overhead is not recorded in the lookup table, the scheduling module will migrate the virtual machine and source data to the third physical host.

[0023] In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends a cost calculation instruction to the first physical host;

[0024] After receiving the overhead calculation instruction, the first physical host sends the simulation data to the second physical host;

[0025] After the second physical host receives the simulated data, the second physical host determines the first overhead based on the simulated data;

[0026] The second physical host sends the first overhead to the scheduling module.

[0027] The present invention also provides a virtual machine scheduling system, including units for performing the following operations:

[0028] The scheduling module determines whether a virtual machine needs to be migrated, where the virtual machine is currently located on the first physical host;

[0029] If the scheduling module determines that a virtual machine needs to be migrated, then the scheduling module determines the physical hosts that exist in the allowed list;

[0030] After the scheduling module determines the physical hosts that exist in the allowed list, the scheduling module determines the destination physical host, which includes the second physical host and the third physical host;

[0031] After the scheduling module determines the destination physical host, it determines the cost of migrating the virtual machine and source data to the destination physical host. The source data is the data required by the virtual machine to complete its task.

[0032] The scheduling module migrates virtual machines and source data to a second or third physical host based on the cost of migrating them to the destination physical host.

[0033] In a preferred embodiment, the overhead of migrating virtual machines and source data to the destination physical host includes:

[0034] The first overhead of migrating a virtual machine from the first physical host to the second physical host;

[0035] The second overhead of migrating source data to a second physical host;

[0036] The third overhead of migrating a virtual machine from the first physical host to the third physical host;

[0037] The fourth overhead is migrating the source data to a third physical host.

[0038] In a preferred embodiment, the overhead of migrating the virtual machine and source data to the destination physical host, as determined by the scheduling module, includes:

[0039] The scheduling module determines whether the lookup table records the first cost, the second cost, the third cost, and the fourth cost.

[0040] If the scheduling module determines that the lookup table contains records of the first overhead, the second overhead, the third overhead, and the fourth overhead, then the scheduling module calculates the sum of the first overhead and the second overhead, as well as the sum of the third overhead and the fourth overhead.

[0041] In a preferred embodiment, the scheduling module migrates the virtual machine and source data to a second or third physical host based on the overhead of migrating the virtual machine and source data to the destination physical host, including:

[0042] If the sum of the first and second overheads is greater than the sum of the third and fourth overheads, then migrate the virtual machine and source data to the third physical host.

[0043] If the sum of the first and second overheads is less than the sum of the third and fourth overheads, then the virtual machine and source data are migrated to the second physical host.

[0044] In a preferred embodiment, the system further includes a unit for performing the following operations:

[0045] If the scheduling module determines that the first overhead is not recorded in the lookup table, the scheduling module will migrate the virtual machine and source data to the third physical host.

[0046] In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends a cost calculation instruction to the first physical host;

[0047] After receiving the overhead calculation instruction, the first physical host sends the simulation data to the second physical host;

[0048] After the second physical host receives the simulated data, the second physical host determines the first overhead based on the simulated data;

[0049] The second physical host sends the first overhead to the scheduling module.

[0050] Compared with the prior art, the present invention has the following advantages: The present invention provides a virtual machine scheduling method, which improves the existing virtual machine scheduling algorithm, and comprehensively considers the migration communication overhead of the virtual machine itself and the migration communication overhead of data during the virtual machine migration process. The method of the present invention can help the scheduling algorithm select a more suitable physical host, thereby improving the efficiency of the entire system. Attached Figure Description

[0051] Figure 1 This is a schematic diagram of the system architecture of one embodiment of the present invention.

[0052] Figure 2 This is a flowchart of a method according to an embodiment of the present invention. Detailed Implementation

[0053] The specific embodiments of the present invention will now be described in detail with reference to the accompanying drawings, but it should be understood that the scope of protection of the present invention is not limited to the specific embodiments.

[0054] Current virtual machine scheduling algorithms tend to prioritize load balancing, maximizing resource utilization, and energy efficiency. For example, existing technology CN107301088A focuses on receiving batch migration task packages for virtual machines, obtaining resource configuration and business information, calculating and prioritizing migration processing based on the business information, processing virtual machine migration tasks sequentially, and selecting suitable physical hosts for migration. Clearly, this existing technology does not consider the communication overhead of migrating virtual machines and data when selecting physical hosts. For example, existing technology CN112433813A determines the physical host to be migrated based on the performance consumption data of the physical host, estimates the migration impact according to the virtual machine performance information, and automatically selects the target physical host for virtual machine migration. Obviously, this existing technology mainly considers the performance impact of virtual machine migration on the target physical host, and similarly fails to recognize that the communication overhead of migrating virtual machines and data also affects the overall system efficiency. In existing technology CN109189557B, the technology recognizes migrating virtual machines to the physical host with the shortest routing path, but it does not consider the overhead of migrating data. The method proposed in this invention aims to solve the problems existing in the prior art.

[0055] Figure 1 This is a schematic diagram of a system architecture according to an embodiment of the present invention. As shown in the figure, the system of the present invention includes a scheduling module, a first physical host, a second physical host, and a third physical host. The figure also shows multiple virtual machines running on the first physical host. Those skilled in the art should understand that... Figure 1 For clarity, only three physical hosts are shown; the method of this invention can be applied to scenarios with more physical hosts. The scheduling module can be a standalone computer or server, or it can be a logical module integrated into a physical host, which can be a computer or server. Figure 1 The document also shows that virtual machines in the grayscale box can be migrated to, for example, a second or third physical host.

[0056] Figure 2 This is a flowchart of a method according to an embodiment of the present invention. As shown in the figure, the method of the present invention includes the following steps:

[0057] Step 1: The scheduling module determines whether the virtual machine needs to be migrated, where the virtual machine is currently located on the first physical host; in one example, the scheduling module can monitor the load on each physical host. For example, if the scheduling module predicts that the first physical host will be overloaded (e.g., high CPU utilization), the scheduling module can determine that one or more virtual machines on the first physical host need to be migrated; the load prediction algorithm is an existing technology. For example, the load prediction algorithm can be found in: 1. S. Tuli, S. S. Gill, P. Garraghan, et al. START: Straggler Prediction and Mitigation for Cloud Computing Environments Using Encoder LSTM Networks. IEEE Transactions on Services Computing, 2023, 16(1): 615-627. Or 2. L. Zhang, Y. Xie, M. Jin, et al. A Novel Hybrid Model for Docker Container WorkloadPrediction. IEEE Transactions on Network and Service Management, 2023, 20(3): 2726-2743. The aforementioned existing load prediction algorithms can all achieve the purpose of this invention, and these algorithms are all prior art. This invention will not elaborate on the specific algorithm details.

[0058] Step 2: If the scheduling module determines that a virtual machine needs to be migrated, it then determines the physical hosts that exist in the allowed list. During the research process, the research team of this invention discovered that, for example, for confidentiality purposes, the source data used by certain virtual machines cannot be migrated to certain physical hosts. For instance, many commercial companies require that the source data of virtual machines cannot appear on physical hosts located overseas; therefore, the source data of these virtual machines cannot be migrated to overseas physical hosts. Another example is that, in practice, the routing path for migrating source data to a certain physical host is too complex; in this case, the source data cannot be migrated to these physical hosts either. To address this finding, this invention sets up an allowed list, which records the physical hosts to which source data can be migrated. This step can reduce the computational cost of subsequent algorithms.

[0059] Step 3: After the scheduling module determines the physical hosts present in the allowed list, it determines the destination physical hosts, including the second and third physical hosts. In one example, determining the destination physical host may mean that the scheduling module filters the destination physical hosts from multiple physical hosts. In one example, if the scheduling module manages 10 physical hosts and the first physical host is about to become overloaded, then the scheduling module will select the destination physical host from the remaining 9 physical hosts. In one example, assuming there is no allowed list, a simple filtering strategy is to first use load forecasting to determine one or more physical hosts with lower loads among the remaining 9 physical hosts, and then mark these physical hosts as destination physical hosts. After an allowed list exists, the scheduling module may, for example, exclude 3 physical hosts from the remaining 9 physical hosts. In this case, the load forecasting algorithm only needs to forecast the load of the remaining 6 physical hosts, which greatly reduces computational cost. Those skilled in the art will understand that more complex filtering algorithms can also be applied to this conclusion.

[0060] Step 4: After the scheduling module determines the destination physical host, it determines the overhead of migrating the virtual machine and source data to the destination physical host. The source data is the data required by the virtual machine to complete its task. It is understood that many commercial users require a certain amount of data to complete their virtual machines; for example, some business analytics virtual machines require sales data to complete their analysis tasks. In this invention, overhead can refer to the number of router hops (or the length of the routing path). For example, the overhead of migrating the virtual machine to the destination physical host can refer to the number of router hops. It is understood that the smaller the number of router hops, the smaller the overhead, and vice versa. In the prior art CN109189557B, only the length of the router path during the virtual machine migration process is considered, but the length of the router path for the source data during the migration process is not considered. Furthermore, this prior art may assume that the router path for migrating the virtual machine to the destination physical host is the same as the router path for migrating the source data to the destination physical host, therefore, this prior art does not explicitly consider the length of the router path for the source data during the migration process. However, the research team of this invention has discovered that the router path for migrating a virtual machine to the destination physical host can be different from the router path for migrating the source data to the destination physical host. For example, for confidentiality purposes, the source data may not be able to pass through certain routers with lower security levels, but the configuration of the virtual machine itself and the user's configuration of the virtual machine do not need to be kept confidential. That is, for the migration of the virtual machine itself, the configuration of the virtual machine itself and the user's configuration of the virtual machine can be routed through any router. This results in the router path for migrating the virtual machine to the destination physical host being different from the router path for migrating the source data to the destination physical host. In addition, when the virtual machine has not yet started performing tasks, the source data is still stored in the data server, and the data server is different from the first physical host. At this time, the router path for migrating the virtual machine to the destination physical host is also different from the router path for migrating the source data to the destination physical host. Existing technologies cannot handle these situations, but the solution of this invention can solve these problems.

[0061] Step 5: The scheduling module migrates the virtual machine and source data to the second or third physical host based on the cost of migrating the virtual machine and source data to the destination physical host.

[0062] The overhead of migrating virtual machines and source data to the destination physical host includes:

[0063] The first overhead of migrating a virtual machine from the first physical host to the second physical host is understood to mean migrating the virtual machine itself from the first physical host to the second physical host. For example, the first physical host must at least inform the second physical host of the basic information such as which type of virtual machine the user is currently using, the configuration of the virtual machine itself (e.g., whether the virtual machine has advanced features open to the user), and the user's configuration of the virtual machine (e.g., user preference settings).

[0064] The second overhead of migrating source data to the second physical host; it is understood that migrating source data to the second physical host can be either migrating source data from the first physical host to the second physical host, or migrating source data from the data server to the second physical host.

[0065] The third overhead of migrating a virtual machine from the first physical host to the third physical host;

[0066] The fourth overhead is migrating the source data to a third physical host.

[0067] In a preferred embodiment, the overhead of migrating the virtual machine and source data to the destination physical host, as determined by the scheduling module, includes:

[0068] The scheduling module determines whether the lookup table records the first cost, second cost, third cost, and fourth cost. The scheduling module can predetermine the number of router hops between each physical host based on the network topology, so the scheduling module can pre-set the lookup table to quickly determine the cost. An example of the lookup table is shown in Table 1.

[0069] Table 1

[0070] type Source destination end Number of jumps virtual machine First physical host Second physical host 3 virtual machine First physical host Third physical host 4 Source data First physical host Second physical host 3 Source data First physical host Third physical host 5 Source data Data server Second physical host 6 Source data Data server Third physical host 8

[0071] If the scheduling module determines that the lookup table contains records of the first overhead, the second overhead, the third overhead, and the fourth overhead, then the scheduling module calculates the sum of the first overhead and the second overhead, as well as the sum of the third overhead and the fourth overhead.

[0072] In a preferred embodiment, the scheduling module migrates the virtual machine and source data to a second or third physical host based on the overhead of migrating the virtual machine and source data to the destination physical host, including:

[0073] If the sum of the first and second overheads is greater than the sum of the third and fourth overheads, then the virtual machine and source data are migrated to the third physical host. Assuming the virtual machine and source data are migrated from the first physical host to the second physical host, both the first and second overheads are 3. Assuming the virtual machine and source data are migrated from the first physical host to the third physical host, the third overhead is 4 and the fourth overhead is 5. Assuming the virtual machine is migrated from the first physical host to the third physical host, and the source data is migrated from the data server to the second physical host, the first overhead is 3 and the second overhead is 6. Based on the lookup table and its data, the sum of the first and second overheads, as well as the sum of the third and fourth overheads, can be obtained.

[0074] If the sum of the first and second overheads is less than the sum of the third and fourth overheads, the virtual machine and source data are migrated to the second physical host. In one example, if the sum of the first and second overheads equals the sum of the third and fourth overheads, the scheduling module can migrate the virtual machine and source data to a physical host with a lower load. If the loads of the two physical hosts are similar, the scheduling module can also randomly select a physical host as the migration destination.

[0075] In a preferred embodiment, the method further includes:

[0076] If the scheduling module determines that the first cost is not recorded in the lookup table, the scheduling module will migrate the virtual machine and source data to the third physical host. In one example, for instance, if the second physical host suddenly updates the routing path, or if the router on the routing path between the first and second physical hosts suddenly fails, the second row in Table 1 should be deleted. In this case, the scheduling module will determine that the first cost is not recorded in the lookup table. In this implementation, since it is impossible to determine whether the virtual machine can be migrated to the second physical host, nor is it possible to determine the router hop count for the migration, the scheduling module will migrate the virtual machine and source data to the third physical host.

[0077] In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends a cost calculation instruction to the first physical host;

[0078] After the first physical host receives the overhead calculation instruction, it sends simulated data to the second physical host. In one example, the simulated data can be a data packet with a small and fixed payload (after the receiving end decodes the data packet and reads the fixed content, it can determine that the data packet is simulated data). When the simulated data passes through a router, the router can add the number of routers the data packet has passed through to the header of the data packet.

[0079] After the second physical host receives the simulated data, it determines the first cost based on the simulated data. The second physical host first decodes the data packet and reads the fixed content. Then, the second physical host determines that the data packet is simulated data. Subsequently, the second physical host reads the field of the number of routers the data packet has passed through in the header of the data packet, thereby obtaining the first cost.

[0080] The second physical host sends the first overhead to the scheduling module.

[0081] The present invention also provides a virtual machine scheduling system, including units for performing the following operations:

[0082] The scheduling module determines whether a virtual machine needs to be migrated, where the virtual machine is currently located on the first physical host;

[0083] If the scheduling module determines that a virtual machine needs to be migrated, then the scheduling module determines the physical hosts that exist in the allowed list;

[0084] After the scheduling module determines the physical hosts that exist in the allowed list, the scheduling module determines the destination physical host, which includes the second physical host and the third physical host;

[0085] After the scheduling module determines the destination physical host, it determines the cost of migrating the virtual machine and source data to the destination physical host. The source data is the data required by the virtual machine to complete its task.

[0086] The scheduling module migrates virtual machines and source data to a second or third physical host based on the cost of migrating them to the destination physical host.

[0087] Furthermore, the overhead of migrating virtual machines and source data to the destination physical host includes:

[0088] The first overhead of migrating a virtual machine from the first physical host to the second physical host;

[0089] The second overhead of migrating source data to a second physical host;

[0090] The third overhead of migrating a virtual machine from the first physical host to the third physical host;

[0091] The fourth overhead is migrating the source data to a third physical host.

[0092] Furthermore, the scheduling module determines the overhead of migrating virtual machines and source data to the destination physical host, including:

[0093] The scheduling module determines whether the lookup table records the first cost, the second cost, the third cost, and the fourth cost.

[0094] If the scheduling module determines that the lookup table contains records of the first overhead, the second overhead, the third overhead, and the fourth overhead, then the scheduling module calculates the sum of the first overhead and the second overhead, as well as the sum of the third overhead and the fourth overhead.

[0095] Furthermore, the scheduling module, based on the overhead of migrating the virtual machine and source data to the destination physical host, migrates the virtual machine and source data to a second or third physical host, including:

[0096] If the sum of the first and second overheads is greater than the sum of the third and fourth overheads, then migrate the virtual machine and source data to the third physical host.

[0097] If the sum of the first and second overheads is less than the sum of the third and fourth overheads, then the virtual machine and source data are migrated to the second physical host.

[0098] Furthermore, the system also includes units for performing the following operations:

[0099] If the scheduling module determines that the first overhead is not recorded in the lookup table, the scheduling module will migrate the virtual machine and source data to the third physical host.

[0100] In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends a cost calculation instruction to the first physical host;

[0101] After receiving the overhead calculation instruction, the first physical host sends the simulation data to the second physical host;

[0102] After the second physical host receives the simulated data, the second physical host determines the first overhead based on the simulated data;

[0103] The second physical host sends the first overhead to the scheduling module.

[0104] The foregoing description of specific exemplary embodiments of the invention is for illustrative and explanatory purposes. These descriptions are not intended to limit the invention to the precise forms disclosed, and it will be apparent that many changes and variations can be made in accordance with the foregoing teachings. The exemplary embodiments were chosen and described in order to explain the specific principles of the invention and its practical application, thereby enabling those skilled in the art to implement and utilize various different exemplary embodiments of the invention, as well as various different choices and variations. The scope of the invention is intended to be defined by the claims and their equivalents.

Claims

1. A virtual machine scheduling method, characterized by, Includes the following steps: The scheduling module determines whether the virtual machine needs to be migrated, wherein the virtual machine is currently located on the first physical host; If the scheduling module determines that the virtual machine needs to be migrated, then the scheduling module determines the physical hosts that exist in the allowed list; After the scheduling module determines the physical hosts that exist in the allowed list, the scheduling module determines the destination physical host, wherein the destination physical host includes a second physical host and a third physical host; After the scheduling module determines the destination physical host, the scheduling module determines the overhead of migrating the virtual machine and source data to the destination physical host, wherein the source data is the data required by the virtual machine to complete the task; The scheduling module migrates the virtual machine and the source data to the second physical host or the third physical host based on the cost of migrating the virtual machine and the source data to the destination physical host. The overhead of migrating the virtual machine and the source data to the destination physical host includes: The first overhead of migrating the virtual machine from the first physical host to the second physical host; The second overhead of migrating the source data to the second physical host; The third overhead of migrating the virtual machine from the first physical host to the third physical host; The fourth overhead of migrating the source data to the third physical host The overhead of migrating the virtual machine and the source data to the destination physical host, as determined by the scheduling module, includes: The scheduling module determines whether the lookup table records the first overhead, the second overhead, the third overhead, and the fourth overhead. If the scheduling module determines that the lookup table contains records of the first cost, the second cost, the third cost, and the fourth cost, then the scheduling module calculates the sum of the first cost and the second cost, and the sum of the third cost and the fourth cost. The scheduling module predetermines the router hop count between each physical host based on the network topology. Therefore, the scheduling module pre-sets a lookup table to quickly determine the cost. The lookup table is as follows: 。 2. The method of claim 1, wherein, The scheduling module migrates the virtual machine and the source data to the second physical host or the third physical host based on the cost of migrating the virtual machine and the source data to the destination physical host, including: If the sum of the first overhead and the second overhead is greater than the sum of the third overhead and the fourth overhead, then the virtual machine and the source data are migrated to the third physical host; If the sum of the first overhead and the second overhead is less than the sum of the third overhead and the fourth overhead, then the virtual machine and the source data are migrated to the second physical host.

3. The method of claim 2, wherein, The method further includes: If the scheduling module determines that the first overhead is not recorded in the lookup table, the scheduling module will migrate the virtual machine and the source data to the third physical host. In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends an cost calculation instruction to the first physical host; After the first physical host receives the overhead calculation instruction, the first physical host sends simulated data to the second physical host; After the second physical host receives the simulated data, the second physical host determines the first overhead based on the simulated data; The second physical host sends the first overhead to the scheduling module.

4. A virtual machine scheduling system, characterized in that, Includes units for performing the following operations: The scheduling module determines whether the virtual machine needs to be migrated, wherein the virtual machine is currently located on the first physical host; If the scheduling module determines that the virtual machine needs to be migrated, then the scheduling module determines the physical hosts that exist in the allowed list; After the scheduling module determines the physical hosts that exist in the allowed list, the scheduling module determines the destination physical host, wherein the destination physical host includes a second physical host and a third physical host; After the scheduling module determines the destination physical host, the scheduling module determines the overhead of migrating the virtual machine and source data to the destination physical host, wherein the source data is the data required by the virtual machine to complete the task; The scheduling module migrates the virtual machine and the source data to the second physical host or the third physical host based on the cost of migrating the virtual machine and the source data to the destination physical host. The overhead of migrating the virtual machine and the source data to the destination physical host includes: The first overhead of migrating the virtual machine from the first physical host to the second physical host; The second overhead of migrating the source data to the second physical host; The third overhead of migrating the virtual machine from the first physical host to the third physical host; The fourth overhead of migrating the source data to the third physical host The overhead of migrating the virtual machine and the source data to the destination physical host, as determined by the scheduling module, includes: The scheduling module determines whether the lookup table records the first overhead, the second overhead, the third overhead, and the fourth overhead. If the scheduling module determines that the lookup table contains records of the first cost, the second cost, the third cost, and the fourth cost, then the scheduling module calculates the sum of the first cost and the second cost, and the sum of the third cost and the fourth cost. The scheduling module predetermines the router hop count between each physical host based on the network topology. Therefore, the scheduling module pre-sets a lookup table to quickly determine the cost. The lookup table is as follows: 。 5. The system of claim 4, wherein, The scheduling module migrates the virtual machine and the source data to the second physical host or the third physical host based on the cost of migrating the virtual machine and the source data to the destination physical host, including: If the sum of the first overhead and the second overhead is greater than the sum of the third overhead and the fourth overhead, then the virtual machine and the source data are migrated to the third physical host; If the sum of the first overhead and the second overhead is less than the sum of the third overhead and the fourth overhead, then the virtual machine and the source data are migrated to the second physical host.

6. The system according to claim 5, characterized in that, The system also includes a unit for performing the following operations: If the scheduling module determines that the first overhead is not recorded in the lookup table, the scheduling module will migrate the virtual machine and the source data to the third physical host. In response to the scheduling module determining that the first cost is not recorded in the lookup table, the scheduling module sends an cost calculation instruction to the first physical host; After the first physical host receives the overhead calculation instruction, the first physical host sends simulated data to the second physical host; After the second physical host receives the simulated data, the second physical host determines the first overhead based on the simulated data; The second physical host sends the first overhead to the scheduling module.

Citation Information

Patent Citations

  • Method and device for managing batch migration of virtual machines

    CN107301088A

  • A Virtual Machine Scheduling Method and System for High-Network Communication

    CN109189557B

  • Resource scheduling method, system, device, computer readable storage medium

    CN112433813A

  • Virtual machine migration manager and method

    CN110914804A