一种基于组合优化的虚拟机调度方法.pdf

上传人:a*** 文档编号:4042428 上传时间:2018-08-12 格式:PDF 页数:17 大小:964.09KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410814536.7

申请日:

2014.12.23

公开号:

CN104536803A

公开日:

2015.04.22

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 9/455申请公布日:20150422|||实质审查的生效IPC(主分类):G06F 9/455申请日:20141223|||公开

IPC分类号:

G06F9/455; G06F9/50

主分类号:

G06F9/455

申请人:

西安电子科技大学

发明人:

马建峰; 刘旭启; 李金库; 卢笛

地址:

710071陕西省西安市太白南路2号

优先权:

专利代理机构:

西安通大专利代理有限责任公司61200

代理人:

徐文权

PDF下载: PDF下载
内容摘要

本发明公开了一种基于组合优化的虚拟机调度方法,该方法可用于虚拟集群中实时的虚拟机调度决策,能够根据虚拟集群当前的资源使用情况实时地决策虚拟机的开启位置,使得被占用的物理主机的数量最小,这样既可以提高资源利用率又可以减少能源的消耗。本发明所涉及的虚拟机调度方法采用简单的数学计算,可在有限次比较次数内获得调度结果,比较次数与虚拟机种类以及物理主机种类有关。与传统解决组合优化问题时所采用的人工智能算法相比,本发明所涉及的虚拟机调度方法具有较高的实时性,可以实时决策出虚拟机的放置位置,满足对虚拟机调度系统高实时性的要求。

权利要求书

权利要求书
1.  一种基于组合优化的虚拟机调度方法,其特征在于,包括以下步骤:
1)集群状态建模
1.1)统计集群中资源种类数量N,并为每种资源编号,依次为1~N;
1.2)统计集群中物理主机的资源向量,每一台物理主机均提供N种资源供 运行在该主机上的多台虚拟机共享;
1.3)对虚拟机进行分类,统计虚拟机的种类总数I,并为每一种虚拟机类型 进行编号,依次为1~I;
1.4)统计每种虚拟机对资源的请求,每种虚拟机对资源的请求均为一个N 维的向量,与物理主机的资源向量对应;
1.5)计算物理主机能够同时运行的虚拟机的组合种类,使用一个I维的向 量k表示物理主机的负载情况;
1.6)将集群中的物理主机按资源配置向量分类,统计各种资源配置物理主 机的数量;其中,资源配置为k的物理主机的数量为Xk;所有Xk组成一个|K| 维的向量X,X为集群状态向量;
2)虚拟机调度
2.1)解析虚拟机请求,获得虚拟机所属的种类编号i;
2.2)构造一个权重函数:
w r ( X ) = min ( 1 , X r p ) ]]>
其中r为系统中虚拟机的总数,p为一常数且p∈(1/2,1);wr(X)的反导函数 为:
f r ( X ) = X 2 2 r p , ifX ∈ [ 0 , r p ] ; X - r p 2 , ifX > r p . ]]>
定义近似函数Fr(X)=∑k∈Kfr(Xk),近似地表示物理主机的数量总和 ∑k∈KXk;
2.3)k为集合K中的元素,集群中资源配置向量为k的物理主机数量为Xk; 向量ei也是一个资源配置向量,是集合K中的单位向量,表示仅有一台类型为 i的虚拟机;向量k-ei与向量k的分别表示物理主机在虚拟机实例开启前后的资 源配置向量;集群中资源配置向量为k-ei的物理主机的数量为定义一个 权重差来表示Fr(X)的一阶变化量,其中:
Δ ( k , i ) r ( X ) = w r ( X k ) - w r ( X k - e i ) ]]>
wr(Xk)为集群状态Xk的权重函数,为集群状态的权重函数, Xk和分别为调度操作前后的集群状态;
2.4)选取最小的值对应的k-ei值作为目标资源配置;为 Fr(X)的一阶变化量,近似的表示虚拟机调度前后集群中物理主机数量的变化;
2.5)在资源配置为k-ei的物理主机中选取一台作为目标主机,在该主机 上创建虚拟机实例。

2.  根据权利要求1所述的基于组合优化的虚拟机调度方法,其特征在于: 所述步骤1.2)中,一台物理主机所提供的编号为n的资源数量为Bn,所有Bn组成一个N维的资源向量B,向量B用来表示物理主机的容量。

