CN105138391A - 面向广域分布云系统公平的多任务虚拟机分配方法 - Google Patents

面向广域分布云系统公平的多任务虚拟机分配方法 Download PDF

Info

Publication number
CN105138391A
CN105138391A CN201510466526.3A CN201510466526A CN105138391A CN 105138391 A CN105138391 A CN 105138391A CN 201510466526 A CN201510466526 A CN 201510466526A CN 105138391 A CN105138391 A CN 105138391A
Authority
CN
China
Prior art keywords
task
virtual machine
node
queue
cloud system
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.)
Granted
Application number
CN201510466526.3A
Other languages
English (en)
Other versions
CN105138391B (zh
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.)
Sun Yat Sen University
National Sun Yat Sen University
Original Assignee
National Sun Yat Sen University
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 National Sun Yat Sen University filed Critical National Sun Yat Sen University
Priority to CN201510466526.3A priority Critical patent/CN105138391B/zh
Publication of CN105138391A publication Critical patent/CN105138391A/zh
Application granted granted Critical
Publication of CN105138391B publication Critical patent/CN105138391B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种面向广域分布云系统公平的多任务虚拟机分配方法,包括下述步骤:S1:计算任务提交到云系统,云系统估算它们的虚拟机需求;S2:将所有任务降序排序并加入队列;S3:选择队列中估值大的任务,估算每一节点若作为该任务的初始节点可能产生最终的通讯消耗;S4:将该任务分配给估值最小的节点,并将该任务移出队列;S5:判断是否所有任务都分配了一个初始节点,是则执行S6否则返回S3;S6:对于每一个未满足虚拟机需求的任务遍历系统中可用节点,计算直径虚拟机比;S7:将比值最小的任务分配到对应的节点上;S8:判断是否完成所有任务的分配,是则结束分配否则返回执行S7。本发明能够获得一个更低的系统通讯消耗,且能够保证云系统的高公平性。

Description

