WO2017032223A1 - 虚拟机部署方法及装置 - Google Patents

虚拟机部署方法及装置 Download PDF

Info

Publication number
WO2017032223A1
WO2017032223A1 PCT/CN2016/094414 CN2016094414W WO2017032223A1 WO 2017032223 A1 WO2017032223 A1 WO 2017032223A1 CN 2016094414 W CN2016094414 W CN 2016094414W WO 2017032223 A1 WO2017032223 A1 WO 2017032223A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
virtual machine
communication
destination
abnormal
Prior art date
Application number
PCT/CN2016/094414
Other languages
English (en)
French (fr)
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 WO2017032223A1 publication Critical patent/WO2017032223A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Definitions

  • the present invention relates to the field of communications, and in particular, to a virtual machine deployment method and apparatus.
  • Telecommunication network cloudization refers to deploying traditional physical device-based telecommunication nodes and applications to virtual server (English: Virtual Machine; VM). This deployment method is called network function in the industry. Virtualization (English: Network Functions Virtualization; referred to as: NFV).
  • a clouded telecommunications network may include multiple data centers in which communication between telecommunications nodes and telecommunications nodes, and between different business processes within the same telecommunications node may be represented as communication between VMs.
  • the data center can be automatically expanded and reduced according to the service load.
  • the virtual machine management module of the data center can flexibly deploy the VM to each server in the data center according to the service load; the management module of the data center can also be based on each server. Work status, when the server is abnormal or needs maintenance, migrate the VM deployed in the server to another server.
  • the VM management module When deploying and migrating a VM, the VM management module usually selects the appropriate size of the central processing unit (English: Central Processing Unit; CPU), the size of the storage resource, and the bandwidth of the network port.
  • the server acts as the destination server for VM deployment and migration.
  • the virtual machine management module selects the target server for VM deployment and migration according to the CPU resources, storage resources, and network port bandwidth of each server, the communication state between the destination server and other servers may be abnormal. Therefore, the virtual machine management module pairs After the VM is deployed and migrated, the communication reliability between the VMs is low.
  • the present invention provides a virtual machine deployment method and apparatus.
  • the technical solution is as follows:
  • a virtual machine deployment method comprising:
  • the peer virtual machine that has a communication service with the destination virtual machine, where the destination virtual machine is a virtual machine to be migrated or a virtual machine to be deployed;
  • the communication status includes a normal status or an abnormal status
  • the destination virtual machine is a virtual machine to be migrated, and the method is before the peer virtual machine in which the query and the destination virtual machine have a communication service Also includes:
  • the abnormal virtual machine deployed in the target server is determined as the destination virtual machine.
  • the method before the querying the virtual machine with the destination virtual machine, the method further includes:
  • the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server, where the first server and the server
  • the second server is any two servers in the server managed by the virtual machine management module
  • the communication state of the first server and the second server is recorded in the communication matrix as a normal state
  • the communication state of the first server and the second server is recorded in the communication matrix as an abnormal state.
  • the communication quality information is that the virtual machine deployed in the first server is in the second server Sent when the deployed virtual machine performs communication services;
  • the communication quality information is that the first server sends a probe packet to the second server, and after receiving the probe response packet sent by the second server, generating, according to the probe packet and the probe response packet, of.
  • the deploying the destination virtual machine in the destination server includes:
  • the destination virtual machine is deployed in the destination server
  • the deployment service is selected from the set of the destination servers according to a preset rule.
  • the destination virtual machine is deployed in the deployment server.
  • the selecting, by the preset rule, the deployment server from the set of the destination servers includes:
  • the deployment server is selected from the set of alternative deployment servers according to an affinity algorithm.
  • a virtual machine deployment apparatus comprising:
  • the query unit is configured to query a peer virtual machine that has a communication service with the destination virtual machine, where the destination virtual machine is a virtual machine to be migrated or a virtual machine to be deployed;
  • a first determining unit configured to determine a server that is deployed with the peer virtual machine
  • An obtaining unit configured to acquire a destination server from a preset communication matrix, where a communication state of the destination server and the server where the peer virtual machine is deployed is a normal state, and any two of the communication matrix records a communication state between servers, the communication state including a normal state or an abnormal state;
  • a deployment unit configured to deploy the destination virtual machine in the destination server.
  • the destination virtual machine is a virtual machine to be migrated
  • the device further includes:
  • a first receiving unit configured to receive, by using an abnormal virtual machine, communication abnormality information indicating that the abnormal virtual machine communicates with another virtual machine in an abnormal state;
  • a second determining unit configured to determine, according to the communication abnormality information, an abnormal server that is deployed with the abnormal virtual machine
  • the first statistic unit is configured to count the number of abnormal servers in the server managed by the virtual machine management module
  • a third determining unit configured to determine the abnormal virtual machine as the destination virtual machine when the number of abnormal servers in the server managed by the virtual machine management module is equal to one;
  • a second statistic unit configured to query the communication matrix when the number of abnormal servers in the server managed by the virtual machine management module is greater than 1, and count the communication status of each of the abnormal servers and other abnormal servers as abnormal The number of times;
  • a fourth determining unit configured to determine, as the target server, the server with the most communication status as the abnormal state
  • a fifth determining unit configured to determine an abnormal virtual machine deployed in the target server as the destination virtual machine.
  • the device further includes:
  • a second receiving unit configured to receive communication quality information sent by the first server, where the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server,
  • the first server and the second server are any two servers in a server managed by the virtual machine management module;
  • a determining unit configured to determine whether the communication quality is higher than a preset quality threshold
  • a first recording unit configured to record, in the communication matrix, a communication state of the first server and the second server as a normal state when the communication quality is higher than a preset quality threshold
  • a second recording unit configured to record, in the communication matrix, a communication state of the first server and the second server as an abnormal state when the communication quality is not higher than a preset quality threshold.
  • the communication quality information is that the virtual machine deployed in the first server is in the second server Sent when the deployed virtual machine performs communication services;
  • the communication quality information is that the first server sends a probe packet to the second server, and after receiving the probe response packet sent by the second server, generating, according to the probe packet and the probe response packet, of.
  • the deploying unit includes:
  • a first deployment subunit configured to deploy the destination virtual machine in the destination server when the number of the destination servers is equal to one
  • Selecting a subunit configured to select a deployment server from the set of destination servers according to a preset rule when the number of the destination servers is greater than one;
  • a second deployment subunit configured to deploy the destination virtual machine in the deployment server.
  • the second deployment subunit is further configured to:
  • the deployment server is selected from the set of alternative deployment servers according to an affinity algorithm.
  • a virtual machine deployment method and device provided by the embodiment of the present invention, when the virtual machine management module deploys the destination virtual machine, the virtual machine management module can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the virtual machine is deployed.
  • the server can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, after the destination virtual machine is deployed to the destination server, The communication between the virtual machine and the peer virtual machine can be performed normally, which improves the reliability of communication between virtual machines.
  • FIG. 1 is a schematic diagram of a cloud network architecture according to an embodiment of the present invention
  • FIG. 2 is a schematic structural diagram of a virtual machine deployment apparatus according to an embodiment of the present invention.
  • FIG. 3 is a flowchart of a virtual machine deployment method according to an embodiment of the present invention.
  • 4-1 is a flowchart of another virtual machine deployment method according to an embodiment of the present invention.
  • 4-2 is a network topology diagram of a data center according to an embodiment of the present invention.
  • 4-3 is a flowchart of a method for determining a destination virtual machine from an abnormal virtual machine according to an embodiment of the present invention
  • 4-4 is a flowchart of a method for selecting a deployment server from a set of destination servers according to an embodiment of the present invention
  • 5-1 is a schematic structural diagram of another virtual machine deployment apparatus according to an embodiment of the present invention.
  • FIG. 5-2 is a schematic structural diagram of still another virtual machine deployment apparatus according to an embodiment of the present disclosure.
  • FIG. 5-3 is a schematic structural diagram of a deployment unit according to an embodiment of the present invention.
  • FIG. 1 is a schematic diagram of a cloud network architecture according to an embodiment of the present invention.
  • the data center internal network of the cloudized telecommunication network includes multiple servers, and multiple virtual machines may be deployed on different servers.
  • virtual machines VM1, VM2, VM3, and VM4 are all deployed on different servers.
  • the data center's servers pass through the core switch of the data center, the aggregation layer switch (English: End Of Row; EOR) and the access layer switch, also known as the top switch (English: Top Of Rack; referred to as: TOR )
  • EOR End Of Row
  • the access layer switch also known as the top switch (English: Top Of Rack; referred to as: TOR )
  • Different levels of switches are interconnected to provide communication channels for communication between virtual machines.
  • the double-arrow solid line in Figure 1 indicates communication between different VMs.
  • the virtual machine management module can perform arbitrary deployment and migration of the VMs in the data center, which means that the communication traffic between the VMs may be related to the VM deployment location, and the traffic may pass TOR, EOR, and Core switches (such as communication between virtual machine VM1 and virtual machine VM4) may also pass only TOR and EOR, or only through TOR, or traffic only inside the server (for example, communication between virtual machines VM2 and VM3).
  • the virtual machine deployment apparatus includes a processor 201, a memory 202, and a bus 203.
  • the bus 203 is used to connect the processor 201 and the memory 202, and the processor 201 is configured to execute the program 2021 stored in the memory 202;
  • the processor 201 is configured to query a peer virtual machine that has a communication service with the destination virtual machine, where the target virtual machine is a virtual machine to be migrated or a virtual machine to be deployed.
  • the processor 201 is further configured to determine a server that is deployed with the peer virtual machine.
  • the processor 201 is further configured to obtain a destination server from a preset communication matrix, where the communication state of the destination server and the server where the peer virtual machine is deployed is a normal state, and any two servers are recorded in the communication matrix. Between Status, the communication status includes a normal status or an abnormal status.
  • the processor 201 is further configured to deploy the destination virtual machine in the destination server.
  • the destination virtual machine is a virtual machine to be migrated
  • the processor 201 is further configured to:
  • the abnormal virtual machine is determined as the destination virtual machine
  • the communication matrix is queried, and the number of times each communication state of the abnormal server and the abnormal server is abnormal is counted;
  • the abnormal virtual machine deployed in the target server is determined as the destination virtual machine.
  • the processor 201 is further configured to:
  • the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server, where the first server and the second server are Any two servers in the server managed by the virtual machine management module;
  • the communication state of the first server and the second server is recorded in the communication matrix as a normal state
  • the communication state of the first server and the second server is recorded in the communication matrix as an abnormal state.
  • the communication quality information is sent when the virtual machine deployed in the first server performs a communication service with the virtual machine deployed in the second server;
  • the communication quality information is generated by the first server sending a probe packet to the second server, and after receiving the probe response packet sent by the second server, according to the probe packet and the probe response packet.
  • the processor 201 is further configured to:
  • the deployment server is selected from the set of the destination servers according to a preset rule
  • the destination virtual machine is deployed in the deployment server.
  • the processor 201 is further configured to:
  • the pre- Setting parameters include at least one of a CPU resource, a storage resource, and a network port bandwidth;
  • the deployment server is selected from the set of alternative deployment servers according to an affinity algorithm.
  • the virtual machine deployment device when the virtual machine management module deploys the destination virtual machine, can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.
  • the embodiment of the invention provides a virtual machine deployment method, which can be applied to the virtual machine management module shown in FIG. 1 .
  • the method includes:
  • Step 301 Query the peer virtual machine that has a communication service with the destination virtual machine, where the destination virtual machine is a virtual machine to be migrated or a virtual machine to be deployed.
  • Step 302 Determine a server that is deployed with the peer virtual machine.
  • Step 303 Obtain a destination server from a preset communication matrix, where a communication state between the destination server and the server where the peer virtual machine is deployed is a normal state, and a communication state between any two servers is recorded in the communication matrix.
  • the communication status includes a normal status or an abnormal status.
  • Step 304 Deploy the destination virtual machine in the destination server.
  • a virtual machine deployment method is provided by the embodiment of the present invention.
  • the virtual machine management module can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.
  • the destination virtual machine is a virtual machine to be migrated, and the method further includes: before the querying the virtual machine of the communication service with the destination virtual machine;
  • the abnormal virtual machine is determined as the destination virtual machine
  • the abnormal virtual machine deployed in the target server is determined as the destination virtual machine.
  • the method before querying the peer virtual machine that has the communication service with the destination virtual machine, the method further includes:
  • the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server, where the first server and the second server are Any two servers in the server managed by the virtual machine management module;
  • the communication state of the first server and the second server is recorded in the communication matrix as a normal state
  • the communication state of the first server and the second server is recorded as an abnormal state in the communication matrix.
  • the communication quality information is sent when the virtual machine deployed in the first server performs a communication service with the virtual machine deployed in the second server;
  • the communication quality information is generated by the first server sending a probe packet to the second server, and after receiving the probe response packet sent by the second server, according to the probe packet and the probe response packet.
  • the destination virtual machine is deployed in the destination server, including:
  • the destination virtual machine is deployed in the destination server
  • the deployment server is selected from the set of the destination servers according to a preset rule
  • the destination virtual machine is deployed in the deployment server.
  • selecting a deployment server from the set of the destination server according to a preset rule including:
  • the deployment server is selected from the set of alternative deployment servers according to an affinity algorithm.
  • a virtual machine deployment method is provided by the embodiment of the present invention.
  • the virtual machine management module can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.
  • Figure 4-1 is a flowchart of another virtual machine deployment method according to an embodiment of the present invention. The method may be applied to the virtual machine management module shown in Figure 1, as shown in Figure 4-1. The method includes:
  • Step 401 Receive communication quality information sent by the first server. Go to step 402.
  • the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server, where the first server and the second server are any of the servers managed by the virtual machine management module. Two servers.
  • the identifier of the first server may be a media access control (English: Media Access Control; MAC address) of the first server, or may be an Internet protocol of the first server (English: Internet) Protocol; referred to as: IP) address.
  • the communication quality may include parameters such as delay, jitter, and packet loss rate when the first server and the second server send data packets.
  • the communication quality information may be sent when a virtual machine deployed in the first server performs a communication service with a virtual machine deployed in the second server.
  • a plurality of virtual machines may be deployed in each server managed by the virtual machine management module, and each of the multiple virtual machines may perform a communication service with the peer virtual machine. The communication quality with the peer virtual machine is detected, and the communication quality is sent to the virtual machine management module.
  • the MAC addresses of the first server A and the second server B are respectively: 12-3e-d4-55-c6-f7, 12-3e-d4-55-c6-f8.
  • VM1 can detect the communication quality between VM1 and VM2 when performing communication service with VM2, such as the delay, jitter and packet loss rate of VM1 sending data packets to VM2, and assume that the delay of VM1 sending data packets to VM2 is 30 milliseconds (ms), jitter is 3ms, packet loss rate is 0.005, then VM1 can communicate the quality: delay: 30ms, jitter: 3ms, packet loss rate: 0.005, and the identity of the first server A deployed with VM1 :12-3e-d4-55-c6-f7 and the identifier of the second server B deployed with VM2: 12-3e-d4-55-c6-f8 are sent to the virtual machine management module.
  • the communication quality information may be generated by the first server sending a probe packet to the second server, and receiving the probe response packet sent by the second server, according to the probe packet and the probe response packet.
  • each server managed by the virtual machine management module may further be provided with a communication detection module, and the communication detection module in each server may send a detection packet to the communication detection module in other servers, and receive The communication quality information is generated after the communication detection module in the other server sends the probe response packet.
  • the communication detecting module A1 set in the first server A sends a probe packet to the communication detecting module B1 set in the second server B, and obtains the communication detecting module A1 according to the probe response packet sent by the B1.
  • the delay of the probe packet sent by the communication detection module B1 is 30 ms, the jitter is 3 ms, and the packet loss rate is 0.005.
  • the communication quality information generated by the first server A may include: the identifier of the first server A: 12-3e-d4 55-c6-f7; identifier of the second server B: 12-3e-d4-55-c6-f8; communication quality: delay: 30 ms, jitter: 3 ms, packet loss rate: 0.005.
  • the virtual machine management module may be a virtual network function management module (English: Virtual Network Feature Manager; referred to as: VNFM), or may be a virtual machine manager (English: VM Manager), etc.
  • VNFM Virtual Network Feature Manager
  • VM Manager Virtual Machine Manager
  • Step 402 Determine whether the communication quality is higher than a preset quality threshold.
  • step 403 is performed; if the communication quality is not higher than the preset quality threshold, Go to step 404.
  • Step 403 Record, in the communication matrix, that the communication state of the first server and the second server is a normal state. Go to step 405.
  • the communication matrix is used to record the communication status between any two servers in the server managed by the virtual machine management module.
  • the virtual machine management module may store a preset quality threshold. When the communication quality in the communication quality information sent by the first server is higher than the preset quality threshold, the virtual machine management module may record the first server in the communication matrix.
  • the communication state with the second server is a normal state.
  • the preset quality threshold is assumed to be: delay: 50 ms, jitter: 5 ms, packet loss rate: 0.01, and delay, jitter, and loss in communication quality with the second server B sent by the first server A.
  • Step 404 Record, in the communication matrix, that the communication state of the first server and the second server is an abnormal state. Go to step 405.
  • the virtual machine management module may record, in the communication matrix, that the communication state of the first server and the second server is an abnormal state.
  • the preset quality threshold is: delay: 50 ms, jitter: 5 ms, packet loss rate: 0.01
  • the communication quality sent by the first server A is: delay: 60 ms, jitter: 7 ms, packet loss rate: 0.015
  • the delay in the communication quality: 60ms is greater than the delay in the quality threshold: 50ms
  • the jitter in the communication quality: 7ms is greater than the jitter in the quality threshold: 5ms
  • the packet loss rate in the communication quality: 0.015 is greater than the quality
  • the virtual machine management module may determine that the communication quality is not higher than the preset quality threshold, and record that the communication status between the first server A and the second server B is abnormal in the communication matrix. .
  • the server managed by the virtual machine management module of the data center includes the server AH
  • the network topology diagram of the data center where the server AH is located may be as shown in Figure 4-2, as shown in Figure 4-2.
  • the network topology diagram includes a core layer switch 01, an aggregation layer switch 02, and an access layer switch 03.
  • the interconnection of the different levels of switches can establish multiple communication channels, which can satisfy any two servers in the server AH. Communication.
  • the switch X is faulty, causing all communication services passing through the switch to be affected.
  • the virtual machine management module generates the communication quality information sent by the received server AH.
  • the communication matrix can be as shown in Table 1.
  • Table 1 shows the communication status between any two servers in the server AH managed by the virtual machine management module, where ⁇ indicates that the communication status between the two servers is normal, ⁇ Indicates that the communication status between the two servers is abnormal. For example, as shown in Table 1, the communication status between server A and server B is normal, the communication status between server A and server C-H is abnormal; the communication status between server H and server A-D is different. In the normal state, the communication status between the server H and the server E-G is normal.
  • the management module sends the communication quality information to the peer virtual machine
  • the virtual machine management module only needs to determine that the communication quality of the virtual machine sent by the virtual machine and the virtual server deployed in the peer server is higher than the quality threshold. Make sure that the communication status between the two servers is normal.
  • the virtual machine deployed in server A includes VM1 and VM3
  • the virtual machine deployed in server B includes VM2 and VM4, wherein communication service exists between VM1 and VM2, communication service exists between VM3 and VM4, and VM1
  • the virtual machine management module sends the communication quality information S1 with the VM2
  • the VM3 sends the communication quality information S2 with the VM4 to the virtual machine management module
  • the server identifiers included in S1 and S2 are: the identifier of the server A and the server B. logo.
  • the virtual machine management module may determine between the server A and the server B.
  • the communication status is normal, that is, as long as any two virtual machines in server A and server B can communicate normally, it can be determined that the communication link between the two servers is in a normal state, and the communication quality is lower than the quality threshold.
  • the two virtual machines VM3 and VM4 in general, the virtual machine management module determines that the two virtual machines themselves have a communication failure.
  • the virtual machine management module can update and maintain the communication quality matrix in real time according to the received communication quality information of the server, so as to improve the reliability of the communication matrix, thereby ensuring according to the communication matrix.
  • the virtual machine deployed and migrated can communicate normally with the peer virtual machine that has the communication service.
  • Step 405 Query the peer virtual machine that has a communication service with the destination virtual machine. Go to step 406.
  • the destination virtual machine is the virtual machine to be migrated or the virtual machine to be deployed.
  • the new virtual machine may be deployed in the server managed by the virtual machine management module, where the new virtual machine is the virtual machine to be deployed; If a server is abnormal, the data center network is faulty, or a server needs to be actively maintained, you need to migrate the VMs deployed on the abnormal server to other servers. The VMs deployed in the abnormal server are waiting. Migrate virtual machines.
  • the peer virtual machine that has communication service with the destination virtual machine may be queried in the database. For example, if the destination virtual machine is the virtual machine VM7 to be deployed, the peer virtual machine that is queried by the virtual machine management module and has a communication service with the virtual machine VM7 to be deployed may be VM8 and VM9.
  • FIG. 4-3 is a flowchart of a method for determining a destination virtual machine from an abnormal virtual machine according to an embodiment of the present invention. As shown in FIG. 4-3, the method includes:
  • Step 4051 Receive communication abnormality information sent by the abnormal virtual machine indicating that the abnormal virtual machine communicates with another virtual machine in an abnormal state. Go to step 4052.
  • the communication abnormality information may be sent to the virtual machine management module.
  • the VM1 may send communication abnormality information to the virtual machine management module.
  • Step 4052 Determine, according to the communication abnormality information, an abnormal server in which the abnormal virtual machine is deployed. Go to step 4053.
  • the virtual machine management module may determine, according to the received communication abnormality information, that the abnormal server deploying the abnormal virtual machine VM1 is: server A.
  • Step 4053 Count the number of abnormal servers in the server managed by the virtual machine management module.
  • step 4054 is performed; if the number of abnormal servers in the server managed by the virtual machine management module is greater than 1, step 4055 is performed. For example, after the virtual machine management module determines that the abnormal server in which the abnormal virtual machine VM1 is deployed is the server A, the number of the abnormal servers in the server managed by the virtual machine management module is counted as 1, and step 4054 is performed.
  • Step 4054 Determine the abnormal virtual machine as the destination virtual machine.
  • the abnormal virtual machine is determined as the destination virtual machine. For example, if the abnormal server determined by the virtual machine management module is: server A, the virtual machine management module may determine the abnormal virtual machine VM1 as the destination virtual machine because the number of the abnormal servers is 1.
  • Step 4055 query the communication matrix, and calculate the communication status of each abnormal server and other abnormal servers as abnormal. The number of times. Go to step 4056.
  • the virtual machine management module may query the communication matrix to count the number of times the communication status of each abnormal server and other abnormal servers is abnormal. For example, suppose the virtual machines VM1, VM2, and VM5 send communication abnormality information to the virtual machine management module, and the virtual machine management module determines that the abnormal server deployed with the abnormal virtual machine VM1 is: server A, and an abnormal server deployed with the abnormal virtual machine VM2 For the server B, the abnormal server with the abnormal VM VM5 is: Server C. Because the number of the abnormal server is 3, which is greater than 1, the VM management module can query the communication matrix and collect the abnormal server AC and other statistics. The number of times the abnormal server's communication status is abnormal.
  • the virtual machine management module can determine the abnormal server A and the other.
  • the number of times that the communication status of the abnormal server B and C is abnormal is 1.
  • the virtual machine management module can also count the number of times that the communication status of the abnormal server B and other abnormal servers is abnormal, and the abnormal server C and other The number of times the communication status of the abnormal server is abnormal is 2.
  • step 4056 the server with the highest number of communication statuses in the abnormal state is determined as the target server. Go to step 4057.
  • the virtual machine management module may determine the abnormal server C as Target server.
  • Step 4057 Determine an abnormal virtual machine deployed in the target server as the destination virtual machine.
  • the virtual machine management module may determine the abnormal virtual machine VM5 deployed in the target server C as the destination virtual machine, that is, the virtual machine to be migrated. If the virtual machine VM6 is deployed in the target server C, but the VM6 can perform the communication service normally with the peer virtual machine that has the communication service, the virtual machine management module does not need to determine the VM6 as the virtual machine to be migrated.
  • Step 406 Determine a server that is deployed with the peer virtual machine. Go to step 407.
  • the VMs deployed in each server can be recorded in the database of the VM management module. Therefore, after the VM management module determines the peer VMs that have communication services with the destination VMs, you can query the deployments in each server.
  • the virtual machine determines the server on which the peer virtual machine is deployed. For example, if the peer virtual machine that is queried by the virtual machine management module and has a communication service with the virtual machine VM7 to be deployed is VM8 and VM9, the virtual machine management module may determine that the server on which the virtual machine VM8 is deployed is the server G, and the deployment is performed.
  • the server of the virtual machine VM9 is the server H.
  • Step 407 Obtain a destination server from a preset communication matrix, where a communication state between the destination server and the server where the peer virtual machine is deployed is a normal state. Go to step 408.
  • the communication matrix records the communication state between any two servers, and the communication state includes a normal state or an abnormal state. If the server on which the peer virtual machine is deployed includes multiple servers, the destination server The communication status with the multiple servers should be normal. For example, for the server G and the server H where the virtual machines VM8 and VM9 are deployed, by referring to the communication matrix shown in Table 1, the server whose communication status with the server G and the server H is normal includes: the server E, Server F, server G and server H, the virtual machine management module can determine the server EH as the destination server.
  • the virtual machine management module may store according to the size of the CPU resources of each managed server.
  • the size of the resource and the size of the network port bandwidth are used to select the appropriate server as the destination server for VM deployment and migration.
  • the virtual machine to be migrated needs to be deployed from the destination server.
  • the source server is deleted and the server other than the source server is used as the destination service.
  • the virtual machine management module needs to migrate the virtual machine VM0 deployed in the server E to another server, and the virtual machines having the communication service with the virtual machine VM0 are: virtual machines VM8 and VM9.
  • the server in which the virtual machine VM8 is deployed is the server G
  • the server in which the VM9 is deployed is the server H.
  • the server having the normal communication state with the server G and the server H includes: the server E, server F, server G and server H, the virtual machine management module can determine the server EH as the destination server. Since the server E in the destination server is the source server to which the virtual machine to be migrated: VM0 is deployed, the virtual machine management module needs The source server: server E is deleted from the destination server. At this time, the updated destination servers are: server F, server G, and server H.
  • Step 408 Count the number of the destination servers.
  • step 409 is performed; if the number of destination servers is greater than 1, step 410 is performed; if the number of destination servers is less than 1, the virtual machine management module may determine the default communication. If the destination server that does not have the normal communication status with the server that has the peer virtual machine deployed in the matrix, the size of the storage resource and the size of the network port bandwidth may be determined according to the size of the CPU resources of each server managed. Choose the right server as the destination server for VM deployment and migration. For example, if the destination server acquired by the virtual machine management module is: server E, server F, server G, and server H, the virtual machine management module can obtain that the number of the destination server is 4, which is greater than 1, and therefore step 410 is performed. .
  • Step 409 Deploy the destination virtual machine in the destination server.
  • the virtual machine management module can directly deploy the destination virtual machine in the destination server.
  • Step 410 Select a deployment server from the set of destination servers according to a preset rule. Go to step 411.
  • the virtual machine management module may select the deployment server from the set of the destination servers according to a preset rule. For example, the virtual machine management module may select the deployment server from the set of destination servers ⁇ Server E, Server F, Server G, Server H ⁇ according to a preset rule.
  • FIG. 4-4 is a flowchart of a method for selecting a deployment server from a set of destination servers according to an embodiment of the present invention. As shown in FIG. 4-4, the method includes:
  • Step 4101 Filter, from the servers managed by the virtual machine management module, a set of candidate servers that meet the criteria of the preset parameters.
  • the preset parameter includes at least one of a CPU resource, a storage resource, and a network port bandwidth.
  • the virtual machine management module may filter, in the server managed by the virtual machine management module, a set of candidate servers that meet the preset parameters according to the parameters of the CPU and the memory of the destination virtual machine.
  • the destination virtual machine is the virtual machine VM7 to be deployed, and the preset parameters are CPU resources, storage resources, and network port bandwidth.
  • the standard of the preset parameters set by the virtual machine management module according to the CPU and memory of the virtual machine VM7 is:
  • the CPU is clocked at 4 gigahertz (GHz) or higher, the storage resource is 8 gigabytes (GB) or more, and the network port bandwidth is 10 megabits per second (Mbps) or more.
  • the virtual machine management module is managed from the virtual machine.
  • the set of alternative servers filtered by the module managed server that meets the criteria of the above preset parameters may be ⁇ Server A, Server E, Server F, Server G ⁇ .
  • Step 4102 Filter the server in the candidate server set that is the same as the server in the set of the destination server to obtain an alternative deployment server set.
  • the virtual machine management module can take an intersection of the set of the alternate server and the destination server to obtain an alternative deployment server set. For example, suppose the set of destination servers is ⁇ Server E, Server F, Server G, Server H ⁇ , and the set of candidate servers filtered by the VM Management Module is ⁇ Server A, Server E, Server F, Server G ⁇ , then virtual The machine management module takes the intersection of the two server sets, and the selected candidate deployment server set may be: ⁇ Server E, Server F, Server G ⁇ .
  • Step 4103 Select a deployment server from the set of candidate deployment servers according to an affinity algorithm.
  • the affinity algorithm refers to selecting, from the set of alternative deployment servers, the server with the shortest communication path between the server deploying the peer virtual machine as the deployment server.
  • the server with the VM8 is the server G
  • the server with the VM9 is the server H
  • the network shown in Figure 4-2 As can be seen in the topology, in the alternative deployment server set ⁇ Server E, Server F, Server G ⁇ , the server with the shortest communication path with the server G is the server G, and the server with the shortest communication path with the server H is also Server G, the virtual machine management module can select server G as the deployment server.
  • the virtual machine management module may randomly select one server from the set of alternative deployment servers as the deployment server.
  • Step 411 Deploy the destination virtual machine in the deployment server.
  • the virtual machine management module can deploy the destination virtual machine VM7 in the deployment server: server G.
  • step 401 to step 404 may be performed simultaneously with step 405, or may be performed after step 405. Any method that can be easily conceived within the scope of the present invention within the technical scope of the present invention is well within the scope of the present invention, and therefore will not be described again.
  • the virtual machine deployment method provided by the embodiment of the present invention can be applied to the application scenario of the data center within the data center shown in FIG. .
  • Cross data In the central scenario, the virtual machine deployment method can be performed by the virtual machine management module of any data center.
  • the virtual machine management module can include VM Manager, VNFM, and NFV management orchestrator (English: NFV Management and Orchestration; referred to as: NFV MANO)
  • NFV MANO NFV Management and Orchestration
  • a virtual machine deployment method is provided by the embodiment of the present invention.
  • the virtual machine management module can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.
  • the embodiment of the present invention provides a virtual machine deployment apparatus.
  • the virtual machine deployment apparatus 500 includes: a query unit 501, a first determining unit 502, an obtaining unit 503, and a deploying unit 504.
  • the querying unit 501 is configured to query a peer virtual machine that has a communication service with the destination virtual machine, where the destination virtual machine is a virtual machine to be migrated or a virtual machine to be deployed.
  • the first determining unit 502 is configured to determine a server that is deployed with the peer virtual machine.
  • the obtaining unit 503 is configured to obtain a destination server from a preset communication matrix, where the communication state of the destination server and the server where the peer virtual machine is deployed is a normal state, and the communication matrix records between any two servers.
  • the communication status which includes a normal status or an abnormal status.
  • the deployment unit 504 is configured to deploy the destination virtual machine in the destination server.
  • the virtual machine deployment device when the virtual machine management module deploys the destination virtual machine, can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.
  • the virtual machine deployment apparatus 500 includes:
  • the querying unit 501 is configured to query a peer virtual machine that has a communication service with the destination virtual machine, where the destination virtual machine is a virtual machine to be migrated or a virtual machine to be deployed.
  • the first determining unit 502 is configured to determine a server that is deployed with the peer virtual machine.
  • the obtaining unit 503 is configured to obtain a destination server from a preset communication matrix, where the communication state of the destination server and the server where the peer virtual machine is deployed is a normal state, and the communication matrix records between any two servers.
  • the communication status which includes a normal status or an abnormal status.
  • the deployment unit 504 is configured to deploy the destination virtual machine in the destination server.
  • the first receiving unit 505 is configured to receive, by the abnormal virtual machine, the abnormal virtual machine to communicate with other virtual machines.
  • the communication exception information of the abnormal state is configured to communicate with other virtual machines.
  • the second determining unit 506 is configured to determine, according to the communication abnormality information, an abnormal server that is deployed with the abnormal virtual machine.
  • the first statistic unit 507 is configured to count the number of abnormal servers in the server managed by the virtual machine management module.
  • the third determining unit 508 is configured to determine the abnormal virtual machine as the destination virtual machine when the number of abnormal servers in the server managed by the virtual machine management module is equal to one.
  • the second statistic unit 509 is configured to query the communication matrix when the number of abnormal servers in the server managed by the virtual machine management module is greater than 1, and count the communication state of each abnormal server and other abnormal servers to be abnormal. frequency.
  • the fourth determining unit 510 is configured to determine, as the target server, the server whose communication status is the abnormal state.
  • the fifth determining unit 511 is configured to determine the abnormal virtual machine deployed in the target server as the destination virtual machine.
  • a second receiving unit 512 configured to receive communication quality information sent by the first server, where the communication quality information includes an identifier of the first server, an identifier of the second server, and a communication quality between the first server and the second server, where A server and the second server are any two of the servers managed by the virtual machine management module.
  • the determining unit 513 is configured to determine whether the communication quality is higher than a preset quality threshold.
  • the first recording unit 514 is configured to record, in the communication matrix, that the communication state of the first server and the second server is a normal state when the communication quality is higher than a preset quality threshold;
  • the second recording unit 515 is configured to record, in the communication matrix, that the communication state of the first server and the second server is an abnormal state when the communication quality is not higher than a preset quality threshold.
  • the communication quality information is sent when the virtual machine deployed in the first server performs a communication service with the virtual machine deployed in the second server;
  • the communication quality information is generated by the first server sending a probe packet to the second server, and after receiving the probe response packet sent by the second server, according to the probe packet and the probe response packet.
  • FIG. 5-3 is a schematic structural diagram of a deployment unit 504 according to an embodiment of the present invention. As shown in FIG. 5-3, the deployment unit 504 includes:
  • the determining subunit 5041 is configured to determine the number of the destination servers.
  • the first deployment sub-unit 5042 is configured to deploy the destination virtual machine in the destination server when the number of the destination server is equal to one.
  • the selecting subunit 5043 is configured to select a deployment server from the set of the destination servers according to a preset rule when the number of the destination servers is greater than 1.
  • the second deployment subunit 5044 is configured to deploy the destination virtual machine in the deployment server.
  • the second deployment subunit 5044 is further configured to:
  • the deployment server is selected from the set of alternative deployment servers according to an affinity algorithm.
  • the virtual machine deployment device when the virtual machine management module deploys the destination virtual machine, can query the peer virtual machine that has the communication service with the destination virtual machine, and determine that the opposite end is deployed.
  • the server of the virtual machine can obtain the destination server according to the preset communication matrix, and the communication state of the destination server and the server where the peer virtual machine is deployed is in a normal state. Therefore, deploying the destination virtual machine to the destination After the server, the communication between the virtual machine and the peer virtual machine can be executed normally, which improves the reliability of communication between virtual machines.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种虚拟机部署方法及装置,属于通信领域。所述方法包括:查询与目的虚拟机存在通讯业务的对端虚拟机,所述目的虚拟机为待迁移虚拟机或者待部署虚拟机;确定部署有所述对端虚拟机的服务器;从预设的通讯矩阵中获取目的服务器,所述目的服务器与所述部署有所述对端虚拟机的服务器的通讯状态为正常状态,所述通讯矩阵中记录了任意两个服务器之间的通讯状态,所述通讯状态包括正常状态或异常状态;将所述目的虚拟机部署在所述目的服务器中。本发明通过查询通讯矩阵来选择部署目的虚拟机的目的服务器,实现了提高虚拟机之间通讯可靠性的效果。