3.  根据权利要求1所述的基于组合优化的虚拟机调度方法,其特征在于: 所述步骤1.4)中,编号为i的虚拟机种类对编号为n的资源需求量使用bi,n表示, 所有bi,n组成一个I×N阶的资源需求矩阵b。

4.  根据权利要求1所述的基于组合优化的虚拟机调度方法,其特征在于: 所述步骤1.5)中,向量的第i维元素ki为该物理主机上运行的i类型的虚拟机 数量;同一物理主机上运行的所有虚拟机对资源的需求量之和不超过物理机所 提供总量,即向量k满足:
Σ 1 i I k i b i , n B n ]]>
其中1≤n≤N,k为资源配置向量,所有k组成的集合为K,集合K中元素 的数量为|K|。

说明书

说明书一种基于组合优化的虚拟机调度方法
技术领域
本发明属于计算机科学与技术领域,涉及虚拟集群中的虚拟机调度,具体 涉及一种基于组合优化的虚拟机调度方法。
背景技术
云计算作为新兴的高性能计算方式被越来越多企业的关注。云计算中的基 础设施即服务(Infrastructure as a Service)模型是一种较低层的且应用很广泛的 一种服务模型。2006年Amazon发布了弹性云计算(EC2)服务,开创了IaaS 服务的先河,之后各个公司分别推出了各自的商用的云计算平台,例如青云、 阿里云、腾讯云等。另外,Nucaluptus、OpenStack等IaaS开源平台也受到广泛 的关注。IaaS服务主要是整合计算资源为用户提供计算任务所需的基础设施 (CPU、内存、存储等)。在实际的云计算集群中,通常使用虚拟化技术对计算 资源进行整合。这样可以统一且高效地管理大量异构的计算资源,并且可以方 便地对资源进行切割和组合,从而达到弹性资源配置。在基础设施即服务模型 中,多个虚拟机可以同时运行在同一物理机上。虚拟机的调度技术决定了虚拟 机开启在哪一台物理主机上。虚拟机调度方法可以使用不同的策略达成相应的 调度目标,例如公平性优先、吞吐量优先、利用率优先等。以资源利用率优先 为调度策略的虚拟机调度方法有很高的实用价值,因为提高资源的利用率既可 以减少集群的维护成本,又可以减少能源消耗。
以减少占用的物理主机数量为优化目标的虚拟机调度问题与装箱问题类似。 装箱问题是组合优化问题中比较具有代表性的一类问题,这类问题可以通俗地 描述为:一系列尺寸不同的货物按顺序打包装箱,货物的尺寸均不超过箱子能 容纳的最大尺寸,合理地放置货物使得使用的箱子数目最少。在虚拟机调度问 题中,虚拟机可以看作货物而物理主机可以看作为箱子。可以使用经典的启发 式算法解决装箱问题,但这类算法不能保证能解的最优性。Jiang.J.W等人在2012 年究了虚拟机调度与网络路由相结合的问题,使用虚拟机迁移来优化调度结果。 由于虚拟机迁移操作的耗时较长,使得算法的时效性较差。Zhong.H等人使用遗 传算法解决虚拟机调度问题,遗传算法等人工智能算法的一个特点就是计算量 较大,在实时性要求比较高的系统中不能满足需求。
发明内容
本发明针对上述技术的不足,提供了一种可以实时决策并且高效利用资源 的基于组合优化的虚拟机调度方法,该方法可用于虚拟集群中实时的虚拟机调 度决策,能够根据虚拟集群当前的资源使用情况实时地决策虚拟机的开启位置, 使得被占用的物理主机的数量最小,这样既可以提高资源利用率又可以减少能 源的消耗。
为实现上述目的,本发明的所采用的技术方案包括以下步骤:
1)集群状态建模
1.1)统计集群中资源种类数量N,并为每种资源编号,依次为1~N;
1.2)统计集群中物理主机的资源向量,每一台物理主机均提供N种资源供 运行在该主机上的多台虚拟机共享;
1.3)对虚拟机进行分类,统计虚拟机的种类总数I,并为每一种虚拟机类型 进行编号,依次为1~I;
1.4)统计每种虚拟机对资源的请求,每种虚拟机对资源的请求均为一个N 维的向量,与物理主机的资源向量对应;
1.5)计算物理主机能够同时运行的虚拟机的组合种类,使用一个I维的向 量k表示物理主机的负载情况;
1.6)将集群中的物理主机按资源配置向量分类,统计各种资源配置物理主 机的数量;其中,资源配置为k的物理主机的数量为Xk;所有Xk组成一个|K| 维的向量X,X为集群状态向量;
2)虚拟机调度
2.1)解析虚拟机请求,获得虚拟机所属的种类编号i;
2.2)构造一个权重函数:
w r ( X ) = min ( 1 , X r p ) ]]>
其中r为系统中虚拟机的总数,p为一常数且p∈(1/2,1);wr(X)的反导函数 为:
f r ( X ) = X 2 2 r p , ifX ∈ [ 0 , r p ] ; X - r p 2 , ifX > r p . ]]>
定义近似函数Fr(X)=∑k∈Kfr(Xk),近似地表示物理主机的数量总和 ∑k∈KXk;
2.3)k为集合K中的元素,集群中资源配置向量为k的物理主机数量为Xk; 向量ei也是一个资源配置向量,是集合K中的单位向量,表示仅有一台类型为 i的虚拟机;向量k-ei与向量k的分别表示物理主机在虚拟机实例开启前后的资 源配置向量;集群中资源配置向量为k-ei的物理主机的数量为定义一个 权重差来表示Fr(X)的一阶变化量,其中:
Δ ( k , i ) r ( X ) = w r ( X k ) - w r ( X k - e i ) ]]>
Wr(Xk)为集群状态Xk的权重函数,Wr(Xk-ei)为集群状态的权重函数, Xk和分别为调度操作前后的集群状态;
2.4)选取最小的值对应的k-ei值作为目标资源配置;为 Fr(X)的一阶变化量,近似的表示虚拟机调度前后集群中物理主机数量的变化;
2.5)在资源配置为k-ei的物理主机中选取一台作为目标主机,在该主机 上创建虚拟机实例。
所述步骤1.2)中,一台物理主机所提供的编号为n的资源数量为Bn,所有 Bn组成一个N维的资源向量B,向量B用来表示物理主机的容量。
所述步骤1.4)中,编号为i的虚拟机种类对编号为n的资源需求量使用bi,n表示,所有bi,n组成一个I×N阶的资源需求矩阵b。
所述步骤1.5)中,向量的第i维元素ki为该物理主机上运行的i类型的虚 拟机数量;同一物理主机上运行的所有虚拟机对资源的需求量之和不超过物理 机所提供总量,即向量k满足:
Σ 1 i I k i b i , n B n ]]>
其中1≤n≤N,k为资源配置向量,所有k组成的集合为K,集合K中元素 的数量为|K|。
本发明与现有技术相比有以下有益效果:
本发明所涉及的虚拟机调度方法采用简单的数学计算,可在有限次比较次 数内获得调度结果,比较次数与虚拟机种类以及物理主机种类有关。与传统解 决组合优化问题时所采用的人工智能算法相比,本发明所涉及的虚拟机调度方 法具有较高的实时性,可以实时决策出虚拟机的放置位置,满足对虚拟机调度 系统高实时性的要求。
本发明所涉及的虚拟机调度方法是一种在线方法,在进行调度决策时,仅 需要采集当前集群的状态及资源使用情况,而不需要记录集群的历史状态信息。
本发明所涉及的虚拟机调度方法避免使用虚拟机迁移操作来对虚拟机调度 结果进行二次优化,避免了虚拟机迁移操作带来的巨大操作时延及虚拟机宕机 时间。
当虚拟机请求序列服从泊松过程时,本发明所涉及的虚拟机调度方法可以 证明在集群状态偏移一定距离(2D|K|rp-1)时,一定可以对目标函数进行优化, 是的虚拟机占用的物理机数量仅可能少,从而提高资源利用率。
附图说明
图1为本发明对集群建模的流程图;
图2为本发明调度方法的流程图;
图3为本发明集群组织的架构示意图;
图4为本发明所述虚拟机调度算法的流程图;
图5为获得集群状态向量的数据流图;
图6为获得调度结果的数据流图。
具体实施方式
下面结合附图对本发明作进一步详细的说明:
参见图1至图6,本发明包括以下步骤:
(1)集群状态建模,如图1所示:
(1.1)统计集群中资源种类数量N,为每种资源编号,依次为1~N。
(1.2)统计集群中物理主机的资源向量,每一台物理主机均提供N种资源 供运行在该主机上的多台虚拟机共享。一台物理主机所提供的编号为n的资源 数量为Bn,所有Bn组成一个N维的资源向量。用来表示物理主机的容量。
(1.3)依据虚拟机对资源的需求量不同,对虚拟机进行分类。统计虚拟机 的种类总数I。为了易于管理和减少资源碎片化,在集群中虚拟机的类型是有限 的。为每一种虚拟机类型进行编号,依次为1~I。
(1.4)统计每种虚拟机对资源的请求,每种虚拟机对资源的请求均为一个 N维的向量,与物理主机的资源向量对应。编号为i的虚拟机种类对编号为n的 资源需求量使用bi,n表示。所有bi,n组成一个I×N阶的资源需求矩阵b。
(1.5)如图5所示,计算物理主机可以同时运行的虚拟机的组合种类,使 用一个I维的向量k表示物理主机的负载情况。其中,向量的第i维元素ki为该 物理主机上运行的i类型的虚拟机数量。同一物理主机上运行的所有虚拟机对资 源的需求量之和不应超过物理机所提供总量B。即向量k应该满足:
Σ 1 i I k i b i , n B n ]]>
其中1≤n≤N,称向量k资源配置向量。所有k组成的集合为K,集合K中 元素的数量为|K|。
(1.6)将集群中的物理主机按资源配置向量分类,统计各种资源配置物理 主机的数量,其中资源配置为k的物理主机的数量为Xk。所有Xk组成一个|K| 维的向量X,将X称为集群状态向量。
(2)虚拟机调度方法,如图2所示:
(2.1)解析虚拟机请求,获得虚拟机所属的种类编号i。
(2.2)构造一个权重函数:
w r ( X ) = min ( 1 , X r p ) ]]>
其中r为系统中虚拟机的总数,p为一常数且p∈(1/2,1)。wr(X)的反导函数 为:
f x ( X ) = X 2 2 r p , ifX ∈ [ 0 , r p ] ; X - r p 2 , ifX > r p . ]]>
定义近似函数Fr(X)=∑k∈Kfr(Xk),可以近似地表示物理主机的数量总和 ∑k∈KXk。
(2.3)如图6所示,遍历集合K中的元素,对集合K中的每一个元素k, 集群中对应的资源配置向量为k的物理主机数量为Xk。向量ei也是一个资源配 置向量,是集合K中的单位向量。它表示仅有一台类型为i的虚拟机。向量k-ei与向量k的分别表示物理主机在虚拟机实例开启前后的资源配置向量。集群中 资源配置向量为k-ei的物理主机的数量为定义一个权重差来表示Fr(X)的 一阶变化量,其中:
Δ ( k , i ) r ( X ) = w r ( X k ) - w r ( X k - e i ) ]]>
(2.4)选取最小的值对应的k-ei值作为目标资源配置。为 Fr(X)的一阶变化量,可以近似的表示虚拟机调度前后集群中物理主机数量的变 化。
(2.5)在资源配置为k-ei的物理主机中选取一台作为目标主机,在该主 机上创建虚拟机实例。集群中资源配置为k-ei的物理主机可能不唯一,在本发 明中可以选取任意一台作为物理主机。然而可以综合其它条件(如相同类型虚 拟机运行历史记录等)优化调度结果。
实施例:
集群组织形式如图3所示,将集群中的主机分为两种角色,分别为控制节 点的计算节点。集群中有一个控制节点(controller node),负责接收并响应虚拟 资源请求,将虚拟资源请求派发到提供计算能力的物理主机上。控制节点的功能 模块主要有调度模块(scheduler)和数据收集模块(collector)。另外系统有若干 个计算节点(compute node),这些计算节点都是能提供计算能力的物理主机, 负责创建具体的虚拟机执行计算任务。计算节点中有虚拟机管理模块(VM  manager)。控制节点和计算节点之间相互通信。计算节点上有监控模块负责采 集该计算节点的资源使用情况,当进行调度决策时计算节点会向控制节点上报 本节点的资源利用情况,而控制节点会将各个计算节点上报的资源利用情况进 行汇总,得到当前集群总的资源利用情况并执行调度算法获得调度结果。
虚拟机调度系统的模块分布如图4所示,各个模块的功能划分如下:
虚拟机管理模块(VM manager):该模块部署在每个计算节点上,用于与虚 拟机进行交互。主要负责监控虚拟机状态,将物理主机资源利用情况上报控制 节点,并负责创建和销毁虚拟机实例。
数据收集模块(collector):该模块位于控制节点上,负责与各个计算节点 交互,收集各个计算节点上报的资源使用情况及虚拟机分布,并以此为输入数 据为调度模块计算资源配置向量及当前集群的集群状态向量。
请求解析模块(parser):该模块部署在控制节点上,是虚拟机调度系统的 入口。负责接收虚拟机的请求序列,解析请求获得虚拟机的类型,并将虚拟机 请求所对应的虚拟机类型发送给调度模块。
调度模块(scheduler):该模块位于控制节点上,负责执行虚拟机调度方法, 获得调度结果,并将虚拟机的资源请求信息发送至目标物理主机的虚拟机管理 模块,创建虚拟机实例。
本发明所涉及的虚拟机调度算法主要分为两部分,第一部分为对集群的数 学建模,方便对组合优化的目标进行描述和推理,同时对采集到的描述集群资 源使用情况的数据进行预处理,具体过程如图2所示。
S1.1位于计算节点上的虚拟机管理模块会根据配置获得物理主机所提供的 资源种类,一般物理主机所提供的资源有CPU、内存、磁盘等。此时N的值为 3,为每种资源编号:1表示CPU,2表示内存,3表示磁盘。
S1.2虚拟机管理模块收集物理主机的资源向量,资源向量是一个N维的向 量,每一维元素对应于一种资源,其值为该物理主机所能提供的这类资源的总 量。对于资源n∈{1,2,...,N},物理主机提供的资源量为Bn。一般情况下资源 的数量是采用通用单位量化表示的,例如CPU的单位为个,内存和磁盘的单位 为GB。
S1.3按照虚拟机对资源的需求量不同,将虚拟机进行分类。在实际的虚拟 集群中,虚拟机的类型是有限的。这样既可以方便管理虚拟机,同时又可以根 据物理主机的资源向量定制虚拟机类型的资源模板,使虚拟机按照模板定义的 资源需求量进行资源请求。统计虚拟机的类型的数量记为I。
S1.4统计每种虚拟机对资源的请求,每种虚拟机对资源的请求均为一个N 维的向量,与物理主机的资源向量对应。用户请求的虚拟机种类有I种,对于i 类型的虚拟机i∈{1,2,...,I},其对资源n的请求量为bi,n。所有bi,n组成一个I×N 阶的资源需求矩阵b。
虚拟机类型编号 CPU(个) 内存(GB) 磁盘(GB) 1 b1,1:1 b1,2:0.5 b1,3:5 2 b2,1:1 b2,2:1 b2,3:10 3 b3,1:2 b3,2:2 b3,3:10 4 b4,1:2 b4,2:4 b4,3:20
上表展示了一个虚拟机模板的划分,表中每一行表示一种虚拟机对各类资 源的需求量。这种情况下有4种虚拟机类型,即I的值为4。
S1.5计算物理主机可以同时运行的虚拟机的组合种类,使用一个I维的向量 k表示物理主机的负载情况。其中,向量的第i维元素ki为该物理主机上运行的 i类型的虚拟机数量。一台物理主机上可以同时运行多个虚拟机实例,该物理主 机的资源被这些虚拟机实例共享。虽然虚拟机软件大多支持超载,但是为了保 证虚拟机的性能,运行在同一物理主机上虚拟机实例应该满足服务品质协议 (SLA),即所有虚拟机对资源的需求量之和不应超过物理主机所提供的总量。 向量k应该满足:
Σ 1 i I k i b i , n B n ]]>
其中1≤n≤N,称向量k资源配置向量。所有k组成的集合为K,集合K中 元素的数量为|K|,集合K中元素均为一台物理主机的有效载荷。资源配置向量 具有单调性,即如果资源配置向量k∈K,且有另一资源配置向量k’满足k’<k, 则有k’∈K。资源配置向量的单调性很容易理解:如果一台物理主机的载荷为k, 那么减少一个或多个虚拟机实例后物理主机的载荷k’仍为有效载荷。资源配置 向量的单调性可以在求解集合K时减少计算量。
S1.6将集群中的物理主机按照资源配置向量进行分类,统计各种资源配置 物理主机的数量,其中资源配置为k的物理主机的数量为Xk。所有Xk组成一个 |K|维的向量X,将X称为集群状态向量。集群状态向量可以描述集群当前的资 源使用情况,当新的虚拟机实例在一台物理主机上创建时,物理主机的资源配 置向量由k-ei变为向量k。集群状态向量的减1,而Xk加1。
第二部分为虚拟机调度方法的主体,具体实施过程如图1所示:
S2.1位于控制节点上的请求解析模块接受虚拟机请求,解析虚拟机请求, 获得虚拟机的类型记为i。将虚拟机类型发送给调度模块。
S2.2调度模块在接收到虚拟机类型后,构造一个权重函数:
w r ( X ) = min ( 1 , X r p ) ]]>
其中r为系统中虚拟机的总数,p为一常数且p∈(1/2,1)。wr(X)的反导函数 为:
f r ( X ) = X 2 2 r p , ifX &Element; [ 0 , r p ] ; X - r p 2 , ifX > r p . ]]>
假设近似函数Fr(X)=∑k∈Kfr(Xk),用来近似表示集群中物理机的数量,可 以证明:
Σ k &Element; K X k - | K | r p 2 F r ( X ) Σ k &Element; K X k ]]>
当X>rp时,显然上式成立。当X∈[0,rp]时,设 在区间[0,rp]上G′(X)<0,因此G(X)在区间[0,rp] 上是递减的,故G(X)≤G(0)=0,因此所以
Σ k &Element; K X k - | K | r p 2 Σ k &Element; K X k 2 2 r p Σ k &Element; K X k ]]>
综上所述,Fr(X)可以近似的描述物理主机的数量∑k∈KXk,描述的差值在 O(rp)范围内。
S2.3遍历集合K中的元素,对集合K中的每一个元素k,集群中对应的资 源配置向量为k的物理主机数量为Xk。向量ei也是一个资源配置向量,是集合 K中的单位向量。它表示仅有一台类型为i的虚拟机。向量k-ei与向量k的分别 表示物理主机在虚拟机实例开启前后的资源配置向量。集群中资源配置向量为 k-ei的物理主机的数量为定义一个权重差来表示Fr(X)的一阶变化量,其 中:
Δ ( k , i ) r ( X ) = w r ( X k ) - w r ( X k - e i ) ]]>
所有资源配置向量k组成集合K,即K={k|∑ikibi,n≤Bn},K集合中去掉 零向量得到集合设M为集合K与集合I的笛卡儿积,即M= {(k,i)|k∈K,i∈I},故k-ei∈K,ei为集合K中的单位向量
S2.4选取最小的值对应的k-ei值作为目标资源配置。为 Fr(X)的一阶变化量,可以近似的表示虚拟机调度前后集群中物理主机数量的变 化。
S2.5在资源配置为k-ei的物理主机中选取一台作为目标主机,在该主机 上创建虚拟机实例。集群中资源配置为k-ei的物理主机可能不唯一,在本发明 中可以选取任意一台作为物理主机。控制节点上的调度模块会向目标主机发送 虚拟机实例创建指令寄虚拟机实例的资源请求量。作为目标主机的计算节点在 接收到创建虚拟机的指令后,该几点上的虚拟机管理模块会调用底层的指令完 成虚拟机创建工作。
下面对本发明所涉及虚拟机调度算法的优化条件进行分析。首先引入一个 算法相关的改善状态对,对优化目标的改进进行描述,称其为优化配置对 (Enhancing Configuration Pair),然后提出并证明了定理1。该定理的主要内容 是说明优化配置对存在的条件,即虚拟机调度方法的优化条件。
泊松过程通常用来描述服务系统中顾客的到达的随机过程,例如在[0,t]时 间内到达商店的顾客数,使用泊松过程来描述各类虚拟机请求到达虚拟机调度 系统的数量。类型为i的虚拟机请求序列使用强度为λir的泊松过程来描述,其 中λi为一常数,r为一个修正因子。每种虚拟机实例的运行时间是随机的而且是 相互独立的,假设每种类型的虚拟机的运行时间满足指数分布,且设类型为i 的虚拟机的运行时间的均值为1/μi,因为泊松过程的强度λir表示在单位时间内 类型为i的虚拟机到达的数量为λir,故当达到稳态时系统中类型为i的虚拟机的 平均数量Yi为:
Yi=λir/μi,设ρi=λi/μi,则有:Yi=ρir
所有类型的虚拟机的数量Z为:Z=Σiρir=rΣiρi修改r的值,令Σiρi=1。 使用随机过程Xr(·)表示跟r相关的集群状态变化。
当r趋向于无穷大时,对于类型i的虚拟机的数量有使 xr(t)=Xr(t)/r,所以有,当r趋向于无穷时,有
Σ k &Element; K k i x k r ( ) &DoubleRightArrow; ρ i - - - ( 3 - 2 ) ]]>
考虑如下的线性规划(LP1):

设线性规划的最优解为x*,且最小值为u*。当r趋近于无穷大时,若有 则称对应的调度策略为渐进最优的。
假设 x ~ r ( t ) = X r ( t ) / r p , ]]>权重函数变为 w ~ ( x ~ ) = min ( 1 , x ~ ) , ]]>算法中的权重差为 假设当前系统为Xr,资源配置向量为k的物理机上的 一个类型为i的虚拟机实例在其运行时间结束后离开系统,Fr的一阶变化量为 然后虚拟机实例被调度到配置为k′的物理机上。在此过程之后,Fr总的一阶变化量为 Δ ( k , i ) r ( X r ) - Δ ( k , i ) r ( X r ) , ]]>或者 Δ ( k , i ) r ( x ~ r ) - Δ ( k , i ) r ( x ~ r ) . ]]>当 时,Fr是减小的,即使得目标优化。所以把{(k,i),(k′,i)}称 为优化配置对,如果存在优化配置对则能对Fr进行优化。下面一个定理说明了xr离最优解的距离超过一定值时,一定有优化配置对存在。
定理1假设D>0满足D(∑k∈Kxk-u*)≥d(x,x*),当r足够大时,如果有 d(x,x*)≥2D|K|rp-1,那么存在与相关的优化配置对{(k′,i),(k,i)}, 并且存在正的常量ε使得 x ~ k r &GreaterEqual; &epsiv; , x ~ k - e i r &GreaterEqual; &epsiv; , ]]>并且有 Δ ( k , i ) r ( x ~ r ) - Δ ( k , i ) r ( x ~ r ) - &epsiv; . ]]>
为了证明定理1,首先引入定理2和定理3。.
定理2如果序列{xr}和它相关的x为序列{xr}的极限点。如果没有优 化配置对,则x为LP1的一个最优解。
定理2的证明如下:
对于任意的i∈I,设则由的定义可得ηi∈[0,1]。首先证明如下 命题成立:
命题1:如果k∈K,ki≥1,意味着ηi>0,则有
假设该命题不成立,则有,ki≥1,ηi>0且
Σ i &Element; I k i η i &NotEqual; w ~ ( x ~ k ) - - - ( 3 - 15 ) ]]>
这意味着∑i∈Iki≥2,由定义知则存在i∈I,ηi>0,k′=k-ei,并 且有
Σ i &Element; I k i η i = w ~ ( x ~ k ) - - - ( 3 - 16 ) ]]>
由式(3-15)和式(3-16)得:
w ~ ( x ~ k ) - w ~ ( x ~ k ) &NotEqual; η i - - - ( 3 - 17 ) ]]>
当时,{(k,i),(ei,i)}是一个优化配置对,而当 时{(ei,i),(k,i)}是一个优化配置对。这与题设没有优化配置对 不符,因此假设不成立,即有如果k∈K,ki≥1,意味着ηi>0, 则有 Σ i &Element; I k i η i = w ~ ( x ~ k ) . ]]>
命题2:如果∑i∈Ikiηi<1,那么
假设命题2不成立,则有并且∑i∈Ikiηi<1,
首先k≠ei,因为如果ηi<1,那么与ηi的定义相矛盾,由此可得∑i∈Iki≥2。 其次,如果ηi>0,ki≥1,则由命题1的证明过程可得1> 因此有与假设产生矛盾,故假设有并 且∑i∈Ikiηi<1不成立。命题2得证。
由命题1命题2可以容易知道x为线性规划的一个最优解。
定理3如果序列{xr}和它相关的x为序列{xr}的极限点,{rn}为{r}的子 序列,当n足够大时,如果那么一定有优化配置对。
可以使用反证法证明定理3,假设当n足够大且满足时, 没有优化配置对。则可根据定理2得到x为线性规划LP1的最优解。且有定理 2的证明过程可知η={ηi}i∈I为LP1的对偶解,考虑于下列线性规划(LP2):

