WO2018036104A1 - Procédé, système et serveur physique de déploiement d'une machine virtuelle - Google Patents

Procédé, système et serveur physique de déploiement d'une machine virtuelle 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
English (en)
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/fr

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.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)

Abstract

La présente invention concerne un procédé, un système et un serveur physique de déploiement d'une machine virtuelle. Le procédé comprend les étapes consistant à : déterminer des serveurs physiques contenant une ressource inactive parmi une pluralité de serveurs physiques ; déterminer un serveur physique cible lorsqu'il n'est trouvé aucun serveur physique satisfaisant toutes les premières règles de contrainte parmi les serveurs physiques contenant une ressource inactive, le serveur physique cible satisfaisant une partie des premières règles de contrainte parmi lesdites une ou plusieurs premières règles de contrainte, ou le serveur physique cible ne satisfaisant pas l'une quelconque des premières règles de contrainte parmi lesdites une ou plusieurs premières règles de contrainte ; et déployer une machine virtuelle devant être déployée dans le serveur physique cible. L'utilisation du procédé, du système et du serveur physique de déploiement d'une machine virtuelle d'après la présente invention permet d'augmenter le taux d'utilisation des serveurs physiques.
PCT/CN2017/072988 2016-08-26 2017-02-06 Procédé, système et serveur physique de déploiement d'une machine virtuelle WO2018036104A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610740515.4A CN106445631B (zh) 2016-08-26 2016-08-26 一种布署虚拟机的方法、系统以及物理服务器
CN201610740515.4 2016-08-26

Publications (1)

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

Family

ID=58182273

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/072988 WO2018036104A1 (fr) 2016-08-26 2017-02-06 Procédé, système et serveur physique de déploiement d'une machine virtuelle

Country Status (2)

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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990024A (zh) * 2019-11-28 2020-04-10 合肥讯飞数码科技有限公司 一种应用部署方法、装置、设备及存储介质
CN114461332A (zh) * 2020-11-09 2022-05-10 上海大学 一种基于应用特征的虚拟机部署方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107643939A (zh) * 2017-09-14 2018-01-30 郑州云海信息技术有限公司 一种分配虚拟机的方法及系统
CN107748691B (zh) * 2017-10-30 2020-04-24 平安科技(深圳)有限公司 虚拟机部署方法、装置、设备及计算机可读存储介质
CN111324424B (zh) * 2020-04-15 2023-07-18 中国联合网络通信集团有限公司 一种虚拟机部署方法、装置、服务器及存储介质
CN113687949B (zh) * 2021-08-31 2023-01-31 中国联合网络通信集团有限公司 服务器部署方法、装置、部署设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639594A (zh) * 2013-11-15 2015-05-20 中国电信股份有限公司 分配物理资源和虚拟资源的系统和方法
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 (zh) * 2015-09-16 2015-12-09 国云科技股份有限公司 一种多QoS约束的云计算任务调度方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102096461B (zh) * 2011-01-13 2013-06-19 浙江大学 基于虚拟机迁移和负载感知整合的云数据中心节能方法
TW201324187A (zh) * 2011-12-15 2013-06-16 Hon Hai Prec Ind Co Ltd 虛擬機部署系統及方法
US9038065B2 (en) * 2012-01-30 2015-05-19 International Business Machines Corporation Integrated virtual infrastructure system
CN104750541B (zh) * 2015-04-22 2018-01-16 成都睿峰科技有限公司 一种虚拟机迁移方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639594A (zh) * 2013-11-15 2015-05-20 中国电信股份有限公司 分配物理资源和虚拟资源的系统和方法
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 (zh) * 2015-09-16 2015-12-09 国云科技股份有限公司 一种多QoS约束的云计算任务调度方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990024A (zh) * 2019-11-28 2020-04-10 合肥讯飞数码科技有限公司 一种应用部署方法、装置、设备及存储介质
CN110990024B (zh) * 2019-11-28 2024-02-09 合肥讯飞数码科技有限公司 一种应用部署方法、装置、设备及存储介质
CN114461332A (zh) * 2020-11-09 2022-05-10 上海大学 一种基于应用特征的虚拟机部署方法
CN114461332B (zh) * 2020-11-09 2024-05-28 上海大学 一种基于应用特征的虚拟机部署方法

Also Published As

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

Similar Documents

Publication Publication Date Title
WO2018036104A1 (fr) Procédé, système et serveur physique de déploiement d'une machine virtuelle
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 (zh) 选择虚拟机进行迁移的技术
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
WO2016092386A1 (fr) Amorçage rapide de charges de travail à l'aide d'instantanés post-démarrage résidant en mémoire
JP2016103113A5 (fr)
EP3000024B1 (fr) Approvisionnement dynamique de stockage
US11461191B2 (en) Orchestrating and prioritizing the rebuild of storage object components in a hyper-converged infrastructure
US20190377612A1 (en) VCPU Thread Scheduling Method and Apparatus
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
US10474394B2 (en) Persistent reservation emulation in shared virtual storage environments
US10353597B2 (en) Prioritizing pages to transfer for memory sharing
US11157309B2 (en) Operating cluster computer system with coupling facility
US9836315B1 (en) De-referenced package execution
CN106547583B (zh) 一种操作系统安装方法以及装置
US11797729B2 (en) Hyper-converged infrastructure (HCI) operation predictor

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