一种面向高网络通信的虚拟机调度方法及系统技术方案

技术编号:20074650 阅读:50 留言:0更新日期:2019-01-15 00:31
本发明专利技术提供一种面向高网络通信的虚拟机调度方法及系统,方法:将用户请求的一组虚拟机分配到同一个物理主机,或者分配到路由路径最短的多个物理主机;将一个物理主机的虚拟机中同另一个物理主机交互最多的虚拟机迁移至交互的物理主机。系统包括:虚拟机组分配请求获取模块、虚拟机组资源需求判断模块、最短路由路径物理主机选择模块、虚拟机组分配模块第一物理主机输入输出压力判断模块、虚拟机主机输入输出压力获取模块、虚拟机主机序列生成模块、输入输出压力最大虚拟机选择模块、交互虚拟机所在物理机判断模块、交互虚拟机所在物理机获取模块、虚拟机迁移模块以及虚拟机序列移除模块。

A Virtual Machine Scheduling Method and System for High Network Communication

The invention provides a virtual machine scheduling method and system for high network communication. The method includes assigning a group of virtual machines requested by users to the same physical host, or to multiple physical hosts with the shortest routing path, and transferring the virtual machines of one physical host that interact most with another physical host to the interactive physical host. The system includes: virtual machine allocation request acquisition module, virtual machine resource requirement judgment module, shortest path physical host selection module, virtual machine allocation module, first physical host input and output pressure judgment module, virtual machine host input and output pressure acquisition module, virtual machine host sequence generation module, input and output pressure maximum virtual machine selection module, AC The physical machine judgment module, the physical machine acquisition module, the virtual machine migration module and the virtual machine sequence removal module of the interactive virtual machine.

