朱倩
(河源市职业技术学校,广东河源 517000)
云环境下顾及SLA及QoS的资源调度策略
朱倩
(河源市职业技术学校,广东河源517000)
摘要:考虑到云技术是当前较为流行基于服务的分布式计算及其不需要用户关注底层的系统实现。有效的资源调配一方面能减少资源的过度浪费,或者减少成本以增加用户的满意度,最终提升系统的性能。本文通过对云计算平台资源的虚拟化技术,实现系统性能需求的精确预算。从服务的角度,探讨一种云环境下基于Virtual Machine(VM)的顾及Service Level Agreement (SLA)及Quality of Service (QoS)的资源调度策略。模拟实验结果表明,本资源的调度策略是一种提高系统资源利用率的有效手段,具有一定的实用价值。
关键词:云计算;Virtual Machine(VM);Service Level Agreement (SLA);Service Level Agreement (SLA);资源调度
过去的几年,在学术界与工业界,云计算已经取得了长足的进步。作为服务计算的一部分,云计算提供了编程、应用开发、存储以及各类硬件资源的服务。正如云计算的概念指出,云计算一方面是虚拟化技术(Virtualization)、效用计算(Utility Computing)、XaaS(包括IaaS、PaaS、SaaS等)等技术混合演进并跃升的结果;另一方面是并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的发展,或者说是这些计算机科学概念的商业实现[1]。云计算则通过Web服务请求的方式,访问云数据中心所提供的相关服务,使得云计算中心能够依据服务请求所需资源,在虚拟资源池中按需分配必要的可计算资源,包括计算机和存储系统实现计算任务的高效执行[2]。
然而,云计算仍面临着一系列的挑战,尤其是确保Quality of Service(QoS)的资源调配问题。要实现资源与服务的有效调配,必须获得QoS涉及一系列的参数与属性,包括包的丢失率、网络延迟、传输率、成本与声誉,以及数据安全、可信度与用户满意度等等。当然,提升用户满意度与QoS的目标是一致的。由于资源提供者与使用者间的Service Level Agreement (SLA)协议中定义了相关的QoS和成本费用,只有协调好这两者的关系,才能保证系统的用户满意度,从而提升系统的性能。当前,基于不同QoS测度约束的资源调配的研究很多,有从高性能角度通过计算响应时间百分比、资源利用率以及包丢失率等参数进行研究的方法,也有通过计算最大、最小以及平均响应时间进行衡量的方法,以及考虑带宽等资源分配进行的研究[3-5]。国外也尝试着从SLA的角度确保QoS的研究[6],其中也有一些工作针对Virtual Machine(VM)资源的调配确保QoS的方式[7]。在云平台中,由于网络特性和IT资源的不确定性与动态变化特性,要实现SLA的目标也是一项重要的挑战。鉴于此,在提及的资源调配,在满足SLA的基础上,探讨采用一种基于云环境下资源的自适应VM资源回收与调配策略,确保计算资源的整体花费最小。
1基于QoS的VM资源调度策略
1.1面向QoS的请求过程
云计算通常采用虚拟化技术实现资源的按需分配与管理。文中提到的资源主要指计算资源、数据资源包括服务资源。下面依据SLA中资源约束准则对调配相关的资源调度问题进行探讨。
作业调度研究的是如何分配计算资源,而资源调配研究的是计算资源的分配问题。一般地,资源调配与作业调度一样,都属于NP复杂性问题[8-9]。涉及到资源的提供者与消费者,对于资源的提供者,希望充分利用已有资源,更多地分配资源给用户使用,提升资源利用率获得更大的回报;但是如果分配的资源不足,将导致作业无法执行,因此资源调配在作业调度方面起着关键作用。通常用户与资源提供者间在所签署的SLA协议中定义了相关的QoS和费用。如图1所示,从系统结构角度依据SLA协议的客户服务请求,在用户提交事务生成服务请求作业队列后,系统按请求的不同需求构建与释放VM资源进行处理的过程。
图1 用户与服务资源VM框架体系
实际上,基于相关分析结果的虚拟机调配已有相关研究[10],主要是针对虚拟机的动态场景使用云计算的SaaS、PaaS与IaaS层,然而,多数并未从资源再利用的角度去探讨VM回收资源去满足新的请求,而是直接创建新的VM,虽然新的任务可能与之前分配的VM具有同样的资源需求程度,但该方法比较费时,并不适合每一种情形尤其是VM的再利用问题。
QoS约束下资源调度策略问题主要研究数据、服务、网络等可计算资源在确保用户QoS参数前提下如何提高系统性能的问题。通常,为实现任务完成在时间上的改善,可以给每一个任务成本设定一组QoS参数来衡量用户的满意度,包括任务完成的Deadline和费用约束。下面从系统性能角度探讨一种服务、数据、计算节点与网络距离的调度策略模型。系统请求根据请求的类型进行分类,构建不同类型的VM提供服务,主要关注当前是否有满足需求的VM队列提供服务,从而避免重新创建VM。以下为QoS管理控制过程伪码描述:
Procedure Controlling:
do{
Predict user requirements analyzing or admission controlling
if not (avail. Resources)
Exit service
End if
If not (match Queue type)
Create New Queue type
End if
Save request queue and results of predict
Monitoring request resources
}
while (requirement threshold > types of queue )
上述QoS管理过程,系统首先通过需求分析与许可控制对新的请求服务检测可用资源充足与否,如果发现请求服务在SLA规定的时间内能完成,将请求作业将进入队列匹配已有的队列类型,如果没有相关队列,将重新分配合适规模的资源创建VM。
1.2自适应VM调度策略
在允许一个服务进入队列服务前,所有在队列中的服务被计算的时间总和,标记为Tneg,平均执行时间为Texe,服务时间为Tservice,总的需求时间Ttotal为系统监测到队列中所有服务的执行时间Texe与不确定的网络时间总和,且Treq,Tact分别表示请求协商与实际作业完成时间。在运行中,当一个新的作业到来后,Tnew_act被预测,满足
Tnew_neg+Tneg> Ttotal+Tnew_act+Tthreshold,
Tservice> Tneg+Tnew_act。
则新的作业将进入队列获得VM资源完成服务请求。当然,在队列中,作业的执行还与作业的优先数有关。通常用到达时间Tarriv与协商限定时间Tneg_limit之和,称为优先因子Fprio来衡量作业的优先级,即
Fprio=Tarriv+Tneg_limit。
调度策略按如下算法执行:
Input:Texe,Tservice,ReservedTime,n(Numberofjob),j(Numberofqueue),i(Numberofjobsinqueue);Output:ProvisioningbetweenVMwithQoS Tneg_=∑Tneg; Ttotal=n×Texe; Testimate=Tnew_act+Ttotal+other_time; Tmax_limit=Tnew_act+Tneg_; if Tmax_limit≥Testimate&&Tservice≥Tmax_limitthen Allowjobtoenterintoinputqueue; else Rejectjobtoenterintoinputqueue; endif Calculatepriorityfactor; ifavailable(resources)then createVM Repeatforallqueue; Calculatepriorityi=∑Fprio; FindmaximumpriorityiforcreatingnewVMoftypei; else WaitforVMofsametypeforcompletingcurrentjob; endif
2实验仿真
采用云仿真CloudSim工具对上述提出的基于QoS的VM调配进行模拟实验,现采用100台4核CPU和4G内存的计算节点构建云计算中心。作业请求率按每秒200个请求计算,假定VM的创建与去分配时间为3 min,其服务时间约定为30 min。图2显示为加载调度策略算法与云计算自动执行时的比较结果,图2(a)为计算节点数与VM创建时间的关系,随着节点数的增加,创建时间也随之增加。图2(b)为请求服务数与模拟时间在是否加载调度策略算法的关系。表明在有调度策略算法的情况下,相同时间的基础上,服务请求的数量较一般云计算的要多。
图2 加载调度策略算法与云计算自动执行时的比较结果
3结论
云计算环境中资源与服务的调配是一个较为复杂的问题,针对云环境下可计算资源的VM回收与重构技术,以作业的分类与VM类型对应,针对优先因子的计算提出一种云环境下基于VM(的顾及SLA及QoS的资源调度策略算法,从而获得系统性能的提升。实验表明提出的资源调度算法是一种提高系统性能的有效手段,具有显著效果。下一步可以从资源分配的角度探讨资源调配策略对资源利用率与系统性能的影响。
参 考 文 献
[1]刘鹏.云计算[M].北京:电子工业出版社,2011.
[2]曾志,王晋,杜震洪,等.一种云格环境下可计算资源与服务高效调配机制[J].浙江大学学报:理学版,2014, 41(3):353-357.
[3]Xiong K,Suh S.Resource provisioning in SLA-based cluster computing[C].JSSPP'10,Berlin:Springer-Verlag,2010:1-15.
[4]Cao Z, Zegura EW. Utility Max-Min: An Application-Oriented Bandwidth Allocation Scheme[C]. In Proceedings of IEEE INFOCOM,1999: 793-801.
[5]Chassot C. Performance analysis for an IP Differentiated Services Network[C]. Proceeding of IEEE International conference communication,2002,2:976-980.
[6]Lee Y C, Wang C, Zomaya A Y, et al. Profit-driven service request scheduling in clouds. In Proceedings of the 10thIEEE/ACM International Conference on Cluster, Cloud and Grid Computing, 2010.
[7]Rodero-Merino L, Vaquero L M, Gil V, et al. From infrastructure delivery to servicemanagement in clouds. in Future Generation Computer Systems,2010, 26(8):1226-1240.
[8]Wang L,Siegel H J,Roychowdhury V R, et al.Task matching and scheduling in heterogeneous computing environments using a genetic-algorithm-based approach[J]. J Parallel Distrib Comput,1997,47:8-22.
[9]谢丽霞,严焱心. 云计算环境下的服务调度和资源调度研究[J]. 计算机应用研究,2015(2):528-531.
[10]许力,曾智斌,姚川. 云计算环境中虚拟资源分配优化策略研究[J]. 通信学报,2012(SD):9-16.
Resource Scheduling Strategy of SLA and QoS Under Cloud Computing
ZHU Qian
(Heyuan City Occupation Technical School, Heyuan 51700, China)
AbstractConsidering that cloud computing does not require users paying attention to the bottomed system implementation, we take the technology of cloud computing as currently more popular distributed computing based services. However, efficient resource allocation can reduce the excessive waste of resources, and increase user satisfaction by reducing cost, so as to improve the system performance. This paper realizes the accurate prediction on system performance with virtual technology in cloud computing platform, discussing the resource scheduling strategy based on Virtual Machine(VM) and ervice Level Agreement (SLA) in a cloud environment from the service point of view. Simulation results show that the scheduling strategy is an effective method to improve the utilization of system resources, which has a certain practical value.
Key wordscloud computing; Virtual Machine(VM); Service Level Agreement (SLA); Service Level Agreement (SLA); resource scheduling
文章编号:1009-0312(2016)01-0020-04
中图分类号:TP391
文献标识码:A
作者简介:朱倩(1982—),女,江西高安人,讲师,硕士,主要从事计算机应用研究。
收稿日期:2014-06-03