CN110083435A - 基于联盟形成的虚拟机迁移设计方法 - Google Patents
基于联盟形成的虚拟机迁移设计方法 Download PDFInfo
- Publication number
- CN110083435A CN110083435A CN201910380040.6A CN201910380040A CN110083435A CN 110083435 A CN110083435 A CN 110083435A CN 201910380040 A CN201910380040 A CN 201910380040A CN 110083435 A CN110083435 A CN 110083435A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- machine
- load
- migrated
- physical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013508 migration Methods 0.000 title claims abstract description 27
- 230000005012 migration Effects 0.000 title claims abstract description 27
- 230000015572 biosynthetic process Effects 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000013461 design Methods 0.000 title claims abstract description 13
- 238000004891 communication Methods 0.000 claims abstract description 23
- 230000001174 ascending effect Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 4
- 238000005520 cutting process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及负载均衡、匹配博弈领域,特别涉及基于联盟形成的虚拟机迁移设计方法。本发明为了寻找最优的联盟结构(即虚拟机群体形成),提出一种动态的,迭代的联盟形成算法,来共同考虑待迁移虚拟机分配和通信成本最小化问题。同时虚拟机迁移过程中,考虑低负载物理机的容量问题,即迁移后负载不超过阈值。
Description
技术领域
本发明涉及负载均衡、匹配博弈领域,特别涉及基于联盟形成的虚拟机迁移设计方法。
背景技术
为了更好的组织维护云计算数据中心庞大的I T基础设施资源,云计算***引入了虚拟化技术,通过将一台物理服务器分割为若干个相互隔离的虚拟服务器,实现对于物理资源的动态分割,提高***的资源利用率,降低管理难度,同时屏蔽了底层硬件资源的异构性。当前,计算***的资源规模不断扩展,种类日益丰富,处理能力快速增强,应用需求也灵活多样,虚拟化技术能够动态地组织各种计算资源,实现透明化的***架构,从而可以灵活构建计算环境来满足多种应用需求,并且可以大大减少服务器的数量,降低能耗,这使虚拟机技术越来越受到关注。为了保证负载均衡,高负载物理机将虚拟机迁移到低负载物理机上,来实现云环境中的负载均衡问题。
在本发明作出之前,现有的虚拟机迁移仍然存在着如下问题:
1)负载不均衡。用于云计算的数据中心通常执行效率不高。这种低效通常与虚拟机(vm)分配方式不当有关,从而导致资源负载分布不均衡。
2)通信成本高。来自同一个用户的虚拟机之间需要进行通信,我们假设同一个物理机上的虚拟机之间通信成本为0,因此我们考虑来自不同物理机上的虚拟机之间的通信成本。若虚拟机分配方式不当,会导致通信成本过高。
3)迁移成本高。虚拟机迁移过程中会产生迁移成本。
发明内容
本发明的目的就在于克服上述问题,研发基于联盟形成的虚拟机迁移设计方法。
本发明的技术方案是:
基于联盟形成的虚拟机迁移设计方法,其特征在于,步骤如下:
(1)云环境中有m台物理机,n台部署在物理机上的虚拟机(其中,m为物理机总数,n为虚拟机总数);
(2)选择待迁移的虚拟机:从高负载物理机上选择一台或多台虚拟机进行迁移,直到物理机负载低于阈值(阈值设置为物理机负载的百分比,实验时,可以简约抽象成运行时内存占用);
(3)待迁移虚拟机联盟形成:将待迁移的虚拟机进行联盟划分,联盟与低负载的物理机一一映射;
(4)交换操作:对于待迁移的虚拟机形成的联盟交换操作。
优选地,步骤(2)中,按虚拟机的通信成本升序排序,当负载高于阈值时,不断迁移虚拟机,直到负载在合理范围内,选择待迁移虚拟机过程结束。
优选地,步骤(3)中,对剩余待迁移虚拟机迭代使用背包算法,找到虚拟机联盟;当所有虚拟机形成联盟,联盟形成初始化完成。
优选地,步骤(4)中,在能减少虚拟机之间通信成本的情况下,不同联盟的虚拟机间进行交换操作。
优选地,不同联盟的虚拟机间迭代进行交换操作,直至各个联盟中成员稳定,得到最优联盟划分。
优选地,所述步骤(2)中选择待迁移的虚拟机是应用选择算法来实现,包括如下步骤:
步骤a:计算每台物理机上的虚拟机“重量”之和,“重量”指代虚拟机上部署的应用产生的负载,得到“重量”之和集合W={w1,w2,…wm};
步骤b:对于任意wi属于W,如果wi小于F,标记物理机mi为低负载,加到低负载物理机集合WL,如果F<wi<F’,标记物理mi为合理负载,加到合理负载物理机集合WS,如果wi大于F’,标记物理机mi为高负载,加到高负载物理机集合WH(其中F为低负载阈值,F’为高负载阈值);
步骤c:对于mi中的每台虚拟机,计算其通信成本之和,并按通信成本升序,“重量”降序排序;
步骤d:排好序之后,对于任意属于mi,表示第i台物理机上的n台虚拟机,第i台虚拟机以表示;如果移除它,mi的虚拟机“重量”在合理负载范围,移除它,放到待迁移虚拟机集合Q中,跳出本次循环,开始下一次;如果移除它,mi的虚拟机“重量”在高负载范围,移除它,放到迁移虚拟机集合Q中,继续本次循环,判断下一个虚拟机;如果移除它,mi的虚拟机“重量”在低负载范围,移除它,放到迁移虚拟机集合Q中,跳出本次循环,开始下一次,同时把mi放到WL中;
步骤e:循环结束后,输出待迁移虚拟机集合Q,低负载物理机集合WL,合理负载物理机集合WS和高负载物理机集合WH。
本发明的优点和效果在于:考虑到一种新颖的虚拟机迁移机制,将它与联盟博弈论结合起来,合并了虚拟机联盟形成与匹配博弈理论;提出了一种新颖的选择算法,选择出待迁移的虚拟机。为了寻找最优的联盟结构(即虚拟机群体形成),提出一种动态的,迭代的联盟形成算法,来共同考虑待迁移虚拟机分配和通信成本最小化问题。同时虚拟机迁移过程中,考虑低负载物理机的容量问题,即迁移后负载不超过阈值。
附图说明
图1——本发明云环境中物理机虚拟机分布模型示意图;
图2——本发明联盟合并过程示意图;
图3——本发明联盟分割过程示意图。
具体实施方式
基于联盟形成的虚拟机迁移设计方法,主要包括选择待迁移虚拟机、待迁移虚拟机联盟形成和联盟-低负载物理机匹配三个阶段,实现了云环境中的物理机负载均衡,并在尽可能降低通信成本和迁移成本的情况下。
云环境中有m台物理机,物理机上部署着一些虚拟机,本实施例采用M={m1,m2,...,mm}表示物理机集合,其中mi表示的是第i台物理机;表示第i台物理机上的n台虚拟机,第i台虚拟机以表示;每台虚拟机有自己的“重量”(“重量”,这里指代虚拟机上部署的应用产生的负载);每台物理机上虚拟机“重量”之和的集合W={w1,w2,...,wm},其中wi表示的是第i台物理机上虚拟机“重量”之和;物理机合理负载(F,F’),低于F表示的是低负载物理机,需要迁移进来部分虚拟机以达到合理负载;高于F’表示的是高负载物理机,需要迁移其中的部分虚拟机;WL表示的是低负载的物理机的集合,WS表示的是合理负载的物理机的集合,WH表示的是高负载的物理机的集合,Q表示的待迁移的虚拟机集合。
如图1所示,物理机节点中部署的各个用户所拥有的虚拟机节点,可以看作是一个大图,由单个节点,及数量不等的多个节点构成的无向连通子图组成。而每个连通子图(单个节点),都有其对应的邻接矩阵(表示顶点之间的相邻关系)。从而可以将一个大图转换成一个n X n的二维邻接矩阵(n表示虚拟机个数),它是由k(用户个数)个小邻接矩阵组成(每个用户拥有的虚拟机对应的无向连通子图的邻接矩阵)。
选择待迁移虚拟机阶段主要是应用选择算法来实现,包括如下步骤:
步骤a:计算每台物理机上的虚拟机“重量”之和,得到“重量”之和集合W={w1,w2,…wm};
步骤b:对于任意wi属于W,如果wi小于F,标记物理机mi为低负载,加到低负载物理机集合WL,如果F<wi<F’,标记物理mi为合理负载,加到合理负载物理机集合WS,如果wi大于F’,标记物理机mi为高负载,加到高负载物理机集合WH;
步骤c:对于mi中的每台虚拟机,计算其通信成本之和,并按通信成本升序,“重量”降序排序;
步骤d:排好序之后,对于任意属于mi,如果移除它,mi的虚拟机“重量”在合理负载范围,移除它,放到待迁移虚拟机集合Q中,跳出本次循环,开始下一次;如果移除它,mi的虚拟机“重量”在高负载范围,移除它,放到Q中,继续本次循环,判断下一个虚拟机;如果移除它,mi的虚拟机“重量”在低负载范围,移除它,放到Q中,跳出本次循环,开始下一次,同时把mi放到WL中;
步骤e:循环结束后,输出待迁移虚拟机集合Q,低负载物理机集合WL,合理负载物理机集合WS和高负载物理机集合WH。
将待迁移虚拟机进行联盟划分,联盟与低负载物理机一一映射。
本发明用集合S代表联盟,S={vm1,vm2,…,vmk},联盟结构∏由联盟S组成,S∈Π。
联盟划分过程如下:
定义1:给定任意两个联盟划分Π1和∏2,则优选Π1当且仅当以下条件满足:
其中C(Π1)和C(Π2)分别是联盟划分Π1和Π2的虚拟机之间的总通信成本。
总通信成本C(Π)计算如下:
其中,u(i)和u(j)分别为虚拟机i和虚拟机j迁移前所在的物理机。Pi和Pj分别为迁移后虚拟机i和虚拟机j所在的物理机。C′为数据量,d为Pi和Pj之间的距离。
动态改变待迁移虚拟机的联盟划分,使得虚拟机之间的总通信成本最小化。本发明定义两种简单的操作改变联盟划分:合并和分割。联盟的合并与分割操作具体如图2、图3所示:
合并操作:当且仅当C(S1∪S2)<C(S1)+C(S2),联盟S1和联盟S2合并成一个更大的联盟S1∪S2。
分割操作:当且仅当C(S1∪S2)>C(S1)+C(S2),联盟S1∪S2分割成两个联盟S1和S2。
由于联盟的个数是确定的,再加上有一些约束条件(选择目标主机,迁移虚拟机,目标主机资源使用率不得大于阈值。在迁移的过程中要考虑各个联盟中的虚拟机之间的通信成本,要使得总通信成本尽可能低),所以产生的联盟结构数量是有限的。在当前的联盟结构的分配下,重新进行联盟形成:
第一次迭代:寻找一个符合容量限制的交换操作,重新计算两种联盟结构下的总通信成本,并比较;
第二次迭代:在新的联盟结构下寻找一个符合容量限制的交换操作,重新计算两种联盟结构下的总通信成本,并比较;
如此重复迭代,直到联盟结构是稳定的。
Claims (6)
1.基于联盟形成的虚拟机迁移设计方法,其特征在于,步骤如下:
(1)云环境中有m台物理机,n台部署在物理机上的虚拟机,m为物理机总数,n为虚拟机总数;
(2)选择待迁移的虚拟机:从高负载物理机上选择一台或多台虚拟机进行迁移,直到物理机负载低于阈值;
(3)待迁移虚拟机联盟形成:将待迁移的虚拟机进行联盟划分,联盟与低负载的物理机一一映射;
(4)交换操作:对于待迁移的虚拟机形成的联盟交换操作。
2.根据权利要求1所述的基于联盟形成的虚拟机迁移设计方法,其特征在于,步骤(2)中,按虚拟机的通信成本升序排序,当负载高于阈值时,不断迁移虚拟机,直到负载在合理范围内,选择待迁移虚拟机过程结束。
3.根据权利要求2所述的基于联盟形成的虚拟机迁移设计方法,其特征在于,步骤(3)中,对剩余待迁移虚拟机迭代使用背包算法,找到虚拟机联盟;当所有虚拟机形成联盟,联盟形成初始化完成。
4.根据权利要求3所述的基于联盟形成的虚拟机迁移设计方法,其特征在于,步骤(4)中,在能减少虚拟机之间通信成本的情况下,不同联盟的虚拟机间进行交换操作。
5.根据权利要求4所述的基于联盟形成的虚拟机迁移设计方法,其特征在于,不同联盟的虚拟机间迭代进行交换操作,直至各个联盟中成员稳定,得到最优联盟划分。
6.根据权利要求1或2所述的基于联盟形成的虚拟机迁移设计方法,其特征在于,所述步骤(2)中选择待迁移的虚拟机是应用选择算法来实现,包括如下步骤:
步骤a:计算每台物理机上的虚拟机“重量”之和,“重量”指代虚拟机上部署的应用产生的负载,得到“重量”之和集合W={w1,w2,…wm};
步骤b:对于任意wi属于W,如果wi小于F,标记物理机mi为低负载,加到低负载物理机集合WL,如果F<wi<F’,标记物理mi为合理负载,加到合理负载物理机集合WS,如果wi大于F’,标记物理机mi为高负载,加到高负载物理机集合WH;其中,F为低负载阈值,F’为高负载阈值;
步骤c:对于mi中的每台虚拟机,计算其通信成本之和,并按通信成本升序,“重量”降序排序;
步骤d:排好序之后,对于任意属于mi,表示第i台物理机上的n台虚拟机,第i台虚拟机以表示;如果移除它,mi的虚拟机“重量”在合理负载范围,移除它,放到待迁移虚拟机集合Q中,跳出本次循环,开始下一次;如果移除它,mi的虚拟机“重量”在高负载范围,移除它,放到迁移虚拟机集合Q中,继续本次循环,判断下一个虚拟机;如果移除它,mi的虚拟机“重量”在低负载范围,移除它,放到迁移虚拟机集合Q中,跳出本次循环,开始下一次,同时把mi放到WL中;
步骤e:循环结束后,输出待迁移虚拟机集合Q,低负载物理机集合WL,合理负载物理机集合WS和高负载物理机集合WH。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910380040.6A CN110083435A (zh) | 2019-05-08 | 2019-05-08 | 基于联盟形成的虚拟机迁移设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910380040.6A CN110083435A (zh) | 2019-05-08 | 2019-05-08 | 基于联盟形成的虚拟机迁移设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110083435A true CN110083435A (zh) | 2019-08-02 |
Family
ID=67419261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910380040.6A Pending CN110083435A (zh) | 2019-05-08 | 2019-05-08 | 基于联盟形成的虚拟机迁移设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110083435A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897652A (zh) * | 2020-07-30 | 2020-11-06 | 湖南匡楚科技有限公司 | 一种基于l-bfgs的云资源动态优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104503832A (zh) * | 2014-12-22 | 2015-04-08 | 西安电子科技大学 | 一种公平和效率均衡的虚拟机调度***及方法 |
CN105867999A (zh) * | 2016-04-18 | 2016-08-17 | 浪潮集团有限公司 | 采用基于sdn的多虚拟机同时迁移的虚拟机迁移实现方法 |
CN106970831A (zh) * | 2017-05-15 | 2017-07-21 | 金航数码科技有限责任公司 | 一种面向云平台的虚拟机资源动态调度***及方法 |
WO2018177042A1 (zh) * | 2017-03-27 | 2018-10-04 | 中兴通讯股份有限公司 | 一种实现资源调度的方法及装置 |
CN109144664A (zh) * | 2018-07-26 | 2019-01-04 | 西安电子科技大学 | 一种基于用户服务质量需求差异的虚拟机动态迁移方法 |
-
2019
- 2019-05-08 CN CN201910380040.6A patent/CN110083435A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104503832A (zh) * | 2014-12-22 | 2015-04-08 | 西安电子科技大学 | 一种公平和效率均衡的虚拟机调度***及方法 |
CN105867999A (zh) * | 2016-04-18 | 2016-08-17 | 浪潮集团有限公司 | 采用基于sdn的多虚拟机同时迁移的虚拟机迁移实现方法 |
WO2018177042A1 (zh) * | 2017-03-27 | 2018-10-04 | 中兴通讯股份有限公司 | 一种实现资源调度的方法及装置 |
CN106970831A (zh) * | 2017-05-15 | 2017-07-21 | 金航数码科技有限责任公司 | 一种面向云平台的虚拟机资源动态调度***及方法 |
CN109144664A (zh) * | 2018-07-26 | 2019-01-04 | 西安电子科技大学 | 一种基于用户服务质量需求差异的虚拟机动态迁移方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897652A (zh) * | 2020-07-30 | 2020-11-06 | 湖南匡楚科技有限公司 | 一种基于l-bfgs的云资源动态优化方法 |
CN111897652B (zh) * | 2020-07-30 | 2021-07-30 | 福建意德信息技术有限公司 | 一种基于l-bfgs的云资源动态优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105159762B (zh) | 基于贪心策略的启发式云计算任务调度方法 | |
CN104468803B (zh) | 一种虚拟数据中心资源映射方法和设备 | |
CN108776612A (zh) | 一种云计算任务分配方法、装置、设备及存储介质 | |
CN106506657A (zh) | 一种基于多目标的云计算虚拟机分配调整方法 | |
CN104166594B (zh) | 负载均衡控制方法及相关装置 | |
CN102231121B (zh) | 基于内存映射的大数据文件快速并行提取方法 | |
Gao et al. | An energy-aware ant colony algorithm for network-aware virtual machine placement in cloud computing | |
CN105975342A (zh) | 基于改进布谷鸟搜索算法的云计算任务调度方法及*** | |
Diaz et al. | Energy-aware fast scheduling heuristics in heterogeneous computing systems | |
CN107196806B (zh) | 基于子图辐射的拓扑临近匹配虚拟网络映射方法 | |
CN107193640B (zh) | 一种基于Rendezvous哈希算法的虚拟机初始放置策略方法 | |
CN106412124B (zh) | 一种并序化云服务平台任务分配***及任务分配方法 | |
CN112202599B (zh) | 针对异构多核平台通信优化的拓扑感知映射方法及*** | |
Li et al. | Page-sharing-based virtual machine packing with multi-resource constraints to reduce network traffic in migration for clouds | |
CN103677960A (zh) | 一种能耗约束的虚拟机博弈重放置方法 | |
CN113419861B (zh) | 一种面向gpu卡群的图遍历混合负载均衡方法 | |
CN113742089A (zh) | 异构资源中神经网络计算任务的分配方法、装置和设备 | |
CN106371924A (zh) | 一种最小化MapReduce集群能耗的任务调度方法 | |
Di et al. | Efficient online virtual network mapping using resource evaluation | |
CN108874508A (zh) | 一种云计算虚拟服务器***负载均衡调度方法 | |
CN110362379A (zh) | 基于改进蚁群算法的虚拟机调度方法 | |
CN114461368A (zh) | 一种基于协同果蝇算法的多目标云工作流调度方法 | |
CN110083435A (zh) | 基于联盟形成的虚拟机迁移设计方法 | |
CN110308973A (zh) | 一种基于能耗优化的容器动态迁移方法 | |
CN109976879A (zh) | 一种基于资源使用曲线互补的云计算虚拟机放置方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190802 |
|
RJ01 | Rejection of invention patent application after publication |