【技术实现步骤摘要】
一种面向高网络通信的虚拟机调度方法及系统
本专利技术属于虚拟机资源调度领域,具体涉及一种面向高网络通信的虚拟机调度方法及系统。
技术介绍
在云计算时代,越来越多的用户减少购买物理硬件,转而向数据中心租用计算资源来完成其工作任务。合理高效的将用户请求计算资源分配到云环境中,并提高物理机的资源利用率,保证虚拟机的运行性能,是数据中心管理的最重要工作。虚拟机调度是保证虚拟机运行性能的常用方法,目前该类算法主要的关注点一是减少物理服务器上的CPU、内存碎片,以容纳更多虚拟机,提高数据中心物力资源的利用率;二是预留资源,应对物理资源负载变化。然而,云计算很多应用场景中,用户任务会涉及到虚拟机之间大量的网络通信,其所在的物理服务器通过网络连接,端到端的网络通信能力随着物理机的分布存在很大差异,这种差异造成用户虚拟机性能和使用体验的下降。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种面向高网络通信的虚拟机调度方法及系统,是非常有必要的。
技术实现思路
本专利技术的目的在于,针对上述云计算中虚拟机之间的端到端的网络通信能力随着物理机的分布存在很大差异,造成用户虚拟机性能和使用体验的下降的缺陷,提供一种面向高网络通信的虚拟机调度方法及系统,以解决上述技术问题。为实现上述目的,本专利技术给出以下技术方案:一种面向高网络通信的虚拟机调度方法,将用户请求的一组虚拟机分配到同一个物理主机,或者分配到路由路径最短的多个物理主机;将一个物理主机的虚拟机中同另一个物理主机交互最多的虚拟机迁移至交互的物理主机。最短路由路径,是从一个物理主机到另一个物理主机经过的交换机或路由器数量最少。进一步地,包括如下步骤:S1.获取用户的虚拟机组分配请求;S2.判断第一物理主机是否满足虚拟机组资源需求;若否,进入步骤S3;S3.获取距离第一物理主机路由路径最短的物理主机,设定为第二物理主机;S4.将虚拟机组分配到第一物理主机和第二物理主机。此时,若是,第一物理主机和第二物理主机仍是不满足虚拟机组资源需求,需要继续获取距离第一物理主机和第二物理主机路由路径最短的其他物理主机,继续将虚拟机组分配,直至满足虚拟机的需求。进一步地,步骤S3中,当距离第一物理主机路由路径最短的物理主机数量为多个时,设定多个物理主机中物理资源多的物理主机作为第二物理主机。所述物理资源包括CPU和存储资源,即同样路由路径相同的情况下,选择速度快,内存大,硬盘大的物理主机。进一步地,步骤S2中,当第一物理主机满足虚拟机组资源需求,则进入步骤S3A;S3A.将虚拟机组分配到第一物理主机。同一个物理主机可以满足虚拟机资源分配,要分配到一个物理主机,此时,最大程度减少了虚拟机组内通信延迟和整个数据中心的通信流量。进一步地,步骤S4和S3A之后均包括如下步骤:S5.判断第一物理主机的输入输出压力是否超过阈值;若否,结束;若是,进入步骤S6;S6.获取第一物理主机上的每个虚拟机的输入输出压力;S7.将第一物理主机上的所有虚拟机按照输入输出压力大小排序,生成第一物理主机虚拟机序列;S8.从第一物理主机虚拟机序列中,选择输入输出压力最大的虚拟机,设定为第一虚拟机;S9.判断与第一虚拟机交互的虚拟机是否在第一物理主机;若否,获取与第一虚拟机交互的虚拟机所在的物理主机,设定为第三物理主机;S10.将第一虚拟机迁移至第三物理主机;返回步骤S5。监控一个物理主机的输入输出压力,超过阈值时,首先要找到造成输入输出压力超标的虚拟机以及与该虚拟机通信的虚拟机,将该虚拟机放到与其通信的虚拟机同一个物理机上,避免网络拥塞,造成虚拟机性能下降。进一步地,步骤S9中,当与第一虚拟机交互的虚拟机是在第一物理主机时,将第一虚拟机从第一物理主机虚拟机序列中去除;返回步骤S8。同一物理主机内部虚拟机之间的交互不影响物理主机输入输出压力。进一步地,步骤S10中还包括:判断第三物理主机是否满足第一虚拟机的分配需求;若是,将第一虚拟机迁移至第三物理主机;返回步骤S5;若否,获取距离第三物理主机路由路径最短的物理主机,设定为第四物理主机;将第一虚拟机迁移至第四物理主机;返回步骤S5。,当同一个物理主机不能满足时,将其放到路由路径最近的物理主机上,避免网络拥塞,造成虚拟机性能下降。本专利技术还给出如下技术方案:一种面向高网络通信的虚拟机调度系统,包括虚拟机组分配请求获取模块,用于获取用户的虚拟机组分配请求;虚拟机组资源需求判断模块,用于判断第一物理主机是否满足虚拟机组资源需求;最短路由路径物理主机选择模块,用于当第一物理主机不满足虚拟机组资源需求时,获取距离第一物理主机路由路径最短的物理主机,设定为第二物理主机;虚拟机组分配模块,用于当第一物理主机不满足虚拟机组资源需求时,将虚拟机组分配到第一物理主机和第二物理主机,或者,当第一物理主机满足虚拟机组资源需求时,将虚拟机组分配到第一物理主机;其中第二物理主机距第一物理主机路由路径最短。进一步地,还包括:第一物理主机输入输出压力判断模块,用于判断第一物理主机的输入输出压力是否超过阈值;虚拟机主机输入输出压力获取模块,用于获取第一物理主机上的每个虚拟机的输入输出压力;虚拟机主机序列生成模块,用于将第一物理主机上的所有虚拟机按照输入输出压力大小排序,生成第一物理主机虚拟机序列;输入输出压力最大虚拟机选择模块,用于从第一物理主机虚拟机序列中,选择输入输出压力最大的虚拟机,设定为第一虚拟机;交互虚拟机所在物理机判断模块,用于判断与第一虚拟机交互的虚拟机是否在第一物理主机;交互虚拟机所在物理机获取模块,用于当与第一虚拟机交互的虚拟机不在第一物理主机时,获取与第一虚拟机交互的虚拟机所在的物理主机,设定为第三物理主机;虚拟机迁移模块,用于将第一虚拟机从原来所在的第一物理主机迁移至第三物理主机;虚拟机序列移除模块,用于当与第一虚拟机交互的虚拟机是在第一物理主机时,将第一虚拟机从第一物理主机虚拟机序列中去除。进一步地,最短路由路径物理主机选择模块中,当距离第一物理主机路由路径最短的物理主机数量为多个时,设定多个物理主机中物理资源多的物理主机作为第二物理主机。进一步地,所述物理资源包括CPU和存储资源。本专利技术的有益效果在于:本专利技术将虚拟机之间的网络通信能力作为调度的参考因素,将同一组通信需求高的虚拟机尽量分配到同一个物理主机,当物理主机通信压力超标,将通信需求高的虚拟机迁移,提高虚拟机之间的网络通信带宽,降低通信时延,从而减少网络阻塞和整个数据中心的通信流量,提高虚拟机性能。此外,本专利技术设计原理可靠,结构简单,具有非常广泛的应用前景。由此可见,本专利技术与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。附图说明图1为本专利技术的流程图;图2为虚拟机组按最短路由路径分配到物理主机的示意图;图3为将同其他物理机交互多的虚拟机迁移的示意图;图4为本专利技术的系统示意图;其中,1-虚拟机组分配请求获取模块;2-虚拟机组资源需求判断模块;3-最短路由路径物理主机选择模块;4-虚拟机组分配模块;5-第一物理主机输入输出压力判断模块;6-虚拟机主机输入输出压力获取模块;7-虚拟机主机序列生成模块;8-输入输出压力最大虚拟机选择模块;9-交互虚拟机所在物理机判断模块;10-交互虚拟机所在物理机获本文档来自技高网...

