Movatterモバイル変換


[0]ホーム

URL:


CN110795202B - A resource allocation method and device for a virtualized cluster resource management system - Google Patents

A resource allocation method and device for a virtualized cluster resource management system
Download PDF

Info

Publication number
CN110795202B
CN110795202BCN201810872138.9ACN201810872138ACN110795202BCN 110795202 BCN110795202 BCN 110795202BCN 201810872138 ACN201810872138 ACN 201810872138ACN 110795202 BCN110795202 BCN 110795202B
Authority
CN
China
Prior art keywords
virtual machine
server
llc
target
memory bandwidth
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
Application number
CN201810872138.9A
Other languages
Chinese (zh)
Other versions
CN110795202A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co LtdfiledCriticalHuawei Technologies Co Ltd
Priority to CN201810872138.9ApriorityCriticalpatent/CN110795202B/en
Publication of CN110795202ApublicationCriticalpatent/CN110795202A/en
Application grantedgrantedCritical
Publication of CN110795202BpublicationCriticalpatent/CN110795202B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Classifications

Landscapes

Abstract

A resource allocation method and device for a virtualized cluster resource management system comprises the following steps: the method comprises the steps that a virtualized infrastructure management system VIM obtains three-level cache LLC parameters and memory bandwidth parameters of a target virtual machine, wherein the target virtual machine is a virtual machine to be created; the VIM selects a target server from a server cluster according to the LLC parameter and the memory bandwidth parameter, wherein the server cluster is a server for maintenance management of the VIM; the VIM sends a virtual machine creation request to the target server, wherein the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter, so that the target server allocates LLC for the target virtual machine according to the LLC parameter, and allocates memory bandwidth for the target virtual machine according to the memory bandwidth parameter, so as to complete creation of the target virtual machine. Because the VIM distributes independent LLC and memory bandwidth for the virtual machine when the virtual machine is created, the virtual machine is ensured not to be influenced by other virtual machines which are deployed together when running, and the performance stability of the virtual machine is further ensured.

Description

Translated fromChinese
一种虚拟化集群资源管理系统的资源分配方法以及装置A resource allocation method and device for a virtualized cluster resource management system

技术领域Technical field

本申请涉及计算机领域,尤其涉及一种虚拟化集群资源管理系统的资源分配方法以及装置。The present application relates to the field of computers, and in particular, to a resource allocation method and device for a virtualized cluster resource management system.

背景技术Background technique

虚拟化技术,是在一个物理硬件机器上同时运行多个独立的操作系统,独立运行的操作系统资源来自于同一底层平台资源,底层的监督器负责系统资源的分配、虚拟机的调度、虚拟机间及虚拟机与外界的通信。虚拟化技术使用软件的方法来重新定义和划分资源,可以实现资源的动态分配、灵活调度、跨域共享、提高资源利用率。Virtualization technology is to run multiple independent operating systems at the same time on a physical hardware machine. The independently running operating system resources come from the same underlying platform resources. The underlying supervisor is responsible for the allocation of system resources, virtual machine scheduling, and virtual machine scheduling. communication between virtual machines and the outside world. Virtualization technology uses software methods to redefine and divide resources, which can realize dynamic allocation, flexible scheduling, cross-domain sharing of resources, and improve resource utilization.

在此基础上,网络功能虚拟化(network function virtualization,NFV)提供一个新的网络产品环境,降低成本,提高效率、增加敏捷能力。通过使用通用性硬件以及虚拟化技术,来承载很多功能的软件处理。从而降低网络昂贵的设备成本。同时NFV可以通过软硬件解耦及功能抽象,使网络设备功能不再依赖于专用硬件,资源可以充分灵活共享,实现新业务的快速开发和部署,并基于实际业务需求进行自动部署、弹性伸缩、故障隔离和自愈等。On this basis, network function virtualization (NFV) provides a new network product environment that reduces costs, improves efficiency, and increases agility. By using general-purpose hardware and virtualization technology, software processing for many functions can be carried. Thereby reducing the cost of expensive network equipment. At the same time, NFV can decouple software and hardware and abstract functions so that network device functions no longer depend on dedicated hardware, and resources can be fully and flexibly shared to achieve rapid development and deployment of new services, and perform automatic deployment, elastic scaling, and deployment based on actual business needs. Fault isolation and self-healing, etc.

当前主流的服务器芯片,在同一个处理器(central processing unit,CPU)上,三级缓存(last level cache,LLC)和内存带宽是被所有核共享的。如在同一台物理服务器上部署两个虚拟化网络功能(virtual network function,VNF)虚拟机(虚拟机1和虚拟机2),而且这两个虚拟机刚好部署在了同一个CPU上,该虚拟机1和该虚拟机2共享LLC和内存带宽。由于虚拟机1和虚拟机2共享LLC和内存带宽,因此当虚拟机1进行大量访存时,可能将虚拟机2在LLC中缓存的数据淘汰出去,也可能挤占虚拟机2的访存带宽性能,这种资源竞争会导致虚拟机性能不稳定。In current mainstream server chips, on the same processor (central processing unit, CPU), the last level cache (LLC) and memory bandwidth are shared by all cores. For example, two virtual network function (VNF) virtual machines (virtual machine 1 and virtual machine 2) are deployed on the same physical server, and the two virtual machines happen to be deployed on the same CPU. Machine 1 and virtual machine 2 share LLC and memory bandwidth. Since virtual machine 1 and virtual machine 2 share the LLC and memory bandwidth, when virtual machine 1 performs a large amount of memory access, the data cached in the LLC by virtual machine 2 may be eliminated, and the memory access bandwidth performance of virtual machine 2 may also be squeezed out. ,This kind of resource competition will lead to unstable ,virtual machine performance.

发明内容Contents of the invention

本申请实施例提供了一种虚拟化集群资源管理系统的资源分配方法和装置,用于为各虚拟机分配独立的LLC和内存带宽,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。Embodiments of the present application provide a resource allocation method and device for a virtualized cluster resource management system, which is used to allocate independent LLC and memory bandwidth to each virtual machine, thereby ensuring that the virtual machine is not affected by other co-deployed virtual machines when running. impact to ensure the stable performance of the virtual machine.

第一方面,本申请实施例提供一种虚拟化集群资源管理系统的资源分配方法,具体包括:虚拟化基础设施管理系统(virtualized infrastructure manager,VIM)获取目标虚拟机的三级缓存(last level cache,LLC)参数和内存带宽参数,该目标虚拟机为该虚拟化集群管理系统的待创建虚拟机;然后该VIM根据该LLC参数和该内存带宽参数遍历该VIM维护管理的服务器,在服务器的可用LLC满足和可用内存带宽满足过滤条件时,该VIM确定该服务器为目标服务器;然后该VIM向该目标服务器发送虚拟机创建请求,该虚拟机创建请求中携带该LLC参数和该内存带宽参数;该目标服务器在接收到该虚拟机创建请求之后,根据该LLC参数和该内存带宽参数为该目标虚拟机分配相应的LLC和内存带宽,并完成该目标虚拟机的创建过程。In the first aspect, embodiments of the present application provide a resource allocation method for a virtualized cluster resource management system, which specifically includes: a virtualized infrastructure management system (virtualized infrastructure manager, VIM) obtains the last level cache of the target virtual machine. , LLC) parameters and memory bandwidth parameters, the target virtual machine is the virtual machine to be created for the virtualization cluster management system; then the VIM traverses the servers maintained and managed by the VIM according to the LLC parameters and the memory bandwidth parameters, and the server's available When the LLC meets the filtering conditions and the available memory bandwidth meets the filtering conditions, the VIM determines that the server is the target server; then the VIM sends a virtual machine creation request to the target server, and the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter; the VIM After receiving the virtual machine creation request, the target server allocates the corresponding LLC and memory bandwidth to the target virtual machine based on the LLC parameter and the memory bandwidth parameter, and completes the creation process of the target virtual machine.

本实施例提供的技术方案中,该VIM在创建虚拟机的过程中获取到该虚拟机的LLC和内存带宽的需求,并将该需求发送给创建虚拟机的服务器,以使得该服务器根据该虚拟机的LLC和内存带宽需求进行相应的资源分配,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。In the technical solution provided by this embodiment, the VIM obtains the LLC and memory bandwidth requirements of the virtual machine during the process of creating the virtual machine, and sends the requirements to the server that created the virtual machine, so that the server can obtain the LLC and memory bandwidth requirements of the virtual machine according to the virtual machine creation process. Allocate resources accordingly according to the LLC and memory bandwidth requirements of the machine, thereby ensuring that the running time of the virtual machine is not affected by other co-deployed virtual machines and ensuring the stable performance of the virtual machine.

可选的,在网络功能虚拟化(network function virtualization,NFV)场景下,该VIM获取该目标虚拟机的LLC参数和内存带宽参数的过程如下:Optionally, in a network function virtualization (NFV) scenario, the VIM process of obtaining the LLC parameters and memory bandwidth parameters of the target virtual machine is as follows:

该VIM接收该NFV系统中的网络功能虚拟化组织管理系统(network functionvirtualization management and orchestration,NFV-MANO)发送的该LLC参数和该内存带宽参数;其中,该LLC参数和该内存带宽参数保存在虚拟化网络功能信息模型描述模板(virtual network function descriptor,VNFD)的虚拟部署单元(virtual deploymentunit,VDU)中。The VIM receives the LLC parameter and the memory bandwidth parameter sent by the network function virtualization management and orchestration (NFV-MANO) in the NFV system; wherein the LLC parameter and the memory bandwidth parameter are stored in the virtual in the virtual deployment unit (VDU) of the virtual network function information model description template (virtual network function descriptor, VNFD).

具体来说,首先是用户在VNFD的虚拟部署单元(virtual deployment unit,VDU)内定义好该目标虚拟机所需要的LLC大小和内存带宽大小(即LLC参数和内存带宽参数);然后在Orchestrator触发了布署VNF的流程之后,该MANO读取与该虚拟化的网络功能(virtual network function,VNF)对应的VNFD,获取该LLC参数和该内存带宽参数;然后该MANO通过VIM侧提供的虚拟机创建接口将该LLC参数和该内存带宽参数发送给该VIM。这样在VNFD中的VDU提前定义好该目标虚拟机的LLC参数和内存带宽参数可以有效的实现该目标虚拟机的LLC和内存带宽的分配。Specifically, the user first defines the LLC size and memory bandwidth required by the target virtual machine (i.e. LLC parameters and memory bandwidth parameters) in the virtual deployment unit (VDU) of VNFD; then triggers it in the Orchestrator After completing the VNF deployment process, the MANO reads the VNFD corresponding to the virtual network function (VNF), obtains the LLC parameters and the memory bandwidth parameters; then the MANO uses the virtual machine provided by the VIM side Create an interface to send the LLC parameter and the memory bandwidth parameter to the VIM. In this way, the VDU in VNFD defines the LLC parameters and memory bandwidth parameters of the target virtual machine in advance, which can effectively realize the allocation of LLC and memory bandwidth of the target virtual machine.

可选的,在该NFV场景下,该VIM根据该LLC参数和该内存带宽参数从服务器集群中选择目标服务器具体包括:该VIM接收该服务器集群中各服务器上报的可用LLC和可用内存带宽;然后该VIM调用自身的过滤器从该服务器群中筛选符合过滤条件的服务器作为备选服务器,其中,该过滤条件包括该可用LLC大于或等于该LLC参数指示的LLC大小,且该可用内存带宽大于或等于该内存带宽参数指示的内存带宽大小;最后,该VIM根据备选服务器的数目确定该目标服务器。若该备选服务器的数目大于1,则该VIM根据选择策略从该备选服务器中确定该目标服务器;若该备选服务器的数目为1,则该VIM确定该备选服务器为该目标服务器;若该备选服务器的数目为0,则该VIM暂停该目标虚拟机的创建。Optionally, in the NFV scenario, the VIM selects the target server from the server cluster based on the LLC parameter and the memory bandwidth parameter. Specifically, the VIM receives the available LLC and available memory bandwidth reported by each server in the server cluster; and then The VIM calls its own filter to select servers that meet the filtering conditions from the server group as candidate servers. The filtering conditions include that the available LLC is greater than or equal to the LLC size indicated by the LLC parameter, and the available memory bandwidth is greater than or equal to the LLC size indicated by the LLC parameter. Equal to the memory bandwidth size indicated by the memory bandwidth parameter; finally, the VIM determines the target server based on the number of candidate servers. If the number of the candidate servers is greater than 1, then the VIM determines the target server from the candidate servers according to the selection policy; if the number of the candidate servers is 1, then the VIM determines the candidate server as the target server; If the number of candidate servers is 0, the VIM suspends the creation of the target virtual machine.

基于该方法,该VIM根据选择策略确定该目标服务器时,该选择策略可以为从该备选服务器的选择已部署虚拟机数量最多的服务器作为该目标服务器,这样可以有效合理的利用服务器的资源;或者,该选择策略为从该备选服务器任意选择一个服务器作为该目标服务器,这样可以免去计算统计的过程,简化操作过程。Based on this method, when the VIM determines the target server according to the selection strategy, the selection strategy can be to select the server with the largest number of deployed virtual machines from the candidate server as the target server, so that the resources of the server can be effectively and reasonably utilized; Alternatively, the selection strategy is to randomly select a server from the candidate server as the target server, so that the process of calculating statistics can be eliminated and the operation process can be simplified.

可选的,该虚拟化集群资源管理系统在创建好该目标虚拟机后,该目标虚拟机将会进入运行以完成相应的业务。在该目标虚拟机完成业务之后,该虚拟化集群资源管理系统需要将该目标虚拟机进行删除并释放该目标虚拟机占用的LLC和内存带宽,过程如下:该VIM获取删除虚拟机请求,该删除虚拟机请求中携带该目标虚拟机身份标识;然后该VIM根据该目标虚拟机身份标识查找到该目标虚拟机所处的目标服务器;最后该VIM向该目标服务器发送该删除虚拟机请求,该目标服务器在接收到该删除虚拟机请求之后,该目标服务器根据该目标虚拟机ID删除该目标虚拟机。Optionally, after the virtualization cluster resource management system creates the target virtual machine, the target virtual machine will start running to complete the corresponding business. After the target virtual machine completes its business, the virtualization cluster resource management system needs to delete the target virtual machine and release the LLC and memory bandwidth occupied by the target virtual machine. The process is as follows: the VIM obtains a deletion virtual machine request, and the deletion The virtual machine request carries the identity of the target virtual machine; then the VIM finds the target server where the target virtual machine is located based on the identity of the target virtual machine; finally, the VIM sends the deletion virtual machine request to the target server, and the target After the server receives the virtual machine deletion request, the target server deletes the target virtual machine according to the target virtual machine ID.

以NFV系统来说,该虚拟化集群资源管理系统在删除该目标虚拟机的具体操作如下:该VIM维护该目标虚拟机的身份标识(identification,ID),该Orchestrator维护该目标虚拟机组成的VNF。在该VNF需要删除时,该Orchestrator通过VNF ID查找到该VNF,然后通过该VNF ID查找到组成该VNF的目标虚拟机,并确定该目标虚拟机ID;然后该Orchestrator向该VIM发送删除虚拟机请求,并在该删除虚拟机请求中携带该目标虚拟机ID;该VIM在接收到该删除虚拟机请求之后,根据该目标虚拟机ID确定该目标虚拟机所处的目标服务器;然后该VIM向该虚拟机所处的目标服务器发送删除虚拟机请求,该删除虚拟机请求中携带该目标虚拟机ID;该服务器接收到该删除虚拟机请求之后,该服务器中的虚拟机监视器Hypervisor根据该目标虚拟机ID删除该目标虚拟机。同时,该服务器中的虚拟机监视器Hypervisor调用CAT接口释放该目标虚拟机占用的LLC;该服务器的虚拟机监视器Hypervisor调用MBA接口释放该目标虚拟机占用的内存带宽,最终确保该目标虚拟机可以释放其占用的LLC和内存带宽,实现服务器LLC和内存带宽的重复使用。Taking the NFV system as an example, the specific operations of the virtualization cluster resource management system in deleting the target virtual machine are as follows: the VIM maintains the identification (ID) of the target virtual machine, and the Orchestrator maintains the VNF composed of the target virtual machine. . When the VNF needs to be deleted, the Orchestrator finds the VNF through the VNF ID, then finds the target virtual machine that makes up the VNF through the VNF ID, and determines the target virtual machine ID; then the Orchestrator sends a deletion virtual machine message to the VIM. request, and carry the target virtual machine ID in the virtual machine deletion request; after receiving the virtual machine deletion request, the VIM determines the target server where the target virtual machine is located based on the target virtual machine ID; then the VIM The target server where the virtual machine is located sends a virtual machine deletion request, and the virtual machine deletion request carries the target virtual machine ID; after the server receives the virtual machine deletion request, the virtual machine monitor hypervisor in the server Delete the target virtual machine based on the virtual machine ID. At the same time, the virtual machine monitor Hypervisor in the server calls the CAT interface to release the LLC occupied by the target virtual machine; the virtual machine monitor Hypervisor in the server calls the MBA interface to release the memory bandwidth occupied by the target virtual machine, ultimately ensuring that the target virtual machine The LLC and memory bandwidth occupied by it can be released to realize reuse of server LLC and memory bandwidth.

第二方面,本申请实施例提供一种虚拟化集群资源管理系统的方法,具体包括:服务器接收VIM发送的虚拟机创建请求,该虚拟机创建请求携带待创建的目标虚拟机的LLC参数和内存带宽参数;其中,该LLC参数和该内存带宽参数由该VIM获取;然后该服务器根据该LLC参数为该目标虚拟机分配相应的LLC,并根据该内存带宽参数为该目标虚拟机分配相应的内存带宽;最后该服务器完成该目标虚拟机的创建。In the second aspect, embodiments of the present application provide a method for virtualizing a cluster resource management system, which specifically includes: the server receives a virtual machine creation request sent by VIM, and the virtual machine creation request carries the LLC parameters and memory of the target virtual machine to be created. Bandwidth parameters; among them, the LLC parameter and the memory bandwidth parameter are obtained by the VIM; then the server allocates the corresponding LLC to the target virtual machine based on the LLC parameter, and allocates the corresponding memory to the target virtual machine based on the memory bandwidth parameter. bandwidth; finally the server completes the creation of the target virtual machine.

本实施例中,该服务器根据该LLC参数和该内存带宽参数为该目标虚拟分配所需要的LLC和内存带宽,即目标虚拟机有专用的LLC和内存带宽,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。In this embodiment, the server allocates the required LLC and memory bandwidth to the target virtual machine based on the LLC parameter and the memory bandwidth parameter, that is, the target virtual machine has a dedicated LLC and memory bandwidth, thereby ensuring that the virtual machine is not affected by common The impact of other deployed virtual machines ensures the stable performance of the virtual machine.

可选的,该虚拟化集群资源管理系统在创建好该目标虚拟机后,该目标虚拟机将会进入运行以完成相应的业务。在该目标虚拟机完成业务之后,该虚拟化集群资源管理系统需要将该目标虚拟机进行删除并释放该目标虚拟机占用的LLC和内存带宽,过程如下:该VIM获取删除虚拟机请求,该删除虚拟机请求中携带该目标虚拟机身份标识;然后该VIM根据该目标虚拟机身份标识查找到该目标虚拟机所处的目标服务器;最后该VIM向该目标服务器发送该删除虚拟机请求,该目标服务器在接收到该删除虚拟机请求之后,该目标服务器根据该目标虚拟机ID删除该目标虚拟机。Optionally, after the virtualization cluster resource management system creates the target virtual machine, the target virtual machine will start running to complete the corresponding business. After the target virtual machine completes its business, the virtualization cluster resource management system needs to delete the target virtual machine and release the LLC and memory bandwidth occupied by the target virtual machine. The process is as follows: the VIM obtains a deletion virtual machine request, and the deletion The virtual machine request carries the identity of the target virtual machine; then the VIM finds the target server where the target virtual machine is located based on the identity of the target virtual machine; finally, the VIM sends the deletion virtual machine request to the target server, and the target After the server receives the virtual machine deletion request, the target server deletes the target virtual machine according to the target virtual machine ID.

以NFV系统来说,该虚拟化集群资源管理系统在删除该目标虚拟机的具体操作如下:该VIM维护该目标虚拟机的身份标识(identification,ID),该Orchestrator维护该目标虚拟机组成的VNF。在该VNF需要删除时,该Orchestrator通过VNF ID查找到该VNF,然后通过该VNF ID查找到组成该VNF的目标虚拟机,并确定该目标虚拟机ID;然后该Orchestrator向该VIM发送删除虚拟机请求,并在该删除虚拟机请求中携带该目标虚拟机ID;该VIM在接收到该删除虚拟机请求之后,根据该目标虚拟机ID确定该目标虚拟机所处的目标服务器;然后该VIM向该虚拟机所处的目标服务器发送删除虚拟机请求,该删除虚拟机请求中携带该目标虚拟机ID;该服务器接收到该删除虚拟机请求之后,该服务器中的虚拟机监视器Hypervisor根据该目标虚拟机ID删除该目标虚拟机。同时,该服务器中的虚拟机监视器Hypervisor调用CAT接口释放该目标虚拟机占用的LLC;该服务器的虚拟机监视器Hypervisor调用MBA接口释放该目标虚拟机占用的内存带宽,最终确保该目标虚拟机可以释放其占用的LLC和内存带宽,实现服务器LLC和内存带宽的重复使用。Taking the NFV system as an example, the specific operations of the virtualization cluster resource management system in deleting the target virtual machine are as follows: the VIM maintains the identification (ID) of the target virtual machine, and the Orchestrator maintains the VNF composed of the target virtual machine. . When the VNF needs to be deleted, the Orchestrator finds the VNF through the VNF ID, then finds the target virtual machine that makes up the VNF through the VNF ID, and determines the target virtual machine ID; then the Orchestrator sends a deletion virtual machine message to the VIM. request, and carry the target virtual machine ID in the virtual machine deletion request; after receiving the virtual machine deletion request, the VIM determines the target server where the target virtual machine is located based on the target virtual machine ID; then the VIM The target server where the virtual machine is located sends a virtual machine deletion request, and the virtual machine deletion request carries the target virtual machine ID; after the server receives the virtual machine deletion request, the virtual machine monitor hypervisor in the server Delete the target virtual machine based on the virtual machine ID. At the same time, the virtual machine monitor Hypervisor in the server calls the CAT interface to release the LLC occupied by the target virtual machine; the virtual machine monitor Hypervisor in the server calls the MBA interface to release the memory bandwidth occupied by the target virtual machine, ultimately ensuring that the target virtual machine The LLC and memory bandwidth occupied by it can be released to realize reuse of server LLC and memory bandwidth.

第三方面,本申请实施例提供一种资源分配装置,该资源分配装置具有实现上述第一方面中VIM行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。In a third aspect, embodiments of the present application provide a resource allocation device, which has the function of realizing the VIM behavior in the first aspect. The functions described can be implemented by hardware, or can be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.

在一个可能的实现方式中,该VIM包括用于执行以上第一方面各个步骤的单元或模块。例如,该装置包括:获取模块,用于获取目标虚拟机的三级缓存LLC参数和内存带宽参数;处理模块,用于根据所述LLC参数和所述内存带宽参数从服务器集群中选择目标服务器,所述服务器集群为所述VIM维护管理的服务器;发送模块,用于向所述目标服务器发送虚拟机创建请求,所述虚拟机创建请求中携带所述LLC参数和所述内存带宽参数,以使得所述目标服务器根据所述LLC参数和所述内存带宽参数为所述目标虚拟机分配LLC和内存带宽完成所述目标虚拟机的创建。In a possible implementation, the VIM includes units or modules for performing each step of the above first aspect. For example, the device includes: an acquisition module, used to obtain the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine; a processing module, used to select the target server from the server cluster according to the LLC parameters and the memory bandwidth parameters, The server cluster is a server maintained and managed by the VIM; a sending module is used to send a virtual machine creation request to the target server, where the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter, so that The target server allocates LLC and memory bandwidth to the target virtual machine according to the LLC parameter and the memory bandwidth parameter to complete the creation of the target virtual machine.

可选的,还包括存储模块,用于保存VIM必要的程序指令和数据。Optionally, it also includes a storage module for saving necessary program instructions and data for VIM.

在一种可能的实现方式中,该装置包括:处理器和收发器,所述处理器被配置为支持VIM执行上述第一方面提供的方法中相应的功能。收发器用于指示VIM与服务器之间的通信,向服务器发送上述方法中所涉及的信息或指令。可选的,此装置还可以包括存储器,所述存储器用于与处理器耦合,其保存VIM必要的程序指令和数据。In a possible implementation, the device includes: a processor and a transceiver, and the processor is configured to support the VIM to perform corresponding functions in the method provided by the first aspect. The transceiver is used to instruct the communication between VIM and the server, and send the information or instructions involved in the above method to the server. Optionally, this device may also include a memory coupled to the processor, which stores necessary program instructions and data for the VIM.

在一种可能的实现方式中,当该装置为VIM内的芯片时,该芯片包括:处理模块和收发模块,所述处理模块例如可以是处理器,此处理器用于根据所述LLC参数和所述内存带宽参数从服务器集群中选择目标服务器,所述服务器集群为所述VIM维护管理的服务器;所述收发模块例如可以是该芯片上的输入/输出接口、管脚或电路等,将所述LLC参数和所述内存带宽参数传送给与此芯片耦合的其他芯片或模块中。该处理模块可执行存储单元存储的计算机执行指令,以支持VIM执行上述第一方面提供的方法。可选地,所述存储单元可以为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。In a possible implementation, when the device is a chip in a VIM, the chip includes: a processing module and a transceiver module. The processing module may be, for example, a processor, and the processor is configured to perform the processing according to the LLC parameters and the The memory bandwidth parameter selects the target server from the server cluster, which is the server maintained and managed by the VIM; the transceiver module can be, for example, an input/output interface, pin or circuit on the chip, and the The LLC parameters and the memory bandwidth parameters are transmitted to other chips or modules coupled with this chip. The processing module can execute computer execution instructions stored in the storage unit to support VIM in executing the method provided in the first aspect. Optionally, the storage unit may be a storage unit within the chip, such as a register, cache, etc., or the storage unit may be a storage unit located outside the chip, such as a read-only memory. ROM) or other types of static storage devices that can store static information and instructions, random access memory (RAM), etc.

