CN116360912A - 一种虚拟机调度方法、装置、核心网网元和网络设备 - Google Patents

一种虚拟机调度方法、装置、核心网网元和网络设备 Download PDF

Info

Publication number
CN116360912A
CN116360912A CN202111612083.6A CN202111612083A CN116360912A CN 116360912 A CN116360912 A CN 116360912A CN 202111612083 A CN202111612083 A CN 202111612083A CN 116360912 A CN116360912 A CN 116360912A
Authority
CN
China
Prior art keywords
virtual machine
domain
logical
target
logic
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.)
Pending
Application number
CN202111612083.6A
Other languages
English (en)
Inventor
王锦涛
吴平松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Communications Ltd Research Institute
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 China Mobile Communications Group Co Ltd, China Mobile Communications Ltd Research Institute filed Critical China Mobile Communications Group Co Ltd
Priority to CN202111612083.6A priority Critical patent/CN116360912A/zh
Publication of CN116360912A publication Critical patent/CN116360912A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供了一种虚拟机调度方法、装置、核心网网元和网络设备,所述虚拟机调度方法,包括:获取接口模块发送的虚拟机调度需求;虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个逻辑域参数;根据逻辑域参数,进行至少一个逻辑域上虚拟机的部署;具有相同的逻辑域参数的虚拟机属于同一逻辑域。本发明方案,通过获取接口模块发送的包括多个逻辑域参数的虚拟机调度需求,遵循具有相同的逻辑域参数的虚拟机属于同一逻辑域的原则,根据逻辑域参数,进行多个逻辑域上虚拟机的部署,将虚拟机部署至对应的逻辑域节点内,可以实现对虚拟机所属的逻辑域的划分,以及虚拟机在逻辑域内的部署。

Description

一种虚拟机调度方法、装置、核心网网元和网络设备
技术领域
本发明涉及核心网技术领域,尤其是指一种虚拟机调度方法、装置、核心网网元和网络设备。
背景技术
随着通信业务的云化发展,网络功能虚拟化(Network FunctionsVirtualization,NFV)架构的网络云中承载的通信业务网元种类和数量都在增加,数以万计的通用计算型服务器部署在全国多个大区域的数据中心内,网络云的规模也在不断壮大。在同一大区内,由于建设节奏和业务需求的不同,资源池被分为多个小规模的资源池,不同的小资源池拥有不同版本的基础设施即服务(Infrastructure as a Service,IaaS)层基础设施资源。随着新版本资源池的建设和旧资源池的扩容,为了保证资源池的稳定运行和技术演进,同一大区内基础设施资源版本不需要收敛,因此,旧版本资源池需要进行节点系统的升级,包含管理节点和计算节点。
但是,在目前网络云多版本资源池的背景下,多资源池面临操作系统、虚拟化组件等模块的升级,然而目前的技术架构无法很好地规划和制定升级策略,难以将实现计算节点上的虚拟机所属的逻辑域进行划分,并将虚拟机部署到不同的逻辑域内,进而导致后续难以实现计算节点内的虚拟机的大规模批量升级的问题。
发明内容
本发明技术方案的目的在于提供一种虚拟机调度方法、装置、核心网网元和网络设备,以解决采用现有技术中,难以将虚拟机所属的逻辑域进行划分,并将虚拟机部署到不同的逻辑域内的问题。
本发明实施例提供一种虚拟机调度方法,包括:
获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
可选地,根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,包括:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;
将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,将所述第一虚拟机部署在对应的所述第一逻辑域内,包括:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述方法还包括:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域,包括:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内,包括:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述方法还包括:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述方法还包括:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述方法还包括:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,
所述对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启,包括:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
本发明实施例还提供一种核心网网元,包括处理器,所述处理器用于,获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
可选地,所述处理器,具体用于:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,所述处理器,具体用于:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述处理器,具体还用于:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,所述处理器,具体还用于:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述处理器,具体还用于:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述处理器,具体还用于:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,所述处理器在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述处理器,具体还用于:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述处理器,还用于:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,所述处理器,具体还用于:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
本发明实施例还提供一种虚拟机调度装置,包括:
获取模块,用于获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
部署模块,用于根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
可选地,所述部署模块,包括:
第一确定单元,用于根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;
第二部署单元,用于将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,所述第二部署单元,具体用于:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述部署模块,还包括:
第二确定单元,用于根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
第二部署单元,用于按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,所述第二部署单元,具体用于:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述第二部署单元,具体用于:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述部署模块,还包括:
第三部署单元,用于在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,所述第三部署单元,还用于:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述装置还包括:
接收模块,用于接收重启指令;
重启模块,用于根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,所述重启模块,包括:
倒换单元,用于将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
重启单元,用于对所述第四逻辑域内所有虚拟机进行重启;其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
本发明实施例还提供一种网络设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如上中任一项所述的虚拟机调度方法。
本发明实施例还提供一种可读存储介质,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如上中任一项所述的虚拟机调度方法中的步骤。
本发明上述技术方案中的至少一个具有以下有益效果:
本发明方案,通过获取接口模块发送的包括多个逻辑域参数的虚拟机调度需求,遵循具有相同的逻辑域参数的虚拟机属于同一逻辑域的原则,根据逻辑域参数,进行至少一个逻辑域上虚拟机的部署,即将虚拟机部署至对应的逻辑域节点内,可以实现对虚拟机所属的逻辑域的划分,以及虚拟机在逻辑域内的部署。
附图说明
图1为本发明提供的虚拟机编排调度的流程图;
图2为本发明实施例提供的虚拟机调度方法的流程图之一;
图3为本发明实施例提供的虚拟机调度方法的流程图之二;
图4为本发明实施例提供的核心网网元的结构示意图;
图5为本发明实施例提供的虚拟机调度装置的结构示意图;
图6为本发明实施例提供的网络设备的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
在进行具体实施方式的说明之前,首先进行如下说明。
现有的网络云虚拟层架构中,业务网元以虚拟机(Virtual Machine,VM)的形式部署在计算节点上,计算节点上运行着Hypervisor、Libvirt、Nova等虚拟化相关软件,与管理节点共同构成网络功能虚拟化(Network Functions Virtualization,NFV)架构中重要的基础设施即服务(Infrastructure as a Service,IaaS)层资源。这些虚拟化资源的工作状态通常有两种:运行时和编排调度时,运行时是一种相对稳定的常态,管理模块会通过每台节点上的执行模块对节点状态进行定期获取统计数据,实现对计算节点的监控和运维;编排调度时是一种瞬时状态,也是决定虚拟机分布情况、业务运行和迭代效率的关键步骤,影响着业务的处理能力。
如图1所示,在计算节点上编排调度虚拟机时共分为以下12步:
步骤1:业务编排器发送虚拟机创建请求,携带信息包括:各类资源需求量、虚拟机特殊要求,接口模块返回确认信号(虚拟机创建为异步模式);
步骤2:接口模块发送调度请求,携带信息包括:各类资源需求量、虚拟机特殊要求;
步骤3:从数据库获取服务器状态数据,包括各类资源总量、使用量/剩余量、已部署的虚拟机、故障状态等;
步骤4:将虚拟机调度请求包括各类资源需求量、虚拟机特殊要求,以及服务器状态数据,包括各类资源总量、使用量/剩余量、已部署的虚拟机、故障状态等发送给filter子模块;
步骤5:filter子模块调用各驱动进行过滤,也即排除资源剩余量不足或无法满足虚拟机特殊要求的服务器,一种驱动负责一种类型的驱动;
步骤6:filter子模块对各驱动过滤的结果取交集,即为满足虚拟机创建要求的服务器集合,并将服务器集合回传给调度模块;
步骤7:调度模块将过滤后的服务器集合发送给weight子模块;
步骤8:weight子模块调用其下驱动(仅1个驱动生效),从服务器集合中选出唯一服务器;
步骤9:weight子模块将唯一服务器回传给调度模块;
步骤10:调度模块通过接口模块,或直接将虚拟机创建请求发送给唯一服务器上的执行模块;
步骤11:执行模块将虚拟机创建结果发送给接口模块;
步骤12:业务编排器查询到虚拟机创建结果(虚拟机创建为异步模式)。
按照上述的步骤1-步骤12,部署每一个VM都需要经过一次编排和调度,在网络云场景中,每一个VNF都由若干个VM组成,因此每一个VNF的部署都涉及到若干个VM的调度编排工作。当VNF部署时,按照业务功能和性能的需求,对VM的数量和规格进行规划设计,而对于可靠性的保证,将VM以m+n的方式进行部署,通过主备或者负载均衡方式进行可靠性保证。在这种部署方式下,一个VNF内的多个VM可能集中或均匀的部署在多个计算节点上,集中式部署主要为了提升计算节点计算资源利用率,均匀式部署则更大程度保证了业务的可靠性,避免了单点故障。
在对旧版本的资源池进行升级时,包括对管理节点和计算节点的升级。管理节点主要是NFV架构中虚拟化基础设施管理器(Virtualized Infrastructure Manager,VIM)部署节点,主要负责网络虚拟化基础设施(Network Functions VirtualizationInfrastructure,NFVI)基础资源的管理,节点数量占比较小且没有运行实际的通信业务网元,因此该部分节点的升级不会影响实际业务的运行;计算节点上部署着运行通信业务网元的虚拟机,当对该节点进行升级时,若升级操作系统或者虚拟化组件时,需要对节点进行重启操作,因此会影响上层业务的正常运行。
按照现有方案下的VM部署方式,同一VNF内VM按照可靠性要求会部署在不同的计算节点上,从VM层面上实现了m+n的主备或负载均衡的可靠性保证,因此,同一时间内单计算节点的重启升级不会给业务带来中断性影响。但是由于资源池内计算节点数量庞大,单位时间内只进行单一节点升级会使得整体升级时间非常久,拉长升级周期,降低升级效率。如果采用多借点同时升级的方式,同一批节点将会同时重启,由于每一个NVF内多个VM是根据调度算法随机部署在不同计算节点上,因此无法准确选定一批节点进行批量升级,任何一批节点中都有可能承担着某些NVF的所有主备VM,如果选择该批节点批量升级,会导致某些VNF业务中断。
针对以上问题,一种可替代方案是在重启之前进行VM二次编排,针对选定批次的待重启的计算节点,检查计算节点上运行的VM,将该批次计算节点上所有NVF内承担主备和负载均衡的冗余VM迁移出该批次计算节点,保证该批次计算节点上所有VNF内承担主备和负载均衡的冗余VM迁移出该批次计算节点,保证该批次计算节点升级时不会导致VNF业务中断,这种方案可以实现多计算节点的同时升级,相比单计算节点升级可以大幅提升升级效率,同时通过对计算节点上运行的VM进行二次调度保证了业务稳定运行。但是该方案有以下问题:1、在进行VM的二次调度时,无法保证当前资源池内有足够的冗余资源满足业务可靠性冗余VM的迁入,有可能导致VM二次调度失败;2、核心网网络云业务需要尽可能保证底层运行环境的稳定,因此在升级过程中频繁批量地VM迁移可能会影响到上层的业务的稳定运行;3、在规划升级批次时无法制定相应原则,只能随机选定一批节点,然后再检查该批次节点上是否运行任一VNF的全部可靠性VM,整个升级流程较为混乱,没有一致的原则性。
为实现计算节点上的虚拟机所属的逻辑域进行划分,并将虚拟机部署到不同的逻辑域内,本发明实施例提供一种虚拟机调度方法,通过获取接口模块发送的包括多个逻辑域参数的虚拟机调度需求,遵循具有相同的逻辑域参数的虚拟机属于同一逻辑域的原则,根据逻辑域参数,进行至少一个逻辑域上虚拟机的部署,即将虚拟机部署至对应的逻辑域节点内,可以实现对虚拟机所属的逻辑域的划分,以及虚拟机在逻辑域内的部署。
如图2所示,本发明实施例提供一种虚拟机调度方法,包括:
步骤201:获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数。
本发明实施例中,在虚拟机调度选择计算节点时,增加逻辑域参数,以根据可靠性要求将所有VNF内的VM按照划分的逻辑域部署到逻辑域内的计算节点上。
增加逻辑域参数的具体步骤包括,接口模块通过业务编排器规划好VNF的所有的VM部署需求(虚拟机调度需求),在VM部署需求中增加每一个VM的逻辑域参数(logic zone,lz),逻辑域参数的类型为整数型,用来表示VM按照主备可靠性规划后所属于的逻辑域,需要说明的是,逻辑域参数用来表示VM按照主备可靠性规划后所属于的逻辑域的含义是逻辑域参数不具体指示VM部署在哪一个逻辑域上,但是指示该VM和该VM所属的VNF中的其他VM是否处于同一逻辑域。
需要说明的是,本发明实施例中,至少一个逻辑域参数指的是一个,或两个,或两个以上的逻辑域参数,对应的,部署的虚拟机的数量为一个,或两个,或多个。
接口模块通过业务编排器规划好逻辑域参数,便于后续的调度模块根据逻辑域参数部署虚拟机至对应的逻辑域内。
步骤202:根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
具体地,调度模块中增加关于逻辑域参数的过滤器filter,接收接口模块发送的虚拟机调度需求后,根据虚拟机调度需求中的逻辑域参数,过滤器filter按照具有相同的逻辑域参数的虚拟机属于同一逻辑域的原则,筛选出对应的逻辑域,依次进行虚拟机的部署。
还需要说明的是,在现有虚拟层调度机制中,按照同一VNF内VM按照m+n的可靠性保证策略,在VM调度时增加CPU反亲和性要求,将主备VM部署在不同的计算节点上。因此,在本发明实施例中,将虚拟机具体部署在逻辑域中的哪一个计算节点上,是根据上述的步骤1-步骤12确定的,在本实施例中不再赘述。
本发明实施例,可以实现对虚拟机所属的逻辑域的划分,以及虚拟机在逻辑域内的部署。
需要说明的是,本发明实施例中,至少一个逻辑域指的是一个,或两个,或两个以上的逻辑域。
可选地,根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,包括:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;
将所述第一虚拟机部署在对应的所述第一逻辑域内。
对根据逻辑域参数,进行逻辑域上虚拟机的部署的具体步骤进行说明:在对首个VNF架构中的全部VM进行部署时,首先确定第一VNF(首个VNF架构)的每个第一VM分别对应的第一逻辑域参数,根据第一逻辑域参数确定每个第一VM是否处于同一逻辑域,在确定每一VM是否处于同一逻辑域后,可以确定部署第一逻辑域参数的数量,并根据第一逻辑域参数的数量,随机选取第一逻辑域,根据确定的每一VM是否处于同一逻辑域后,将第一虚拟机部署在第一逻辑域内,其中,第一VNF可以包括一个或多个第一VM。
例如,第一VNF中包括两个第一虚拟机,该两个第一虚拟机为两个主虚拟机,分别为主虚拟机1和主虚拟机2,该两个主虚拟机对应的第一逻辑域参数指示该两个主虚拟机并不属于同一逻辑域,则确定部署第一虚拟机的第一逻辑域的数量为两个,分别为:逻辑域A和逻辑域B,在进行两个主虚拟机的部署时,首先将主虚拟机1随机部署在逻辑域A和逻辑域B中,若主虚拟机1部署在逻辑域A内,则在部署主虚拟机2时,将主虚拟机2部署在逻辑域B中。
再例如,第一VNF中包括两个第一虚拟机,该两个第一虚拟机为两个主虚拟机,分别为主虚拟机1和主虚拟机2,该两个主虚拟机对应的第一逻辑域参数指示该两个主虚拟机属于同一逻辑域,则确定部署第一虚拟机的第一逻辑域的数量为一个,为:逻辑域A,在进行两个主虚拟机的部署时,首先将主虚拟机1部署在逻辑域A中,再将主虚拟机2随机部署在逻辑域A中。还例如,第一VNF中包括三个第一虚拟机,该三个第一虚拟机为三个主虚拟机,分别为主虚拟机1、主虚拟机2和主虚拟机3,该三个主虚拟机对应的第一逻辑域参数指示主虚拟机1和主虚拟机3属于同一逻辑域,主虚拟机2和另外两个主虚拟机不属于同一逻辑域,则确定部署第一虚拟机的第一逻辑域的数量为两个,分别为:逻辑域A和逻辑域B,在进行三个主虚拟机的部署时,首先将主虚拟机1随机部署在逻辑域A和逻辑域B中,若主虚拟机1部署在逻辑域B内,则在部署主虚拟机2时,将主虚拟机2部署在逻辑域A中,之后在部署主虚拟机3时,将主虚拟机2部署在逻辑域B中。通过上述步骤,可以实现将首个VNF架构中的全部VM顺利、高效地进行部署。
进一步地,将所述第一虚拟机部署在对应的所述第一逻辑域内,包括:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
继续进行说明,部署第一虚拟机的一些具体情况:情况一:在部署第一虚拟机中的第三目标虚拟机为部署的首个虚拟机的情况下,可以在第一逻辑域内随机选取一个逻辑域进行部署;情况二:在已经将第一虚拟机中的第四目标虚拟机部署在第一逻辑域内的第三目标逻辑域内的情况下,若第三目标虚拟机和第四目标虚拟机具有相同的第一逻辑域参数,则将第三目标虚拟机直接部署在第三目标逻辑域内;情况三:在已经将第一虚拟机中的第四目标虚拟机部署在第一逻辑域中的第三目标逻辑域内的情况下,若第三目标虚拟机和第四目标虚拟机不具有相同的第一逻辑域参数,则将第三目标虚拟机直接部署在第一逻辑域中除第三目标逻辑域之外的另一个逻辑域内。
例如,第一VNF中包括两个第一虚拟机,该两个第一虚拟机为两个主虚拟机,分别为主虚拟机1和主虚拟机2,针对情况一:在部署首个虚拟机,也就是主虚拟机1时,无论根据主虚拟机1和主虚拟机2分别对应的第一逻辑域参数确定第一逻辑域的数量是一个还是两个,均随机将主虚拟机1部署在任一第一逻辑域上;针对情况二:在已经将第一虚拟机中的主虚拟机1(第四目标虚拟机)部署在第一逻辑域内的第三目标逻辑域内的情况下,若主虚拟机2(第三目标虚拟机)和主虚拟机1(第四目标虚拟机)具有相同的第一逻辑域参数,则将主虚拟机2(第三目标虚拟机)直接部署在第三目标逻辑域内,在此之前,已经根据主虚拟机1和主虚拟机2对应的第一逻辑域参数,确定第一逻辑域的数量是一个,也就是第三目标逻辑域;针对情况三:在已经将第一虚拟机中的主虚拟机1(第四目标虚拟机)部署在第一逻辑域内的第三目标逻辑域内的情况下,若主虚拟机2(第三目标虚拟机)和主虚拟机1(第四目标虚拟机)不具有相同的第一逻辑域参数,则将主虚拟机2(第三目标虚拟机)直接部署在第一逻辑域中除第三目标逻辑域之外的另一个逻辑域内,在此之前,已经根据主虚拟机1和主虚拟机2对应的第一逻辑域参数,确定第一逻辑域的数量是两个,也就是第三目标逻辑域和另一个逻辑域。
再例如,第一VNF中包括三个第一虚拟机,该三个第一虚拟机为三个主虚拟机,分别为主虚拟机1、主虚拟机2和主虚拟机3,针对情况一:在部署首个虚拟机,也就是主虚拟机1时,无论根据主虚拟机1、主虚拟机2和主虚拟机3分别对应的第一逻辑域参数确定第一逻辑域的数量是一个、两个还是三个,均随机将主虚拟机1部署在任一第一逻辑域上;针对情况二:在根据主虚拟机1、主虚拟机2和主虚拟机3分别对应的第一逻辑域参数确定第一逻辑域的数量是两个,分别为逻辑域A和逻辑域B,并且主虚拟机1和主虚拟机3具有相同的第一逻辑域参数,主虚拟机2对应的第一逻辑域参数与主虚拟机1、主虚拟机3对应的第一逻辑域参数不同,则在将主虚拟机1(第四目标虚拟机)部署在第一逻辑域内的逻辑域B内,将主虚拟机2部署在逻辑域A内后,将主虚拟机3(第三目标虚拟机)直接部署在逻辑域B内;针对情况三:在根据主虚拟机1、主虚拟机2和主虚拟机3分别对应的第一逻辑域参数确定第一逻辑域的数量是两个,分别为逻辑域A和逻辑域B,并且主虚拟机1和主虚拟机2具有相同的第一逻辑域参数,主虚拟机3对应的第一逻辑域参数与主虚拟机1、主虚拟机2对应的第一逻辑域参数不同,则在将主虚拟机1部署在第一逻辑域内的逻辑域A内,将主虚拟机2(第四目标虚拟机)部署在逻辑域A内后,将主虚拟机3(第三目标虚拟机)直接部署在逻辑域B内。
通过上述步骤,可以高效地首个NVF架构中的全部VM部署在对应的逻辑域内。
可选地,所述方法还包括:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
也就是,在将第一VNF架构中的第一VM部署完毕后,在将第一NVF架构之后的第二VNF架构中的第二VM进行部署时,需要遵循以下两个原则:第一原则是当现有的逻辑域数量少于逻辑域参数指示的逻辑域数量时,按照逻辑域参数指示需求的逻辑域数量对应增加逻辑域,同时在增加的逻辑域内划分一个新的计算节点;第二原则是,在按照VM对应的逻辑域参数选择部署的逻辑域时,优先选择资源剩余最多的逻辑域,若该逻辑域剩余的资源不能满足部署VM时,新增一个逻辑域,并对应增加一个新的计算节点,然后将不能部署的VM划分到该新的逻辑域的计算节点上。
在将第一VNF架构中的第一VM部署完毕后,对第二VNF架构中的第二VM进行部署时,按照第一原则,根据每个第二VM对应的第二逻辑域参数和已经部署第一VM的第一逻辑域,确定第二逻辑域,并且按照上述的第二原则,依次将第二VM部署在对应的第二逻辑域内。
需要说明的是,该第二VNF架构为首个VNF架构之后的任一VNF架构。
例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1部署在逻辑域A中,主虚拟机2部署在逻辑域B中后,若第二VNF中包括两个第二虚拟机,分别为备虚拟机1和备虚拟机2,在该两个备虚拟机对应的第二逻辑域参数指示该两个备虚拟机的第二逻辑域的数量为一个,也就是该两个备虚拟机对应的第二逻辑域参数相同,且确定第二逻辑域为逻辑域A的情况下,则依次将备虚拟机1和备虚拟机2部署在逻辑域A中。在第二VNF架构中的第二VM部署完毕后,若还需要部署另一个第二VNF,该另一个第二VMF中包括三个主虚拟机,分别为主虚拟机3、主虚拟机4和主虚拟机5,且根据该三个主虚拟机对应的第二逻辑域参数,确定该三个主虚拟机部署在用以逻辑域内,则由于逻辑域A中部署了主虚拟机1、备虚拟机1和备虚拟机2,逻辑域B中部署了主虚拟机2,则根据优先选择剩余资源最多的逻辑域进行部署的原则,将主虚拟机3、主虚拟机4和主虚拟机5部署在逻辑域B中。
再例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1和主虚拟机2均部署在逻辑域A中,若第二VNF中包括两个第二虚拟机,分别为备虚拟机1和备虚拟机2,在该两个备虚拟机对应的第二逻辑域参数指示该两个备虚拟机的第二逻辑域的数量为两个,也就是该两个备虚拟机对应的第二逻辑域参数不同的情况下,需要新增一个逻辑域B,由于主虚拟机1和主虚拟机2均部署在逻辑域A中,则根据优先选择剩余资源最多的逻辑域进行部署的原则,将备虚拟机1部署在逻辑域B中,备虚拟机2部署在逻辑域A中,若还需要部署另一个第二VNF,该另一个第二VMF中包括三个主虚拟机,分别为主虚拟机3、主虚拟机4和主虚拟机5,且主虚拟机3、主虚拟机4对应同一个第二逻辑域参数,主虚拟机5对应的第二逻辑域参数与主虚拟机3、主虚拟机4对应的第二逻辑域参数不同,也就是主虚拟机3、主虚拟机4和主虚拟机5对应的第二逻辑域的数量为两个,即逻辑域A和逻辑域B,因此,由于主虚拟机1、主虚拟机2和备虚拟机2均部署在逻辑域A中,备虚拟机1部署在逻辑域B中,则根据优先选择剩余资源最多的逻辑域进行部署的原则,在部署主虚拟机3时,将主虚拟机3部署在逻辑域B中,在部署主虚拟机4时,将主虚拟机4部署在逻辑域B中,在部署主虚拟机5时,将主虚拟机3部署在逻辑域A中。
通过上述步骤,可以实现将第一NVF架构之后的其余NVF架构中的全部虚拟机的高效、顺利部署。
可选地,根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域,包括:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
下面具体说明,按照第一原则,选取根据每个第二VM对应的第二逻辑域参数和已经部署第一VM的第一逻辑域,确定第二逻辑域的过程。
根据每个第二VM分别对应的第二逻辑域参数,以及具有相同的第二逻辑域参数的第二VM部署在同一逻辑域的原则,确定需要的第二逻辑域的数量,如果第一逻辑域的数量小于需要的第二逻辑域的数量,则对应新增第一目标数量的第三逻辑域,将全部的第一逻辑域和新增的第三逻辑域作为第二逻辑域,若第一逻辑域的数量大于或等于需要的第二逻辑域的数量,则将第一逻辑域的资源剩余量按照由多到少排列,选取资源剩余量最多的第二目标数量的第一逻辑域作为第二逻辑域。
例如,在第一逻辑域为五个的情况下,若根据第二逻辑域参数,确定需要的第二逻辑域参数的数量是三个,则选取第一逻辑域中,资源剩余量最多的三个(第二目标数量)第一逻辑域作为第二逻辑域。再例如,在第一逻辑域为五个的情况下,若根据第二逻辑域参数,确定需要的第二逻辑域参数的数量是七个,则确定新增的第三逻辑域的数量为两个(第一目标数量),并将新增的两个第三逻辑域和五个第一逻辑域作为第二逻辑域。
通过首先确定出第二逻辑域的数量,可以提高部署第二虚拟机的效率。
可选地,所述按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内,包括:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
下面说明,部署第二虚拟机的一些具体情况:情况一,在第二虚拟机中的第五目标虚拟机为首个部署的虚拟机,且第二逻辑域包括第一逻辑域和新增的第一目标数量的第三逻辑域的情况下,根据第二原则终端的优先选择资源剩余最多的逻辑域,确定第三逻辑域为资源剩余最多的逻辑域,因此,将第五目标虚拟机部署在任一第三逻辑域内;情况二,在第二虚拟机中的第五目标虚拟机为首个部署的虚拟机,且第二逻辑域包括第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,根据第二原则终端的优先选择资源剩余最多的逻辑域,将第五目标虚拟机部署在资源剩余最多的第一逻辑域中;情况三,在第二虚拟机中的第六目标虚拟机已经部署在第二逻辑域中的第五目标逻辑域的情况下,若第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,则直接将第五目标虚拟机部署在第五目标逻辑域内;情况四:在第二虚拟机中的第六目标虚拟机已经部署在第二逻辑域中的第五目标逻辑域的情况下,若第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,则直接将第五目标虚拟机直接部署在除已经部署了第二虚拟机的第二逻辑域中资源剩余最多的逻辑域内。
例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1部署在逻辑域A中,主虚拟机2部署在逻辑域B中后,若第二VNF中包括三个虚拟机,分别为备虚拟机1、备虚拟机2和备虚拟机3,针对情况一,若备虚拟机1、备虚拟机2和备虚拟机3对应的第二逻辑域参数指示该三个备虚拟机部署在三个不同的第二逻辑域上,则第二逻辑域包括第一逻辑域中的逻辑域A、逻辑域B和一个新增的逻辑域C(第三逻辑域),则在部署备虚拟机1时,根据第二原则:优先选择资源剩余量最多的逻辑域,将备虚拟机1部署在逻辑域C上;针对情况二,若备虚拟机1、备虚拟机2和备虚拟机3对应的第二逻辑域参数指示该三个备虚拟机部署在两个不同的第二逻辑域上,具体地,备虚拟机1和备虚拟机2部署在一个第二逻辑域上,备虚拟机3部署在另一个第二逻辑域上,则确定第二逻辑域包括逻辑域A和逻辑域B,根据第二原则终端的优先选择资源剩余最多的逻辑域,由于逻辑域A和逻辑域B均部署了一个主虚拟机,则备虚拟机1可以随机部署在逻辑域A或逻辑域B上,若备虚拟机1部署在逻辑域A上,备虚拟机2直接部署在逻辑域A上,备虚拟机3直接部署在逻辑域B上;针对情况三,在根据备虚拟机1、备虚拟机2和备虚拟机3对应的第二逻辑域参数指示该三个备虚拟机部署在两个不同的第二逻辑域上,具体地,备虚拟机1和备虚拟机2部署在一个第二逻辑域上,备虚拟机3部署在另一个第二逻辑域上,确定第二逻辑域包括第一逻辑域中的逻辑域A和逻辑域B时,若第二虚拟机中的备虚拟机1(第六目标虚拟机)已经部署在逻辑域B的情况下,直接将备虚拟机2(第五目标虚拟机)部署在逻辑域B上,备虚拟机3部署在逻辑域A上;针对情况四,在根据备虚拟机1、备虚拟机2和备虚拟机3对应的第二逻辑域参数指示该三个备虚拟机部署在两个不同的第二逻辑域上,具体地,备虚拟机1和备虚拟机3部署在一个第二逻辑域上,备虚拟机2部署在另一个第二逻辑域上,确定第二逻辑域包括第一逻辑域中的逻辑域A和逻辑域B时,若第二虚拟机中的第六目标虚拟机(备虚拟机1)已经部署在逻辑域B的情况下,直接将备虚拟机2(第五目标虚拟机)部署在逻辑域A上,备虚拟机3部署在逻辑域B上。
再例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1和主虚拟机2均部署在逻辑域A中,若第二VNF中包括两个虚拟机,分别为备虚拟机1、备虚拟机2和备虚拟机3,针对情况一,若备虚拟机1、备虚拟机2和备虚拟机3分别对应的第二逻辑域参数指示该三个备虚拟机部署在三个不同的第二逻辑域上,则确定第二逻辑域除包括逻辑域A之外,还包括两个新增的第三逻辑域(逻辑域B和逻辑域C),则在部署备虚拟机1时,根据第二原则:优先选择资源剩余量最多的逻辑域,由于逻辑域B和逻辑域C都是新增的逻辑域,其中均未部署虚拟机,则可以将备虚拟机1(第五目标虚拟机)随机部署在逻辑域B和逻辑域C中的任意一个;针对情况二,若备虚拟机1、备虚拟机2和备虚拟机3分别对应的第二逻辑域参数指示该三个备虚拟机部署在一个第二逻辑域上,则确定第二逻辑域为逻辑域A,则在部署备虚拟机1(第五目标虚拟机)时,将备虚拟机1部署在逻辑域A中;针对情况三,若备虚拟机1、备虚拟机2和备虚拟机3分别对应的第二逻辑域参数指示该三个备虚拟机部署在两个不同的第二逻辑域上,其中,备虚拟机1和备虚拟机2对应的同一个第二逻辑域参数,备虚拟机3对应的第二逻辑域参数与备虚拟机1、备虚拟机2对应的第二逻辑域参数不同,则确定第二逻辑域包括逻辑域A之外,还包括一个新增的第三逻辑域(逻辑域B),则在备虚拟机1(第六目标虚拟机)已经部署在逻辑域B(第五目标逻辑域)中的情况下,在部署备虚拟机2(第五目标虚拟机)时,直接将备虚拟机2部署在逻辑域B中;针对情况四,若备虚拟机1、备虚拟机2和备虚拟机3分别对应的第二逻辑域参数指示该三个备虚拟机部署在三个不同的第二逻辑域上,则确定第二逻辑域包括逻辑域A之外,还包括两个新增的第三逻辑域(逻辑域B和逻辑域C),在备虚拟机1(第六目标虚拟机)部署在逻辑域B(第五目标逻辑域)中的情况下,根据第二原则:优先选择资源剩余量最多的逻辑域,在部署备虚拟机2(第五目标虚拟机)时,将备虚拟机2部署在除逻辑域B之外的资源剩余最多的逻辑域,也就是逻辑域C内。
通过上述步骤,可以实现快速、高效地将第一NVF架构之后的其余NVF架构中的全部虚拟机的部署。
进一步,所述方法还包括:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
还需要说明的是,在对第二VNF架构的第二VM进行部署时,在将第二VM中的第一目标虚拟机部署在第一目标逻辑域时,若第一目标逻辑域的资源剩余量不能部署该第一目标虚拟机的情况下,则按照第二原则,在所述第二逻辑域中增加第二目标逻辑域,将第一目标虚拟机部署在新增的第二目标逻辑域内。
例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1部署在逻辑域A中,主虚拟机2部署在逻辑域B中后,若第二VNF中包括两个虚拟机,分别为备虚拟机1和备虚拟机2,且根据备虚拟机1和备虚拟机2的第二逻辑域参数确定第二逻辑域的数量为两个,也就是逻辑域A和逻辑域B,在将备虚拟机1(第一目标虚拟机)部署在逻辑域B(第一目标逻辑域)上时,逻辑域B的资源剩余量不能满足备虚拟机1的部署需求时,在第二逻辑域中增加逻辑域C(第二目标逻辑域),将备虚拟机1部署在逻辑域C上。
再例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1部署在逻辑域A中,主虚拟机2部署在逻辑域B中后,若第二VNF中包括三个虚拟机,分别为备虚拟机1、备虚拟机2,且根据备虚拟机1、备虚拟机2和备虚拟机3分别的第二逻辑域参数确定第二逻辑域的数量为两个,也就是逻辑域A和逻辑域B,其中,备虚拟机2和备虚拟机3对应相同的第二逻辑域参数,备虚拟机1对应的第二逻辑域参数与备虚拟机2、备虚拟机3对应的第二逻辑域参数不同,在将备虚拟机1部署在逻辑域B中,将备虚拟机2部署在逻辑域A中后,需要将备虚拟机3也部署在逻辑域A中,在将备虚拟机3也部署在逻辑域A中时,若逻辑域A的资源剩余量不足以部署备虚拟机3,则在第二虚拟机中新增一个逻辑域C(第二目标逻辑域),之后,将备虚拟机3部署在逻辑域C中,之后,备虚拟机2也调度至逻辑域C中。
本实施例,可以实现在部署虚拟机时,保证每个逻辑域都有足够的资源部署虚拟机,且有利于后续的虚拟机在逻辑域上的正常运行。
进一步地,在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述方法还包括:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
也就是,针对对第二VNF架构的第二VM进行部署的过程中,在将第二VM中的第一目标虚拟机进行部署时,部署该第一目标虚拟机的第一目标逻辑域的资源剩余量不能满足该第一目标虚拟机的部署需求,则按照第二原则,新增一个逻辑域,也就是第二目标逻辑域,将该第一目标虚拟机部署在新增的第二目标逻辑域中之后,若考虑到第二VM中的第二目标虚拟机和第一目标虚拟机具有相同的第二逻辑域参数,且第二目标虚拟机已经部署在第二逻辑域中的第一目标逻辑域的情况下,将该第二目标虚拟机也调度至第二目标逻辑域中。
例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1和主虚拟机2均部署在逻辑域A中,若第二VNF中包括两个虚拟机,分别为备虚拟机1和备虚拟机2,且根据备虚拟机1和备虚拟机2的第二逻辑域参数确定第二逻辑域的数量为一个,也就是逻辑域A,在将备虚拟机1(第二目标虚拟机)部署在逻辑域A(第一目标逻辑域)中后,需要将备虚拟机2(第一目标虚拟机)也部署在逻辑域A,若逻辑域A对应的资源剩余量不能满足部署备虚拟机2的需求,则在第二逻辑域中新增逻辑域B,将备虚拟机2部署在逻辑域B中,之后,将备虚拟机1也调度至逻辑域B中。
再例如,第一VNF中包括的两个第一虚拟机中的主虚拟机1部署在逻辑域A中,主虚拟机2部署在逻辑域B中后,若第二VNF中包括三个虚拟机,分别为备虚拟机1、备虚拟机2,且根据备虚拟机1、备虚拟机2和备虚拟机3分别的第二逻辑域参数确定第二逻辑域的数量为两个,也就是逻辑域A和逻辑域B,其中,备虚拟机2和备虚拟机3对应相同的第二逻辑域参数,备虚拟机1对应的第二逻辑域参数与备虚拟机2、备虚拟机3对应的第二逻辑域参数不同,在将备虚拟机1部署在逻辑域B中,将备虚拟机2(第二目标虚拟机)部署在逻辑域A(第一目标逻辑域)中后,需要将备虚拟机3(第五目标虚拟机)也部署在逻辑域A中,在将备虚拟机3也部署在逻辑域A中时,若逻辑域A的资源剩余量不足以部署备虚拟机3,则在第二虚拟机中新增一个逻辑域C(第二目标逻辑域),之后,将备虚拟机3部署在逻辑域C中,由于,备虚拟机2和备虚拟机3对应相同的第二逻辑域参数,因此,需要将备虚拟机2也调度至逻辑域C中。
下面结合图2,具体说明,根据上述的第一原则和第二原则,进行虚拟机的调度流程。首先业务编排器发起VM部署需求,接口模块在VM部署需求中对每一VM增加逻辑域参数,判断现有的逻辑域的数量是否满足逻辑域参数的需求,若不满足,则新增逻辑域,并在新增的逻辑域中新增计算节点,若满足,则判断已剩余最多资源的逻辑域是否满足VM部署需求,若不满足,则新增逻辑域,并在新增的逻辑域中新增计算节点,若满足,则将VM调度至最优的逻辑域。
还需要说明的是,本发明实施例对于现有虚拟层调度机制,增强部分主要为接口模块、调度模块之外,还包括数据库部分,在数据库存储的服务器信息中,新增逻辑域属性,未部署VM的逻辑域属性值为空,已部署VM的逻辑域属性值为该逻辑域上调度到的第一个VM逻辑域参数的值。
可选地,所述方法还包括:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
本发明实施例中,通过将所有VNF架构的VM,按照可靠性要求划分到不同的逻辑域中,方便后期的计算节点批量重启。
具体地,在将全部虚拟机部署至逻辑域上后,可以接收重启指令,根据重启指令,对划分的逻辑域中的该重启指令指示的逻辑域中的全部计算节点上的所有虚拟机进行重启,可选地,重启指令可以为升级指令,对划分的逻辑域中的重启指令指示的逻辑域中的计算节点上的虚拟机进行重启,也就是对划分的逻辑域中的重启指令指示的逻辑域中的计算节点上的虚拟机进行升级。
本发明实施例,再将全部的虚拟机部署至对应的逻辑域内后,在接收到升级指令时,可以将一个逻辑域中的全部计算节点上的虚拟机全部进行升级,既保证了业务的正常运行,也可以实现批量计算节点的大规模升级,提升升级效率和稳定性。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,
所述对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启,包括:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
具体地,在划分的至少一个逻辑域为多个逻辑域的情况下,在对多个逻辑域中的任一逻辑域中的计算节点上的虚拟机进行重启时,将该逻辑域中的全部虚拟机的业务倒换至非该逻辑域内的备用虚拟机上,对该逻辑域内的全部虚拟机进行重启。
需要说明的是,本实施例中的多个逻辑域为两个或两个以上的逻辑域。
该实施方式,可以保证业务无感升级:在虚拟层升级过程中直接进行业务倒换,不对业务运行基础设施(VM)迁移,对上层业务稳定运行零影响。
本发明实施例提出在VM调度选择计算节点时增加逻辑域参数,根据可靠性要求将VNF内所有VM按照逻辑域划分部署到相应的计算节点上,同时,调度过程增加相应的过滤调度原则,根据逻辑域参数和现有的逻辑域划分情况进行过滤选择,部署VM。本发明实施例,可以提升资源池升级效率:资源池版本收敛过程中,无需对节点进行业务VM的检查工作,可实现直接进行大批量规模节点的升级工作,大幅提升了资源池虚拟层版本升级效率,并且方案简洁、可靠:整体方案对接口模块和调度模块进行增强,接口模块增加一个参数,调度机制对服务器逻辑域划分和VM逻辑域调度部署流程,经过简单改造即可实现目标,同时逻辑域是根据业务部署需求来划分的,没有改变前期资源池规划策略,对周边无影响。
本发明实施例还提供一种核心网网元,如图4所示,包括处理器401,所述处理器401用于,获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
可选地,所述处理器401,具体用于:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,所述处理器401,具体用于:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述处理器401,具体还用于:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,所述处理器401,具体还用于:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述处理器401,具体还用于:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述处理器401,具体还用于:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,所述处理器401在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述处理器401,具体还用于:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述处理器401,还用于:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,所述处理器401,具体还用于:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
本发明实施例还提供一种虚拟机调度装置,如图5所示,包括:
获取模块501,用于获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
部署模块502,用于根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
本发明实施例,通过获取接口模块发送的包括多个逻辑域参数的虚拟机调度需求,遵循具有相同的逻辑域参数的虚拟机属于同一逻辑域的原则,根据逻辑域参数,进行多个逻辑域上虚拟机的部署,将虚拟机部署至对应的逻辑域节点内,可以实现对虚拟机所属的逻辑域的划分,以及虚拟机在逻辑域内的部署。
可选地,所述部署模块502,包括:
第一确定单元,用于根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;
第二部署单元,用于将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,所述第二部署单元,具体用于:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述部署模块502,还包括:
第二确定单元,用于根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
第二部署单元,用于按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,所述第二部署单元,具体用于:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述第二部署单元,具体用于:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述部署模块502,还包括:
第三部署单元,用于在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,所述第三部署单元,还用于:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述装置还包括:
接收模块,用于接收重启指令;
重启模块,用于根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,所述重启模块,包括:
倒换单元,用于将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;重启单元,用于对所述第四逻辑域内所有虚拟机进行重启;其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
需要说明的是,本发明实施例提供的虚拟机调度装置,是能够执行上述的虚拟机调度方法的装置,则上述的虚拟机调度方法的所有实施例均适用于该装置,且能够达到相同或者相似的技术效果。
本发明实施例另一方面还提供一种网络设备,如图6所示,包括:处理器601;以及通过总线接口602与所述处理器601相连接的存储器603,所述存储器603用于存储所述处理器601在执行操作时所使用的程序和数据,所述处理器601调用并执行所述存储器603中所存储的程序和数据。
其中,收发机604与总线接口602连接,用于在所述处理器601的控制下接收和发送数据,具体地,所述处理器601用于读取所述存储器603中的程序,执行下列过程:
获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
可选地,所述处理器601,具体用于:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;将所述第一虚拟机部署在对应的所述第一逻辑域内。
可选地,所述处理器601,具体用于:
在第三目标虚拟机为所述第一虚拟机中首个部署的虚拟机的情况下,将所述第三目标虚拟机部署在任一第一逻辑域内;
在第三目标虚拟机与第四目标虚拟机具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第三目标逻辑域内;
在第三目标虚拟机与第四目标虚拟机不具有相同的第一逻辑域参数,且所述第四目标虚拟机部署在第三目标逻辑域的情况下,将所述第三目标虚拟机部署在所述第一逻辑域中除所述第三目标逻辑域之外的任一逻辑域内;
其中,所述第三目标虚拟机为所述第一虚拟机中的一个虚拟机;所述第四目标虚拟机为所述第一虚拟机中除所述第三目标虚拟机之外的一个虚拟机;
所述第三目标逻辑域为所述第一逻辑域中的一个逻辑域。
可选地,所述处理器601,具体还用于:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
可选地,所述处理器601,具体还用于:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
可选地,所述处理器601,具体还用于:
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域的情况下,将所述第五目标虚拟机部署在任一所述第三逻辑域内;
在第五目标虚拟机为所述第二虚拟机中首个部署的虚拟机,且所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域的情况下,将所述第五目标虚拟机部署在第四目标逻辑域内;所述第四目标逻辑域为所述第一逻辑域中资源剩余最多的一个逻辑域;
在第五目标虚拟机与第六目标虚拟机具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在所述第五目标逻辑域内;
在第五目标虚拟机与第六目标虚拟机不具有相同的第二逻辑域参数,且所述第六目标虚拟机部署在第五目标逻辑域的情况下,将所述第五目标虚拟机部署在第六目标逻辑域内;
其中,所述第五目标虚拟机为所述第二虚拟机中的一个虚拟机;所述第六目标虚拟机为所述第二虚拟机中除所述第五目标虚拟机之外的一个虚拟机;
所述第五目标逻辑域为所述第二逻辑域中任一逻辑域;所述第六目标逻辑域为所述第二逻辑域中除所述第五目标逻辑域之外的,资源剩余最多的逻辑域。
可选地,所述处理器601,具体还用于:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
可选地,所述处理器601在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述处理器601,具体还用于:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
可选地,所述处理器601,还用于:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
可选地,在所述至少一个逻辑域包括多个逻辑域的情况下,所述处理器601,具体还用于:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
其中,在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器601代表的一个或多个处理器和存储器603代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机604可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。处理器601负责管理总线架构和通常的处理,存储器603可以存储处理器601在执行操作时所使用的数据。
另外,本发明具体实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上中任一项所述的虚拟机调度方法中的步骤
在本申请所提供的几个实施例中,应该理解到,所揭露方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述收发方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述原理前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (12)

1.一种虚拟机调度方法,其特征在于,包括:
获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
2.根据权利要求1所述的虚拟机调度方法,其特征在于,根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,包括:
根据第一网络功能虚拟化NVF架构的每个第一虚拟机分别对应的第一逻辑域参数,确定部署所述第一虚拟机的第一逻辑域;其中,具有相同的第一逻辑域参数的第一虚拟机对应相同的第一逻辑域;
将所述第一虚拟机部署在对应的所述第一逻辑域内。
3.根据权利要求2所述的虚拟机调度方法,其特征在于,所述方法还包括:
根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域;其中,具有相同的第二逻辑域参数的第二虚拟机对应相同的第二逻辑域;
按照优先选择剩余资源最多的逻辑域进行部署的原则,将所述第二虚拟机对应部署在所述第二逻辑域内。
4.根据权利要求3所述的虚拟机调度方法,其特征在于,根据第二NVF架构的每个第二虚拟机分别对应的第二逻辑域参数和所述第一逻辑域,确定部署所述第二虚拟机的第二逻辑域,包括:
根据所述第二逻辑域参数,确定部署所述第二虚拟机的第二逻辑域的数量;
在所述第一逻辑域的数量小于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域和新增的第一目标个数的第三逻辑域;
在所述第一逻辑域的数量大于或等于所述第二逻辑域的数量的情况下,确定所述第二逻辑域包括所述第一逻辑域中第二目标个数的资源剩余最多的逻辑域;
其中,所述第一目标个数为所述第二逻辑域的数量与所述第一逻辑域的数量之差;
所述第二目标个数为所述第二逻辑域的数量。
5.根据权利要求4所述的虚拟机调度方法,其特征在于,所述方法还包括:
在所述第二逻辑域中的第一目标逻辑域的资源剩余量不能部署第一目标虚拟机的情况下,在所述第二逻辑域中增加第二目标逻辑域,将所述第一目标虚拟机部署在所述第二目标逻辑域内;
其中,所述第一目标虚拟机为所述第二虚拟机中的一个虚拟机。
6.根据权利要求5所述的虚拟机调度方法,其特征在于,在所述将所述第一目标虚拟机部署在所述第二目标逻辑域内之后,所述方法还包括:
在所述第一目标虚拟机和第二目标虚拟机具有相同的第二逻辑域参数,且所述第二目标虚拟机已经部署在所述第一目标逻辑域内的情况下,将所述第二目标虚拟机调度至所述第二目标逻辑域内;
其中,所述第二目标虚拟机为所述第二虚拟机中除所述第一目标虚拟机之外的一个虚拟机。
7.根据权利要求1所述的虚拟机调度方法,其特征在于,所述方法还包括:
接收重启指令;
根据所述重启指令,对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启;
其中,所述第四逻辑域为所述至少一个逻辑域中的一个逻辑域。
8.根据权利要求7所述的虚拟机调度方法,其特征在于,在所述至少一个逻辑域包括多个逻辑域的情况下,
所述对所述重启指令指示的第四逻辑域内所有虚拟机的进行重启,包括:
将所述重启指令指示的第四逻辑域内所有虚拟机上运行的业务倒换至第五逻辑域内的所有虚拟机中的备用虚拟机上;
对所述第四逻辑域内所有虚拟机进行重启;
其中,所述第五逻辑域为所述多个逻辑域中除所述第四逻辑域之外的任一逻辑域。
9.一种核心网网元,包括处理器,其特征在于:
所述处理器用于,获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
10.一种虚拟机调度装置,其特征在于,包括:
获取模块,用于获取接口模块发送的虚拟机调度需求;所述虚拟机调度需求中包括至少一个逻辑域参数;一个虚拟机对应一个所述逻辑域参数;
部署模块,用于根据所述逻辑域参数,进行至少一个逻辑域上虚拟机的部署,使具有相同的逻辑域参数的虚拟机属于同一逻辑域。
11.一种网络设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的程序,所述程序被所述处理器执行时实现如权利要求1至8中任一项所述的虚拟机调度方法。
12.一种可读存储介质,其特征在于,所述可读存储介质上存储有程序,所述程序被处理器执行时实现如权利要求1至8中任一项所述的虚拟机调度方法中的步骤。
CN202111612083.6A 2021-12-27 2021-12-27 一种虚拟机调度方法、装置、核心网网元和网络设备 Pending CN116360912A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111612083.6A CN116360912A (zh) 2021-12-27 2021-12-27 一种虚拟机调度方法、装置、核心网网元和网络设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111612083.6A CN116360912A (zh) 2021-12-27 2021-12-27 一种虚拟机调度方法、装置、核心网网元和网络设备

