CN106951330A - 一种云服务中心服务效用最大化的虚拟机分配方法 - Google Patents

一种云服务中心服务效用最大化的虚拟机分配方法 Download PDF

Info

Publication number
CN106951330A
CN106951330A CN201710227556.8A CN201710227556A CN106951330A CN 106951330 A CN106951330 A CN 106951330A CN 201710227556 A CN201710227556 A CN 201710227556A CN 106951330 A CN106951330 A CN 106951330A
Authority
CN
China
Prior art keywords
service
task
virtual machine
cloud
center
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710227556.8A
Other languages
English (en)
Inventor
张志锋
曹洁
孙玉胜
张建伟
邓璐娟
郑倩
马军霞
桑永宣
赵晓君
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou University of Light Industry
Original Assignee
Zhengzhou University of Light Industry
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 Zhengzhou University of Light Industry filed Critical Zhengzhou University of Light Industry
Priority to CN201710227556.8A priority Critical patent/CN106951330A/zh
Publication of CN106951330A publication Critical patent/CN106951330A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

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

一种云服务中心服务效用最大化的虚拟机分配方法,涉及云计算技术领域,云服务中心由随机任务模型、云服务中心模型和云资源分配模型构成,随机任务模型向云服务中心发送服务请求,云服务中心根据随机任务模型发送的请求由云资源分配模型为随机任务模型进行服务;本发明实用性强,使用都非常的方便,针对云服务中心提供多种云服务时,不同云服务请求强度的不同、用户服务质量要求的不同,提出最大化服务中心总服务效用的虚拟机分配方案,促使云资源在执行不同云服务的子服务中心之间的动态资源分配,最后,以最大化整个服务中心的服务效用为目标,给出基于整数编码的最优分配方案求解的单亲遗传算法SOPGA,提高资源利用率和服务质量都具有实际意义。

Description