在一种可能的实现方式中,该装置包括:处理器,基带电路,射频电路和天线。其中处理器用于实现对各个电路部分功能的控制,基带电路用于获取LLC参数和内存带宽参数,经由射频电路进行模拟转换、滤波、放大和上变频等处理后,再经由天线发送给该服务器。可选的,该装置还包括存储器,其保存VIM必要的程序指令和数据。In a possible implementation, the device includes: a processor, a baseband circuit, a radio frequency circuit and an antenna. The processor is used to control the functions of each circuit part, and the baseband circuit is used to obtain LLC parameters and memory bandwidth parameters. After performing analog conversion, filtering, amplification, and upconversion through the radio frequency circuit, it is then sent to the server through the antenna. Optionally, the device also includes a memory that stores necessary program instructions and data for VIM.

其中,上述任一处提到的处理器,可以是一个通用中央处理器(CentralProcessing Unit,CPU),微处理器,特定应用集成电路(application-specificintegrated circuit,ASIC),或一个或多个用于控制上述各方面资源分配方法的程序执行的集成电路。Among them, the processor mentioned in any of the above places can be a general central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more for An integrated circuit that controls program execution of the above aspects of resource allocation methods.

第四方面,本申请实施例提供一种服务器,该服务器具有实现上述第一方面中服务器行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。In a fourth aspect, embodiments of the present application provide a server, which has the function of realizing the server behavior in the first aspect. The functions described can be implemented by hardware, or can be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.

在一个可能的实现方式中,该服务器包括用于执行以上第二方面各个步骤的单元或模块。例如,该装置包括:接收模块,用于接收虚拟化基础设施管理系统VIM发送的虚拟机创建请求,所述虚拟机创建请求携带目标虚拟机的三级缓存LLC参数和内存带宽参数,所述LLC参数和所述内存带宽参数由所述VIM获取,所述目标虚拟机为待创建虚拟机;处理模块,用于根据所述LLC参数为所述目标虚拟机分配LLC,并根据所述内存带宽参数为所述目标虚拟机分配内存带宽;创建所述目标虚拟机。In a possible implementation, the server includes a unit or module for performing each step of the above second aspect. For example, the device includes: a receiving module configured to receive a virtual machine creation request sent by the virtualization infrastructure management system VIM. The virtual machine creation request carries the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine. The LLC Parameters and the memory bandwidth parameter are obtained from the VIM, and the target virtual machine is the virtual machine to be created; a processing module is used to allocate an LLC to the target virtual machine according to the LLC parameter, and allocate an LLC to the target virtual machine according to the memory bandwidth parameter. Allocate memory bandwidth to the target virtual machine; create the target virtual machine.

可选的,还包括存储模块,用于保存服务器必要的程序指令和数据。Optionally, a storage module is also included to save necessary program instructions and data for the server.

在一种可能的实现方式中,该装置包括:处理器和收发器,所述处理器被配置为支持服务器执行上述第二方面提供的方法中相应的功能。收发器用于指示VIM与服务器之间的通信,向VIM发送上述方法中所涉及的信息或指令。可选的,此装置还可以包括存储器,所述存储器用于与处理器耦合,其保存服务器必要的程序指令和数据。In a possible implementation, the device includes: a processor and a transceiver, where the processor is configured to support the server in performing corresponding functions in the method provided in the second aspect. The transceiver is used to instruct the communication between VIM and the server, and send the information or instructions involved in the above method to VIM. Optionally, this device may also include a memory coupled to the processor, which stores necessary program instructions and data for the server.

在一种可能的实现方式中,当该装置为服务器内的芯片时,该芯片包括:处理模块和收发模块,所述处理模块例如可以是处理器,此处理器用于根据所述LLC参数为所述目标虚拟机分配LLC,并根据所述内存带宽参数为所述目标虚拟机分配内存带宽;所述收发模块例如可以是该芯片上的输入/输出接口、管脚或电路等,将自身可用LLC和可用内存参数传送给与此芯片耦合的其他芯片或模块中。该处理模块可执行存储单元存储的计算机执行指令,以支持服务器执行上述第二方面提供的方法。可选地,所述存储单元可以为所述芯片内的存储单元,如寄存器、缓存等,所述存储单元还可以是位于所述芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。In a possible implementation, when the device is a chip in a server, the chip includes: a processing module and a transceiver module. The processing module may be, for example, a processor. The processor is used to provide the required data according to the LLC parameters. The target virtual machine allocates LLC, and allocates memory bandwidth to the target virtual machine according to the memory bandwidth parameter; the transceiver module can be, for example, an input/output interface, pin or circuit on the chip, and allocates its own available LLC and available memory parameters are transferred to other chips or modules coupled to this chip. The processing module can execute computer execution instructions stored in the storage unit to support the server in executing the method provided in the second aspect. Optionally, the storage unit may be a storage unit within the chip, such as a register, cache, etc., or the storage unit may be a storage unit located outside the chip, such as a read-only memory. ROM) or other types of static storage devices that can store static information and instructions, random access memory (RAM), etc.

在一种可能的实现方式中,该装置包括:处理器,基带电路,射频电路和天线。其中处理器用于实现对各个电路部分功能的控制,基带电路用于获取可用LLC和可用内存带宽,经由射频电路进行模拟转换、滤波、放大和上变频等处理后,再经由天线发送给该VIM。可选的,该装置还包括存储器,其保存服务器必要的程序指令和数据。In a possible implementation, the device includes: a processor, a baseband circuit, a radio frequency circuit and an antenna. The processor is used to control the functions of each circuit part, and the baseband circuit is used to obtain the available LLC and available memory bandwidth. After performing analog conversion, filtering, amplification, and upconversion through the radio frequency circuit, it is then sent to the VIM through the antenna. Optionally, the device also includes a memory that stores necessary program instructions and data for the server.

其中,上述任一处提到的处理器,可以是一个通用中央处理器(CentralProcessing Unit,CPU),微处理器,特定应用集成电路(application-specificintegrated circuit,ASIC),或一个或多个用于控制上述各方面资源分配方法的程序执行的集成电路。Among them, the processor mentioned in any of the above places can be a general central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more for An integrated circuit that controls program execution of the above aspects of resource allocation methods.

第五方面,本申请实施例提供一种计算机可读存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令用于执行上述第一方面中任意可能的实施方式所述的方法。In a fifth aspect, embodiments of the present application provide a computer-readable storage medium that stores computer instructions, and the computer instructions are used to execute the method described in any possible implementation manner in the first aspect.

第六方面,本申请实施例提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面中任意一方面所述的方法。In a sixth aspect, embodiments of the present application provide a computer program product containing instructions that, when run on a computer, cause the computer to execute the method described in any one of the above aspects.

第七方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持资源分配装置实现上述方面中所涉及的功能,例如生成或处理上述方法中所涉及的数据和/或信息。在一种可能的设计中,所述芯片系统还包括存储器,所述存储器,用于保存资源分配装置必要的程序指令和数据,以实现上述各方面中任意一方面的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。In a seventh aspect, the present application provides a chip system, which includes a processor for supporting a resource allocation device to implement the functions involved in the above aspects, such as generating or processing data and/or information involved in the above methods. . In a possible design, the chip system further includes a memory, and the memory is used to save necessary program instructions and data of the resource allocation device to implement the functions of any of the above aspects. The chip system can be composed of chips or include chips and other discrete devices.

一种可能实现方式中,在芯片系统运行在该VIM侧时,可以支持该VIM执行上述第一方面提供的方法;In one possible implementation, when the chip system is running on the VIM side, the VIM can be supported to execute the method provided in the first aspect;

另一种可能实现方式中,在芯片系统运行在该服务器侧时,可以支持该服务器执行上述第二方面提供的方法。In another possible implementation, when the chip system is running on the server side, the server can be supported to execute the method provided in the second aspect.

第八方面,本申请实施例提供一种虚拟化集群资源管理系统,该系统包括上述第一方面和第二方面描述的VIM和服务器。In an eighth aspect, embodiments of the present application provide a virtualized cluster resource management system, which includes the VIM and server described in the first and second aspects.

附图说明Description of the drawings

图1为一个CPU上部署多个虚拟机时资源竞争的示意图;Figure 1 is a schematic diagram of resource competition when multiple virtual machines are deployed on a CPU;

图2为本申请实施例的一个应用系统架构示意图;Figure 2 is a schematic diagram of an application system architecture according to an embodiment of the present application;

图3为本申请实施例中资源分配方法的一个实施例示意图;Figure 3 is a schematic diagram of an embodiment of the resource allocation method in the embodiment of the present application;

图4为本申请实施例中资源分配装置的一个实施例示意图;Figure 4 is a schematic diagram of an embodiment of the resource allocation device in the embodiment of the present application;

图5为本申请实施例中资源分配装置的另一个实施例示意图;Figure 5 is a schematic diagram of another embodiment of the resource allocation device in the embodiment of the present application;

图6为本申请实施例中服务器的一个实施例示意图;Figure 6 is a schematic diagram of a server in an embodiment of the present application;

图7为本申请实施例中服务器的另一个实施例示意图。Figure 7 is a schematic diagram of another embodiment of the server in the embodiment of the present application.

具体实施方式Detailed ways

本申请实施例提供了一种虚拟化集群资源管理系统的资源分配方法以及装置,用于为各虚拟机分配独立的LLC和内存带宽,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。Embodiments of the present application provide a resource allocation method and device for a virtualized cluster resource management system, which are used to allocate independent LLC and memory bandwidth to each virtual machine, thereby ensuring that the virtual machine is not affected by other co-deployed virtual machines when running. impact to ensure the stable performance of the virtual machine.

本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。The terms "first", "second", "third", "fourth", etc. (if present) in the description and claims of this application and the above-mentioned drawings are used to distinguish similar objects without necessarily using Used to describe a specific order or sequence. It is to be understood that the data so used are interchangeable under appropriate circumstances so that the embodiments described herein can be practiced in sequences other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, e.g., a process, method, system, product, or apparatus that encompasses a series of steps or units and need not be limited to those explicitly listed. Those steps or elements may instead include other steps or elements not expressly listed or inherent to the process, method, product or apparatus.

虚拟化技术,是在一个物理硬件机器上同时运行多个独立的操作系统,独立运行的操作系统资源来自于同一底层平台资源,底层的监督器负责系统资源的分配、虚拟机的调度、虚拟机间及虚拟机与外界的通信。虚拟化技术使用软件的方法来重新定义和划分资源,可以实现资源的动态分配、灵活调度、跨域共享、提高资源利用率。基于上述系统框架,当前在同一个CPU上,LLC和内存带宽是被所有核共享的。如图1所示,在同一台物理服务器上部署两个VNF虚拟机(虚拟机1和虚拟机2),如果虚拟机1和虚拟机2被部署到了同一个CPU上,该虚拟机1和该虚拟机2共享LLC和内存带宽。由于虚拟机1和虚拟机2共享LLC和内存带宽,因此当虚拟机1进行大量访存时,可能将虚拟机2在LLC中缓存的数据淘汰出去,也可能挤占虚拟机2的访存带宽性能,这种资源竞争会导致虚拟机性能不稳定。Virtualization technology is to run multiple independent operating systems at the same time on a physical hardware machine. The independently running operating system resources come from the same underlying platform resources. The underlying supervisor is responsible for the allocation of system resources, virtual machine scheduling, and virtual machine scheduling. communication between virtual machines and the outside world. Virtualization technology uses software methods to redefine and divide resources, which can realize dynamic allocation, flexible scheduling, cross-domain sharing of resources, and improve resource utilization. Based on the above system framework, currently on the same CPU, LLC and memory bandwidth are shared by all cores. As shown in Figure 1, two VNF virtual machines (virtual machine 1 and virtual machine 2) are deployed on the same physical server. If virtual machine 1 and virtual machine 2 are deployed on the same CPU, the virtual machine 1 and the virtual machine 2 will Virtual machine 2 shares LLC and memory bandwidth. Since virtual machine 1 and virtual machine 2 share the LLC and memory bandwidth, when virtual machine 1 performs a large amount of memory access, the data cached in the LLC by virtual machine 2 may be eliminated, and the memory access bandwidth performance of virtual machine 2 may also be squeezed out. ,This kind of resource competition will lead to unstable ,virtual machine performance.

