《一种面向云计算虚拟机迁移的决策方法及控制模块.pdf》由会员分享,可在线阅读,更多相关《一种面向云计算虚拟机迁移的决策方法及控制模块.pdf(9页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102790793 A (43)申请公布日 2012.11.21 C N 1 0 2 7 9 0 7 9 3 A *CN102790793A* (21)申请号 201210142116.X (22)申请日 2012.05.08 H04L 29/08(2006.01) G06F 9/455(2006.01) G06F 9/50(2006.01) (71)申请人北京邮电大学 地址 100876 北京市海淀区西土城路10号 (72)发明人陆月明 邹超 孙松林 (54) 发明名称 一种面向云计算虚拟机迁移的决策方法及控 制模块 (57) 摘要 本发明提出了一种面向云计算虚拟机。
2、迁移的 决策方法及控制模块。该方法由迁移触发模块, 虚拟主机选择模块和目的节点选择模块三部分组 成。首先,通过迁移触发模块设置系统负载阈值, 并利用负载预测技术,使系统有效避免瞬间负载 峰值触发不必要的虚拟机迁移;然后,虚拟主机 选择模块根据迁移代价最小策略选择所要迁移的 虚拟主机,把虚拟机迁移代价降到最低,节约系统 资源;最后,目的节点选择模块提出基于加权概 率选择算法的目的节点选择策略,有效解决了因 大量虚拟机迁移引发的群聚冲突问题。最终,该方 法能够很好地实现负载均衡,使资源得到公平合 理的应用。 (51)Int.Cl. 权利要求书1页 说明书5页 附图2页 (19)中华人民共和国国家知。
3、识产权局 (12)发明专利申请 权利要求书 1 页 说明书 5 页 附图 2 页 1/1页 2 1.一种面向云计算虚拟机迁移的决策方法及控制模块,其特征在于:该方法由迁移触 发模块,虚拟主机选择模块和目的节点选择模块三部分组成。其中,迁移触发模块判断系统 是否需要触发虚拟机迁移;虚拟机选择模块决定源节点上的哪个虚拟主机需要迁移;目的 节点选择模块决定迁移的目的节点(服务器)。 2.根据权利要求1所述的迁移触发模块,其特征在于:该模块通过设置系统负载阈值, 并利用负载预测技术判定源节点(服务器)是否需要触发虚拟机迁移程序,使系统有效避 免瞬间负载峰值触发不必要的虚拟机迁移。 3.根据权利要求1所。
4、述的迁移主机选择模块,其特征在于:该模块首先筛选出所有迁 移后能使源节点(服务器)低于负载阈值运行的虚拟机,然后计算虚拟机的迁移代价加权 值,最后选择加权值最小的虚拟机作为迁移主机;该模块使虚拟机迁移代价降到最低,节约 系统资源。 4.根据权利要求1所述的目的节点选择模块,其特征在于:该模块通过使用加权概率 算法选择目的节点,对目标节点的资源进行全面的分析,有效解决了因大量虚拟机迁移引 发的群聚冲突问题,并很好地实现负载均衡,使资源得到公平合理的应用。 权 利 要 求 书CN 102790793 A 1/5页 3 一种面向云计算虚拟机迁移的决策方法及控制模块 技术领域 0001 本发明涉及一种。
5、面向云计算虚拟机迁移的决策方法及控制模块,该方法应用于云 计算网络系统中虚拟机迁移,属于计算机科学与技术领域。 背景技术 0002 云计算(cloud computing)是近几年国际上兴起的技术方向,也是目前信息技术 领域的研究热点。云计算是一种全新的、基于互联网的计算方式。通过这种方式,整个系统 的硬件资源被虚拟化成一个统一的虚拟资源池,然后借助虚拟化管理平台把系统中所有的 资源按照实际需求或其他策略分配给用户。由于云计算实现了计算机资源的统一管理,用 户不再参与底层硬件资源、系统平台甚至是应用软件的搭建、管理和维护,而只需关注自身 产品的实际需求,这样就大大降低了企业的运行维护成本。面对。
6、其巨大商机,国内外信息产 业巨头如IBM、Amazon、Microsoft、Google、华为、中国移动、百度等都已发布自己的云计算 平台。 0003 虚拟机迁移技术是云计算中一项关键技术,通过它可以将虚拟机及其服务从一个 物理节点(源计算机)完整地迁移到另一个物理节点(目的计算机)。借助虚拟机迁移技 术,云计算系统实现了系统在线维护和升级、资源动态管理、系统故障容忍以及动态负载均 衡,从而提高了系统资源和能源使用效率,并提高了系统安全性能。 0004 按虚拟机迁移过程触发因素,虚拟机迁移可分为CPU触发、内存触发、网络带宽触 发以及外存储触发四类;按迁移过程中是否中断对用户请求响应并提供服务。
7、,虚拟机迁移 可分为静态迁移和动态迁移两类。静态迁移是一种停机迁移,即在迁移触发后被迁移的虚 拟机立即停止执行并拒绝响应新的服务,直到虚拟机迁移完成;而动态迁移则为系统在不 中断对外提供服务或在不被用户感知的前提下完成虚拟机迁移。目前,主流的虚拟化软件 提供商都已提出了自己的虚拟机在线迁移技术,如VMware公司的VMotion和Xen公司的 Live Migration等。 0005 现有的迁移机制一般是通过虚拟机控制器管理整个迁移过程,主要以主机CPU利 用率作为节点启动迁移的依据,而其迁移目的节点的选择策略通常是基于随机选择或基于 最小带宽占用,导致现有的迁移策略普遍缺乏对系统资源敏感性。
8、和资源分析的全面性。另 外,采用现有的迁移策略进行虚拟机迁移容易导致瞬间负载峰值触发不必要的虚拟机迁 移,或引发由群聚效应引起的迁移服务冲突,甚至因迁移目的节点选择不合理而触发二次 迁移。针对云计算系统中虚拟机迁移具有迁移数据传输量大、耗时长等特点,本专利提出了 一种面向云计算虚拟机迁移的决策方法及控制模块,其中包含迁移触发模块、虚拟主机选 择模块以及目的节点选择模块。该方法可有效避免触发不必要的虚拟机迁移,降低虚拟机 迁移引起的系统负载,解决因大量虚拟机迁移引发的群聚冲突问题,并很好地平衡了系统 负载,最终实现对云计算网络中虚拟机迁移的决策和控制。 发明内容 说 明 书CN 10279079。
9、3 A 2/5页 4 0006 依据当前的技术背景和条件,并针对云计算网络和虚拟计算资源管理与调度的特 点和要求,本发明提出一种面向云计算虚拟机迁移的决策方法及控制模块。 0007 本发明采用的技术方案如下: 0008 本发明是一种面向云计算虚拟机迁移的决策方法及控制模块,它主要由迁移触发 模块,虚拟主机选择模块和目的节点选择模块三部分组成。图1显示了上述3个组成部分 及其相互关系。其中,每部分的功能如下: 0009 迁移触发模块,该模块是云计算环境中虚拟机迁移控制功能模块的一个组件,它 的功能为实时监测物理节点(服务器)及其虚拟机的资源使用情况,并结合负载预测技术 判定源节点是否需要启动虚拟。
10、机迁移过程,避免触发不必要的虚拟机迁移。 0010 虚拟主机选择模块,该模块是云计算环境中虚拟机迁移控制功能模块的一个组 件,它的功能为根据在源节点(服务器)上运行的各个虚拟机资源分配与使用情况选择最 终被迁移的虚拟主机,把虚拟机迁移代价降到最低,节约系统资源。 0011 目的节点选择模块,该模块是云计算环境中虚拟机迁移控制功能模块的一个组 件,它的功能为根据其他节点(除源节点外)的资源使用情况选择虚拟机迁移的目的节点, 避免群聚效应引发服务冲突,并帮助系统实现负载均衡。 0012 在云计算系统环境中,虚拟机迁移控制模块可以采用分布式部署,也可以采用集 中式部署。采用分布式是将迁移控制模块部署。
11、在每一个网络节点,节点通过广播的形式发 布自己的负载情况以及迁移请求;而采用集中式则是将迁移控制模块只部署在系统的管理 主机(Administrator),管理主机集中统计网络中所有节点及在其上运行的虚拟机资源分 配与利用情况,并统一管理网络中所有虚拟机迁移请求。为方便管理,在云计算系统中一般 采用集中式部署。在本专利中如未加详细说明,迁移控制模块默认采用集中式部署方式。 0013 如图2流程图所示,在云计算环境中完成虚拟机迁移可分为如下5个步骤:a、源节 点(服务器)启动迁移触发模块,b、迁移触发模块启动虚拟机迁移程序,c、虚拟主机选择模 块选择需要迁移的虚拟主机,d、目的节点选择模块选择虚。
12、拟机迁移的目的节点,e、系统建 立网络连接,完成虚拟机迁移。 0014 (一)源节点(服务器)启动迁移触发模块。当节点负载长时间超过负载阈值会 造成服务响应变慢或网络堵塞,甚至导致虚拟机死机或源节点(服务器)崩溃。在本专利 中迁移触发模块根据节点的具体资源配置与所提供的服务为每一个节点的CPU、内存、外存 储器以及带宽分别设置负载阈值。当节点负载超过规定的阈值,源节点(服务器)启动迁 移触发模块并记录触发类型。 0015 (二)迁移触发模块启动虚拟机迁移程序。迁移触发模块以周期T持续监听节点 负载,在连续的N个监测周期内,源节点负载如满足以下三个条件:a、负载均值超过设置的 阈值,b、至少有n。
13、(0nN)次监测值超过阈值,c、利用负载预测技术得到源节点(服务 器)在未来N个周期的负载同样满足前两个条件,则迁移触发模块在源节点上启动虚拟机 迁移程序。如上述三个条件不能同时满足,则迁移触发模块继续侦听。其中,n和N越小, 触发条件越宽松,导致无效迁移的可能性越大;反之,n和N越大,触发条件越严格,引发系 统性能下降甚至是因负载过重引发系统崩溃的可能性越大 0016 (三)虚拟主机选择模块选择需要迁移的虚拟主机。虚拟主机选择模块选需迁移 的虚拟主机主要考虑如下两方面:a、所迁移的虚拟主机占用的计算资源必须大于节点负载 说 明 书CN 102790793 A 3/5页 5 超过负载阈值部分,。
14、即迁移后的节点负载可重新回到负载阈值以内;b、迁移时间、宕机时间 (down time)需尽可能短,迁移完成所需的数据传输量尽可能少。根据迁移触发类型、虚拟 机提供服务的类型以及迁移对系统负载与服务请求影响,本策略对虚拟机所占用的计算机 资源(CPU,内存,外存储,网络带宽)赋予迁移代价加权系数(h c ,h m ,h s ,h b ),其中h c +h m +h s +h b 1。其具体步骤如下: 0017 (1)虚拟主机选择模块检测节点上所有虚拟机VM|VM1,VM2,实际使用的计 算机资源,其中将虚拟机VMi(VMiVM)的资源(CPU,内存,外存储,网络带宽)占用量记 为:(VMi c。
15、 ,VMi m ,VMi s ,VMi b )。 0018 (2)虚拟主机选择模块根据源节点(服务器)超出阈值的负载大小和触发类型,筛 选出所有在迁出后能使源节点(服务器)负载恢复到阈值以内的虚拟机。 0019 (3)虚拟主机选择模块计算所有被筛选出虚拟机的迁移代价加权值H。VMi的迁移 代价加权值H i VMi c *h c +VMi m *h m +VMi s *h s +VMi b *h b 。 0020 (4)选取H值最小的虚拟机作为迁移的虚拟主机。 0021 (四)目的节点选择模块选择虚拟机迁移的目的节点。在接受到虚拟主机选择模 块提供的虚拟主机相关信息后,目的节点选择模块根据虚拟主。
16、机对计算资源的需求选择迁 移目的节点。选择目的节点主要从如下两方面考虑:a、目的节点所有资源中的空闲资源部 分必须达到所迁移虚拟主机对资源的需求。空闲资源是指目的节点负载阈值减去已使用的 资源量后的资源剩余量。其中,已使用的资源量与步骤(二)中获取源节点(服务器)负 载的计算方法相似,通过先统计并预测M个周期的系统负载值然后求平均值得到。b、在满 足条件的节点集合中,综合负载越低的节点接收虚拟机迁移可能性越大,同时应避免多个 迁移服务群聚效应引发的服务冲突。基于以上考虑,本专利对满足条件的节点(服务器) 资源(CPU,内存,外存储,网络带宽)赋予相应的权重值:(d c ,d m ,d s ,d。
17、 b ),其中d c +d m +d s +d b 1。 0022 其具体步骤如下: 0023 (1)目的节点选择模块通过类似于步骤(二)中先观察后预测的负载监测技术获 取所有节点DN|DN1,DN2,的空闲资源大小,并将节点DNi(DNiDN)的资源(CPU,内 存,外存储,网络带宽)占用量记为:(DNi c ,DNi m ,DNi s ,DNi b )。 0024 (2)根据目的节点的空余资源量必须大于被迁移虚拟主机所需资源量的原则,目 的节点选择模块筛选出所有可以接受虚拟主机的节点(服务器)。 0025 (3)目的节点选择模块计算被筛选出的节点(服务器)优先作为虚拟机迁移目的 节点的加权。
18、值D,其中DNi作为目的节点的加权值D i DNi c *d c +DNi m *d m +DNi s *d s +DNi b *d b 。 0026 (4)目的节点选择模块计算每个节点可能成为目的节点的加权概率值:p i D i /D i ,通过概率选择方式从被筛选出的节点集合中选择一个节点作为目的节点。其中, Di值越大的节点被选为目的节点的可能性越大。 0027 (5)在虚拟机迁移程序执行过程中,目的节点选择模块将锁定源节点和目的节点, 将这两个节点作为其他虚拟机迁移程序的迁移目的节点加权值D被强制置为0,直到本次 虚拟机迁移程序执行结束。 0028 (五)源节点(服务器)和目的节点建立。
19、网络连接并完成虚拟机迁移。 说 明 书CN 102790793 A 4/5页 6 附图说明 0029 图1面向云计算虚拟机迁移的决策方法及控制模块示意图 0030 图2面向云计算虚拟机迁移的流程图 0031 图3面向云计算虚拟机迁移的决策方法及控制模块实例图 具体实施方式 0032 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例附图对 本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例也仅仅是本发明 的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有 做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 0033 。
20、为了具体说明面向云计算的虚拟机迁移决策方法和控制模块,这里给出了一个 如图3的实施例。在该实施例中,系统由一个采用集中式部署的虚拟机迁移控制模块 和四台服务器组成,分别为源节点、节点1、节点2、节点3(IP分别为:10.108.36.100、 10.108.36.101、10.108.36.102、10.108.36.103)。源服务器系统为双核x86系统,CPU主 频为2.4GHz,CPU负载阈值为68,在源服务器上运行有三个虚拟机(VM1,VM2,VM3)。 0034 第一步,如图3(a)所示,在t 0 时刻源服务器CPU负载超过设置的阈值68,迁移 触发模块被触发启动并记录下触发类型为C。
21、PU触发。 0035 第二步,如图3(a)所示,迁移触发模块以0.5s为周期连续监测20个周期。迁移 触发模块监测得到源服务器的CPU负载均值为83(大于阈值68并超出15)且其中 多于10次负载值大于负载阈值;另外,通过负载预测技术,在未来20个周期内源节点CPU 负载也满足以上两个条件,迁移触发模块启动虚拟机迁移程序并触发虚拟主机选择模块。 0036 第三步,如图3(b)所示,虚拟主机选择模块监测到三个虚拟机计算资源(CPU, 内存,外存储,网络带宽)使用情况分别为(14*4.8GHz,2.0G,2.5T,1.2GB/s)、 (25*4.8GHz,2.5G,3.5T,1.5GB/s)、(3。
22、0*4.8GHz,3.0G,3.7T,1.6GB/s),其中VM2 和VM3的CPU负载均值大于15,满足作为虚拟主机的初步条件。设迁移代价加权系 数(h c ,h m ,h s ,h b )为(0.1,0.3,0.4,0.2),可有虚拟机VM2的迁移代价加权值H 2 25 *4.8*0.1+2.5*0.3+3.5*0.4+1.5*0.22.57,同理有虚拟机VM3的迁移代价加权值H 3 2.84;最终,虚拟主机选择模块选择VM2为被迁移的虚拟主机,同时触发并把VM2的相关信 息告知目的节点选择模块。 0037 第四步,如图3(c)所示,目的节点选择模块提取其他所有节点资源空余信息, 分别为节。
23、点1(1.0GHz,2.0G,4T,2.0GB/s)、节点2(2.0GHz,3.0G,4.3T,2.5GB/s)、节点 3(2.5GHz,3.5G,5.0T,2.5G B/s),根据虚拟主机选择模块提供的VM2相关信息,由于节点1 的CPU和内存剩余值都不能满足VM2的需求,初步筛选出节点2与节点3为备选目的节点, 并设置(d c ,d m ,d s ,d b )为(0.3,0.3,0.2,0.2);目的节点选择模块根据权值计算策略得到节 点2作为目的节点的加权值D为D22.0*0.3+3.0*0.3+4.3*0.2+2.5*0.22.86,同理, D33.3。根据加权概率值piDi/Di的得。
24、到p 2 45、p 3 55,目的节点选择模 块根据概率选择策略最终选择节点3为目的服务器。 0038 最后,如图3(d)所示,源服务器(10.108.36.100)与节点3(10.108.36.102)间建 立网络连接,进行相应的计算机资源迁移并完成整个虚拟机迁移过程。 说 明 书CN 102790793 A 5/5页 7 0039 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和 原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 说 明 书CN 102790793 A 1/2页 8 图1 图2 说 明 书 附 图CN 102790793 A 2/2页 9 图3 说 明 书 附 图CN 102790793 A 。