面向广域分布云系统公平的多任务虚拟机分配方法
技术领域
本发明涉及云计算的研究领域,特别涉及一种面向广域分布云系统公平的多任务虚拟机分配方法。
背景技术
云计算(英语:CloudComputing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备。云环境中分散着数量巨大并且异构的资源,云计算就是要解决如何高效安全的管理和共享接入云的各种资源。在云环境中,不仅资源的地理位置分布广泛,甚至属于不同的自治系统,而且资源往往具有异构性、动态性,如何有效分配计算资源是决定整个云性能、效率的关键问题。因此,随着云计算技术的日益普及,有效的云资源分配模型和算法将成为高效利用这些资源的关键。
由于数据分布的离散性,一个任务将可能在需要多个节点协作完成(如Map-Reduce和多层次Web服务),当虚拟机之间的通讯量很大时,若虚拟机之间的物理距离很长,将长时间占用并消耗巨大的网络资源,这并不符合资源高效应用的理念。因此在一个资源分布很广的云系统中,降低分配给同一任务的节点间的通讯耗时将带来巨大的利润。
此外为了保证云系统用户间的服务公平性,任务执行的时间应该与任务规模成正比,即大任务执行时间长,小任务执行时间短。具有高服务公平性是成熟云系统的重要标志。
目前尚未有针对广域分布云系统的多任务虚拟机分配方案,通用的做法是通过不断执行单任务虚拟机分配方法来满足多任务分配。单任务虚拟机分配方案通过减小被分配的虚拟机之间的最大路径长度(即直径)来减少节点之间的通讯消耗,提升系统性能。简要的技术路线如下:遍历系统中每个节点,分别计算出满足虚拟机需求的星型拓扑的直径,最后将任务分配给直径最小的拓扑。
然而上述方法在多任务条件下存在一定的问题:
(1)由于云系统的异构特性,每个节点的网络状况良莠不齐,首先进行分配的任务将优先占用更好的系统资源,在分配后期,任务将只能分配到网络状况并不良好的节点,造成巨大的通讯消耗。虽然满足了单任务的最优,但是不能保证,并且可能破坏全局最优。
(2)由于先分配的任务将占有更加优质的系统资源,可能造成先分配的大任务执行时间要早于后分配的小任务。这将大大降低系统的公平性。因为任务的大小与其执行时间不成比例。
分析上述两大缺陷,任务的分配顺序是主要原因。由于任务是按一定的顺序分配的,而云系统的异构性又决定了后分配的任务将得到较差的系统资源,大大影响系统性能。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种面向广域分布云系统公平的多任务虚拟机分配方法,该方法能够获得一个更低的系统通讯消耗并能够保证云系统的高公平性。
本发明的目的通过以下的技术方案实现:
面向广域分布云系统公平的多任务虚拟机分配方法,其包括下述步骤:
S1:计算任务提交到云系统,云系统估算它们的虚拟机需求;
S2:按照估算好的虚拟机需求将所有任务降序排序并加入队列;
S3:选择队列中估值大的任务,对每个节点估算该任务若以该节点作为初始节点可能产生最终的通讯消耗;
S4:将该任务分配给估值最小的节点,并将该任务移出队列;
S5:判断是否所有任务都分配了一个初始节点,是则执行步骤S6否则返回步骤S3;
S6:对于每一个未满足虚拟机需求的任务遍历系统中可用节点,计算对应的直径虚拟机比;
S7:将比值最小的任务分配到对应的节点上;
S8:判断是否完成所有任务的分配,是则结束分配否则返回执行步骤S7。
优选的,步骤S1中,云系统估算它们的虚拟机需求的具体方法为:通过系统所收集的过往任务的历史数据建立多元回归预测模型,建立以任务所处理的数据量为自变量,使用的虚拟机数量为因变量的回归方程,建模中使用到的参数有使用的虚拟机数量、任务所需处理的数据量、任务的通讯消耗、任务类型、任务的提交者。最终通过建立的模型便可预测出对应任务所需虚拟机数量。
优选的,步骤S2中,将所有任务降序排序并加入队列的具体方法为:建立队列存储结构,将所为任务以所需虚拟机数量的大小作为排序依据,以从大到小的顺序存入队列。
优选的,步骤S3中,估算该任务若以该节点作为初始节点可能产生最终的通讯消耗的具体方法为:
将该任务的虚拟机需求除以所有节点的平均可用虚拟机数量,从而估出该任务还需要多分配少个节点,并选取距离该节点最近的相应数量的节点,最终将该分配方案的通讯消耗作为分配估值。
优选的,步骤S6中,计算对应的直径虚拟机比的方法如下:
计算若将该节点分配给该任务会造成的通讯消耗增量,并将该增量除以该节点可以提供的虚拟机数量,便得到了该任务对应节点的直径虚拟机比。
优选的,步骤S6与S3中,通讯消耗的计算法方式:是通过计算任务所分配到的节点集中任意两个点距离的最大值也就是直径来表示通讯消耗,其中距离的大小量化为路由器的跳数。
本发明与现有技术相比,具有如下优点和有益效果:
1)本发明采用了回归预测技术对任务的资源需求进行准确的预测,为云系统的稳定性提供了强有力的保障。
2)本发明采用了虚拟机数量、任务所需处理的数据量、任务的通讯消耗、任务类型、任务的提交者作为建立回归方程的参数,有效地提高了模型预测准确度,减小了误差偏离。
3)本发明再分配之前预先对任务进行了排序处理,使得大任务在一定程度上占领较优资源,减小了计算耗时。
4)本发明通过平均值估算的方法估算了可能产生的分配消耗,从而确定了任务的初始节点,提高了之后分配的效率。
5)本发明采用了聚类技术来进行虚拟机分配,这保证了每一次的分配对于每个任务都是公平的,保证了系统的强稳定性。
6)本发明提出了直径虚拟机比作为优化参数,大大降低了系统的通讯消耗。
7)本发明提出了使用两个节点之间的距离也就是最短路由跳数来量化通讯消耗,见笑了发明的计算量。
附图说明
图1是本发明方法的流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
本实施例为了设计出一个全局最优(即所有任务的通讯消耗和最小)并且具有高公平性的分配方法,所有的任务应同时进行分配,但如何设计一个高性能的分配方法?本发明决定借用聚类技术的思想来进行分配,如果采用聚类的方法如何为每个任务分配初始节点以及采用什么策略进行聚类将是需要克服的技术瓶颈。
本方法采用聚类的思想进行设计,包含两大部分,第一部分为每个待分配任务产生一个初始节点,再通过第二部分将合适的节点分配给各个任务直到所有任务满足其任务需求:
1)给每个任务分配一个合适的初始点:对于每一个提交到云系统的任务,系统首先估算它们所需要的虚拟机数量,并参照其维护的系统资源表,估算每一个节点若为该任务的初始节点,该任务的通讯消耗。并将估值最小的节点作为该节点的初始节点直到所有的任务都具有一个初始节点,这样就可以保证每个任务都有一个可以接受的相对公平的初始节点。
2)将适当的节点分配给对应的任务保证每个点的直径虚拟机比最低:对于尚未达到其虚拟机需求的任务,系统每次将一个可用节点分配给一个任务,直到所有任务被分配到的节点集所具有的虚拟机数量满足该任务的虚拟机需求为止。具体做法如下:系统通过遍历每个任务计算系统中可用节点与该任务的直径虚拟机比(将该节点分配到该点后任务直径增量与该节点可为任务提供的虚拟机数量的比值)。将比值最小的节点分配给对应的任务。这样就可以保证每分配一个虚拟机所造成的直径增量最小从而保证系统通讯消耗和最小。
如图1所示,面向广域分布云系统公平的多任务虚拟机分配方法具体的步骤如下:
S1:计算任务提交到云系统,系统估算它们的虚拟机需求;
S2:按照估算好的虚拟机需求将所有任务降序排序并加入队列;
S3:选择队列中估值大的任务,对每个节点估算该任务若以该节点作为初始节点可能产生最终的通讯消耗;
S4:将该任务分配给估值最小的节点,并将该任务移出队列;
S5:判断是否所有任务都分配了一个初始节点,是则执行步骤S6否则返回步骤S3;
S6:对于每一个未满足虚拟机需求的任务遍历系统中可用节点,计算对应的直径虚拟机比;
S7:将比值最小的任务分配到对应的节点上;
S8:判断是否完成所有任务的分配,是则结束分配否则返回执行步骤S7。
步骤S1中,云系统估算它们的虚拟机需求的具体方法为:通过系统所收集的过往任务的历史数据建立多元回归预测模型,建立以任务所处理的数据量为自变量,使用的虚拟机数量为因变量的回归方程,建模中使用到的参数有使用的虚拟机数量、任务所需处理的数据量、任务的通讯消耗、任务类型、任务的提交者。最终通过建立的模型便可预测出对应任务所需虚拟机数量。
步骤S2中,将所有任务降序排序并加入队列的具体方法为:建立队列存储结构,将所为任务以所需虚拟机数量的大小作为排序依据,以从大到小的顺序存入队列。
步骤S3中,估算该任务若以该节点作为初始节点可能产生最终的通讯消耗的具体方法为:
将该任务的虚拟机需求除以所有节点的平均可用虚拟机数量,从而估出该任务还需要多分配少个节点,并选取距离该节点最近的相应数量的节点,最终将该分配方案的通讯消耗作为分配估值。
步骤S6中,计算对应的直径虚拟机比的方法如下:
计算若将该节点分配给该任务会造成的通讯消耗增量,并将该增量除以该节点可以提供的虚拟机数量,便得到了该任务对应节点的直径虚拟机比。
步骤S6与S3中,通讯消耗的计算法方式:是通过计算任务所分配到的节点集中任意两个点距离的最大值也就是直径来表示通讯消耗,其中距离的大小量化为路由器的跳数。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (6)