上述线性规划的最优解为r1-px*,根据性质1可得:
Σ k &Element; K x ~ k r n - r 1 - p x * = r 1 - p ( Σ k &Element; K x k r n - x * ) &GreaterEqual; r 1 - p d ( x r n , x * ) / D &GreaterEqual; r 1 - p ( 2 D | K | r n p - 1 ) / D &GreaterEqual; 2 | K | - - - ( 3 - 18 ) ]]>
计算LP3的拉格朗日对偶,则有:
L ( x r n , η ) = Σ k &Element; K x ~ k r n + Σ i &Element; I η i ( ρ i r n 1 - p - Σ k &Element; K k i x ~ k ) = r n 1 - p Σ i &Element; I η i ρ i + Σ k &Element; K ( 1 - Σ i &Element; I k i η i ) x ~ k r n - - - ( 3 - 19 ) ]]>
因为η为LP1的对偶最优解,则有∑i∈Iηipi=u*。在定理2的证明过程中, 对于任意k∈K,有∑i∈Ikiηi≤1,并且如果∑i∈Ikiηi≤1,则当n足够 大时,如果∑i∈Ikiηi≤1,因此有:
Σ k &Element; K ( 1 - Σ i &Element; I k i η i ) x ~ k r n | K | - - - ( 3 - 20 ) ]]>
Σ k &Element; K x ~ k r n = L ( x r n , η ) r n 1 - p u * + | K | - - - ( 3 - 21 ) ]]>
式(3-18)与式(3-21)矛盾,因此假设不成立。定理3得证。
在证明完定理2和定理3后,可以证明定理1了。假设定理1不成立,则 有对于所有的ε>0,有无穷多的r和xr,使得并且对所有的优化配置对{(k′,i),(k,i)},有或者或者因此可以找到一个{r}的子序列{rn}满足:
(I)对所有的n, d ( x r n , x * ) &GreaterEqual; 2 D | K | r n p - 1 . ]]>
(II)对所有的优化配置对{(k′,i),(k,i)},有或者或者 Δ ( k , i ) ( x ~ r n ) - Δ ( k , i ) ( x ~ r n ) > - 1 / n ]]>
根据(I)和定理3可以得出有优化配置对,而根据(II)及定理2则可以 得出没有优化配置对,两者矛盾,故定理1不成立的假设是错误的。定理1得 证。
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围, 凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入 本发明权利要求书的保护范围之内。

一种基于组合优化的虚拟机调度方法.pdf_第1页
第1页 / 共17页
一种基于组合优化的虚拟机调度方法.pdf_第2页
第2页 / 共17页
一种基于组合优化的虚拟机调度方法.pdf_第3页
第3页 / 共17页
点击查看更多>>
资源描述

《一种基于组合优化的虚拟机调度方法.pdf》由会员分享,可在线阅读,更多相关《一种基于组合优化的虚拟机调度方法.pdf(17页珍藏版)》请在专利查询网上搜索。

本发明公开了一种基于组合优化的虚拟机调度方法,该方法可用于虚拟集群中实时的虚拟机调度决策,能够根据虚拟集群当前的资源使用情况实时地决策虚拟机的开启位置,使得被占用的物理主机的数量最小,这样既可以提高资源利用率又可以减少能源的消耗。本发明所涉及的虚拟机调度方法采用简单的数学计算,可在有限次比较次数内获得调度结果,比较次数与虚拟机种类以及物理主机种类有关。与传统解决组合优化问题时所采用的人工智能算法相。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1