一种云服务中心服务效用最大化的虚拟机分配方法
【技术领域】
本发明涉及云计算技术领域,尤其是涉及一种云服务中心服务效用最大化的虚拟机分配方法。
【背景技术】
公知的,最新的成本分析表明服务器成本在云服务中心总成本中占据支配地位,提高服务器资源利用率、最大化服务效用的资源分配已成为云服务提供者降低运营成本、获取最大利润的关键,针对云服务中心提供多种云服务时,不同类型云服务请求的到达速率可能不同、不同用户对服务质量要求可能不同,提出云服务中心服务效用最大化的虚拟机分配方法,给出和云服务质量高低相关的服务损失函数和服务收益函数,促使云资源在执行不同云服务的子服务中心之间进行动态资源分配,最后,以最大化整个服务中心的服务效用为目标,给出基于整数编码的最优分配方案求解的单亲遗传算法SOPGA,模拟实验表明所提虚拟机分配算法能够有效提高云服务中心的服务效用,对提高资源利用率和服务质量都具有实际意义。
云计算已成为计算资源和计算服务整合的有效方式,云计算能够提供最具成本效益的计算资源和计算服务,云计算通过使用按次计费,把信息技术转变成普通商品,然而,云计算资源并不是免费的,云服务提供者采取恰当的资源供应策略至关重要,云计算服务环境可看做是由三层组成:底层是虚拟机供应商;中间层是云服务提供商;最上层云服务消费者,虚拟机供应商拥有大量可供租用的虚拟机,服务提供商从虚拟机供应商那里租用一些虚拟机,建立多虚拟机服务系统,向云服务消费者提供某种云服务。
一个云服务消费者向服务提供商提交服务请求,从服务提供商收到期望的处理结果后,按服务质量协定向服务提供商支付一定的费用,实际上,一个服务提供商通常构建多个虚拟机系统,同时提供多种服务。
在云环境下,服务请求用户对申请使用的资源的关注主要包括资源的可用性、响应时间、排队长度以及可靠性等,在云系统中,用户与服务提供者的服务交易通常是按服务级协定(service level agreement,SLA)的约定进行的,服务级协定约定了服务提供者和使用者的义务,以及对服务质量(QoS)性能指标的要求,QoS的性能指标主要包括响应时间、任务等待服务的概率、系统中的平均任务数等,服务提供者和使用者之间任何一方违反了SLA契约,都需要根据相应的服务条款作出赔偿,因此,对云服务提供者来说,一种合理高效的资源分配策略应能节省运营成本同时满足SLA的约定。
然而,要想获得最大的服务效用,云服务提供者就必须合理解决资源供应不足和资源供应过量的问题,资源供应不足虽然能维持较高的资源利用率、节省资源供应成本,但这可能使系统在峰值负载下服务性能低下,导致用户任务等待时间过长,下次不再选用该云服务,可能会影响到其朋友将来是否选取该云服务,甚至用户立即放弃使用该云服务,这将给云服务效用带来损失,相反,过量的资源供应虽能满足峰值负载的服务质量要求,能给用户提供满意的服务,进而吸引更多用户使用该云服务,从而进一步增加云服务的效用,但这会引起服务成本的增加,在负载较小时带来资源浪费,因此,如何恰当地进行资源供应以获取最大的服务效用是云服务系统发展中最富挑战的问题之一。
随着云计算的到来,特别是基础设施即服务商业模型的到来,虚拟机分配引起许多研究团体的格外关注,虚拟机的分配,尤其向负载动态变化的服务中心分配虚拟机,已成为在这些基础设施中的关键操作,虽然虚拟机监控器提供了一些机制帮客户和服务提供者决定如何资源共享、如何平衡资源分配,但在实际操作过程中并不容易。
近几年,开展了很多提高云服务中心服务效用的虚拟机分配机制的研究,Cao等研究了云环境下利润最大化的最优服务器数量配置问题,其将多服务器系统看作M/M/m排队模型,提出的利润最大化的云服务定价模型考虑了服务质量、服务级协定、低服务质量惩罚、租用成本等因素。Feng等基于SLA,提出最大化服务提供者服务收益的动态资源分配策略,其用排队论形式化地描述资源分配问题。José等提出距离相关的非线性效用递减的虚拟机调度策略。许力等将云计算中的虚拟资源分配问题建模为多目标优化模型,针对不同特征的虚拟主机和服务器需求生成虚拟资源分配方案。文雨等提出一种面向应用服务级目标的虚拟化资源管理方法,通过动态调整虚拟机资源分配来实现每个应用的服务目标,通过仲裁不同应用的资源分配请求来控制虚拟机在非虚拟化资源上的竞争干扰。师雪霖等提出了云效用最大化(Cloud Utility Maximization,CUM)资源分配模型,以达到效用最大为调度目标,通过求解CUM优化问题得到最优的虚拟机和物理机映射关系。唐卓等针对用户任务到达时间和任务类型的随机性,基于线性规划理论提出了云环境中面向用户效用的任务调度优化模型。
上述文献从不同方面研究了提高云服务效用的方法,但这些文献都没有考虑服务质量的高低如何影响云服务中心的服务效用、服务效用与服务完成质量之间的关系如何、以及云服务中心服务效用最大化的最优虚拟机数量如何求解,基于这些问题,本文分析了任务在云系统中逗留单位时间致使云系统遭受的服务损失,分析了服务中心对任务的响应时间的长短如何影响服务效用,并给出了云服务中心服务效用最大化所需处理机数量的计算方法。
【发明内容】
为了克服背景技术中的不足,本发明公开了一种云服务中心服务效用最大化的虚拟机分配方法,本发明做出了任务在云系统中逗留单位时间致使云系统遭受的服务损失,以及服务中心对任务的响应时间的长短对服务效用的影响,并给出了云服务中心服务效用最大化所需处理机数量的计算方法。
为了实现所述发明目的,本发明采用如下技术方案:
一种云服务中心服务效用最大化的虚拟机分配方法,包括云服务中心、随机任务模型、云服务中心模型和云资源分配模型,云服务中心由随机任务模型、云服务中心模型和云资源分配模型构成,随机任务模型向云服务中心发送服务请求,云服务中心根据随机任务模型发送的请求由云资源分配模型为随机任务模型进行服务。
所述随机任务模型用一个三元组(T,Λ,C)来表示,其中,T={ti|1≤i≤m}表示任务类型集合,ti表示第i类任务,m表示任务类型的数目;Λ={λi|1≤i≤m}表示任务的平均达到率集合,λi表示ti类任务单位时间内的平均到达数量;C={ci|1≤i≤m}表示不同类型任务期望响应时间的集合,ci表示ti类型任务的期望响应时间,因此,第i类计算任务可表示为(tii,ci),其中,ti∈T,λi∈Λ,ci∈C。对于到达云系统的随机任务,其随机分布和平均到达率可通过分析云系统的监测数据得到。
所述云服务中心模型用三元组(P,S,E)表示,其中,P={Pi|1≤i≤m}表示云服务中心中虚拟机组的集合,m表示虚拟机组的个数,一个虚拟机组相当于一个子服务中心;Pi={vmij|1≤j≤ni}表示执行第i类型任务的虚拟机的集合,ni表示执行第i类型任务的虚拟机的个数;S={μi|1≤i≤m}表示表示虚拟机平均服务率集合,其中,μi表示执行第i类型任务的虚拟机的服务速率,一个组内的虚拟机具有相同的服务速率;E={ei|1≤i≤m}表示云计算系统中虚拟机单位时间租用价格的集合,其中ei表示执行第i类型任务的虚拟机的单位时间租用价格。
所述云资源分配模型为云服务中心根据用户的任务处理需求,通过向IaaS提供商、PaaS提供商租借自己所需的虚拟机来组建SaaS,向云用户提供任务处理服务,由于不同云资源提供商提供的资源类型、价格和性能等各不相同,因而云计算服务中心可根据任务的到达情况租用适当数目的虚拟机机来处理用户的任务,以最大化自己的服务效用,向云服务中心请求服务的服务请求都能被安排到一个合适的虚拟机上进行处理,直到服务请求处理完才离开云系统,不同类型的服务请求被安排到不同的云服务中心的子服务中心的虚拟机上进行处理,云服务中心的任务处理过程可描述为:不同类型的任务以不同的速率到达云计算服务中心队列,全局任务调度器根据任务类型的不同,将任务调度到相应类型的云服务中心的子服务中心任务队列,然后由云服务中心的子服务中心任务调度器将任务调度相应的虚拟机上进行处理,每个任务到达云服务中心的子服务中心任务队列的间隔相互独立,且服从同一参数的负指数分布;虚拟机处理任务的服务时间相互独立,且服从同一参数的负指数分布;任务到达的间隔时间与虚拟机服务的时间相互独立,每种类型任务的处理过程,相当于一个M/M/n型排队模型。
所述用户提交到服务中心任务队列的不同类型的任务由全局调度器分别分派到相应任务类型的子服务中心任务队列中,然后由子任务调度器将任务调度虚拟机上进行处理,不同类型任务ti的执行过程可看作是M/M/n排队系统,即相当于一个多服务窗排队模型,对ti类型任务,设执行该类型任务的虚拟机有ni个,各虚拟机的服务能力相同,每个虚拟机每次只处理一个任务,虚拟机对ti类型任务的服务时间服从参数为μi的负指数分布;ti类型任务的到达率为λi,每个任务所需服务时间独立;服务ti类型任务的整个服务系统的平均服务率应为niμi,服务强度为时,服务ti类型任务的服务系统存在平稳分布,记当云服务中心的子服务中心任务队列容量为无限,服务ti类型任务的虚拟机空闲的概率为:
由K氏代数方程,可求出得出服务ti类型任务的子服务中心中有k个任务的概率:
服务ti类型任务的子服务中心中排队等待服务的平均任务数为:
服务ti类型任务的子服务中心中任务数的均值为:
服务ti类型任务的子服务中心中任务的平均排队时间为:
服务ti类型任务的子服务中心对任务的平均响应时间为:
所述云服务中心还包括服务损失,服务损失通过问卷调查的方式得到可能减少的用户数,从而算出等候时间与损失的关系,云服务损失的计算如下:对ti类型任务,记ei为处理机pi的单位时间租用价格,ti类型任务在云服务中心中逗留单位时间致使云服务中心遭受的服务损失sli定义为:其中ai是一个表示任务价值大小的常数,任务的价值越大ai值越大,Wi为ti类型任务的最大容忍响应时间,为服务中心对ti类型任务的平均响应时间,完成任务的平均响应时间越长,云服务中心遭受的损失越大;在平均响应时间相同的情况下,最大容忍响应时间越小,云服务中心遭受的损失越大;在平均响应时间和最大容忍响应时间相同的情况下,ai值越大,云服务中心遭受的损失越大,在最大容忍响应时间取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心遭受的损失越来越大,增速越来越快;最大容忍响应时间越小,随着平均响应时间的增加,服务中心遭受损失的增速越来越大。
所述云服务中心还包括服务收益,云服务中心完成每个任务所获得的服务收益sri与完成任务的响应时间有关,响应时间越小,收益值越大,云服务中心完成ti类型任务所获得的服务收益sri定义为:
其中bi是一个表示任务价值大小的常数,任务的价值越大,bi值越大,Wi为ti类型任务所能容忍的最大响应时间,为服务中心对ti类型任务的平均响应时间,完成任务的平均响应时间越短,云服务中心所获得的服务收益越大;在平均响应时间相同的情况下,最大容忍响应时间越大,云服务中心所获得的服务收益越大;在平均响应时间和最大容忍响应时间相同的情况下,bi值越大,云服务中心所获得的服务收益越大,在最大容忍响应时间W取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心所获得的服务收益越来越小,最大容忍响应时间越大服务收益减少地越快。
所述云服务中心还包括服务效用,服务效用为云服务中心用ni个虚拟机处理到达率为λi的ti类型任务,单位时间所获得的服务效用f(λi,nii)定义为:
其中,ni是离散的,且λi/(niμi)<1,为云服务中心中ti类型任务数量的均值(包括正被服务和排队等候的任务数均值),可采用边际分析法求出最优的ni,即使所求的必须同时满足
由上式即可求出最优的即当处理数为时服务中心的服务效用最大。
所述服务效用最大化的计算为:对ti类型任务,假设用户所能容忍的最长平均等待时间为所能容忍自己所在队列的最长平均等待队长为使服务效用f(λi,nii)取最大值的ni的求解可用下面式子表示:
式子一:
假定云服务中心总的虚拟机个数为n,将这些虚拟机分配给m类型的任务,使整个云服务中心的服务效用最大的各类型虚拟机数ni的求解可用如下式子表示:
式子二:
从上式可以看出为了最大化整个云服务中心的服务效用,需要将n个虚拟机在m类型任务之间做出恰当的划分,即通过动态调整租用的虚拟机数量、最大化云服务中心服务效用的实质是:实时监测不同类型任务的到达速率和服务质量要求,按服务效用最大化在子云服务中心之间增加或减少租用的虚拟机数;若在不同子云服务中心之间经过虚拟机数量的调整分配仍旧不能满足个别类型任务的服务质量要求时,按效用最大化租用新的虚拟机分配给这些子云服务中心,也就是说服务中心要不断监测不同类型任务的到达速率,为不同子云服务中心配置恰当数目的虚拟机,从而最大化整个云服务中心的服务效用;满足式子二的各子服务中心最优ni的求解是NP问题,通过启发式算法来求解为每个子服务中心分配的虚拟机数ni,求解各子服务中心最优虚拟机数ni的问题表示为:对于给定的各类型任务的到达率λi(从过去时间窗的到达率数据预测得到),各类型任务的服务损失sli、服务收益sri,裁决各子服务中心应分配虚拟机数量的分配向量n1,n2,…,nm使得各子服务中心服务效用f(λi,nii)总的服务效用F(λ,m,n)最大,对每种分配方案计算总的服务效用F(λ,m,n),从中选出有最大服务效用的虚拟机分配方案,n个虚拟机分配到m个服务中心的不同分配方案数s等于整数n的有序m分拆的个数这种穷举搜索的方法仅在n和m较小时可行的,对给定的λi求解服务效用最大所需的虚拟机数的时间复杂性为O(1),在线穷举搜索寻找最优向量(n1,n2,…,nm)是非常费时的,用快速的搜索算法来取代,直觉上当为某一服务中心分配的虚拟机数达到一定数量时,再增加虚拟机数量时,对任务的平均响应时间减少很小时,所获得的服务效用并不会增加太多,由于虚拟机租用成本的存在,该服务中心的服务效用可能减少,与此相反,当为某一服务中心分配的虚拟机数减小到一定数量时,再减少虚拟机数量时,虽能减少虚拟机的租用费用,虚拟机减少可能造成服务中心对任务的平均响应时间迅速增加,导致服务效用急剧减少,进而导致服务效用减少,基于上述分析,给出基于整数编码的求解最优分配方案的单亲遗传算法,该方法命名为SOPGA,即:partheno-genetic algorithm to solve the optimal allocation scheme based on integercoding,以加快搜索的速度,对每个服务中心sci,根据它的任务到达率,求出服务效用最大所需的虚拟机数及该虚拟机数数值附近的其它使服务效用较高的虚拟机数共s个数值{xi(ki)|ki=1,2,…,s},作为服务中心虚拟机数ni的可能取值,从而将虚拟机最优分配问题转化为从有限个方案中寻找最优方案的组合优化问题,SOPGA的求解过程如下:
第一步,分配方案的染色体编码,由于每个子服务中心虚拟机数的取值只有s个,即ni∈{xi(ki)|ki=1,2,…,s}。因此,可在xi(ki)与整数ki∈{1,2,…,s}之间建立一一对应关系:
式子三:
ni=xi(ki),i=1,2,…,m
将分配给m个服务中心sc1,sc2,..,scm虚拟机数的一组取值作为分配方案的染色体编码,通过这样的编码,问题的解空间共有sm个编码串;
第二步,父代群体的初始化,构造初始父代群体时,初始父代个体应尽可能均匀分布于解空间,以保证遗传算法的搜索效率,且每个父代个体应满足式x1(k1)+x2(k2)+…+xm(km)≤n的总量约束条件,设群体规模为w,采用随机方法产生初始父代群体{y(i,j)|i=1,2,…,w;j=1,2,…,m},其中,i为父代个体标号,j为服务中心标号,首先在[0,1]区间上生成m个均匀随机数{u(i,j)|j=1,2,…,m},令y(i,j)=INT[u(i,j)×s+1],若不能满足总量约束条件,则重新生成随机数,直到条件满足为止,这样就得到第i个父代个体,同理可得其它w-1个初始父代个体,INT[]为取整函数;
第三步,父代群体的适应度评价,把父代个体代入式子三得到每个服务中心分配的虚拟机数,再由F(λ,m,n)得到该分配方案对应的服务效用值F(i),并将其作为适应度函数值,即服务效用F(i)值越大,表示该个体的适应度值越高,i=1,2,…,w;
第四步,换位变异,正比于父代个体的服务效用值,选取一个父代个体进行换位变异。所谓换位变异就是在父代个体的1~m基因位上随机选取不同的两个基因位,并交换这两个基因位的值,这样可得到第1个子代群体{c1(i,j)|i=1,2,…,w;j=1,2,…,m}。换位变异的物理意义是交换任意两服务中心的虚拟机数量;
第五步,随机变异,对任意父代个体,若它的适应度函数值F(i)较小,则选择概率sp越小,则对该个体进行变异的概率mp应越大。随机变异操作就是用第(2)步随机生成个体的方法产生一个新个体,并以pm=1-sp的概率代替父代个体,从而得到第2个子代群体{c2(i,j)|i=1,2,…,w;j=1,2,…,m}。随机变异的物理意义是随机产生一个虚拟机分配方案,并以某概率替换一个旧的虚拟机分配方案;
第六步,倒位变异,在父代个体c(i,j)的1~m基因位上随机选取不同的两个基因位g1和g2,设g1<g2,然后对g1~g2基因位上的值反序排列,得到第3个子代群体{c3(i,j)|i=1,2,…,w;j=1,2,…,m};
第七步,演化,将由第四步到第六步得到的三个子代群体,按其适应度函数值从大到小进行统一排序,取适应度函数值最大的m个子代个体作为新的父代群体,转入第三步,进入下一轮次的演化过程,如此反复演化,直至最优个体对应的服务效用值大于某一设定值或算法运行达到预定演化代数,结束整个算法的运行,并把当前群体中最优个体所对应的虚拟机分配方案作为SOPGA的结果。
由于采用了上述技术方案,本发明具有如下有益效果:
本发明所述的一种云服务中心服务效用最大化的虚拟机分配方法,包括,通过的目的;本发明实用性强,使用都非常的方便,针对云服务中心提供多种云服务时,不同云服务请求强度的不同、用户服务质量要求的不同,提出最大化服务中心总服务效用的虚拟机分配方案,给出和云服务质量高低相关的服务损失函数和服务收益函数,促使云资源在执行不同云服务的子服务中心之间的动态资源分配,最后,以最大化整个服务中心的服务效用为目标,给出基于整数编码的最优分配方案求解的单亲遗传算法SOPGA,模拟实验表明所提虚拟机分配算法能够有效提高云服务中心的服务效用,对提高资源利用率和服务质量都具有实际意义。
【附图说明】
图1为本发明的云服务中心的任务排队调度模型;
图2为本发明的云服务中心遭受损失的变化情况示意图;
图3为本发明的云服务中心获得的服务收益变化情况示意图;
图4为本发明的子服务中心平均响应时间与虚拟机数量变化情况示意图;
图5为本发明的子服务中心单位时间的服务效用与虚拟机数量变化情况示意图;
图6为本发明的子服务中心的平均响应时间与λ的值变化情况示意图;
图7为本发明的子服务中心的单位时间的服务效用与λ的值变化情况示意图;
图8为本发明的子服务中心在SOPGA和服务效用最大(Optimal)两种虚拟机分配方案下服务中心总的服务效用变化情况示意图;
【具体实施方式】
通过下面的实施例可以详细的解释本发明,公开本发明的目的旨在保护本发明范围内的一切技术改进。
结合附图1~8所述的一种云服务中心服务效用最大化的虚拟机分配方法,包括云服务中心、随机任务模型、云服务中心模型和云资源分配模型,云服务中心由随机任务模型、云服务中心模型和云资源分配模型构成,随机任务模型向云服务中心发送服务请求,云服务中心根据随机任务模型发送的请求由云资源分配模型为随机任务模型进行服务。
由于云用户可以随时随地向云计算系统提交服务请求,导致任务达到云计算系统是随机的,任务到达云计算系统的时间间隔可能服从负指数分布、Erlang分布等其它随机分布,云用户提交的任务类型可分为计算密集型、通信密集型、数据密集型和I/O密集型等,不同类型任务要处理的数据形式和问题规模一般不同,为了简化问题的讨论,本文假定同一类型任务的计算量相同,不同用户提交的任务之间是相互独立的。
云服务中心根据用户的任务处理需求,通过向IaaS提供商、PaaS提供商租借自己所需的虚拟机来组建SaaS,向云用户提供任务处理服务,由于不同云资源分配模块提供商提供的资源类型、价格和性能等各不相同,因而云计算服务中心可根据任务的到达情况租用适当数目的虚拟机机来处理用户的任务,以最大化自己的服务效用,我们假定向云服务中心请求服务的服务请求都能被安排到一个合适的虚拟机上进行处理,直到服务请求处理完才离开云系统,不同类型的服务请求被安排到不同子服务中心的虚拟机上进行处理。
云服务中心的任务处理过程可描述为:不同类型的任务以不同的速率到达云计算服务中心队列,全局任务调度器根据任务类型的不同,将任务调度到相应类型的子服务中心任务队列,然后由子服务中心任务调度器将任务调度相应的虚拟机上进行处理,结合附图1所示,为了便于研究,假定每个任务到达子服务中心任务队列的间隔相互独立,且服从同一参数的负指数分布;虚拟机处理任务的服务时间相互独立,且服从同一参数的负指数分布;任务到达的间隔时间与虚拟机服务的时间相互独立,每种类型任务的处理过程,相当于一个M/M/n型排队模型。
一般来说,提高虚拟机的处理速度或增加虚拟机数量均能提高云服务中心的服务效率,从而减少任务的等待时间以及任务没能得到及时处理而给云服务中心带来的经济损失,如用户提交的任务长时间得不到处理可能导致用户下次选择别处的云服务中心,但是,增加虚拟机数量可能导致云服务中心的运行成本的增加,那么,如何既使服务中心的服务费用不高,又使顾客等待而给云服务中心带来的损失最少,这是云服务中心首要考虑的问题。
云服务中心的成本可以通过所租用的虚拟机数以及虚拟机的租用价格计算出来,任务没能及时处理而带来的损失,可通过问卷调查的方式得到可能减少的用户数,从而算出等候时间与损失的关系。
定义3服务损失:对ti类型任务,记ei为处理机pi的单位时间租用价格,ti类型任务在云服务中心中逗留单位时间致使云服务中心遭受的服务损失sli定义为:其中ai是一个表示任务价值大小的常数,任务的价值越大ai值越大,Wi为ti类型任务的最大容忍响应时间,为服务中心对ti类型任务的平均响应时间。
从服务损失的定义式可以看出:完成任务的平均响应时间越长,云服务中心遭受的损失越大;在平均响应时间相同的情况下,最大容忍响应时间越小,云服务中心遭受的损失越大;在平均响应时间和最大容忍响应时间相同的情况下,ai值越大,云服务中心遭受的损失越大,在最大容忍响应时间取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心遭受的损失的变化情况如附图2所示,从图中可以看出随着平均响应时间的增加,云服务中心遭受的损失越来越大,增速越来越快;最大容忍响应时间越小,随着平均响应时间的增加,服务中心遭受损失的增速越来越大。
通常云服务中心完成每个任务所获得的服务收益sri与完成任务的响应时间有关,响应时间越小,收益值越大,则云服务中心完成ti类型任务所获得的服务收益sri定义为:
其中bi是一个表示任务价值大小的常数,任务的价值越大bi值越大,Wi为ti类型任务所能容忍的最大响应时间,为服务中心对ti类型任务的平均响应时间。
从服务收益的定义式可以看出:完成任务的平均响应时间越短,云服务中心所获得的服务收益越大;在平均响应时间相同的情况下,最大容忍响应时间越大,云服务中心所获得的服务收益越大;在平均响应时间和最大容忍响应时间相同的情况下,bi值越大,云服务中心所获得的服务收益越大,在最大容忍响应时间W取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心所获得的服务收益的变化情况如附图3所示,从图中可以看出随着平均响应时间的增加,云服务中心所获得的服务收益越来越小,最大容忍响应时间越大服务收益减少地越快。
云服务中心用ni个虚拟机处理到达率为λi的ti类型任务,单位时间所获得的服务效用f(λi,nii)义为:
其中,ni是离散的,且λi/(niμi)<1,为云服务中心中ti类型任务数量的均值(包括正被服务和排队等候的任务数均值),可采用边际分析法求出最优的ni,即使所求的必须同时满足
由上式即可求出最优的即当处理数为时服务中心的服务效用最大。
结合附图4和5所述的一种云服务中心服务效用最大化的虚拟机分配方法,一个子服务中心配置不同数量的虚拟机时,子服务中心服务效用情况。在每个虚拟机的服务速率为3个/单位时间,任务到达率分别为9个/单位时间、10个/单位时间和11个/单位时间,a=1,b=10,租用成本200,最坏响应时间10,为子服务中心配置不同数量的虚拟机时,随着为服务中心配置的虚拟机数量的增加,服务中心对任务的平均响应时间逐渐变小,但虚拟机数量达到7之后再配置更多的虚拟机,平均响应时间几乎没什么变化,从附图5可以看出:刚开始,λ越大,即负载越大,增加配置的虚拟机数量,服务效用值增加越快,为负载重的服务中心配置更多的虚拟机越重要,此外,对于不同的任务到达率,都有一个最优的虚拟机数量值,配置该数量的虚拟机服务中心服务效用有最大值,之后再分配更多的虚拟机带来的服务收益的增加小于虚拟机租用成本的增加,总的服务效用越来越小。
结合附图6和7所述的一种云服务中心服务效用最大化的虚拟机分配方法,一个子服务中心在相同的虚拟机配置下,不同任务到达率下服务中心的效用变化情况。当为一个子服务中心配置的虚拟机数量k=10,虚拟机服务速率分别为3个/单位时间、3.2个/单位时间和3.4个/单位时间时,a=1,b=10,租用成本200,最坏响应时间10,随着λ值的增大,平均响应时间逐渐增大,在λ=27之后,总服务能力最小的k=10、μ=3所对应的平均响应时间迅速增加,从附图7可以看出:对不同配置的服务中心,都对应一个最优任务达到率,将服务中心的任务接收率控制在该任务到达率时,服务中心的服务效用最大。
结合附图8所述的一种云服务中心服务效用最大化的虚拟机分配方法,由三个子云服务中心构成的服务中心,在SOPGA和服务效用最大(Optimal)两种虚拟机分配方案下服务中心总的服务效用变化情况如附图8所示,其中,虚拟机总数是30,虚拟机对类型1任务的处理速率是μ1=2个/单位时间,虚拟机对类型2任务的处理速率是μ2=3个/单位时间,虚拟机对类型3任务的处理速率是μ2=4个/单位时间;类型1任务的最坏响应时间20,类型2任务的最坏响应时间15,类型3任务的最坏响应时间15,类型1任务的到达率固定在λ1=20个/每单位时间,类型2任务的到达率固定在λ2=14个/每单位时间,类型3任务的到达率λ3从13变化到18个/单位时间,对三种类型的任务设定a=1,b=10,虚拟机租用成本200,随着λ2值的增大,服务中心总的服务效用逐渐增加;和Optimal服务效用最大的最优分配方案相比,SOPGA所求出的分配方案表现出较好的服务效用性能,基本上都比较接近Optimal的最优分配方案;只是在λ2的值大于等于17时,即服务中心总的负载较重时,SOPGA和最优分配方案相比,有较大的偏差,这是因为负载较重时,对染色体的基因进行变异时,变异后的子代个体较难满足x1(k1)+x2(k2)+…+xm(km)≤n的总量约束条件,即不易产生更优的新个体。
本发明针对云服务中心提供多种云服务时,不同云服务请求强度的不同、用户服务质量要求的不同,提出最大化服务中心总服务效用的虚拟机分配方案,给出和云服务质量高低相关的服务损失函数和服务收益函数,促使云资源在执行不同云服务的子服务中心之间的动态资源分配,最后,以最大化整个服务中心的服务效用为目标,给出基于整数编码的最优分配方案求解的单亲遗传算法SOPGA,模拟实验表明所提虚拟机分配算法能够有效提高云服务中心的服务效用,对提高资源利用率和服务质量都具有实际意义。
实施例1,实施本发明所述的一种云服务中心服务效用最大化的虚拟机分配方法,下面通过模拟实验来测试所提出的虚拟机按需物理资源分配方法的效果,我们用云仿真软件Cloudsim3.0来进行模拟实验,CloudSim3.0是基于java的离散事件模拟工具包,支持云计算的资源管理和调度模拟,CloudSim3.0提供了以下功能:第一,支持在一个物理计算节点上对大规模云计算基础设施和数据中心的建模与仿真;第二一个建模数据中心、服务代理、调度和分配策略的独立平台;第三,在一个数据中心节点内为服务生成和管理虚拟机,CloudSim3.0模拟程序运行在Intel奔腾双核E5800、3.2GHz、2GB DDR3、Windows XP专业版32位SP3操作系统的戴尔台式机上。
实施例1验证为一个子服务中心配置不同数量的虚拟机时,子服务中心服务效用情况。在每个虚拟机的服务速率为3个/单位时间,任务到达率分别为9个/单位时间、10个/单位时间和11个/单位时间,a=1,b=10,租用成本200,最坏响应时间10,为子服务中心配置不同数量的虚拟机时,随着为服务中心配置的虚拟机数量的增加,服务中心对任务的平均响应时间逐渐变小,但虚拟机数量达到7之后再配置更多的虚拟机,平均响应时间几乎没什么变化。从图5可以看出:刚开始,λ越大,即负载越大,增加配置的虚拟机数量,服务效用值增加越快,为负载重的服务中心配置更多的虚拟机越重要,此外,对于不同的任务到达率,都有一个最优的虚拟机数量值,配置该数量的虚拟机服务中心服务效用有最大值,之后再分配更多的虚拟机带来的服务收益的增加小于虚拟机租用成本的增加,总的服务效用越来越小。
实施例1验证一个子服务中心在相同的虚拟机配置下,不同任务到达率下服务中心的效用变化情况,当为一个子服务中心配置的虚拟机数量k=10,虚拟机服务速率μ分别为3个/单位时间、3.2个/单位时间和3.4个/单位时间时,a=1,b=10,租用成本200,最坏响应时间10,随着λ的增大,随着λ值的增大,平均响应时间逐渐增大,在λ=27之后,总服务能力最小的k=10、μ=3所对应的平均响应时间迅速增加,对不同配置的服务中心,都对应一个最优任务达到率,将服务中心的任务接收率控制在该任务到达率时,服务中心的服务效用最大。
实施例1验证由三个子云服务中心构成的服务中心,在SOPGA和服务效用最大(Optimal)两种虚拟机分配方案下服务中心总的服务效用变化情况,其中,虚拟机总数是30,虚拟机对类型1任务的处理速率是μ1=2个/单位时间,虚拟机对类型2任务的处理速率是μ2=3个/单位时间,虚拟机对类型3任务的处理速率是μ2=4个/单位时间;类型1任务的最坏响应时间20,类型2任务的最坏响应时间15,类型3任务的最坏响应时间15,类型1任务的到达率固定在λ1=20个/每单位时间,类型2任务的到达率固定在λ2=14个/每单位时间,类型3任务的到达率λ3从13变化到18个/单位时间,对三种类型的任务设定a=1,b=10,虚拟机租用成本200,随着λ2值的增大,服务中心总的服务效用逐渐增加;和Optimal服务效用最大的最优分配方案相比,SOPGA所求出的分配方案表现出较好的服务效用性能,基本上都比较接近Optimal的最优分配方案;只是在λ2的值大于等于17时,即服务中心总的负载较重时,SOPGA和最优分配方案相比,有较大的偏差,这是因为负载较重时,对染色体的基因进行变异时,变异后的子代个体较难满足x1(k1)+x2(k2)+…+xm(km)≤n的总量约束条件,即不易产生更优的新个体。
本发明未详述部分为现有技术,尽管结合优选实施方案具体展示和介绍了本发明,具体实现该技术方案方法和途径很多,以上所述仅是本发明的优选实施方式,但所属领域的技术人员应该明白,在不脱离所附权利要求书所限定的本发明的精神和范围内,在形式上和细节上可以对本发明做出各种变化,均为本发明的保护范围。