Publications (1)

Publication Number Publication Date
CN116360912A true CN116360912A (zh) 2023-06-30

Family

ID=86935611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111612083.6A Pending CN116360912A (zh) 2021-12-27 2021-12-27 一种虚拟机调度方法、装置、核心网网元和网络设备

Country Status (1)

Country Link
CN (1) CN116360912A (zh)

Similar Documents

Publication Publication Date Title
CN102246152B (zh) 保存程序执行状态
CN102346460B (zh) 一种基于事务的服务控制系统及其控制方法
EP3761170B1 (en) Virtual machine creation method and apparatus
CN102103518B (zh) 一种在虚拟化环境中管理资源的系统及其实现方法
US9413604B2 (en) Instance host configuration
CN101946258B (zh) 基于计算机的业务过程在专用硬件上的基于模型的部署
US20200226520A1 (en) Methods and systems to optimize server utilization for a virtual data center
CN108076156B (zh) 一种基于中国云产品的混合云系统
US20200153898A1 (en) Automated infrastructure updates in a cluster environment that includes containers
US11385883B2 (en) Methods and systems that carry out live migration of multi-node applications
EP2948865B1 (en) Instance host configuration
US8966025B2 (en) Instance configuration on remote platforms
WO2012054160A2 (en) High availability of machines during patching
CN112948063A (zh) 云平台的创建方法、装置、云平台以及云平台实现系统
CN108369529A (zh) 通过反关联规则为实例分配主机
US20230035310A1 (en) Systems that deploy and manage applications with hardware dependencies in distributed computer systems and methods incorporated in the systems
CN111988160A (zh) 一种虚拟化网络功能的部署方法和装置
CN116360912A (zh) 一种虚拟机调度方法、装置、核心网网元和网络设备
CN115904467A (zh) 具有全局变量改变的服务的回滚
CN116166413A (zh) 针对异构基础设施上的工作负载的生命周期管理
CN115277398A (zh) 一种集群的网络配置方法和装置
CN112612579A (zh) 虚拟机部署方法、存储介质及计算机设备
CN117608810B (zh) 服务处理方法、装置、电子设备及存储介质
US20230337063A1 (en) Cellular system observability architecture
US20230337062A1 (en) Cellular system observability centralized for all domains and vendors

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