为了解决这一问题,本申请实施例提供如下技术方案:该虚拟化基础设施管理系统(virtualized infrastructure manager,VIM)获取目标虚拟机的三级缓存(last levelcache,LLC)参数和内存带宽参数;然后根据该LLC参数和该内存带宽参数遍历该VIM维护管理的服务器,在服务器的可用LLC满足该LLC参数需要和可用内存带宽均满足该内存带宽参数时,该VIM确定该服务器为目标服务器;然后该VIM向该目标服务器发送虚拟机创建请求,该虚拟机创建请求中携带该LLC参数和该内存带宽参数;该目标服务器在接收到该虚拟机创建请求之后,根据该LLC参数和该内存带宽参数为该目标虚拟机分配相应的LLC和内存带宽,并完成该目标虚拟机的创建过程。In order to solve this problem, embodiments of the present application provide the following technical solution: the virtualized infrastructure management system (virtualized infrastructure manager, VIM) obtains the third-level cache (last levelcache, LLC) parameters and memory bandwidth parameters of the target virtual machine; then Traverse the servers maintained and managed by the VIM according to the LLC parameter and the memory bandwidth parameter. When the server's available LLC meets the LLC parameter requirements and the available memory bandwidth meets the memory bandwidth parameter, the VIM determines that the server is the target server; then the VIM sends a virtual machine creation request to the target server, and the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter; after receiving the virtual machine creation request, the target server, based on the LLC parameter and the memory bandwidth parameter, is The target virtual machine is allocated the corresponding LLC and memory bandwidth, and the creation process of the target virtual machine is completed.

可以理解的是,本申请实施例提供的技术方案不仅可以适用于NFV中,也可以适用于其他虚拟化集群资源管理系统,比如公有云、私有云等云计算系统。本申请实施例中以NFV系统为例进行说明。It can be understood that the technical solutions provided by the embodiments of this application can be applied not only to NFV, but also to other virtualized cluster resource management systems, such as public clouds, private clouds and other cloud computing systems. In the embodiment of this application, the NFV system is taken as an example for explanation.

如图2所述的网络功能虚拟化(network function virtualization,NFV)提供一个新的网络产品环境,降低成本,提高效率、增加敏捷能力。通过使用通用性硬件以及虚拟化技术,来承载很多功能的软件处理。从而降低网络昂贵的设备成本。同时NFV可以通过软硬件解耦及功能抽象,使网络设备功能不再依赖于专用硬件,资源可以充分灵活共享,实现新业务的快速开发和部署,并基于实际业务需求进行自动部署、弹性伸缩、故障隔离和自愈等。其中系统框架中各主要实体的功能如下:Network function virtualization (NFV) as shown in Figure 2 provides a new network product environment that reduces costs, improves efficiency, and increases agility. By using general-purpose hardware and virtualization technology, software processing for many functions can be carried. Thereby reducing the cost of expensive network equipment. At the same time, NFV can decouple software and hardware and abstract functions so that network device functions no longer depend on dedicated hardware, and resources can be fully and flexibly shared to achieve rapid development and deployment of new services, and perform automatic deployment, elastic scaling, and deployment based on actual business needs. Fault isolation and self-healing, etc. The functions of each main entity in the system framework are as follows:

网络功能虚拟化协调器(network function virtualization orchestrator,NFVO):主要功能是实现对运营商域内(一个或多个数据中心)的网络业务(networkservice,NS)的生命周期管理(如部署/扩容/缩容/下线等),以及对网络功能虚拟化的基础设施层(network function virtualization infrastructure,NFVI)的资源编排、策略管理等功能;Orchestrator根据网络业务信息模型描述模板(network service descriptor,NSD)分解出对各虚拟化网络功能(virtualized network function,VNF)的需求,配合虚拟化网络功能管理器(virtual network function manager,VNFM)实现对虚拟化的网络功能(virtual network function,VNF)的部署。Network function virtualization orchestrator (NFVO): The main function is to implement life cycle management (such as deployment/expansion/shrinking) of network services (networkservice, NS) within the operator domain (one or more data centers). capacity/offline, etc.), as well as resource orchestration, policy management and other functions for the network function virtualization infrastructure (NFVI) infrastructure layer; Orchestrator decomposes according to the network service information model description template (network service descriptor, NSD) Identify the requirements for each virtualized network function (VNF), and cooperate with the virtual network function manager (VNFM) to implement the deployment of the virtualized network function (VNF).

虚拟化网络功能管理器(virtual network function manager,VNFM):主要功能是实现VNF的生命周期管理,如部署/扩容/缩容/下线等自动化能力;VNFM根据模板及VNF容量需求,分解出对虚拟机等虚拟资源的需求,与NFVO、虚拟化基础设施管理系统(virtualized Infrastructure manager,VIM)配合完成VNF的实例化。Virtual network function manager (VNFM): The main function is to realize the life cycle management of VNF, such as deployment/expansion/shrinking/offline and other automation capabilities; VNFM decomposes the requirements based on templates and VNF capacity requirements. To meet the demand for virtual resources such as virtual machines, it cooperates with NFVO and virtualized infrastructure manager (VIM) to complete the instantiation of VNF.

虚拟化基础设施管理系统(virtualized infrastructure manager,VIM):I层管理系统(比如VMware,OpenStack),实现基础设施层资源(含计算、存储、网络资源)的管理和监控。Virtualized infrastructure manager (VIM): I-layer management system (such as VMware, OpenStack), which realizes the management and monitoring of infrastructure layer resources (including computing, storage, and network resources).

网络功能虚拟化组织管理系统(network function virtualization managementand orchestration,NFV-MANO)由以上NFVO,VNFM以及VIM共同组成,完成整个NFV的管理和编排功能。The network function virtualization organization management system (network function virtualization management and orchestration, NFV-MANO) is composed of the above NFVO, VNFM and VIM to complete the management and orchestration functions of the entire NFV.

网元管理系统/网络管理系统(element management system,EMS/networkmanagement system,NMS):网管,垂直拉通S层I层故障监控和定界,保持现有网管的管理能力,可统一管理云化和非云化网元。Network element management system/network management system (Element Management System, EMS/network management system, NMS): Network management, vertically connects the S layer and I layer fault monitoring and demarcation, maintains the management capabilities of the existing network management, and can uniformly manage cloudization and Non-cloud network elements.

基本服务集(basic service set business support system,BSS)/运营支持系统(operation support system,OSS):现网原有的BSS/OSS系统,可统一管理云化和非云化网元。Basic service set business support system (BSS)/operation support system (OSS): The original BSS/OSS system of the existing network can uniformly manage cloudized and non-clouded network elements.

虚拟化网络功能信息模型描述模板(virtual network function descriptor,VNFD):描述一个虚拟化网络功能模块的部署与操作行为的配置模板,被用于虚拟化网络功能模块的运行过程,以及对于虚拟化网络功能模块实例的生命周期管理。Virtual network function information model description template (virtual network function descriptor, VNFD): a configuration template that describes the deployment and operation behavior of a virtualized network function module. It is used for the running process of the virtualized network function module and for the virtualized network. Life cycle management of function module instances.

虚拟化层(virtualization layer):基于服务器上的计算硬件(computinghardware)、存储硬件(storage hardware)和网络硬件(network hardware),采用虚拟化技术,虚拟出虚拟计算(virtual computing)、虚拟存储(virtual storage)和虚拟网络(virtual network)。Virtualization layer: Based on the computing hardware, storage hardware and network hardware on the server, virtualization technology is used to virtualize virtual computing and virtual storage. storage) and virtual network.

具体情况请参阅图3所示,本申请实施例中一种资源分配方法的一个实施例,包括:For details, please refer to Figure 3. An embodiment of a resource allocation method in the embodiment of this application includes:

301、VIM获取目标虚拟机的LLC参数和内存带宽参数。301. VIM obtains the LLC parameters and memory bandwidth parameters of the target virtual machine.

基于业务需求需要创建新的虚拟机(即该目标虚拟机)时,该VIM需要获取该目标虚拟机所需的资源数(即LLC参数指示的LLC大小和内存带宽参数指示的内存带宽大小)。When a new virtual machine (that is, the target virtual machine) needs to be created based on business requirements, the VIM needs to obtain the number of resources required by the target virtual machine (that is, the LLC size indicated by the LLC parameter and the memory bandwidth size indicated by the memory bandwidth parameter).

本实施例中,以NFV系统为例,该VIM获取该目标虚拟机的LLC参数和内存带宽参数的具体实现方式可以为:首先在VNFD的虚拟部署单元(virtual deployment unit,VDU)内定义好该目标虚拟机所需要的LLC大小和内存带宽大小(即LLC参数和内存带宽参数);然后在Orchestrator触发了布署VNF的流程之后,该MANO读取与该VNF对应的VNFD,获取该LLC参数和该内存带宽参数;然后该MANO通过VIM侧提供的虚拟机创建接口将该LLC参数和该内存带宽参数发送给该VIM。In this embodiment, taking the NFV system as an example, the specific implementation method for the VIM to obtain the LLC parameters and memory bandwidth parameters of the target virtual machine can be: first, define the VNFD in the virtual deployment unit (VDU). The LLC size and memory bandwidth required by the target virtual machine (i.e. LLC parameters and memory bandwidth parameters); then after the Orchestrator triggers the VNF deployment process, the MANO reads the VNFD corresponding to the VNF and obtains the LLC parameters and The memory bandwidth parameter; then the MANO sends the LLC parameter and the memory bandwidth parameter to the VIM through the virtual machine creation interface provided by the VIM side.

可选的,在该VDU内可以通过在描述文件中添加相应的参数来定义该LLC参数和该内存带宽参数。比如在描述文件中的vnfd:vdu:virtualComputeDesc:virtualCpu字串下添加LLC Size,指定需要分配的LLC大小;在描述文件中的vnfd:vdu:virtualComputeDesc:virtualMemory字串下添加Mem Bw,指定需要分配的内存带宽大小。可以理解的是,具体描述文件的形式,此处不做限定。Optionally, the LLC parameter and the memory bandwidth parameter can be defined in the VDU by adding corresponding parameters in the description file. For example, add LLC Size under the string vnfd:vdu:virtualComputeDesc:virtualCpu in the description file to specify the LLC size that needs to be allocated; add Mem Bw under the string vnfd:vdu:virtualComputeDesc:virtualMemory in the description file to specify the size that needs to be allocated. Memory bandwidth size. It can be understood that the form of the specific description file is not limited here.

302、该VIM根据该LLC参数和该内存带宽参数从服务器集群中选择目标服务器,该服务器集群为该VIM维护管理的服务器。302. The VIM selects a target server from a server cluster based on the LLC parameter and the memory bandwidth parameter. The server cluster is a server maintained and managed by the VIM.

该虚拟环境运行时,该VIM将维护管理其辖下的服务器集群,在该VIM根据该LLC参数和该内存带宽参数确定该目标虚拟机需要的LLC大小和内存带宽大小之后,该VIM将该LLC参数和该内存带宽参数作为参考标准从服务器集群中选择目标服务器,即该目标服务器的可用LLC大小大于或等于该LLC参数指示的LLC大小,同时该目标服务器的可用内存带宽大小大于或等于该内存带宽参数指示的内存带宽大小。When the virtual environment is running, the VIM will maintain and manage the server cluster under its jurisdiction. After the VIM determines the LLC size and memory bandwidth required by the target virtual machine based on the LLC parameter and the memory bandwidth parameter, the VIM will use the LLC parameters and the memory bandwidth parameter as a reference standard to select the target server from the server cluster, that is, the available LLC size of the target server is greater than or equal to the LLC size indicated by the LLC parameter, and the available memory bandwidth size of the target server is greater than or equal to the memory The memory bandwidth size indicated by the bandwidth parameter.

具体的来说,该VIM维护管理的服务器的虚拟机监视器Hypervisor扩展支持英特尔资源调配Intel RDT技术,因此该服务器可以调用LLC监控(Cache Monitoring Tech,CMT)和内存带宽监控(Memory BW Monitoring,MBM)接口获取其自身的可用LLC信息和可用内存带宽信息,然后该服务器将该可用LLC信息和可用内存带宽信息上报给该VIM;该VIM维护所有服务器上报的可用LLC信息和可用内存带宽信息。当该VIM根据该LLC参数和内存带宽参数选择目标服务器时,该VIM遍历其管理的全部服务器,依次调用过滤器(Filter)来筛选符合该LLC参数和该内存带宽参数的服务器;该VIM在筛选出符合要求的服务器之后,若符合要求的服务器的数目大于1,则可以按照预设选择规则确定最终的目标服务器,该预设选择规则可以为选择已部署虚拟机数量最多的服务器;或,任意选择一个服务器。比如,备选服务器有5个,其中备选服务器A部署了2个虚拟机,备选服务器B和备选服务器C各部署了1个虚拟机,备选服务器D和备选服务器E均未部署虚拟机,则该VIM可以选择备选服务器A作为该目标服务器;该VIM也可以在5个备选服务器中任意选择一个作为该目标服务器。Specifically, the virtual machine monitor Hypervisor extension of the server maintained and managed by VIM supports Intel resource allocation Intel RDT technology, so the server can call LLC monitoring (Cache Monitoring Tech, CMT) and memory bandwidth monitoring (Memory BW Monitoring, MBM). ) interface obtains its own available LLC information and available memory bandwidth information, and then the server reports the available LLC information and available memory bandwidth information to the VIM; the VIM maintains the available LLC information and available memory bandwidth information reported by all servers. When the VIM selects the target server based on the LLC parameter and the memory bandwidth parameter, the VIM traverses all the servers it manages and calls the filter (Filter) in order to filter the servers that meet the LLC parameter and the memory bandwidth parameter; the VIM is filtering After selecting servers that meet the requirements, if the number of servers that meet the requirements is greater than 1, the final target server can be determined according to the preset selection rules. The preset selection rules can be to select the server with the largest number of deployed virtual machines; or, any Choose a server. For example, there are 5 candidate servers, of which 2 virtual machines are deployed on candidate server A, 1 virtual machine is deployed on candidate server B and candidate server C, and neither candidate server D nor candidate server E is deployed. virtual machine, the VIM can select alternative server A as the target server; the VIM can also select any one of the five alternative servers as the target server.

可以理解的是,该VIM在调用过滤器来筛选服务器时具体实现方式如下:It is understandable that when VIM calls a filter to filter servers, the specific implementation method is as follows:

该VIM调用内存过滤器(Ram Filter)选择符合内存过滤要求的服务器,在本实施例中,扩展和增加了对内存带宽大小的检查和过滤,服务器需要同时满足所有的内存过滤器中的参数条件,其中包括可用内存带宽大于内存带宽参数值;该VIM调用CPU核过滤器(Core Filter)选择符合CPU过滤要求的服务器,在本实施例中,扩展和增加了对LLC大小的检查和过滤,服务器需要满足所有的CPU核过滤器中的参数条件,其中包括可用LLC大于LLC参数值;当服务器同时所有过滤器的过滤要求时,该服务器才作为备选服务器;最后,若该备选服务器的数目为1,则该VIM确定该备选服务器为该目标服务器;若该备选服务器的数目大于1,则该VIM从该备选服务器按照预设的选择规则确定该目标服务器;若无备选服务器,则该VIM确定暂时无法创建该目标虚拟机。The VIM calls the memory filter (Ram Filter) to select a server that meets the memory filtering requirements. In this embodiment, the inspection and filtering of the memory bandwidth size are expanded and added. The server needs to meet all the parameter conditions in the memory filter at the same time. , including that the available memory bandwidth is greater than the memory bandwidth parameter value; the VIM calls the CPU core filter (Core Filter) to select a server that meets the CPU filtering requirements. In this embodiment, the inspection and filtering of the LLC size is expanded and added, and the server The parameter conditions in all CPU core filters need to be met, including that the available LLC is greater than the LLC parameter value; when the server meets the filtering requirements of all filters, the server will be used as an alternative server; finally, if the number of alternative servers is 1, then the VIM determines the candidate server as the target server; if the number of candidate servers is greater than 1, then the VIM determines the target server from the candidate server according to the preset selection rules; if there is no candidate server , then the VIM determines that the target virtual machine cannot be created temporarily.

303、该VIM向该目标服务器发送虚拟机创建请求,该虚拟机创建请求中携带该LLC参数和该内存带宽参数。303. The VIM sends a virtual machine creation request to the target server, and the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter.

在该VIM确定目标服务器之后,该VIM向该目标服务器发送虚拟机创建请求,同时,该虚拟机创建请求中通过LLC参数和内存带宽参数指示了该目标虚拟机所需求的LLC大小和内存带宽大小。After the VIM determines the target server, the VIM sends a virtual machine creation request to the target server. At the same time, the virtual machine creation request indicates the LLC size and memory bandwidth required by the target virtual machine through LLC parameters and memory bandwidth parameters. .

可以理解的是,该VIM在确定该目标服务器,还可以从该VIM维护的服务器资源数据库中扣减掉该目标服务器的创建该目标虚拟机所耗费的资源数。比如,该目标服务器上报给该VIM的资源数为A,该目标虚拟机所需要的资源数为B,则该服务器资源数据库中该目标服务器的资源数现在变为(A-B)。It can be understood that when determining the target server, the VIM can also deduct the number of resources of the target server that are consumed in creating the target virtual machine from the server resource database maintained by the VIM. For example, if the number of resources reported by the target server to the VIM is A and the number of resources required by the target virtual machine is B, then the number of resources of the target server in the server resource database now becomes (A-B).

304、该目标服务器根据该LLC参数和该内存带宽参数为该目标虚拟机分配相应的LLC和内存带宽,并完成该目标虚拟机的创建。304. The target server allocates the corresponding LLC and memory bandwidth to the target virtual machine according to the LLC parameter and the memory bandwidth parameter, and completes the creation of the target virtual machine.

该目标服务器在接收到该虚拟机创建请求之后,解析该虚拟机创建请求获取该目标虚拟机所需要的LLC大小和内存带宽的大小;然后该目标服务器的虚拟机监视器Hypervisor调用LLC分配(Cache Allocation Tech,CAT)接口为该目标虚拟机分配相应的LLC;该服务器的虚拟机监视器Hypervisor调用内存带宽分配(Memory BW Allocation,MBA)接口为该目标虚拟机分配相应的内存带宽;同时,该目标服务器的虚拟机监视器Hypervisor完成该目标虚拟机的创建。After receiving the virtual machine creation request, the target server parses the virtual machine creation request to obtain the LLC size and memory bandwidth required by the target virtual machine; then the virtual machine monitor hypervisor of the target server calls LLC allocation (Cache Allocation Tech, CAT) interface allocates the corresponding LLC to the target virtual machine; the server's virtual machine monitor hypervisor calls the Memory Bandwidth Allocation (Memory BW Allocation, MBA) interface to allocate the corresponding memory bandwidth to the target virtual machine; at the same time, the The target server's virtual machine monitor hypervisor completes the creation of the target virtual machine.

在完成该目标虚拟机的创建之后,该目标虚拟机开始执行相应的业务;同时,该VIM维护该目标虚拟机的身份标识(identification,ID),该Orchestrator维护该目标虚拟机组成的VNF。在该VNF需要删除时,该Orchestrator通过VNF ID查找到该VNF,然后通过该VNF ID查找到组成该VNF的目标虚拟机,并确定该目标虚拟机ID;然后该Orchestrator向该VIM发送删除虚拟机请求,并在该删除虚拟机请求中携带该目标虚拟机ID;该VIM在接收到该删除虚拟机请求之后,根据该目标虚拟机ID确定该目标虚拟机所处的目标服务器;然后该VIM向该虚拟机所处的目标服务器发送删除虚拟机请求,该删除虚拟机请求中携带该目标虚拟机ID;该服务器接收到该删除虚拟机请求之后,该服务器中的虚拟机监视器Hypervisor根据该目标虚拟机ID删除该目标虚拟机。同时,该服务器中的虚拟机监视器Hypervisor调用CAT接口释放该目标虚拟机占用的LLC;该服务器的虚拟机监视器Hypervisor调用MBA接口释放该目标虚拟机占用的内存带宽,最终确保该目标虚拟机可以释放其占用的LLC和内存带宽,实现服务器LLC和内存带宽的重复使用。After the creation of the target virtual machine is completed, the target virtual machine starts to perform corresponding services; at the same time, the VIM maintains the identity (identification, ID) of the target virtual machine, and the Orchestrator maintains the VNF composed of the target virtual machine. When the VNF needs to be deleted, the Orchestrator finds the VNF through the VNF ID, then finds the target virtual machine that makes up the VNF through the VNF ID, and determines the target virtual machine ID; then the Orchestrator sends a deletion virtual machine message to the VIM. request, and carry the target virtual machine ID in the virtual machine deletion request; after receiving the virtual machine deletion request, the VIM determines the target server where the target virtual machine is located based on the target virtual machine ID; then the VIM The target server where the virtual machine is located sends a virtual machine deletion request, and the virtual machine deletion request carries the target virtual machine ID; after the server receives the virtual machine deletion request, the virtual machine monitor hypervisor in the server Delete the target virtual machine based on the virtual machine ID. At the same time, the virtual machine monitor Hypervisor in the server calls the CAT interface to release the LLC occupied by the target virtual machine; the virtual machine monitor Hypervisor in the server calls the MBA interface to release the memory bandwidth occupied by the target virtual machine, ultimately ensuring that the target virtual machine The LLC and memory bandwidth occupied by it can be released to realize reuse of server LLC and memory bandwidth.

本实施例中,该VIM在创建虚拟机的过程中获取到该虚拟机的LLC和内存带宽的需求,并将该需求发送给创建虚拟机的服务器,以使得该服务器根据该虚拟机的LLC和内存带宽需求进行相应的资源分配,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。In this embodiment, the VIM obtains the LLC and memory bandwidth requirements of the virtual machine during the process of creating the virtual machine, and sends the requirements to the server that created the virtual machine, so that the server can determine the LLC and memory bandwidth requirements of the virtual machine according to the LLC and memory bandwidth requirements of the virtual machine. Allocate resources accordingly according to memory bandwidth requirements to ensure that the virtual machine is running without being affected by other co-deployed virtual machines and ensures stable performance of the virtual machine.

上面对本申请实施例中的虚拟化集群资源管理系统的资源分配方法进行了描述,下面对本申请实施例中资源分配装置和服务器进行描述。The resource allocation method of the virtualized cluster resource management system in the embodiment of the present application is described above, and the resource allocation device and server in the embodiment of the present application are described below.

具体请参阅图4所示,本申请实施例中该资源分配装置400包括:获取模块401、处理模块402和发送模块403。资源分配装置400可以是上述方法实施例中的VIM,也可以是VIM内的一个或多个芯片。资源分配装置400可以用于执行上述方法实施例中的VIM的部分或全部功能。Specifically, please refer to Figure 4. In this embodiment of the present application, the resource allocation device 400 includes: an acquisition module 401, a processing module 402, and a sending module 403. The resource allocation device 400 may be the VIM in the above method embodiment, or may be one or more chips in the VIM. The resource allocation device 400 may be used to perform part or all of the functions of VIM in the above method embodiments.

例如,该获取模块401可以用于执行上述方法实施例中的步骤301,或者用于执行上述方法实施例中的接收该服务器上报可用LLC和可用内存带宽等动作。该处理模块402,用于执行上述方法实施例中的步骤302。该发送模块403,用于执行上述方法实施例中的步骤303。例如,获取模块401可以获取目标虚拟机的LLC参数和内存带宽参数;该处理模块402,可以根据该LLC参数和该内存带宽参数从服务器集群中选择目标服务器;该发送模块403,可以将该预设传输信息发送给该第一摄像头;该接收模块601,可以向该目标服务器发送虚拟机创建请求,该虚拟机创建请求中携带该LLC参数和该内存带宽参数。For example, the acquisition module 401 may be used to perform step 301 in the above method embodiment, or to perform actions such as receiving the available LLC and available memory bandwidth reported by the server in the above method embodiment. The processing module 402 is used to perform step 302 in the above method embodiment. The sending module 403 is used to perform step 303 in the above method embodiment. For example, the acquisition module 401 can obtain the LLC parameters and memory bandwidth parameters of the target virtual machine; the processing module 402 can select the target server from the server cluster according to the LLC parameters and the memory bandwidth parameters; the sending module 403 can send the preset Assume that the transmission information is sent to the first camera; the receiving module 601 can send a virtual machine creation request to the target server, and the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter.

可选的,资源分配装置400还包括存储模块,此存储模块于处理模块耦合,使得处理模块可执行存储模块中存储的计算机执行指令以实现上述方法实施例中VIM的功能。在一个示例中,资源分配装置400中可选的包括的存储模块可以为芯片内的存储单元,如寄存器、缓存等,所述存储模块还可以是位于芯片外部的存储单元,如只读存储器(read-onlymemory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)等。Optionally, the resource allocation device 400 further includes a storage module, which is coupled to the processing module, so that the processing module can execute computer execution instructions stored in the storage module to implement the functions of the VIM in the above method embodiment. In one example, the storage module optionally included in the resource allocation device 400 can be a storage unit within the chip, such as a register, cache, etc., or the storage module can also be a storage unit located outside the chip, such as a read-only memory ( read-onlymemory (ROM) or other types of static storage devices that can store static information and instructions, random access memory (random access memory, RAM), etc.

应理解,上述图4对应实施例中资源分配装置的各模块之间所执行的流程与前述图3中对应方法实施例中的VIM执行的流程类似,具体此处不再赘述。It should be understood that the process executed between the modules of the resource allocation device in the corresponding embodiment of Figure 4 is similar to the process executed by VIM in the corresponding method embodiment of Figure 3, and will not be described again here.

图5示出了上述实施例中一种资源分配装置500可能的结构示意图,该资源分配装置500可以配置成是前述VIM。该装置500可以包括:处理器502、计算机可读存储介质/存储器503、收发器504、输入设备505和输出设备506,以及总线501。其中,处理器,收发器,计算机可读存储介质等通过总线连接。本申请实施例不限定上述部件之间的具体连接介质。Figure 5 shows a possible structural diagram of a resource allocation device 500 in the above embodiment. The resource allocation device 500 can be configured as the aforementioned VIM. The apparatus 500 may include a processor 502, a computer readable storage medium/memory 503, a transceiver 504, an input device 505 and an output device 506, and a bus 501. Among them, processors, transceivers, computer-readable storage media, etc. are connected through the bus. The embodiments of the present application do not limit the specific connection medium between the above components.

一个示例中,该收发器504获取目标虚拟机的LLC参数和内存带宽参数;该处理器702根据该LLC参数和该内存带宽参数从服务器集群中选择目标服务器,该服务器集群为该VIM维护管理的服务器;该收发器504向该目标服务器发送虚拟机创建请求,该虚拟机创建请求中携带该LLC参数和该内存带宽参数。In one example, the transceiver 504 obtains the LLC parameter and the memory bandwidth parameter of the target virtual machine; the processor 702 selects the target server from the server cluster based on the LLC parameter and the memory bandwidth parameter, and the server cluster is maintained and managed by the VIM. Server; the transceiver 504 sends a virtual machine creation request to the target server, where the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter.

一个示例中,处理器502可以包括基带电路,例如,可以对LLC参数和内存带宽参数按照协议进行数据封装,编码等以生成虚拟机创建请求。收发器504可以包括射频电路,以对虚拟机创建请求进行调制放大等处理后发送给目标服务器。In one example, the processor 502 may include a baseband circuit. For example, the LLC parameters and memory bandwidth parameters may be data encapsulated, encoded, etc. according to the protocol to generate a virtual machine creation request. The transceiver 504 may include a radio frequency circuit to modulate and amplify the virtual machine creation request and then send it to the target server.

又一个示例中,处理器502可以运行操作系统,控制各个设备和器件之间的功能。收发器504可以包括基带电路和射频电路,例如,可以对虚拟机创建请求经由基带电路,射频电路进行处理后发送给目标服务器。In another example, the processor 502 can run an operating system to control various devices and functions between devices. The transceiver 504 may include a baseband circuit and a radio frequency circuit. For example, the virtual machine creation request may be processed by the baseband circuit and the radio frequency circuit and then sent to the target server.

该收发器504与该处理器502可以实现上述图3中任一实施例中相应的步骤,具体此处不做赘述。The transceiver 504 and the processor 502 can implement the corresponding steps in any of the embodiments in FIG. 3, which will not be described again here.

可以理解的是,图5仅仅示出了资源分配装置的简化设计,在实际应用中,资源分配装置可以包含任意数量的收发器,处理器,存储器等,而所有的可以实现本申请的资源分配装置都在本申请的保护范围之内。It can be understood that Figure 5 only shows a simplified design of the resource allocation device. In actual applications, the resource allocation device can include any number of transceivers, processors, memories, etc., and all of them can implement the resource allocation of the present application. The devices are all within the protection scope of this application.

上述资源分配装置500中涉及的处理器502可以是通用处理器,例如通用中央处理器(CPU)、网络处理器(network processor,NP)、微处理器等,也可以是特定应用集成电路(application-specific integrated circBIt,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。还可以是数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。控制器/处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。处理器通常是基于存储器内存储的程序指令来执行逻辑和算术运算。The processor 502 involved in the resource allocation device 500 may be a general-purpose processor, such as a general-purpose central processing unit (CPU), a network processor (NP), a microprocessor, etc., or it may be an application-specific integrated circuit (application-specific integrated circuit). -specific integrated circBIt (ASIC), or one or more integrated circuits used to control the execution of the program of this application. It can also be a digital signal processor (DSP), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The controller/processor can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of DSP and microprocessors, and so on. A processor typically performs logical and arithmetic operations based on program instructions stored in memory.

上述涉及的总线501可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The bus 501 mentioned above may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of presentation, only one thick line is used in Figure 5, but it does not mean that there is only one bus or one type of bus.

上述涉及的计算机可读存储介质/存储器503还可以保存有操作系统和其他应用程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,上述存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器等等。存储器503可以是上述存储类型的组合。并且上述计算机可读存储介质/存储器可以在处理器中,还可以在处理器的外部,或在包括处理器或处理电路的多个实体上分布。上述计算机可读存储介质/存储器可以具体体现在计算机程序产品中。举例而言,计算机程序产品可以包括封装材料中的计算机可读介质。The computer-readable storage medium/memory 503 mentioned above may also store operating systems and other application programs. Specifically, the program may include program code, which includes computer operating instructions. More specifically, the above-mentioned memory may be a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (random access memory, RAM) that can store information and Instructions for other types of dynamic storage devices, disk storage, etc. Memory 503 may be a combination of the above storage types. And the above-mentioned computer-readable storage medium/memory can be in the processor, can also be distributed outside the processor, or distributed on multiple entities including the processor or processing circuits. The above computer-readable storage medium/memory can be embodied in a computer program product. By way of example, a computer program product may include a computer-readable medium in packaging materials.

可以替换的,本申请实施例还提供一种通用处理系统,例如通称为芯片,该通用处理系统包括:提供处理器功能的一个或多个微处理器;以及提供存储介质的至少一部分的外部存储器,所有这些都通过外部总线体系结构与其它支持电路连接在一起。当存储器存储的指令被处理器执行时,使得处理器执行资源分配装置在图3所述实施例中的资源分配方法中的部分或全部步骤,例如图3中的步骤302和/或用于本申请所描述的技术的其它过程。Alternatively, embodiments of the present application also provide a general processing system, for example, commonly referred to as a chip. The general processing system includes: one or more microprocessors that provide processor functions; and an external memory that provides at least a part of the storage medium. , all of which are connected together with other supporting circuits through an external bus architecture. When the instructions stored in the memory are executed by the processor, the processor is caused to execute some or all of the steps of the resource allocation method in the embodiment of FIG. 3 by the resource allocation device, such as step 302 in FIG. 3 and/or for this application. Other processes for applying the technology described.

结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。The steps of the method or algorithm described in connection with the disclosure of this application can be implemented in hardware or by a processor executing software instructions. Software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disks, mobile hard disks, CD-ROM or any other form of storage well known in the art. in the medium. An exemplary storage medium is coupled to the processor such that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be an integral part of the processor. The processor and storage media may be located in an ASIC. Additionally, the ASIC can be located in the user equipment. Of course, the processor and storage medium may also exist as discrete components in the user device.

本实施例中,该VIM在创建虚拟机的过程中获取到该虚拟机的LLC和内存带宽的需求,并将该需求发送给创建虚拟机的服务器,以使得该服务器根据该虚拟机的LLC和内存带宽需求进行相应的资源分配,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。In this embodiment, the VIM obtains the LLC and memory bandwidth requirements of the virtual machine during the process of creating the virtual machine, and sends the requirements to the server that created the virtual machine, so that the server can determine the LLC and memory bandwidth requirements of the virtual machine according to the LLC and memory bandwidth requirements of the virtual machine. Allocate resources accordingly according to memory bandwidth requirements to ensure that the virtual machine is running without being affected by other co-deployed virtual machines and ensures stable performance of the virtual machine.

具体请参阅图6所示,本申请实施例中该服务器600包括:接收模块601、处理模块602。资源分配装置600可以是上述方法实施例中的服务器,也可以是服务器内的一个或多个芯片。服务器600可以用于执行上述方法实施例中的服务器的部分或全部功能。Specifically, please refer to Figure 6. In this embodiment of the present application, the server 600 includes: a receiving module 601 and a processing module 602. The resource allocation device 600 may be the server in the above method embodiment, or may be one or more chips in the server. The server 600 may be used to perform some or all of the functions of the server in the above method embodiments.

例如,该接收模块601可以用于执行上述方法实施例中接收该VIM发送的虚拟机创建请求或删除虚拟机请求等动作。该处理模块602,用于执行上述方法实施例中的步骤304。该服务器还包括发送模块603,用于执行上述方法实施例中的上报可用LLC和可用内存带宽等动作。例如,接收模块601可以接收虚拟化基础设施管理系统VIM发送的虚拟机创建请求,所述虚拟机创建请求携带目标虚拟机的三级缓存LLC参数和内存带宽参数,所述LLC参数和所述内存带宽参数由所述VIM获取,所述目标虚拟机为待创建虚拟机;该处理模块602,根据所述LLC参数为所述目标虚拟机分配LLC,并根据所述内存带宽参数为所述目标虚拟机分配内存带宽;创建所述目标虚拟机。For example, the receiving module 601 may be configured to perform actions such as receiving a virtual machine creation request or a virtual machine deletion request sent by the VIM in the above method embodiment. The processing module 602 is used to perform step 304 in the above method embodiment. The server also includes a sending module 603, which is used to perform actions such as reporting available LLCs and available memory bandwidth in the above method embodiment. For example, the receiving module 601 can receive a virtual machine creation request sent by the virtualization infrastructure management system VIM. The virtual machine creation request carries the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine. The LLC parameters and the memory The bandwidth parameter is obtained from the VIM, and the target virtual machine is the virtual machine to be created; the processing module 602 allocates LLC to the target virtual machine according to the LLC parameter, and assigns LLC to the target virtual machine according to the memory bandwidth parameter. Allocate memory bandwidth to the machine; create the target virtual machine.

可选的,服务器600还包括存储模块,此存储模块于处理模块耦合,使得处理模块可执行存储模块中存储的计算机执行指令以实现上述方法实施例中服务器的功能。在一个示例中,服务器600中可选的包括的存储模块可以为芯片内的存储单元,如寄存器、缓存等,所述存储模块还可以是位于芯片外部的存储单元,如只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random accessmemory,RAM)等。Optionally, the server 600 further includes a storage module, which is coupled to the processing module, so that the processing module can execute computer execution instructions stored in the storage module to implement the functions of the server in the above method embodiment. In one example, the storage module optionally included in the server 600 may be a storage unit within the chip, such as a register, cache, etc., or the storage module may be a storage unit located outside the chip, such as a read-only memory (read-only memory). only memory, ROM) or other types of static storage devices that can store static information and instructions, random access memory (random access memory, RAM), etc.

应理解,上述图6对应实施例中资源分配装置的各模块之间所执行的流程与前述图3中对应方法实施例中的服务器执行的流程类似,具体此处不再赘述。It should be understood that the process executed by each module of the resource allocation device in the corresponding embodiment of FIG. 6 is similar to the process executed by the server in the corresponding method embodiment of FIG. 3 , and will not be described again here.

图7示出了上述实施例中一种服务器700可能的结构示意图,该服务器700可以配置成是前述VIM。该装置700可以包括:处理器702、计算机可读存储介质/存储器703、收发器704、输入设备705和输出设备706,以及总线701。其中,处理器,收发器,计算机可读存储介质等通过总线连接。本申请实施例不限定上述部件之间的具体连接介质。Figure 7 shows a possible structural diagram of a server 700 in the above embodiment. The server 700 can be configured as the aforementioned VIM. The apparatus 700 may include a processor 702, a computer readable storage medium/memory 703, a transceiver 704, an input device 705 and an output device 706, and a bus 701. Among them, processors, transceivers, computer-readable storage media, etc. are connected through the bus. The embodiments of the present application do not limit the specific connection medium between the above components.

一个示例中,该收发器704接收虚拟化基础设施管理系统VIM发送的虚拟机创建请求,所述虚拟机创建请求携带目标虚拟机的三级缓存LLC参数和内存带宽参数,所述LLC参数和所述内存带宽参数由所述VIM获取,所述目标虚拟机为待创建虚拟机;该处理器702根据所述LLC参数为所述目标虚拟机分配LLC,并根据所述内存带宽参数为所述目标虚拟机分配内存带宽;创建所述目标虚拟机。In one example, the transceiver 704 receives a virtual machine creation request sent by the virtualization infrastructure management system VIM. The virtual machine creation request carries the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine. The LLC parameters and the The memory bandwidth parameter is obtained from the VIM, and the target virtual machine is a virtual machine to be created; the processor 702 allocates LLC to the target virtual machine according to the LLC parameter, and assigns LLC to the target virtual machine according to the memory bandwidth parameter. The virtual machine allocates memory bandwidth; the target virtual machine is created.

一个示例中,处理器702可以包括基带电路,例如,可以对可用LLC信息和可用内存带宽信息按照协议进行数据封装,编码等以生成上报信息。收发器704可以包括射频电路,以对上报信息进行调制放大等处理后发送给VIM。In one example, the processor 702 may include a baseband circuit. For example, the available LLC information and the available memory bandwidth information may be data encapsulated, encoded, etc. according to the protocol to generate reporting information. The transceiver 704 may include a radio frequency circuit to modulate and amplify the reported information before sending it to the VIM.