【技术保护点】
1.一种面向高网络通信的虚拟机调度方法,其特征在于,将用户请求的一组虚拟机分配到同一个物理主机,或者分配到路由路径最短的多个物理主机;将一个物理主机的虚拟机中同另一个物理主机交互最多的虚拟机迁移至交互的物理主机。

【技术特征摘要】
1.一种面向高网络通信的虚拟机调度方法,其特征在于,将用户请求的一组虚拟机分配到同一个物理主机,或者分配到路由路径最短的多个物理主机;将一个物理主机的虚拟机中同另一个物理主机交互最多的虚拟机迁移至交互的物理主机。2.如权利要求1所述的一种面向高网络通信的虚拟机调度方法,其特征在于,包括如下步骤:S1.获取用户的虚拟机组分配请求;S2.判断第一物理主机是否满足虚拟机组资源需求;若否,进入步骤S3;S3.获取距离第一物理主机路由路径最短的物理主机,设定为第二物理主机;S4.将虚拟机组分配到第一物理主机和第二物理主机。3.如权利要求2所述的一种面向高网络通信的虚拟机调度方法,其特征在于,步骤S3中,当距离第一物理主机路由路径最短的物理主机数量为多个时,设定多个物理主机中物理资源多的物理主机作为第二物理主机。4.如权利要求2所述的一种面向高网络通信的虚拟机调度方法,其特征在于,步骤S2中,当第一物理主机满足虚拟机组资源需求,则进入步骤S3A;S3A.将虚拟机组分配到第一物理主机。5.如权利要求4所述的一种面向高网络通信的虚拟机调度方法,其特征在于,步骤S4和S3A之后均包括如下步骤:S5.判断第一物理主机的输入输出压力是否超过阈值;若否,结束;若是,进入步骤S6;S6.获取第一物理主机上的每个虚拟机的输入输出压力;S7.将第一物理主机上的所有虚拟机按照输入输出压力大小排序,生成第一物理主机虚拟机序列;S8.从第一物理主机虚拟机序列中,选择输入输出压力最大的虚拟机,设定为第一虚拟机;S9.判断与第一虚拟机交互的虚拟机是否在第一物理主机;若否,获取与第一虚拟机交互的虚拟机所在的物理主机,设定为第三物理主机;S10.将第一虚拟机迁移至第三物理主机;返回步骤S5。6.如权利要求5所述的一种面向高网络通信的虚拟机调度方法,其特征在于,步骤S9中,当与第一虚拟机交互的虚拟机是在第一物理主机时,将第一虚拟机从第一物理主机虚拟机序列中去除;返回步骤S8。7.如权利要求5所述的一种面向高网络通信的虚拟机调度方法,其特征在于,步骤S10中还包括:判断第三物理主机是否满足第一虚拟机的分配需求;若是,将第一虚拟机迁移至第三物理主机;返回步骤S5...

【专利技术属性】
技术研发人员:李青
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1