CN107733701B - 一种虚拟机部署的方法及设备 - Google Patents
一种虚拟机部署的方法及设备 Download PDFInfo
- Publication number
- CN107733701B CN107733701B CN201710908703.8A CN201710908703A CN107733701B CN 107733701 B CN107733701 B CN 107733701B CN 201710908703 A CN201710908703 A CN 201710908703A CN 107733701 B CN107733701 B CN 107733701B
- Authority
- CN
- China
- Prior art keywords
- node
- virtual machine
- link
- vim
- virtual
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000005012 migration Effects 0.000 claims description 30
- 238000013508 migration Methods 0.000 claims description 30
- 230000000875 corresponding effect Effects 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000002596 correlated effect Effects 0.000 claims description 4
- 239000011800 void material Substances 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 18
- 230000007423 decrease Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000001568 sexual effect Effects 0.000 description 4
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开一种虚拟机部署的方法及设备,涉及通信网络技术领域,以解决按照可用资源的数量部署虚拟机,导致网络通信性能下降的问题。所述方法包括:虚拟基础设施管理器VIM确定同一网络中每条虚拟链路的预设链路流量;VIM确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;若VIM确定网络中存在目标节点,则VIM将目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,目标节点的可用资源大于或者等于目标虚拟机对所需的可用资源。
Description
技术领域
本申请涉及通信网络技术领域,尤其涉及一种虚拟机部署的方法及设备。
背景技术
目前,常见的虚拟机部署***架构如图1所示,该虚拟机部署***包括汇聚交换机、多个接入交换机、多个节点、每个节点中的虚拟交换机以及部署在每个节点中的虚拟机。其中,一个汇聚交换机可以连接多个接入交换机,一个接入交换机可以连接多个节点,每个节点可以部署有多个虚拟机。
通常,部署虚拟机采用基于资源数量的算法,即优先选择可用资源最多的节点作为虚拟机的部署节点。例如,在图1所示的***架构中,按照可用资源由大到小的顺序,各个节点的排序依次为:节点一、节点六、节点四、节点五、节点三、节点二。当需部署4台虚拟机时,可以将其中的2台虚拟机部署在可用资源最多的节点一中,另外的2台虚拟机部署在可用资源次多的节点六中。例如,可以将虚拟机B、C部署在节点一中,虚拟交换机一下联虚拟机B、虚拟机C,从而虚拟机B与虚拟机C之间可以通过虚拟交换机一完成通信,并将虚拟机A、D部署在节点六中,虚拟交换机六下联虚拟机A、虚拟机D,从而,虚拟机A与虚拟机D之间可以通过虚拟交换机六完成通信。
但是,采用上述方式部署虚拟机之后,当两个虚拟机之间需通信时,例如,当虚拟机B与虚拟机A之间需通信时,虚拟机A、B之间的通信数据会依次经由接入交换机、汇聚交换机等多级、多个物理交换机进行传输,占用了接入交换机和/或汇聚交换机的大量资源,使得接入交换机和/或汇聚交换机的使用性能下降,进而导致网络通信性能下降。
发明内容
本申请实施例提供一种虚拟机部署的方法及设备,用于解决按照可用资源的数量部署虚拟机,导致网络通信性能下降的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面,本申请提供一种虚拟机部署的方法,该方法包括:
虚拟基础设施管理器VIM确定同一网络中每条虚拟链路的预设链路流量;
所述VIM确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;
若所述VIM确定所述网络中存在目标节点,则所述VIM将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,所述目标节点的可用资源大于或者等于所述目标虚拟机对所需的可用资源。
第二方面,本申请提供一种设备,该设备包括:
处理器,用于确定同一网络中每条虚拟链路的预设链路流量;确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;若确定所述网络中存在目标节点,则将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,所述目标节点的可用资源大于或者等于所述目标虚拟机对所需的可用资源。
本申请实施例提供的虚拟机部署的方法及设备,若网络中存在可用资源大于或者等于目标虚拟机对所需可用资源的单个节点,则将目标虚拟机对部署在该单个节点中,使得目标虚拟机对通过该单个节点内部的虚拟交换机完成通信,减少了对物理交换机的资源占用,进而能够提升网络性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的传统的虚拟机部署的***的示例性示意图;
图2为本申请实施例提供的一种虚拟机部署的***的示例性示意图;
图3为本申请实施例提供的一种虚拟机部署的方法的流程图;
图4为本申请实施例提供的一种虚拟网络的拓扑的示例性示意图;
图5为本申请实施例提供的另一种虚拟机部署的方法的流程图;
图6为本申请实施例提供的另一种虚拟机部署的方法的流程图;
图7为本申请实施例提供的另一种虚拟机部署的方法的流程图;
图8为本申请实施例提供的设备的逻辑结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供的虚拟机部署的方法,应用于虚拟机部署的***中,如图2所示,该***包括:汇聚交换机、接入交换机、多个节点、每个节点中的虚拟交换机、虚拟基础设施管理器(Virtual Infrastructure Manager,VIM)、部署管理器。
其中,汇聚交换机可以连接多个接入交换机,每个接入交换机可以连接多个节点,每个节点中部署有虚拟交换机,虚拟交换机用于完成同一节点上的各个虚拟机之间的通信。通常,同一网络中可以包括数个汇聚交换机,图2仅示例性地示出了其中的一个汇聚交换机。
VIM,用于管理各个节点,并执行在各个节点中部署虚拟机的相关操作。
部署管理器,用于向VIM发送虚拟机迁移指示,以指示VIM对虚拟机进行迁移。
部署管理器,还用于向VIM发送虚拟机部署指令,以使得VIM响应虚拟机部署指令,并为目标虚拟机对选取部署节点。
为了解决现有技术中按照可用资源的数量部署虚拟机,导致网络通信性能下降的问题,本申请实施例提供一种虚拟机部署的方法,如图3所示,该方法包括:
步骤301、VIM确定同一网络中每条虚拟链路的预设链路流量。
例如,用户部署如图4所示的5台虚拟机,这5台虚拟机对应的各个虚拟链路的预设链路流量依次为:虚拟链路Link_BC的预设链路流量为1G、虚拟链路Link_CE的预设链路流量为800M、虚拟链路Link_BA的预设链路流量为600M、虚拟链路Link_CD的预设链路流量为20M、虚拟链路Link_AE的预设链路流量为10M。
步骤302、VIM确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路。
可以理解的是,在本申请实施例中,可以按照预设链路流量由大到小的顺序对各个虚拟链路进行排序,并优先为排序在前的虚拟链路对应的虚拟机对选取部署节点。结合上述举例,若链路流量阈值设置为500M,由于虚拟链路Link_BC的预设流量阈值(1G)>500M、虚拟链路Link_CE的预设流量阈值(800M)>500M、虚拟链路Link_BA的预设流量阈值(600M)>500M,并且虚拟链路Link_BC的预设流量阈值(1G)>虚拟链路Link_CE的预设流量阈值(800M)>虚拟链路Link_BA的预设流量阈值(600M),则可以优先部署虚拟链路Link_BC对应的虚拟机对,即,VIM将虚拟链路Link_BC确定为初始的目标虚拟链路,并为虚拟机对BC选取部署节点;在完成虚拟机对BC的部署之后,VIM将虚拟链路Link_CE确定为目标虚拟链路,并为虚拟机对CE选取部署节点;在完成虚拟机对CE的部署之后,VIM将虚拟链路Link_BA确定为目标虚拟链路,并为虚拟机对BA选取部署节点。
步骤303、若VIM确定网络中存在目标节点,则VIM将目标虚拟链路对应的目标虚拟机对部署在同一目标节点上。
其中,目标节点的可用资源大于或者等于目标虚拟机对所需的可用资源。
结合步骤302中的举例,当虚拟链路Link_BC为目标虚拟链路时,若VIM确定如图2所示的节点中,节点一至节点六的可用资源均大于或者等于虚拟机对BC所需的可用资源,即节点一至节点六均可以作为目标节点,则VIM可以从节点一至节点六中选取一个目标节点,并将虚拟机对BC部署在所选的目标节点中。
需要说明的是,VIM基于预设的策略从目标节点中选取一个节点作为虚拟机对BC的部署节点,其中,在本申请实施例的第一种应用场景中,VIM可以将目标节点中优先级最高的节点确定为目标虚拟机对的部署节点,在本申请实施例的第二种应用场景中,VIM可以在目标节点中随机选取一个节点作为目标虚拟机对的部署节点。
结合上述举例,在本申请实施例的第一种应用场景中,假定节点一至节点六中优先级最高的节点为节点一,则VIM将节点一确定为虚拟机对BC的部署节点,并将虚拟机对BC部署在节点一中。在本申请实施例的第二种应用场景中,VIM在节点一至节点六中随机选取一个节点作为虚拟机对BC的部署节点,假定VIM选取节点二作为虚拟机对BC的部署节点,则VIM将虚拟机对BC部署在节点二中。
可以理解的是,当物理交换机的资源较为紧缺时,为了保证网络的通信质量,需对物理交换机进行扩容,但是,通常情况下,物理交换机扩容的流程较为复杂且灵活性较低。基于此,在本申请实施例中,当网络中存在可以部署目标虚拟机对的单个节点时,优先执行步骤303,即将目标虚拟机对优先部署在单个节点中,从而目标虚拟机对之间能够通过该单个节点中的虚拟交换机完成通信,避免了目标虚拟机对之间的通信流量穿过物理交换机,一方面,减少了对物理交换机资源的占用,可以不对物理交换机进行扩容,另一方面,由于物理交换机资源较为充足,其性能更为优异,进而能够提升网络的通信质量。
步骤304、若VIM确定网络中不存在目标节点,则VIM将目标虚拟机对部署在同一接入交换机下的不同节点上。
在一种实现方式中,当前目标虚拟机对为虚拟机对AE,VIM确定网络中的单个节点均不足以部署虚拟机对AE,则VIM可以分别将虚拟机A、E部署在同一接入交换机下的两个节点中,例如,VIM将虚拟机A部署在节点一中,将虚拟机E部署在节点二中,进而虚拟机A与虚拟机E可以通过接入交换机一完成通信,可见,虚拟机A、E之间的数据只需经过一个接入交换机,而无需经由多级、多个物理交换机,减少了对物理交换机的资源占用。
在另一种实现方式中,假定VIM已经完成虚拟机对BC、虚拟机对CE的部署,当VIM部署虚拟机对BA时,假定虚拟机B已经部署在节点一中,因此,VIM需判断节点一的剩余可用资源是否足以部署虚拟机A,假定VIM经判断确定节点一的剩余可用资源部不足以部署虚拟机A,则网络中不存在能够部署虚拟机对BA的单个节点。在这种情况下,优先考虑将虚拟机A部署在与节点一在同一接入交换机下的节点上,即优先考虑将虚拟机A部署在接入交换机一的下联节点二中,若节点二的可用资源足以部署虚拟机A,则将虚拟机A部署在节点二中。
需要说明的是,对于预设链路流量小于或者等于链路流量阈值的小流量虚拟链路,可以按照各个节点的优先级部署各个小流量虚拟链路对应的虚拟机对。结合上述举例,由于虚拟链路Link_CD的预设链路流量(20M)<链路流量阈值(500M)、虚拟链路Link_AE的预设链路流量(10M)<链路流量阈值(500M),则小流量虚拟链路为Link_CD、Link_AE。假定各个节点的优先级由高到低依次为:节点一、节点六、节点四、节点五、节点三、节点二,则将虚拟链路Link_CD对应的虚拟机对CD、虚拟链路Link_AE对应的虚拟机对部署在可用资源充足且优先级最高的同一节点上,或者将虚拟机对CD、虚拟机对AE依次部署在可用资源充足且优先级排序在前的节点对上。
本申请实施例提供的虚拟机部署的方法,若目标网络中存在可用资源足以部署目标虚拟机对的单个节点,则将目标虚拟机对部署在该单个节点中,使得目标虚拟机对通过该单个节点内部的虚拟交换机完成通信,减少了对物理交换机资源的占用,进而能够提升网络性能。
需要说明的是,在本申请实施例提供的另一种实现方式中,如图5所示,确定各个节点的优先级的方式具体可以实现为:
步骤501、VIM将网络中可用资源最多的节点确定为主节点。
假定在如图2所示的网络中,按照可用资源由大到小的顺序各个节点的排序为:节点一、节点六、节点四、节点五、节点三、节点二,则VIM确定节点一为主节点。
步骤502、VIM获取网络中各个节点的优先级,其中,第一节点组中每个节点的优先级高于第二节点组中每个节点的优先级,第一节点组包括主节点、与主节点在同一接入交换机下的的各个节点,第二节点组包括与主节点不在同一接入交换机下的各个节点,并且,在单个节点组中,单个节点的优先级与单个节点的可用资源大小呈正相关。
结合上述举例,在本申请实施例中,可以将各个节点划分为两个节点组,其中,第一节点组包括主节点,即节点一、与节点一在同一接入交换机下的各个节点,即第一节点组包括节点一、节点二。第二节点组中的节点与节点一不在同一接入交换机下,即第二节点组中的节点为接入交换机二、三的下联节点,第二节点组包括节点三至节点六。在如图2所示的网络中,按照可用资源由大到小的顺序各个节点的排序为:节点一、节点六、节点四、节点五、节点三、节点二,因此,在第一节点组中,各个节点的优先级由高到低依次为:节点一、节点二,在第二节点组中,各个节点的优先级由高到低依次为:节点六、节点四、节点五、节点三。网络中各个节点的优先级由高到低依次为:节点一、节点二、节点六、节点四、节点五、节点三。
还需说明的是,当网络规模较大时,可能存在数个汇聚交换机,则根据本申请实施例的方法,可以将与主节点不在同一汇聚交换机下的各个节点划分为第三节点组,且第三节点组中每个节点的优先级小于第二节点组中每个节点的优先级,第三节点组中节点的优先级与该节点的可用资源大小呈正相关。
在本申请实施例的另一种实现方式中,需获取每条虚拟链路的预设链路流量,如图6所示,步骤301、VIM确定同一网络中每条虚拟链路的预设链路流量包括包括:
步骤601、VIM接收部署管理器发送的虚拟机部署指令,虚拟机部署指令携带虚拟机配置信息。
其中,在虚拟化技术中,通常虚拟机配置信息用于描述虚拟机的规格、数量和网络配置需求。
步骤602、响应于虚拟机部署指令,VIM根据虚拟机配置信息确定网络中每条虚拟链路的预设链路流量。
需要说明的是,在本申请实施例中,可以利用虚拟机配置信息确定虚拟网络的拓扑。例如,VIM确定虚拟网络的拓扑如图4所示,该虚拟网络中有5台虚拟机,其中,虚拟机B与虚拟机C之间有虚拟链路Link_BC、虚拟机C与虚拟机E之间有虚拟链路Link_CE、虚拟机B与虚拟机A之间有虚拟链路Link_BA、虚拟机C与虚拟机D之间有虚拟链路Link_CD、虚拟机A与虚拟机E之间有虚拟链路Link_AE。并且各个虚拟链路的预设链路流量依次为:虚拟链路Link_BC的预设链路流量为1G、虚拟链路Link_CE的预设链路流量为800M、虚拟链路Link_BA的预设链路流量为600M、虚拟链路Link_CD的预设链路流量为20M、虚拟链路Link_AE的预设链路流量为10M。
本申请实施例提供的方法,VIM接收部署管理器发送的虚拟机部署指令之后,可以根据虚拟机部署指令中携带的虚拟机配置信息确定各个虚拟链路的预设链路流量,进而能够将预设链路流量大于链路流量阈值的链路两端的虚拟机部署在单个节点中,以通过该单个节点内部的虚拟交换机完成虚拟机对之间的通信,减少对物理交换机的资源占用。
需要说明的是,在对虚拟机进行初步的部署之后,由于网络中的流量较多,业务种类较多,虚拟机对之间的链路流量并不固定,因此,当虚拟机对之间的链路流量发生较为显著的变化时,需对虚拟机进行迁移,基于此,在本申请实施例提供的另一种实现方式中,在完成目标虚拟机对的部署之后,如图7所示,可以执行步骤701和步骤702。
步骤701、VIM接收部署管理器发送的虚拟机迁移指示,虚拟机迁移指示携带待迁移虚拟机的标识。
需要说明的是,在步骤701之前,VIM采集各个虚拟链路的链路流量信息,并向部署管理器发送采集的链路流量信息,再由部署管理器判断是否对相应的虚拟机进行迁移,若部署管理器确定需对相应的虚拟机进行迁移,则下发虚拟机迁移指示给VIM。例如,当VIM上报各个虚拟链路的链路流量信息之后,部署管理器经判断确定虚拟机对BE之间的链路流量提升,且虚拟机对BE并未部署在同一个节点上,也并未部署在同一接入交换机下的节点对上,则部署管理器可以向VIM下发虚拟机迁移指示,作为一种可能的实现方式,虚拟机迁移指示包括虚拟机B、虚拟机E的标识。
可以理解的是,在本申请实施例的第一种应用场景中,在虚拟机对之间的链路流量提升,则应该优先将虚拟机对迁移至同一个节点上或者同一接入交换机下的节点对上。在本申请实施例的第二种应用场景中,若虚拟机对之间的链路流量降低,则应该优先将虚拟机对迁移至两个接入交换机下的节点对上。
步骤702、响应于虚拟机迁移指示,VIM重新确定待迁移虚拟机的部署节点。
具体地,步骤702可以实现为:步骤702a、VIM获取待迁移虚拟机对中两个虚拟机各自所在节点的可用资源情况。
结合步骤701中的举例,VIM在接收到虚拟机迁移指示之后,根据虚拟机迁移指示中携带的虚拟机B、E的标识,可以获取虚拟机B、E的部署节点的可用资源情况,例如,VIM获取到虚拟机B部署在节点一上以及节点一的可用资源情况,虚拟机E部署在节点六上以及节点六的可用资源情况。
步骤702b、VIM将待迁移虚拟机对的两个虚拟机各自所在节点中可用资源多的节点作为目标迁移节点,待迁移虚拟机对中的第一虚拟机在目标迁移节点中。
结合上述举例,假定VIM确定当前节点六的可用资源比节点一的可用资源多,则VIM将节点六确定为目标迁移节点,且第一虚拟机,即虚拟机E在节点六中。
步骤702c、若VIM确定目标迁移节点的可用资源大于或者等于待迁移虚拟机对中第二虚拟机所需的可用资源,则VIM将第二虚拟机迁移至目标迁移节点。
其中,第二虚拟机为虚拟机B,若VIM确定节点六的可用资源足以部署虚拟机B,则VIM将虚拟机B迁移至节点六。
值得注意的是,在步骤601、VIM接收部署管理器发送的虚拟机部署指令(虚拟机部署指令携带有虚拟机配置信息)时,还可以根据虚拟机配置信息中的亲和性策略确定第一虚拟机和第二虚拟机是否能够被部署在同一个节点中。
当亲和性策略表征第一虚拟机和第二虚拟机为反亲和性时,即使目标迁移节点的可用资源足以部署第二虚拟机,也不能将第二虚拟机迁移至目标迁移节点,而是将第二虚拟机迁移至与目标迁移节点在同一接入交换机下的节点上。结合上述举例,当虚拟机B和虚拟机E(部署在目标迁移节点上,即部署在节点六上)为反亲和性时,VIM确定虚拟机B不能够被迁移至节点六,VIM可以将虚拟机B迁移至与节点六在同一接入交换机下的节点,即VIM可以将虚拟机B迁移至节点五。
步骤702d、若VIM确定目标迁移节点的可用资源小于第二虚拟机所需的可用资源,则VIM将第二虚拟机迁移至与目标迁移节点在同一接入交换机下的节点上。
还需说明的是,在高可用容灾备份的应用场景中,也可以采取本申请实施例的方法,此时,为了保证备份虚拟机和原虚拟机中至少一个可用,备份虚拟机与原虚拟机之间应该为反亲和性关系,即原虚拟机与备份虚拟机不能部署在同一个物理节点中。此外,网络服务扩容和网元扩容时,扩容增加的虚拟机也可以采取本申请实施例的方法,关于具体的部署虚拟机的方法,同上文描述一致,这里不再赘述。
以下结合具体场景来对本申请实施例的方法进行说明。
本申请另一实施例提供了虚拟机部署的方法,本申请实施例的方法包括:
步骤801、VIM将网络中可用资源最多的节点确定为主节点。
其中,主节点为节点一。
步骤802、VIM获取网络中各个节点的优先级。
如步骤501和步骤502所描述,各个节点的优先级由高到低依次为:节点一、节点二、节点六、节点四、节点五、节点三。
步骤803、VIM接收部署管理器发送的虚拟机部署指令,虚拟机部署指令携带虚拟机配置信息。
步骤804、响应于虚拟机部署指令,VIM根据虚拟机配置信息确定网络中每条虚拟链路的预设链路流量。
其中,虚拟链路Link_BC的预设链路流量为1G、虚拟链路Link_CE的预设链路流量为800M、虚拟链路Link_BA的预设链路流量为600M、虚拟链路Link_CD的预设链路流量为20M、虚拟链路Link_AE的预设链路流量为10M。
需要说明的是,步骤801和步骤802可以在VIM确定每条虚拟链路的预设链路流量之前执行,也可以在VIM确定每条虚拟链路的预设链路流量之后执行,本申请实施例并不对此进行限制。
步骤805、VIM确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路。
步骤806、若VIM确定网络中存在目标节点,则VIM将目标虚拟链路对应的目标虚拟机对部署在同一目标节点上。
步骤807、若VIM确定网络中不存在目标节点,则VIM将目标虚拟机对部署在同一接入交换机下的不同节点上。
在VIM已经确定步骤804中的各个虚拟链路的预设链路流量之后,可以按照预设链路流量由大到小的顺序依次部署各个虚拟链路对应的虚拟机对。
当目标虚拟机对为虚拟机对BC时,VIM确定虚拟机B与虚拟机C为亲和性关系,且图2所示的网络中,节点一至节点六的可用资源均足以部署虚拟机对BC,则VIM选取优先级最高的节点一作为虚拟机对BC的部署节点。
当目标虚拟机对为虚拟机对CE时,VIM确定虚拟机E与虚拟机C(已部署在节点一上)为亲和性关系,但是节点一不足以部署虚拟机E,则VIM继续判断除节点一外优先级最高的节点二是否足以部署虚拟机E,经判断,节点二足以部署虚拟机E,则VIM将虚拟机E部署在节点二上。
当目标虚拟机对为虚拟机对AB时,VIM确定虚拟机A与虚拟机B(部署在节点一上)为亲和性关系,但是节点一不足以部署虚拟机A,则VIM继续判断除节点一外优先级最高的节点二是否足以部署虚拟机A,经判断,节点二足以部署虚拟机A,则VIM将虚拟机A部署在节点二上。
当VIM部署小流量虚拟链路Link_CD对应的虚拟机对CD(虚拟机C已部署在节点一上)时,VIM确定在如图2所示的网络中,当前可用资源最多的节点为节点二,则VIM将虚拟机D部署在节点二上。至此,VIM依次完成了虚拟机B、C、E、A、D的部署。
然后,在网络进行的过程中,由于网络业务增多,各个虚拟机对之间的链路流量很可能发生变化,因此,可以执行步骤808和步骤809来对虚拟机进行迁移,以减少虚拟机对之间的链路流量对物理交换机的资源占用。
步骤808、VIM接收部署管理器发送的虚拟机迁移指示,虚拟机迁移指示携带待迁移虚拟机的标识。
步骤809、响应于虚拟机迁移指示,VIM重新确定待迁移虚拟机的部署节点。
本申请实施例还提供一种设备,如图8,该设备包括存储器801,处理器802,收发器803,总线804。
存储器801可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器801可以存储操作***和其他应用程序。在通过软件或者固件来实现本申请实施例提供的技术方案时,用于实现本申请实施例提供的技术方案的程序代码保存在存储器801中,并由处理器802来执行。
收发器803用于该设备与其他设备或通信网络,例如但不限于以太网,无线接入网(Radio Access Network,RAN),无线局域网(Wireless Local Area Network,WLAN)等之间的通信。
处理器802可以采用通用的中央处理器802(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
总线804可包括一通路,在该设备各个部件(例如存储器801、收发器803和处理器802)之间传送信息。
应注意,尽管图8所示的硬件仅仅示出了存储器801、收发器803、和处理器802以及总线804,但是在具体实现过程中,本领域的技术人员应当明白,该设备还包含实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当明白,还可包含实现其他功能的硬件器件。
具体的,图8所示的设备用于实现图3、图5至图7实施例所示的方法时,该设备中的处理器802,用于确定同一网络中每条虚拟链路的预设链路流量;确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;若确定网络中存在目标节点,则将目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,目标节点的可用资源大于或者等于目标虚拟机对所需的可用资源。
在本申请实施例的另一实现方式中,处理器802,还用于若确定网络中不存在目标节点,则将目标虚拟机对部署在同一接入交换机下的不同节点上。
在本申请实施例的另一实现方式中,收发器803,用于接收部署管理器发送的虚拟机部署指令,虚拟机部署指令携带虚拟机配置信息;
处理器802,还用于响应虚拟机部署指令,并根据虚拟机配置信息确定网络中每条虚拟链路的预设链路流量。
在本申请实施例的另一实现方式中,处理器802,还用于将网络中可用资源最多的节点确定为主节点;获取网络中各个节点的优先级,其中,第一节点组中每个节点的优先级高于第二节点组中每个节点的优先级,第一节点组包括主节点、与主节点在同一接入交换机下的的各个节点,第二节点组包括与主节点不在同一接入交换机下的各个节点,并且,在单个节点组中,单个节点的优先级与单个节点的可用资源大小呈正相关。
在本申请实施例的另一实现方式中,收发器803,还用于接收部署管理器发送的虚拟机迁移指示,虚拟机迁移指示携带待迁移虚拟机的标识;
处理器802,还用于响应虚拟机迁移指示,并重新确定待迁移虚拟机的部署节点;若确定网络中存在目标节点,则将目标虚拟机对部署在网络中优先级最高的目标节点中。
本申请实施例提供的设备,若网络中存在可用资源大于或者等于目标虚拟机对所需可用资源的单个节点,则将目标虚拟机对部署在该单个节点中,使得目标虚拟机对通过该单个节点内部的虚拟交换机完成通信,减少了对物理交换机的资源占用,进而能够提升网络性能。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种虚拟机部署的方法,其特征在于,所述方法包括:
虚拟基础设施管理器VIM确定同一网络中每条虚拟链路的预设链路流量;
所述VIM确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;
若所述VIM确定所述网络中存在目标节点,则所述VIM将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,所述目标节点的可用资源大于或者等于所述目标虚拟机对所需的可用资源;
在所述VIM将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上之前,所述方法还包括:
所述VIM将所述网络中可用资源最多的节点确定为主节点;
所述VIM获取所述网络中各个节点的优先级,其中,第一节点组中每个节点的优先级高于第二节点组中每个节点的优先级,所述第一节点组包括所述主节点、与所述主节点在同一接入交换机下的各个节点,所述第二节点组包括与所述主节点不在同一接入交换机下的各个节点,并且,在单个节点组中,单个节点的优先级与所述单个节点的可用资源大小呈正相关。
2.根据权利要求1所述的虚拟机部署的方法,其特征在于,在所述VIM确定同一网络中每条虚拟链路的预设链路流量之后,所述方法还包括:
若所述VIM确定所述网络中不存在目标节点,则所述VIM将所述目标虚拟机对部署在同一接入交换机下的不同节点上。
3.根据权利要求1或2所述的虚拟机部署的方法,其特征在于,所述VIM确定同一网络中每条虚拟链路的预设链路流量包括:
所述VIM接收部署管理器发送的虚拟机部署指令,所述虚拟机部署指令携带虚拟机配置信息;
响应于所述虚拟机部署指令,所述VIM根据所述虚拟机配置信息确定所述网络中每条虚拟链路的预设链路流量。
4.根据权利要求1所述的虚拟机部署的方法,其特征在于,在完成所述目标虚拟机对的部署之后,所述方法还包括:
所述VIM接收部署管理器发送的虚拟机迁移指示,所述虚拟机迁移指示携带待迁移虚拟机的标识;
响应于所述虚拟机迁移指示,所述VIM重新确定所述待迁移虚拟机的部署节点;
若所述VIM确定所述网络中存在目标节点,则所述VIM将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上包括:
若所述VIM确定所述网络中存在目标节点,则所述VIM将所述目标虚拟机对部署在所述网络中优先级最高的目标节点中。
5.一种用于虚拟机部署的设备,其特征在于,所述设备包括:
处理器,用于确定同一网络中每条虚拟链路的预设链路流量;确定所有虚拟链路中预设链路流量大于链路流量阈值的目标虚拟链路;若确定所述网络中存在目标节点,则将所述目标虚拟链路对应的目标虚拟机对部署在同一目标节点上,所述目标节点的可用资源大于或者等于所述目标虚拟机对所需的可用资源;
所述处理器,还用于将所述网络中可用资源最多的节点确定为主节点;获取所述网络中各个节点的优先级,其中,第一节点组中每个节点的优先级高于第二节点组中每个节点的优先级,所述第一节点组包括所述主节点、与所述主节点在同一接入交换机下的各个节点,所述第二节点组包括与所述主节点不在同一接入交换机下的各个节点,并且,在单个节点组中,单个节点的优先级与所述单个节点的可用资源大小呈正相关。
6.根据权利要求5所述的设备,其特征在于,
所述处理器,还用于若确定所述网络中不存在目标节点,则将所述目标虚拟机对部署在同一接入交换机下的不同节点上。
7.根据权利要求5或6所述的设备,其特征在于,所述设备还包括:
收发器,用于接收部署管理器发送的虚拟机部署指令,所述虚拟机部署指令携带虚拟机配置信息;
所述处理器,还用于响应所述虚拟机部署指令,并根据所述虚拟机配置信息确定所述网络中每条虚拟链路的预设链路流量。
8.根据权利要求5所述的设备,其特征在于,所述设备还包括:
收发器,还用于接收部署管理器发送的虚拟机迁移指示,所述虚拟机迁移指示携带待迁移虚拟机的标识;
所述处理器,还用于响应所述虚拟机迁移指示,并重新确定所述待迁移虚拟机的部署节点;
所述处理器,还用于若确定所述网络中存在目标节点,则将所述目标虚拟机对部署在所述网络中优先级最高的目标节点中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710908703.8A CN107733701B (zh) | 2017-09-29 | 2017-09-29 | 一种虚拟机部署的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710908703.8A CN107733701B (zh) | 2017-09-29 | 2017-09-29 | 一种虚拟机部署的方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107733701A CN107733701A (zh) | 2018-02-23 |
CN107733701B true CN107733701B (zh) | 2019-11-08 |
Family
ID=61209075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710908703.8A Active CN107733701B (zh) | 2017-09-29 | 2017-09-29 | 一种虚拟机部署的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107733701B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111190691A (zh) * | 2019-12-25 | 2020-05-22 | 中国建设银行股份有限公司 | 适用于虚拟机的自动迁移方法、***、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2352088A1 (en) * | 2009-07-01 | 2011-08-03 | Huawei Technologies Co., Ltd. | Method, apparatus and system for virtual machine migration decision |
CN104184813A (zh) * | 2014-08-20 | 2014-12-03 | 杭州华为数字技术有限公司 | 虚拟机的负载均衡方法和相关设备及集群*** |
CN104424013A (zh) * | 2013-08-26 | 2015-03-18 | 国际商业机器公司 | 在计算环境中部署虚拟机的方法和设备 |
CN105426241A (zh) * | 2015-11-16 | 2016-03-23 | 北京航空航天大学 | 一种基于云计算数据中心的统一资源调度节能方法 |
CN106909451A (zh) * | 2017-02-28 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种分布式任务调度***及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102082692B (zh) * | 2011-01-24 | 2012-10-17 | 华为技术有限公司 | 基于网络数据流向的虚拟机迁移方法、设备和集群*** |
WO2012149789A1 (zh) * | 2011-09-30 | 2012-11-08 | 华为技术有限公司 | Vpc迁移中的资源匹配方法及装置 |
CN104572279B (zh) * | 2014-12-23 | 2018-01-09 | 国云科技股份有限公司 | 一种支持节点绑定的虚拟机动态调度方法 |
-
2017
- 2017-09-29 CN CN201710908703.8A patent/CN107733701B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2352088A1 (en) * | 2009-07-01 | 2011-08-03 | Huawei Technologies Co., Ltd. | Method, apparatus and system for virtual machine migration decision |
CN104424013A (zh) * | 2013-08-26 | 2015-03-18 | 国际商业机器公司 | 在计算环境中部署虚拟机的方法和设备 |
CN104184813A (zh) * | 2014-08-20 | 2014-12-03 | 杭州华为数字技术有限公司 | 虚拟机的负载均衡方法和相关设备及集群*** |
CN105426241A (zh) * | 2015-11-16 | 2016-03-23 | 北京航空航天大学 | 一种基于云计算数据中心的统一资源调度节能方法 |
CN106909451A (zh) * | 2017-02-28 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种分布式任务调度***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107733701A (zh) | 2018-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109076357B (zh) | 移动边缘***中迁移应用方法、相关设备及*** | |
CN110557791B (zh) | 会话管理方法、设备及*** | |
CN110166407B (zh) | QoS流处理方法、设备及*** | |
EP3667982B1 (en) | Bearer mapping method and apparatus, base station, and terminal | |
US10674402B2 (en) | Load balancing system with an access controller in the field of communication technology | |
CN110351041A (zh) | 映射物理下行控制信道的方法及装置 | |
JP2516253B2 (ja) | デ―タ通信ネツトワ―ク | |
CN109495383B (zh) | 一种数据处理方法、装置、通信***及网络设备 | |
CN111083742B (zh) | 冗余协议数据单元会话的配置方法及装置 | |
CN110266826B (zh) | 地址管理方法、设备及*** | |
EP3550775B1 (en) | Resource determination method and device | |
CN109995844A (zh) | 一种控制面资源迁移的实现方法、装置及网络功能实体 | |
JP2021508983A (ja) | Pdcpデータ回復の実行を通知する方法およびデバイス | |
CN103841562B (zh) | 一种时隙资源占用处理方法及装置 | |
CN113382421A (zh) | 通信方法及装置 | |
CN108228350B (zh) | 一种资源分配方法及装置 | |
CN105827678A (zh) | 一种基于高可用架构下的通信方法和节点 | |
CN107733701B (zh) | 一种虚拟机部署的方法及设备 | |
CN110536484B (zh) | 多连接***中的数据无线承载控制方法、装置和*** | |
CN108271149B (zh) | 一种用户数据锚点迁移的方法、设备和*** | |
CN108632921A (zh) | 一种核心网切换方法及装置 | |
US20220408340A1 (en) | Wireless communication service responsive to an artificial intelligence (ai) network | |
CN101494473B (zh) | 一种基于资源并考虑保护时间控制的wdm光网络圈保护方法 | |
CN116095145A (zh) | 一种vpc集群的数据控制方法和*** | |
CN109041265A (zh) | 一种核心网接入方法和基站 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |