一种批量虚拟机的调度方法及装置制造方法及图纸

技术编号:8323264 阅读:223 留言:0更新日期:2013-02-14 00:15
本发明专利技术实施例公开了一种批量虚拟机的调度方法及装置。该方法包括:获取用户提交的待部署的批量虚拟机的个数和所述批量虚拟机的配置文件;所述批量虚拟机的配置文件包括:单个虚拟机所需的内存和硬盘大小;将所述批量虚拟机的配置文件信息作为过滤条件,从物理服务器池过滤掉不符合所述过滤条件的物理服务器以得到候选物理服务器集合;依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值;依据所述初始调度开销值实现所述批量虚拟机的调度。本发明专利技术实施例可以提高虚拟机调度的部署时间效率。

【技术实现步骤摘要】

本申请涉及云计算领域,特别涉及一种云计算系统中批量虚拟机的调度方法及装置
技术介绍
云计算(cloud computing)是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。在云计算系统中,由调度系统将批量部署虚拟机的请求分发给相应的物理服务器,在这个过程中,首先要保证物理服务器资源的均衡使用,避免某些物理服务器资源被大量使用而其他物理服务器资源大量闲置的情况;其次结合具体的用户需求和应用场景,比如高密集型计算类型的虚拟机应当部署在CPU使用率相对低的物理服务器上;最后,应保证批量虚机的部署操作并行性高,使部 署任务尽可能分散给不同物理服务器,从而使当前部署任务的时间开销尽量小。现有技术中对批量虚拟机进行调度分为两个阶段第一个阶段是虚拟机部署过程中的调度,第二个阶段是物理服务器集群运行过程中,虚拟机的热迁移。第一个阶段注重物理服务器资源的均衡使用,第二个阶段注重物理服务器池的负载均衡。其中,第一阶段在对虚拟机进行部署时,可先根据可用硬盘大小、可用内存大小等硬性条件过滤初始物理服务器,再从候选物理服务器中选取目标物理服务器,一般是从候选物理服务器中随机选取一台物理服务器作为当前待部署虚拟机的目标服务器。第二阶段是虚拟机初步部署完成后,在实际运行环境中,通过热迁移调整虚拟机与物理服务器之间的映射关系。根据各物理服务器的性能数据,可以量化地分析物理服务器池整体负载情况,当个别物理服务器的负载远远大于其他物理服务器时,调度系统将该物理服务器上的虚拟机通过热迁移的方式转移到负载相对低的物理服务器上。专利技术人在研究过程中发现,在第一阶段中,对待部署虚拟机的调度时,对于批量虚拟机的每一个虚拟机,均需要遍历候选物理服务器集合,从而能从中选出负载最小的物理服务器部署当前虚拟机。假如需部署M个虚拟机,服务器池中含有N个服务器,此时调度的最小时间复杂度是0(Μ*Ν),当物理服务器池中的物理服务器数量较大时,这是一个比较大的时间开销。而在第二阶段中,虽然热迁移使得服务器池的负载实现动态均衡,并且用户在使用虚机过程中并不会受到底层虚机漂移的影响,但热迁移的弊端是在迁移过程中,大量占用带宽,一段时间内影响其他应用的网络传输。因此热迁移虽然以动态方式增强了虚拟机调度效果,但在实际应用场景中,为保证服务的稳定性和系统安全,应尽量避免在虚拟机运行时的迁移,而更多地侧重于虚拟机部署开始前的调度。
技术实现思路
为解决上述技术问题,本申请实施例提供了一种批量虚拟机的调度方法及其相应装置,以减小批量虚拟机的调度空间,进而提高海量小文件的访问效率。本申请实施例提供的批量虚拟机的调度方法包括获取用户提交的待部署的批量虚拟机的个数、所述批量虚拟机的配置文件;所述配置文件包括单个虚拟机所需的内存和硬盘大小;将所述批量虚拟机的配置文件作为过滤条件,从物理服务器池过滤掉不符合所述过滤条件的物理服务器以得到候选物理服务器集合;依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值;依据所述初始调度开销值实现所述批量虚拟机的调度。优选的,所述依据所述初始调度开销值实现所述批量虚拟机的调度,包括依据所述初始调度开销值建立与所述候选物理服务器集合对应的初始最小堆;依据所述初始最小堆的堆顶元素依次对所述批量虚拟机中的各个虚拟机进行调·度。优选的,所述依据所述初始最小堆的堆顶元素依次对所述批量虚拟机中的各个虚拟机进行调度,包括获取所述批量虚拟机中的任一虚拟机作为当前虚拟机,以所述初始最小堆作为当前最小堆;依据所述当前虚拟机和所述当前最小堆触发循环调度流程,所述循环调度流程包括获取所述当前最小堆的堆顶元素对应的堆顶物理服务器;将所述堆顶物理服务器的初始可用分配资源减去所述当前虚拟机消耗的分配资源,得到所述堆顶物理服务器在下一个虚拟机调度时的可用分配资源;判断所述堆顶服务器在下一个虚拟机调度时的可用分配资源是否大于至少一个其他虚拟机需消耗的分配资源,如果否,则将所述堆顶服务器从所述初始最小堆中删除,并依据所述候选物理服务器集合中除了所述堆顶服务器之外的其他候选物理服务器的当前调度开销值更新所述初始最小堆以得到更新的最小堆,并确定所述批量虚拟机中的其他任一未被调度的虚拟机作为当前虚拟机,以及确定所述更新的最小堆作为当前最小堆,触发所述循环调度流程;如果是,则依据所述堆顶服务器的当前调度开销值更新所述初始最小堆得到更新的最小堆;并确定所述批量虚拟机中的其他任一未被调度的虚拟机作为当前虚拟机,以及确定所述更新的最小堆作为当前最小堆,触发所述循环调度流程。优选的,所述虚拟机调度参数包括CPU使用率、内存使用率、磁盘IO字节数、网卡IO字节数和待部署虚拟机个数;则依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值,包括获取物理服务器的调度开销值计算公式,所述调度开销值计算公式为调度开销值=CPU使用率*第一权重系数+内存使用率*第二权重系数+磁盘IO字节数*第三权重系数+网卡IO字节数*第四权重系数+当前待部署虚拟机个数*第五权重系数;其中,所述“CPU使用率*第一权重系数”、“内存使用率*第二权重系数”、“磁盘IO字节数*第三权重系数”、“网卡IO字节数*第四权重系数”和“当前待部署虚拟机个数*第五权重系数”的数量级一致;采用所述调度开销值计算公式计算各个物理服务器的初始调度开销值。优选的,还包括获取用户提交的所述批量虚拟机的部署策略,所述部署策略包括需调整所述第一权重系数的低CPU使用率优先的策略,需调整所述第二权重系数的低内存使用率优先的策略,需调整所述第三权重系数的低磁盘IO字节数优先的策略,需调整所述第四权重系数的低网卡IO字节数优先的策略,或者,需调整所述第五权重系数的部署操作低延迟优先的策略;则所述依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值,包括依据所述部署策略调整所述调度开销值计算公式中的第一权重系数、第二权重系数、第三权重系数、第四权重系数或第五权重系数;采用调整之后的调度开销值计算公式计算各个物理服务器的初始调度开销值。 本申请实施例提供的批量虚拟机的调度装置包括接收单元,用于获取用户提交的待部署的批量虚拟机的个数和所述批量虚拟机的配置文件;所述配置文件包括单个虚拟机所需的内存和硬盘大小;过滤单元,用于将所述批量虚拟机的配置文件作为过滤条件,从物理服务器池过滤掉不符合所述过滤条件的物理服务器以得到候选物理服务器集合;计算单元,用于依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值;调度单元,用于依据所述初始调度开销值实现所述批量虚拟机的调度。优选的,所述调度单元包括建立模块,用于依据所述初始调度开销值建立与所述候选物理服务器集合对应的初始最小堆;调度模块,用于依据所述初始最小堆的堆顶元素依次对所述批量虚拟机中的各个虚拟机进行调度。优选的,所述调度模块包括获取子模块,用于获取所述批量虚拟机中的任一虚拟机作为当前虚拟机,以所述初始最小堆作为当前最小堆;调度执行子模块,用于依据所述当前本文档来自技高网
...

【技术保护点】
一种批量虚拟机的调度方法,其特征在于,所述方法包括:获取用户提交的待部署的批量虚拟机的个数、所述批量虚拟机的配置文件;所述配置文件包括:单个虚拟机所需的内存和硬盘大小;将所述批量虚拟机的配置文件作为过滤条件,从物理服务器池过滤掉不符合所述过滤条件的物理服务器以得到候选物理服务器集合;依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值;依据所述初始调度开销值实现所述批量虚拟机的调度。

【技术特征摘要】
1.一种批量虚拟机的调度方法,其特征在于,所述方法包括 获取用户提交的待部署的批量虚拟机的个数、所述批量虚拟机的配置文件;所述配置文件包括单个虚拟机所需的内存和硬盘大小; 将所述批量虚拟机的配置文件作为过滤条件,从物理服务器池过滤掉不符合所述过滤条件的物理服务器以得到候选物理服务器集合; 依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值; 依据所述初始调度开销值实现所述批量虚拟机的调度。2.根据权利要求I所述的方法,其特征在于,所述依据所述初始调度开销值实现所述批量虚拟机的调度,包括 依据所述初始调度开销值建立与所述候选物理服务器集合对应的初始最小堆; 依据所述初始最小堆的堆顶元素依次对所述批量虚拟机中的各个虚拟机进行调度。3.根据权利要求2所述的方法,其特征在于,所述依据所述初始最小堆的堆顶元素依次对所述批量虚拟机中的各个虚拟机进行调度,包括 获取所述批量虚拟机中的任一虚拟机作为当前虚拟机,以所述初始最小堆作为当前最小堆; 依据所述当前虚拟机和所述当前最小堆触发循环调度流程,所述循环调度流程包括 获取所述当前最小堆的堆顶元素对应的堆顶物理服务器; 将所述堆顶物理服务器的初始可用分配资源减去所述当前虚拟机消耗的分配资源,得到所述堆顶物理服务器在下一个虚拟机调度时的可用分配资源; 判断所述堆顶服务器在下一个虚拟机调度时的可用分配资源是否大于至少一个其他虚拟机需消耗的分配资源,如果否,则将所述堆顶服务器从所述初始最小堆中删除,并依据所述候选物理服务器集合中除了所述堆顶服务器之外的其他候选物理服务器的当前调度开销值更新所述初始最小堆以得到更新的最小堆,并确定所述批量虚拟机中的其他任一未被调度的虚拟机作为当前虚拟机,以及确定所述更新的最小堆作为当前最小堆,触发所述循环调度流程; 如果是,则依据所述堆顶服务器的当前调度开销值更新所述初始最小堆得到更新的最小堆;并确定所述批量虚拟机中的其他任一未被调度的虚拟机作为当前虚拟机,以及确定所述更新的最小堆作为当前最小堆,触发所述循环调度流程。4.根据权利要求I至3中任何一项所述的方法,其特征在于,所述虚拟机调度参数包括=CPU使用率、内存使用率、磁盘IO字节数、网卡IO字节数和待部署虚拟机个数;则依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值,包括 获取物理服务器的调度开销值计算公式,所述调度开销值计算公式为调度开销值=CPU使用率*第一权重系数+内存使用率*第二权重系数+磁盘IO字节数*第三权重系数+网卡IO字节数*第四权重系数+当前待部署虚拟机个数*第五权重系数; 其中,所述“CPU使用率*第一权重系数”、“内存使用率*第二权重系数”、“磁盘IO字节数*第三权重系数”、“网卡IO字节数*第四权重系数”和“当前待部署虚拟机个数*第五权重系数”的数量级一致;采用所述调度开销值计算公式计算各个物理服务器的初始调度开销值。5.根据权利要求4所述的方法,其特征在于,还包括 获取用户提交的所述批量虚拟机的部署策略,所述部署策略包括需调整所述第一权重系数的低CPU使用率优先的策略,需调整所述第二权重系数的低内存使用率优先的策略,需调整所述第三权重系数的低磁盘IO字节数优先的策略,需调整所述第四权重系数的低网卡IO字节数优先的策略,或者,需调整所述第五权重系数的部署操作低延迟优先的策略; 则所述依据所述候选物理服务器集合中各个候选物理服务器的虚拟机调度参数计算所述各个候选物理服务器的初始调度开销值,包括 依据所述部署策略调整所述调度开销值计算公式中的第一权重系数、第二权重系数、第三权重系数、第四权重系数或第五权重系数; 采用调整之后的调度开...

【专利技术属性】
技术研发人员:周星王蕾王帅
申请(专利权)人:北京搜狐新媒体信息技术有限公司
类型:发明
国别省市:

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

1