Claims (10)

1.一种云服务中心服务效用最大化的虚拟机分配方法,包括云服务中心、随机任务模型、云服务中心模型和云资源分配模型,其特征是:云服务中心由随机任务模型、云服务中心模型和云资源分配模型构成,随机任务模型向云服务中心发送服务请求,云服务中心根据随机任务模型发送的请求由云资源分配模型为随机任务模型进行服务。
2.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述随机任务模型为计算密集型、通信密集型和数据密集型和I/O密集型,计算密集型、通信密集型和数据密集型和I/O密集型之间是相互独立的。
3.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述随机任务模型用一个三元组(T,Λ,C)来表示,其中,T={ti|1≤i≤m}表示任务类型集合,ti表示第i类任务,m表示任务类型的数目;Λ={λi|1≤i≤m}表示任务的平均达到率集合,λi表示ti类任务单位时间内的平均到达数量;C={ci|1≤i≤m}表示不同类型任务期望响应时间的集合,ci表示ti类型任务的期望响应时间,因此,第i类计算任务可表示为(tii,ci),其中,ti∈T,λi∈Λ,ci∈C。对于到达云系统的随机任务,其随机分布和平均到达率可通过分析云系统的监测数据得到。
4.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述云服务中心模型用三元组(P,S,E)表示,其中,P={Pi|1≤i≤m}表示云服务中心中虚拟机组的集合,m表示虚拟机组的个数,一个虚拟机组相当于一个子服务中心;Pi={vmij|1≤j≤ni}表示执行第i类型任务的虚拟机的集合,ni表示执行第i类型任务的虚拟机的个数;S={μi|1≤i≤m}表示表示虚拟机平均服务率集合,其中,μi表示执行第i类型任务的虚拟机的服务速率,一个组内的虚拟机具有相同的服务速率;E={ei|1≤i≤m}表示云计算系统中虚拟机单位时间租用价格的集合,其中ei表示执行第i类型任务的虚拟机的单位时间租用价格。
5.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述云资源分配模型为云服务中心根据用户的任务处理需求,通过向IaaS提供商、PaaS提供商租借自己所需的虚拟机来组建SaaS,向云用户提供任务处理服务,由于不同云资源提供商提供的资源类型、价格和性能等各不相同,因而云计算服务中心可根据任务的到达情况租用适当数目的虚拟机机来处理用户的任务,以最大化自己的服务效用,向云服务中心请求服务的服务请求都能被安排到一个合适的虚拟机上进行处理,直到服务请求处理完才离开云系统,不同类型的服务请求被安排到不同的云服务中心的子服务中心的虚拟机上进行处理,云服务中心的任务处理过程可描述为:不同类型的任务以不同的速率到达云计算服务中心队列,全局任务调度器根据任务类型的不同,将任务调度到相应类型的云服务中心的子服务中心任务队列,然后由云服务中心的子服务中心任务调度器将任务调度相应的虚拟机上进行处理,每个任务到达云服务中心的子服务中心任务队列的间隔相互独立,且服从同一参数的负指数分布;虚拟机处理任务的服务时间相互独立,且服从同一参数的负指数分布;任务到达的间隔时间与虚拟机服务的时间相互独立,每种类型任务的处理过程,相当于一个M/M/n型排队模型。
6.根据权利要求4所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述用户提交到服务中心任务队列的不同类型的任务由全局调度器分别分派到相应任务类型的子服务中心任务队列中,然后由子任务调度器将任务调度虚拟机上进行处理,不同类型任务ti的执行过程可看作是M/M/n排队系统,即相当于一个多服务窗排队模型,对ti类型任务,设执行该类型任务的虚拟机有ni个,各虚拟机的服务能力相同,每个虚拟机每次只处理一个任务,虚拟机对ti类型任务的服务时间服从参数为μi的负指数分布;ti类型任务的到达率为λi,每个任务所需服务时间独立;服务ti类型任务的整个服务系统的平均服务率应为niμi,服务强度为时,服务ti类型任务的服务系统存在平稳分布,记 当云服务中心的子服务中心任务队列容量为无限,服务ti类型任务的虚拟机空闲的概率为:
p 0 i = ( &Sigma; k = 0 n i - 1 ( &rho; 1 i ) k k ! + ( &rho; 1 i ) n i n i ! 1 1 - &rho; i ) - 1 ,
由K氏代数方程,可求出得出服务ti类型任务的子服务中心中有k个任务的概率:
p k i = n i k k ! ( &rho; i ) k p 0 i , 0 &le; k < n i n i n i n i ! ( &rho; i ) k p 0 i , k &GreaterEqual; n i ,
服务ti类型任务的子服务中心中排队等待服务的平均任务数为:
L q i = ( &rho; 1 i ) n i + 1 ( n i - 1 ) ! ( n i - &rho; 1 i ) 2 p 0 i ,
服务ti类型任务的子服务中心中任务数的均值为:
L s i = &rho; i ( &rho; 1 i ) n i p 0 i n i ! ( 1 - &rho; i ) 2 + &rho; 1 i ,
服务ti类型任务的子服务中心中任务的平均排队时间为:
W q i = L q i &lambda; i = ( &rho; 1 i ) n i p 0 i &mu; i n i &times; n i ! ( 1 - &rho; i ) 2 ,
服务ti类型任务的子服务中心对任务的平均响应时间为:
W s i = L s i &lambda; i = ( &rho; 1 i ) n i p 0 i &mu; i n i &times; n i ! ( 1 - &rho; i ) 2 + 1 &mu; i .
7.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述云服务中心还包括服务损失,服务损失通过问卷调查的方式得到可能减少的用户数,从而算出等候时间与损失的关系,云服务损失的计算如下:对ti类型任务,记ei为处理机pi的单位时间租用价格,ti类型任务在云服务中心中逗留单位时间致使云服务中心遭受的服务损失sli定义为:其中ai是一个表示任务价值大小的常数,任务的价值越大ai值越大,Wi为ti类型任务的最大容忍响应时间,为服务中心对ti类型任务的平均响应时间,完成任务的平均响应时间越长,云服务中心遭受的损失越大;在平均响应时间相同的情况下,最大容忍响应时间越小,云服务中心遭受的损失越大;在平均响应时间和最大容忍响应时间相同的情况下,ai值越大,云服务中心遭受的损失越大,在最大容忍响应时间取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心遭受的损失越来越大,增速越来越快;最大容忍响应时间越小,随着平均响应时间的增加,服务中心遭受损失的增速越来越大。
8.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述云服务中心还包括服务收益,云服务中心完成每个任务所获得的服务收益sri与完成任务的响应时间有关,响应时间越小,收益值越大,云服务中心完成ti类型任务所获得的服务收益sri定义为:
sr i = b i / l n ( 1 + W s i / W i )
其中bi是一个表示任务价值大小的常数,任务的价值越大,bi值越大,Wi为ti类型任务所能容忍的最大响应时间,为服务中心对ti类型任务的平均响应时间,完成任务的平均响应时间越短,云服务中心所获得的服务收益越大;在平均响应时间相同的情况下,最大容忍响应时间越大,云服务中心所获得的服务收益越大;在平均响应时间和最大容忍响应时间相同的情况下,bi值越大,云服务中心所获得的服务收益越大,在最大容忍响应时间W取不同数值时,随着服务中心对任务的平均响应时间的增加,云服务中心所获得的服务收益越来越小,最大容忍响应时间越大服务收益减少地越快。
9.根据权利要求1所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述云服务中心还包括服务效用,服务效用为云服务中心用ni个虚拟机处理到达率为λi的ti类型任务,单位时间所获得的服务效用f(λi,nii)定义为:
f ( &lambda; i , n i , &mu; i ) = &lambda; i b i / l n ( 1 + W s i / W i ) - e i n i - L s i a i e ( W s i W i ) 2 - 1
其中,ni是离散的,且λi/(niμi)<1,为云服务中心中ti类型任务数量的均值(包括正被服务和排队等候的任务数均值),可采用边际分析法求出最优的ni,即使所求的必须同时满足
f ( &lambda; i , n i * , &mu; i ) > f ( &lambda; i , n i * - 1 , &mu; i ) f ( &lambda; i , n i * , &mu; i ) > f ( &lambda; i , n i * + 1 , &mu; i )
由上式即可求出最优的即当处理数为时服务中心的服务效用最大。
10.根据权利要求9所述的一种云服务中心服务效用最大化的虚拟机分配方法,其特征是:所述服务效用最大化的计算为:对ti类型任务,假设用户所能容忍的最长平均等待时间为所能容忍自己所在队列的最长平均等待队长为使服务效用f(λi,nii)取最大值的ni的求解可用下面式子表示:
式子一:
max { f ( &lambda; i , n i , &mu; i ) } = m a x { &lambda; i b i / l n ( 1 + W s i / W i ) - e i n i - L s i a i e ( W s i W i ) 2 - 1 } &rho; i = &lambda; i n i &mu; i < 1 W q i = L q i &lambda; i = ( &rho; 1 i ) n i p 0 i &mu; i n i &times; n i ! ( 1 - &rho; i ) 2 &le; T w i L q i = ( &rho; 1 i ) n i + 1 p 0 i ( n i - 1 ) ! ( n i - &rho; 1 i ) 2 &le; L w
假定云服务中心总的虚拟机个数为n,将这些虚拟机分配给m类型的任务,使整个云服务中心的服务效用最大的各类型虚拟机数ni的求解可用如下式子表示:
式子二:
max F ( &lambda; , m , n ) = max &Sigma; i = 1 m { &lambda; i b i / ln ( 1 + W s i / W i ) - e i n i - L s i a i e ( W s i W i ) 2 - 1 } &rho; i < 1 W q i &le; T w i L q i &le; L w n = &Sigma; i = 1 m n i
从上式可以看出为了最大化整个云服务中心的服务效用,需要将n个虚拟机在m类型任务之间做出恰当的划分,即通过动态调整租用的虚拟机数量、最大化云服务中心服务效用的实质是:实时监测不同类型任务的到达速率和服务质量要求,按服务效用最大化在子云服务中心之间增加或减少租用的虚拟机数;若在不同子云服务中心之间经过虚拟机数量的调整分配仍旧不能满足个别类型任务的服务质量要求时,按效用最大化租用新的虚拟机分配给这些子云服务中心,也就是说服务中心要不断监测不同类型任务的到达速率,为不同子云服务中心配置恰当数目的虚拟机,从而最大化整个云服务中心的服务效用;满足式子二的各子服务中心最优ni的求解是NP问题,通过启发式算法来求解为每个子服务中心分配的虚拟机数ni,求解各子服务中心最优虚拟机数ni的问题表示为:对于给定的各类型任务的到达率λi(从过去时间窗的到达率数据预测得到),各类型任务的服务损失sli、服务收益sri,裁决各子服务中心应分配虚拟机数量的分配向量n1,n2,…,nm使得各子服务中心服务效用f(λi,ni,μi)总的服务效用F(λ,m,n)最大,对每种分配方案计算总的服务效用F(λ,m,n),从中选出有最大服务效用的虚拟机分配方案,n个虚拟机分配到m个服务中心的不同分配方案数s等于整数n的有序m分拆的个数这种穷举搜索的方法仅在n和m较小时可行的,对给定的λi求解服务效用最大所需的虚拟机数的时间复杂性为O(1),在线穷举搜索寻找最优向量(n1,n2,…,nm)是非常费时的,用快速的搜索算法来取代,直觉上当为某一服务中心分配的虚拟机数达到一定数量时,再增加虚拟机数量时,对任务的平均响应时间减少很小时,所获得的服务效用并不会增加太多,由于虚拟机租用成本的存在,该服务中心的服务效用可能减少,与此相反,当为某一服务中心分配的虚拟机数减小到一定数量时,再减少虚拟机数量时,虽能减少虚拟机的租用费用,虚拟机减少可能造成服务中心对任务的平均响应时间迅速增加,导致服务效用急剧减少,进而导致服务效用减少,基于上述分析,给出基于整数编码的求解最优分配方案的单亲遗传算法,该方法命名为SOPGA,即:partheno-genetic algorithm to solve the optimal allocation scheme based on integercoding,以加快搜索的速度,对每个服务中心sci,根据它的任务到达率,求出服务效用最大所需的虚拟机数及该虚拟机数数值附近的其它使服务效用较高的虚拟机数共s个数值{xi(ki)|ki=1,2,…,s},作为服务中心虚拟机数ni的可能取值,从而将虚拟机最优分配问题转化为从有限个方案中寻找最优方案的组合优化问题,SOPGA的求解过程如下:
第一步,分配方案的染色体编码,由于每个子服务中心虚拟机数的取值只有s个,即ni∈{xi(ki)|ki=1,2,…,s}。因此,可在xi(ki)与整数ki∈{1,2,…,s}之间建立一一对应关系:
式子三:
ni=xi(ki),i=1,2,…,m
将分配给m个服务中心sc1,sc2,..,scm虚拟机数的一组取值作为分配方案的染色体编码,通过这样的编码,问题的解空间共有sm个编码串;
第二步,父代群体的初始化,构造初始父代群体时,初始父代个体应尽可能均匀分布于解空间,以保证遗传算法的搜索效率,且每个父代个体应满足式x1(k1)+x2(k2)+...+xm(km)≤n的总量约束条件,设群体规模为w,采用随机方法产生初始父代群体{y(i,j)|i=1,2,…,w;j=1,2,…,m},其中,i为父代个体标号,j为服务中心标号,首先在[0,1]区间上生成m个均匀随机数{u(i,j)|j=1,2,…,m},令y(i,j)=INT[u(i,j)×s+1],若不能满足总量约束条件,则重新生成随机数,直到条件满足为止,这样就得到第i个父代个体,同理可得其它w-1个初始父代个体,INT[]为取整函数;
第三步,父代群体的适应度评价,把父代个体代入式子三得到每个服务中心分配的虚拟机数,再由F(λ,m,n)得到该分配方案对应的服务效用值F(i),并将其作为适应度函数值,即服务效用F(i)值越大,表示该个体的适应度值越高,i=1,2,…,w;
第四步,换位变异,正比于父代个体的服务效用值,选取一个父代个体进行换位变异。所谓换位变异就是在父代个体的1~m基因位上随机选取不同的两个基因位,并交换这两个基因位的值,这样可得到第1个子代群体{c1(i,j)|i=1,2,…,w;j=1,2,…,m}。换位变异的物理意义是交换任意两服务中心的虚拟机数量;
第五步,随机变异,对任意父代个体,若它的适应度函数值F(i)较小,则选择概率sp越小,则对该个体进行变异的概率mp应越大。随机变异操作就是用第(2)步随机生成个体的方法产生一个新个体,并以pm=1-sp的概率代替父代个体,从而得到第2个子代群体{c2(i,j)|i=1,2,…,w;j=1,2,…,m}。随机变异的物理意义是随机产生一个虚拟机分配方案,并以某概率替换一个旧的虚拟机分配方案;
第六步,倒位变异,在父代个体c(i,j)的1~m基因位上随机选取不同的两个基因位g1和g2,设g1<g2,然后对g1~g2基因位上的值反序排列,得到第3个子代群体{c3(i,j)|i=1,2,…,w;j=1,2,…,m};
第七步,演化,将由第四步到第六步得到的三个子代群体,按其适应度函数值从大到小进行统一排序,取适应度函数值最大的m个子代个体作为新的父代群体,转入第三步,进入下一轮次的演化过程,如此反复演化,直至最优个体对应的服务效用值大于某一设定值或算法运行达到预定演化代数,结束整个算法的运行,并把当前群体中最优个体所对应的虚拟机分配方案作为SOPGA的结果。
CN201710227556.8A 2017-04-10 2017-04-10 一种云服务中心服务效用最大化的虚拟机分配方法 Pending CN106951330A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710227556.8A CN106951330A (zh) 2017-04-10 2017-04-10 一种云服务中心服务效用最大化的虚拟机分配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710227556.8A CN106951330A (zh) 2017-04-10 2017-04-10 一种云服务中心服务效用最大化的虚拟机分配方法