Description

虚拟机部署方法及装置
本申请要求于2015年8月24日提交中国专利局、申请号为201510524417.2、发明名称为“虚拟机部署方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通讯领域,特别涉及一种虚拟机部署方法及装置。
背景技术
电信网云化是指把传统的基于物理设备的电信节点及应用以虚拟机(英文:Virtual Machine;简称:VM)的方式部署到数据中心的服务器上,这种部署方式在业界称为网络功能虚拟化(英文:Network Functions Virtualization;简称:NFV)。一个云化的电信网可以包括多个数据中心,在数据中心里,电信节点与电信节点之间,以及同一个电信节点内部的不同业务进程之间的通讯都可以表现为VM之间的通讯。
相关技术中,数据中心可以根据业务负荷自动扩容和缩容,数据中心的虚拟机管理模块可以根据业务负荷将VM灵活部署在数据中心的各个服务器上;数据中心的管理模块还可以根据各个服务器的工作状态,在服务器出现异常或者需要维护时,将该服务器中部署的VM迁移至其他服务器上。虚拟机管理模块在部署和迁移VM时,通常是根据数据中心各服务器的中央处理器(英文:Central Processing Unit;简称:CPU)资源的大小,存储资源的大小以及网口带宽的大小来选择合适的服务器作为VM部署和迁移的目的服务器。
但是,虚拟机管理模块根据各个服务器的CPU资源、存储资源和网口带宽选择VM部署和迁移的目的服务器时,该目的服务器与其他服务器的通讯状态可能是异常状态,因此,虚拟机管理模块对VM进行部署和迁移后,VM之间的通讯可靠性较低。
发明内容
为了解决现有技术的问题,本发明提供了一种虚拟机部署方法及装置。所述技术方案如下:
第一方面,提供了一种虚拟机部署方法,所述方法包括:
查询与目的虚拟机存在通讯业务的对端虚拟机,所述目的虚拟机为待迁移虚拟机或者待部署虚拟机;
确定部署有所述对端虚拟机的服务器;
从预设的通讯矩阵中获取目的服务器,所述目的服务器与所述部署有所述对端虚拟机的服务器的通讯状态为正常状态,所述通讯矩阵中记录了任意两个服务器之间的通讯状态,所 述通讯状态包括正常状态或异常状态;
将所述目的虚拟机部署在所述目的服务器中。
结合第一方面,在第一方面的第一种可实现方式中,所述目的虚拟机为待迁移虚拟机,在所述查询与目的虚拟机存在通讯业务的对端虚拟机之前,所述方法还包括:
接收异常虚拟机发送的指示所述异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
根据所述通讯异常信息,确定部署有所述异常虚拟机的异常服务器;
统计虚拟机管理模块管理的服务器中的异常服务器的个数;
若所述虚拟机管理模块管理的服务器中的异常服务器的个数等于1,将所述异常虚拟机确定为所述目的虚拟机;
若所述虚拟机管理模块管理的服务器中的异常服务器的个数大于1,查询所述通讯矩阵,统计每个所述异常服务器与其他异常服务器的通讯状态为异常状态的次数;
将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
将所述目标服务器中所部署的异常虚拟机确定为所述目的虚拟机。
结合第一方面,在第一方面的第二种可实现方式中,在所述查询与目的虚拟机存在通讯业务的对端虚拟机之前,所述方法还包括:
接收第一服务器发送的通讯质量信息,所述通讯质量信息包括第一服务器的标识、第二服务器的标识和所述第一服务器与所述第二服务器的通讯质量,所述第一服务器与所述第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
判断所述通讯质量是否高于预设质量阈值;
若所述通讯质量高于预设质量阈值,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为正常状态;
若所述通讯质量不高于预设质量阈值,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为异常状态。
结合第一方面的第二种可实现方式,在第一方面的第三种可实现方式中,所述通讯质量信息是所述第一服务器中所部署的虚拟机与所述第二服务器中所部署的虚拟机执行通讯业务时发送的;
或者,所述通讯质量信息是所述第一服务器向所述第二服务器发送探测包,并收到所述第二服务器发送的探测响应包后,根据所述探测包和所述探测响应包生成的。
结合第一方面,在第一方面的第四种可实现方式中,所述将所述目的虚拟机部署在所述目的服务器中,包括:
确定所述目的服务器的个数;
若所述目的服务器的个数等于1,将所述目的虚拟机部署在所述目的服务器中;
若所述目的服务器的个数大于1,根据预设规则从所述目的服务器的集合中选择部署服 务器;
将所述目的虚拟机部署在所述部署服务器中。
结合第一方面的第四种可实现方式,在第一方面的第五种可实现方式中,所述根据预设规则从所述目的服务器的集合中选择部署服务器,包括:
从所述虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,所述预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
筛选所述备选服务器集合中与所述目的服务器的集合中相同的服务器得到备选部署服务器集合;
根据亲和性算法从所述备选部署服务器集合中选择部署服务器。
第二方面,提供了一种虚拟机部署装置,所述装置包括:
查询单元,用于查询与目的虚拟机存在通讯业务的对端虚拟机,所述目的虚拟机为待迁移虚拟机或者待部署虚拟机;
第一确定单元,用于确定部署有所述对端虚拟机的服务器;
获取单元,用于从预设的通讯矩阵中获取目的服务器,所述目的服务器与所述部署有所述对端虚拟机的服务器的通讯状态为正常状态,所述通讯矩阵中记录了任意两个服务器之间的通讯状态,所述通讯状态包括正常状态或异常状态;
部署单元,用于将所述目的虚拟机部署在所述目的服务器中。
结合第二方面,在第二方面的第一种可实现方式中,所述目的虚拟机为待迁移虚拟机,所述装置还包括:
第一接收单元,用于接收异常虚拟机发送的指示所述异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
第二确定单元,用于根据所述通讯异常信息,确定部署有所述异常虚拟机的异常服务器;
第一统计单元,用于统计虚拟机管理模块管理的服务器中的异常服务器的个数;
第三确定单元,用于在所述虚拟机管理模块管理的服务器中的异常服务器的个数等于1时,将所述异常虚拟机确定为所述目的虚拟机;
第二统计单元,用于在所述虚拟机管理模块管理的服务器中的异常服务器的个数大于1时,查询所述通讯矩阵,统计每个所述异常服务器与其他异常服务器的通讯状态为异常状态的次数;
第四确定单元,用于将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
第五确定单元,用于将所述目标服务器中所部署的异常虚拟机确定为所述目的虚拟机。
结合第二方面,在第二方面的第二种可实现方式中,所述装置还包括:
第二接收单元,用于接收第一服务器发送的通讯质量信息,所述通讯质量信息包括第一服务器的标识、第二服务器的标识和所述第一服务器与所述第二服务器的通讯质量,所述第一服务器与所述第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
判断单元,用于判断所述通讯质量是否高于预设质量阈值;
第一记录单元,用于在所述通讯质量高于预设质量阈值时,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为正常状态;
第二记录单元,用于在所述通讯质量不高于预设质量阈值时,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为异常状态。
结合第二方面的第二种可实现方式,在第二方面的第三种可实现方式中,所述通讯质量信息是所述第一服务器中所部署的虚拟机与所述第二服务器中所部署的虚拟机执行通讯业务时发送的;
或者,所述通讯质量信息是所述第一服务器向所述第二服务器发送探测包,并收到所述第二服务器发送的探测响应包后,根据所述探测包和所述探测响应包生成的。
结合第二方面,在第二方面的第四种可实现方式中,所述部署单元,包括:
确定子单元,用于确定所述目的服务器的个数;
第一部署子单元,用于在所述目的服务器的个数等于1时,将所述目的虚拟机部署在所述目的服务器中;
选择子单元,用于在所述目的服务器的个数大于1时,根据预设规则从所述目的服务器的集合中选择部署服务器;
第二部署子单元,用于将所述目的虚拟机部署在所述部署服务器中。
结合第二方面的第四种可实现方式,在第二方面的第五种可实现方式中,所述第二部署子单元,还用于:
从所述虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,所述预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
筛选所述备选服务器集合中与所述目的服务器的集合中相同的服务器得到备选部署服务器集合;
根据亲和性算法从所述备选部署服务器集合中选择部署服务器。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的一种虚拟机部署方法及装置,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域 普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种云化网络架构图;
图2是本发明实施例提供的一种虚拟机部署装置结构示意图;
图3是本发明实施例提供的一种虚拟机部署方法的流程图;
图4-1是本发明实施例提供的另一种虚拟机部署方法的流程图;
图4-2是本发明实施例提供的一种数据中心的网络拓扑结构图;
图4-3是本发明实施例提供的一种从异常虚拟机中确定目的虚拟机的方法流程图;
图4-4是本发明实施例提供的一种从目的服务器的集合中选择部署服务器的方法流程图;
图5-1是本发明实施例提供的另一种虚拟机部署装置结构示意图;
图5-2是本发明实施例提供的再一种虚拟机部署装置结构示意图;
图5-3是本发明实施例提供的一种部署单元的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的一种云化网络架构图,如图1所示,该云化电信网的数据中心内部网络包括多个服务器,多个虚拟机可以部署在不同的服务器上,例如虚拟机VM1,VM2,VM3和VM4都部署在不同的服务器上。数据中心的服务器之间通过数据中心的核心层交换机、汇聚层交换机(英文:End Of Row;简称:EOR)和接入层交换机,也称为架顶交换机(英文:Top Of Rack;简称:TOR)等不同层次的交换机互联起来为虚拟机之间的通讯提供通讯通道。图1中的双箭头实线表示不同VM之间的通讯。按照数据中心云计算的特点,虚拟机管理模块可以对数据中心的VM进行任意的部署和迁移,也就意味着VM之间的通讯流量依据VM部署位置的不同,流量有可能经过TOR,EOR和核心交换机(例如虚拟机VM1与虚拟机VM4之间的通讯),也可能只经过TOR和EOR,或者只经过TOR,或者流量只在服务器内部(例如虚拟机VM2和VM3之间的通讯)。
本发明实施例提供了一种虚拟机部署装置,如图2所示,该虚拟机部署装置包括:处理器201,存储器202和总线203。该总线203用于连接处理器201和存储器202,处理器201用于执行存储器202中存储的程序2021;
处理器201,用于查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机为待迁移虚拟机或者待部署虚拟机。
处理器201,还用于确定部署有该对端虚拟机的服务器。
处理器201,还用于从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之间的通 讯状态,该通讯状态包括正常状态或异常状态。
处理器201,还用于将该目的虚拟机部署在该目的服务器中。
可选的,该目的虚拟机为待迁移虚拟机,该处理器201,还用于:
接收异常虚拟机发送的指示该异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
根据该通讯异常信息,确定部署有该异常虚拟机的异常服务器;
统计虚拟机管理模块管理的服务器中的异常服务器的个数;
在该虚拟机管理模块管理的服务器中的异常服务器的个数等于1时,将该异常虚拟机确定为该目的虚拟机;
在该虚拟机管理模块管理的服务器中的异常服务器的个数大于1时,查询该通讯矩阵,统计每个该异常服务器与其他异常服务器的通讯状态为异常状态的次数;
将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
将该目标服务器中所部署的异常虚拟机确定为该目的虚拟机。
可选的,该处理器201,还用于:
接收第一服务器发送的通讯质量信息,该通讯质量信息包括第一服务器的标识、第二服务器的标识和该第一服务器与该第二服务器的通讯质量,该第一服务器与该第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
判断该通讯质量是否高于预设质量阈值;
在该通讯质量高于预设质量阈值时,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为正常状态;
在该通讯质量不高于预设质量阈值时,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为异常状态。
可选的,该通讯质量信息是该第一服务器中所部署的虚拟机与该第二服务器中所部署的虚拟机执行通讯业务时发送的;
或者,该通讯质量信息是该第一服务器向该第二服务器发送探测包,并收到该第二服务器发送的探测响应包后,根据该探测包和该探测响应包生成的。
可选的,该处理器201,还用于:
确定该目的服务器的个数;
在该目的服务器的个数等于1时,将该目的虚拟机部署在该目的服务器中;
在该目的服务器的个数大于1时,根据预设规则从该目的服务器的集合中选择部署服务器;
将该目的虚拟机部署在该部署服务器中。
可选的,该处理器201,还用于:
从该虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,该预 设参数包括CPU资源、存储资源和网口带宽中的至少一种;
筛选该备选服务器集合中与该目的服务器的集合中相同的服务器得到备选部署服务器集合;
根据亲和性算法从该备选部署服务器集合中选择部署服务器。
综上所述,本发明实施例提供的一种虚拟机部署装置,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
本发明实施例提供了一种虚拟机部署方法,该方法可以应用于图1所示的虚拟机管理模块中,参见图3,该方法包括:
步骤301、查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机为待迁移虚拟机或者待部署虚拟机。
步骤302、确定部署有该对端虚拟机的服务器。
步骤303、从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之间的通讯状态,该通讯状态包括正常状态或异常状态。
步骤304、将该目的虚拟机部署在该目的服务器中。
综上所述,本发明实施例提供的一种虚拟机部署方法,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
可选的,该目的虚拟机为待迁移虚拟机,在该查询与目的虚拟机存在通讯业务的对端虚拟机之前,该方法还包括:
接收异常虚拟机发送的指示该异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
根据该通讯异常信息,确定部署有该异常虚拟机的异常服务器;
统计虚拟机管理模块管理的服务器中的异常服务器的个数;
若该虚拟机管理模块管理的服务器中的异常服务器的个数等于1,将该异常虚拟机确定为该目的虚拟机;
若该虚拟机管理模块管理的服务器中的异常服务器的个数大于1,查询该通讯矩阵,统计每个该异常服务器与其他异常服务器的通讯状态为异常状态的次数;
将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
将该目标服务器中所部署的异常虚拟机确定为该目的虚拟机。
可选的,在查询与目的虚拟机存在通讯业务的对端虚拟机之前,该方法还包括:
接收第一服务器发送的通讯质量信息,该通讯质量信息包括第一服务器的标识、第二服务器的标识和该第一服务器与该第二服务器的通讯质量,该第一服务器与该第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
判断该通讯质量是否高于预设质量阈值;
若该通讯质量高于预设质量阈值,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为正常状态;
若该通讯质量不高于预设质量阈值,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为异常状态。
可选的,该通讯质量信息是该第一服务器中所部署的虚拟机与该第二服务器中所部署的虚拟机执行通讯业务时发送的;
或者,该通讯质量信息是该第一服务器向该第二服务器发送探测包,并收到该第二服务器发送的探测响应包后,根据该探测包和该探测响应包生成的。
可选的,将该目的虚拟机部署在该目的服务器中,包括:
确定该目的服务器的个数;
若该目的服务器的个数等于1,将该目的虚拟机部署在该目的服务器中;
若该目的服务器的个数大于1,根据预设规则从该目的服务器的集合中选择部署服务器;
将该目的虚拟机部署在该部署服务器中。
可选的,根据预设规则从该目的服务器的集合中选择部署服务器,包括:
从该虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,该预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
筛选该备选服务器集合中与该目的服务器的集合中相同的服务器得到备选部署服务器集合;
根据亲和性算法从该备选部署服务器集合中选择部署服务器。
综上所述,本发明实施例提供的一种虚拟机部署方法,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
图4-1是本发明实施例提供的另一种虚拟机部署方法流程图,该方法可以应用于图1所示的虚拟机管理模块中,如图4-1所示,该方法包括:
步骤401、接收第一服务器发送的通讯质量信息。执行步骤402。
该通讯质量信息包括第一服务器的标识、第二服务器的标识和该第一服务器与该第二服务器的通讯质量,该第一服务器与该第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器。
在本发明实施例中,该第一服务器的标识可以为该第一服务器的媒体访问控制(英文:Media Access Control;简称:MAC)地址,也可以为该第一服务器的互联网协议(英文:Internet Protocol;简称:IP)地址。该通讯质量可以包括该第一服务器与第二服务器发送数据包时的时延、抖动和丢包率等参数。
一方面,该通讯质量信息可以是该第一服务器中所部署的虚拟机与该第二服务器中所部署的虚拟机执行通讯业务时发送的。在本发明实施例中,虚拟机管理模块管理的每个服务器中可以部署有多个虚拟机,该多个虚拟机中的每一个虚拟机都可以在与对端虚拟机的执行通讯业务时,检测与对端虚拟机的通讯质量,并将该通讯质量发送至虚拟机管理模块。示例的,假设部署在第一服务器A中的虚拟机VM1与部署在第二服务器B中的虚拟机VM2之间存在通讯业务,并且该第一服务器A和第二服务器B的MAC地址分别为:12-3e-d4-55-c6-f7,12-3e-d4-55-c6-f8。则VM1可以在与VM2执行通讯业务时,检测VM1与VM2之间的通讯质量,如VM1向VM2发送数据包的时延、抖动和丢包率等,假设VM1向VM2发送数据包的时延为30毫秒(ms),抖动为3ms,丢包率为0.005,则VM1可以将该通讯质量:时延:30ms,抖动:3ms,丢包率:0.005,以及部署有VM1的第一服务器A的标识:12-3e-d4-55-c6-f7和部署有VM2的第二服务器B的标识:12-3e-d4-55-c6-f8发送至虚拟机管理模块。
另一方面,该通讯质量信息可以是该第一服务器向该第二服务器发送探测包,并收到该第二服务器发送的探测响应包后,根据该探测包和该探测响应包生成的。在本发明实施例中,该虚拟机管理模块管理的每个服务器中还可以设置有通讯检测模块,每个服务器中的通讯检测模块可以向其他服务器中的通讯检测模块发送探测包,并在接收到其他服务器中的通讯探测模块发送探测响应包后,生成通讯质量信息。示例的,假设第一服务器A中设置的通讯检测模块A1向第二服务器B中设置的通讯检测模块B1发送了探测包,并根据接收到B1发送的探测响应包,获取到通讯检测模块A1向通讯检测模块B1发送的探测包的时延为30ms,抖动为3ms,丢包率为0.005,则第一服务器A生成的通讯质量信息可以包括:第一服务器A的标识:12-3e-d4-55-c6-f7;第二服务器B的标识:12-3e-d4-55-c6-f8;通讯质量:时延:30ms,抖动:3ms,丢包率:0.005。
需要说明的是,在实际应用中,该虚拟机管理模块可以为虚拟网络功能管理模块(英文:Virtual Network Feature Manager;简称:VNFM),也可以为虚拟机管理器(英文:VM Manager)等,本发明实施例不做限定。
步骤402、判断通讯质量是否高于预设质量阈值。
若该通讯质量高于预设质量阈值,执行步骤403;若该通讯质量不高于预设质量阈值, 执行步骤404。
步骤403、在通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为正常状态。执行步骤405。
在本发明实施例中,该通讯矩阵用于记录虚拟机管理模块管理的服务器中任意两个服务器之间的通讯状态。该虚拟机管理模块中可以存储有预设质量阈值,当第一服务器发送的通讯质量信息中的通讯质量高于该预设质量阈值时,虚拟机管理模块可以在通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为正常状态。示例的,假设该预设质量阈值为:时延:50ms,抖动:5ms,丢包率:0.01,并且当第一服务器A发送的与第二服务器B的通讯质量中的时延、抖动和丢包率越小,虚拟机管理模块确定该第一服务器A与第二服务器B的通讯质量越高,即当第一服务器A发送的通讯质量为:时延:30ms,抖动:3ms,丢包率:0.005时,由于该通讯质量中的时延:30ms小于质量阈值中的时延:50ms,通讯质量中的抖动:3ms小于质量阈值中的抖动:5ms,通讯质量中的丢包率:0.005小于质量阈值中的丢包率0.01,则虚拟机管理模块可以确定该通讯质量高于该预设质量阈值,并在通讯矩阵中记录该第一服务器A与该第二服务器B的通讯状态为正常状态。
步骤404、在通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为异常状态。执行步骤405。
当第一服务器发送的通讯质量信息中的通讯质量不高于该预设质量阈值时,虚拟机管理模块可以在通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为异常状态。示例的,假设该预设质量阈值为:时延:50ms,抖动:5ms,丢包率:0.01,当第一服务器A发送的通讯质量为:时延:60ms,抖动:7ms,丢包率:0.015时,由于该通讯质量中的时延:60ms大于质量阈值中的时延:50ms,通讯质量中的抖动:7ms大于质量阈值中的抖动:5ms,通讯质量中的丢包率:0.015大于质量阈值中的丢包率0.01,则虚拟机管理模块可以确定该通讯质量不高于该预设质量阈值,并在通讯矩阵中记录该第一服务器A与该第二服务器B的通讯状态为异常状态。
在本发明实施例中,假设数据中心的虚拟机管理模块管理的服务器包括服务器A-H,该服务器A-H所在的数据中心的网络拓扑结构图可以如图4-2所示,在图4-2所示的网络拓扑结构图中,包括核心层交换机01,汇聚层交换机02和接入层交换机03,该不同层次的交换机的互联可以建立起多种通讯通道,能够满足服务器A-H中任意两个服务器之间的通讯。假设在图4-2所示的网络拓扑结构中,交换机X发生故障,导致所有经过该交换机的通讯业务都受到影响,此时虚拟机管理模块根据接收到的服务器A-H发送的通讯质量信息,生成的通讯矩阵可以如表1所示,表1中示出了虚拟机管理模块管理的服务器A-H中任意两个服务器之间的通讯状态,其中√表示两个服务器之间通讯状态为正常状态,×表示两个服务器之间的通讯状态为异常状态。示例的,如表1所示,服务器A与服务器B的通讯状态为正常状态,服务器A与服务器C-H的通讯状态均为异常状态;服务器H与服务器A-D的通讯状态均为异 常状态,服务器H与服务器E-G的通讯状态均为正常状态。
表1
  A B C D E F G H
