CN115269110A - 云计算平台的资源分配方法、装置、电子设备和存储介质 - Google Patents
云计算平台的资源分配方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN115269110A CN115269110A CN202110485425.6A CN202110485425A CN115269110A CN 115269110 A CN115269110 A CN 115269110A CN 202110485425 A CN202110485425 A CN 202110485425A CN 115269110 A CN115269110 A CN 115269110A
- Authority
- CN
- China
- Prior art keywords
- physical machine
- machine
- physical
- resource
- virtual machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种云计算平台的资源分配方法、装置、电子设备和存储介质,其中方法包括:确定各物理机的能效值,以及各虚拟机的资源需求量;基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,解决了资源分配不均造成的巨大损失的问题,实现云计算平台的资源的均衡分布。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种云计算平台的资源分配方法、装置、电子设备和存储介质。
背景技术
随着信息技术的发展,云计算和大数据等应用的流行,推动了数据中心的快速发展,数据中心的数量不断增加。2015年全球有超过50万个数据中心,2020年数据中心数量达到960万个,大量的数据中心带来了巨大的电能消耗,2015年全球数据中心消耗的电能占世界发电功率总和的1.75%,到2020年这一比例达到8%。与此同时,研究表明全球大多数据中心的资源利用率在25%~40%之间。数据中心资源利用率不高造成了资源的浪费,大量的物理机工作在闲置状态,增加了数据中心的能耗以及运营者的负担。
目前,传统的云计算平台通过虚拟化技术进行资源的合理分配和资源动态迁移来合理分布资源使用情况,现有的云计算资源静态分配算法采用衡量物理机多种资源使用均衡程度的标准,并利用这一标准来进行虚拟机的分配,通过平衡物理机不同资源的使用率来降低资源碎片率,从而增大物理机资源的综合使用率,降低数据中心能耗。或者利用遗传算法,从大量的虚拟机分配方案中找出最优的一种,达到增大资源使用率、降低能耗的目的。
但是,现有的资源分配算法存在技术短板。通过现有的资源分配算法虽然使得数据中心中的所有虚拟机运行在尽可能少的物理机上,关闭低负载的物理机,提高云计算平台效率。但过高的物理机资源使用率会造成物理机温度过高,超过安全的温度值后可能造成物理机硬件的损坏,从而造成巨大的损失。
发明内容
本发明提供一种云计算平台的资源分配方法、装置、电子设备和存储介质,用以解决现有技术中资源分配不均造成的巨大损失的问题,实现云计算平台的资源的均衡分布。
本发明提供一种云计算平台的资源分配方法,包括:
确定各物理机的能效值,以及各虚拟机的资源需求量;
基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
根据本发明提供的一种云计算平台的资源分配方法,所述基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,包括:
基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,将所述当前虚拟机分配至所述目标物理机;
按照资源需求量从高到低的顺序,确定当前虚拟机的下一虚拟机,并将所述下一虚拟机更新为当前虚拟机。
根据本发明提供的一种云计算平台的资源分配方法,所述基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,包括:
基于当前虚拟机的资源需求量,以及当前物理机的已配置资源情况和当前物理机的可承载资源总量,判断当前物理机是否可承载所述当前虚拟机;
若所述当前物理机可承载所述当前虚拟机,则确定所述当前物理机为所述目标物理机;
否则,按照能效值由高到低的顺序,确定当前物理机的下一物理机,并将所述下一物理机更新为当前物理机。
根据本发明提供的一种云计算平台的资源分配方法,所述基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,之后还包括:
基于各物理机的资源使用率数据,确定待调整的物理机;
对待调整的物理机进行虚拟机迁移。
根据本发明提供的一种云计算平台的资源分配方法,所述基于各物理机的资源使用率数据,确定待调整的物理机,包括:
获取各物理机在预设滑动窗口内的资源使用率数据;
若任一物理机的资源使用率数据中超出第一使用率阈值的数据比例大于预设比例阈值,或所述任一物理机的资源使用率数据中超出第二使用率阈值的数据次数大于预设次数阈值,则确定所述任一物理机为待调整的物理机。
根据本发明提供的一种云计算平台的资源分配方法,所述对待调整的物理机进行虚拟机迁移,包括:
基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,所述候选迁出虚拟机集合中任一虚拟机从所述待调整的物理机中迁出后所述待调整的物理机的资源使用率符合预设条件;
从所述候选迁出虚拟机集合选取资源利用率最高的虚拟机迁出。
根据本发明提供的一种云计算平台的资源分配方法,所述基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,之后还包括:
若所述候选迁出虚拟机集合为空,则从所述待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机迁出,并基于迁出后的待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合。
本发明还提供一种云计算平台的资源分配装置,包括:
确定单元,用于确定各物理机的能效值,以及各虚拟机的资源需求量;
分配单元,用于基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述云计算平台的资源分配方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述云计算平台的资源分配方法的步骤。
本发明提供的云计算平台的资源分配方法、装置、电子设备和存储介质,根据能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,从初始分配以及整个平台资源使用情况出发,保证了第一次分配后云计算平台的资源分配情况满足平台的要求,解决了资源分配不均造成的巨大损失的问题,实现云计算平台的资源的均衡分布。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的云计算平台的资源分配方法的流程示意图之一;
图2是本发明提供的云计算平台的资源分配方法的流程示意图之二;
图3是本发明提供的云计算平台的资源分配方法的流程示意图之三;
图4是本发明提供的云计算平台的资源分配装置的结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,云计算资源静态分配算法未考虑到数据中心硬件性能存在差异性,造成其评判标准的特征值不具备普遍性,使资源分配的结果还需要根据云计算平台进行二次手工调整。
针对上述问题,本发明提出了一种云计算平台的资源分配方法,图1是本发明提供的云计算平台的资源分配方法的流程示意图之一,如图1所示,该方法包括:
步骤110,确定各物理机的能效值,以及各虚拟机的资源需求量。
数据中心拥有不同种类的虚拟机,每个种类的虚拟机所需的资源量不同。待分配的虚拟机集合为VM={VM1,VM2,VM3,…,VMn},物理机集合为PM={PM1,PM2,PM3,…,PMm},VMi示待分配的虚拟机集合中第i台虚拟机,PMj表示物理机集合中第j台物理机。物理机集合中m台物理机的总功耗为:Pj表示物理机集合中第j台物理机的功耗。
具体地,物理机和虚拟机的静态放置情况可通过如下公式进行描述:
当所需的总计算资源一定时,减少总体功耗P,等同于提高能效。物理机的能效值(Performace Per Watt,PPW)表示物理机的资源使用率性能。物理机的能效值PPW的计算公式为:
PPW(PMj)=Perfj(aj)/Pj
其中,PMj表示第j台物理机,aj表示PMj的资源使用率,Perfj(aj)表示PMj在资源利用率为aj时的性能,Pj表示PMj的功耗。
物理机的能效值PPW体现了物理机能效,能效值越高表明提供相同Perfj(aj)时,物理机的功耗越小。物理机的能效值PPW考虑了物理机的性能与能耗,适用于异构的数据中心。
确定各物理机的能效值即对物理机集合中各物理机的能效值进行计算,获取物理机集合中各物理机的能效值;确定各虚拟机的资源需求量即确定待分配的虚拟机集合中各虚拟机所需的资源量,虚拟机所需的资源可以是虚拟机所需的CPU资源,也可以是虚拟机所占用的内存,此处的虚拟机的资源需求量为虚拟机所需的CPU资源量。
步骤120,基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
此处,能效值优先的分配原则为将通过能效值PPW的计算公式计算获取的物理机集合中各物理机的能效值从高到低排序,优先在能效值高的物理机上配置虚拟机。优先将待分配的虚拟机集合中各虚拟机分配至能效值高的物理机,以提高能效,从而降低总体功耗。
根据各虚拟机的资源需求量对待分配的虚拟机集合中各虚拟机进行从高到低排序,对待分配的虚拟机集合中各虚拟机进行物理机分配时,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,即首先为资源需求量最高的虚拟机分配物理机,其次为资源需求量次高的虚拟机分配物理机,按照资源需求量从高到低的顺序依次将待分配的虚拟机集合中的各虚拟机分配至相应的物理机。
进一步地,为虚拟机分配物理机时,根据能效值优先的分配原则,按照资源需求量从高到低的顺序依次将虚拟机和物理机进行匹配。即首先在能效值最高的物理机上按照资源需求量从高到低的顺序依次配置虚拟机,直至能效值最高的物理机上已不能配置任何虚拟机;再将余下的虚拟机按照资源需求量从高到低的顺序依次分配至能效值次高的物理机,直至能效值次高的物理机上已不能配置任何虚拟机;如此重复。
本发明实施例提供的云计算平台的资源分配方法,根据能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,从初始分配以及整个平台资源使用情况出发,保证了初始化分配后云计算平台的资源分配情况满足平台的要求,解决了资源分配不均造成的巨大损失的问题,实现云计算平台的资源的均衡分布。
基于上述实施例,步骤110中,确定各物理机的能效值,以及各虚拟机的资源需求量,之前还包括:
物理机的能效值与物理机的功耗和物理机的资源使用率有关。其中,物理机的资源使用率可通过如下公式计算获取:
若待分配的虚拟机集合中任一虚拟机被放置于物理机集合中任一物理机上,则设置xi,j的值为1;若待分配的虚拟机集合中任一虚拟机未被放置于物理机集合中任一物理机上,则设置xi,j的值为0。
对n台虚拟机集合VM与m台物理机集合PM进行分配,分配完成后可得分配矩阵X,分配矩阵如下式所示:
基于上述实施例,步骤120包括:
基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,将所述当前虚拟机分配至所述目标物理机;
按照资源需求量从高到低的顺序,确定当前虚拟机的下一虚拟机,并将所述下一虚拟机更新为当前虚拟机。
此处,当前虚拟机为当前时刻需进行分配的虚拟机,从待分配的虚拟机集合中确定当前虚拟机。各物理机的已配置资源情况包括各物理机在当前时刻之前已配置完成的虚拟机和各物理机所占用的内存资源。目标物理机为能够配置当前虚拟机且能效值最高的物理机。
具体地,根据当前虚拟机的资源需求量、物理机集合中各物理机的已配置资源情况和各物理机的能效值,从物理机集合中选取能够配置当前虚拟机的物理机,并从可配置当前虚拟机的物理机中选取能效值最高的物理机,将能效值最高的物理机作为目标物理机。而后将当前虚拟机分配至目标物理机,在目标物理机上配置当前虚拟机。
对待分配的虚拟机集合中各虚拟机按照资源需求量从高到低的顺序进行排序,根据排序结果确定当前虚拟机的下一个虚拟机,对待分配的虚拟机集合中各虚拟机的顺序进行更新,将当前虚拟机的下一个虚拟机更新为当前虚拟机。
基于上述实施例,步骤120中,基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,包括:
基于当前虚拟机的资源需求量,以及当前物理机的已配置资源情况和当前物理机的可承载资源总量,判断当前物理机是否可承载所述当前虚拟机;
若所述当前物理机可承载所述当前虚拟机,则确定所述当前物理机为所述目标物理机;
否则,按照能效值由高到低的顺序,确定当前物理机的下一物理机,并将所述下一物理机更新为当前物理机。
此处,当前物理机为当前时刻需进行虚拟机配置的物理机,从物理机集合中确定当前物理机。当前物理机的已配置资源情况包括当前物理机在当前时刻之前已配置完成的虚拟机和当前物理机所占用的内存资源。当前物理机的可承载资源总量为当前物理机能够承载的最大资源。
具体地,根据当前虚拟机的资源需求量、当前物理机的已配置资源情况和当前物理机能够承载的资源总量,对当前物理机做出判断,判断当前物理机是否能够承载当前虚拟机。具体可通过如下判断条件判断当前物理机是否可承载当前虚拟机:
若判断条件成立,则判定当前物理机可承载当前虚拟机;否则,判定当前物理机不能承载当前虚拟机。
进一步地,若当前物理机能够承载当前虚拟机,则将当前物理机确定为目标物理机,将当前虚拟机分配至当前物理机,在当前物理机上配置当前虚拟机。
需要说明的是,待分配的虚拟机集合中各虚拟机只能被唯一地分配到相应的物理机上。具体可通过如下约束条件对虚拟机的分配进行约束:
相应地,若当前物理机不能承载当前虚拟机,则按照物理机的能效值的由高到低的顺序对物理机集合中各物理机进行排序,根据排序结果确定当前物理机的下一个物理机,对物理机集合中各物理机的顺序进行更新,将当前物理机的下一个物理机更新为当前物理机。
目前,云计算资源动态迁移方法,为了能够在SLA违背和能耗等方面取得较好的效果,许多方法中采用了设置阈值的方法,通过阈值使物理机资源利用率在一定的安全范围内;或者采用云计算平台资源使用的历史数据,物理主机资源的使用近似服从某些概率分布,从而得到的均值与方差,通过逆概率函数来动态地设定阈值,一旦物理机资源的使用率在阈值范围之外,就迁移虚拟机;但是在虚拟迁移时机的触发方面其不能适应负载的短暂波动,造成了虚拟机不必要的迁移,带来了过多的迁移开销。
针对上述问题,基于上述实施例,图2是本发明提供的云计算平台的资源分配方法的流程示意图之二,如图2所示,该方法包括:步骤120中,基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,之后还包括:
步骤210,基于各物理机的资源使用率数据,确定待调整的物理机。
此处,物理机的资源使用率数据可通过滑动窗口的监测机制监测获取,物理机的资源使用率为物理机的已配置资源与物理机的可承载资源总量的比值。待调整的物理机为物理机集合中资源使用率过高或过低的物理机。
具体地,负载需求的动态性导致资源使用情况不断变化,为了降低负载波动所带来的影响,可采用滑动窗口的监测机制监测资源使用率数据。通过滑动窗口的监测机制采集设定窗口内的物理机的资源使用率的历史数据,根据采集的物理机的资源使用率的历史数据和物理机的资源使用率数据,对物理机的工作状态进行判断,判断物理机是否处于安全的工作状态下,安全的工作状态为非过载和非低负载。若物理机位未处于安全的工作状态下,则将该物理机确定为待调整的物理机。
步骤220,对待调整的物理机进行虚拟机迁移。
由于虚拟机中负载的动态性,需要对虚拟机进行动态调整以满足负载的资源需求。当物理机的资源使用率过高时,迁移过载物理机上的虚拟机,以防止违背SLA(ServiceLevel Agreement,服务等级协议);当物理机的资源使用率过低时,迁移低负载物理机上的虚拟机,而后关闭低资源使用率的物理机,减少能耗。
根据物理机集合中各物理机的资源使用率数据,确定待调整的物理机后,对待调整的物理机进行虚拟机迁移,迁移待调整的物理机上的虚拟机,使得迁移虚拟机后的待调整的物理机处于安全的工作状态下。
本发明实施例提供的云计算平台的资源分配方法,通过对待调整的物理机进行虚拟机迁移,解决了物理机的资源使用率过高造成的物理机硬件的损坏,从而造成巨大的损失的问题,实现了对在线资源分布情况的整合,收缩云计算平台的计算节点资源,完成了云计算平台计算节点全生命周期的能耗优化。
基于上述实施例,步骤210包括:
获取各物理机在预设滑动窗口内的资源使用率数据;
若任一物理机的资源使用率数据中超出第一使用率阈值的数据比例大于预设比例阈值,或该物理机的资源使用率数据中超出第二使用率阈值的数据次数大于预设次数阈值,则确定该物理机为待调整的物理机。
通过滑动窗口监测机制监测预设滑动窗口内各物理机的资源使用率数据,采用滑动窗口监测机制有利于避免负载波动所造成的虚拟机的不必要的迁移。此处的预设滑动窗口可以是一个,也可以是多个,本发明实施例对此不作具体限定。当预设滑动窗口为多个时,需对各个预设滑动内各物理机的资源使用率数据进行监测。预设滑动窗口可以是较大的窗口,也可以是较小的窗口。窗口越小,触发迁移操作的可能性越大。窗口设置的大小与数据中心采集资源使用率数据的频率有关。
具体地,第一使用率阈值、预设比例阈值、第二使用率阈值和预设次数阈值均是预先设定的阈值,用于衡量预设滑动窗口内任一物理机是否为待调整的物理机。
其中,可以通过第一使用率阈值和预设比例阈值确定预设滑动窗口内任一物理机是否为待调整的物理机,也可以通过第二使用率阈值和预设次数阈值确定预设滑动窗口内任一物理机是否为待调整的物理机。第一使用率阈值较小,根据第一使用率阈值设置相应的预设比例阈值;第二使用率阈值较大,根据第二使用率阈值对应设置预设次数阈值。
若监测到预设滑动窗口内任一物理机的资源使用率数据超出第一使用率阈值,则表明该物理机的资源使用率数据小范围超出第一使用率阈值;若超出第一使用率阈值的数据比例大于预设比例阈值,则表明该物理机的资源使用率数据在小范围内频繁超出第一使用率阈值。当预设滑动窗口内任一物理机的资源使用率数据中超出第一使用率阈值的数据比例大于预设比例阈值时,可确定该物理机为待调整的物理机。
若监测到预设滑动窗口内任一物理机的资源使用率数据超出第二使用率阈值,则表明该物理机的资源使用率数据较大,超出第二使用率阈值;若超出第二使用率阈值的数据次数大于预设次数阈值,则表明该物理机的资源使用率数据数次超过第二使用率阈值。当预设滑动窗口内任一物理机的资源使用率数据中超出第二使用率阈值的数据次数大于预设次数阈值时,可确定该物理机为待调整的物理机。
基于上述实施例,步骤220包括:
基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,所述候选迁出虚拟机集合中任一虚拟机从所述待调整的物理机中迁出后所述待调整的物理机的资源使用率符合预设条件;
从所述候选迁出虚拟机集合选取资源利用率最高的虚拟机迁出。
此处的虚拟机的资源利用率为虚拟机的资源需求量与虚拟机所占用的内存的比值,此处的虚拟机的资源需求量为虚拟机所需的CPU资源量。即虚拟机的资源利用率为虚拟机的所需的CPU资源与虚拟机所占用的内存的比值。
具体地,确定待调整的物理机后,获取待调整的物理机中部署的各虚拟机的资源利用率。根据各虚拟机的资源利用率,对待调整的物理机进行判断,判断从待调整的物理机中迁出任一虚拟机后待调整的物理机的资源使用率是否符合预设条件。此处的预设条件是预先设定的,与具体的物理机有关,可根据物理机的资源使用率设置相应的预设条件。
进一步地,若从待调整的物理机中迁出任一虚拟机后待调整的物理机的资源使用率符合预设条件,则将待调整的物理集中部署的该虚拟机列入候选迁出虚拟机集合,并从候选迁出虚拟机集合中选取资源利用率最高的虚拟机,将候选迁出虚拟机集合中资源利用率最高的虚拟机从待调整的物理机中迁出。
相应地,若从待调整的物理机中迁出任一虚拟机后待调整的物理机的资源使用率不符合预设条件,即从待调整的物理机中迁出任一虚拟机都无法使待调整的物理机的资源使用率符合预设条件,则可确定候选迁出虚拟机集合为空。
基于上述实施例,步骤220中,基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,之后还包括:
若所述候选迁出虚拟机集合为空,则从所述待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机迁出,并基于迁出后的待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合。
具体地,若候选迁出虚拟机集合为空,则从待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机,将资源利用率最高的虚拟机从待调整的物理机中迁出。
从待调整的物理机中迁出资源利用率最高的虚拟机后,根据迁出后的待调整的物理机中部署的各虚拟机的资源利用率,再次对迁出后的待调整的物理机进行判断,判断从迁出后的待调整的物理机中迁出任一虚拟机后,迁出后的待调整的物理机的资源使用率是否符合预设条件。
进一步地,若从迁出后的待调整的物理机中迁出任一虚拟机后,迁出后的待调整的物理机的资源使用率符合预设条件,则将迁出后的待调整的物理集中部署的该虚拟机列入候选迁出虚拟机集合,并从候选迁出虚拟机集合中选取资源利用率最高的虚拟机,将候选迁出虚拟机集合中资源利用率最高的虚拟机从迁出后的待调整的物理机中迁出。
相应地,若从迁出后的待调整的物理机中迁出任一虚拟机后,迁出后的待调整的物理机的资源使用率不符合预设条件,即从迁出后的待调整的物理机中迁出任一虚拟机都无法使迁出后的待调整的物理机的资源使用率符合预设条件,则可确定候选迁出虚拟机集合为空。
本发明实施例提供的云计算平台的资源分配方法,根据物理机的资源使用率确定待调整的物理机,根据虚拟机的资源利用率迁移待调整的物理机中相应的虚拟机,实现了对云计算平台负载变化进行及时响应,同时避免了过度响应造成平台内部虚拟化频繁迁移,使得云计算平台资源使用合理、性能动态负载均衡。
本发明提供的云计算平台的资源分配方法还包括物理机的静态安置算法(Modified Decreasin First Fit,MDFF),静态安置算法的执行步骤包括:
步骤S1,将分配矩阵X中所有元素置0;
步骤S2,计算物理机集合PM中PMj的物理机能效值PPW;
步骤S3,按照能效值PPW由高到低的顺序对物理机集合PM中PMj进行排序;
步骤S4,按照虚拟机所需的CPU资源量从高到低的顺序对待分配的虚拟机集合VM中VMi进行排序;
步骤S5,For inVMi∈VM
步骤S6,For in PMj∈PM
步骤S7,xi,j←1
步骤380,If判断条件=TRUE break
步骤S8,xi,j←0
步骤S9,End for
步骤S10,End for
步骤S11,Return X
本发明实施例提供的云计算的资源分配方法,展示了物理机的静态安置算法,描述了虚拟机静态调度的过程,完成了对所有物理机的能效值的计算,按照计算结果降序排序的过程,以及对虚拟机按照CPU的需求量降序排序。然后采用最先适应算法,找到第一个能够安置VMi的PMj,相应的xi,j置为1。若虚拟机数目为n,物理机数目为m,则算法的复杂度为mn。
云计算平台内部迁移虚拟机按照最小迁移时间为主要策略,同时,结合虚拟机的资源利用率提出新的选择策略。首先确定候选迁出虚拟机集合,而后计算候选迁出虚拟机集合中各虚拟机的资源利用率,虚拟机的资源利用率表示迁移虚拟机操作的效率。虚拟机的资源利用率越高表明在迁移相同内存大小的虚拟机时物理机的资源使用率下降越多,迁移效果越好。若迁移任何虚拟机都不能使物理机的资源使用率符合预设条件,则选择资源利用率最高的虚拟机迁出,以最大程度降低物理机的资源使用率。图3是本发明提供的云计算平台的资源分配方法的流程示意图之三,如图3所示,该方法包括:
步骤310,根据各物理机的资源使用率数据,确定待调整的物理机;
步骤320,根据待调整的物理机中部署的各虚拟机的资源利用率,判断从待调整的物理机中迁出任一虚拟机后待调整的物理机的资源使用率是否符合预设条件;若符合预设条件,则将该虚拟机加入候选迁出虚拟机集合;
步骤330,若候选迁出虚拟机集合为空,则执行步骤440;否则执行步骤350;
步骤340,从待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机迁出,并根据迁出后的待调整的物理机中部署的各虚拟机的资源利用率,执行步骤420;
步骤350,从候选迁出虚拟机集合选取资源利用率最高的虚拟机;
步骤360,将候选迁出虚拟机集合中资源利用率最高的虚拟机加入迁移列表;
步骤370,选择结束,输出迁移列表。
本发明实施例提供的云计算平台的资源分配方法,提出了云计算动态迁移算法,通过与云计算资源静态分配算法的结合,完成整个云平台计算节点全生命周期的能耗优化,同时算法的时间复杂度保证了算法执行时间效率高,不会因执行时长造成云计算平台的迁移抖动,还保证了对业务影响程度降到合理程度。本发明提供的云计算平台的资源分配方法适用于采用虚拟化计算技术的各种平台,在满足尽可能承载业务能力的前提下,降低云计算平台的能源消耗,为云计算平台节省运行成本,提升经济效益。
下面对本发明提供的云计算平台的资源分配装置进行描述,下文描述的云计算平台的资源分配装置与上文描述的云计算平台的资源分配方法可相互对应参照。
图4是本发明提供的元计算平台的资源分配装置的结构示意图。如图4所示,该装置包括:
确定单元410,用于确定各物理机的能效值,以及各虚拟机的资源需求量;
分配单元420,用于基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
本发明实施例提供的云计算平台的资源分配装置,根据能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,从初始分配以及整个平台资源使用情况出发,保证了第一次分配后云计算平台的资源分配情况满足平台的要求,解决了资源分配不均造成的巨大损失的问题,实现云计算平台的资源的均衡分布。
基于上述实施例,分配单元420用于:
基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,将所述当前虚拟机分配至所述目标物理机;
按照资源需求量从高到低的顺序,确定当前虚拟机的下一虚拟机,并将所述下一虚拟机更新为当前虚拟机。
基于上述实施例,所述装置还包括判断单元,用于:
基于当前虚拟机的资源需求量,以及当前物理机的已配置资源情况和当前物理机的可承载资源总量,判断当前物理机是否可承载所述当前虚拟机;
若所述当前物理机可承载所述当前虚拟机,则确定所述当前物理机为所述目标物理机;
否则,按照能效值由高到低的顺序,确定当前物理机的下一物理机,并将所述下一物理机更新为当前物理机。
基于上述实施例,所述装置还包括迁移单元,用于:
基于各物理机的资源使用率数据,确定待调整的物理机;
对待调整的物理机进行虚拟机迁移。
基于上述实施例,确定单元410用于:
获取各物理机在预设滑动窗口内的资源使用率数据;
若任一物理机的资源使用率数据中超出第一使用率阈值的数据比例大于预设比例阈值,或该物理机的资源使用率数据中超出第二使用率阈值的数据次数大于预设次数阈值,则确定该物理机为待调整的物理机。
基于上述实施例,迁移单元用于:
基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,所述候选迁出虚拟机集合中任一虚拟机从所述待调整的物理机中迁出后所述待调整的物理机的资源使用率符合预设条件;
从所述候选迁出虚拟机集合选取资源利用率最高的虚拟机迁出。
基于上述实施例,迁移单元用于:
若所述候选迁出虚拟机集合为空,则从所述待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机迁出,并基于迁出后的待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合。
图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行云计算平台的资源分配方法,该方法包括:确定各物理机的能效值,以及各虚拟机的资源需求量;基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的云计算平台的资源分配方法,该方法包括:确定各物理机的能效值,以及各虚拟机的资源需求量;基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的云计算平台的资源分配方法,该方法包括:确定各物理机的能效值,以及各虚拟机的资源需求量;基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种云计算平台的资源分配方法,其特征在于,包括:
确定各物理机的能效值,以及各虚拟机的资源需求量;
基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
2.根据权利要求1所述的云计算平台的资源分配方法,其特征在于,所述基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,包括:
基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,将所述当前虚拟机分配至所述目标物理机;
按照资源需求量从高到低的顺序,确定当前虚拟机的下一虚拟机,并将所述下一虚拟机更新为当前虚拟机。
3.根据权利要求2所述的云计算平台的资源分配方法,其特征在于,所述基于当前虚拟机的资源需求量,以及各物理机的已配置资源情况和能效值,选取可配置所述当前虚拟机的物理机中能效值最高的物理机作为目标物理机,包括:
基于当前虚拟机的资源需求量,以及当前物理机的已配置资源情况和当前物理机的可承载资源总量,判断当前物理机是否可承载所述当前虚拟机;
若所述当前物理机可承载所述当前虚拟机,则确定所述当前物理机为所述目标物理机;
否则,按照能效值由高到低的顺序,确定当前物理机的下一物理机,并将所述下一物理机更新为当前物理机。
4.根据权利要求1至3中任一项所述的云计算平台的资源分配方法,其特征在于,所述基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机,之后还包括:
基于各物理机的资源使用率数据,确定待调整的物理机;
对待调整的物理机进行虚拟机迁移。
5.根据权利要求4所述的云计算平台的资源分配方法,其特征在于,所述基于各物理机的资源使用率数据,确定待调整的物理机,包括:
获取各物理机在预设滑动窗口内的资源使用率数据;
若任一物理机的资源使用率数据中超出第一使用率阈值的数据比例大于预设比例阈值,或所述任一物理机的资源使用率数据中超出第二使用率阈值的数据次数大于预设次数阈值,则确定所述任一物理机为待调整的物理机。
6.根据权利要求4所述的云计算平台的资源分配方法,其特征在于,所述对待调整的物理机进行虚拟机迁移,包括:
基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,所述候选迁出虚拟机集合中任一虚拟机从所述待调整的物理机中迁出后所述待调整的物理机的资源使用率符合预设条件;
从所述候选迁出虚拟机集合选取资源利用率最高的虚拟机迁出。
7.根据权利要求6所述的云计算平台的资源分配方法,其特征在于,所述基于所述待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合,之后还包括:
若所述候选迁出虚拟机集合为空,则从所述待调整的物理机中部署的各虚拟机中选取资源利用率最高的虚拟机迁出,并基于迁出后的待调整的物理机中部署的各虚拟机的资源利用率,构建候选迁出虚拟机集合。
8.一种云计算平台的资源分配装置,其特征在于,包括:
确定单元,用于确定各物理机的能效值,以及各虚拟机的资源需求量;
分配单元,用于基于能效值优先的分配原则,按照资源需求量从高到低的顺序为各个虚拟机分配物理机。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述云计算平台的资源分配方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述云计算平台的资源分配方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110485425.6A CN115269110A (zh) | 2021-04-30 | 2021-04-30 | 云计算平台的资源分配方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110485425.6A CN115269110A (zh) | 2021-04-30 | 2021-04-30 | 云计算平台的资源分配方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115269110A true CN115269110A (zh) | 2022-11-01 |
Family
ID=83745157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110485425.6A Pending CN115269110A (zh) | 2021-04-30 | 2021-04-30 | 云计算平台的资源分配方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115269110A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117370032A (zh) * | 2023-12-07 | 2024-01-09 | 聊城金恒智慧城市运营有限公司 | 一种云计算服务器资源优化分配方法 |
-
2021
- 2021-04-30 CN CN202110485425.6A patent/CN115269110A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117370032A (zh) * | 2023-12-07 | 2024-01-09 | 聊城金恒智慧城市运营有限公司 | 一种云计算服务器资源优化分配方法 |
CN117370032B (zh) * | 2023-12-07 | 2024-03-01 | 聊城金恒智慧城市运营有限公司 | 一种云计算服务器资源优化分配方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106790726B (zh) | 一种基于Docker云平台的优先级队列动态反馈负载均衡资源调度方法 | |
EP2524277B1 (en) | Methods and apparatus for coordinated energy management in virtualized data centers | |
CN107239336B (zh) | 一种实现任务调度的方法及装置 | |
CN111078363B (zh) | 一种虚拟机的numa节点调度方法、装置、设备及介质 | |
CN104142860A (zh) | 应用服务系统的资源调整方法与装置 | |
CN111966453B (zh) | 一种负载均衡方法、系统、设备及存储介质 | |
CN107220108B (zh) | 一种实现云数据中心负载均衡的方法和系统 | |
CN106686039B (zh) | 一种云计算系统中的资源调度方法及装置 | |
CN109976879B (zh) | 一种基于资源使用曲线互补的云计算虚拟机放置方法 | |
CN107203256B (zh) | 一种网络功能虚拟化场景下的节能分配方法与装置 | |
Kaaouache et al. | An energy-efficient VM placement method for cloud data centers using a hybrid genetic algorithm | |
CN115269110A (zh) | 云计算平台的资源分配方法、装置、电子设备和存储介质 | |
CN108073449B (zh) | 一种虚拟机动态放置方法 | |
CN110865871A (zh) | 基于资源合理化应用的虚拟化集群资源调度方法 | |
CN115952054A (zh) | 一种仿真任务资源管理方法、装置、设备及介质 | |
Radi et al. | Genetic-Based Virtual Machines Consolidation Strategy With Efficient Energy Consumption in Cloud Environment | |
Banerjee et al. | Game Theory Based Energy-aware Virtual Machine Placement towards Improving Resource Efficiency in Homogeneous Cloud Data Center | |
Srivastava et al. | Load management model for cloud computing using cloudsim | |
CN113778627A (zh) | 一种创建云资源的调度方法 | |
Ramesh et al. | Machine learning for load balancing in cloud datacenters | |
Cao et al. | A QoS-guaranteed energy-efficient VM dynamic migration strategy in cloud data centers | |
Naeen | Cost reduction using SLA-aware genetic algorithm for consolidation of virtual machines in cloud data centers | |
Swain et al. | An Energy Efficient Virtual Machine Placement Scheme for Intelligent Resource Management at Cloud Data Center | |
CN109976880B (zh) | 一种虚拟机资源使用的方法及其系统 | |
Li et al. | Research on Dynamic Virtual Machine Scheduling Strategy Based on Improved Genetic Algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |