一种制定虚拟机部署策略的方法及装置制造方法及图纸

技术编号:13031616 阅读:67 留言:0更新日期:2016-03-17 02:59
本发明专利技术提供了一种制定虚拟机部署策略的方法,用于获得将多个虚拟机部署到多个物理机中的部署策略,根据当前网络状态构造流量需求矩阵和网络代价矩阵;根据所述流量需求矩阵,计算出所述多个虚拟机中每个虚拟机与其他至少一个虚拟机之间流量需求的最大流;根据所述虚拟机之间的流量需求最大流和所述网络代价矩阵,获得将所述多个虚拟机部署在所述多个物理机中的部署策略。应用本发明专利技术技术方案,可以得到流量需求的最大流大的两个虚拟机所在的物理机之间的通信代价尽可能的小的部署策略,因此,可以减少虚拟机时间网络传输所需要的网络资源,从而节省了物理机的网络资源消耗,提高了系统整体的资源利用率。

【技术实现步骤摘要】

本专利技术设及虚拟机
,具体设及一种制定将多个虚拟机部署到多个物理机 中的部署策略方法和装置。
技术介绍
网络功能虚拟化(NetworkF^mctionsVirtualization,NFV)通过虚拟化的硬件 设备,将网络功能从其所运行的专用硬件设备中分离出来,通过使用X86等通用性硬件W 及虚拟化技术,来承载运些功能,使网络设备功能不再依赖于专用硬件,从而降低网络昂贵 的设备成本。 在NFV场景下,虚拟化网络功能在云计算平台中部署,最重要的一个问题就是虚 拟机的部署问题。根据网络、计算等维度的业务资源诉求,将虚拟机部署到最佳的物理机 上,是一个十分重要的问题。一个好的部署方案可W提升系统整体的资源利用率、减少网络 流量和网络延时,而一个差的部署方案,可能会导致负载失衡,系统出现热点,网络延时增 加、数据丢失甚至业务中断。 现有技术中提供了一些虚拟机部署的方案。例如VMware的分布式资源调度技术 (distributedresourcescheduling,DRS),将多个物理主机构成的集群作为一个资源池, 对CPU、内存、存储等计算和存储资源进行控制的管理,并为虚拟机智能地分配合适的资源。 但是,DRS技术并没有对网络代价和网络流量需求作为考虑因素进行控制和管理,因此,可 能出现网络负载失衡,导致网络资源的浪费和网络延迟的增加,影响虚拟机集群的性能。
技术实现思路
本专利技术实施例提供了一种虚拟机部署策略制定的方法,用于制定将多个虚拟机部 署到多个物理机中的部署策略。本专利技术实施例还提供了与之相应的设备,W实现将最大流 较大的虚拟机部署在通信代价较小的物理机中,从而更好地利用网络资源,提高虚拟机集 群的性能。 第一方面,本专利技术实施例提供了一种虚拟机部署策略制定的方法,根据当前网络 状态构造流量需求矩阵和网络代价矩阵,所述流量需求矩阵包含所述多个虚拟机中每个虚 拟机与其他虚拟机之间的网络流量需求,所述网络代价矩阵包含所述多个物理机中每个物 理机与其他物理机之间最短网络路径的通信代价;根据所述流量需求矩阵,计算出所述多 个虚拟机中每个虚拟机与其他至少一个虚拟机之间流量需求的最大流;根据所述虚拟机之 间的流量需求最大流和所述网络代价矩阵,获得将所述多个虚拟机部署在所述多个物理机 中的部署策略,所述部署策略使流量需求的最大流较大的虚拟机部署在通信代价较小的物 理机中。 在一种可能的设计中,根据所述流量需求矩阵的密度,选择采用并行方式或者串 行方式根据所述流量需求矩阵计算出所述多个虚拟机中每个虚拟机与其他虚拟机之间流 量需求的最大流。 在一种可能的设计中,根据所述流量需求矩阵的密度,确定所述密度是否满足预 设的条件,如果是,则根据所述流量需求矩阵采用并行方式计算出多个虚拟机中每个虚拟 机与其他虚拟机之间流量需求的最大流;否则,根据所述流量需求矩阵采用串行方式计算 出多个虚拟机中每个虚拟机之间流量需求的最大流。 在一种可能的设计中,所述流量需求矩阵为nXn的矩阵,矩阵中非零元素个数q, 确定所述密度是否满足预设的条件为:e〉nlogn。 在一种可能的设计中,所述流量需求矩阵为nXn的矩阵,矩阵中非零元素个数q; 定义流量需求矩阵的密度值d=q/(nXn);所述预设的条件为所述密度值d大于预先设定 值。 在一种可能的设计中,将所述多个虚拟机部署在所述多个物理机中的部署策略可 W是a)选择虚拟机之间的网络流量需求的最大流最大的两个虚拟机中的任意一个虚拟 机,根据所述网络代价矩阵,选择物理机之间最短网络路径的通信代价最小的两个物理机 中的任意一个物理机,确定将所述虚拟机部署在所述物理机中;b)选取一个已经确定部署 的虚拟机A,获取所述与虚拟机A之间的网络流量需求的最大流最大的虚拟机B,确定将所 述虚拟机B部署到可部署的物理机中与部署了所述虚拟机A的物理机通信代价最小的物理 机中,重复b)步骤,直到所有的虚拟机均确定要部署到的物理机,从而获得将所述多个虚 拟机部署在所述多个物理机中的部署策略。 在一种可能的设计中,获取确定部署了所述虚拟机A的物理机的剩余资源信息, 如果所述物理机剩余资源足W部署所述虚拟机B,确定将所述虚拟机B部署在所述物理机 中,如果所述物理机剩余资源不足W部署所述虚拟机B,则确定将所述虚拟机B部署在于所 述物理机通信代价最小的其他物理机中。 在一种可能的设计中,并行方式计算最大流时,选择任意一个虚拟机作为中屯、节 点,其他虚拟机作为与该中屯、节点相连接的叶子节点,构造一个星型树;启动多个线程,其 中,a)每个线程选取所述最大流树中一个叶子节点,根据所述流量需求矩阵并行计算出所 述叶子节点与与所述叶子节点相连接的节点之间的最大流,并根据所述最大流更新所述最 大流树;所述每个线程重复a)步骤直到最大流树中全部叶子节点均被进程选取,从而构造 出所述虚拟机流量需求最大流树;所述虚拟机流量需求最大流树包含了所述虚拟机与其他 虚拟机之间流量需求的最大流。 在一种可能的设计中,所述叶子节点编号为2至n,所述步骤a)中选取的叶子节点 为S,与所述叶子节点相连接的节点为t;所述根据所述最大流更新所述最大流树包括:根 据所述最大流,将最大流标注在所述节点S与所述节点t的链路上,并得到所述节点S与所 述节点t的最小割;依次判断编号大于所述节点S编号的其他叶子节点,若所述其他叶子节 点与所述节点t相邻,且所述其他叶子节点与所述叶子节点S在同一个割集中,则删除所述 最大流树中所述其他叶子节点与所述节点t之间的链路,增加所述其他叶子节点与所述节 点S之间的链路。 在一种可能的设计中,构造网络代价矩阵时,获取物理机网络拓扑信息;根据所述 物理机网络拓扑信息,获得所述多个物理机之间的最短路径信息,所述最短路径信息包括 物理机之间的链路数量;根据所述物理机之间的链路数量和所述链路的链路带宽信息,确 定所述多个物理机之间的通信代价;根据所述通信代价,构造网络代价矩阵。 在一种可能的设计中,根据所述最短路径信息和带宽状态信息,确定所述多个物 理机之间的通信代价时,所述最短路径信息包括链路数量m和每条条链路的带宽C,所述链 路带宽信息包含每条链路的剩余带宽b,所述物理机两两之间的通信代价R根据如下公式 获得:二w;xW+ ("2X 的化)a其中,bk为所述最短路径上第k条链路的剩余带宽,Ck 为所述最短路径上第k条链路的带宽,《1,CO2为预设的加权系数。 第二方面,本专利技术还提供了一种虚拟机部署策略制定的设备,本专利技术实施例提供 了一种虚拟机备份装置,所述装置用于指定虚拟机部署策略,该装置具有实现上述方法中 备端虚拟机行为的功能。所述功能可W通过硬件实现,也可W通过硬件执行相应的软件实 现。所述硬件或软件包括一个或多个与上述功能相对应的模块。其中,数据处理模块用于 用于根据当前网络状态构造流量需求矩阵和网络代价矩阵,最大流计算模块用于计算出所 述多个虚拟机中每个虚拟机与其他至少一个虚拟机之间流量需求的最大流,最大流最小代 价匹配模块用于根据所述虚拟机之间的流量需求最大流和所述网络代价矩阵。 又一方面,本专利技术实施例提供了一种制定虚拟机部署策略的装置,装置的结构中 包括处理器,所述处理器被配置为支持装置执行上述方法中本文档来自技高网...

【技术保护点】
一种虚拟机部署策略制定的方法,用于制定将多个虚拟机部署到多个物理机中的部署策略,其特征在于,所述方法包括:根据当前网络状态构造流量需求矩阵和网络代价矩阵,所述流量需求矩阵包含所述多个虚拟机中每个虚拟机与其他虚拟机之间的网络流量需求,所述网络代价矩阵包含所述多个物理机中每个物理机与其他物理机之间最短网络路径的通信代价;根据所述流量需求矩阵,计算出所述多个虚拟机中每个虚拟机与其他至少一个虚拟机之间流量需求的最大流;根据所述虚拟机之间的流量需求最大流和所述网络代价矩阵,获得将所述多个虚拟机部署在所述多个物理机中的部署策略,所述部署策略使流量需求的最大流较大的虚拟机部署在通信代价较小的物理机中。

【技术特征摘要】

【专利技术属性】
技术研发人员:于璠杜树宝周伟
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1