A × × × × × ×
B × × × × × ×
C × × × × × ×
D × × × × × ×
E × × × ×
F × × × ×
G × × × ×
H × × × ×
需要说明的是,在实际应用中,由于一个服务器中可以部署有多个虚拟机,当两个服务器中部署的多个虚拟机之间都存在通讯业务,并且该多个虚拟机都向虚拟机管理模块发送了与对端虚拟机之间的通讯质量信息时,则虚拟机管理模块只要判断出任一虚拟机发送的与对端服务器中部署的虚拟机的通讯质量高于质量阈值时,就可以确定该两个服务器之间的通讯状态为正常状态。示例的,假设服务器A中部署的虚拟机包括VM1和VM3,服务器B中部署的虚拟机包括VM2和VM4,其中VM1与VM2之间存在通讯业务,VM3与VM4之间存在通讯业务,并且VM1向虚拟机管理模块发送了与VM2的通讯质量信息S1,VM3向虚拟机管理模块发送了与VM4的通讯质量信息S2,则S1和S2中包括的服务器标识均为:服务器A的标识和服务器B的标识。如果虚拟机管理模块判断通讯质量信息S1中包括的通讯质量高于质量阈值,但通讯质量信息S2中包括的通讯质量不高于质量阈值,则虚拟机管理模块可以确定服务器A与服务器B之间的通讯状态为正常状态,即服务器A与服务器B中只要有任意两个虚拟机可以正常通讯,即可确定该两个服务器之间的通讯链路为正常状态,而对于通讯质量低于质量阈值的两个虚拟机VM3和VM4,一般情况下虚拟机管理模块确定是该两个虚拟机自身出现了通讯故障。
还需要说明的是,虚拟机管理模块可以根据接收到的服务器发送的通讯质量信息,对通讯质量矩阵进行实时的更新和维护,以提高该通讯矩阵的可靠性,进而保证根据该通讯矩阵 进行部署和迁移的虚拟机能够与存在通讯业务的对端虚拟机进行正常通讯。
步骤405、查询与目的虚拟机存在通讯业务的对端虚拟机。执行步骤406。
该目的虚拟机为待迁移虚拟机或者待部署虚拟机。在本发明实施例中,当数据中心根据业务负荷确定需要扩容时,可以在虚拟机管理模块管理的服务器中部署新的虚拟机,该新的虚拟机即为待部署虚拟机;当数据中心的某个服务器出现异常、数据中心网络故障或者某个服务器需要主动维护等情况下,需要把出现异常的服务器中部署的虚拟机迁移到其他的服务器上,该异常服务器中部署的虚拟机即为待迁移虚拟机。当虚拟机管理模块确定目的虚拟机后,可以在数据库中查询与该目的虚拟机存在通讯业务的对端虚拟机。示例的,假设目的虚拟机为待部署虚拟机VM7,则虚拟机管理模块查询到的与该待部署虚拟机VM7存在通讯业务的对端虚拟机可以为VM8和VM9。
需要说明的是,当数据中心的某个交换节点出现故障时,会导致经过该交换节点的多个VM之间的通讯都收到影响,此时虚拟机管理模块需要将受到影响的异常虚拟机迁移到其他服务器中,在异常虚拟机迁移过程中,为避免对数据中心影响过大,要尽可能减少待迁移的异常虚拟机,因此,在虚拟机管理模块在查询与目的虚拟机存在通讯业务的对端虚拟机之前,还需要从异常虚拟机中确定目的虚拟机,即待迁移的异常虚拟机。图4-3是本发明实施例提供的一种从异常虚拟机中确定目的虚拟机的方法流程图,如图4-3所示,该方法包括:
步骤4051、接收异常虚拟机发送的指示该异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息。执行步骤4052。
在本发明实施例中,当虚拟机检测到在与其他虚拟机之间的通讯状态为异常状态时,可以向虚拟机管理模块发送通讯异常信息。示例的,假设虚拟机VM1检测到与虚拟机VM2之间的通讯状态为异常状态时,VM1可以向虚拟机管理模块发送通讯异常信息。
步骤4052、根据该通讯异常信息,确定部署有该异常虚拟机的异常服务器。执行步骤4053。
示例的,虚拟机管理模块可以根据接收到的通讯异常信息,确定部署有该异常虚拟机VM1的异常服务器为:服务器A。
步骤4053、统计虚拟机管理模块管理的服务器中的异常服务器的个数。
若该虚拟机管理模块管理的服务器中的异常服务器的个数等于1,执行步骤4054;若该虚拟机管理模块管理的服务器中的异常服务器的个数大于1,执行步骤4055。示例的,虚拟机管理模块在确定部署有异常虚拟机VM1的异常服务器为:服务器A之后,可以统计该虚拟机管理模块管理的服务器中的异常服务器的个数为1,并执行步骤4054。
步骤4054、将该异常虚拟机确定为该目的虚拟机。
若该虚拟机管理模块管理的服务器中的异常服务器的个数等于1,则将该异常虚拟机确定为该目的虚拟机。示例的,假设虚拟机管理模块确定的异常服务器为:服务器A,则由于该异常服务器的个数为1,则虚拟机管理模块可以将异常虚拟机VM1确定为目的虚拟机。
步骤4055、查询通讯矩阵,统计每个异常服务器与其他异常服务器的通讯状态为异常状 态的次数。执行步骤4056。
若该虚拟机管理模块管理的服务器中的异常服务器的个数大于1,则虚拟机管理模块可以查询通讯矩阵,统计每个异常服务器与其他异常服务器的通讯状态为异常状态的次数。示例的,假设虚拟机VM1、VM2和VM5向虚拟机管理模块发送了通讯异常信息,虚拟机管理模块确定部署有异常虚拟机VM1的异常服务器为:服务器A,部署有异常虚拟机VM2的异常服务器为:服务器B,部署有异常虚拟机VM5的异常服务器为:服务器C,则由于该异常服务器的个数为3,大于1,因此虚拟机管理模块可以查询通讯矩阵,分别统计异常服务器A-C与其他异常服务器的通讯状态为异常状态的次数。从表1所示的通讯矩阵中可以看出,异常服务器A与异常服务器B的通讯状态为正常状态,与异常服务器C的通讯状态为异常状态,则虚拟机管理模块可以确定异常服务器A与其他异常服务器B和C的通讯状态为异常状态的次数为1;同理,虚拟机管理模块还可以统计得到异常服务器B与其他异常服务器的通讯状态为异常状态的次数为1,异常服务器C与其他异常服务器的通讯状态为异常状态的次数为2。
步骤4056、将通讯状态为异常状态的次数最多的服务器确定为目标服务器。执行步骤4057。
示例的,由于在异常服务器A-C中,异常服务器C与其他异常服务器的通讯状态为异常状态的次数为2,通讯状态为异常状态的次数最多,则虚拟机管理模块可以将该异常服务器C确定为目标服务器。
步骤4057、将该目标服务器中所部署的异常虚拟机确定为该目的虚拟机。
在本发明实施例中,若该目标服务器中还部署有其他虚拟机,但其他虚拟机没有向虚拟机管理模块发送异常通讯信息,即该其他虚拟机不为异常虚拟机,则虚拟机管理模块不会将该其他虚拟机也确定为目的虚拟机。示例的,虚拟机管理模块可以将目标服务器C中部署的异常虚拟机VM5确定为目的虚拟机,即待迁移虚拟机。如果目标服务器C中还部署了虚拟机VM6,但VM6可以与存在通讯业务的对端虚拟机正常执行通讯业务,则虚拟机管理模块不用将VM6确定为待迁移虚拟机。
步骤406、确定部署有该对端虚拟机的服务器。执行步骤407。
虚拟机管理模块的数据库中可以记录有每个服务器中所部署的虚拟机,因此当虚拟机管理模块确定了与目的虚拟机存在通讯业务的对端虚拟机后,可以查询每个服务器中所部署的虚拟机,确定部署有对端虚拟机的服务器。示例的,假设虚拟机管理模块查询到的与待部署虚拟机VM7存在通讯业务的对端虚拟机为VM8和VM9,则虚拟机管理模块可以确定部署有虚拟机VM8的服务器为服务器G,部署有虚拟机VM9的服务器为服务器H。
步骤407、从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态。执行步骤408。
在本发明实施例中,该通讯矩阵中记录了任意两个服务器之间的通讯状态,该通讯状态包括正常状态或异常状态。若部署有对端虚拟机的服务器包括多个服务器,则该目的服务器 与该多个服务器之间的通讯状态应当均为正常状态。示例的,对于部署有虚拟机VM8和VM9的服务器G和服务器H,通过查询表1所示的通讯矩阵可知,与该服务器G和服务器H的通讯状态均为正常状态的服务器包括:服务器E,服务器F,服务器G和服务器H,则虚拟机管理模块可以将服务器E-H确定为目的服务器。若虚拟机管理模块从预设的通讯矩阵中没有获取到与该部署有对端虚拟机的服务器的通讯状态为正常状态的目的服务器,则可以根据所管理的各服务器的CPU资源的大小,存储资源的大小以及网口带宽的大小来选择合适的服务器作为VM部署和迁移的目的服务器。
需要说明的是,如果该目的虚拟机为待迁移虚拟机,当虚拟机管理模块从预设的通讯矩阵中获取了目的服务器之后,还需要从该目的服务器中将部署有该待迁移虚拟机的源服务器删除,并将除该源服务器之外的服务器作为目的服务。示例的,假设服务器E出现故障需要维护,虚拟机管理模块需要将该服务器E中部署的虚拟机VM0迁移至其他服务器,与该虚拟机VM0存在通讯业务的虚拟机为:虚拟机VM8和VM9,其中部署有虚拟机VM8的服务器为服务器G,部署有VM9的服务器为服务器H,通过查询表1所示的通讯矩阵可知,与服务器G和服务器H的通讯状态均为正常状态的服务器包括:服务器E,服务器F,服务器G和服务器H,则虚拟机管理模块可以将服务器E-H确定为目的服务器,由于目的服务器中的服务器E为部署有待迁移虚拟机:VM0的源服务器,因此虚拟机管理模块需要从目的服务器中将该源服务器:服务器E删除,此时,更新后的目的服务器为:服务器F,服务器G和服务器H。
步骤408、统计该目的服务器的个数。
若该目的服务器的个数等于1,执行步骤409;若该目的服务器的个数大于1,执行步骤410;若该目的服务器的个数小于1,则虚拟机管理模块可以确定从预设的通讯矩阵中没有获取到与该部署有对端虚拟机的服务器的通讯状态为正常状态的目的服务器,则可以根据所管理的各服务器的CPU资源的大小,存储资源的大小以及网口带宽的大小来选择合适的服务器作为VM部署和迁移的目的服务器。示例的,假设虚拟机管理模块获取的目的服务器为:服务器E,服务器F,服务器G和服务器H,则虚拟机管理模块可以统计得到该目的服务器的个数为4,大于1,因此执行步骤410。
步骤409、将该目的虚拟机部署在该目的服务器中。
若该目的服务器的个数等于1,则虚拟机管理模块可以直接将该目的虚拟机部署在该目的服务器中。
步骤410、根据预设规则从该目的服务器的集合中选择部署服务器。执行步骤411。
若该目的服务器的个数大于1,则虚拟机管理模块可以根据预设规则从该目的服务器的集合中选择部署服务器。示例的,虚拟机管理模块可以根据预设规则从目的服务器的集合{服务器E,服务器F,服务器G,服务器H}中选择部署服务器。
图4-4是本发明实施例提供的一种从目的服务器的集合中选择部署服务器的方法流程图,如图4-4所示,该方法包括:
步骤4101、从虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合。
该预设参数包括CPU资源、存储资源和网口带宽中的至少一种。在本发明实施例中,虚拟机管理模块可以根据目的虚拟机的CUP和内存等参数,在虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合。示例的,假设目的虚拟机为待部署虚拟机VM7,预设参数为CPU资源、存储资源和网口带宽,虚拟机管理模块根据虚拟机VM7的CPU和内存设定的预设参数的标准为:CPU的主频为4吉赫兹(GHz)以上,存储资源为8千兆字节(GB)以上,网口带宽为10兆比特每秒(Mbps)以上,则虚拟机管理模块从该虚拟机管理模块管理的服务器中筛选的满足上述预设参数的标准的备选服务器集合可以为{服务器A,服务器E,服务器F,服务器G}。
步骤4102、筛选该备选服务器集合中与该目的服务器的集合中相同的服务器得到备选部署服务器集合。
虚拟机管理模块可以对备选服务器集合和目的服务器的集合取交集,得到备选部署服务器集合。示例的,假设目的服务器的集合为{服务器E,服务器F,服务器G,服务器H},虚拟机管理模块筛选的备选服务器集合为{服务器A,服务器E,服务器F,服务器G},则虚拟机管理模块对该两个服务器集合取交集,筛选得到的备选部署服务器集合可以为:{服务器E,服务器F,服务器G}。
步骤4103、根据亲和性算法从该备选部署服务器集合中选择部署服务器。
亲和性算法是指从备选部署服务器集合中,选择与部署有对端虚拟机的服务器之间通讯路径最短的服务器作为部署服务器。示例的,假设与目的虚拟机VM7存在通讯业务的对端虚拟机为VM8和VM9,部署有VM8的服务器为服务器G,部署有VM9的服务器为服务器H,则从图4-2所示的网络拓扑结构中可以看出,备选部署服务器集合{服务器E,服务器F,服务器G}中,与服务器G之间通讯路径最短的服务器为服务器G,与服务器H的之间通讯路径最短的服务器也是服务器G,则虚拟机管理模块可以将服务器G选择为部署服务器。
需要说明的是,除了亲和性算法,虚拟机管理模块还可以从备选部署服务器集合中随机选择一个服务器作为部署服务器。
步骤411、将该目的虚拟机部署在该部署服务器中。
示例的,虚拟机管理模块可以将目的虚拟机VM7部署在部署服务器:服务器G中。
需要说明的是,本发明实施例提供的虚拟机部署方法的步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减。示例的,步骤401至步骤404可以和步骤405同时执行,也可以在步骤405之后执行。任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。
还需要说明的是,本发明实施例提供的虚拟机部署方法,除了可以应用于图1所示的数据中心内部的应用场景中,还可以应用于云化电信网的跨数据中心的应用场景中。在跨数据 中心的场景中,虚拟机部署方法可以由任一数据中心的虚拟机管理模块执行,该虚拟机管理模块可以包括VM Manager,VNFM和NFV管理编排器(英文:NFV Management and Orchestration;简称:NFV MANO)等,本发明实施例不做限定。
综上所述,本发明实施例提供的一种虚拟机部署方法,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
本发明实施例提供了一种虚拟机部署装置,如图5-1所示,该虚拟机部署装置500包括:查询单元501,第一确定单元502,获取单元503和部署单元504,
查询单元501,用于查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机为待迁移虚拟机或者待部署虚拟机。
第一确定单元502,用于确定部署有该对端虚拟机的服务器。
获取单元503,用于从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之间的通讯状态,该通讯状态包括正常状态或异常状态。
部署单元504,用于将该目的虚拟机部署在该目的服务器中。
综上所述,本发明实施例提供的一种虚拟机部署装置,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
本发明实施例提供了另一种虚拟机部署装置,如图5-2所示,该虚拟机部署装置500包括:
查询单元501,用于查询与目的虚拟机存在通讯业务的对端虚拟机,该目的虚拟机为待迁移虚拟机或者待部署虚拟机。
第一确定单元502,用于确定部署有该对端虚拟机的服务器。
获取单元503,用于从预设的通讯矩阵中获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,该通讯矩阵中记录了任意两个服务器之间的通讯状态,该通讯状态包括正常状态或异常状态。
部署单元504,用于将该目的虚拟机部署在该目的服务器中。
第一接收单元505,用于接收异常虚拟机发送的指示该异常虚拟机与其他虚拟机通讯状 态为异常状态的通讯异常信息。
第二确定单元506,用于根据该通讯异常信息,确定部署有该异常虚拟机的异常服务器。
第一统计单元507,用于统计虚拟机管理模块管理的服务器中的异常服务器的个数。
第三确定单元508,用于在该虚拟机管理模块管理的服务器中的异常服务器的个数等于1时,将该异常虚拟机确定为该目的虚拟机。
第二统计单元509,用于在该虚拟机管理模块管理的服务器中的异常服务器的个数大于1时,查询该通讯矩阵,统计每个该异常服务器与其他异常服务器的通讯状态为异常状态的次数。
第四确定单元510,用于将通讯状态为异常状态的次数最多的服务器确定为目标服务器。
第五确定单元511,用于将该目标服务器中所部署的异常虚拟机确定为该目的虚拟机。
第二接收单元512,用于接收第一服务器发送的通讯质量信息,该通讯质量信息包括第一服务器的标识、第二服务器的标识和该第一服务器与该第二服务器的通讯质量,该第一服务器与该第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器。
判断单元513,用于判断该通讯质量是否高于预设质量阈值。
第一记录单元514,用于在该通讯质量高于预设质量阈值时,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为正常状态;
第二记录单元515,用于在该通讯质量不高于预设质量阈值时,在该通讯矩阵中记录该第一服务器与该第二服务器的通讯状态为异常状态。
可选的,该通讯质量信息是该第一服务器中所部署的虚拟机与该第二服务器中所部署的虚拟机执行通讯业务时发送的;
或者,该通讯质量信息是该第一服务器向该第二服务器发送探测包,并收到该第二服务器发送的探测响应包后,根据该探测包和该探测响应包生成的。
图5-3是本发明实施例提供的一种部署单元504的结构示意图,如图5-3所示,该部署单元504包括:
确定子单元5041,用于确定该目的服务器的个数。
第一部署子单元5042,用于在该目的服务器的个数等于1时,将该目的虚拟机部署在该目的服务器中。
选择子单元5043,用于在该目的服务器的个数大于1时,根据预设规则从该目的服务器的集合中选择部署服务器。
第二部署子单元5044,用于将该目的虚拟机部署在该部署服务器中。
可选的,该第二部署子单元5044,还用于:
从该虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,该预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
筛选该备选服务器集合中与该目的服务器的集合中相同的服务器得到备选部署服务器集 合;
根据亲和性算法从该备选部署服务器集合中选择部署服务器。
综上所述,本发明实施例提供的一种虚拟机部署装置,虚拟机管理模块在部署目的虚拟机时,可以查询与目的虚拟机存在通讯业务的对端虚拟机,确定部署有该对端虚拟机的服务器,并能够根据预设的通讯矩阵,获取目的服务器,该目的服务器与该部署有该对端虚拟机的服务器的通讯状态为正常状态,因此,将该目的虚拟机部署至该目的服务器后,可以保证该目的虚拟机与对端虚拟机之间的通讯业务能够正常执行,提高了虚拟机之间通讯的可靠性。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

  1. 一种虚拟机部署方法,其特征在于,所述方法包括:
    查询与目的虚拟机存在通讯业务的对端虚拟机,所述目的虚拟机为待迁移虚拟机或者待部署虚拟机;
    确定部署有所述对端虚拟机的服务器;
    从预设的通讯矩阵中获取目的服务器,所述目的服务器与所述部署有所述对端虚拟机的服务器的通讯状态为正常状态,所述通讯矩阵中记录了任意两个服务器之间的通讯状态,所述通讯状态包括正常状态或异常状态;
    将所述目的虚拟机部署在所述目的服务器中。
  2. 根据权利要求1所述的方法,其特征在于,所述目的虚拟机为待迁移虚拟机,在所述查询与目的虚拟机存在通讯业务的对端虚拟机之前,所述方法还包括:
    接收异常虚拟机发送的指示所述异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
    根据所述通讯异常信息,确定部署有所述异常虚拟机的异常服务器;
    统计虚拟机管理模块管理的服务器中的异常服务器的个数;
    若所述虚拟机管理模块管理的服务器中的异常服务器的个数等于1,将所述异常虚拟机确定为所述目的虚拟机;
    若所述虚拟机管理模块管理的服务器中的异常服务器的个数大于1,查询所述通讯矩阵,统计每个所述异常服务器与其他异常服务器的通讯状态为异常状态的次数;
    将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
    将所述目标服务器中所部署的异常虚拟机确定为所述目的虚拟机。
  3. 根据权利要求1所述的方法,其特征在于,在所述查询与目的虚拟机存在通讯业务的对端虚拟机之前,所述方法还包括:
    接收第一服务器发送的通讯质量信息,所述通讯质量信息包括第一服务器的标识、第二服务器的标识和所述第一服务器与所述第二服务器的通讯质量,所述第一服务器与所述第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
    判断所述通讯质量是否高于预设质量阈值;
    若所述通讯质量高于预设质量阈值,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为正常状态;
    若所述通讯质量不高于预设质量阈值,在所述通讯矩阵中记录所述第一服务器与所述第 二服务器的通讯状态为异常状态。
  4. 根据权利要求3所述的方法,其特征在于,
    所述通讯质量信息是所述第一服务器中所部署的虚拟机与所述第二服务器中所部署的虚拟机执行通讯业务时发送的;
    或者,所述通讯质量信息是所述第一服务器向所述第二服务器发送探测包,并收到所述第二服务器发送的探测响应包后,根据所述探测包和所述探测响应包生成的。
  5. 根据权利要求1所述的方法,其特征在于,所述将所述目的虚拟机部署在所述目的服务器中,包括:
    确定所述目的服务器的个数;
    若所述目的服务器的个数等于1,将所述目的虚拟机部署在所述目的服务器中;
    若所述目的服务器的个数大于1,根据预设规则从所述目的服务器的集合中选择部署服务器;
    将所述目的虚拟机部署在所述部署服务器中。
  6. 根据权利要求5所述的方法,其特征在于,所述根据预设规则从所述目的服务器的集合中选择部署服务器,包括:
    从所述虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,所述预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
    筛选所述备选服务器集合中与所述目的服务器的集合中相同的服务器得到备选部署服务器集合;
    根据亲和性算法从所述备选部署服务器集合中选择部署服务器。
  7. 一种虚拟机部署装置,其特征在于,所述装置包括:
    查询单元,用于查询与目的虚拟机存在通讯业务的对端虚拟机,所述目的虚拟机为待迁移虚拟机或者待部署虚拟机;
    第一确定单元,用于确定部署有所述对端虚拟机的服务器;
    获取单元,用于从预设的通讯矩阵中获取目的服务器,所述目的服务器与所述部署有所述对端虚拟机的服务器的通讯状态为正常状态,所述通讯矩阵中记录了任意两个服务器之间的通讯状态,所述通讯状态包括正常状态或异常状态;
    部署单元,用于将所述目的虚拟机部署在所述目的服务器中。
  8. 根据权利要求7所述的装置,其特征在于,所述目的虚拟机为待迁移虚拟机,所述装置还包括:
    第一接收单元,用于接收异常虚拟机发送的指示所述异常虚拟机与其他虚拟机通讯状态为异常状态的通讯异常信息;
    第二确定单元,用于根据所述通讯异常信息,确定部署有所述异常虚拟机的异常服务器;
    第一统计单元,用于统计虚拟机管理模块管理的服务器中的异常服务器的个数;
    第三确定单元,用于在所述虚拟机管理模块管理的服务器中的异常服务器的个数等于1时,将所述异常虚拟机确定为所述目的虚拟机;
    第二统计单元,用于在所述虚拟机管理模块管理的服务器中的异常服务器的个数大于1时,查询所述通讯矩阵,统计每个所述异常服务器与其他异常服务器的通讯状态为异常状态的次数;
    第四确定单元,用于将通讯状态为异常状态的次数最多的服务器确定为目标服务器;
    第五确定单元,用于将所述目标服务器中所部署的异常虚拟机确定为所述目的虚拟机。
  9. 根据权利要求7所述的装置,其特征在于,所述装置还包括:
    第二接收单元,用于接收第一服务器发送的通讯质量信息,所述通讯质量信息包括第一服务器的标识、第二服务器的标识和所述第一服务器与所述第二服务器的通讯质量,所述第一服务器与所述第二服务器为虚拟机管理模块管理的服务器中的任意两个服务器;
    判断单元,用于判断所述通讯质量是否高于预设质量阈值;
    第一记录单元,用于在所述通讯质量高于预设质量阈值时,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为正常状态;
    第二记录单元,用于在所述通讯质量不高于预设质量阈值时,在所述通讯矩阵中记录所述第一服务器与所述第二服务器的通讯状态为异常状态。
  10. 根据权利要求9所述的装置,其特征在于,
    所述通讯质量信息是所述第一服务器中所部署的虚拟机与所述第二服务器中所部署的虚拟机执行通讯业务时发送的;
    或者,所述通讯质量信息是所述第一服务器向所述第二服务器发送探测包,并收到所述第二服务器发送的探测响应包后,根据所述探测包和所述探测响应包生成的。
  11. 根据权利要求7所述的装置,其特征在于,所述部署单元,包括:
    确定子单元,用于确定所述目的服务器的个数;
    第一部署子单元,用于在所述目的服务器的个数等于1时,将所述目的虚拟机部署在所 述目的服务器中;
    选择子单元,用于在所述目的服务器的个数大于1时,根据预设规则从所述目的服务器的集合中选择部署服务器;
    第二部署子单元,用于将所述目的虚拟机部署在所述部署服务器中。
  12. 根据权利要求11所述的装置,其特征在于,所述第二部署子单元,还用于:
    从所述虚拟机管理模块管理的服务器中筛选满足预设参数的标准的备选服务器集合,所述预设参数包括CPU资源、存储资源和网口带宽中的至少一种;
    筛选所述备选服务器集合中与所述目的服务器的集合中相同的服务器得到备选部署服务器集合;
    根据亲和性算法从所述备选部署服务器集合中选择部署服务器。
