CN113626162B - 基于动态资源共享的数据中心任务混合部署方法及系统 - Google Patents
基于动态资源共享的数据中心任务混合部署方法及系统 Download PDFInfo
- Publication number
- CN113626162B CN113626162B CN202110778960.0A CN202110778960A CN113626162B CN 113626162 B CN113626162 B CN 113626162B CN 202110778960 A CN202110778960 A CN 202110778960A CN 113626162 B CN113626162 B CN 113626162B
- Authority
- CN
- China
- Prior art keywords
- task
- tasks
- resource
- offline
- server
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000013468 resource allocation Methods 0.000 claims description 18
- 230000001174 ascending effect Effects 0.000 claims description 12
- 238000009826 distribution Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000009827 uniform distribution Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- 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)
- Computer And Data Communications (AREA)
Abstract
本发明属于云计算资源管理技术领域,公开了一种基于动态资源共享的数据中心任务混合部署方法及系统,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求;为上一时隙未完成的离线任务重新计算资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序;确定在线任务峰值资源需求和当前时隙的预留资源门限并部署任务,为离线任务计算在单个时隙内完成所需的资源量并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用。本发明利用在线工作负载的时变特性来最大化临时可用资源的利用率,同时保证延迟敏感服务的服务质量,并尽可能减轻混合部署对离线任务的影响。
Description
技术领域
本发明属于云计算资源管理技术领域,尤其涉及一种基于动态资源共享的数据中心任务混合部署方法及系统。
背景技术
目前:随着云计算的发展,越来越多的应用被部署到数据中心中。云计算通过虚拟化的技术将数据中心的物理资源建模成一个资源池,使得一台服务器上可以运行多个虚拟机。云服务提供商通过虚拟机的形式向用户提供所需资源,根据用户任务的实际资源需求为虚拟机分配资源。多项研究表明,大多数数据中心平均资源利用率较低,如谷歌、亚马逊和阿里巴巴,通常资源利用率低于40%。
云计算环境中有两类典型业务:在线型和离线型。在线任务通常是面向用户的,具有运行时间长,延迟敏感,负载随时间变化等特点,例如网页浏览、在线支付、社交媒体等。离线任务通常可以容忍较大的运行时延,只需要保证其在截止期限内完成,如数据分析。数据中心资源利用率低的一个主要原因是大量延迟敏感性的在线任务的存在。由于用户访问模式和不可预测的峰值,这类任务的负载变化较大,通常数据中心为其分配的资源量超出其实际消耗的资源量。在负载峰值来临前,大量资源处于空闲状态。
提高资源利用率一个行之有效的方法是在部署了在线任务的服务器上启动时延容忍的离线任务,使离线任务利用在线工作负载未充分利用的资源。已有的数据中心任务混合部署方法中,一种较为保守的方法是将“安全”(不会产生干扰的)的任务组合部署在一起。集群调度程序预测给定应用程序混合部署的干扰,在运行时调整分配,或者在预测的延迟违反服务质量(Quality-of-Service,QoS)时禁止资源共享。虽然这种方法保护了在线任务的QoS,但它过于保守。另一种有一定风险的策略是实时测量在线任务的服务器性能级别(如响应时间),当测量值优于目标值时,尝试递减一种资源(如内核数量、内存容量等),并将剩余资源分配给离线任务使用。这种策略可能导致更多的QoS违反,因为测量总是滞后的,当测得的服务器性能水平低于服务质量要求时再进行调整为时已晚。
通过上述分析,现有技术存在的问题及缺陷为:
(1)现有技术将“安全”的任务组合部署在一起能够保证任务之间不会产生性能干扰,但限制了可以混合部署的任务的数量,无法最大化数据中心的资源利用率,进而产生开启服务器数量增加带来的能耗增加的问题。
(2)现有技术实时测量在线任务的服务器性能级别,忽略了在线任务对响应时间的严格要求以及实时测量带来的时延问题,从而导致更多的在线任务频繁违反用户服务质量要求。
解决以上问题及缺陷的难度为:
如何减小共享资源的任务之间资源竞争产生的干扰问题,同时最大化数据中心的资源利用率。
解决以上问题及缺陷的意义为:
通过解决以上问题,能够在保障在线任务QoS的同时,使离线任务尽可能充分利用在线任务时变特性所带来的临时可用资源,从而提升数据中心的任务承载能力。
发明内容
针对现有技术存在的问题,本发明提供了一种基于动态资源共享的数据中心任务混合部署方法及系统。
本发明是这样实现的,一种基于动态资源共享的数据中心任务混合部署方法,所述基于动态资源共享的数据中心任务混合部署方法包括:
根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求,用以刻画用户资源需求;
先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列,提供调度顺序规则;
确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量,从而最大程度的降低共享资源的任务之间的干扰;
根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源,从而最大化资源的利用率。
进一步,所述基于动态资源共享的数据中心任务混合部署方法具体包括:
(1)获取本次时间窗内到达的任务请求,包括在线任务Ton={α1,α2,...}和离线任务Toff={β1,β2,...},记录任务的QoS需求;
(2)检查是否有上一时隙未完成的离线任务,如果有,则按照初次部署顺序处理上一时隙未完成的离线任务,重新计算未完成的离线任务的资源需求,并根据当前物理机集合的资源剩余情况重新部署这些未完成的任务;如果没有,进入(3);
(3)将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
(4)确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,按顺序放置任务并更新物理机剩余可用资源,为新到达的离线任务计算在单个时隙内完成所需的资源量,按顺序放置任务并更新物理机剩余可用资源;
(5)在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
进一步,所述的基于动态资源共享的数据中心任务混合部署方法中记录任务的QoS,具体包括:
(1)对于第i个在线任务αi,记录任务资源需求并统计其均值和方差,将在线任务αi在第t(1≤t≤T)个时隙中的资源需求Rd,i(t)建模为均值为μi(t),标准差为σi(t)的高斯分布,提取在线任务αi的Qos需求,记作εi,即响应延迟不超过500ms的任务请求数量所占比例不超过εi,可表示为P(Rd,i(t)≥Ra,i(t))<εi,其中,P(·)表示概率,Ra,i(t)表示在第t时隙满足在线任务QoS目标的资源占用门限:Rα,i(t)≥Q-1(ε)*σi(t)+μi(t)。
(2)对于第j个离线任务βj,记录其性能模型βj={aj,dj,lj},其中aj,dj,lj分别表示任务到达时间、任务截止期限、任务长度,离线任务需要在其截止期之前完成。离线任务完成时间ftj=stj+etj,其中,etj为任务j的执行时间,etj=lj/Rβ,j;stj为任务βi开始执行时间,取值为任务部署策略执行的时隙开始时间。
进一步,所述的资源分配方法,对于第i个在线任务αi,其所需要分配的资源量为在线任务αi峰值资源需求将服务器容量与分配资源之间的差值称为空闲资源(ER,Empty Resource),则服务器k在第t个时隙的空闲资源记为ERk(t);当服务器k空闲资源满足时,表示服务器k满足在线任务αi的资源需求,可将在线任务αi部署在服务器k上,则服务器k在第t个时隙的空闲资源更新为
进一步,所述的资源分配方法,对于第j个离线任务βj,其资源需求为离线任务βj在当前时隙内完成所需要的资源量Rβ,j=lj/(min(tp,dj-stj)),将服务器上为在线任务分配的资源量与在线任务资源占用门限之间的差值称为剩余可用资源RAV,则服务器k在第t个时隙的剩余可用资源记为RAVk(t)。当服务器k剩余可用资源RAVk(t)满足RAVk(t)>Rβ,j时,表示服务器k满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,为离线任务βj从RAVk(t)中分配资源,服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=RAVk(t)-Rβ,j;否则,当服务器k剩余可用资源RAVk(t)不满足RAVk(t)>Rβ,j,但满足(RAVk(t)+ERk(t))>Rβ,j时,服务器k也满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,需要为离线任务βj从RAVk(t)和ERk(t)中分配资源,则服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=0,空闲资源更新为ERk(t)=ERk(t)+RAVk(t)-Rβ,j;
进一步,所述的资源分配方法,先部署在线任务,在线任务的部署使用Fist-Fit策略,检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为其分配满足资源需求的资源量;如果所有开启的服务器都不能满足资源需求,则开启新的服务器部署任务;
进一步,所述的资源分配方法,将所有新到达的在线任务部署完成后,按照(2)中的排序结果依次部署离线任务;检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为任务分配满足资源需求的资源量;当所有开启的服务器都不能满足任务的资源需求,判断任务截止期是否小于等于当前时隙结束时刻,若任务截止期小于等于当前时隙结束时刻,为任务开启新的服务器,若任务截止期大于当前时隙结束时刻,将任务放至剩余资源最多的服务器上并将该服务器上的剩余资源量分配给此任务,在下一时隙开始时,重新计算其资源需求并进行部署;
所述的资源分配方法,所述剩余资源指RAV(t)+ER(t)。
本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
本发明的另一目的在于提供一种云计算资源管理终端,所述云计算资源管理终端用于实现所述的基于动态资源共享的数据中心任务混合部署方法。
本发明的另一目的在于提供一种实施所述基于动态资源共享的数据中心任务混合部署方法的数据中心任务混合部署系统,所述数据中心任务混合部署系统包括:
任务请求获取模块,用于根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
任务请求排序模块,用于将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
资源需求和门限确定模块,用于确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
决策模块,用于根据当前物理机集合的资源剩余情况,为任务分配资源和部署任务,先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;再部署新到达的任务,根据任务的不同资源需求量,为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明采用的任务混合部署能够在保障用户任务的QoS要求的基础上,通过时隙划分和为不同任务制定不同的资源需求计算方案进一步优化资源的分配方案,获得更高的资源利用率。本发明基于动态资源共享的数据中心任务混合部署方法,利用了在线任务在不同时隙的资源需求可建模为高斯分布的特性,根据在线任务和离线任务不同的QoS要求,为在线任务和离线任务分时隙计算资源分配量,实现动态资源共享,使两种不同类型的任务在共享资源时最大限度的减少对彼此的干扰,并最大限度的提升服务器的资源利用率。除此之外,本发明是基于资源共享的任务部署,进一步减少了激活的服务器的数量。
附图说明
图1是本发明实施例提供的基于动态资源共享的数据中心任务混合部署方法流程图。
图2是本发明实施例提供的数据中心任务混合部署系统的结构示意图;
图2中:1、任务请求获取模块;2、任务请求排序模块;3、资源需求和门限确定模块;4、决策模块。
图3是本发明实施例提供的使用时的场景示意图。
图4是本发明实施例提供的基于动态资源共享的数据中心任务混合部署方法的实现流程示意图。
图5是本发明实施例提供的服务器数量有限时的服务器平均资源利用率示意图。
图6是本发明实施例提供的服务器数量有限时的平均开启服务器数量示意图。
图7是本发明实施例提供的在服务器数量有限时的在线任务失败率示意图。
图8是本发明实施例提供的在服务器数量有限时的离线任务失败率示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种基于动态资源共享的数据中心任务混合部署方法及系统,下面结合附图对本发明作详细的描述。
如图1所示,本发明提供的基于动态资源共享的数据中心任务混合部署方法包括以下步骤:
S101:根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
S102:为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;
S103:将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
S104:确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
S105:根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
本发明提供的基于动态资源共享的数据中心任务混合部署方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的基于动态资源共享的数据中心任务混合部署方法仅仅是一个具体实施例而已。
如图2所示,本发明提供的数据中心任务混合部署系统包括:
任务请求获取模块1,用于根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
任务请求排序模块2,用于将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
资源需求和门限确定模块3,用于确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
决策模块4,用于根据当前物理机集合的资源剩余情况,为任务分配资源和部署任务,先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;再部署新到达的任务,根据任务的不同资源需求量,为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
下面结合附图对本发明的技术方案作进一步的描述。
本发明的基于动态资源共享的数据中心任务混合部署方法将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,记录其QoS需求;先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。本发明利用在线任务的负载变化特征和离线任务的时延容忍特性,实现在线和离线任务的混合部署,达到提升云数据中心资源利用率的目标。
如图3所示的场景示意图,本发明将持续收集一个时隙内到达的多个在线任务请求和离线任务请求,在进入任务部署前,先对任务进行排序操作,并计算所需资源量,服务器的资源可分为空闲资源(ER)、剩余可用资源(RAV)和使用资源(UR),调度器根据服务器的资源状态信息和任务资源需求进行联合任务部署。
如图4所示,本发明在图2所述的场景中进行在线任务和离线任务联合资源分配,需要说明的是,本实例不应理解为对本发明的限制。
本发明提供的基于动态资源共享的基于动态资源共享的数据中心任务混合部署方法,具有数据中心的云服务器,请求数据中心资源的在线任务和离线任务。将时间划分为多个时隙,对上一个时隙达到的多个任务请求,在当前时隙开始时先处理在线任务请求,再处理离线任务请求。具体步骤如下:
(1)获取本次时间窗内到达的任务请求,包括在线任务Ton={α1,α2,...}和离线任务Toff={β1,β2,...},记录任务的QoS需求;
(2)检查是否有上一时隙未完成的离线任务,如果有,则按照初次部署顺序处理上一时隙未完成的离线任务,重新计算未完成的离线任务的资源需求,并根据当前物理机集合的资源剩余情况重新部署这些未完成的任务;如果没有,进入(3);
(3)将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
(4)确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,按顺序放置任务并更新物理机剩余可用资源,为新到达的离线任务计算在单个时隙内完成所需的资源量,按顺序放置任务并更新物理机剩余可用资源;
(5)在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
进一步,所述的基于动态资源共享的数据中心任务混合部署方法中记录任务的QoS,具体包括:
(1)对于第i个在线任务αi,记录任务资源需求并统计其均值和方差,将在线任务αi在第t(1≤t≤T)个时隙中的资源需求Rd,i(t)建模为均值为μi(t),标准差为σi(t)的高斯分布,提取在线任务αi的Qos需求,记作εi,即响应延迟不超过500ms的任务请求数量所占比例不超过εi,可表示为P(Rd,i(t)≥Ra,i(t))<εi,其中,P(·)表示概率,Ra,i(t)表示在第t时隙满足在线任务QoS目标的资源占用门限:Rα,i(t)≥Q-1(ε)*σi(t)+μi(t)。
(2)对于第j个离线任务βj,记录其性能模型βj={aj,dj,lj},其中aj,dj,lj分别表示任务到达时间、任务截止期限、任务长度,离线任务需要在其截止期之前完成。离线任务完成时间ftj=stj+etj,其中,etj为任务j的执行时间,etj=lj/Rβ,j;stj为任务βi开始执行时间,取值为任务部署策略执行的时隙开始时间。
进一步,所述的资源分配方法,对于第i个在线任务αi,其所需要分配的资源量为在线任务αi峰值资源需求将服务器容量与分配资源之间的差值称为空闲资源(ER,Empty Resource),则服务器k在第t个时隙的空闲资源记为ERk(t);当服务器k空闲资源满足时,表示服务器k满足在线任务αi的资源需求,可将在线任务αi部署在服务器k上,则服务器k在第t个时隙的空闲资源更新为
进一步,所述的资源分配方法,对于第j个离线任务βj,其资源需求为离线任务βj在当前时隙内完成所需要的资源量Rβ,j=lj/(min(tp,dj-stj)),将服务器上为在线任务分配的资源量与在线任务资源占用门限之间的差值称为剩余可用资源RAV,则服务器k在第t个时隙的剩余可用资源记为RAVk(t)。当服务器k剩余可用资源RAVk(t)满足RAVk(t)>Rβ,j时,表示服务器k满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,为离线任务βj从RAVk(t)中分配资源,服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=RAVk(t)-Rβ,j;否则,当服务器k剩余可用资源RAVk(t)不满足RAVk(t)>Rβ,j,但满足(RAVk(t)+ERk(t))>Rβ,j时,服务器k也满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,需要为离线任务βj从RAVk(t)和ERk(t)中分配资源,则服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=0,空闲资源更新为ERk(t)=ERk(t)+RAVk(t)-Rβ,j;
进一步,所述的资源分配方法,先部署在线任务,在线任务的部署使用Fist-Fit策略,检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为其分配满足资源需求的资源量;如果所有开启的服务器都不能满足资源需求,则开启新的服务器部署任务;
进一步,所述的资源分配方法,将所有新到达的在线任务部署完成后,按照(2)中的排序结果依次部署离线任务;检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为任务分配满足资源需求的资源量;当所有开启的服务器都不能满足任务的资源需求,判断任务截止期是否小于等于当前时隙结束时刻,若任务截止期小于等于当前时隙结束时刻,为任务开启新的服务器,若任务截止期大于当前时隙结束时刻,将任务放至剩余资源最多的服务器上并将该服务器上的剩余资源量分配给此任务,在下一时隙开始时,重新计算其资源需求并进行部署;
所述的资源分配方法,所述剩余资源指RAV(t)+ER(t)。
下面结合仿真对本发明的技术效果作详细的描述。
本发明与两种资源分配方法在四项性能指标上进行了比较。一种是非资源共享,在线任务和离线任务分别放在不同的服务器集群中。另一种是静态资源共享,它允许在线任务和离线任务在同一台服务器上共享资源,但为这两种任务分配固定的资源量。
服务器数量为260,服务器的计算资源容量为100。时隙长度为五分钟。在线任务资源需求的均值从5到60之间随机选取,标准差服从参数为[0.1,3]的均匀分布。任务的到达服从泊松分布,在线任务的到达率为0.2,QoS目标值服从参数为[95%,99.99%]的均匀分布。离线任务的到达率由0到8变化,计算量服从参数为[500,1000]的均匀分布,截止时间值服从参数为[10,30]的均匀分布,以分钟为单位。仿真持续时间设置为一小时。
图5显示了集群的平均CPU资源利用率。随着离线任务到达率的增加,三种资源分配方式的CPU利用率都在增加。所提出的动态资源共享方法可以在高负载环境下将平均资源利用率提高约30%。
图6显示了活动服务器的平均数量。随着负载的增加,为了满足更多任务的资源需求,三种方法都继续开启更多物理服务器。由于动态资源共享和联合任务部署策略,该方法可以更好地利用每台服务器的资源,并保持最低的工作服务器数量,从而节省大量功耗。
图7显示了当服务器数量有限时在线任务的失败率。随着离线任务到达率的增加,非资源共享方式的在线任务失败率增加最快,而静态和动态资源共享的在线任务失败率比非资源共享方法低得多。
图8显示了当服务器数量有限时离线任务的失败率。随着离线任务到达率的增加,非资源共享方式下的离线任务失败率仅略有增加。当离线任务的到达率接近8时,静态资源共享方法的失败率突然增加。所提出的动态资源共享方法能够始终保持非常小的离线任务失败率。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述基于动态资源共享的数据中心任务混合部署方法包括:
根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源;
所述的记录任务的QoS,具体包括:
(1)对于第i个在线任务αi,记录任务资源需求并统计其均值和方差,将在线任务αi在第t(1≤t≤T)个时隙中的资源需求Rd,i(t)建模为均值为μi(t),标准差为σi(t)的高斯分布,提取在线任务αi的Qos需求,记作εi,即响应延迟不超过500ms的任务请求数量所占比例不超过εi,可表示为P(Rd,i(t)≥Ra,i(t))<εi,其中,P(·)表示概率,Ra,i(t)表示在第t时隙满足在线任务QoS目标的资源占用门限:Rα,i(t)≥Q-1(ε)*σi(t)+μi(t);
(2)对于第j个离线任务βj,记录其性能模型βj={aj,dj,lj},其中aj,dj,lj分别表示任务到达时间、任务截止期限、任务长度,离线任务需要在其截止期之前完成;离线任务完成时间ftj=stj+etj,其中,etj为任务j的执行时间,etj=lj/Rβ,j;stj为任务βi开始执行时间,取值为任务部署策略执行的时隙开始时间。
2.如权利要求1所述的基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述基于动态资源共享的数据中心任务混合部署方法具体包括:
(1)获取本次时间窗内到达的任务请求,包括在线任务Ton={α1,α2,...}和离线任务Toff={β1,β2,...},记录任务的QoS需求;
(2)检查是否有上一时隙未完成的离线任务,如果有,则按照初次部署顺序处理上一时隙未完成的离线任务,重新计算未完成的离线任务的资源需求,并根据当前物理机集合的资源剩余情况重新部署这些未完成的任务;如果没有,进入(3);
(3)将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
(4)确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,按顺序放置任务并更新物理机剩余可用资源,为新到达的离线任务计算在单个时隙内完成所需的资源量,按顺序放置任务并更新物理机剩余可用资源;
(5)在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
3.如权利要求2所述的基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述的资源分配方法,对于第i个在线任务αi,其所需要分配的资源量为在线任务αi峰值资源需求将服务器容量与分配资源之间的差值称为空闲资源(ER,Empty Resource),则服务器k在第t个时隙的空闲资源记为ERk(t);当服务器k空闲资源满足时,表示服务器k满足在线任务αi的资源需求,可将在线任务αi部署在服务器k上,则服务器k在第t个时隙的空闲资源更新为
4.如权利要求2所述的基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述的资源分配方法,对于第j个离线任务βj,其资源需求为离线任务βj在当前时隙内完成所需要的资源量Rβ,j=lj/(min(tp,dj-stj)),将服务器上为在线任务分配的资源量与在线任务资源占用门限之间的差值称为剩余可用资源RAV,则服务器k在第t个时隙的剩余可用资源记为RAVk(t),当服务器k剩余可用资源RAVk(t)满足RAVk(t)>Rβ,j时,表示服务器k满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,为离线任务βj从RAVk(t)中分配资源,服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=RAVk(t)-Rβ,j;否则,当服务器k剩余可用资源RAVk(t)不满足RAVk(t)>Rβ,j,但满足(RAVk(t)+ERk(t))>Rβ,j时,服务器k也满足离线任务βj的资源需求,可将离线任务βj部署在服务器k上,需要为离线任务βj从RAVk(t)和ERk(t)中分配资源,则服务器k在第t个时隙的剩余可用资源更新为RAVk(t)=0,空闲资源更新为ERk(t)=ERk(t)+RAVk(t)-Rβ,j。
5.如权利要求2所述的基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述的资源分配方法,先部署在线任务,在线任务的部署使用Fist-Fit策略,检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为其分配满足资源需求的资源量;如果所有开启的服务器都不能满足资源需求,则开启新的服务器部署任务。
6.如权利要求2所述的基于动态资源共享的数据中心任务混合部署方法,其特征在于,所述的资源分配方法,将所有新到达的在线任务部署完成后,按照(2)中的排序结果依次部署离线任务;检查所有活动服务器,找到第一个满足任务资源需求的服务器,将任务部署在该服务器上并为任务分配满足资源需求的资源量;当所有开启的服务器都不能满足任务的资源需求,判断任务截止期是否小于等于当前时隙结束时刻,若任务截止期小于等于当前时隙结束时刻,为任务开启新的服务器,若任务截止期大于当前时隙结束时刻,将任务放至剩余资源最多的服务器上并将该服务器上的剩余资源量分配给此任务,在下一时隙开始时,重新计算其资源需求并进行部署;
所述的资源分配方法,所述剩余资源指RAV(t)+ER(t)。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1~6任意一项所述的基于动态资源共享的数据中心任务混合部署方法,包括如下步骤:
根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
根据当前物理机集合的资源剩余情况,和任务的不同资源需求量,按顺序为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
8.一种云计算资源管理终端,其特征在于,所述云计算资源管理终端用于实现权利要求1~6任意一项所述的基于动态资源共享的数据中心任务混合部署方法。
9.一种实施权利要求1~6任意一项所述基于动态资源共享的数据中心任务混合部署方法的数据中心任务混合部署系统,其特征在于,所述数据中心任务混合部署系统包括:
任务请求获取模块,用于根据任务请求的到达时间,将时间轴划分为多个时隙,获取本次时隙内到达的任务请求,包括在线任务和离线任务,并记录任务的服务质量(Quality-of-Service,QoS)需求;
任务请求排序模块,用于将新到达的任务请求按照先在线后离线的顺序排序,其中在线任务按照到达时间的先后顺序排序,离线任务按任务的截止期升序排列;
资源需求和门限确定模块,用于确定新到达的在线任务峰值资源需求和当前时隙的预留资源门限,为新到达的离线任务计算在单个时隙内完成所需的资源量;
决策模块,用于根据当前物理机集合的资源剩余情况,为任务分配资源和部署任务,先为上一时隙未完成的离线任务,重新计算其资源需求并部署任务;
再部署新到达的任务,根据任务的不同资源需求量,为任务选择合适的服务器并部署任务;在下一个调度时刻到来之前,将每个服务器上剩余资源按比例临时提供给该服务器上的离线任务使用,在下一轮调度时,临时分配的资源将被回收,视为可用空闲资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110778960.0A CN113626162B (zh) | 2021-07-09 | 2021-07-09 | 基于动态资源共享的数据中心任务混合部署方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110778960.0A CN113626162B (zh) | 2021-07-09 | 2021-07-09 | 基于动态资源共享的数据中心任务混合部署方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113626162A CN113626162A (zh) | 2021-11-09 |
CN113626162B true CN113626162B (zh) | 2024-08-23 |
Family
ID=78379349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110778960.0A Active CN113626162B (zh) | 2021-07-09 | 2021-07-09 | 基于动态资源共享的数据中心任务混合部署方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113626162B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115454598B (zh) * | 2022-09-09 | 2023-06-06 | 苏州大学 | 部分解耦数据中心的业务部署和资源分配方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273185A (zh) * | 2017-06-19 | 2017-10-20 | 成都鼎智汇科技有限公司 | 一种基于虚拟机的负载均衡控制方法 |
WO2019024445A1 (zh) * | 2017-07-31 | 2019-02-07 | 上海交通大学 | 地理分布交互服务云资源协同优化方法 |
-
2021
- 2021-07-09 CN CN202110778960.0A patent/CN113626162B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273185A (zh) * | 2017-06-19 | 2017-10-20 | 成都鼎智汇科技有限公司 | 一种基于虚拟机的负载均衡控制方法 |
WO2019024445A1 (zh) * | 2017-07-31 | 2019-02-07 | 上海交通大学 | 地理分布交互服务云资源协同优化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113626162A (zh) | 2021-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776005B (zh) | 一种面向容器化应用的资源管理系统及方法 | |
Grandl et al. | Multi-resource packing for cluster schedulers | |
EP3087503B1 (en) | Cloud compute scheduling using a heuristic contention model | |
CN111344688B (zh) | 云计算中资源提供的方法及系统 | |
US7945913B2 (en) | Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system | |
US8869160B2 (en) | Goal oriented performance management of workload utilizing accelerators | |
CN111352736A (zh) | 大数据资源的调度方法、装置、服务器及存储介质 | |
WO2024120205A1 (zh) | 一种应用性能优化方法、装置、电子设备及存储介质 | |
CN113672391B (zh) | 一种基于Kubernetes的并行计算任务调度方法与系统 | |
Guo et al. | Inter-task cache interference aware partitioned real-time scheduling | |
Fan | Job scheduling in high performance computing | |
CN117573373B (zh) | 一种基于云计算的cpu虚拟化调度方法及系统 | |
CN112948113A (zh) | 一种集群资源管理调度方法、装置、设备及可读存储介质 | |
CN113626162B (zh) | 基于动态资源共享的数据中心任务混合部署方法及系统 | |
CN114625500A (zh) | 云环境下拓扑感知的微服务应用调度的方法及应用 | |
WO2014136302A1 (ja) | タスク管理装置及びタスク管理方法 | |
CN107203256B (zh) | 一种网络功能虚拟化场景下的节能分配方法与装置 | |
WO2022151951A1 (zh) | 任务调度方法及管理系统 | |
CN114564300A (zh) | 用于动态分派内存带宽的方法 | |
CN117608760A (zh) | 应用于Kubernetes的云上应用混合部署方法 | |
CN109298949B (zh) | 一种分布式文件系统的资源调度系统 | |
CN113301087A (zh) | 资源调度方法、装置、计算设备和介质 | |
CN113672382B (zh) | 一种业务资源分配方法、装置、电子设备和存储介质 | |
Cheng et al. | Improving fair scheduling performance on hadoop | |
CN116932156A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |