CN104683444A - 一种数据中心多虚拟机的数据迁移方法 - Google Patents
一种数据中心多虚拟机的数据迁移方法 Download PDFInfo
- Publication number
- CN104683444A CN104683444A CN201510036992.8A CN201510036992A CN104683444A CN 104683444 A CN104683444 A CN 104683444A CN 201510036992 A CN201510036992 A CN 201510036992A CN 104683444 A CN104683444 A CN 104683444A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- migration
- data
- dirty data
- dirty
- 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.)
- Granted
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种数据中心多虚拟机的数据迁移方法,属于云计算领域。本发明基于Franco Callegati和Walter Cerroni提出的基于预复制的并行多虚拟机迁移策略,以及在本发明中提出的基于后复制的串行多虚拟机迁移策略为基础,引入参量m及修正因子α,提出一种满足服务提供商与用户协商的最大停机时间的约束条件下,总迁移时间最小的数据迁移方法,该方法适用范围广,可进一步降低服务提供商的迁移时间成本。
Description
技术领域
本发明属于云计算领域,具体涉及一种数据中心多虚拟机的数据迁移方法。
背景技术
近年来,云计算的发展越来越受到人们的关注,其相关应用也逐渐出现在了人们的生活之中。云服务提供商通过虚拟化技术向用户提供相应服务。随着用户对数据中心的资源数量和资源种类需求的增加,简单扩充数据中心规模已经不是一种可行的解决方案了。因为,当数据中心的规模增大,数据中心的建设成本也会大量增加,而且管理难度和维护难度也会大量增加。因此,为了解决这个问题,研究者提出了多数据中心的解决方案。近年来,越来越多的研究者将研究方向从单个数据中心转移到了多数据中心。
随着数据中心规模的增加和应用程序的复杂化,节能和提高资源的利用率已经变成了研究的热点。与此同时,云服务提供商必须遵守和用户签订的服务水平协议(SLA)。为了达到这些目标,研究者提出了虚拟机迁移技术。
针对需要在多个数据中心之间迁移多个虚拟机情况,Franco Callegati和Walter Cerroni提出了一种基于预复制策略的串行多虚拟机迁移策略。其主要思想是在不停机的情况下通过多次不断迭代的迁移每一个虚拟机的记忆(通常又称为脏数据),从而不断的减少虚拟机的脏数据的数量,当虚拟机的脏数据小于某个给定的门限值或迭代次数大于给定的最大迭代次数时,就停止迁移虚拟机的脏数据,然后将虚拟机停止,并迁移剩下的脏数据,最后启动目的虚拟机。在迁移过程中,每个虚拟机单独占有给定的全部带宽,而虚拟机之间采用串行的迁移方式,即第一个虚拟机的迁移完了之后再迁移下一个虚拟机,以此达到迁移的目的。虽然上述方法能够实现多个虚拟机的迁移,但是它的停机时间太长。且该方法对每一个虚拟机都采用预复制策略,即在迭代传输脏数据期间保持虚拟机运行;但是在虚拟数据中心(VDC)请求中,虚拟机之间有很强的关联性,当第一个虚拟机迁移之后到最后一个虚拟机重启之前这一段时间内服务是不可用的。又由于采用预复制策略,需要多次迭代,在每次的迭代过程中不断迁移虚拟机的脏数据,但是又会不断的产生脏数据。所以,采用预复制策略比后复制策略需要多迁移一些脏数据,这样就会增加迁移时间和停机时间。所以,这种基于预复制策略的串行多虚拟机迁移策略并不是最优的串行多虚拟机迁移策略。
针对需要在多个数据中心之间迁移多个虚拟机情况,Franco Callegati和Walter Cerroni提出了另一种基于预复制策略的并行多虚拟机迁移策略。其主要思想是在不停机的情况下通过多次不断迭代的迁移所有虚拟机的脏数据,从而不断的减少虚拟机的脏数据的数量。同样当虚拟机的脏数据小于某个给定的门限值或迭代次数大于给定的最大迭代次数是停止迁移虚拟机的脏数据,然后将虚拟机停止,并迁移剩下的脏数据,最后启动目的虚拟机。在迁移过程中,所有虚拟机同时进行迁移,并且所有虚拟机共同的平均分享给定的带宽。虽然上述方法也能够实现多个虚拟机的迁移,并且在给定带宽充足的情况下,克服了串行多虚拟机迁移策略的停机时间长的缺点。但是在给定的带宽与使用串行多虚拟机迁移策略的带宽相同的情况下,由于多个虚拟机共同的分享带宽,导致并行多虚拟机迁移策略的迁移时间远大于串行多虚拟机迁移策略的迁移时间。
发明内容
本发明针对上述现有技术的不足,基于Franco Callegati和Walter Cerroni提出的串行多虚拟机迁移策略,以改进型串行多虚拟机迁移策略和并行多虚拟机迁移策略为基础,提供一种满足服务提供商与用户协商的最大停机时间的约束条件下、总迁移时间最小的多虚拟机数据迁移方法。
本发明具体采用如下技术方案:
一种数据中心多虚拟机的数据迁移方法,其流程如图1所示,具体包括以下步骤:
步骤1.数据初始化:令需要迁移数据的虚拟机个数为M,确定可接受的最大停机时间所述停机时间指所述M个虚拟机从第一个虚拟机关机时起,至所有虚拟机完成数据迁移并全部重新开机运行时止的这一段时长,确定停止迭代的脏数据量阈值Vth和迭代次数阈值nmax,选定修正因子α,其中,0<α<1,所有虚拟机的初始状态为开机正常运转状态,执行步骤2;
步骤2.从M个虚拟机中选取原始脏数据数量最大的m个虚拟机,对这m个虚拟机采用并行迁移策略进行数据迁移:
步骤2-1.m的取值的确定;
整个数据中心的停机时间由以下公式确定:
其中,R是整个迁移请求提供的总带宽,是第i个虚拟机的原始脏数据量,所有的虚拟机按照原始脏数据量排序编号,即修正因子α用于在后复制策略中用来修正实际需要迁移的脏数据量,Tres是单个虚拟机固有的启动时间;对m从1开始依次递增取值,直至其对应的停机时间小于最大停机时间时止,此时的m值即为选定的参量值;
步骤2-2.所选择的m个虚拟机在不关机状态下,将各自的原始脏数据通过共享宽带同时迁移至目的地,执行步骤2-3;
步骤2-3.所述m个虚拟机的原始脏数据迁移完毕后,各个虚拟机检查其原始脏数据传输期间的新增脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,则同时执行步骤2-4与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-4.将m个虚拟机的新增脏数据通过共享宽带同时迁移至目的地;
步骤2-5.所述m个虚拟机的新增脏数据迁移完毕后,各个虚拟机检查其在本次传输期间的再一次新增的脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,或者已经迭代次数等于迭代次数阈值nmax,则同时执行步骤2-6与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-6.将所有的虚拟机关机,并把m个虚拟机剩余的脏数据通过共享宽带同时迁移至目的地;
步骤3.对剩余的M-m个虚拟机采用如下所述的基于后复制的串行迁移策略进行数据迁移:
步骤3-1.将停机后的M-m个虚拟机,按照串行方式将该M-m个虚拟机的脏数据依次传输至目的地:针对这M-m个虚拟机,上一虚拟机的脏数据完成迁移后,才进行下一虚拟机脏数据的迁移,直至M-m个虚拟机的脏数据全部完成迁移,执行步骤4;
步骤4.待M个虚拟机的数据迁移完成后,重新启动所有虚拟机完成整个数据迁移过程。
本发明的有益效果是:
(1)本发明提供的多虚拟机的数据迁移方法基于服务提供商和用户所商定可接受的最大停机时间,通过引入参量m及修正因子α,在确保满足所述最大停机时间的前提下,尽可能的减小迁移时间,由此降低服务提供商的时间成本;
(2)传统的迁移策略大多是针对单虚拟机迁移请求,而本发明提供的迁移方法能适用于不同虚拟机数量的迁移请求,因此与传统的迁移策略相比,本方法的适用范围更广。
附图说明
图1为本发明提供的数据中心多虚拟机的数据迁移方法流程图。
具体实施方式
本具体实施方式采用如下技术方案:
一种数据中心多虚拟机的数据迁移方法,其流程如图1所示,具体包括以下步骤:
步骤1.数据初始化:令需要迁移数据的虚拟机个数为M,确定可接受的最大停机时间所述停机时间指所述M个虚拟机从第一个虚拟机关机时起,至所有虚拟机完成数据迁移并全部重新开机运行时止的这一段时长,确定停止迭代的脏数据量阈值Vth和迭代次数阈值nmax,选定修正因子α,其中,0<α<1,所有虚拟机的初始状态为开机正常运转状态,执行步骤2;
步骤2.从M个虚拟机中选取原始脏数据数量最大的m个虚拟机,对这m个虚拟机采用并行迁移策略进行数据迁移:
步骤2-1.m的取值的确定;
整个数据中心的停机时间由以下公式确定:
其中,R是整个迁移请求提供的总带宽,是第i个虚拟机的原始脏数据量,所有的虚拟机按照原始脏数据量排序编号,即修正因子α用于在后复制策略中用来修正实际需要迁移的脏数据量,Tres是单个虚拟机固有的启动时间;对m从1开始依次递增取值,直至其对应的停机时间小于最大停机时间时止,此时的m值即为选定的参量值;
步骤2-2.所选择的m个虚拟机在不关机状态下,将各自的原始脏数据通过共享宽带同时迁移至目的地,执行步骤2-3;
步骤2-3.所述m个虚拟机的原始脏数据迁移完毕后,各个虚拟机检查其原始脏数据传输期间的新增脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,则同时执行步骤2-4与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-4.将m个虚拟机的新增脏数据通过共享宽带同时迁移至目的地;
步骤2-5.所述m个虚拟机的新增脏数据迁移完毕后,各个虚拟机检查其在本次传输期间的再一次新增的脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,或者已经迭代次数等于迭代次数阈值nmax,则同时执行步骤2-6与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-6.将所有的虚拟机关机,并把m个虚拟机并把各虚拟机内剩余的脏数据通过共享宽带同时迁移至目的地;
步骤3.对剩余的M-m个虚拟机采用如下所述的基于后复制的串行迁移策略进行数据迁移:
步骤3-1.将停机后的M-m个虚拟机,按照串行方式将该M-m个虚拟机的脏数据依次传输至目的地:针对这M-m个虚拟机,上一虚拟机的脏数据完成迁移后,才进行下一虚拟机脏数据的迁移,直至M-m个虚拟机的脏数据全部完成迁移,执行步骤4;
步骤4.待M个虚拟机的数据迁移完成后,重新启动所有虚拟机完成整个数据迁移过程。
Claims (3)
1.一种数据中心多虚拟机的数据迁移方法,具体包括以下步骤:
步骤1.数据初始化:令需要迁移数据的虚拟机个数为M,确定可接受的最大停机时间 所述停机时间指所述M个虚拟机从第一个虚拟机关机时起,至所有虚拟机完成数据迁移并全部重新开机运行时止的这一段时长,确定停止迭代的脏数据量阈值Vth和迭代次数阈值nmax,选定修正因子α,其中,0<α<1,所有虚拟机的初始状态为开机正常运转状态;
步骤2.从M个虚拟机中选取原始脏数据数量最大的m个虚拟机,对这m个虚拟机采用基于预复制的并行迁移策略进行数据迁移;
步骤3.对剩余的M-m个虚拟机采用基于后复制的串行迁移策略进行数据迁移;
步骤4.待M个虚拟机的数据迁移完成后,重新启动所有虚拟机完成整个数据迁移过程。
2.根据权利要求1所述的数据中心多虚拟机的数据迁移方法,其特征在于,步骤2所述的并行迁移策略主要包括以下步骤:
步骤2-1.m取值的确定;
整个数据中心的停机时间由以下公式确定:
其中,R是整个迁移请求提供的总带宽,Vi T是第i个虚拟机的原始脏数据量,所有的虚拟机按照原始脏数据量排序编号,即修正因子α用于在后复制策略中用来修正实际需要迁移的脏数据量,Tres是单个虚拟机固有的启动时间;对m从1开始依次递增取值,直至其对应的停机时间小于最大停机时间时止,此时的m值即为选定的参量值;
步骤2-2.所选择的m个虚拟机在不关机状态下,将各自的原始脏数据通过共享宽带同时迁移至目的地,执行步骤2-3;
步骤2-3.所述m个虚拟机的原始脏数据迁移完毕后,各个虚拟机检查其原始脏数据传输期间的新增脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,则同时执行步骤2-6与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-4.将m个虚拟机的新增脏数据通过共享宽带同时迁移至目的地;
步骤2-5.所述m个虚拟机的新增脏数据迁移完毕后,各个虚拟机检查其在本次脏数据传输期间的新增的脏数据量;
若至少有一个虚拟机的新增脏数据量不高于所设定的脏数据量阈值,或者已经迭代次数等于迭代次数阈值nmax,则同时执行步骤2-6与步骤3;
否则,执行步骤2-4进行迭代数据迁移;
步骤2-6.将所有的虚拟机关机,并把m个虚拟机剩余的脏数据通过共享宽带同时迁移至目的地。
3.根据权利要求2所述的数据中心多虚拟机的数据迁移方法,其特征在于,所述基于后复制的串行迁移策略主要包括以下步骤:
步骤3-1.将停机后的M-m个虚拟机,按照串行方式将该M-m个虚拟机的脏数据依次传输至目的地:针对这M-m个虚拟机,上一虚拟机的脏数据完成迁移后,才进行下一虚拟机脏数据的迁移,直至M-m个虚拟机的脏数据全部完成迁移,执行步骤4。
步骤4.待M个虚拟机的数据迁移完成后,重新启动所有虚拟机完成整个数据迁移过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510036992.8A CN104683444B (zh) | 2015-01-26 | 2015-01-26 | 一种数据中心多虚拟机的数据迁移方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510036992.8A CN104683444B (zh) | 2015-01-26 | 2015-01-26 | 一种数据中心多虚拟机的数据迁移方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104683444A true CN104683444A (zh) | 2015-06-03 |
CN104683444B CN104683444B (zh) | 2017-11-17 |
Family
ID=53318013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510036992.8A Active CN104683444B (zh) | 2015-01-26 | 2015-01-26 | 一种数据中心多虚拟机的数据迁移方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104683444B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105610715A (zh) * | 2016-03-14 | 2016-05-25 | 山东大学 | 一种基于sdn的云数据中心多虚拟机迁移调度计划方法 |
CN106775928A (zh) * | 2016-11-25 | 2017-05-31 | 国家电网公司 | 一种异构云平台间的虚拟机自动迁移系统及方法 |
CN106990999A (zh) * | 2017-03-15 | 2017-07-28 | 深信服科技股份有限公司 | 虚拟机业务迁移方法及装置 |
CN107735767A (zh) * | 2015-06-26 | 2018-02-23 | 英特尔公司 | 用于虚拟机迁移的技术 |
CN109189545A (zh) * | 2018-07-06 | 2019-01-11 | 烽火通信科技股份有限公司 | 一种提高虚拟机热迁移可靠性的实现方法及系统 |
CN109358952A (zh) * | 2018-10-30 | 2019-02-19 | 张家口浩扬科技有限公司 | 一种虚拟机迁移方法和系统 |
CN110622478A (zh) * | 2018-04-08 | 2019-12-27 | 华为技术有限公司 | 数据同步处理的方法和装置 |
CN115016901A (zh) * | 2022-08-09 | 2022-09-06 | 中航金网(北京)电子商务有限公司 | 一种虚拟机的迁移方法、装置、介质、及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100027420A1 (en) * | 2008-07-31 | 2010-02-04 | Cisco Technology, Inc. | Dynamic distribution of virtual machines in a communication network |
CN102662723A (zh) * | 2012-02-28 | 2012-09-12 | 北京邮电大学 | 一种基于停机时间阈值的虚拟机内存迁移方法 |
CN103577249A (zh) * | 2013-11-13 | 2014-02-12 | 中国科学院计算技术研究所 | 虚拟机在线迁移方法与系统 |
CN103856548A (zh) * | 2012-12-07 | 2014-06-11 | 华为技术有限公司 | 动态资源调度方法和动态资源调度器 |
-
2015
- 2015-01-26 CN CN201510036992.8A patent/CN104683444B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100027420A1 (en) * | 2008-07-31 | 2010-02-04 | Cisco Technology, Inc. | Dynamic distribution of virtual machines in a communication network |
CN102662723A (zh) * | 2012-02-28 | 2012-09-12 | 北京邮电大学 | 一种基于停机时间阈值的虚拟机内存迁移方法 |
CN103856548A (zh) * | 2012-12-07 | 2014-06-11 | 华为技术有限公司 | 动态资源调度方法和动态资源调度器 |
CN103577249A (zh) * | 2013-11-13 | 2014-02-12 | 中国科学院计算技术研究所 | 虚拟机在线迁移方法与系统 |
Non-Patent Citations (1)
Title |
---|
WALTER CERRONI: "Multiple Virtual Machine Live Migration in Federated Cloud Systems", 《COMPUTER COMMUNICATIONS WORKSHOPS(INFOCOM WKSHPS),2014 IEEE CONFERENCE ON》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107735767A (zh) * | 2015-06-26 | 2018-02-23 | 英特尔公司 | 用于虚拟机迁移的技术 |
CN107735767B (zh) * | 2015-06-26 | 2022-02-11 | 英特尔公司 | 用于虚拟机迁移的装置和方法 |
CN105610715B (zh) * | 2016-03-14 | 2018-10-23 | 山东大学 | 一种基于sdn的云数据中心多虚拟机迁移调度计划方法 |
CN105610715A (zh) * | 2016-03-14 | 2016-05-25 | 山东大学 | 一种基于sdn的云数据中心多虚拟机迁移调度计划方法 |
CN106775928A (zh) * | 2016-11-25 | 2017-05-31 | 国家电网公司 | 一种异构云平台间的虚拟机自动迁移系统及方法 |
CN106990999A (zh) * | 2017-03-15 | 2017-07-28 | 深信服科技股份有限公司 | 虚拟机业务迁移方法及装置 |
CN110622478B (zh) * | 2018-04-08 | 2020-11-06 | 华为技术有限公司 | 数据同步处理的方法和装置 |
CN110622478A (zh) * | 2018-04-08 | 2019-12-27 | 华为技术有限公司 | 数据同步处理的方法和装置 |
CN109189545B (zh) * | 2018-07-06 | 2021-03-30 | 烽火通信科技股份有限公司 | 一种提高虚拟机热迁移可靠性的实现方法及系统 |
CN109189545A (zh) * | 2018-07-06 | 2019-01-11 | 烽火通信科技股份有限公司 | 一种提高虚拟机热迁移可靠性的实现方法及系统 |
CN109358952A (zh) * | 2018-10-30 | 2019-02-19 | 张家口浩扬科技有限公司 | 一种虚拟机迁移方法和系统 |
CN115016901A (zh) * | 2022-08-09 | 2022-09-06 | 中航金网(北京)电子商务有限公司 | 一种虚拟机的迁移方法、装置、介质、及电子设备 |
CN115016901B (zh) * | 2022-08-09 | 2022-10-14 | 中航金网(北京)电子商务有限公司 | 一种虚拟机的迁移方法、装置、介质、及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104683444B (zh) | 2017-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104683444A (zh) | 一种数据中心多虚拟机的数据迁移方法 | |
CN107330516B (zh) | 模型参数训练方法、装置及系统 | |
CN103150578A (zh) | 一种基于半监督学习的支持向量机分类器训练方法 | |
US20200090073A1 (en) | Method and apparatus for generating machine learning model | |
DE112007000632B4 (de) | Energieoptimierte Frame-Synchronisation für mehrere USB-Controller mit nicht gleichförmigen Frame-Raten | |
CN103823714B (zh) | 一种基于虚拟化下NUMA节点内存QoS的调节方法及装置 | |
WO2018099151A1 (zh) | 一种指令生成过程的复用方法及装置 | |
CN103955399A (zh) | 一种虚拟机迁移方法和装置及物理主机 | |
CN103823718A (zh) | 一种面向绿色云计算的资源配置方法 | |
EP4123467A1 (en) | Data transmission method and apparatus | |
WO2022110743A1 (zh) | 数据处理设备的配置参数确定方法、装置及存储介质 | |
US20210357816A1 (en) | System with hybrid communication strategy for large-scale distributed deep learning | |
CN104484222A (zh) | 一种基于混合遗传算法的虚拟机调度方法 | |
CN106845991A (zh) | 一种规则处理方法和设备 | |
CN104572501A (zh) | 一种基于访存踪迹局部性分析的多核环境下共享缓存优化方法 | |
CN109193811B (zh) | 一种新能源发电有功功率平滑控制方法、系统及存储介质 | |
CN106445418A (zh) | 一种固态硬盘中读写服务自适应的方法和装置 | |
CN103078870A (zh) | 一种云数据中心操作系统中虚拟机关联-反关联系统及其方法 | |
CN103984832B (zh) | 一种铝电解槽电场仿真分析方法 | |
CN105302647A (zh) | 一种MapReduce中备份任务推测执行策略的优化方案 | |
CN105091352A (zh) | 用于空气能热水器的控制方法和装置 | |
CN104424123A (zh) | 一种无锁数据缓冲区及其使用方法 | |
CN106547642B (zh) | 一种数据存储备份的方法及装置 | |
CN103500145A (zh) | 一种提高Linux空闲内存块利用率的方法 | |
CN107729146A (zh) | 一种内存释放方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |