WO2018036104A1 - Virtual machine deployment method, system and physical server - Google Patents

Virtual machine deployment method, system and physical server Download PDF

Info

Publication number
WO2018036104A1
WO2018036104A1 PCT/CN2017/072988 CN2017072988W WO2018036104A1 WO 2018036104 A1 WO2018036104 A1 WO 2018036104A1 CN 2017072988 W CN2017072988 W CN 2017072988W WO 2018036104 A1 WO2018036104 A1 WO 2018036104A1
Authority
WO
WIPO (PCT)
Prior art keywords
physical server
virtual machine
constraint
rule
satisfies
Prior art date
Application number
PCT/CN2017/072988
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 华为技术有限公司
Publication of WO2018036104A1 publication Critical patent/WO2018036104A1/en

Links

Images

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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Definitions

  • the present invention relates to the field of virtual machine technologies, and in particular, to a method, a system, and a physical server for deploying a virtual machine.
  • cloud computing is a computing model.
  • the cloud computing system is mainly composed of a cloud computing platform and a client; the cloud computing platform is used to provide physical physics.
  • the virtualized resources of the server, and resources can be allocated to the client according to the needs of the client.
  • a scheduling system is usually deployed on a cloud computing platform.
  • the specific implementation of deploying a virtual machine in a cloud computing platform is: the scheduling system deploys a virtual machine in a physical server.
  • a constraint rule is usually set for each virtual machine in advance; the scheduling system of the cloud computing platform generally adopts the following method to arrange the virtual machine: first, it is determined that there are idle resources in the cloud computing system. The physical server then obtains a constraint rule to be deployed on the virtual machine, and according to the constraint rule, searches for a physical server that meets the constraint rule from the physical server that has the idle resource; and finally, the virtual machine to be deployed If the physical server that meets the binding rules is not found at this time, the deployment of the virtual machine to be deployed fails. The virtual machine is no longer deployed.
  • the above deployment method may result in the failure to find a physical server that meets the conditions, but there is a physical server with idle resources, thereby causing waste of resources.
  • the cloud computing system provides three physical servers, and each physical server can deploy up to four virtual machines, and virtual machine 1 has been deployed in physical server 1, and three free resources remain.
  • the virtual server 2 has been deployed in the physical server 2, and there are still three idle resources remaining, and the virtual server 3, the virtual machine 4, the virtual machine 5, and the virtual machine 6 have been deployed in the physical server 3, and there are no idle resources; At this time, if the physical server 1 fails, the virtual machine 1 also fails, and the scheduling system needs to redeploy the virtual machine 1 in order to ensure the normal operation of the virtual machine 1, and the default constraint rule of the virtual machine 1 is the virtual machine. 2 Cannot be deployed on the same physical server. In this case, the scheduling system uses the above deployment method to query the physical server that has the idle resource as the physical server 2, but since the physical server 2 has deployed the virtual machine 2, The constraint rule of the virtual machine 1 is not satisfied. Therefore, the virtual machine 1 cannot be deployed on the physical server 2 at this time, and the reconstruction process of the virtual machine 1 fails.
  • Embodiments of the present invention provide a method, a system, and a physical server for deploying a virtual machine to improve utilization of a physical server.
  • the first aspect provides a method for deploying a virtual machine, where the at least one first constraint rule is used as a first basis for the scheduling system to select a physical server for deploying the virtual machine to be deployed, where the method includes: in multiple physical servers Determining a physical server having an idle resource; determining, when the physical server having the idle resource does not find a physical server that satisfies all the first binding rules, determining the target physical server that the target physical server meets at least one of the first binding rules Part of the first constraint rule, or the target physical server does not satisfy any of the first constraint rules of the at least one first constraint rule; deploying the virtual machine to be deployed in the target physical server.
  • the target physical server is determined in the physical server where the idle resource exists, and then the virtual machine to be deployed is deployed in the target physical server; then, the method of the present invention is used to improve the physical server.
  • the success rate of deploying virtual machines increases the resource utilization of physical servers.
  • the number of the first binding rules is one, and when the physical server that satisfies all the first binding rules is not found in the physical server that has the idle resource, the determining is performed.
  • the target physical server includes: when a physical server that satisfies the first constraint rule is not found in the physical server that has the idle resource, select any physical server as the target physical server among the physical servers that have the idle resource.
  • the resource utilization rate of the physical server can be improved by adopting the above method.
  • the number of the first binding rules is M, M is a positive integer greater than or equal to 2, and M first binding rules have a priority;
  • the target physical server is determined, including: in the physical server having the idle resource, according to the priority of the M first binding rules, one by one Matching the first constraint rule to filter the physical server; if the first first constraint rule is matched to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule is not If the physical server is filtered in the first physical server, any physical server is selected from the first physical server as the target physical server.
  • the above method can be used to improve the resource utilization of the physical server.
  • the method further includes: Locating, by the physical server of the idle resource, a physical server that satisfies all the first binding rules in the at least one first binding rule; and when finding a physical server that satisfies all the first binding rules in the at least one first binding rule, Deploy the VM to be deployed in a physical server that meets all the first binding rules.
  • the method further includes: in the physical server that has the idle resource, the search is satisfied.
  • a physical server of the second constraint rule the second constraint rule is a second basis for selecting a physical server for deploying the virtual machine to be deployed; and in the physical server satisfying the second constraint rule, searching for the first constraint rule Physical server.
  • the user may also set a second constraint rule that the physical server must satisfy according to requirements, so that the setting of the virtual machine constraint rule is more flexible.
  • the present invention provides a scheduling system for deploying a virtual machine, where the cloud computing platform is deployed on at least one physical server, the cloud computing platform includes a scheduling system, and at least one first binding rule is selected as a candidate for deploying the virtual to be deployed.
  • the first basis of the physical server of the machine includes: an idle resource determining unit, configured to determine, in the plurality of physical servers, a physical server that has an idle resource; and a target physical server determining unit, configured to: When the physical server that satisfies all the first binding rules is not found in the server, the target physical server is determined, the target physical server meets some of the first binding rules in the at least one first binding rule, or the target physical server does not satisfy at least one Any one of the first binding rules; the first deployment unit is configured to deploy the virtual machine to be deployed in the target physical server.
  • the target physical server is determined in the physical server where the idle resource exists, and then the virtual machine to be deployed is deployed in the target physical server; then, the system of the present invention is used to improve the physical server.
  • the success rate of deploying virtual machines increases the resource utilization of physical servers.
  • the target physical server determining unit is specifically configured to: not find the physical server that has the idle resource.
  • the physical server that satisfies the first constraint rule is selected, any physical server is selected as the target physical server among the physical servers having the idle resources.
  • the first constraint rule is set, the above system can be used to improve the resource utilization of the physical server.
  • the number of the first binding rules is M, M is a positive integer greater than or equal to 2, and M first binding rules have priority;
  • the physical server determining unit is specifically configured to: in the physical server that has the idle resource, select the first constraint rule to match the physical server according to the priority of the M first binding rules; if the first first constraint is matched The sex rule is filtered to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule does not filter the physical server from the first physical server, and then the first physical server is selected.
  • a physical server acts as the target physical server.
  • the scheduling system further includes: a first searching unit, And a physical server that is configured to satisfy all the first binding rules in the at least one first binding rule, and a second deployment unit, configured to find that at least one first binding rule is met In the physical server of all the first binding rules, the virtual machine to be deployed is deployed in the physical server that meets all the first binding rules.
  • the foregoing scheduling system further includes: a second searching unit, configured to: find, in the physical server that has the idle resource, a physical server that satisfies the second binding rule, and the second binding rule is used as the physical medium selected to deploy the virtual machine to be deployed.
  • the second basis of the server is configured to search for a physical server that satisfies the first constraint rule in the physical server that meets the second constraint rule.
  • the user may also set a second constraint rule that the physical server must satisfy according to requirements, so that the setting of the virtual machine constraint rule is more flexible.
  • the present invention further provides a physical server including at least one processor, a memory, and a communication interface; at least one processor, a memory, and a communication interface are each connected by a bus; and a memory for storing a computer to execute an instruction; At least one processor, the computer executing instructions for executing the memory storage, causing the physical server to perform the method of deploying the virtual machine provided by the first aspect or the various possible designs of the first aspect, or causing the physical server to communicate with the cloud through the communication interface
  • the other physical servers included in the system perform data interaction to perform the method of deploying the virtual machine provided by the first aspect or various possible designs of the first aspect.
  • the above physical server can improve the success rate of deploying a virtual machine on a physical server, thereby improving the resource utilization of the physical server.
  • a computer readable storage medium where computer execution instructions are stored, and when at least one processor of a physical server executes the computer to execute an instruction, the physical server executes the first aspect or the first Aspects of various possible designs provide a way to deploy virtual machines. Using the above computer Reading media can improve the success rate of deploying virtual machines on physical servers, thereby increasing the resource utilization of physical servers.
  • a computer program product comprising computer executed instructions stored in a computer readable storage medium.
  • At least one processor of the physical server may read the computer-executable instructions from a computer readable storage medium, and the at least one processor executes the computer-executable instructions such that the physical server implements the cloth provided by the first aspect or the various possible designs of the first aspect described above The method of the virtual machine.
  • the above computer program product can improve the success rate of deploying a virtual machine on a physical server, thereby improving resource utilization of the physical server.
  • the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the method of the present invention improves the success rate of deploying the virtual machine in the physical server, thereby improving the resource utilization of the physical server.
  • FIG. 1 is a schematic diagram of a cloud computing system according to an embodiment of the present invention
  • FIG. 2 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure
  • FIG. 3 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure.
  • FIG. 4 is a schematic flowchart of a method for deploying a virtual machine according to an embodiment of the present invention
  • FIG. 5 is still another schematic flowchart of a method for deploying a virtual machine according to an embodiment of the present disclosure
  • FIG. 6 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure.
  • FIG. 7 is a schematic structural diagram of a scheduling system according to an embodiment of the present disclosure.
  • FIG. 8 is a physical server according to an embodiment of the present invention.
  • the present invention first provides a method for deploying a virtual machine.
  • the application scenarios of the method are as follows:
  • Virtualize resources for physical resources such as physical servers and physical networks, and build cloud computing systems using cloud computing technology.
  • cloud computing platforms can deploy virtual machines on physical servers (Virtual Machine). , referred to as VM), deploy virtual networks, deploy virtual switches, and so on.
  • Virtual Machine Virtual Machine
  • VM Virtual Machine
  • deploy virtual networks deploy virtual switches, and so on.
  • the cloud computing system is mainly composed of a cloud computing platform and a client; the cloud computing platform is used to uniformly provide virtualized resources of the physical server, and can allocate resources to the client according to the requirements of the client.
  • a scheduling system is deployed on the cloud computing platform; the specific implementation of the cloud computing platform deploying the virtual machine is: the scheduling system deploys the virtual machine in the physical server.
  • the scheduling system can receive instructions from the client and deploy the corresponding virtual machine for use by the client according to the instructions of the client.
  • the scheduling system needs to deploy virtual machines in the physical server during the creation, migration, and HA (High Availability) of the virtual machine.
  • the virtual machine creation process refers to a newly created virtual The process of deploying the virtual machine to the physical server;
  • the migration process of the virtual machine refers to the migration of the virtual machine in the physical server to other physical servers in the cloud computing system resource pool due to re-planning of a physical server.
  • the virtual machine to be migrated can run normally, and the client cannot know the migration process;
  • the HA process of the virtual machine refers to the physical server failure caused by a physical server in the cloud computing system. All the virtual machines on the fault are faulty.
  • the other physical servers are selected in the resource pool of the cloud computing system to deploy the faulty virtual machine. It can be seen that in the above process, the newly created virtual machine needs to be deployed in the physical server, and in the process of migration and HA, the virtual machine to be migrated and the failed virtual machine need to be redeployed in the physical server. In the prior art, the deployment process of the newly created virtual machine, the virtual machine to be migrated, and the faulty virtual machine is the same; in the present invention, the new virtual machine, the virtual machine to be migrated, and the fault are deleted for convenience of description. Virtual machines are collectively referred to as virtual machines to be deployed.
  • a constraint rule is generally set for each virtual machine, and the constraint rule can constrain the deployment of the virtual machine.
  • the scheduling system of the cloud computing platform generally adopts the following method to arrange a virtual machine: first, a physical server having an idle resource in the cloud computing system is determined, and then a constraint rule preset by the virtual machine to be deployed is obtained, according to the constraint. Sex rules, from the physical server that has idle resources, find the physical server that meets the binding rules; finally, deploy the virtual machine to be deployed in the discovered physical server; of course, if the constraint is not found at this time The physical server of the rule fails to deploy the virtual machine and the virtual machine is no longer deployed.
  • a cloud computing system provides three physical servers, and each physical server can deploy up to four virtual machines, and virtual machine 1 has been deployed in physical server 1, and three remaining idle. Resources; virtual machine 2 has been deployed in physical server 2, and there are still three idle resources remaining, and virtual machine 3, virtual machine 4, virtual machine 5, and virtual machine 6 have been deployed in physical server 3, and there are no idle resources.
  • the scheduling system starts the above HA process in order to ensure the normal operation of the virtual machine 1, and re-deploys the virtual machine 1 in the physical server;
  • the preset constraint rule of the machine 1 is that the virtual machine 2 cannot be deployed on the same physical server, and the scheduling system uses the above deployment method to query the physical server that has the idle resource as the physical server 2, but since the physical server 2 has The virtual machine 2 is deployed and does not meet the constraint rules of the virtual machine 1. Therefore, the virtual machine 1 cannot be deployed on the physical server 2, and the HA process of the virtual machine 1 fails.
  • the present invention provides a method for deploying a virtual machine in a physical server.
  • a first constraint rule is set for the virtual machine to be deployed, and the first constraint rule may be specifically used as the first basis for the scheduling system to select a physical server for deploying the virtual machine to be deployed.
  • the number of the first constraint rules may be specifically one or more; here, in order to facilitate distinguishing different constraint rules, the constraint rules are divided into a first constraint rule and a second constraint rule described below, and the first The binding rule may be specifically a constraint rule that the physical server does not have to meet, and the specific content of the first constraint rule may be set by the user.
  • the method is as follows:
  • Step S41 The scheduling system determines, among the plurality of physical servers of the cloud computing system, a physical server that has an idle resource.
  • the resource may specifically include any one or a combination of hardware and software resources such as a computing resource, a storage resource, and a network resource.
  • the central processing unit (CPU) of each physical server is virtualized into multiple vCPUs (virtual Central Processing Units).
  • the CPU of a physical server can be virtualized to 90 vCPUs.
  • the current virtual machine needs to occupy 8G of memory, then you need to check whether the remaining memory of the physical server is greater than 8G. If it is greater than 8G, determine that the current physical server's memory meets the demand; The remaining vCPU resources and remaining memory resources are all satisfied with the virtual machine When demand, determine the existence of idle resources of the physical server.
  • Step S42 The scheduling system determines whether there is a physical server that satisfies all the first binding rules in the physical server where the idle resource exists; if yes, step S43 is performed; otherwise, step S44 is performed.
  • the first constraint rule may be specifically any one of the following rules or a combination of any of the following rules: a virtual machine vCPU core binding rule, a virtual machine NUMA (Non Uniform Memory Access Achitecture, non- Uniform access to memory models) rules, virtual machine mutual exclusion rules, or association rules between virtual machines and physical servers.
  • the CPU of the physical server in the cloud computing system may be multi-core, the multi-core is that the CPU has multiple processing cores, and each core separately processes one task at any time; and the vCPU generally needs to be bound to the physical server CPU.
  • the kernel runs, and once the vCPU is bound to a core of the CPU, it is exclusive to the core.
  • the virtual machine vCPU core binding rule is set to ensure that the vCPU is bound to the physical server where the virtual machine is deployed.
  • the running resources of the CPU of the central processing unit are generally divided into multiple blocks, and the memory resources are also divided into multiple blocks, and the running resources are paired with the memory resources, for example, the running resources are divided into Running resource A1, running resource B1, and running resource C1; dividing the memory resource into memory resource A1, memory resource B1, and memory resource C1, and then setting running resource A1 and memory resource A1 as a pair, and running resource B1 and
  • the memory resource B1 is set to a pair, and the running resource C1 and the memory resource C1 are set as a pair; while the virtual machine is running, it needs to occupy one or more pairs of resources in the physical server.
  • the NUMA rule of the virtual machine is used to ensure that there are paired resources in the physical server where the virtual machine is deployed, and the virtual machine is configured to stipulate that the two virtual machines cannot be deployed in the same physical server. This is mainly to ensure the reliability of the virtual machine operation.
  • the unit exclusion rule of virtual machine 1 is that the virtual machine 2 cannot run on the same physical server, because virtual machine 1 and virtual machine 2 provide the same functions; during the virtual machine creation process, the virtual machine is not 1 and the virtual machine 2 are deployed on the same physical server, thereby avoiding the failure of both the virtual machine 1 and the virtual machine 2 due to a physical server failure, thereby improving the reliability of the virtual machine operation.
  • the association rule between the virtual machine and the physical server is mainly for constraining the rules of the physical server that the virtual machine can deploy.
  • the association rules of the virtual machine and the physical server are physical server 1, physical server 2, and physical server 3, then the virtual The machine can only be deployed in physical server 1, physical server 2 or physical server 3.
  • Step S43 The scheduling system deploys the virtual machine to be deployed in a physical server that satisfies all the first binding rules.
  • Step S44 The scheduling system determines the target physical server in the physical server where the idle resource exists, and the target The physical server satisfies some of the first binding rules or does not satisfy any of the first binding rules.
  • Step S45 The scheduling system deploys the virtual machine to be deployed in the target physical server.
  • the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the method of the present invention improves the success rate of deploying the virtual machine on the physical server, thereby improving the resource utilization of the physical server.
  • step S44 in the foregoing embodiment, “determining the target physical server in the physical server having the idle resource” may be specifically The scheduling system selects any physical server as the target physical server in the physical server where the idle resource exists.
  • the entire processing flow of the scheduling system may be specifically: first in the cloud computing system All the physical servers, find the physical server with the idle resources; then, in the physical server with the idle resources, find the physical server that satisfies the first binding rule A; if the physical server that satisfies the first binding rule A can be found , then deploy the virtual machine to be deployed in the physical server; if the physical server that satisfies the first binding rule A is not found, then select any physical server in the physical server with the idle resource, and then wait The deployment virtual machine is deployed on the physical server.
  • the above method improves the success rate of deploying a virtual machine on a physical server, thereby improving resource utilization of the physical server.
  • M first binding rules are preset for the virtual machine to be deployed, respectively being the first binding rule 1, the first binding rule 2, and so on, until the first binding rule M , M is an integer greater than or equal to 2; the above M first constraint rules may be specifically sorted according to priority, that is, the priority of the first binding rule 1 is higher than the second binding rule 2
  • a constraint rule 2 has a higher priority than the first constraint rule 3, and so on.
  • the first constraint rule I-1 has a higher priority than the first constraint rule I, and the different constraint rules have priority.
  • the level can be specifically set by the user according to his own needs.
  • step S44 in the above embodiment, "determining the target physical server in the physical server having the idle resource” may be specifically: the scheduling system may be in the physical server having the idle resource, according to the M first Prioritizing the constraint rules, matching the first constraint rules one by one to filter the physical server; if matching the first one, the first constraint rule is filtered to the first physical server, and matching the first one of the first constraints The first constraint rule of the sub-priority of the sex rule does not filter the physical server from the first physical server, and the scheduling system selects any physical server from the first physical server as the target Physical server.
  • step S44 in the above embodiment "determining the target physical server in the physical server having the idle resource” may be specifically: the scheduling system is in the physical server where the idle resource exists Finding a physical server that satisfies the first constraint rule 1; when the physical system that satisfies the first constraint rule 1 is not found, the scheduling system selects any physical service in the physical server where the idle resource exists Server as the target physical server;
  • Step S44 in the foregoing embodiment, "determining the target physical server in the physical server having the idle resource" may be specifically: the scheduling The system searches for a physical server that satisfies the first constraint rule I in the physical server that satisfies the first constraint rule I-1; the scheduling system satisfies when the physical server that satisfies the first constraint rule I is not found. Any one of the physical servers of the first constraint rule I-1 serves as the target physical server.
  • the scheduling process in the cloud computing platform is as follows: First, the physical server having the idle resource is determined from multiple physical servers of the cloud computing system. Then, from the physical server having the idle resource, find the physical server that satisfies the first constraint rule 1; if the physical server that satisfies the first constraint rule 1 can be found, the physical server that satisfies the first constraint rule 1 Finding a physical server that satisfies the first constraint rule 2; if the physical server that satisfies the first constraint rule 1 is not found, arbitrarily selects a physical server that has an idle resource, and then deploys the virtual machine to be deployed in the selected In the physical server; if the physical server that satisfies the first constraint rule 1 can be found, in the physical server that satisfies the first constraint rule 1, the physical server that satisfies the first constraint rule 2 is continuously searched, if it can be found The physical server that satisfies the first constraint rule 1 can be found, in the physical
  • Step S51 Searching for physical servers having idle resources from multiple physical servers of the cloud computing system
  • Step S52 determining whether the physical server that has the idle resource can find the physical server that satisfies the first binding rule 1; if it can be found, step S53 is performed, otherwise, step S56 is performed;
  • Step S53 determining whether the physical server that satisfies the first binding rule 2 can be found in the physical server that satisfies the first binding rule 1; if it can be found, step S54 is performed; otherwise, step S57 is performed;
  • Step 54 Determine whether the physical server that satisfies the first binding rule 3 can be found in the physical server that satisfies the first binding rule 2; if it can be found, step S55 is performed; otherwise, step S58 is performed;
  • Step S55 In the physical server that meets the first constraint rule 3, select a physical server, and deploy the virtual machine to be deployed in the selected physical server;
  • Step S56 In the physical server where the idle resource exists, select the physical server, and deploy the virtual machine to be deployed in the selected physical server;
  • Step S57 In the physical server that meets the first constraint rule 1, the physical server is arbitrarily selected, and the virtual machine to be deployed is deployed in the physical server;
  • Step S58 In the physical server that satisfies the first constraint rule 2, the physical server is arbitrarily selected, and the virtual machine to be deployed is deployed in the physical server.
  • the first constraint rule is a non-mustful constraint rule.
  • the foregoing method can be used to find the physics that satisfies the first constraint rule.
  • the server further optimizes the deployment of the virtual machine on the basis of resource conservation.
  • a second constraint rule may be set for the virtual machine to be deployed, and the second constraint rule is used as the scheduling system.
  • the second constraint rule is a rule that the physical server must meet when the virtual machine is deployed; the number of the second binding rule may be one or For multiple, users can set it themselves.
  • the second constraint rule may be specifically any one of the following rules or a combination of the following rules: a virtual machine vCPU core binding rule, a virtual machine NUMA rule, and a virtual unit mutual exclusion Rule or association rule between the virtual machine and the physical server; and setting the above rule as the first binding rule or the second binding rule, the user can set it according to his own needs.
  • the method described in the foregoing first embodiment, the second embodiment, and the third embodiment may further include: the scheduling system searches for a physical server that satisfies the second constraint rule in the physical server that has the idle resource; the scheduling system is In the physical server that satisfies the second constraint rule, find a physical server that satisfies all of the first constraint rules.
  • the scheduling system may be deployed in the following manner according to the following manner: first, multiple in the cloud computing system In the physical server, the physical server that has the idle resource is found; then, the physical server that has the idle resource finds the physical server that meets the second constraint rule; if the physical server that meets the second constraint rule is not found, the to-be-deployed The deployment of the virtual machine fails, and the deployment of the virtual machine is stopped for deployment.
  • the second constraint rule is multiple, the second constraint rule is a constraint rule that the physical server must satisfy. The physical server needs to meet all the second binding rules.
  • the deployment of the virtual machine to be deployed fails; if a physical server that satisfies the second binding rule is found, On the physical server that satisfies the second binding rule, continue to find the first constraint rule Physical server; the first rule is a binding, can refer to particular embodiments described above in Example II, whereas in the first plurality of binding rules, see detailed description of the above-described third embodiment.
  • the user when the virtual machine is deployed, the user may also set a second constraint rule that the physical server must satisfy according to requirements, thereby making the setting of the virtual machine constraint rule more flexible.
  • the present invention also provides a second method for deploying a virtual machine. Specifically, as follows, referring to FIG. 6, the server 1 fails, causing the virtual machine 1 in the server 1 to also fail. At this time, the HA mechanism is started, in the resource pool. Select another physical server and redeploy virtual machine 1; the first constraint rule preset by the virtual machine. See Table 1 for details.
  • the scheduling system will first determine the physical server that has the idle resource. According to FIG. 6, it can be concluded that there are idle resources in both the physical server 2 and the physical server 3. Then, the first preset according to the virtual machine 1 The binding rules are sequentially searched in the physical server 2 and the physical server 3 according to the priority level, and the physical servers satisfying the first priority “virtual machine vCPU core binding rule” and the second priority “virtual machine NUMA rule” are It is assumed that only the physical server 2 meets the above two rules; at this time, the scheduling system will continue to check whether the physical server 2 satisfies the third priority "virtual unit mutual exclusion rule", but the physical server 2 has deployed the virtual machine 2 The "virtual unit mutual exclusion rule" of the third priority is not satisfied, but at this time, the physical server 2 is the physical server that satisfies the highest priority first constraint rule, and therefore, the virtual machine 1 is deployed in the physical server 2. , thus protecting the reliability of the business.
  • the present invention further provides a scheduling system for deploying a virtual machine, where the cloud computing platform is deployed on multiple physical servers, the cloud computing platform includes a scheduling system, and at least one first binding rule is selected.
  • the idle resource determining unit 71 is configured to determine, in the plurality of physical servers, a physical server that has an idle resource;
  • the target physical server determining unit 72 is configured to determine, when the physical server that has the idle resource does not find the physical server that satisfies all the first binding rules, the target physical server that meets the at least one first constraint a portion of the first constraint rule in the sex rule, or the target physical server does not satisfy any of the at least one first constraint rule;
  • the first deployment unit 73 is configured to deploy the virtual machine to be deployed in the target physical server.
  • the target physical server determining unit 72 is specifically configured to: find that the first constraint is not found in a physical server that has an idle resource. In the case of a regular physical server, any physical server is selected as the target physical server among physical servers in which there are idle resources.
  • the number of the first constraint rules is M, the M is a positive integer greater than or equal to 2, and the M first constraint rules have a priority; the target physical server determining unit 72, Specifically, in the physical server that has the idle resource, the first constraint rule is matched one by one according to the priority of the M first binding rules to filter the physical server; if the first one is matched a constraint rule is filtered to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule does not filter the physical server from the first physical server, Selecting any physical server from the first physical server as the target physical server.
  • the scheduling system 700 further includes: a first searching unit, configured to be in a physical server that has idle resources Searching for a physical server that satisfies all of the first constraint rules in the at least one first constraint rule; a second deployment unit, configured to find all first constraints in the at least one first constraint rule When the physical server of the rule is used, the virtual machine to be deployed is deployed in the physical server that satisfies all the first binding rules.
  • a first searching unit configured to be in a physical server that has idle resources Searching for a physical server that satisfies all of the first constraint rules in the at least one first constraint rule
  • a second deployment unit configured to find all first constraints in the at least one first constraint rule When the physical server of the rule is used, the virtual machine to be deployed is deployed in the physical server that satisfies all the first binding rules.
  • the scheduling system 700 may further include: a second searching unit, configured to search for a physical server that satisfies the second binding rule in the physical server that has the idle resource, where the second binding rule is selected for deployment A second basis of the physical server of the virtual machine to be deployed; a third searching unit, configured to search for a physical server that satisfies the first constraint rule in the physical server that meets the second constraint rule.
  • a second searching unit configured to search for a physical server that satisfies the second binding rule in the physical server that has the idle resource, where the second binding rule is selected for deployment A second basis of the physical server of the virtual machine to be deployed
  • a third searching unit configured to search for a physical server that satisfies the first constraint rule in the physical server that meets the second constraint rule.
  • the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the scheduling system of the present invention improves the success rate of deploying the virtual machine on the physical server, thereby improving the resource utilization of the physical server.
  • the cloud computing platform is deployed on multiple physical servers. Therefore, the scheduling system may be deployed on at least one physical server. Therefore, the hardware body of the method for deploying the virtual machine is a physical server, and the hardware body of the scheduling system is implemented. It is also a physical server. Therefore, corresponding to the above embodiment, the present invention also discloses a physical server, which is shown in FIG. 8.
  • the physical server 800 includes at least one processor 801, a memory 802, and a communication interface 803; the at least one processor 801, the memory 802, and the communication interface 803 are each connected by a bus 804.
  • the memory 802 is configured to store a computer to execute an instruction.
  • the at least one processor 801 is configured to execute a computer execution instruction stored by the memory 802, so that the physical server 800 performs the method for deploying a virtual machine provided by the foregoing method embodiment, or causes the physical server 800 to implement scheduling. Part or all of the functionality of the system; or,
  • the at least one processor 801 is configured to execute a computer execution instruction stored by the memory 802, so that the physical server 800 performs data interaction with other physical servers included in the cloud computing system through the communication interface 803 to perform the foregoing method implementation.
  • the method for deploying a virtual machine is provided, or the physical server 800 is caused to perform data interaction with other physical servers included in the cloud computing system through the communication interface 803 to implement part or all of the functions of the scheduling system.
  • the at least one processor 801 may include different types of processors 801, or include the same type of processor 801; the processor 801 may be any one of the following: a central processing unit (CPU), an ARM processor. , Field Programmable Gate Array (FPGA), dedicated processor and other devices with computational processing capabilities. In an optional implementation manner, the at least one processor 801 may also be integrated into a many-core processor.
  • processors 801 may include different types of processors 801, or include the same type of processor 801; the processor 801 may be any one of the following: a central processing unit (CPU), an ARM processor. , Field Programmable Gate Array (FPGA), dedicated processor and other devices with computational processing capabilities.
  • the at least one processor 801 may also be integrated into a many-core processor.
  • the memory 802 may be any one or any combination of the following: a random access memory (RAM), a read only memory (ROM), a non-volatile memory (non-volatile memory). , referred to as NVM), Solid State Drives (SSD), mechanical hard disks, disks, disk arrays and other storage media.
  • RAM random access memory
  • ROM read only memory
  • NVM non-volatile memory
  • SSD Solid State Drives
  • Communication interface 803 is used by physical server 800 to interact with other devices, such as other physical servers in a virtual machine system.
  • Communication interface 803 can be any one or any combination of the following: a network interface (eg, Ethernet interface), wireless network card and other devices with network access.
  • the bus 804 can include an address bus, a data bus, a control bus, etc., for ease of representation, Figure 8 shows the bus with a thick line.
  • the bus 804 may be any one or any combination of the following: an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, and an extended industry standard structure ( Extended Industry Standard Architecture (EISA) bus and other devices for wired data transmission.
  • ISA Industry Standard Architecture
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Abstract

The present invention discloses a virtual machine deployment method, system and physical server, and the method comprises: determining physical servers having an idle resource present therein from a plurality of physical servers; determining a target physical server when a physical server satisfying all of first constraining rules is not found in the physical servers having an idle resource present therein, the target physical server satisfying a part of the first constraining rules of the one or more first constraining rules, or the target physical server not satisfying any of the first constraining rules of the one or more first constraining rules; and deploying a virtual machine to be deployed in the target physical server. The use of the virtual machine deployment method, system and physical server provided by the present invention can increase the utilization rate of physical servers.

Description

一种布署虚拟机的方法、系统以及物理服务器Method, system and physical server for deploying virtual machine 技术领域Technical field
本发明涉及虚拟机技术领域,尤其涉及一种部署虚拟机的方法、系统以及物理服务器。The present invention relates to the field of virtual machine technologies, and in particular, to a method, a system, and a physical server for deploying a virtual machine.
背景技术Background technique
随着互联网的飞速发展,云计算应运而生;所谓云计算是一种计算模式,如图1所示,云计算系统,主要由云计算平台和客户端组成;云计算平台用于统一提供物理服务器虚拟化后的资源,且可根据客户端的需求,为客户端分配资源。如图2所示,云计算平台上通常部署有调度系统,云计算平台部署虚拟机的具体实现是:该调度系统在物理服务器中布署虚拟机。With the rapid development of the Internet, cloud computing came into being. The so-called cloud computing is a computing model. As shown in Figure 1, the cloud computing system is mainly composed of a cloud computing platform and a client; the cloud computing platform is used to provide physical physics. The virtualized resources of the server, and resources can be allocated to the client according to the needs of the client. As shown in FIG. 2, a scheduling system is usually deployed on a cloud computing platform. The specific implementation of deploying a virtual machine in a cloud computing platform is: the scheduling system deploys a virtual machine in a physical server.
目前,在虚拟机布署前,通常会预先为每个虚拟机设置一种约束性规则;云计算平台的调度系统一般采用下述方法,布置虚拟机:首先确定云计算系统中存在空闲资源的物理服务器,然后获取待布署虚拟机所具有的约束性规则,根据所述约束性规则,从存在空闲资源的物理服务器中,查找满足约束性规则的物理服务器;最后,将待布署虚拟机布署在查找出的物理服务器中;当然,如果此时未查找到满足约束性规则的物理服务器,则待布署虚拟机的布署失败,不再布署该虚拟机。Currently, before the virtual machine is deployed, a constraint rule is usually set for each virtual machine in advance; the scheduling system of the cloud computing platform generally adopts the following method to arrange the virtual machine: first, it is determined that there are idle resources in the cloud computing system. The physical server then obtains a constraint rule to be deployed on the virtual machine, and according to the constraint rule, searches for a physical server that meets the constraint rule from the physical server that has the idle resource; and finally, the virtual machine to be deployed If the physical server that meets the binding rules is not found at this time, the deployment of the virtual machine to be deployed fails. The virtual machine is no longer deployed.
但是在实际应用中,采用上述布署方法,可能会出现未查找到符合条件的物理服务器,但存在有空闲资源的物理服务器的情况,从而造成资源的浪费。比如,如图3所示,云计算系统提供3个物理服务器,而每个物理服务器最多可部署4个虚拟机,且在物理服务器1中已布署有虚拟机1,还剩余三个空闲资源;物理服务器2中已布署有虚拟机2,也还剩余三个空闲资源,而物理服务器3中已部署有虚拟机3、虚拟机4、虚拟机5和虚拟机6,未有空闲资源;而此时,如果物理服务器1故障,导致虚拟机1也故障,而调度系统为了保证虚拟机1的正常运行,需重新部署虚拟机1,且虚拟机1预设的约束性规则为与虚拟机2不能部署在同一个物理服务器上,那么此时,调度系统,采用上述布署方法,将查询出存在空闲资源的物理服务器为物理服务器2,但由于物理服务器2中已部署有虚拟机2,并不满足虚拟机1的约束性规则,因此,此时虚拟机1并不能布署在物理服务器2上,虚拟机1的重建过程失败。However, in practical applications, the above deployment method may result in the failure to find a physical server that meets the conditions, but there is a physical server with idle resources, thereby causing waste of resources. For example, as shown in FIG. 3, the cloud computing system provides three physical servers, and each physical server can deploy up to four virtual machines, and virtual machine 1 has been deployed in physical server 1, and three free resources remain. The virtual server 2 has been deployed in the physical server 2, and there are still three idle resources remaining, and the virtual server 3, the virtual machine 4, the virtual machine 5, and the virtual machine 6 have been deployed in the physical server 3, and there are no idle resources; At this time, if the physical server 1 fails, the virtual machine 1 also fails, and the scheduling system needs to redeploy the virtual machine 1 in order to ensure the normal operation of the virtual machine 1, and the default constraint rule of the virtual machine 1 is the virtual machine. 2 Cannot be deployed on the same physical server. In this case, the scheduling system uses the above deployment method to query the physical server that has the idle resource as the physical server 2, but since the physical server 2 has deployed the virtual machine 2, The constraint rule of the virtual machine 1 is not satisfied. Therefore, the virtual machine 1 cannot be deployed on the physical server 2 at this time, and the reconstruction process of the virtual machine 1 fails.
发明内容Summary of the invention
本发明实施例提供一种布署虚拟机的方法、系统以及物理服务器,以提高物理服务器的利用率。Embodiments of the present invention provide a method, a system, and a physical server for deploying a virtual machine to improve utilization of a physical server.
第一方面,提供一种布署虚拟机的方法,至少一个第一约束性规则作为调度系统选择用于部署待部署虚拟机的物理服务器的第一依据,上述方法包括:在多个物理服务器中,确定存在空闲资源的物理服务器;在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,目标物理服务器满足至少一个第一约束性规则中的部分第一约束性规则,或目标物理服务器不满足至少一个第一约束性规则中的任一第一约束性规则;将待部署虚拟机布署在目标物理服务器中。The first aspect provides a method for deploying a virtual machine, where the at least one first constraint rule is used as a first basis for the scheduling system to select a physical server for deploying the virtual machine to be deployed, where the method includes: in multiple physical servers Determining a physical server having an idle resource; determining, when the physical server having the idle resource does not find a physical server that satisfies all the first binding rules, determining the target physical server that the target physical server meets at least one of the first binding rules Part of the first constraint rule, or the target physical server does not satisfy any of the first constraint rules of the at least one first constraint rule; deploying the virtual machine to be deployed in the target physical server.
由于在本发明实施例中,在存在空闲资源的物理服务器中,未查找出满足所有第一 约束性规则的物理服务器时,会在存在空闲资源的物理服务器中,确定目标物理服务器,然后将待部署虚拟机布署在目标物理服务器中;那么,采用本发明的方法,提高了在物理服务器部署虚拟机的成功率,从而提高了物理服务器的资源利用率。In the embodiment of the present invention, in the physical server where the idle resource exists, all the first ones are not found to be satisfied. When the physical server of the constraint rule is used, the target physical server is determined in the physical server where the idle resource exists, and then the virtual machine to be deployed is deployed in the target physical server; then, the method of the present invention is used to improve the physical server. The success rate of deploying virtual machines increases the resource utilization of physical servers.
结合第一方面,在第一种可能的实现方式中,第一约束性规则的个数为一个,在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,包括:在存在空闲资源的物理服务器中未查找到满足第一约束性规则的物理服务器时,在存在空闲资源的物理服务器中选择任一物理服务器作为目标物理服务器。在具有设置一个第一约束性规则时,采用上述方法,可提高物理服务器的资源利用率。With reference to the first aspect, in the first possible implementation manner, the number of the first binding rules is one, and when the physical server that satisfies all the first binding rules is not found in the physical server that has the idle resource, the determining is performed. The target physical server includes: when a physical server that satisfies the first constraint rule is not found in the physical server that has the idle resource, select any physical server as the target physical server among the physical servers that have the idle resource. When the first constraint rule is set, the resource utilization rate of the physical server can be improved by adopting the above method.
结合第一方面,在第二种可能的实现方式中,第一约束性规则的个数为M个,M为大于或等于2的正整数,M个第一约束性规则具有优先级;在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,包括:在存在空闲资源的物理服务器中,按照M个第一约束性规则的优先级,逐个匹配第一约束性规则来筛选物理服务器;若匹配第I个第一约束性规则筛选到第一物理服务器,并且匹配第I个第一约束性规则的次优先级的第一约束性规则未从第一物理服务器中筛选到物理服务器,则从第一物理服务器中选择任一物理服务器作为目标物理服务器。在具有设置多个第一约束性规则时,采用上述方法,可提高物理服务器的资源利用率。With reference to the first aspect, in a second possible implementation manner, the number of the first binding rules is M, M is a positive integer greater than or equal to 2, and M first binding rules have a priority; When the physical server that satisfies all the first binding rules is not found in the physical server of the idle resource, the target physical server is determined, including: in the physical server having the idle resource, according to the priority of the M first binding rules, one by one Matching the first constraint rule to filter the physical server; if the first first constraint rule is matched to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule is not If the physical server is filtered in the first physical server, any physical server is selected from the first physical server as the target physical server. When there are multiple first constraint rules, the above method can be used to improve the resource utilization of the physical server.
结合第一方面、第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,上述方法还包括:在存在空闲资源的物理服务器中,查找满足至少一个第一约束性规则中所有第一约束性规则的物理服务器;在查找出满足至少一个第一约束性规则中所有第一约束性规则的物理服务器时,将待部署虚拟机部署在满足所有第一约束性规则的物理服务器中。In conjunction with the first aspect, the first possible implementation of the first aspect, or the second possible implementation of the first aspect, in a third possible implementation of the first aspect, the method further includes: Locating, by the physical server of the idle resource, a physical server that satisfies all the first binding rules in the at least one first binding rule; and when finding a physical server that satisfies all the first binding rules in the at least one first binding rule, Deploy the VM to be deployed in a physical server that meets all the first binding rules.
结合第一方面、第一方面的第一种可能的实现方式、第一方面的第二种可能的实现方式或第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器之前,上述方法还包括:在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器,第二约束性规则作为选择用于部署待部署虚拟机的物理服务器的第二依据;在满足第二约束性规则的物理服务器中,查找满足第一约束性规则的物理服务器。在本发明实施例中,在虚拟机部署时,用户根据需求,也可设置物理服务器必须要满足的第二约束性规则,从而使得虚拟机约束性规则的设置更加灵活。In conjunction with the first aspect, the first possible implementation of the first aspect, the second possible implementation of the first aspect, or the third possible implementation of the first aspect, the fourth possibility in the first aspect In the implementation manner, when the physical server that satisfies all the first binding rules is not found in the physical server that has the idle resource, before determining the target physical server, the method further includes: in the physical server that has the idle resource, the search is satisfied. a physical server of the second constraint rule, the second constraint rule is a second basis for selecting a physical server for deploying the virtual machine to be deployed; and in the physical server satisfying the second constraint rule, searching for the first constraint rule Physical server. In the embodiment of the present invention, when the virtual machine is deployed, the user may also set a second constraint rule that the physical server must satisfy according to requirements, so that the setting of the virtual machine constraint rule is more flexible.
第二方面,本发明提供一种布署虚拟机的调度系统,云计算平台部署在至少一个物理服务器上,云计算平台包括调度系统;至少一个第一约束性规则作为选择用于部署待部署虚拟机的物理服务器的第一依据,上述调度系统包括:空闲资源确定单元,用于在多个物理服务器中,确定存在空闲资源的物理服务器;目标物理服务器确定单元,用于在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,目标物理服务器满足至少一个第一约束性规则中的部分第一约束性规则,或目标物理服务器不满足至少一个第一约束性规则中的任一第一约束性规则;第一布署单元,用于将待部署虚拟机布署在目标物理服务器中。In a second aspect, the present invention provides a scheduling system for deploying a virtual machine, where the cloud computing platform is deployed on at least one physical server, the cloud computing platform includes a scheduling system, and at least one first binding rule is selected as a candidate for deploying the virtual to be deployed. The first basis of the physical server of the machine, the scheduling system includes: an idle resource determining unit, configured to determine, in the plurality of physical servers, a physical server that has an idle resource; and a target physical server determining unit, configured to: When the physical server that satisfies all the first binding rules is not found in the server, the target physical server is determined, the target physical server meets some of the first binding rules in the at least one first binding rule, or the target physical server does not satisfy at least one Any one of the first binding rules; the first deployment unit is configured to deploy the virtual machine to be deployed in the target physical server.
由于在本发明实施例中,在存在空闲资源的物理服务器中,未查找出满足所有第一 约束性规则的物理服务器时,会在存在空闲资源的物理服务器中,确定目标物理服务器,然后将待部署虚拟机布署在目标物理服务器中;那么,采用本发明的系统,提高了在物理服务器部署虚拟机的成功率,从而提高了物理服务器的资源利用率。In the embodiment of the present invention, in the physical server where the idle resource exists, all the first ones are not found to be satisfied. When the physical server of the constraint rule is used, the target physical server is determined in the physical server where the idle resource exists, and then the virtual machine to be deployed is deployed in the target physical server; then, the system of the present invention is used to improve the physical server. The success rate of deploying virtual machines increases the resource utilization of physical servers.
结合第二方面,在第一种可能的实现方式中,在第一约束性规则的个数为一个时,上述目标物理服务器确定单元,具体用于:在存在空闲资源的物理服务器中未查找到满足第一约束性规则的物理服务器时,在存在空闲资源的物理服务器中选择任一物理服务器作为目标物理服务器。在具有设置一个第一约束性规则时,采用上述系统,可提高物理服务器的资源利用率。With reference to the second aspect, in a first possible implementation, when the number of the first binding rules is one, the target physical server determining unit is specifically configured to: not find the physical server that has the idle resource. When the physical server that satisfies the first constraint rule is selected, any physical server is selected as the target physical server among the physical servers having the idle resources. When the first constraint rule is set, the above system can be used to improve the resource utilization of the physical server.
结合第二方面,在第二种可能的实现方式中,第一约束性规则的个数为M个,M为大于或等于2的正整数,M个第一约束性规则具有优先级;上述目标物理服务器确定单元,具体用于:在存在空闲资源的物理服务器中,按照M个第一约束性规则的优先级,逐个匹配第一约束性规则来筛选物理服务器;若匹配第I个第一约束性规则筛选到第一物理服务器,并且匹配第I个第一约束性规则的次优先级的第一约束性规则未从第一物理服务器中筛选到物理服务器,则从第一物理服务器中选择任一物理服务器作为目标物理服务器。在具有设置多个第一约束性规则时,采用上述系统,可提高物理服务器的资源利用率。With reference to the second aspect, in a second possible implementation manner, the number of the first binding rules is M, M is a positive integer greater than or equal to 2, and M first binding rules have priority; The physical server determining unit is specifically configured to: in the physical server that has the idle resource, select the first constraint rule to match the physical server according to the priority of the M first binding rules; if the first first constraint is matched The sex rule is filtered to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule does not filter the physical server from the first physical server, and then the first physical server is selected. A physical server acts as the target physical server. When there are multiple first constraint rules, the above system can be used to improve the resource utilization of the physical server.
结合第二方面、第二方面的第一种可能的实现方式、第二方面的第二种可能的实现方式,在第三种可能的实现方式中,上述调度系统还包括:第一查找单元,用于在存在空闲资源的物理服务器中,查找满足至少一个第一约束性规则中所有第一约束性规则的物理服务器;第二布署单元,用于在查找出满足至少一个第一约束性规则中所有第一约束性规则的物理服务器时,将待部署虚拟机部署在满足所有第一约束性规则的物理服务器中。With reference to the second aspect, the first possible implementation of the second aspect, and the second possible implementation of the second aspect, in a third possible implementation, the scheduling system further includes: a first searching unit, And a physical server that is configured to satisfy all the first binding rules in the at least one first binding rule, and a second deployment unit, configured to find that at least one first binding rule is met In the physical server of all the first binding rules, the virtual machine to be deployed is deployed in the physical server that meets all the first binding rules.
结合第二方面、第二方面的第一种可能的实现方式、第二方面的第二种可能的实现方式或第二方面的第三种可能的实现方式,在第四种可能的实现方式中,上述调度系统还包括:第二查找单元,用于在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器,第二约束性规则作为选择用于部署待部署虚拟机的物理服务器的第二依据;第三查找单元,用于在满足第二约束性规则的物理服务器中,查找满足第一约束性规则的物理服务器。在本发明实施例中,在虚拟机部署时,用户根据需求,也可设置物理服务器必须要满足的第二约束性规则,从而使得虚拟机约束性规则的设置更加灵活。With reference to the second aspect, the first possible implementation of the second aspect, the second possible implementation of the second aspect, or the third possible implementation of the second aspect, in a fourth possible implementation manner The foregoing scheduling system further includes: a second searching unit, configured to: find, in the physical server that has the idle resource, a physical server that satisfies the second binding rule, and the second binding rule is used as the physical medium selected to deploy the virtual machine to be deployed. The second basis of the server is configured to search for a physical server that satisfies the first constraint rule in the physical server that meets the second constraint rule. In the embodiment of the present invention, when the virtual machine is deployed, the user may also set a second constraint rule that the physical server must satisfy according to requirements, so that the setting of the virtual machine constraint rule is more flexible.
第三方面,本发明还提供一种物理服务器,该物理服务器包括至少一个处理器、存储器和通信接口;至少一个处理器、存储器和通信接口均通过总线连接;存储器,用于存储计算机执行指令;至少一个处理器,用于执行存储器存储的计算机执行指令,使得物理服务器执行第一方面或者第一方面的各种可能设计提供的布署虚拟机的方法,或者使得物理服务器通过通信接口与云计算系统包括的其它物理服务器进行数据交互来执行第一方面或者第一方面的各种可能设计提供的布署虚拟机的方法。采用上述物理服务器,可提高在物理服务器部署虚拟机的成功率,从而提高物理服务器的资源利用率。In a third aspect, the present invention further provides a physical server including at least one processor, a memory, and a communication interface; at least one processor, a memory, and a communication interface are each connected by a bus; and a memory for storing a computer to execute an instruction; At least one processor, the computer executing instructions for executing the memory storage, causing the physical server to perform the method of deploying the virtual machine provided by the first aspect or the various possible designs of the first aspect, or causing the physical server to communicate with the cloud through the communication interface The other physical servers included in the system perform data interaction to perform the method of deploying the virtual machine provided by the first aspect or various possible designs of the first aspect. The above physical server can improve the success rate of deploying a virtual machine on a physical server, thereby improving the resource utilization of the physical server.
第四方面,提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当物理服务器的至少一个处理器执行该计算机执行指令时,物理服务器执行上述第一方面或者第一方面的各种可能设计提供的布署虚拟机的方法。采用上述计算机可 读介质,可提高在物理服务器部署虚拟机的成功率,从而提高物理服务器的资源利用率。In a fourth aspect, a computer readable storage medium is provided, where computer execution instructions are stored, and when at least one processor of a physical server executes the computer to execute an instruction, the physical server executes the first aspect or the first Aspects of various possible designs provide a way to deploy virtual machines. Using the above computer Reading media can improve the success rate of deploying virtual machines on physical servers, thereby increasing the resource utilization of physical servers.
第五方面,提供一种计算机程序产品,该计算机程序产品包括计算机执行指令,该计算机执行指令存储在计算机可读存储介质中。物理服务器的至少一个处理器可以从计算机可读存储介质读取该计算机执行指令,至少一个处理器执行该计算机执行指令使得物理服务器实施上述第一方面或者第一方面的各种可能设计提供的布署虚拟机的方法。采用上述计算机程序产品,可提高在物理服务器部署虚拟机的成功率,从而提高物理服务器的资源利用率。In a fifth aspect, a computer program product is provided, the computer program product comprising computer executed instructions stored in a computer readable storage medium. At least one processor of the physical server may read the computer-executable instructions from a computer readable storage medium, and the at least one processor executes the computer-executable instructions such that the physical server implements the cloth provided by the first aspect or the various possible designs of the first aspect described above The method of the virtual machine. The above computer program product can improve the success rate of deploying a virtual machine on a physical server, thereby improving resource utilization of the physical server.
由于在本发明实施例中,在存在空闲资源的物理服务器中,未查找出满足所有第一约束性规则的物理服务器时,会在存在空闲资源的物理服务器中,确定目标物理服务器,然后将待部署虚拟机布署在目标物理服务器中;那么,采用本发明的方法,提高了在物理服务器中部署虚拟机的成功率,从而提高了物理服务器的资源利用率。In the embodiment of the present invention, in the physical server where the idle resource exists, if the physical server that satisfies all the first binding rules is not found, the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the method of the present invention improves the success rate of deploying the virtual machine in the physical server, thereby improving the resource utilization of the physical server.
附图说明DRAWINGS
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, a brief description of the drawings used in the embodiments or the prior art description will be briefly described below. Obviously, the drawings in the following description It is a number of embodiments of the present invention, and other figures may be obtained from those of ordinary skill in the art in view of these drawings.
图1为本发明实施例提供的云计算系统的示意图;FIG. 1 is a schematic diagram of a cloud computing system according to an embodiment of the present invention;
图2为本发明实施例提供的云计算系统的又一示意图;FIG. 2 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure;
图3为本发明实施例提供的云计算系统的又一示意图;FIG. 3 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure;
图4为本发明实施例提供的布署虚拟机的方法的一流程示意图;4 is a schematic flowchart of a method for deploying a virtual machine according to an embodiment of the present invention;
图5为本发明实施例提供的布署虚拟机的方法的又一流程示意图;FIG. 5 is still another schematic flowchart of a method for deploying a virtual machine according to an embodiment of the present disclosure;
图6为本发明实施例提供的云计算系统的又一示意图;FIG. 6 is still another schematic diagram of a cloud computing system according to an embodiment of the present disclosure;
图7为本发明实施例提供的调度系统的结构示意图;FIG. 7 is a schematic structural diagram of a scheduling system according to an embodiment of the present disclosure;
图8为本发明实施例提供的一种物理服务器。FIG. 8 is a physical server according to an embodiment of the present invention.
具体实施方式detailed description
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。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, and not all of the embodiments.
本发明首先提供一种布署虚拟机的方法,该方法的应用场景具体如下:The present invention first provides a method for deploying a virtual machine. The application scenarios of the method are as follows:
对物理服务器和物理网络等物理资源进行资源虚拟化,利用云计算(Cloud Computing)技术搭建云计算系统,云计算平台作为该云计算系统的管理中心,可以在物理服务器上部署虚拟机(Virtual Machine,简称VM)、部署虚拟网络、部署虚拟交换机等。Virtualize resources for physical resources such as physical servers and physical networks, and build cloud computing systems using cloud computing technology. As the management center of the cloud computing system, cloud computing platforms can deploy virtual machines on physical servers (Virtual Machine). , referred to as VM), deploy virtual networks, deploy virtual switches, and so on.
如图1所示,云计算系统,主要由云计算平台和客户端组成;云计算平台用于统一提供物理服务器虚拟化后的资源,且可根据客户端的需求,为客户端分配资源。As shown in FIG. 1 , the cloud computing system is mainly composed of a cloud computing platform and a client; the cloud computing platform is used to uniformly provide virtualized resources of the physical server, and can allocate resources to the client according to the requirements of the client.
如图2所示,云计算平台上部署有调度系统;云计算平台部署虚拟机的具体实现是:该调度系统在物理服务器中布署虚拟机。例如,调度系统可以接收客户端的指令,根据客户端的指令部署相应的虚拟机供客户端使用。As shown in FIG. 2, a scheduling system is deployed on the cloud computing platform; the specific implementation of the cloud computing platform deploying the virtual machine is: the scheduling system deploys the virtual machine in the physical server. For example, the scheduling system can receive instructions from the client and deploy the corresponding virtual machine for use by the client according to the instructions of the client.
通常,调度系统在虚拟机的创建、迁移以及HA(High Available,高可用)等过程中,均需要在物理服务器中布署虚拟机。其中,虚拟机的创建过程是指将一个新创建的虚拟 机布署到物理服务器的过程;所述虚拟机的迁移过程是指由于对一物理服务器进行重新规划等原因,需将该物理服务器中的虚拟机,迁移到云计算系统资源池的其它物理服务器的过程,在虚拟机的迁移过程中,需迁移的虚拟机可正常运行,客户端不能获知该迁移过程;虚拟机的HA过程是指由于云计算系统中的一物理服务器故障,导致该物理服务器上的所有虚拟机均故障,在云计算系统的资源池中选择其它物理服务器,布署故障虚拟机的过程。可见,在上述创建的过程中,需将新创建的虚拟机布署在物理服务器中,而在上述迁移以及HA等过程中,需将待迁移以及故障虚拟机重新布署在物理服务器中。而在现有技术中,对上述新建虚拟机、待迁移虚拟机以及故障虚拟机的布署过程是相同的;在本发明中,为了方便说明,将上述新建虚拟机、待迁移虚拟机以及故障虚拟机统称为待布署虚拟机。Generally, the scheduling system needs to deploy virtual machines in the physical server during the creation, migration, and HA (High Availability) of the virtual machine. Among them, the virtual machine creation process refers to a newly created virtual The process of deploying the virtual machine to the physical server; the migration process of the virtual machine refers to the migration of the virtual machine in the physical server to other physical servers in the cloud computing system resource pool due to re-planning of a physical server. In the process of virtual machine migration, the virtual machine to be migrated can run normally, and the client cannot know the migration process; the HA process of the virtual machine refers to the physical server failure caused by a physical server in the cloud computing system. All the virtual machines on the fault are faulty. The other physical servers are selected in the resource pool of the cloud computing system to deploy the faulty virtual machine. It can be seen that in the above process, the newly created virtual machine needs to be deployed in the physical server, and in the process of migration and HA, the virtual machine to be migrated and the failed virtual machine need to be redeployed in the physical server. In the prior art, the deployment process of the newly created virtual machine, the virtual machine to be migrated, and the faulty virtual machine is the same; in the present invention, the new virtual machine, the virtual machine to be migrated, and the fault are deleted for convenience of description. Virtual machines are collectively referred to as virtual machines to be deployed.
在现有技术中,为了满足业务性能或可靠性需求,一般为每个虚拟机设置一种约束性规则,该约束性规则可约束虚拟机的布署。目前,云计算平台的调度系统一般采用下述方法,布置虚拟机:首先确定云计算系统中存在空闲资源的物理服务器,然后获取待布署虚拟机所预设的约束性规则,根据所述约束性规则,从存在空闲资源的物理服务器中,查找满足约束性规则的物理服务器;最后,将待布署虚拟机布署在查找出的物理服务器中;当然,如果此时未查找到满足约束性规则的物理服务器,则待布署虚拟机的布署失败,不再布署该虚拟机。采用上述布署方法,有可能会出现未查找到满足约束性规则的物理服务器,但仍存在空闲资源物理服务器的情况,从而造成资源的浪费。比如,如图3所示,一云计算系统提供3个物理服务器,而每个物理服务器最多可部署4个虚拟机,且在物理服务器1中已布署有虚拟机1,还剩余三个空闲资源;物理服务器2中已布署有虚拟机2,也还剩余三个空闲资源,而物理服务器3中已部署有虚拟机3、虚拟机4、虚拟机5和虚拟机6,未有空闲资源;而此时,如果物理服务器1故障,导致虚拟机1也故障,而调度系统为了保证虚拟机1的正常运行,启动上述HA过程,重新在物理服务器中部署虚拟机1;同时,假设为虚拟机1预设的约束性规则是与虚拟机2不能部署在同一个物理服务器上,而调度系统采用上述布署方法查询出存在空闲资源的物理服务器为物理服务器2,但由于物理服务器2中已部署有虚拟机2,并不满足虚拟机1的约束性规则,因此,此时虚拟机1并不能布署在物理服务器2上,虚拟机1的HA过程失败。In the prior art, in order to meet the service performance or reliability requirements, a constraint rule is generally set for each virtual machine, and the constraint rule can constrain the deployment of the virtual machine. At present, the scheduling system of the cloud computing platform generally adopts the following method to arrange a virtual machine: first, a physical server having an idle resource in the cloud computing system is determined, and then a constraint rule preset by the virtual machine to be deployed is obtained, according to the constraint. Sex rules, from the physical server that has idle resources, find the physical server that meets the binding rules; finally, deploy the virtual machine to be deployed in the discovered physical server; of course, if the constraint is not found at this time The physical server of the rule fails to deploy the virtual machine and the virtual machine is no longer deployed. With the above deployment method, it is possible that a physical server that does not find a constraint rule is found, but there is still a physical resource server of an idle resource, thereby causing waste of resources. For example, as shown in FIG. 3, a cloud computing system provides three physical servers, and each physical server can deploy up to four virtual machines, and virtual machine 1 has been deployed in physical server 1, and three remaining idle. Resources; virtual machine 2 has been deployed in physical server 2, and there are still three idle resources remaining, and virtual machine 3, virtual machine 4, virtual machine 5, and virtual machine 6 have been deployed in physical server 3, and there are no idle resources. At this time, if the physical server 1 fails, the virtual machine 1 also fails, and the scheduling system starts the above HA process in order to ensure the normal operation of the virtual machine 1, and re-deploys the virtual machine 1 in the physical server; The preset constraint rule of the machine 1 is that the virtual machine 2 cannot be deployed on the same physical server, and the scheduling system uses the above deployment method to query the physical server that has the idle resource as the physical server 2, but since the physical server 2 has The virtual machine 2 is deployed and does not meet the constraint rules of the virtual machine 1. Therefore, the virtual machine 1 cannot be deployed on the physical server 2, and the HA process of the virtual machine 1 fails.
实施例一 Embodiment 1
基于上述应用场景,本发明提供一种在物理服务器中布署虚拟机的方法,Based on the foregoing application scenario, the present invention provides a method for deploying a virtual machine in a physical server.
在该方法中,首先为待部署虚拟机设置一第一约束性规则,所述第一约束性规则可具体作为所述调度系统选择用于部署待部署虚拟机的物理服务器的第一依据,所述第一约束性规的数量可具体为一个或多个;这里为了方便区分不同的约束性规则,将约束性规则分为第一约束性规则和下述的第二约束性规则,而第一约束性规则可具体为物理服务器非必须满足的约束性规则,而关于第一约束性规则具体的内容,用户可自行设置。如图4所示,该方法,具体如下:In the method, a first constraint rule is set for the virtual machine to be deployed, and the first constraint rule may be specifically used as the first basis for the scheduling system to select a physical server for deploying the virtual machine to be deployed. The number of the first constraint rules may be specifically one or more; here, in order to facilitate distinguishing different constraint rules, the constraint rules are divided into a first constraint rule and a second constraint rule described below, and the first The binding rule may be specifically a constraint rule that the physical server does not have to meet, and the specific content of the first constraint rule may be set by the user. As shown in FIG. 4, the method is as follows:
步骤S41:调度系统在云计算系统的多个物理服务器中,确定存在空闲资源的物理服务器。Step S41: The scheduling system determines, among the plurality of physical servers of the cloud computing system, a physical server that has an idle resource.
具体地,确定待布署虚拟机对资源的需求,选择物理服务器的空闲资源满足该需求 的物理服务器。其中,该资源,或者该空闲资源,具体可以包括计算资源、存储资源以及网络资源等软硬件资源的任一种或者任几种的组合。Specifically, determining a requirement of the virtual machine to be deployed, and selecting an idle resource of the physical server to meet the requirement Physical server. The resource, or the idle resource, may specifically include any one or a combination of hardware and software resources such as a computing resource, a storage resource, and a network resource.
举例说明,在对云计算系统中的物理服务器布署虚拟机前,会将每个物理服务器的中央处理器(CPU,Central Processing Unit)虚拟为多个vCPU(virtualCentral Processing Unit,虚拟化中央处理器),比如可将一物理服务器的CPU虚拟为90个vCPU;在本发明实施例中,针对云计算系统中的任一物理服务器,可首先确定该物理服务器中的剩余vCPU资源是否能满足当前待布署虚拟机对vCPU的需求,如果能满足,则确定该物理服务器的vCPU资源满足需求,否则,确定该物理服务器不满足需求;然后,还需查看当前物理服务器的内存资源是否满足当前待部署虚拟机对内存的需求,比如,当前待部署虚拟机需要占用8G的内存,那么需具体查看该物理服务器的剩余内存是否大于8G,如果大于8G,确定当前物理服务器的内存满足需求;在物理服务器的剩余vCPU资源和剩余内存资源均满足虚拟机的需求时,确定该物理服务器存在空闲资源。For example, before the virtual server in the cloud computing system deploys the virtual machine, the central processing unit (CPU) of each physical server is virtualized into multiple vCPUs (virtual Central Processing Units). For example, the CPU of a physical server can be virtualized to 90 vCPUs. In the embodiment of the present invention, for any physical server in the cloud computing system, it can be first determined whether the remaining vCPU resources in the physical server can meet the current waiting. If the requirements of the virtual machine are met, the vCPU resources of the physical server are determined to meet the requirements. Otherwise, it is determined that the physical server does not meet the requirements. Then, it is also required to check whether the memory resources of the current physical server meet the current requirements. For the virtual machine to meet the memory requirements, for example, the current virtual machine needs to occupy 8G of memory, then you need to check whether the remaining memory of the physical server is greater than 8G. If it is greater than 8G, determine that the current physical server's memory meets the demand; The remaining vCPU resources and remaining memory resources are all satisfied with the virtual machine When demand, determine the existence of idle resources of the physical server.
步骤S42:调度系统判断在存在空闲资源的物理服务器中,是否存在满足所有第一约束性规则的物理服务器;如果存在,执行步骤S43;否则,执行步骤S44。Step S42: The scheduling system determines whether there is a physical server that satisfies all the first binding rules in the physical server where the idle resource exists; if yes, step S43 is performed; otherwise, step S44 is performed.
在本发明实施例中,所述第一约束性规则可具体为以下任一种规则或者以下任几种规则的组合:虚拟机vCPU核绑定规则、虚拟机NUMA(Non Uniform Memory Access Achitecture,非均匀访问内存模型)规则、虚拟机组互斥规则或虚拟机与物理服务器的关联规则等。所述云计算系统中物理服务器的CPU可以是多核的,所述多核是该CPU有多个处理核心,而每个核在任一时刻单独处理一个任务;而vCPU一般需绑定在物理服务器CPU的核上进行运行,而且vCPU一旦绑定了CPU的某个核,即对该核有独占性;设置虚拟机vCPU核绑定规则,是为了确保部署虚拟机的物理服务器中存在可供vCPU绑定的核;在云计算系统的物理服务器,一般将中央处理器CPU的运行资源分为多块,将内存资源也分为多块,且将运行资源与内存资源进行配对,比如将运行资源分为运行资源A1、运行资源B1和运行资源C1三块;将内存资源分为内存资源A1、内存资源B1和内存资源C1,然后将运行资源A1和内存资源A1设置为一对,将运行资源B1和内存资源B1设置为一对,将运行资源C1和内存资源C1设置为一对;而虚拟机在运行时,需占用物理服务器中的一对或多对资源,设置虚拟机NUMA规则是为了确保部署虚拟机的物理服务器中存在满足虚拟机运行的配对资源;所述虚机组互斥规则是指规定两个虚拟机不能布署在同一个物理服务器中的规则,这样做主要为了保证虚拟机运行的可靠性。比如,虚拟机1的机组互斥规则为与虚拟机2不能运行在同一物理服务器上,因为虚拟机1和虚拟机2提供的功能相同;在虚拟机的创建过程中,并不会将虚拟机1和虚拟机2布署在同一物理服务器上,从而可避免由于一物理服务器故障,导致虚拟机1和虚拟机2均故障的情况发生,从而提高了虚拟机运行的可靠性。所述虚拟机与物理服务器的关联规则主要为了约束虚拟机所能布署的物理服务器的规则,比如虚拟机与物理服务器的关联规则为物理服务器1、物理服务器2以及物理服务器3,那么该虚拟机仅能布署在物理服务器1、物理服务器2或物理服务器3中。In the embodiment of the present invention, the first constraint rule may be specifically any one of the following rules or a combination of any of the following rules: a virtual machine vCPU core binding rule, a virtual machine NUMA (Non Uniform Memory Access Achitecture, non- Uniform access to memory models) rules, virtual machine mutual exclusion rules, or association rules between virtual machines and physical servers. The CPU of the physical server in the cloud computing system may be multi-core, the multi-core is that the CPU has multiple processing cores, and each core separately processes one task at any time; and the vCPU generally needs to be bound to the physical server CPU. The kernel runs, and once the vCPU is bound to a core of the CPU, it is exclusive to the core. The virtual machine vCPU core binding rule is set to ensure that the vCPU is bound to the physical server where the virtual machine is deployed. In the physical server of the cloud computing system, the running resources of the CPU of the central processing unit are generally divided into multiple blocks, and the memory resources are also divided into multiple blocks, and the running resources are paired with the memory resources, for example, the running resources are divided into Running resource A1, running resource B1, and running resource C1; dividing the memory resource into memory resource A1, memory resource B1, and memory resource C1, and then setting running resource A1 and memory resource A1 as a pair, and running resource B1 and The memory resource B1 is set to a pair, and the running resource C1 and the memory resource C1 are set as a pair; while the virtual machine is running, it needs to occupy one or more pairs of resources in the physical server. The NUMA rule of the virtual machine is used to ensure that there are paired resources in the physical server where the virtual machine is deployed, and the virtual machine is configured to stipulate that the two virtual machines cannot be deployed in the same physical server. This is mainly to ensure the reliability of the virtual machine operation. For example, the unit exclusion rule of virtual machine 1 is that the virtual machine 2 cannot run on the same physical server, because virtual machine 1 and virtual machine 2 provide the same functions; during the virtual machine creation process, the virtual machine is not 1 and the virtual machine 2 are deployed on the same physical server, thereby avoiding the failure of both the virtual machine 1 and the virtual machine 2 due to a physical server failure, thereby improving the reliability of the virtual machine operation. The association rule between the virtual machine and the physical server is mainly for constraining the rules of the physical server that the virtual machine can deploy. For example, the association rules of the virtual machine and the physical server are physical server 1, physical server 2, and physical server 3, then the virtual The machine can only be deployed in physical server 1, physical server 2 or physical server 3.
步骤S43:调度系统将待部署虚拟机布署在满足所有第一约束性规则的物理服务器中。Step S43: The scheduling system deploys the virtual machine to be deployed in a physical server that satisfies all the first binding rules.
步骤S44:调度系统在存在空闲资源的物理服务器,确定目标物理服务器,所述目标 物理服务器满足部分第一约束性规则,或不满足任一第一约束性规则。Step S44: The scheduling system determines the target physical server in the physical server where the idle resource exists, and the target The physical server satisfies some of the first binding rules or does not satisfy any of the first binding rules.
步骤S45:调度系统将待部署虚拟机部署在所述目标物理服务器中。Step S45: The scheduling system deploys the virtual machine to be deployed in the target physical server.
由于在本发明实施例中,在存在空闲资源的物理服务器中,未查找出满足所有第一约束性规则的物理服务器时,会在存在空闲资源的物理服务器中,确定目标物理服务器,然后将待部署虚拟机布署在目标物理服务器中;那么,采用本发明的方法,提高了在物理服务器部署虚拟机的成功率,从而提高了物理服务器的资源利用率。In the embodiment of the present invention, in the physical server where the idle resource exists, if the physical server that satisfies all the first binding rules is not found, the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the method of the present invention improves the success rate of deploying the virtual machine on the physical server, thereby improving the resource utilization of the physical server.
实施例二Embodiment 2
在本发明实施例中,可为待部署虚拟机仅预设一个第一约束性规则,那么,上述实施例中的步骤S44“在存在空闲资源的物理服务器,确定目标物理服务器”,可具体为:所述调度系统,在存在空闲资源的物理服务器,选择任一物理服务器作为目标物理服务器。In the embodiment of the present invention, only one first constraint rule may be preset for the virtual machine to be deployed. Then, step S44 in the foregoing embodiment, “determining the target physical server in the physical server having the idle resource” may be specifically The scheduling system selects any physical server as the target physical server in the physical server where the idle resource exists.
举例说明,假设上述为待部署虚拟机所预设的仅一个第一约束性规则为第一约束性规则A,在实际应用中,调度系统的整个处理流程,可具体为:首先在云计算系统的所有物理服务器,查找存在空闲资源的物理服务器;然后,在存在空闲资源的物理服务器,查找满足上述第一约束性规则A的物理服务器;如果可查找到满足第一约束性规则A的物理服务器,那么将待部署虚拟机布署在该物理服务器中;如果未未查找到到满足第一约束性规则A的物理服务器,那么在存在空闲资源的物理服务器,选择任一物理服务器,然后将待部署虚拟机布署在该物理服务器中。For example, it is assumed that only one first constraint rule preset for the virtual machine to be deployed is the first constraint rule A. In actual application, the entire processing flow of the scheduling system may be specifically: first in the cloud computing system All the physical servers, find the physical server with the idle resources; then, in the physical server with the idle resources, find the physical server that satisfies the first binding rule A; if the physical server that satisfies the first binding rule A can be found , then deploy the virtual machine to be deployed in the physical server; if the physical server that satisfies the first binding rule A is not found, then select any physical server in the physical server with the idle resource, and then wait The deployment virtual machine is deployed on the physical server.
由上可见,采用上述方法,提高了在物理服务器部署虚拟机的成功率,从而提高了物理服务器的资源利用率。It can be seen from the above that the above method improves the success rate of deploying a virtual machine on a physical server, thereby improving resource utilization of the physical server.
实施例三Embodiment 3
在本发明实施例中,可预设为待部署虚拟机设置M个第一约束性规则,分别为第一约束性规则1、第一约束性规则2,依次类推,直至第一约束性规则M,M为大于或等于2的整数;上述M个第一约束性规则可具体为按照优先级进行排序的,也就是第一约束性规则1的优先级要高于第二约束性规则2、第一约束性规则2的优先级要高于第一约束性规则3,依次类推,第一约束性规则I-1的优先级要高于第一约束性规则I,而上述不同约束性规则的优先级可具体由用户根据自身需求所设置的。In the embodiment of the present invention, M first binding rules are preset for the virtual machine to be deployed, respectively being the first binding rule 1, the first binding rule 2, and so on, until the first binding rule M , M is an integer greater than or equal to 2; the above M first constraint rules may be specifically sorted according to priority, that is, the priority of the first binding rule 1 is higher than the second binding rule 2 A constraint rule 2 has a higher priority than the first constraint rule 3, and so on. The first constraint rule I-1 has a higher priority than the first constraint rule I, and the different constraint rules have priority. The level can be specifically set by the user according to his own needs.
具体地,上述实施例中的步骤S44“在存在空闲资源的物理服务器中,确定目标物理服务器”可具体为:所述调度系统可在存在空闲资源的物理服务器中,按照所述M个第一约束性规则的优先级,逐个匹配所述第一约束性规则来筛选物理服务器;若匹配第I个所述第一约束性规则筛选到第一物理服务器、并且匹配第I个所述第一约束性规则的次优先级的所述第一约束性规则未从所述第一物理服务器中筛选到物理服务器,则所述调度系统从所述第一物理服务器中选择任一物理服务器作为所述目标物理服务器。Specifically, step S44 in the above embodiment, "determining the target physical server in the physical server having the idle resource" may be specifically: the scheduling system may be in the physical server having the idle resource, according to the M first Prioritizing the constraint rules, matching the first constraint rules one by one to filter the physical server; if matching the first one, the first constraint rule is filtered to the first physical server, and matching the first one of the first constraints The first constraint rule of the sub-priority of the sex rule does not filter the physical server from the first physical server, and the scheduling system selects any physical server from the first physical server as the target Physical server.
更具体地,针对第一个约束性规则1,上述实施例中的步骤S44“在存在空闲资源的物理服务器,确定目标物理服务器”可具体为:所述调度系统在存在空闲资源的物理服务器中,查找满足第一约束性规则1的物理服务器;所述调度系统在未查找到满足第一约束性规则1的物理服务器时,在所述存在空闲资源的物理服务器中,选择任一物理服 务器作为所述目标物理服务器;More specifically, for the first constraint rule 1, step S44 in the above embodiment, "determining the target physical server in the physical server having the idle resource" may be specifically: the scheduling system is in the physical server where the idle resource exists Finding a physical server that satisfies the first constraint rule 1; when the physical system that satisfies the first constraint rule 1 is not found, the scheduling system selects any physical service in the physical server where the idle resource exists Server as the target physical server;
针对第一约束性规则I,所述I为大于等于2小于等于M的正整数,上述实施例中的步骤S44“在存在空闲资源的物理服务器,确定目标物理服务器”可具体为:所述调度系统在满足第一约束性规则I-1的物理服务器中,查找满足第一约束性规则I的物理服务器;所述调度系统在未查找到满足第一约束性规则I的物理服务器时,将满足第一约束性规则I-1的物理服务器中的任一物理服务器作为所述目标物理服务器。For the first constraint rule I, the I is a positive integer that is greater than or equal to 2 and less than or equal to M. Step S44 in the foregoing embodiment, "determining the target physical server in the physical server having the idle resource" may be specifically: the scheduling The system searches for a physical server that satisfies the first constraint rule I in the physical server that satisfies the first constraint rule I-1; the scheduling system satisfies when the physical server that satisfies the first constraint rule I is not found. Any one of the physical servers of the first constraint rule I-1 serves as the target physical server.
具体的,对于具有M个第一约束性规则的待部署虚拟机,云计算平台中的调度系统,整个处理流程具体如下:首先从云计算系统的多个物理服务器,确定存在空闲资源的物理服务器;然后,从存在空闲资源的物理服务器中,查找满足第一约束性规则1的物理服务器;如果能查找出满足第一约束性规则1的物理服务器,在满足第一约束性规则1的物理服务器中,查找满足第一约束性规则2的物理服务器;如果未查找到满足第一约束性规则1的物理服务器,则任意选择一存在空闲资源的物理服务器,然后将待部署虚拟机部署在所选择的物理服务器中;如果能查找出满足第一约束性规则1的物理服务器,则在满足第一约束性规则1的物理服务器中,继续查找满足第一约束性规则2的物理服务器,如果能查找出满足第一约束性规则2的物理服务器,则继续在满足第一约束性规则2的物理服务器中,查找满足第一约束性规则3的物理服务器,依次类推,直至查找至第一约束性规则M;当然,此时,如果采用上述方法,能查找出对第一约束性规则1至M均满足的物理服务器,则说明存在满足所有第一约束性规则的物理服务器,然后将待部署虚拟机布署在满足所有第一约束性规则的物理服务器上即可。Specifically, for the virtual machine to be deployed with the M first constraint rules, the scheduling process in the cloud computing platform is as follows: First, the physical server having the idle resource is determined from multiple physical servers of the cloud computing system. Then, from the physical server having the idle resource, find the physical server that satisfies the first constraint rule 1; if the physical server that satisfies the first constraint rule 1 can be found, the physical server that satisfies the first constraint rule 1 Finding a physical server that satisfies the first constraint rule 2; if the physical server that satisfies the first constraint rule 1 is not found, arbitrarily selects a physical server that has an idle resource, and then deploys the virtual machine to be deployed in the selected In the physical server; if the physical server that satisfies the first constraint rule 1 can be found, in the physical server that satisfies the first constraint rule 1, the physical server that satisfies the first constraint rule 2 is continuously searched, if it can be found The physical server that satisfies the first binding rule 2 continues to satisfy the first constraint In the physical server of the rule 2, the physical server that satisfies the first constraint rule 3 is searched, and so on, until the first constraint rule M is found; of course, if the above method is used, the first constraint can be found. The physical server that satisfies the rules 1 to M indicates that there is a physical server that satisfies all the first binding rules, and then deploys the virtual machine to be deployed on the physical server that satisfies all the first binding rules.
假设为一待部署虚拟机预设三个第一约束性规则,分别为第一约束性规则1,第一约束性规则2和第一约束性规则3,如图5所示,调度系统的整个处理流程,如下:Assume that three first constraint rules are preset for a virtual machine to be deployed, namely, a first constraint rule 1, a first constraint rule 2, and a first constraint rule 3, as shown in FIG. 5, the entire scheduling system. The processing flow is as follows:
步骤S51:从云计算系统的多个物理服务器,查找存在空闲资源的物理服务器;Step S51: Searching for physical servers having idle resources from multiple physical servers of the cloud computing system;
步骤S52:判断在存在空闲资源的物理服务器中,能否查找出满足第一约束性规则1的物理服务器;如果能查找出,执行步骤S53,否执,执行步骤S56;Step S52: determining whether the physical server that has the idle resource can find the physical server that satisfies the first binding rule 1; if it can be found, step S53 is performed, otherwise, step S56 is performed;
步骤S53:判断在满足第一约束性规则1的物理服务器中,能否查找出满足第一约束性规则2的物理服务器;如果能查找出,执行步骤S54;否则,执行步骤S57;Step S53: determining whether the physical server that satisfies the first binding rule 2 can be found in the physical server that satisfies the first binding rule 1; if it can be found, step S54 is performed; otherwise, step S57 is performed;
步骤54:判断在满足第一约束性规则2的物理服务器中,能否查找出满足第一约束性规则3的物理服务器;如果能查找出,执行步骤S55;否则,执行步骤S58;Step 54: Determine whether the physical server that satisfies the first binding rule 3 can be found in the physical server that satisfies the first binding rule 2; if it can be found, step S55 is performed; otherwise, step S58 is performed;
步骤S55:在满足第一约束性规则3的物理服务器中,选择物理服务器,将待部署虚拟机布署在所选择的物理服务器内;Step S55: In the physical server that meets the first constraint rule 3, select a physical server, and deploy the virtual machine to be deployed in the selected physical server;
步骤S56:在存在空闲资源的物理服器中,选择物理服务器,将待部署虚拟机布署在所选择的物理服务器内;Step S56: In the physical server where the idle resource exists, select the physical server, and deploy the virtual machine to be deployed in the selected physical server;
步骤S57:在满足第一约束性规则1的物理服务器中,任意选择物理服务器,且将待部署虚拟机布署在该物理服务器内;Step S57: In the physical server that meets the first constraint rule 1, the physical server is arbitrarily selected, and the virtual machine to be deployed is deployed in the physical server;
步骤S58:在满足第一约束性规则2的物理服务器中,任意选择物理服务器,且将待部署虚拟机布署在该物理服务器内。Step S58: In the physical server that satisfies the first constraint rule 2, the physical server is arbitrarily selected, and the virtual machine to be deployed is deployed in the physical server.
通过前述可知,第一约束性规则为非必须满足的约束性规则,在未查找到满足所有第一约束性规则的物理服务器时,采用上述方法,可查找出满足第一约束性规则最多的物理服务器,从而在节约资源的基础上,进一步优化虚拟机的布署。 As can be seen from the foregoing, the first constraint rule is a non-mustful constraint rule. When the physical server that satisfies all the first constraint rules is not found, the foregoing method can be used to find the physics that satisfies the first constraint rule. The server further optimizes the deployment of the virtual machine on the basis of resource conservation.
实施例四Embodiment 4
在本发明实施例中,除了为待布部署虚拟机设置第一约束性规则外,还可为待部署虚拟机设置第二约束性规则,所述第二约束性规则作为所述调度系统选择用于部署待部署虚拟机的物理服务器的第二依据,所述第二约束性规则为在部署虚拟机时,物理服务器必须要满足的规则;所述第二约束性规则的数量可为一个也可为多个,用户可自行设置。在本发明实施例中,所述第二约束性规则也可具体为为以下任一种规则或者以下任几种规则的组合:虚拟机vCPU核绑定规则、虚拟机NUMA规则、虚拟机组互斥规则或虚拟机与物理服务器的关联规则;而将上述规则设置为第一约束性规则还是设置为第二约束性规则,用户可根据自身需求,自行设置。In the embodiment of the present invention, in addition to setting a first constraint rule for the virtual machine to be deployed, a second constraint rule may be set for the virtual machine to be deployed, and the second constraint rule is used as the scheduling system. The second constraint rule is a rule that the physical server must meet when the virtual machine is deployed; the number of the second binding rule may be one or For multiple, users can set it themselves. In the embodiment of the present invention, the second constraint rule may be specifically any one of the following rules or a combination of the following rules: a virtual machine vCPU core binding rule, a virtual machine NUMA rule, and a virtual unit mutual exclusion Rule or association rule between the virtual machine and the physical server; and setting the above rule as the first binding rule or the second binding rule, the user can set it according to his own needs.
而上述实施例一、实施例二和实施例三所记载的方法还可包括:所述调度系统在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器;所述调度系统在满足第二约束性规则的物理服务器中,查找满足所有第一约束性规则的物理服务器。The method described in the foregoing first embodiment, the second embodiment, and the third embodiment may further include: the scheduling system searches for a physical server that satisfies the second constraint rule in the physical server that has the idle resource; the scheduling system is In the physical server that satisfies the second constraint rule, find a physical server that satisfies all of the first constraint rules.
具体的,对于设置有第一约束性规则和第二约束性规则的待部署虚拟机,所述调度系统,可具体按照下述方式,对待部署虚拟机进行部署:首先在云计算系统的多个物理服务器中,查找存在空闲资源的物理服务器;然后,在存在空闲资源的物理服务器,查找满足第二约束性规则的物理服务器;如果未查找到满足第二约束性规则的物理服务器,则待部署虚拟机的布署失败,停止对待部署虚拟机进行部署;当上述第二约束性规则为多个时,由于所述第二约束性规则为物理服务器必须要满足的约束性规则,因此,查找出的物理服务器,需满足所有的第二约束性规则,当物理服务器不满足任一第二约束性规则时,待部署虚拟机的部署失败;如果查找出满足第二约束性规则的物理服务器,则在满足第二约束性规则的物理服务器,继续查找满足第一约束性规则的物理服务器;在第一约束性规则为一个时,可具体参见上述实施例二的说明,而在第一约束性规则为多个时,可具体参见上述实施例三的说明。Specifically, for the virtual machine to be deployed that is configured with the first constraint rule and the second constraint rule, the scheduling system may be deployed in the following manner according to the following manner: first, multiple in the cloud computing system In the physical server, the physical server that has the idle resource is found; then, the physical server that has the idle resource finds the physical server that meets the second constraint rule; if the physical server that meets the second constraint rule is not found, the to-be-deployed The deployment of the virtual machine fails, and the deployment of the virtual machine is stopped for deployment. When the second constraint rule is multiple, the second constraint rule is a constraint rule that the physical server must satisfy. The physical server needs to meet all the second binding rules. When the physical server does not meet any of the second binding rules, the deployment of the virtual machine to be deployed fails; if a physical server that satisfies the second binding rule is found, On the physical server that satisfies the second binding rule, continue to find the first constraint rule Physical server; the first rule is a binding, can refer to particular embodiments described above in Example II, whereas in the first plurality of binding rules, see detailed description of the above-described third embodiment.
由上可见,在本发明实施例中,在虚拟机部署时,用户根据需求,也可设置物理服务器必须要满足的第二约束性规则,从而使得虚拟机约束性规则的设置更加灵活。It can be seen that, in the embodiment of the present invention, when the virtual machine is deployed, the user may also set a second constraint rule that the physical server must satisfy according to requirements, thereby making the setting of the virtual machine constraint rule more flexible.
实施例五Embodiment 5
本发明还提供第二种布署虚拟机的方法,具体如下,仍可参照图6,服务器1故障,导致服务器1中的虚拟机1也出现故障,此时启动上述HA机制,在资源池中选择其它物理服务器,重新部署虚拟机1;而虚拟机所预设的第一约束性规则。可具体参见表1。The present invention also provides a second method for deploying a virtual machine. Specifically, as follows, referring to FIG. 6, the server 1 fails, causing the virtual machine 1 in the server 1 to also fail. At this time, the HA mechanism is started, in the resource pool. Select another physical server and redeploy virtual machine 1; the first constraint rule preset by the virtual machine. See Table 1 for details.
Figure PCTCN2017072988-appb-000001
Figure PCTCN2017072988-appb-000001
Figure PCTCN2017072988-appb-000002
Figure PCTCN2017072988-appb-000002
表1 虚拟机1的第一约束性规则Table 1 First binding rules for virtual machine 1
在本发明实施例中,调度系统将首先确定存在空闲资源的物理服务器,通过图6可得出,物理服务器2与物理服务器3中均存在空闲资源;然后,根据虚拟机1预设的第一约束性规则,按照优先级高低,依次在物理服务器2和物理服务器3中查找,满足第一优先级“虚拟机vCPU核绑定规则”和第二优先级“虚拟机NUMA规则”的物理服务器,假设仅有物理服务器2均满足上述两个规则;此时调度系统,将继续查看物理服务器2是否满足第三优先级的“虚拟机组互斥规则”,但物理服务器2已布署有虚拟机2,不满足第三优先级的“虚拟机组互斥规则”,但此时物理服务器2是满足高优先级第一约束性规则最多的物理服务器,因此,将虚拟机1布署在物理服务器2中,从而保护了业务的可靠性。In the embodiment of the present invention, the scheduling system will first determine the physical server that has the idle resource. According to FIG. 6, it can be concluded that there are idle resources in both the physical server 2 and the physical server 3. Then, the first preset according to the virtual machine 1 The binding rules are sequentially searched in the physical server 2 and the physical server 3 according to the priority level, and the physical servers satisfying the first priority “virtual machine vCPU core binding rule” and the second priority “virtual machine NUMA rule” are It is assumed that only the physical server 2 meets the above two rules; at this time, the scheduling system will continue to check whether the physical server 2 satisfies the third priority "virtual unit mutual exclusion rule", but the physical server 2 has deployed the virtual machine 2 The "virtual unit mutual exclusion rule" of the third priority is not satisfied, but at this time, the physical server 2 is the physical server that satisfies the highest priority first constraint rule, and therefore, the virtual machine 1 is deployed in the physical server 2. , thus protecting the reliability of the business.
实施例六Embodiment 6
与上述方法相对应的,本发明还提供一种布署虚拟机的调度系统,所述云计算平台部署在多个物理服务器上,云计算平台包括调度系统;至少一个第一约束性规则作为选择用于部署待部署虚拟机的物理服务器的第一依据,如图7所示,调度系统700包括:Corresponding to the foregoing method, the present invention further provides a scheduling system for deploying a virtual machine, where the cloud computing platform is deployed on multiple physical servers, the cloud computing platform includes a scheduling system, and at least one first binding rule is selected. A first basis for deploying a physical server to be deployed, as shown in FIG. 7, the scheduling system 700 includes:
空闲资源确定单元71,用于在多个物理服务器中,确定存在空闲资源的物理服务器;The idle resource determining unit 71 is configured to determine, in the plurality of physical servers, a physical server that has an idle resource;
目标物理服务器确定单元72,用于在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,所述目标物理服务器满足所述至少一个第一约束性规则中的部分第一约束性规则,或所述目标物理服务器不满足所述至少一个第一约束性规则中的任一第一约束性规则;The target physical server determining unit 72 is configured to determine, when the physical server that has the idle resource does not find the physical server that satisfies all the first binding rules, the target physical server that meets the at least one first constraint a portion of the first constraint rule in the sex rule, or the target physical server does not satisfy any of the at least one first constraint rule;
第一布署单元73,用于将所述待部署虚拟机布署在所述目标物理服务器中。The first deployment unit 73 is configured to deploy the virtual machine to be deployed in the target physical server.
可选的,在所述第一约束性规则的个数为一个时,所述目标物理服务器确定单元72,具体用于:在存在空闲资源的物理服务器中未查找到满足所述第一约束性规则的物理服务器时,在存在空闲资源的物理服务器中选择任一物理服务器作为所述目标物理服务器。Optionally, when the number of the first constraint rules is one, the target physical server determining unit 72 is specifically configured to: find that the first constraint is not found in a physical server that has an idle resource. In the case of a regular physical server, any physical server is selected as the target physical server among physical servers in which there are idle resources.
可选的,所述第一约束性规则的个数为M个,所述M为大于或等于2的正整数,M个第一约束性规则具有优先级;所述目标物理服务器确定单元72,可具体用于:在存在空闲资源的物理服务器中,按照所述M个第一约束性规则的优先级,逐个匹配所述第一约束性规则来筛选物理服务器;若匹配第I个所述第一约束性规则筛选到第一物理服务器,并且匹配第I个所述第一约束性规则的次优先级的所述第一约束性规则未从所述第一物理服务器中筛选到物理服务器,则从所述第一物理服务器中选择任一物理服务器作为所述目标物理服务器。Optionally, the number of the first constraint rules is M, the M is a positive integer greater than or equal to 2, and the M first constraint rules have a priority; the target physical server determining unit 72, Specifically, in the physical server that has the idle resource, the first constraint rule is matched one by one according to the priority of the M first binding rules to filter the physical server; if the first one is matched a constraint rule is filtered to the first physical server, and the first constraint rule matching the secondary priority of the first first constraint rule does not filter the physical server from the first physical server, Selecting any physical server from the first physical server as the target physical server.
可选的,调度系统700还包括:第一查找单元,用于在存在空闲资源的物理服务器 中,查找满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器;第二布署单元,用于在查找出满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器时,将所述待部署虚拟机部署在所述满足所有第一约束性规则的物理服务器中。Optionally, the scheduling system 700 further includes: a first searching unit, configured to be in a physical server that has idle resources Searching for a physical server that satisfies all of the first constraint rules in the at least one first constraint rule; a second deployment unit, configured to find all first constraints in the at least one first constraint rule When the physical server of the rule is used, the virtual machine to be deployed is deployed in the physical server that satisfies all the first binding rules.
可选的,调度系统700还可包括:第二查找单元,用于在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器,所述第二约束性规则作为选择用于部署待部署虚拟机的物理服务器的第二依据;第三查找单元,用于在满足所述第二约束性规则的物理服务器中,查找满足所述第一约束性规则的物理服务器。Optionally, the scheduling system 700 may further include: a second searching unit, configured to search for a physical server that satisfies the second binding rule in the physical server that has the idle resource, where the second binding rule is selected for deployment A second basis of the physical server of the virtual machine to be deployed; a third searching unit, configured to search for a physical server that satisfies the first constraint rule in the physical server that meets the second constraint rule.
由于在本发明实施例中,在存在空闲资源的物理服务器中,未查找出满足所有第一约束性规则的物理服务器时,会在存在空闲资源的物理服务器中,确定目标物理服务器,然后将待部署虚拟机布署在目标物理服务器中;那么,采用本发明的调度系统,提高了在物理服务器部署虚拟机的成功率,从而提高了物理服务器的资源利用率。In the embodiment of the present invention, in the physical server where the idle resource exists, if the physical server that satisfies all the first binding rules is not found, the target physical server is determined in the physical server where the idle resource exists, and then The deployed virtual machine is deployed in the target physical server; then, the scheduling system of the present invention improves the success rate of deploying the virtual machine on the physical server, thereby improving the resource utilization of the physical server.
实施例七Example 7
云计算平台是部署在多个物理服务器上的,因此调度系统可以是部署在至少一个物理服务器上的,因此具体执行布署虚拟机的方法的硬件主体为物理服务器,实现上述调度系统的硬件主体也是物理服务器。因此与上述实施例相对应的,本发明还公开了一种物理服务器,所述物理服务器,如图8所示。The cloud computing platform is deployed on multiple physical servers. Therefore, the scheduling system may be deployed on at least one physical server. Therefore, the hardware body of the method for deploying the virtual machine is a physical server, and the hardware body of the scheduling system is implemented. It is also a physical server. Therefore, corresponding to the above embodiment, the present invention also discloses a physical server, which is shown in FIG. 8.
物理服务器800包括至少一个处理器801、存储器802和通信接口803;所述至少一个处理器801、所述存储器802和所述通信接口803均通过总线804连接。The physical server 800 includes at least one processor 801, a memory 802, and a communication interface 803; the at least one processor 801, the memory 802, and the communication interface 803 are each connected by a bus 804.
所述存储器802,用于存储计算机执行指令。The memory 802 is configured to store a computer to execute an instruction.
所述至少一个处理器801,用于执行所述存储器802存储的计算机执行指令,使得所述物理服务器800执行上述方法实施例提供的布署虚拟机的方法,或者使得所述物理服务器800实现调度系统的部分或者全部功能;或者,The at least one processor 801 is configured to execute a computer execution instruction stored by the memory 802, so that the physical server 800 performs the method for deploying a virtual machine provided by the foregoing method embodiment, or causes the physical server 800 to implement scheduling. Part or all of the functionality of the system; or,
所述至少一个处理器801,用于执行所述存储器802存储的计算机执行指令,使得所述物理服务器800通过所述通信接口803与云计算系统包括的其它物理服务器进行数据交互来执行上述方法实施例提供的布署虚拟机的方法,或者使得所述物理服务器800通过所述通信接口803与云计算系统包括的其它物理服务器进行数据交互来实现调度系统的部分或者全部功能。The at least one processor 801 is configured to execute a computer execution instruction stored by the memory 802, so that the physical server 800 performs data interaction with other physical servers included in the cloud computing system through the communication interface 803 to perform the foregoing method implementation. For example, the method for deploying a virtual machine is provided, or the physical server 800 is caused to perform data interaction with other physical servers included in the cloud computing system through the communication interface 803 to implement part or all of the functions of the scheduling system.
至少一个处理器801,可以包括不同类型的处理器801,或者包括相同类型的处理器801;处理器801可以是以下的任一种:中央处理器(Central Processing Unit,简称CPU)、ARM处理器、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、专用处理器等具有计算处理能力的器件。一种可选实施方式,所述至少一个处理器801还可以集成为众核处理器。The at least one processor 801 may include different types of processors 801, or include the same type of processor 801; the processor 801 may be any one of the following: a central processing unit (CPU), an ARM processor. , Field Programmable Gate Array (FPGA), dedicated processor and other devices with computational processing capabilities. In an optional implementation manner, the at least one processor 801 may also be integrated into a many-core processor.
存储器802可以是以下的任一种或任一种组合:随机存取存储器(Random Access Memory,简称RAM)、只读存储器(read only memory,简称ROM)、非易失性存储器(non-volatile memory,简称NVM)、固态硬盘(Solid State Drives,简称SSD)、机械硬盘、磁盘、磁盘整列等存储介质。The memory 802 may be any one or any combination of the following: a random access memory (RAM), a read only memory (ROM), a non-volatile memory (non-volatile memory). , referred to as NVM), Solid State Drives (SSD), mechanical hard disks, disks, disk arrays and other storage media.
通信接口803用于物理服务器800与其他设备(例如虚拟机系统中的其他物理服务器)进行数据交互。通信接口803可以是以下的任一种或任一种组合:网络接口(例如 以太网接口)、无线网卡等具有网络接入功能的器件。 Communication interface 803 is used by physical server 800 to interact with other devices, such as other physical servers in a virtual machine system. Communication interface 803 can be any one or any combination of the following: a network interface (eg, Ethernet interface), wireless network card and other devices with network access.
该总线804可以包括地址总线、数据总线、控制总线等,为便于表示,图8用一条粗线表示该总线。总线804可以是以下的任一种或任一种组合:工业标准体系结构(Industry Standard Architecture,简称ISA)总线、外设组件互连标准(Peripheral Component Interconnect,简称PCI)总线、扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等有线数据传输的器件。The bus 804 can include an address bus, a data bus, a control bus, etc., for ease of representation, Figure 8 shows the bus with a thick line. The bus 804 may be any one or any combination of the following: an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, and an extended industry standard structure ( Extended Industry Standard Architecture (EISA) bus and other devices for wired data transmission.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. Means for implementing the functions specified in one or more of the flow or in a block or blocks of the flow chart.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。While the preferred embodiment of the invention has been described, it will be understood that Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and the modifications and
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。 It is apparent that those skilled in the art can make various modifications and variations to the embodiments of the invention without departing from the spirit and scope of the embodiments of the invention. Thus, it is intended that the present invention cover the modifications and modifications of the embodiments of the invention.

Claims (11)

  1. 一种布署虚拟机的方法,其特征在于,至少一个第一约束性规则作为选择用于部署待部署虚拟机的物理服务器的第一依据,所述方法包括:A method for deploying a virtual machine, wherein at least one first constraint rule is used as a first basis for selecting a physical server for deploying a virtual machine to be deployed, and the method includes:
    在多个物理服务器中,确定存在空闲资源的物理服务器;In a plurality of physical servers, determining a physical server in which an idle resource exists;
    在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,所述目标物理服务器满足所述至少一个第一约束性规则中的部分第一约束性规则,或所述目标物理服务器不满足所述至少一个第一约束性规则中的任一第一约束性规则;Determining a target physical server that satisfies a portion of the first constraint in the at least one first constraint rule when a physical server that satisfies all of the first constraint rules is not found in a physical server having an idle resource a rule, or the target physical server does not satisfy any of the at least one first constraint rule;
    将所述待部署虚拟机布署在所述目标物理服务器中。The virtual machine to be deployed is deployed in the target physical server.
  2. 根据权利要求1所述的方法,其特征在于,所述第一约束性规则的个数为一个,所述在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,包括:The method according to claim 1, wherein the number of the first constraint rules is one, and when the physical server that satisfies all the first binding rules is not found in the physical server having the idle resource To determine the target physical server, including:
    在存在空闲资源的物理服务器中未查找到满足所述第一约束性规则的物理服务器时,在存在空闲资源的物理服务器中选择任一物理服务器作为所述目标物理服务器。When the physical server that satisfies the first constraint rule is not found in the physical server that has the idle resource, any physical server is selected as the target physical server among the physical servers in which the idle resource exists.
  3. 根据权利要求1所述的方法,其特征在于,所述第一约束性规则的个数为M个,所述M为大于或等于2的正整数,M个第一约束性规则具有优先级;所述在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,包括:The method according to claim 1, wherein the number of the first constraint rules is M, the M is a positive integer greater than or equal to 2, and the M first constraint rules have a priority; Determining the target physical server when the physical server that satisfies all the first binding rules is not found in the physical server that has the idle resource, including:
    在存在空闲资源的物理服务器中,按照所述M个第一约束性规则的优先级,逐个匹配所述第一约束性规则来筛选物理服务器;In a physical server that has an idle resource, the first constraint rule is matched one by one according to the priority of the M first constraint rules to filter the physical server;
    若匹配第I个所述第一约束性规则筛选到第一物理服务器,并且匹配第I个所述第一约束性规则的次优先级的所述第一约束性规则未从所述第一物理服务器中筛选到物理服务器,则从所述第一物理服务器中选择任一物理服务器作为所述目标物理服务器。If the first constraint rule matching the first one is filtered to the first physical server, and the first constraint rule that matches the secondary priority of the first first constraint rule is not from the first physical If the physical server is filtered in the server, any physical server is selected from the first physical server as the target physical server.
  4. 根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:The method according to any one of claims 1 to 3, wherein the method further comprises:
    在存在空闲资源的物理服务器中,查找满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器;Locating, in a physical server having an idle resource, a physical server that satisfies all of the first binding rules in the at least one first constraint rule;
    在查找出满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器时,将所述待部署虚拟机部署在所述满足所有第一约束性规则的物理服务器中。When the physical server that satisfies all the first binding rules in the at least one first constraint rule is found, the virtual machine to be deployed is deployed in the physical server that satisfies all the first binding rules.
  5. 根据权利要求1至4任一项所述的方法,其特征在于,所述在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器之前,所述方法还包括:The method according to any one of claims 1 to 4, wherein, when the physical server that satisfies all the first binding rules is not found in the physical server having the idle resource, before the target physical server is determined, The method also includes:
    在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器,所述第二约束性规则作为从所述多个物理服务器中选择用于部署待部署虚拟机的物理服务器的第二依据;Finding a physical server that satisfies a second constraint rule as a second server that selects a physical server for deploying the virtual machine to be deployed, among the plurality of physical servers, in a physical server that has an idle resource in accordance with;
    在满足所述第二约束性规则的物理服务器中,查找满足所述第一约束性规则的物理服务器。In a physical server that satisfies the second constraint rule, a physical server that satisfies the first constraint rule is looked up.
  6. 一种布署虚拟机的调度系统,其特征在于,至少一个第一约束性规则作为选择用于部署待部署虚拟机的物理服务器的第一依据,所述调度系统包括:A scheduling system for deploying a virtual machine, wherein at least one first constraint rule is used as a first basis for selecting a physical server for deploying a virtual machine to be deployed, and the scheduling system includes:
    空闲资源确定单元,用于在多个物理服务器中,确定存在空闲资源的物理服务器; An idle resource determining unit, configured to determine, in the plurality of physical servers, a physical server that has an idle resource;
    目标物理服务器确定单元,用于在存在空闲资源的物理服务器中未查找到满足所有第一约束性规则的物理服务器时,确定目标物理服务器,所述目标物理服务器满足所述至少一个第一约束性规则中的部分第一约束性规则,或所述目标物理服务器不满足所述至少一个第一约束性规则中的任一第一约束性规则;a target physical server determining unit, configured to determine a target physical server that satisfies the at least one first constraint when a physical server that satisfies all the first binding rules is not found in a physical server that has an idle resource a portion of the first constraint rule in the rule, or the target physical server does not satisfy any of the at least one first constraint rule;
    第一布署单元,用于将所述待部署虚拟机布署在所述目标物理服务器中。a first deployment unit, configured to deploy the virtual machine to be deployed in the target physical server.
  7. 根据权利要求6所述的调度系统,其特征在于,在所述第一约束性规则的个数为一个时,所述目标物理服务器确定单元,具体用于:The scheduling system according to claim 6, wherein when the number of the first constraint rules is one, the target physical server determining unit is specifically configured to:
    在存在空闲资源的物理服务器中未查找到满足所述第一约束性规则的物理服务器时,在存在空闲资源的物理服务器中选择任一物理服务器作为所述目标物理服务器。When the physical server that satisfies the first constraint rule is not found in the physical server that has the idle resource, any physical server is selected as the target physical server among the physical servers in which the idle resource exists.
  8. 根据权利要求6所述的调度系统,其特征在于,所述第一约束性规则的个数为M个,所述M为大于或等于2的正整数,M个第一约束性规则具有优先级;所述目标物理服务器确定单元,具体用于:The scheduling system according to claim 6, wherein the number of the first constraint rules is M, the M is a positive integer greater than or equal to 2, and the M first constraint rules have priority The target physical server determining unit is specifically configured to:
    在存在空闲资源的物理服务器中,按照所述M个第一约束性规则的优先级,逐个匹配所述第一约束性规则来筛选物理服务器;In a physical server that has an idle resource, the first constraint rule is matched one by one according to the priority of the M first constraint rules to filter the physical server;
    若匹配第I个所述第一约束性规则筛选到第一物理服务器,并且匹配第I个所述第一约束性规则的次优先级的所述第一约束性规则未从所述第一物理服务器中筛选到物理服务器,则从所述第一物理服务器中选择任一物理服务器作为所述目标物理服务器。If the first constraint rule matching the first one is filtered to the first physical server, and the first constraint rule that matches the secondary priority of the first first constraint rule is not from the first physical If the physical server is filtered in the server, any physical server is selected from the first physical server as the target physical server.
  9. 根据权利要求6至8任一项所述的调度系统,其特征在于,所述调度系统还包括:The scheduling system according to any one of claims 6 to 8, wherein the scheduling system further comprises:
    第一查找单元,用于在存在空闲资源的物理服务器中,查找满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器;a first searching unit, configured to: in a physical server that has an idle resource, find a physical server that satisfies all the first binding rules in the at least one first constraint rule;
    第二布署单元,用于在查找出满足所述至少一个第一约束性规则中所有第一约束性规则的物理服务器时,将所述待部署虚拟机部署在所述满足所有第一约束性规则的物理服务器中。a second deployment unit, configured to deploy the virtual machine to be deployed at the first constraint when the physical server that meets all the first binding rules in the at least one first constraint rule is found The rules are in the physical server.
  10. 根据权利要求6至9任一项所述的调度系统,其特征在于,所述调度系统还包括:The scheduling system according to any one of claims 6 to 9, wherein the scheduling system further comprises:
    第二查找单元,用于在存在空闲资源的物理服务器中,查找满足第二约束性规则的物理服务器,所述第二约束性规则作为选择用于部署待部署虚拟机的物理服务器的第二依据;a second searching unit, configured to: find, in a physical server that has an idle resource, a physical server that meets a second constraint rule, where the second constraint rule is used as a second basis for selecting a physical server for deploying the virtual machine to be deployed ;
    第三查找单元,用于在满足所述第二约束性规则的物理服务器中,查找满足所述第一约束性规则的物理服务器。And a third searching unit, configured to search for a physical server that satisfies the first constraint rule in a physical server that satisfies the second constraint rule.
  11. 一种物理服务器,其特征在于,包括至少一个处理器、存储器和通信接口;所述至少一个处理器、所述存储器和所述通信接口均通过总线连接;A physical server, comprising: at least one processor, a memory, and a communication interface; the at least one processor, the memory, and the communication interface are each connected by a bus;
    所述存储器,用于存储计算机执行指令;The memory is configured to store a computer execution instruction;
    所述至少一个处理器,用于执行所述存储器存储的计算机执行指令,使得所述物理服务器执行权利要求1至5任一项所述的布署虚拟机的方法,或者使得所述物理服务器通过所述通信接口与其它物理服务器进行数据交互来执行权利要求1至5任一项所述的布署虚拟机的方法。 The at least one processor, configured to execute the computer-executed instructions of the memory storage, such that the physical server performs the method of deploying a virtual machine according to any one of claims 1 to 5, or causes the physical server to pass The communication interface performs data interaction with other physical servers to perform the method of deploying a virtual machine according to any one of claims 1 to 5.
PCT/CN2017/072988 2016-08-26 2017-02-06 Virtual machine deployment method, system and physical server WO2018036104A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610740515.4 2016-08-26
CN201610740515.4A CN106445631B (en) 2016-08-26 2016-08-26 Method and system for deploying virtual machine and physical server

Publications (1)

Publication Number Publication Date
WO2018036104A1 true WO2018036104A1 (en) 2018-03-01

Family

ID=58182273

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/072988 WO2018036104A1 (en) 2016-08-26 2017-02-06 Virtual machine deployment method, system and physical server

Country Status (2)

Country Link
CN (1) CN106445631B (en)
WO (1) WO2018036104A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990024A (en) * 2019-11-28 2020-04-10 合肥讯飞数码科技有限公司 Application deployment method, device, equipment and storage medium
CN114461332A (en) * 2020-11-09 2022-05-10 上海大学 Virtual machine deployment method based on application characteristics

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107643939A (en) * 2017-09-14 2018-01-30 郑州云海信息技术有限公司 A kind of method and system for distributing virtual machine
CN107748691B (en) * 2017-10-30 2020-04-24 平安科技(深圳)有限公司 Virtual machine deployment method, device, equipment and computer readable storage medium
CN111324424B (en) * 2020-04-15 2023-07-18 中国联合网络通信集团有限公司 Virtual machine deployment method and device, server and storage medium
CN113687949B (en) * 2021-08-31 2023-01-31 中国联合网络通信集团有限公司 Server deployment method, device, deployment equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639594A (en) * 2013-11-15 2015-05-20 中国电信股份有限公司 System and method for allocating physical resources and virtual resources
US20150248305A1 (en) * 2014-03-03 2015-09-03 Vmware, Inc. Extending placement constraints for virtual machine placement, load balancing migrations, and failover without coding
CN105141697A (en) * 2015-09-16 2015-12-09 国云科技股份有限公司 Multi-QoS constrained cloud computing task scheduling method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096461B (en) * 2011-01-13 2013-06-19 浙江大学 Energy-saving method of cloud data center based on virtual machine migration and load perception integration
TW201324187A (en) * 2011-12-15 2013-06-16 Hon Hai Prec Ind Co Ltd System and method for deploying virtual machines
US9038065B2 (en) * 2012-01-30 2015-05-19 International Business Machines Corporation Integrated virtual infrastructure system
CN104750541B (en) * 2015-04-22 2018-01-16 成都睿峰科技有限公司 A kind of virtual machine migration method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639594A (en) * 2013-11-15 2015-05-20 中国电信股份有限公司 System and method for allocating physical resources and virtual resources
US20150248305A1 (en) * 2014-03-03 2015-09-03 Vmware, Inc. Extending placement constraints for virtual machine placement, load balancing migrations, and failover without coding
CN105141697A (en) * 2015-09-16 2015-12-09 国云科技股份有限公司 Multi-QoS constrained cloud computing task scheduling method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990024A (en) * 2019-11-28 2020-04-10 合肥讯飞数码科技有限公司 Application deployment method, device, equipment and storage medium
CN110990024B (en) * 2019-11-28 2024-02-09 合肥讯飞数码科技有限公司 Application deployment method, device, equipment and storage medium
CN114461332A (en) * 2020-11-09 2022-05-10 上海大学 Virtual machine deployment method based on application characteristics

Also Published As

Publication number Publication date
CN106445631A (en) 2017-02-22
CN106445631B (en) 2020-02-14

Similar Documents

Publication Publication Date Title
WO2018036104A1 (en) Virtual machine deployment method, system and physical server
US10474488B2 (en) Configuration of a cluster of hosts in virtualized computing environments
US9766945B2 (en) Virtual resource scheduling for containers with migration
US10346215B2 (en) Replication of a virtualized computing environment to a computing system with offline hosts
US10333981B2 (en) Method and apparatus for security checking of image for container
CN107924328B (en) Technique for selecting virtual machine for migration
JP6219512B2 (en) Virtual hadoop manager
US8635493B2 (en) High availability system allowing conditionally reserved computing resource use and reclamation upon a failover
US9727358B2 (en) Failover detection and treatment in checkpoint systems
US11924117B2 (en) Automated local scaling of compute instances
JP2016103113A5 (en)
EP3000024B1 (en) Dynamically provisioning storage
US11461191B2 (en) Orchestrating and prioritizing the rebuild of storage object components in a hyper-converged infrastructure
US20190377612A1 (en) VCPU Thread Scheduling Method and Apparatus
US11403150B1 (en) Replenishment-aware resource usage management
US11886898B2 (en) GPU-remoting latency aware virtual machine migration
US9971785B1 (en) System and methods for performing distributed data replication in a networked virtualization environment
US10031777B2 (en) Method and system for scheduling virtual machines in integrated virtual machine clusters
US20230289207A1 (en) Techniques for Concurrently Supporting Virtual NUMA and CPU/Memory Hot-Add in a Virtual Machine
Goutam et al. The performance evaluation of proactive fault tolerant scheme over cloud using CloudSim simulator
US10353597B2 (en) Prioritizing pages to transfer for memory sharing
US20190250994A1 (en) Backup control method and backup control system
US20190278524A1 (en) Persistent reservation emulation in shared virtual storage environments
US11157309B2 (en) Operating cluster computer system with coupling facility
US9836315B1 (en) De-referenced package execution

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: 17842530

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: 17842530

Country of ref document: EP

Kind code of ref document: A1