又一个示例中,处理器702可以运行操作系统,控制各个设备和器件之间的功能。收发器704可以包括基带电路和射频电路,例如,可以对上报信息经由基带电路,射频电路进行处理后发送给VIM。In another example, the processor 702 can run an operating system to control various devices and functions between devices. The transceiver 704 may include a baseband circuit and a radio frequency circuit. For example, the reported information may be processed by the baseband circuit and the radio frequency circuit and then sent to the VIM.

该收发器704与该处理器702可以实现上述图3中所示实施例中相应的步骤,具体此处不做赘述。The transceiver 704 and the processor 702 can implement the corresponding steps in the embodiment shown in FIG. 3, which will not be described again here.

可以理解的是,图7仅仅示出了服务器的简化设计,在实际应用中,服务器可以包含任意数量的收发器,处理器,存储器等,而所有的可以实现本申请的服务器都在本申请的保护范围之内。It can be understood that Figure 7 only shows a simplified design of the server. In actual applications, the server can include any number of transceivers, processors, memories, etc., and all servers that can implement the present application are included in the present application. within the scope of protection.

上述服务器700中涉及的处理器702可以是通用处理器,例如通用中央处理器(CPU)、网络处理器(network processor,NP)、微处理器等,也可以是特定应用集成电路(application-specific integrated circBIt,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。还可以是数字信号处理器(digital signal processor,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。控制器/处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。处理器通常是基于存储器内存储的程序指令来执行逻辑和算术运算。The processor 702 involved in the above-mentioned server 700 can be a general-purpose processor, such as a general-purpose central processing unit (CPU), a network processor (NP), a microprocessor, etc., or it can be an application-specific integrated circuit (application-specific integrated circuit). integrated circBIt (ASIC), or one or more integrated circuits used to control the execution of the program of this application. It can also be a digital signal processor (DSP), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The controller/processor can also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of DSP and microprocessors, and so on. A processor typically performs logical and arithmetic operations based on program instructions stored in memory.

上述涉及的总线701可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The bus 701 mentioned above may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of presentation, only one thick line is used in Figure 7, but it does not mean that there is only one bus or one type of bus.

上述涉及的计算机可读存储介质/存储器703还可以保存有操作系统和其他应用程序。具体地,程序可以包括程序代码,程序代码包括计算机操作指令。更具体的,上述存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其他类型的静态存储设备、随机存取存储器(random access memory,RAM)、可存储信息和指令的其他类型的动态存储设备、磁盘存储器等等。存储器703可以是上述存储类型的组合。并且上述计算机可读存储介质/存储器可以在处理器中,还可以在处理器的外部,或在包括处理器或处理电路的多个实体上分布。上述计算机可读存储介质/存储器可以具体体现在计算机程序产品中。举例而言,计算机程序产品可以包括封装材料中的计算机可读介质。The computer-readable storage medium/memory 703 mentioned above may also store operating systems and other application programs. Specifically, the program may include program code, which includes computer operating instructions. More specifically, the above-mentioned memory may be a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (random access memory, RAM) that can store information and Instructions for other types of dynamic storage devices, disk storage, etc. Memory 703 may be a combination of the above storage types. And the above-mentioned computer-readable storage medium/memory can be in the processor, can also be distributed outside the processor, or distributed on multiple entities including the processor or processing circuits. The above computer-readable storage medium/memory can be embodied in a computer program product. By way of example, a computer program product may include a computer-readable medium in packaging materials.

可以替换的,本申请实施例还提供一种通用处理系统,例如通称为芯片,该通用处理系统包括:提供处理器功能的一个或多个微处理器;以及提供存储介质的至少一部分的外部存储器,所有这些都通过外部总线体系结构与其它支持电路连接在一起。当存储器存储的指令被处理器执行时,使得处理器执行服务器在图3所述实施例中的资源分配方法中的部分或全部步骤,例如图3中的步骤304和/或用于本申请所描述的技术的其它过程。Alternatively, embodiments of the present application also provide a general processing system, for example, commonly referred to as a chip. The general processing system includes: one or more microprocessors that provide processor functions; and an external memory that provides at least a part of the storage medium. , all of which are connected together with other supporting circuits through an external bus architecture. When the instructions stored in the memory are executed by the processor, the processor is caused to execute some or all of the steps in the resource allocation method of the server in the embodiment described in Figure 3, such as step 304 in Figure 3 and/or the steps used in this application. Other processes for the described technology.

结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。The steps of the method or algorithm described in connection with the disclosure of this application can be implemented in hardware or by a processor executing software instructions. Software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disks, mobile hard disks, CD-ROM or any other form of storage well known in the art. in the medium. An exemplary storage medium is coupled to the processor such that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium can also be an integral part of the processor. The processor and storage media may be located in an ASIC. Additionally, the ASIC can be located in the user equipment. Of course, the processor and storage medium may also exist as discrete components in the user device.

本实施例中,该服务器根据该虚拟机的LLC和内存带宽需求进行相应的资源分配,从而确保虚拟机运行时不受共同部署的其他虚拟机的影响,保障该虚拟机的性能稳定。In this embodiment, the server allocates resources accordingly according to the LLC and memory bandwidth requirements of the virtual machine, thereby ensuring that the running time of the virtual machine is not affected by other co-deployed virtual machines and ensuring stable performance of the virtual machine.

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, devices and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be described again here.

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or can be integrated into another system, or some features can be ignored, or not implemented. On the other hand, the coupling or direct coupling or communication connection between each other shown or discussed may be through some interfaces, and the indirect coupling or communication connection of the devices or units may be in electrical, mechanical or other forms.

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place, or they may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present application can be integrated into one processing unit, each unit can exist physically alone, or two or more units can be integrated into one unit. The above integrated units can be implemented in the form of hardware or software functional units.

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of this application. The aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk and other media that can store program code.

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。As mentioned above, the above embodiments are only used to illustrate the technical solution of the present application, but not to limit it. Although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still make the foregoing technical solutions. The technical solutions described in each embodiment may be modified, or some of the technical features may be equivalently replaced; however, these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions in each embodiment of the present application.

Claims (18)

Translated fromChinese
1.一种虚拟化集群资源管理系统的资源分配方法,包括其特征在于,包括:1. A resource allocation method for a virtualized cluster resource management system, which is characterized in that it includes:虚拟化基础设施管理系统VIM获取目标虚拟机的三级缓存LLC参数和内存带宽参数,所述目标虚拟机为待创建虚拟机;The virtualization infrastructure management system VIM obtains the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine, which is the virtual machine to be created;所述VIM根据所述LLC参数和所述内存带宽参数从服务器集群中选择目标服务器,所述服务器集群为所述VIM维护管理的服务器;The VIM selects a target server from a server cluster according to the LLC parameter and the memory bandwidth parameter, and the server cluster is a server maintained and managed by the VIM;所述VIM向所述目标服务器发送虚拟机创建请求,所述虚拟机创建请求中携带所述LLC参数和所述内存带宽参数,以使得所述目标服务器根据所述LLC参数调用LCC分配接口为所述目标虚拟机分配LLC,并根据所述内存带宽参数调用内存带宽分配接口为所述目标虚拟机分配内存带宽,以完成所述目标虚拟机的创建;所述目标服务器扩展支持英特尔资源调配Intel RDT技术。The VIM sends a virtual machine creation request to the target server. The virtual machine creation request carries the LLC parameter and the memory bandwidth parameter, so that the target server calls the LCC allocation interface for the target server according to the LLC parameter. The target virtual machine is allocated LLC, and the memory bandwidth allocation interface is called according to the memory bandwidth parameter to allocate memory bandwidth to the target virtual machine to complete the creation of the target virtual machine; the target server extension supports Intel resource allocation Intel RDT technology.2.根据权利要求1所述的方法,其特征在于,所述虚拟化基础设施管理系统VIM获取目标虚拟机的三级缓存LLC参数和内存带宽参数包括:2. The method according to claim 1, wherein the virtualization infrastructure management system VIM obtains the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine including:所述VIM接收网络功能虚拟化组织管理系统MANO发送的所述LLC参数和所述内存带宽参数,所述LLC参数和所述内存带宽参数保存在虚拟化网络功能信息模型描述模板VNFD的虚拟部署单元VDU中。The VIM receives the LLC parameters and the memory bandwidth parameters sent by the network function virtualization organization management system MANO, and the LLC parameters and the memory bandwidth parameters are stored in the virtual deployment unit of the virtualized network function information model description template VNFD. in VDU.3.根据权利要求1或2所述的方法,其特征在于,所述VIM根据所述LLC参数和所述内存带宽参数从服务器集群中选择目标服务器包括:3. The method according to claim 1 or 2, characterized in that, the VIM selecting a target server from a server cluster according to the LLC parameter and the memory bandwidth parameter includes:所述VIM接收所述服务器集群中各服务器上报的可用LLC和可用内存带宽;The VIM receives the available LLC and available memory bandwidth reported by each server in the server cluster;所述VIM从所述服务器集群中筛选符合过滤条件的服务器作为备选服务器,所述过滤条件包括所述可用LLC大于或等于所述LLC参数指示的LLC大小,且所述可用内存带宽大于或等于所述内存带宽参数指示的内存带宽大小;The VIM selects servers that meet the filtering conditions from the server cluster as alternative servers. The filtering conditions include that the available LLC is greater than or equal to the LLC size indicated by the LLC parameter, and the available memory bandwidth is greater than or equal to The memory bandwidth size indicated by the memory bandwidth parameter;若所述备选服务器的数目大于1,则所述VIM根据选择策略从所述备选服务器中确定所述目标服务器;If the number of candidate servers is greater than 1, the VIM determines the target server from the candidate servers according to the selection strategy;若所以备选服务器的数目为1,则所述VIM确定所述备选服务器为所述目标服务器。If the number of candidate servers is 1, the VIM determines that the candidate server is the target server.4.根据权利要求3所述的方法,其特征在于,所述选择策略包括从所述备选服务器中选择已部署虚拟机数量最多的服务器作为所述目标服务器;或从所述备选服务器中任意选择一个服务器作为所述目标服务器。4. The method according to claim 3, wherein the selection strategy includes selecting the server with the largest number of deployed virtual machines from the candidate servers as the target server; or selecting from the candidate servers Select any server as the target server.5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:5. The method according to any one of claims 1 to 4, characterized in that the method further comprises:所述VIM获取删除虚拟机请求,所述删除虚拟机请求中携带所述目标虚拟机身份标识;The VIM obtains a request to delete a virtual machine, and the request to delete a virtual machine carries the identity of the target virtual machine;所述VIM根据所述目标虚拟机身份标识查找到所述目标虚拟机所处的所述目标服务器;The VIM finds the target server where the target virtual machine is located based on the target virtual machine identity;所述VIM向所述目标服务器发送所述删除虚拟机请求,所述删除虚拟机请求携带所述目标虚拟机身份标识,以使得所述目标服务器根据所述目标虚拟机身份标识删除所述目标虚拟机,并释放所述目标虚拟机所占用的LLC和内存带宽。The VIM sends the virtual machine deletion request to the target server, and the virtual machine deletion request carries the target virtual machine identity, so that the target server deletes the target virtual machine according to the target virtual machine identity. machine, and release the LLC and memory bandwidth occupied by the target virtual machine.6.一种虚拟化集群资源管理系统的资源分配方法,其特征在于,包括:6. A resource allocation method for a virtualized cluster resource management system, which is characterized by including:服务器接收虚拟化基础设施管理系统VIM发送的虚拟机创建请求,所述虚拟机创建请求携带目标虚拟机的三级缓存LLC参数和内存带宽参数,所述LLC参数和所述内存带宽参数由所述VIM获取,所述目标虚拟机为待创建虚拟机;The server receives a virtual machine creation request sent by the virtualization infrastructure management system VIM. The virtual machine creation request carries the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine. The LLC parameters and the memory bandwidth parameters are determined by the VIM obtains that the target virtual machine is the virtual machine to be created;所述服务器根据所述LLC参数调用LCC分配接口为所述目标虚拟机分配LLC,并根据所述内存带宽参数调用内存带宽分配接口为所述目标虚拟机分配内存带宽;所述服务器扩展支持英特尔资源调配Intel RDT技术;The server calls the LCC allocation interface according to the LLC parameter to allocate LLC to the target virtual machine, and calls the memory bandwidth allocation interface according to the memory bandwidth parameter to allocate memory bandwidth to the target virtual machine; the server extension supports Intel resources Deploy Intel RDT technology;所述服务器创建所述目标虚拟机。The server creates the target virtual machine.7.根据权利要求6所述的方法,其特征在于,所述方法还包括:7. The method according to claim 6, characterized in that the method further comprises:所述服务器接收所述VIM发送的删除虚拟机请求,所述删除虚拟机请求携带所述目标虚拟机身份标识;The server receives a virtual machine deletion request sent by the VIM, where the virtual machine deletion request carries the identity of the target virtual machine;所述服务器根据所述目标虚拟机身份标识删除所述目标虚拟机,并释放所述目标虚拟机所占用的LLC和内存带宽。The server deletes the target virtual machine according to the target virtual machine identity, and releases the LLC and memory bandwidth occupied by the target virtual machine.8.一种资源分配装置,其特征在于,包括:8. A resource allocation device, characterized in that it includes:获取模块,用于获取目标虚拟机的三级缓存LLC参数和内存带宽参数,所述目标虚拟机为待创建虚拟机;The acquisition module is used to obtain the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine, where the target virtual machine is the virtual machine to be created;处理模块,用于根据所述LLC参数和所述内存带宽参数从服务器集群中选择目标服务器,所述服务器集群为VIM维护管理的服务器;A processing module, configured to select a target server from a server cluster according to the LLC parameter and the memory bandwidth parameter, and the server cluster is a server maintained and managed by VIM;发送模块,用于向所述目标服务器发送虚拟机创建请求,所述虚拟机创建请求中携带所述LLC参数和所述内存带宽参数,以使得所述目标服务器根据所述LLC参数调用LCC分配接口为所述目标虚拟机分配LLC,并根据所述内存带宽参数调用内存带宽分配接口为所述目标虚拟机分配内存带宽,以完成所述目标虚拟机的创建;所述目标服务器扩展支持英特尔资源调配Intel RDT技术。A sending module, configured to send a virtual machine creation request to the target server, where the virtual machine creation request carries the LLC parameter and the memory bandwidth parameter, so that the target server calls the LCC allocation interface according to the LLC parameter. Allocate LLC to the target virtual machine, and call the memory bandwidth allocation interface to allocate memory bandwidth to the target virtual machine according to the memory bandwidth parameter to complete the creation of the target virtual machine; the target server extension supports Intel resource allocation Intel RDT technology.9.根据权利要求8所述的资源分配装置,其特征在于,所述获取模块,具体用于接收网络功能虚拟化组织管理系统MANO发送的所述LLC参数和所述内存带宽参数,所述LLC参数和所述内存带宽参数保存在虚拟化网络功能信息模型描述模板VNFD的虚拟部署单元VDU中。9. The resource allocation device according to claim 8, characterized in that the acquisition module is specifically configured to receive the LLC parameters and the memory bandwidth parameters sent by the network function virtualization organization management system MANO, the LLC The parameters and the memory bandwidth parameters are stored in the virtual deployment unit VDU of the virtualized network function information model description template VNFD.10.根据权利要求8或9所述的资源分配装置,其特征在于,所述获取模块,具体用于接收所述服务器集群中各服务器上报的可用LLC和可用内存带宽;10. The resource allocation device according to claim 8 or 9, characterized in that the acquisition module is specifically configured to receive the available LLC and available memory bandwidth reported by each server in the server cluster;所述处理模块,具体用于从所述服务器集群中筛选符合过滤条件的服务器作为备选服务器,所述过滤条件包括所述可用LLC大于或等于所述LLC参数指示的LLC大小,且所述可用内存带宽大于或等于所述内存带宽参数指示的内存带宽大小;The processing module is specifically configured to select servers that meet filtering conditions from the server cluster as alternative servers. The filtering conditions include that the available LLC is greater than or equal to the LLC size indicated by the LLC parameter, and the available LLC The memory bandwidth is greater than or equal to the memory bandwidth indicated by the memory bandwidth parameter;若所述备选服务器的数目大于1,则根据选择策略从所述备选服务器中确定所述目标服务器;If the number of candidate servers is greater than 1, determine the target server from the candidate servers according to the selection strategy;若所以备选服务器的数目为1,则确定所述备选服务器为所述目标服务器。If the number of candidate servers is 1, the candidate server is determined to be the target server.11.根据权利要求10所述的资源分配装置,其特征在于,所述选择策略包括从所述备选服务器中选择已部署虚拟机数量最多的服务器作为所述目标服务器;或从所述备选服务器中任意选择一个服务器作为所述目标服务器。11. The resource allocation device according to claim 10, wherein the selection strategy includes selecting the server with the largest number of deployed virtual machines from the candidate servers as the target server; or selecting the server from the candidate servers as the target server; Select any server among the servers as the target server.12.根据权利要求8至11中任一项所述的资源分配装置,其特征在于,所述获取模块,还用于获取删除虚拟机请求,所述删除虚拟机请求中携带所述目标虚拟机身份标识;12. The resource allocation device according to any one of claims 8 to 11, characterized in that the acquisition module is also used to acquire a virtual machine deletion request, and the virtual machine deletion request carries the target virtual machine. identification;所述处理模块,还用于根据所述目标虚拟机身份标识查找到所述目标虚拟机所处的目标服务器;The processing module is also configured to find the target server where the target virtual machine is located according to the target virtual machine identity;所述发送模块,还用于向所述目标服务器发送所述删除虚拟机请求,以使得所述目标服务器根据所述目标虚拟机身份标识删除所述目标虚拟机,并释放所述目标虚拟机所占用的LLC和内存带宽。The sending module is also configured to send the virtual machine deletion request to the target server, so that the target server deletes the target virtual machine according to the target virtual machine identity and releases the target virtual machine. LLC and memory bandwidth occupied.13.一种资源分配装置,其特征在于,包括:处理器和存储器,其中,所述存储器中存有计算机可读程序,所述处理器通过运行所述存储器中的程序,以用于完成权利要求1至5中任一项所述的方法。13. A resource allocation device, characterized in that it includes: a processor and a memory, wherein a computer-readable program is stored in the memory, and the processor is used to complete rights by running the program in the memory. The method according to any one of claims 1 to 5.14.一种服务器,其特征在于,包括:14. A server, characterized in that it includes:接收模块,用于接收虚拟化基础设施管理系统VIM发送的虚拟机创建请求,所述虚拟机创建请求携带目标虚拟机的三级缓存LLC参数和内存带宽参数,所述LLC参数和所述内存带宽参数由所述VIM获取,所述目标虚拟机为待创建虚拟机;A receiving module configured to receive a virtual machine creation request sent by the virtualization infrastructure management system VIM. The virtual machine creation request carries the third-level cache LLC parameters and memory bandwidth parameters of the target virtual machine. The LLC parameters and the memory bandwidth The parameters are obtained from the VIM, and the target virtual machine is the virtual machine to be created;处理模块,用于根据所述LLC参数调用LCC分配接口为所述目标虚拟机分配LLC,并根据所述内存带宽参数调用内存带宽分配接口为所述目标虚拟机分配内存带宽;创建所述目标虚拟机;所述服务器扩展支持英特尔资源调配Intel RDT技术。A processing module configured to call an LCC allocation interface according to the LLC parameter to allocate an LLC to the target virtual machine, and to call a memory bandwidth allocation interface according to the memory bandwidth parameter to allocate memory bandwidth to the target virtual machine; create the target virtual machine machine; the server extensions support Intel resource provisioning Intel RDT technology.15.根据权利要求14所述的服务器,其特征在于,所述接收模块,还用于接收所述VIM发送的删除虚拟机请求,所述删除虚拟机请求携带所述目标虚拟机身份标识;15. The server according to claim 14, wherein the receiving module is further configured to receive a virtual machine deletion request sent by the VIM, where the virtual machine deletion request carries the identity of the target virtual machine;所述处理模块,还用于根据所述目标虚拟机身份标识删除所述目标虚拟机,并释放所述目标虚拟机所占用的LLC和内存带宽。The processing module is also configured to delete the target virtual machine according to the target virtual machine identity, and release the LLC and memory bandwidth occupied by the target virtual machine.16.一种服务器,其特征在于,包括:处理器和存储器,其中,所述存储器中存有计算机可读程序,所述处理器通过运行所述存储器中的程序,以用于完成权利要求6至7中任一项所述的方法。16. A server, characterized by comprising: a processor and a memory, wherein a computer-readable program is stored in the memory, and the processor is used to complete claim 6 by running the program in the memory. The method described in any one of to 7.17.一种计算机可读存储介质,其特征在于,包括指令,当所述指令在处理器上运行时,使得所述处理器执行如权利要求1至5或权利要求6至7中任一项所述的方法。17. A computer-readable storage medium, characterized by comprising instructions that, when executed on a processor, cause the processor to perform any one of claims 1 to 5 or 6 to 7. the method described.18.一种虚拟化集群资源管理系统,其特征在于,包括权利要求8至13中任一项所述的资源分配装置和权利要求14至16中任一项所述的服务器。18. A virtualized cluster resource management system, characterized by comprising the resource allocation device according to any one of claims 8 to 13 and the server according to any one of claims 14 to 16.
CN201810872138.9A2018-08-022018-08-02 A resource allocation method and device for a virtualized cluster resource management systemActiveCN110795202B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201810872138.9ACN110795202B (en)2018-08-022018-08-02 A resource allocation method and device for a virtualized cluster resource management system

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201810872138.9ACN110795202B (en)2018-08-022018-08-02 A resource allocation method and device for a virtualized cluster resource management system

Publications (2)

Publication NumberPublication Date
CN110795202A CN110795202A (en)2020-02-14
CN110795202Btrue CN110795202B (en)2023-11-17

Family

ID=69426132

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201810872138.9AActiveCN110795202B (en)2018-08-022018-08-02 A resource allocation method and device for a virtualized cluster resource management system

Country Status (1)

CountryLink
CN (1)CN110795202B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN111555909B (en)*2020-04-212023-08-01西安万像电子科技有限公司Rendering resource allocation method for graphics processor rendering POOL GPU POOL
WO2022099446A1 (en)*2020-11-102022-05-19华为技术有限公司Method for memory management and related device
CN113190350B (en)*2021-04-302022-06-14华南理工大学 An LLC allocation method for hybrid deployment in offline containers
CN113689518B (en)*2021-09-152024-06-25上海联影医疗科技股份有限公司Image reconstruction method, image reconstruction device, computer equipment and storage medium
CN115686843B (en)*2022-10-282025-06-10福建亿榕信息技术有限公司Heterogeneous virtualized multi-tenant resource isolation scheduling method and equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101960418A (en)*2008-03-262011-01-26英特尔公司 Multicore memory thermal suppression algorithm for improved power/performance trade-off
CN105955824A (en)*2016-04-212016-09-21华为技术有限公司 A virtual resource configuration method and device
WO2017166136A1 (en)*2016-03-302017-10-05华为技术有限公司Vnf resource allocation method and device
CN107967180A (en)*2017-12-192018-04-27上海交通大学Based on resource overall situation affinity network optimized approach and system under NUMA virtualized environments

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20160284021A1 (en)*2015-03-272016-09-29Andrew HerdrichSystems, Apparatuses, and Methods for Resource Bandwidth Enforcement
US20180173549A1 (en)*2016-12-162018-06-21Intel CorporationVirtual network function performance monitoring

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN101960418A (en)*2008-03-262011-01-26英特尔公司 Multicore memory thermal suppression algorithm for improved power/performance trade-off
WO2017166136A1 (en)*2016-03-302017-10-05华为技术有限公司Vnf resource allocation method and device
CN105955824A (en)*2016-04-212016-09-21华为技术有限公司 A virtual resource configuration method and device
CN107967180A (en)*2017-12-192018-04-27上海交通大学Based on resource overall situation affinity network optimized approach and system under NUMA virtualized environments

Also Published As

Publication numberPublication date
CN110795202A (en)2020-02-14

Similar Documents

PublicationPublication DateTitle
CN110795202B (en) A resource allocation method and device for a virtualized cluster resource management system
CN111385114B (en)VNF service instantiation method and device
EP3471345B1 (en)Sla-based resource allocation method and nfvo
CN105955824B (en) A virtual resource configuration method and device
JP5510556B2 (en) Method and system for managing virtual machine storage space and physical hosts
US11301303B2 (en)Resource pool processing to determine to create new virtual resource pools and storage devices based on currebt pools and devices not meeting SLA requirements
US10924966B2 (en)Management method, management unit, and system
EP3512233A1 (en)Method for managing network slice and management unit
CN108667777B (en)Service chain generation method and network function orchestrator NFVO
CN112583615B (en) VNF instantiation method, NFVO, VIM, VNFM and system
CN103747107B (en)A kind of compatible cloud operating platform and its implementation
WO2015196931A1 (en)Disk io-based virtual resource allocation method and device
US20190034219A1 (en)Application management method and apparatus in network functions virtualization environment
CN109428764B (en) Instantiate method of virtual network function
US11088924B2 (en)Network management method, device, and system
CN108132827B (en)Network slice resource mapping method, related equipment and system
WO2020103925A1 (en)Method and apparatus for deploying containerization virtualized network function
WO2021109750A1 (en)Node management method, device and apparatus, storage medium, and system
CN104601680A (en)Resource management method and device
CN109995552A (en) VNF service instantiation method and device
WO2021004320A1 (en)Service resource license management method and related device
CN108028806B (en) Method and apparatus for allocating virtual resources in network function virtualization NFV network
CN109413011B (en) Public service resource application method, related equipment and system
CN105094947B (en)The quota management method and system of a kind of virtual computing resource
CN109002347B (en)Virtual machine memory allocation method, device and system

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp