一种云平台下IO密集型应用的虚拟机调度方法技术

技术编号:13332809 阅读:50 留言:0更新日期:2016-07-12 02:15
本发明专利技术提出一种云平台下IO密集型应用的虚拟机调度方法,包括:设定阈值区间[M,N];S2:设定每台物理主机运行IO密集型应用的效率;预设4个集合表T1‑T4,初始化集合表T1‑T4;持续等待IO密集型应用,若出现IO密集型应用,则在等待新IO密集型应用的同时进入步骤S5;S5:判断集合表T1是否为空,如果不为空,则将该IO密集型应用分配给所述集合表T1中的物理主机所开启的虚拟机中运行,对该物理主机进行负载判定,进入步骤S6;S6:判断集合表T4是否为空,如果不为空,则将该IO密集型应用分配给该新启动的物理主机所开启的虚拟机中运行,对该物理主机进行负载判定。本发明专利技术针对IO密集型应用,虚拟机能够实时分配给物理主机,保证物理主机的使用总数最小。

【技术实现步骤摘要】

本专利技术涉及云计算领域,特别涉及的是云平台下IO密集型(IOBoundApplication)应用的虚拟机调度方法。
技术介绍
云计算的出现改变了传统数据中心的运作方式,在社会的各个方面都产生了巨大的影响。越来越多的数据中心,通过虚拟化技术提供了强大的资源池,比如CPU、Memory(存储器)、Bandwidth(带宽)等。但是,如何更加有效地提升云计算的资源使用效率和降低能耗,则成为目前研究的热点领域之一。虚拟化技术是构建云基础架构不可或缺的关键技术之一。目前对于云计算数据中心来说,运用虚拟化技术方面,提高资源的利用率和应用的处理效率,主要从两方面考虑:1)负载均衡,把用户的请求以虚拟机的形式,平均分配给所有服务器,使得云数据中心的物理服务器的负载保持均衡状态,目的在于保证应用处理的效率;2)合并虚拟机,尽可能多地把虚拟机合并部署在尽可能少的物理服务器上,充分利用物理服务器的资源,减少使用物理服务器的数量,以此降低整个云计算数据中心的能耗。在CloudStack(云操作系统的一种)系统平台中,典型的资源调度策略为FirstFit策略,在对用户指定的集群、主机列表进行排序选择集群或主机时,直接用符合要求的集群或主机的第一个作为虚拟机分配或部署的目标,但是应用的处理效率依然较低。
技术实现思路
本专利技术所要解决的目的是提供一种云平台下IO密集型应用的虚拟机调度方法,针对IO密集型应用,使得虚拟机能够实时分配给物理主机,同时保证物理主机的使用总数最小,提升云数据中心处理IO密集型应用的效率并在一定程度上降低其处理能耗。为解决上述问题,本专利技术提出一种云平台下IO密集型应用的虚拟机调度方法,包括以下步骤:S1:设定阈值区间[M,N],其中N为IO密集型应用的在效率合理范围内虚拟机个数的最大临界值,M为最大化利用资源时虚拟机个数的临界值;S2:设定每台物理主机运行IO密集型应用的效率EIO,其中, E I O = 1 , M ≤ k I O ≤ N 0 , k I O < M - 1 , k I O > N , ]]>kIO表示实际运行IO密集型应用的虚拟机个数;S3:预设4个集合表T1-T4,初始化集合表T1-T4,其中,集合表T1为EIO=0的物理主机集合;集合表T1为EIO=1的物理主机集合;集合表T1为EIO=-1的物理主机集合;集合表T1为未开启的物理主机集合;S4:持续等待IO密集型应用,若出现IO密集型应用,则在等待新IO密集型应用的同时进入步骤S5;S5:判断集合表T1是否为空,如果为空,则进入步骤S6;如果不为空,则将该IO密集型应用分配给所述集合表T1中的物理主机所开启的虚拟机中运行,更新集合表T1-T4,对该物理主机进行负载判定,在负载使得效率EIO不在预设范围内时迁移出一定量的虚拟机,进入步骤S6;S6:判断集合表T4是否为空,如果为空,则拒绝分配物理主机,等待处理所述新IO密集型应用,返回步骤S5;如果不为空,则启动一台新的物理主机,并更新集合表T1-T4,并将该IO密集型应用分配给该新启动的物理主机所开启的虚拟机中运行,对该物理主机进行负载判定,在负载使得效率EIO不在预设范围内时迁移出一定量的虚拟机。根据本专利技术的一个实施例,在步骤S1中,定义一个五元组阈值判定模型T,综合衡量IO负载,从而确定物理主机能够承受IO密集型应用的虚拟机个数的阈值区间,T={loadavg,run,avgqu,util,contexts本文档来自技高网...

【技术保护点】
一种云平台下IO密集型应用的虚拟机调度方法,其特征在于,包括以下步骤:S1:设定阈值区间[M,N],其中N为IO密集型应用的在效率合理范围内虚拟机个数的最大临界值,M为最大化利用资源时虚拟机个数的临界值;S2:设定每台物理主机运行IO密集型应用的效率EIO,其中,EIO=1,M≤kIO≤N0,kIO<M-1,kIO>N,]]>kIO表示实际运行IO密集型应用的虚拟机个数;S3:预设4个集合表T1‑T4,初始化集合表T1‑T4,其中,集合表T1为EIO=0的物理主机集合;集合表T1为EIO=1的物理主机集合;集合表T1为EIO=‑1的物理主机集合;集合表T1为未开启的物理主机集合;S4:持续等待IO密集型应用,若出现IO密集型应用,则在等待新IO密集型应用的同时进入步骤S5;S5:判断集合表T1是否为空,如果为空,则进入步骤S6;如果不为空,则将该IO密集型应用分配给所述集合表T1中的物理主机所开启的虚拟机中运行,更新集合表T1‑T4,对该物理主机进行负载判定,在负载使得效率EIO不在预设范围内时迁移出一定量的虚拟机,进入步骤S6;S6:判断集合表T4是否为空,如果为空,则拒绝分配物理主机,等待处理所述新IO密集型应用,返回步骤S5;如果不为空,则启动一台新的物理主机,并更新集合表T1‑T4,并将该IO密集型应用分配给该新启动的物理主机所开启的虚拟机中运行,对该物理主机进行负载判定,在负载使得效率EIO不在预设范围内时迁移出一定量的虚拟机。...

【技术特征摘要】
1.一种云平台下IO密集型应用的虚拟机调度方法,其特征在于,包括以下步骤:
S1:设定阈值区间[M,N],其中N为IO密集型应用的在效率合理范围内虚拟机个数的最
大临界值,M为最大化利用资源时虚拟机个数的临界值;
S2:设定每台物理主机运行IO密集型应用的效率EIO,其中, E I O = 1 , M ≤ k I O ≤ N 0 , k I O < M - 1 , k ...

【专利技术属性】
技术研发人员:卞治权林伟赵鹏飞
申请(专利权)人:上海应用技术学院
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1