1.面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,包括下述步骤:
S1:计算任务提交到云系统,云系统估算它们的虚拟机需求;
S2:按照估算好的虚拟机需求将所有任务降序排序并加入队列;
S3:选择队列中估值大的任务,对每个节点估算该任务若以该节点作为初始节点可能产生最终的通讯消耗;
S4:将该任务分配给估值最小的节点,并将该任务移出队列;
S5:判断是否所有任务都分配了一个初始节点,是则执行步骤S6否则返回步骤S3;
S6:对于每一个未满足虚拟机需求的任务遍历系统中可用节点,计算对应的直径虚拟机比;
S7:将比值最小的任务分配到对应的节点上;
S8:判断是否完成所有任务的分配,是则结束分配否则返回执行步骤S7。
2.根据权利要求1所述的面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,步骤S1中,云系统估算它们的虚拟机需求的具体方法为:通过系统所收集的过往任务的历史数据建立多元回归预测模型,建立以任务所处理的数据量为自变量,使用的虚拟机数量为因变量的回归方程,建模中使用到的参数有使用的虚拟机数量、任务所需处理的数据量、任务的通讯消耗、任务类型、任务的提交者,最终通过建立的模型便可预测出对应任务所需虚拟机数量。
3.根据权利要求1所述的面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,步骤S2中,将所有任务降序排序并加入队列的具体方法为:建立队列存储结构,将所为任务以所需虚拟机数量的大小作为排序依据,以从大到小的顺序存入队列。
4.根据权利要求1所述的面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,步骤S3中,估算该任务若以该节点作为初始节点可能产生最终的通讯消耗的具体方法为:
将该任务的虚拟机需求除以所有节点的平均可用虚拟机数量,从而估出该任务还需要多分配少个节点,并选取距离该节点最近的相应数量的节点,最终将该分配方案的通讯消耗作为分配估值。
5.根据权利要求1所述的面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,步骤S6中,计算对应的直径虚拟机比的方法如下:
计算若将该节点分配给该任务会造成的通讯消耗增量,并将该增量除以该节点可以提供的虚拟机数量,便得到了该任务对应节点的直径虚拟机比。
6.根据权利要求1所述的面向广域分布云系统公平的多任务虚拟机分配方法,其特征在于,步骤S6与S3中,通讯消耗的计算法方式:是通过计算任务所分配到的节点集中任意两个点距离的最大值也就是直径来表示通讯消耗,其中距离的大小量化为路由器的跳数。
CN201510466526.3A 2015-07-30 2015-07-30 面向广域分布云系统公平的多任务虚拟机分配方法 Active CN105138391B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510466526.3A CN105138391B (zh) 2015-07-30 2015-07-30 面向广域分布云系统公平的多任务虚拟机分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510466526.3A CN105138391B (zh) 2015-07-30 2015-07-30 面向广域分布云系统公平的多任务虚拟机分配方法

Publications (2)

Publication Number Publication Date
CN105138391A true CN105138391A (zh) 2015-12-09
CN105138391B CN105138391B (zh) 2018-07-31

Family

ID=54723748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510466526.3A Active CN105138391B (zh) 2015-07-30 2015-07-30 面向广域分布云系统公平的多任务虚拟机分配方法

Country Status (1)

Country Link
CN (1) CN105138391B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108055292A (zh) * 2017-10-30 2018-05-18 中国人民解放军空军工程大学 一种虚拟机向物理机映射的优化方法
CN111552569A (zh) * 2020-04-28 2020-08-18 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质
US11720403B2 (en) * 2019-04-24 2023-08-08 Google Llc System for commitment-aware workload scheduling based on anticipated resource consumption levels

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722413A (zh) * 2012-05-16 2012-10-10 上海兆民云计算科技有限公司 一种桌面云集群使用的分布式资源调度方法
US20120324445A1 (en) * 2011-06-17 2012-12-20 International Business Machines Corporation Identification of over-constrained virtual machines
CN103067524A (zh) * 2013-01-18 2013-04-24 浪潮电子信息产业股份有限公司 一种基于云计算环境的蚁群优化计算资源分配方法
US20130232486A1 (en) * 2012-03-01 2013-09-05 International Business Machines Corporation Cloud of Virtual Clouds for Increasing Isolation Among Execution Domains
CN104063261A (zh) * 2014-04-01 2014-09-24 杭州电子科技大学 一种基于云环境下的多目标优化虚拟机放置方法
CN104793990A (zh) * 2015-04-21 2015-07-22 中国海洋大学 一种多时序任务调度方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120324445A1 (en) * 2011-06-17 2012-12-20 International Business Machines Corporation Identification of over-constrained virtual machines
US20130232486A1 (en) * 2012-03-01 2013-09-05 International Business Machines Corporation Cloud of Virtual Clouds for Increasing Isolation Among Execution Domains
CN102722413A (zh) * 2012-05-16 2012-10-10 上海兆民云计算科技有限公司 一种桌面云集群使用的分布式资源调度方法
CN103067524A (zh) * 2013-01-18 2013-04-24 浪潮电子信息产业股份有限公司 一种基于云计算环境的蚁群优化计算资源分配方法
CN104063261A (zh) * 2014-04-01 2014-09-24 杭州电子科技大学 一种基于云环境下的多目标优化虚拟机放置方法
CN104793990A (zh) * 2015-04-21 2015-07-22 中国海洋大学 一种多时序任务调度方法和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108055292A (zh) * 2017-10-30 2018-05-18 中国人民解放军空军工程大学 一种虚拟机向物理机映射的优化方法
CN108055292B (zh) * 2017-10-30 2020-09-04 中国人民解放军空军工程大学 一种虚拟机向物理机映射的优化方法
US11720403B2 (en) * 2019-04-24 2023-08-08 Google Llc System for commitment-aware workload scheduling based on anticipated resource consumption levels
CN111552569A (zh) * 2020-04-28 2020-08-18 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质
CN111552569B (zh) * 2020-04-28 2023-10-20 咪咕文化科技有限公司 系统资源调度方法、装置及存储介质

Also Published As

Publication number Publication date
CN105138391B (zh) 2018-07-31

Similar Documents

Publication Publication Date Title
CN109491790B (zh) 基于容器的工业物联网边缘计算资源分配方法及系统
Ramezani et al. Task scheduling optimization in cloud computing applying multi-objective particle swarm optimization
WO2021147353A1 (zh) 订单调度
CN102724103B (zh) 代理服务器、分层次网络系统及分布式工作负载管理方法
CN103401939A (zh) 一种采用混合调度策略的负载均衡方法
CN104283946A (zh) 一种单物理机下多虚拟机的资源自适应调整系统及方法
CN104536804A (zh) 面向关联任务请求的虚拟资源调度系统及调度和分配方法
CN104038540A (zh) 一种应用代理服务器自动选择方法及系统
CN103713956A (zh) 应用于云计算虚拟化管理环境中的智能加权负载均衡方法
CN103731372A (zh) 一种混合云环境下服务提供者的资源供应方法
CN104268018A (zh) 一种Hadoop集群中的作业调度方法和作业调度器
CN104580447A (zh) 一种基于访问热度的时空数据服务调度方法
CN104104621A (zh) 一种基于非线性降维的虚拟网络资源动态自适应调节方法
Wen et al. Load balancing job assignment for cluster-based cloud computing
CN105138391A (zh) 面向广域分布云系统公平的多任务虚拟机分配方法
CN111309472A (zh) 一种基于虚拟机预部署的在线虚拟资源分配方法
CN114625500A (zh) 云环境下拓扑感知的微服务应用调度的方法及应用
CN103825946A (zh) 一种基于网络感知的虚拟机放置方法
Kaur et al. Load balancing using improved genetic algorithm (iga) in cloud computing
CN105430049A (zh) 一种基于dcn的虚拟流媒体集群协同迁移方法
CN106407007A (zh) 面向弹性分析流程的云资源配置优化方法
CN107070965A (zh) 一种虚拟化容器资源下的多工作流资源供给方法
CN105335376B (zh) 一种流处理方法、装置及系统
CN103617083A (zh) 存储调度方法和系统、作业调度方法和系统及管理节点
Devagnanam et al. Design and development of exponential lion algorithm for optimal allocation of cluster resources in cloud

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant