CN106648830A - 一种对虚拟机磁盘进行在线快照的方法 - Google Patents
一种对虚拟机磁盘进行在线快照的方法 Download PDFInfo
- Publication number
- CN106648830A CN106648830A CN201611018803.5A CN201611018803A CN106648830A CN 106648830 A CN106648830 A CN 106648830A CN 201611018803 A CN201611018803 A CN 201611018803A CN 106648830 A CN106648830 A CN 106648830A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- snapshot
- disk
- magnetic disk
- application
- 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.)
- Withdrawn
Links
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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- 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/45579—I/O management, e.g. providing access to device drivers or storage
-
- 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)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及云计算技术领域,特别是一种对虚拟机磁盘进行在线快照的方法。本方法的基本流程是,首先通过某种通信途径,发送指令到虚拟机内部,对带有应用级缓存并可控的应用,暂停其IO并把其应用内部的缓存刷写回磁盘,然后,暂停虚拟机操作系统的文件系统的读写IO,再把内存及磁盘内部的缓存刷写进磁盘里;最后,就可以在宿主机里对虚拟机磁盘进行安全快照,快照完成后再解除对虚拟机内部应用及虚拟机操作系统IO的冻结。本发明提供了一系列对虚拟机进行在线快照的操作,解决了在线快照时数据不一致可能导致的数据损坏问题。
Description
技术领域
本发明涉及云计算领域,特别是一种对在线虚拟机的磁盘进行快照的方法。
背景技术
云计算平台中,对虚拟机进行快照是一种备份虚拟机状态的重要操作,其中对虚拟机的磁盘进行快照又是其中的重点。
常规的快照手段存在以下不足:
一、如果要保证数据安全和一致性,通常要关闭虚拟机再进行快照,而这对于某些无法中断的业务来说,是不可接受的;
二、如果不能关闭虚拟机导致业务中断,只能直接对磁盘进行快照,而这个操作很容易导致磁盘的数据一致性损坏,轻则会导致要进行文件系统修复,重则会导致文件系统直接损坏,系统无法引导,数据丢失。
发明内容
本发明解决的技术问题在于提供一种对在线虚拟机的磁盘进行快照的方法;确保可以安全地进行虚拟机磁盘的在线快照。
本发明解决上述技术问题的技术方案是:
包括如下步骤:
步骤1:云平台控制器发送控制指令到虚拟机内部的执行代理程序;
步骤2:如果条件允许,虚拟机内部的代理程序冻结相关应用的IO并把应用层的缓存刷写进磁盘;
步骤3:虚拟机内部的代理程序冻结虚拟机文件系统的IO,并把文件系统的缓存同步入磁盘里面;
步骤4:在宿主机对虚拟机磁盘快照完后,云平台控制再次发送指令到虚拟机内部的代理,指示其解除对应用和文件系统IO的冻结。
2、根据权利要求1所述的方法,其特征在于:所述的云平台控制器指的是IaaS平台;可以通过是网络、虚拟机串口或者直接通过类似virtio这种类虚拟化驱动框架直接传给虚拟机操作系统指令;指令包含指示停止IO及同步缓存相关命令。
3、根据权利要求1所述的方法,其特征在于:所述的冻结相关应用由应用层面提供支持,包括glibc库;以控制其IO缓存及读写动作。
4、根据权利要求2所述的方法,其特征在于:所述的冻结相关应用由应用层面提供支持,包括glibc库;以控制其IO缓存及读写动作。
5、根据权利要求1至4任一项所述的方法,其特征在于:所述的冻结虚拟机文件系统IO及同步缓存由文件系统支持;linux平台下使用sync及fsfreeze命令实现;windows平台则使用VSS框架完成相关操作。
6、根据权利要求1至4任一项所述方法,其特征在于:所述的宿主机对虚拟机磁盘进行快照的方法取决于虚拟机磁盘格式或者虚拟机磁盘实现方案,基于LVM的方案可使用LVM本身的快照操作;基于ceph的方案可以采用rbd快照相关操作。
本发明的方法在不中断业务情况下,安全的实现在线快照,可以保证在线备份也不会导致磁盘数据不一致;解决了数据不一致可能导致的数据损坏问题。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的操作方法流程图。
具体实施方式
本发明提出操作流程如下:
首先,云平台控制器通过某种途径发送控制指令到虚拟机内部的执行代理程序;某种途径可以是通过网络、通过虚拟机串口、或者通过类似virtio这类安装在虚拟机内部的类虚拟化框架,把要执行IO冻结、缓存同步相关命令发送到虚拟机内部运行的一个代理程序;
然后,如果条件允许,虚拟机内部的代理程序执行命令,冻结相关应用的IO并把应用层的缓存刷写进磁盘;条件允许指的是,不是所有虚拟机上的应用都有进行修改和被控制的条件。如果有条件,则执行此步操作,可以使数据一致性保证到应用层面;如果不做此操作,则只是保证达到系统层面;
再然后,虚拟机内部的代理程序执行命令,冻结虚拟机文件系统的IO,并把文件系统的缓存同步入磁盘里面;以linux平台为例子,可以直接执行fsfreeze命令冻结文件系统,再执行sync同步缓存;
最后,在宿主机对虚拟机磁盘快照完后,云平台控制再次发送指令到虚拟机内部的代理,指示其解除对应用和文件系统IO的冻结;
云平台控制器指的是IaaS平台;通过某种途径发送指令,途径可以是网络,虚拟机串口或者直接通过类似virtio这种类虚拟化驱动框架直接传给虚拟机操作系统;指令包含指示停止IO及同步缓存相关命令。
冻结虚拟机内部关键应用是需要应用层面支持的,比如应用使用我们改造过glibc库(windows平台同理),这样就可以控制其IO缓存及读写动作了。
冻结虚拟机文件系统IO及同步缓存,需要文件系统支持,linux平台下一般都可以用sync及fsfreeze命令来实现,windows平台则可以使用VSS(卷影复制服务)框架来完成相关操作。
在宿主机对虚拟机磁盘进行快照的方法,取决于虚拟机磁盘格式,或者虚拟机磁盘实现方案,比如基于LVM的方案可以使用LVM本身的快照操作,基于ceph的方案可以采用rbd快照相关操作。
如图1所示,云平台控制器在不同阶段发送命令到虚拟机内部代理,执行不同的操作,代码如下:
在云平台控制器端的逻辑,发送命令控制文件系统IO:
虚拟机内部agent冻结文件系统
Claims (7)
1.一种对云平台虚拟机进行在线快照方法,其特征在于:包括如下步骤:
步骤1:云平台控制器发送控制指令到虚拟机内部的执行代理程序;
步骤2:如果条件允许,虚拟机内部的代理程序冻结相关应用的IO并把应用层的缓存刷写进磁盘;
步骤3:虚拟机内部的代理程序冻结虚拟机文件系统的IO,并把文件系统的缓存同步入磁盘里面;
步骤4:在宿主机对虚拟机磁盘快照完后,云平台控制再次发送指令到虚拟机内部的代理,指示其解除对应用和文件系统IO的冻结。
2.根据权利要求1所述的方法,其特征在于:所述的云平台控制器指的是IaaS平台;可以通过是网络、虚拟机串口或者直接通过类似virtio这种类虚拟化驱动框架直接传给虚拟机操作系统指令;指令包含指示停止IO及同步缓存相关命令。
3.根据权利要求1所述的方法,其特征在于:所述的冻结相关应用由应用层面提供支持,包括glibc库;以控制其IO缓存及读写动作。
4.根据权利要求2所述的方法,其特征在于:所述的冻结相关应用由应用层面提供支持,包括glibc库;以控制其IO缓存及读写动作。
5.根据权利要求1至4任一项所述的方法,其特征在于:所述的冻结虚拟机文件系统IO及同步缓存由文件系统支持;linux平台下使用sync及fsfreeze命令实现;windows平台则使用VSS框架完成相关操作。
6.根据权利要求1至4任一项所述方法,其特征在于:所述的宿主机对虚拟机磁盘进行快照的方法取决于虚拟机磁盘格式或者虚拟机磁盘实现方案,基于LVM的方案可使用LVM本身的快照操作;基于ceph的方案可以采用rbd快照相关操作。
7.根据权利要求5所述方法,其特征在于:所述的宿主机对虚拟机磁盘进行快照的方法取决于虚拟机磁盘格式或者虚拟机磁盘实现方案,基于LVM的方案可使用LVM本身的快照操作;基于ceph的方案可以采用rbd快照相关操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611018803.5A CN106648830A (zh) | 2016-11-18 | 2016-11-18 | 一种对虚拟机磁盘进行在线快照的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611018803.5A CN106648830A (zh) | 2016-11-18 | 2016-11-18 | 一种对虚拟机磁盘进行在线快照的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106648830A true CN106648830A (zh) | 2017-05-10 |
Family
ID=58808136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611018803.5A Withdrawn CN106648830A (zh) | 2016-11-18 | 2016-11-18 | 一种对虚拟机磁盘进行在线快照的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106648830A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109558213A (zh) * | 2018-11-30 | 2019-04-02 | 郑州云海信息技术有限公司 | 管理OpenStack平台的虚拟机快照的方法和装置 |
CN109582496A (zh) * | 2018-10-25 | 2019-04-05 | 平安科技(深圳)有限公司 | 一致性快照组的创建方法、装置及计算机可读存储介质 |
CN110008065A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种一致性组快照管理方法及相关装置 |
CN111078368A (zh) * | 2019-12-26 | 2020-04-28 | 浪潮电子信息产业股份有限公司 | 云计算平台虚拟机的内存快照方法、装置及可读存储介质 |
CN113609075A (zh) * | 2021-08-18 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种创建快照的方法、系统、存储介质及设备 |
CN113760454A (zh) * | 2021-08-13 | 2021-12-07 | 济南浪潮数据技术有限公司 | 一种虚拟机跨云平台迁移的方法、系统、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100088697A1 (en) * | 2008-10-02 | 2010-04-08 | Dell Products L.P. | Content Distribution System |
CN103078893A (zh) * | 2011-10-25 | 2013-05-01 | 中华电信股份有限公司 | 应用于云端计算的控管装置及控管备援系统 |
CN104375877A (zh) * | 2014-10-15 | 2015-02-25 | 国云科技股份有限公司 | 一种虚拟机在线快照生成与删除方法 |
CN104461773A (zh) * | 2014-11-18 | 2015-03-25 | 国云科技股份有限公司 | 一种虚拟机备份去重的方法 |
CN104468734A (zh) * | 2014-11-18 | 2015-03-25 | 国云科技股份有限公司 | 一种基于克隆的虚拟集群扩展方法 |
-
2016
- 2016-11-18 CN CN201611018803.5A patent/CN106648830A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100088697A1 (en) * | 2008-10-02 | 2010-04-08 | Dell Products L.P. | Content Distribution System |
CN103078893A (zh) * | 2011-10-25 | 2013-05-01 | 中华电信股份有限公司 | 应用于云端计算的控管装置及控管备援系统 |
CN104375877A (zh) * | 2014-10-15 | 2015-02-25 | 国云科技股份有限公司 | 一种虚拟机在线快照生成与删除方法 |
CN104461773A (zh) * | 2014-11-18 | 2015-03-25 | 国云科技股份有限公司 | 一种虚拟机备份去重的方法 |
CN104468734A (zh) * | 2014-11-18 | 2015-03-25 | 国云科技股份有限公司 | 一种基于克隆的虚拟集群扩展方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109582496A (zh) * | 2018-10-25 | 2019-04-05 | 平安科技(深圳)有限公司 | 一致性快照组的创建方法、装置及计算机可读存储介质 |
CN109582496B (zh) * | 2018-10-25 | 2024-05-28 | 平安科技(深圳)有限公司 | 一致性快照组的创建方法、装置及计算机可读存储介质 |
CN109558213A (zh) * | 2018-11-30 | 2019-04-02 | 郑州云海信息技术有限公司 | 管理OpenStack平台的虚拟机快照的方法和装置 |
CN110008065A (zh) * | 2019-04-11 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种一致性组快照管理方法及相关装置 |
CN111078368A (zh) * | 2019-12-26 | 2020-04-28 | 浪潮电子信息产业股份有限公司 | 云计算平台虚拟机的内存快照方法、装置及可读存储介质 |
CN113760454A (zh) * | 2021-08-13 | 2021-12-07 | 济南浪潮数据技术有限公司 | 一种虚拟机跨云平台迁移的方法、系统、设备和存储介质 |
CN113609075A (zh) * | 2021-08-18 | 2021-11-05 | 济南浪潮数据技术有限公司 | 一种创建快照的方法、系统、存储介质及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106648830A (zh) | 一种对虚拟机磁盘进行在线快照的方法 | |
US10841395B2 (en) | Populating a secondary cache with unmodified tracks in a primary cache when redirecting host access from a primary server to a secondary server | |
EP3230846B1 (en) | Performing an atomic write operation across multiple storage devices | |
EP2539804B1 (en) | Systems and methods for enabling replication targets to reclaim unused storage space on thin-provisioned storage systems | |
EP2765515B1 (en) | System and method for rebuilding redundant secondary storage caches | |
US9959174B2 (en) | Storage checkpointing in a mirrored virtual machine system | |
US8874524B1 (en) | Handling copy on first write data for snapshot purposes | |
KR101337676B1 (ko) | 트랜잭션 메모리 | |
WO2014033595A1 (en) | Multi-volume instant virtual copy freeze | |
US20170322845A1 (en) | Information processing system, storage apparatus and storage device | |
CN109725840A (zh) | 利用异步冲刷对写入进行节流 | |
CN110023912A (zh) | 异步本地和远程生成一致的时间点快照拷贝 | |
US9063997B2 (en) | Asynchronous pausing of the formation of consistency groups | |
CN114286993B (zh) | 数据存储系统中的链路速度恢复 | |
CN105281949B (zh) | 混合存储模式中主机的隔离方法和隔离装置 | |
US20190073142A1 (en) | Synchronously performing commit records operations | |
CN106550014A (zh) | 服务器集群中的节点升级方法及装置 | |
US20200089412A1 (en) | Handling cache and non-volatile storage (nvs) out of sync writes | |
WO2014183557A1 (zh) | 一种星敏感器在轨维护方法 | |
CN104407931A (zh) | 一种获取虚拟机损坏系统盘镜像的方法 | |
US9213497B2 (en) | Storage apparatus and storage apparatus migration method | |
CN106850342B (zh) | 测试交换机兼容性和稳定性的方法及装置 | |
US11221955B2 (en) | Metadata track selection switching in a data storage system | |
US20150012696A1 (en) | Data management device, data management system, and data management method | |
US11106371B1 (en) | I/O path reservation with out of band management |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20170510 |
|
WW01 | Invention patent application withdrawn after publication |