PCT/CN2016/094414 2015-08-24 2016-08-10 虚拟机部署方法及装置 WO2017032223A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510524417.2A CN105119993B (zh) 2015-08-24 2015-08-24 虚拟机部署方法及装置
CN201510524417.2 2015-08-24

Publications (1)

Publication Number Publication Date
WO2017032223A1 true WO2017032223A1 (zh) 2017-03-02

Family

ID=54667876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/094414 WO2017032223A1 (zh) 2015-08-24 2016-08-10 虚拟机部署方法及装置

Country Status (2)

Country Link
CN (1) CN105119993B (zh)
WO (1) WO2017032223A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116566805A (zh) * 2023-07-10 2023-08-08 中国人民解放军国防科技大学 一种面向体系容灾抗毁的节点跨域调度方法、装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105119993B (zh) * 2015-08-24 2019-02-26 华为技术有限公司 虚拟机部署方法及装置
CN106921977B (zh) * 2015-12-26 2020-11-06 华为技术有限公司 一种基于业务流的服务质量规划方法、装置及系统
CN106998560A (zh) * 2016-01-25 2017-08-01 中兴通讯股份有限公司 一种虚拟化网络功能的管理方法、网络设备及系统
CN106502760B (zh) * 2016-09-21 2019-06-21 华为技术有限公司 一种虚拟机亲和性策略可视化的方法及装置
CN113282366B (zh) * 2021-04-02 2024-06-28 中国船舶重工集团公司第七研究院 一种面向嵌入式虚拟化环境下的虚拟机静态放置方法
CN116866154B (zh) * 2023-09-05 2023-11-28 湖北华中电力科技开发有限责任公司 一种基于虚拟机集群的配电网通讯服务智能调度管理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101859263A (zh) * 2010-06-12 2010-10-13 中国人民解放军国防科学技术大学 一种支持在线迁移的虚拟机间快速通信方法
CN102082692A (zh) * 2011-01-24 2011-06-01 华为技术有限公司 基于网络数据流向的虚拟机迁移方法、设备和集群系统
CN102457517A (zh) * 2010-10-26 2012-05-16 国际商业机器公司 虚拟机间通信的方法
US20130232492A1 (en) * 2010-10-19 2013-09-05 Zte Corporation Method and system for realizing virtual machine mobility
CN105119993A (zh) * 2015-08-24 2015-12-02 华为技术有限公司 虚拟机部署方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657215A (zh) * 2013-11-19 2015-05-27 南京鼎盟科技有限公司 云计算中虚拟化节能系统
CN103605562B (zh) * 2013-12-10 2017-05-03 浪潮电子信息产业股份有限公司 一种kvm虚拟机在物理主机之间迁移的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101859263A (zh) * 2010-06-12 2010-10-13 中国人民解放军国防科学技术大学 一种支持在线迁移的虚拟机间快速通信方法
US20130232492A1 (en) * 2010-10-19 2013-09-05 Zte Corporation Method and system for realizing virtual machine mobility
CN102457517A (zh) * 2010-10-26 2012-05-16 国际商业机器公司 虚拟机间通信的方法
CN102082692A (zh) * 2011-01-24 2011-06-01 华为技术有限公司 基于网络数据流向的虚拟机迁移方法、设备和集群系统
CN105119993A (zh) * 2015-08-24 2015-12-02 华为技术有限公司 虚拟机部署方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116566805A (zh) * 2023-07-10 2023-08-08 中国人民解放军国防科技大学 一种面向体系容灾抗毁的节点跨域调度方法、装置
CN116566805B (zh) * 2023-07-10 2023-09-26 中国人民解放军国防科技大学 一种面向体系容灾抗毁的节点跨域调度方法、装置

