CN104536816A - 提高虚拟机迁移效率的方法 - Google Patents
提高虚拟机迁移效率的方法 Download PDFInfo
- Publication number
- CN104536816A CN104536816A CN201410790653.4A CN201410790653A CN104536816A CN 104536816 A CN104536816 A CN 104536816A CN 201410790653 A CN201410790653 A CN 201410790653A CN 104536816 A CN104536816 A CN 104536816A
- Authority
- CN
- China
- Prior art keywords
- block
- virtual machine
- migration
- content
- host
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种提高虚拟机迁移效率的方法,包括以下步骤:步骤一,基于非共享存储的虚拟机进行迁移时,需要将虚拟机的磁盘文件从源宿主机端转移到目的宿主机端;步骤二,在源宿主机端执行每个块迁移之前,首先判断该块是否为空块,如果是空块则在步骤一说明的块定位信息中设置标记位;步骤三,在目的宿主机端读取块控制信息时,会根据步骤一中规定的位是否为1来判断该块是否是空块,如果判断是空块则不读取实际的块内容,在本地构造512字节全0内容填补空块内容。本发明优化虚拟机迁移效率,缩短迁移虚拟机的整体时间,提高迁移效率成功率。
Description
技术领域
本发明涉及一种提高迁移效率的方法,具体地,涉及一种提高虚拟机迁移效率的方法。
背景技术
在虚拟化技术领域中,虚拟机迁移是一项必不可少的能力和技术,其可以使虚拟机更加动态灵活的使用物理资源。在虚拟机迁移的两端:源宿主机与目的宿主机没有使用共享存储的前提下,迁移过程需要传输转移虚拟机磁盘;因为传输对象是虚拟机磁盘,其传输量往往很巨大,对网络源宿主机与目的宿主机之间的网络连接质量要求较高,并造成较大的网络流量压力。另一方面,虚拟机磁盘为保持其物理资源的高利用性而设置为稀疏文件格式,即一种预先分配文件长度,但实际不占用磁盘空间的文件格式,具有在虚拟机实际使用到其中的空间时再进行物理资源分配的特征,而对其未分配的空间进行读取时,则会读到全部为0的内容。主流的开源虚拟化软件如KVM(基于内核的虚拟机)在进行磁盘迁移时,并未对迁移的内容加以判断,也就是对稀疏文件中全0的内容仍然全部通过网络传输,这种做法效率比较低下,有改进的空间。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种提高虚拟机迁移效率的方法,其优化虚拟机迁移效率,缩短迁移虚拟机的整体时间,提高迁移效率成功率。
根据本发明的一个方面,提供一种提高虚拟机迁移效率的方法,其特征在于,包括以下步骤:
步骤一,基于非共享存储的虚拟机进行迁移时,需要将虚拟机的磁盘文件从源宿主机端转移到目的宿主机端;
步骤二,在源宿主机端执行每个块迁移之前,首先判断该块是否为空块,如果是空块则在步骤一说明的块定位信息中设置标记位;
步骤三,在目的宿主机端读取块控制信息时,会根据步骤一中规定的位是否为1来判断该块是否是空块,如果判断是空块则不读取实际的块内容,在本地构造512字节全0内容填补空块内容。
优选地,所述步骤一的源宿主机与目的宿主机在建立TCP连接后,首先传输所有的虚拟机磁盘至目的宿主机,之后循环传输虚拟磁盘中的脏块,直到迁移动作停止时,最后一次会传输所有脏块至目的宿主机,使源宿主机与目的宿主机上的虚拟磁盘内容完全相同。
优选地,所述每个块的头部加入控制信息和描述信息。
与现有技术相比,本发明具有如下的有益效果:本发明优化虚拟机迁移效率,缩短迁移虚拟机的整体时间,提高迁移效率成功率;在一定程度节省虚拟机迁移对网络带宽的消耗,并能有效减少宿主机磁盘空间的浪费。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明中虚拟机迁移过程的示意图。
图2为本发明中单个迁移块内容的结构示意图。
图3为本发明中针对空块发送的迁移块内容的结构示意图。
图4为本发明中目的端根据空块标识构造块内容的结构示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
本发明提高虚拟机迁移效率的方法包括以下步骤:
步骤一,基于非共享存储的虚拟机进行迁移时,需要将虚拟机的磁盘文件从源宿主机端转移到目的宿主机端;为使虚拟机内的应用服务不受虚拟机迁移动作的影响,主流的开源虚拟化软件如KVM(基于内核的虚拟机)采用如下方法迁移虚拟机磁盘:源宿主机与目的宿主机在建立TCP连接后,首先传输所有的虚拟机磁盘至目的宿主机,之后循环传输虚拟磁盘中的脏块(自上一次传输以来改写过的块),直到迁移动作停止时,最后一次会传输所有脏块至目的宿主机,使源宿主机与目的宿主机上的虚拟磁盘内容完全相同,具体如图1所示。
其中,根据传输内容为虚拟磁盘这个特性,以512字节的块为单位进行传输;为使目的宿主机端能够将读取的块还原到虚拟磁盘文件中指定的位置,必须在每个块的头部加入一定格式的控制信息和描述信息,以KVM虚拟化的实现为例,每个迁移块的实际内容排列如下:前8字节(64位)为块定位信息,描述此块在虚拟磁盘中的块序号,其中高55位存放块序号,低9位为保留位;接着1字节(8位)存放虚拟磁盘设备名长度N;接着N字节(8*N位)存放虚拟磁盘设备名;以上为首部,接着512字节存放块实际内容,具体如图2所示。
步骤二,在源宿主机端执行每个块迁移之前,首先判断该块是否为空块(或全0块),如果是空块则在步骤一说明的块定位信息中设置标记位,例如将块序号低第8位(之前为保留位)规定为空块标记位,并且不再发送后512字节全0内容,具体如图3所示;
步骤三,在目的宿主机端读取块控制信息时,会根据步骤一中规定的位是否为1来判断该块是否是空块,如果判断是空块则不读取实际的块内容,在本地构造512字节全0内容填补空块内容,具体如图4所示。
综上所述,因为虚拟机磁盘格式为空洞文件,其中存在一定比例的空块;经过本发明优化,对于每个空块的迁移将节省512字节传输量(约占整个迁移块比重的97%),即可达到提高迁移效率的功能。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (3)
1.一种提高虚拟机迁移效率的方法,其特征在于,包括以下步骤:
步骤一,基于非共享存储的虚拟机进行迁移时,需要将虚拟机的磁盘文件从源宿主机端转移到目的宿主机端;
步骤二,在源宿主机端执行每个块迁移之前,首先判断该块是否为空块,如果是空块则在步骤一说明的块定位信息中设置标记位;
步骤三,在目的宿主机端读取块控制信息时,会根据步骤一中规定的位是否为1来判断该块是否是空块,如果判断是空块则不读取实际的块内容,在本地构造512字节全0内容填补空块内容。
2.根据权利要求1所述的提高虚拟机迁移效率的方法,其特征在于,所述步骤一的源宿主机与目的宿主机在建立TCP连接后,首先传输所有的虚拟机磁盘至目的宿主机,之后循环传输虚拟磁盘中的脏块,直到迁移动作停止时,最后一次会传输所有脏块至目的宿主机,使源宿主机与目的宿主机上的虚拟磁盘内容完全相同。
3.根据权利要求1所述的提高虚拟机迁移效率的方法,其特征在于,所述每个块的头部加入控制信息和描述信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410790653.4A CN104536816A (zh) | 2014-12-17 | 2014-12-17 | 提高虚拟机迁移效率的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410790653.4A CN104536816A (zh) | 2014-12-17 | 2014-12-17 | 提高虚拟机迁移效率的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104536816A true CN104536816A (zh) | 2015-04-22 |
Family
ID=52852348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410790653.4A Pending CN104536816A (zh) | 2014-12-17 | 2014-12-17 | 提高虚拟机迁移效率的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104536816A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224386A (zh) * | 2015-09-06 | 2016-01-06 | 浪潮(北京)电子信息产业有限公司 | 一种提高虚拟机模板传输效率的方法及装置 |
CN106201659A (zh) * | 2016-07-12 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 一种虚拟机热迁移的方法及宿主机 |
CN106528328A (zh) * | 2016-10-10 | 2017-03-22 | 乐视控股(北京)有限公司 | 基于分布式存储系统的数据恢复方法、装置及系统 |
CN107340974A (zh) * | 2017-07-07 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟磁盘的迁移方法及迁移装置 |
CN107783826A (zh) * | 2016-08-26 | 2018-03-09 | 北京金山云网络技术有限公司 | 一种虚拟机迁移方法、装置及系统 |
CN111007985A (zh) * | 2019-10-31 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种存储系统空间回收的兼容处理方法、系统及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090079012A (ko) * | 2008-01-16 | 2009-07-21 | 삼성전자주식회사 | 가상 머신의 상태를 저장, 복원하는 방법 및 장치 |
US20120102258A1 (en) * | 2010-10-22 | 2012-04-26 | International Business Machines Corporation | Dynamic memory affinity reallocation after partition migration |
CN103246561A (zh) * | 2012-11-16 | 2013-08-14 | 佳都新太科技股份有限公司 | 一种基于xen的虚拟机实时迁移技术 |
CN103257929A (zh) * | 2013-04-18 | 2013-08-21 | 中国科学院计算技术研究所 | 一种虚拟机内存映射方法及系统 |
CN103677955A (zh) * | 2013-12-04 | 2014-03-26 | 深圳清华大学研究院 | 基于Virtio驱动进行虚拟机内存在线迁移的方法 |
-
2014
- 2014-12-17 CN CN201410790653.4A patent/CN104536816A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090079012A (ko) * | 2008-01-16 | 2009-07-21 | 삼성전자주식회사 | 가상 머신의 상태를 저장, 복원하는 방법 및 장치 |
US20120102258A1 (en) * | 2010-10-22 | 2012-04-26 | International Business Machines Corporation | Dynamic memory affinity reallocation after partition migration |
CN103246561A (zh) * | 2012-11-16 | 2013-08-14 | 佳都新太科技股份有限公司 | 一种基于xen的虚拟机实时迁移技术 |
CN103257929A (zh) * | 2013-04-18 | 2013-08-21 | 中国科学院计算技术研究所 | 一种虚拟机内存映射方法及系统 |
CN103677955A (zh) * | 2013-12-04 | 2014-03-26 | 深圳清华大学研究院 | 基于Virtio驱动进行虚拟机内存在线迁移的方法 |
Non-Patent Citations (1)
Title |
---|
袁野: "《虚拟机内存迁移技术研究》", 《小型微型计算机系统》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224386A (zh) * | 2015-09-06 | 2016-01-06 | 浪潮(北京)电子信息产业有限公司 | 一种提高虚拟机模板传输效率的方法及装置 |
CN105224386B (zh) * | 2015-09-06 | 2018-11-23 | 浪潮(北京)电子信息产业有限公司 | 一种提高虚拟机模板传输效率的方法及装置 |
CN106201659A (zh) * | 2016-07-12 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 一种虚拟机热迁移的方法及宿主机 |
WO2018010636A1 (zh) * | 2016-07-12 | 2018-01-18 | 腾讯科技(深圳)有限公司 | 虚拟机热迁移的方法、宿主机及存储介质 |
US10884645B2 (en) | 2016-07-12 | 2021-01-05 | Tencent Technology (Shenzhen) Company Limited | Virtual machine hot migration method, host machine and storage medium |
CN107783826A (zh) * | 2016-08-26 | 2018-03-09 | 北京金山云网络技术有限公司 | 一种虚拟机迁移方法、装置及系统 |
CN107783826B (zh) * | 2016-08-26 | 2021-07-09 | 北京金山云网络技术有限公司 | 一种虚拟机迁移方法、装置及系统 |
CN106528328A (zh) * | 2016-10-10 | 2017-03-22 | 乐视控股(北京)有限公司 | 基于分布式存储系统的数据恢复方法、装置及系统 |
CN107340974A (zh) * | 2017-07-07 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种虚拟磁盘的迁移方法及迁移装置 |
CN107340974B (zh) * | 2017-07-07 | 2020-03-31 | 郑州云海信息技术有限公司 | 一种虚拟磁盘的迁移方法及迁移装置 |
CN111007985A (zh) * | 2019-10-31 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种存储系统空间回收的兼容处理方法、系统及设备 |
CN111007985B (zh) * | 2019-10-31 | 2021-10-22 | 苏州浪潮智能科技有限公司 | 一种存储系统空间回收的兼容处理方法、系统及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104536816A (zh) | 提高虚拟机迁移效率的方法 | |
CN104731569B (zh) | 一种数据处理方法及相关设备 | |
JP6757808B2 (ja) | インフィニバンド(IB)上で仮想ホストバスアダプタ(vHBA)を管理およびサポートするためのシステムおよび方法、ならびに単一の外部メモリインターフェイスを用いてバッファの効率的な使用をサポートするためのシステムおよび方法 | |
WO2020034729A1 (zh) | 数据处理方法、相关设备及计算机存储介质 | |
CN103677674B (zh) | 一种数据处理方法及装置 | |
CN102609361A (zh) | 虚拟机存储数据迁移方法和装置 | |
CN106330788B (zh) | 报文分片传输方法和装置 | |
CN105393228A (zh) | 读写闪存中数据的方法、装置及用户设备 | |
CN105589664A (zh) | 虚拟存储高速传输方法 | |
US10375168B2 (en) | Throughput in openfabrics environments | |
CN106776455A (zh) | 一种单机多gpu通信的方法及装置 | |
CN110399096A (zh) | 分布式文件系统元数据缓存重删的方法、装置以及设备 | |
CN102566942A (zh) | 一种文件条带化写入方法、装置及系统 | |
CN109062826A (zh) | 数据传输方法及系统 | |
CN105933325A (zh) | 一种基于NFSoRDMA的内核态RPC通信加速方法 | |
CN105530221A (zh) | 一种网络数据传输的缓存加速方法及系统 | |
WO2021057759A1 (zh) | 内存迁移方法、装置及计算设备 | |
US20200013137A1 (en) | Fixed-stride draw tables for tiled rendering | |
CN105847190A (zh) | 一种数据传输方法及处理器 | |
CN103414769A (zh) | 虚拟机热迁移的方法及物理机 | |
US20150121376A1 (en) | Managing data transfer | |
CN103984569A (zh) | 一种hba卡加速方法 | |
CN101976229A (zh) | 一种系统中外部设备的数据读取方法、系统及装置 | |
CN103207843A (zh) | 一种数据行宽度可动态配置的cache结构设计方法 | |
CN106844248A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150422 |