[发明专利]一种三阈值的虚拟机迁移方法有效
| 申请号: | 201610291246.8 | 申请日: | 2016-04-29 |
| 公开(公告)号: | CN105930202B | 公开(公告)日: | 2019-03-08 |
| 发明(设计)人: | 梁昌勇;柏一泓;顾东晓;赵树平;陆文星 | 申请(专利权)人: | 合肥工业大学 |
| 主分类号: | G06F9/455 | 分类号: | G06F9/455 |
| 代理公司: | 安徽省合肥新安专利代理有限责任公司 34101 | 代理人: | 陆丽莉;何梅生 |
| 地址: | 230009 安*** | 国省代码: | 安徽;34 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开了一种三阈值的虚拟机迁移策略,其特征包括:1使用虚拟机活跃度来量化虚拟机负载的波动,并通过虚拟机活跃度来判定虚拟机是否活跃;2遍历集群中的主机,将主机中的与主机活跃标记不同的异类虚拟机迁出至过载迁移队列;3遍历集群中的主机,从过载主机中迁出一部分虚拟机至过载迁移队列,直至主机不再过载;4将过载迁移队列中的虚拟机迁出至集群中合适的主机中;5遍历集群中的主机,将轻载主机中的所有虚拟机迁出至轻载迁移队列中;6将轻载迁移队列中的虚拟机迁出至集群中合适的主机中。本发明能降低在云计算环境中虚拟机负载波动剧烈的情况下虚拟机在集群中的主机之间的迁移次数,从而使云服务质量得到提高。 | ||
| 搜索关键词: | 一种 阈值 虚拟机 迁移 策略 | ||
【主权项】:
1.一种三阈值的虚拟机迁移方法,是用于对N台虚拟机在M台主机间的迁移过程中,其特征是:令M台主机记为集合PM={pm1,pm2,...,pmm,...,pmM},1≤m≤M;pmm表示PM中的第m台主机,令第T个周期中的第m台主机pmm记为
且
pcm表示第m台主机pmm的总CPU计算能力;
表示第T个周期中第m台主机
的负载,且![]()
表示第T个周期中第m台主机
使用的CPU计算能力,且![]()
表示第T个周期中第m台主机
的空闲CPU计算能力,且![]()
表示第T个周期中第m台主机
的活跃标记,且
utm、ltm和mtm分别表示第m台主机pmm的上阈值、下阈值和迁移阈值;其中utm=α;ltm=β;
且α<γ<μ≤β;假设第T个周期的第m台主机
中包含
台虚拟机,记为虚拟机集合
且
将在第T周期中第m台主机
中第
台虚拟机
抽象为![]()
表示第m台主机pmm中第
台虚拟机
的总CPU计算能力;
表示第T个周期中第m台主机
中第
台虚拟机
的负载,且![]()
表示第T个周期中第m台主机
中第
台虚拟机
已使用的CPU计算能力,且![]()
表示第T个周期中第m台主机
的第
台虚拟机
的空闲CPU计算能力,且![]()
表示第T周期中第m台主机
的第
台虚拟机
的活跃度,
其中
s表示定值,1≤w≤s;
表示表示第T周期中第m台主机
的第
台虚拟机
的活跃标记,
其中,at表示虚拟机的活跃度阈值;所述虚拟机迁移策略是按如下步骤进行:步骤1、定义第T周期的过载迁移总队列为L(T);定义在第T周期中第m台主机
所使用的过载迁移队列为
初始化T=1;初始化m=1;步骤2、若m>M成立,则跳转到步骤7;否则,初始化过载迁移队列
为空;标记出在虚拟机集合
中所有虚拟机的活跃标记与第T个周期的第m台主机
的活跃标记
不相同的虚拟机;并将标记出的虚拟机从虚拟机集合
中迁出,放入过载迁移队列为
中;从而更新所述第T周期中第m台主机
所使用的过载迁移队列
以及第T个周期第m台主机
中虚拟机集合
步骤3、若第T个周期的第m台主机
中更新后的虚拟机集合中所有虚拟机使用的CPU的计算能力的总和大于等于pcm×utm成立,则跳转到步骤4;否则跳转到步骤6;步骤4、将更新后的虚拟机集合中所有虚拟机按照负载从小到大的顺序进行排序,获得更新后的有序虚拟机集合
步骤5、从所述更新后的有序虚拟机集合
中依次将虚拟机迁入至更新后的过载迁移队列中,直到更新后的有序虚拟机集合
中所有虚拟机的使用的CPU计算能力的总和小于等于pcm×utm为止;从而再次更新第T个周期中第m台主机
所使用的过载迁移队列
以及第T个周期第m台主机
中虚拟机集合
步骤6、令m+1赋值给m;跳转到步骤2;步骤7、令第T个周期的过载迁移总队列为
所述第T个周期的过载迁移总队列L(T)中的虚拟机数量记为
将所述第T个周期的过载迁移总队列L(T)中的虚拟机按照其已使用的CPU计算能力从大到小的顺序进行排序,从而获得排序后的第T个周期的过载迁移总队列![]()
表示排序后的第T个周期的过载迁移总队列L′(T)中的第i(T)台虚拟机;第i(T)台虚拟机
的已使用的CPU计算能力记为
第i(T)台虚拟机
的活跃标示记为
步骤8、令i(T)=1;步骤9、若i(T)>I(T)成立,则表示在第T周期中主机集合中的所有主机均未过载,将第T个周期中均未过载的主机集合记为
第T个周期中第m台未过载主机记为
第T个周期中第m台未过载主机
中的虚拟机集合记为
且
并跳转至步骤12;否则,将M台主机PM中的所有主机按照其使用的CPU计算能力从大到小进行排序,从而获得在第T个周期中第i(T)次排序后的M台主机![]()
表示在第T个周期中第i(T)次排序后的M台主机
中的第m台主机;且
步骤10、令m=1;步骤11、对排序后的第T个周期的过载迁移总队列L′(T)中的第i(T)台虚拟机
判断是否满足
且
如满足条件,则将第i(T)台虚拟机
放入第i(T)次排序后的第m台主机
中,并令i(T)+1赋值给i(T)后,跳转至步骤9;如不满足条件,则令m+1赋值给m后,判断m>M是否成立,若成立,执行步骤9;否则,跳转至步骤11;步骤12、定义第T周期的轻载迁移总队列为L*(T),定义在第T周期中第m台主机
所使用的轻载迁移队列为
初始化m=1;步骤13、若m>M成立,则跳转至步骤14;否则,初始化轻载迁移队列
为空;若第T个周期中第m台未过载主机
中的虚拟机集合
中所有虚拟机使用的CPU的计算能力的总和小于等于ltm×pcm,则将
中的虚拟机全部迁入到轻载迁移队列
中,从而更新第T个周期第m台主机
所使用的轻载迁移队列
令m+1赋值给m,跳转至步骤13;步骤14、令第T个周期的轻载迁移总队列为
所述第T个周期的轻载迁移总队列L*(T)中的虚拟机数量记为I*(T);将所述第T个周期的轻载迁移总队列L*(T)中的虚拟机按照其已使用的CPU计算能力从大到小的顺序进行排序,从而获得排序后的第T个周期的轻载总队列![]()
表示排序后的第T个周期的轻载迁移总队列L′*(T)中的第i*(T)台虚拟机;第i*(T)台虚拟机
的已使用的CPU计算能力记为
第i*(T)台虚拟机
的活跃标示记为
步骤15、令i*(T)=1;步骤16、若i*(T)>I*(T)成立,则表示在第T周期中主机集合中的所有主机均未轻载,并跳转至步骤19;否则,将M台主机PM中的所有主机按照其使用的CPU计算能力从大到小进行排序,从而获得在第T个周期中第i*(T)次排序后的M台主机![]()
表示在第T个周期中第i*(T)次排序后的M台主机
中的第m台主机;且
步骤17、令m=1;步骤18、对排序后的第T个周期的轻载迁移总队列L′*(T)中的第i*(T)台虚拟机
判断是否满足
且
如满足条件,则将第i*(T)台虚拟机
放入第i*(T)次排序后的第m台主机
中,并令i*(T)+1赋值给i*(T)后,跳转至步骤16;如不满足条件,则令m+1赋值给m后,判断m>M是否成立,若成立,执行步骤16;否则,跳转至步骤18;步骤19、令T+1赋值给T,并跳转至步骤2。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610291246.8/,转载请声明来源钻瓜专利网。
- 上一篇:一种自适应的帮助线程预取质量控制方法
- 下一篇:一种服务创建方法及装置