Also Published As

Publication number Publication date
CN105119993B (zh) 2019-02-26
CN105119993A (zh) 2015-12-02

Similar Documents

Publication Publication Date Title
WO2017032223A1 (zh) 虚拟机部署方法及装置
US10452422B2 (en) Method and apparatus for deploying virtual machine instance, and device
US20200366562A1 (en) Method and system of connecting to a multipath hub in a cluster
US11677622B2 (en) Modifying resource allocation or policy responsive to control information from a virtual network function
CN109417496B (zh) 虚拟网络环境中的自动服务功能验证
US10949233B2 (en) Optimized virtual network function service chaining with hardware acceleration
US20200036758A1 (en) Micro-segmentation in virtualized computing environments
US10725833B2 (en) Monitoring and optimizing interhost network traffic
US9467382B2 (en) Elastic service chains
US9465641B2 (en) Selecting cloud computing resource based on fault tolerance and network efficiency
US20160197775A1 (en) Data center bridging network configuration and management
US10432638B2 (en) Infrastructure aware adaptive resource allocation
US10924385B2 (en) Weighted multipath routing configuration in software-defined network (SDN) environments
WO2017166136A1 (zh) 一种vnf的资源分配方法及装置
US9537785B2 (en) Link aggregation group (LAG) link allocation
US20180077048A1 (en) Controller, control method and program
US20180069778A1 (en) Dialing Test Method, Dialing Test System, and Computing Node
US9286170B2 (en) Preventing extreme coresidency hazards in cloud computing
CN109639488B (zh) 一种多外网分流加速方法及系统
Cui et al. Synergistic policy and virtual machine consolidation in cloud data centers
US20180219740A1 (en) Sharing policy and configuration information related to a configuration item
US20160254958A1 (en) Method, apparatus and system for virtualizing a policy and charging rules function
US10785103B2 (en) Method and system for managing control connections with a distributed control plane
US10374941B2 (en) Determining aggregation information
US10536383B2 (en) Attribute enhancement for handling network packet traffic between micro segmented guests

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

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

Country of ref document: EP

Kind code of ref document: A1