Publications (1)

Publication Number Publication Date
CN106951330A true CN106951330A (zh) 2017-07-14

Family

ID=59474539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710227556.8A Pending CN106951330A (zh) 2017-04-10 2017-04-10 一种云服务中心服务效用最大化的虚拟机分配方法

Country Status (1)

Country Link
CN (1) CN106951330A (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107589980A (zh) * 2017-08-01 2018-01-16 佛山市深研信息技术有限公司 一种云计算资源的调度方法
CN107888660A (zh) * 2017-10-13 2018-04-06 杭州朗和科技有限公司 云服务资源调配方法、介质、装置和计算设备
CN108037993A (zh) * 2017-11-07 2018-05-15 大国创新智能科技(东莞)有限公司 基于大数据和深度学习神经网络的云计算调度方法及系统
CN108259584A (zh) * 2017-12-30 2018-07-06 广东技术师范学院 一种云存储服务方的任务策略控制方法
CN109167673A (zh) * 2018-07-18 2019-01-08 广西大学 一种融合异常Qos数据检测的新型云服务筛选方法
CN109240795A (zh) * 2018-08-10 2019-01-18 南瑞集团有限公司 一种适用于超融合it基础设施的云计算资源池模型的资源调度方法
CN109669452A (zh) * 2018-11-02 2019-04-23 北京物资学院 一种基于并行强化学习的云机器人任务调度方法和系统
CN110162393A (zh) * 2019-05-30 2019-08-23 奇瑞汽车股份有限公司 任务调度方法、装置及存储介质
CN110390345A (zh) * 2018-04-20 2019-10-29 复旦大学 一种基于云平台的大数据集群自适应资源调度方法
CN110753083A (zh) * 2019-09-06 2020-02-04 江苏中云科技有限公司 一种面向多服务商的云服务资源统一分配系统
CN110928683A (zh) * 2019-11-14 2020-03-27 湖南工业大学 基于两类密集型虚拟机的边缘计算资源分配方法
CN112004058A (zh) * 2020-08-25 2020-11-27 重庆紫光华山智安科技有限公司 用于多级域监控系统的资源智能分配方法、装置及设备
WO2020259326A1 (zh) * 2019-06-28 2020-12-30 深圳前海微众银行股份有限公司 一种信号传输方法及装置
CN112181620A (zh) * 2020-09-27 2021-01-05 郑州轻工业大学 云环境下虚拟机服务能力感知的大数据工作流调度方法
CN113296946A (zh) * 2021-05-24 2021-08-24 南京大学 边端协同的并发实时流式数据分析任务处理方法及设备
CN113315712A (zh) * 2021-05-20 2021-08-27 中国联合网络通信集团有限公司 网络流量控制方法及系统、sdn控制器
CN113342460A (zh) * 2021-05-11 2021-09-03 暨南大学 一种云数据中心面对突发负载的能耗控制方法
WO2021207989A1 (zh) * 2020-04-15 2021-10-21 海峡小鹿有限公司 数据处理方法、装置、电子设备以及系统
WO2022199234A1 (zh) * 2021-03-24 2022-09-29 华为云计算技术有限公司 一种提供云服务的方法、装置及设备
CN116880978A (zh) * 2023-07-07 2023-10-13 郑州轻工业大学 一种基于模型检验的实时系统分区调度方法及调度器
CN117130790A (zh) * 2023-10-23 2023-11-28 云南蓝队云计算有限公司 一种云计算资源池动态调度方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103873569A (zh) * 2014-03-05 2014-06-18 兰雨晴 一种基于IaaS云平台的资源优化部署方法
CN104811466A (zh) * 2014-01-28 2015-07-29 青岛海尔电子有限公司 云媒体资源分配的方法及装置
US20160055038A1 (en) * 2014-08-21 2016-02-25 International Business Machines Corporation Selecting virtual machines to be migrated to public cloud during cloud bursting based on resource usage and scaling policies
CN103854208B (zh) * 2014-03-11 2016-11-23 湖州师范学院 一种云市场多类型资源分配定价机制的实现方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811466A (zh) * 2014-01-28 2015-07-29 青岛海尔电子有限公司 云媒体资源分配的方法及装置
CN103873569A (zh) * 2014-03-05 2014-06-18 兰雨晴 一种基于IaaS云平台的资源优化部署方法
CN103854208B (zh) * 2014-03-11 2016-11-23 湖州师范学院 一种云市场多类型资源分配定价机制的实现方法
US20160055038A1 (en) * 2014-08-21 2016-02-25 International Business Machines Corporation Selecting virtual machines to be migrated to public cloud during cloud bursting based on resource usage and scaling policies

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曹杰等: "支持随机服务请求的云虚拟机按需物理资源分配方法", 《软件学报》 *

Cited By (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107589980A (zh) * 2017-08-01 2018-01-16 佛山市深研信息技术有限公司 一种云计算资源的调度方法
CN107888660A (zh) * 2017-10-13 2018-04-06 杭州朗和科技有限公司 云服务资源调配方法、介质、装置和计算设备
CN107888660B (zh) * 2017-10-13 2021-06-18 杭州朗和科技有限公司 云服务资源调配方法、介质、装置和计算设备
CN108037993A (zh) * 2017-11-07 2018-05-15 大国创新智能科技(东莞)有限公司 基于大数据和深度学习神经网络的云计算调度方法及系统
CN108037993B (zh) * 2017-11-07 2020-08-04 大国创新智能科技(东莞)有限公司 基于大数据和深度学习神经网络的云计算调度方法及系统
CN108259584A (zh) * 2017-12-30 2018-07-06 广东技术师范学院 一种云存储服务方的任务策略控制方法
CN110390345A (zh) * 2018-04-20 2019-10-29 复旦大学 一种基于云平台的大数据集群自适应资源调度方法
CN110390345B (zh) * 2018-04-20 2023-08-22 复旦大学 一种基于云平台的大数据集群自适应资源调度方法
CN109167673B (zh) * 2018-07-18 2021-04-02 广西大学 一种融合异常Qos数据检测的新型云服务筛选方法
CN109167673A (zh) * 2018-07-18 2019-01-08 广西大学 一种融合异常Qos数据检测的新型云服务筛选方法
CN109240795A (zh) * 2018-08-10 2019-01-18 南瑞集团有限公司 一种适用于超融合it基础设施的云计算资源池模型的资源调度方法
CN109669452A (zh) * 2018-11-02 2019-04-23 北京物资学院 一种基于并行强化学习的云机器人任务调度方法和系统
CN110162393B (zh) * 2019-05-30 2023-06-27 奇瑞汽车股份有限公司 任务调度方法、装置及存储介质
CN110162393A (zh) * 2019-05-30 2019-08-23 奇瑞汽车股份有限公司 任务调度方法、装置及存储介质
WO2020259326A1 (zh) * 2019-06-28 2020-12-30 深圳前海微众银行股份有限公司 一种信号传输方法及装置
CN110753083A (zh) * 2019-09-06 2020-02-04 江苏中云科技有限公司 一种面向多服务商的云服务资源统一分配系统
CN110928683A (zh) * 2019-11-14 2020-03-27 湖南工业大学 基于两类密集型虚拟机的边缘计算资源分配方法
CN110928683B (zh) * 2019-11-14 2022-01-28 湖南工业大学 基于两类密集型虚拟机的边缘计算资源分配方法
WO2021207989A1 (zh) * 2020-04-15 2021-10-21 海峡小鹿有限公司 数据处理方法、装置、电子设备以及系统
CN112004058A (zh) * 2020-08-25 2020-11-27 重庆紫光华山智安科技有限公司 用于多级域监控系统的资源智能分配方法、装置及设备
CN112004058B (zh) * 2020-08-25 2022-03-11 重庆紫光华山智安科技有限公司 用于多级域监控系统的资源智能分配方法、装置及设备
CN112181620B (zh) * 2020-09-27 2022-09-20 郑州轻工业大学 云环境下虚拟机服务能力感知的大数据工作流调度方法
CN112181620A (zh) * 2020-09-27 2021-01-05 郑州轻工业大学 云环境下虚拟机服务能力感知的大数据工作流调度方法
WO2022199234A1 (zh) * 2021-03-24 2022-09-29 华为云计算技术有限公司 一种提供云服务的方法、装置及设备
CN113342460A (zh) * 2021-05-11 2021-09-03 暨南大学 一种云数据中心面对突发负载的能耗控制方法
CN113315712B (zh) * 2021-05-20 2022-07-12 中国联合网络通信集团有限公司 网络流量控制方法及系统、sdn控制器
CN113315712A (zh) * 2021-05-20 2021-08-27 中国联合网络通信集团有限公司 网络流量控制方法及系统、sdn控制器
CN113296946A (zh) * 2021-05-24 2021-08-24 南京大学 边端协同的并发实时流式数据分析任务处理方法及设备
CN113296946B (zh) * 2021-05-24 2023-11-17 南京大学 边端协同的并发实时流式数据分析任务处理方法及设备
CN116880978A (zh) * 2023-07-07 2023-10-13 郑州轻工业大学 一种基于模型检验的实时系统分区调度方法及调度器
CN116880978B (zh) * 2023-07-07 2024-04-09 郑州轻工业大学 一种基于模型检验的实时系统分区调度方法及调度器
CN117130790A (zh) * 2023-10-23 2023-11-28 云南蓝队云计算有限公司 一种云计算资源池动态调度方法
CN117130790B (zh) * 2023-10-23 2023-12-29 云南蓝队云计算有限公司 一种云计算资源池动态调度方法

Similar Documents

Publication Publication Date Title
CN106951330A (zh) 一种云服务中心服务效用最大化的虚拟机分配方法
CN110737529B (zh) 一种面向短时多变大数据作业集群调度自适应性配置方法
Barrett et al. A learning architecture for scheduling workflow applications in the cloud
Duan et al. Multi-objective game theoretic schedulingof bag-of-tasks workflows on hybrid clouds
Shi et al. Location-aware and budget-constrained service deployment for composite applications in multi-cloud environment
CN108182109A (zh) 一种云环境下的工作流调度与数据分配方法
Szabo et al. Evolving multi-objective strategies for task allocation of scientific workflows on public clouds
CN113411369A (zh) 一种云服务资源协同优化调度方法、系统、介质及设备
US9239734B2 (en) Scheduling method and system, computing grid, and corresponding computer-program product
CN106227599B (zh) 一种云计算系统中资源调度的方法及系统
CN107659433A (zh) 一种云资源调度方法及设备
CN104065745A (zh) 云计算动态资源调度系统和方法
CN107203412A (zh) 一种基于膜系统改进粒子群算法的云资源调度优化方法
CN110389820A (zh) 一种基于v-TGRU模型进行资源预测的私有云任务调度方法
CN108320059A (zh) 一种工作流调度进化寻优方法及终端设备
Saha et al. A novel scheduling algorithm for cloud computing environment
Hussain et al. Hybrid Genetic Algorithm for IOMT‐Cloud Task Scheduling
Zhang et al. Individualized requirement-driven multi-task scheduling in cloud manufacturing using an extended multifactorial evolutionary algorithm
CN114968531A (zh) 基于多适应度遗传优化的量子云混合任务调度方法及装置
Chraibi et al. Makespan optimisation in cloudlet scheduling with improved DQN algorithm in cloud computing
Teng Ressource allocation and schelduling models for cloud computing
Zhu et al. SAAS parallel task scheduling based on cloud service flow load algorithm
Chen et al. Research on workflow scheduling algorithms in the cloud
CN105426247B (zh) 一种hla联邦成员规划调度方法
CN105005501B (zh) 一种面向云数据中心的二阶任务优化调度方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170714