云硬盘快照功能概述
在企业日常运营中,数据安全至关重要。然而,由于意外操作、软件故障或恶意攻击,数据丢失的情况时有发生,这给企业的业务连续性和数据恢复带来了巨大挑战。云硬盘快照是指云硬盘数据在某个时刻的完整拷贝或镜像,是一种重要的数据容灾手段。当数据丢失时,如何快速有效地恢复数据成为企业面临的一大难题。通过使用云硬盘快照,企业可以在数据丢失时将数据完整地恢复到创建快照的时间点,从而确保业务的连续性和数据的安全性。
使用场景
快照功能可以帮助您实现以下需求:
- 日常备份数据
- 快速恢复数据
应用软件升级或业务数据迁移等重大操作前,您可以创建一份或多份快照,一旦升级或迁移过程中出现问题,可以通过快照及时将业务恢复到快照创建点的数据状态。
例如,当由于云服务器A的系统盘A发生故障而无法正常开机时,由于系统盘A已经故障,因此也无法将快照数据回滚至系统盘A。此时您可以使用系统盘A已有的快照新创建一块云硬盘B并挂载至正常运行的云服务器B上,从而云服务器B能够通过云硬盘B读取原系统盘A的数据。

当前通过快照回滚数据,只支持回滚快照数据至源云硬盘,不支持快照回滚到其它云硬盘。
- 快速部署多个业务
通过同一个快照可以快速创建出多个具有相同数据的云硬盘,从而可以同时为多种业务提供数据资源。例如数据挖掘、报表查询和开发测试等业务。这种方式既保护了原始数据,又能通过快照创建的新云硬盘快速部署其他业务,满足企业对业务数据的多元化需求。
- 您可以通过快照实现云硬盘数据在不同可用区之间的迁移。
例如,您通过位于可用区1的云硬盘“volume-01”创建快照“snapshot-01”,然后通过快照“snapshot-01”创建位于可用区2的新云硬盘“volume-02”,从而实现云硬盘数据在不同可用区之间的迁移。

仅标准快照支持跨可用区迁移数据。
对比维度 | 功能 | 描述 | 存量快照 | 标准快照 |
|---|---|---|---|---|
核心功能 | 保存至对象存储 | 默认存储在对象存储以提供冗余保护能力 | 否,仅保存在EVS | 是 |
快照个数 | 单个云硬盘最多支持创建的快照数量 | 7 | 256 | |
增量快照 | 首份全量,后续增量 | 是 | 是 | |
回滚云硬盘 | 如果系统遇到故障或由于误操作而导致的数据丢失,可以使用快照回滚云硬盘,迅速恢复数据 | 是 | 是 | |
创建新云硬盘 | 通过快照创建新的云硬盘,可以快速将快照中的数据复制给新的云硬盘 | 是,仅能创建到快照所在AZ | 是,支持跨AZ创建 | |
计费 | 收费策略 | 免费 | 根据快照链容量、存储时长计费。详情请参见快照计费说明。 | |
数据保护与容灾 | 快照加密 | 支持使用AES-256等算法对快照进行加密 | 是 | 是 |
快照极速可用 | 快照上传未完成时即可用于创建云硬盘等操作 | 是 | 是 | |
生命周期管理 | 快照一致性组 | 支持为多块云硬盘创建同一时间点的快照,确保应用一致性 | 否 | 是 |
功能介绍 | 说明 | 参考文档 |
|---|---|---|
创建快照 | 支持创建单个快照或者快照一致性组(为多块云硬盘同时创建快照),保存指定时刻的云硬盘数据。 说明: 快照为只读属性,当快照创建完成后,快照中的数据将无法进行任何修改。 | |
回滚数据 | 如果云硬盘的数据发生错误或者损坏,可以回滚快照数据至创建该快照的云硬盘,或者回滚快照一致性组数据到多个云硬盘,从而恢复数据。 | |
使用快照创建云硬盘 | 通过快照创建新的云硬盘,可以快速将快照中的数据复制给新的云硬盘。 | |
使用快照极速可用功能 | 标准快照创建后,需要把数据上传至OBS中才可以使用,但是随着云硬盘中存储的数据越来越多,上传时间会越来越长。为了解决以上问题,您可以通过快照极速可用功能实现快照创建后秒级可用,无需等待上传完成就可以进行快照回滚数据和创建云硬盘,回滚数据和创建云硬盘速度快且不影响数据的完整性。 | |
查看快照信息 | 查看快照容量包含:查看某个云硬盘下的所有快照总容量(快照链容量)、查看指定时间段内的快照总容量、查看当前账号在指定区域下的快照总容量。 查看快照详情包括:所属区域和可用区、所属的云硬盘信息、快照的标签等信息。 | |
删除快照 | 在使用云服务的过程中,用户可能会遇到存储空间紧张的情况,特别是当快照数量累积过多,超过了配额限制时,这将直接影响到新快照的创建和其他存储需求。当不再使用快照或快照数量超过配额时,可以删除部分快照以释放存储空间。建议您定期审查快照的使用情况,删除不再需要的快照,从而释放存储空间,优化资源管理。 |
约束与限制
限制项 | 说明 |
|---|---|
快照额度 |
|
云硬盘类型 |
|
快照保留策略 | 系统不会主动删除用户的快照,删除快照存在以下场景:
|
快照原理视频
使用快照备份云硬盘数据时,存量快照是建立一种快照与数据的关联关系,存放在云硬盘所在的物理存储磁盘中,标准快照数据存在在OBS中,均不会占用云硬盘的空间。原理介绍如下所示。
存量快照是建立一种快照与数据的关联关系,存放在云硬盘所在的物理存储磁盘中。
- 首先创建一个全新的云硬盘v1,没有任何数据。
- 在云硬盘v1中写入数据d1和d2,此时使用新的数据空间存储d1和d2。
- 为步骤2中修改后的云硬盘v1创建快照s1,此时并不会去另存一份数据d1和d2,而是建立快照s1与数据d1和d2的关联关系。
- 在云硬盘v1中新写入数据d3,并将数据d2修改成d4,此时会使用新的数据空间存储d3和d4,并不会覆盖原有的d2数据。快照s1到数据d1和d2的关联关系仍然有效,因此如果有需要,可以通过快照s1恢复原数据。
- 为步骤4修改后的云硬盘v1创建另一个快照s2,建立快照s2到数据d1、d3和d4的关联关系。 图1 快照原理

标准快照是以数据块作为快照数据备份的最小粒度,快照分为全量快照和增量快照。为云硬盘创建的第一个快照为全量快照,全量快照包含创建快照时间点前云硬盘上的所有数据(数据块);后续创建的快照均为增量快照,增量快照仅存储较上一个快照有变化的数据块。
全量快照和增量快照的元数据文件中会记录快照创建时间点前的所有数据块信息,因此通过任何一个快照回滚数据至云硬盘时,均可以恢复创建快照时间点前的所有云硬盘数据。

根据数据块的来源区分,快照元数据文件中包含三类数据块:继承数据块(继承于上一个快照的数据块)、修改数据块(较上一个快照有修改的数据块)、新增数据块(较上一个快照新增的数据块)。
快照的数据文件中只会存储较上一个快照有变化的数据块(修改数据块、新增数据块)。
如图所示,假设云硬盘在9:30和10:30均有数据写入,为了备份数据,在9:00创建快照1,在10:00创建快照2,在11:00创建快照3,创建快照原理如下:
- 9:00首次创建快照,快照1中包含云硬盘的所有数据,其中的数据块有A、B、C,快照1为全量快照。快照1的元数据文件中会记录云硬盘全量的数据块A、B、C。
- 随后写入数据,修改数据块A为A1,修改数据块B为B1,新增数据块D,10:00创建快照2,仅存储较快照1有变化的数据块A1、B1、D,快照2为增量快照。快照2的元数据文件中会记录云硬盘全量的数据块A1、B1、C、D,其中数据块C继承于快照1。
- 随后写入数据,修改数据块A1为A2,修改数据块C为C1,新增数据块E,11:00创建快照3,仅存储较快照2有变化的数据块A2、C1、E,快照3为增量快照。快照3的元数据文件中会记录云硬盘全量的数据块A2、B1、C1、D、E,其中数据块B1、D继承于快照2。
云硬盘的快照总容量以快照链(一块云硬盘中所有快照组成的关系链)为单位进行统计,统计当前云硬盘所有快照的数据块占用的存储空间。云硬盘的单个快照容量不会超过云硬盘容量,但是随着快照的增加,快照链容量可能会大于云硬盘容量。
- 快照链增加快照容量计算
以图3中的场景为例,假设快照的数据块为固定大小2MiB,那么快照链增加快照后的容量计算如下:
- 创建快照1时,云硬盘的快照链中仅有快照1,快照链容量 =快照1容量 =数据块A容量 + 数据块B容量 + 数据块C容量 =6MiB
- 创建快照2时,云硬盘的快照链中有快照1、快照2,快照链容量 =快照1容量 + 快照2容量 =6MiB + (数据块A1容量 + 数据块B1容量 + 数据块D容量)=12MiB
- 创建快照3时,云硬盘的快照链中有快照1、快照2、快照3,快照链容量 =快照1容量 + 快照2容量 + 快照3容量 =6MiB + 6MiB +(数据块A2容量 + 数据块C1容量 + 数据块E容量)=18MiB
- 快照链删除快照容量计算
删除快照时,会遍历快照元数据文件中的所有数据块信息,遵循以下删除原则:
- 数据块被下一个快照继承,该数据块不能删除。
- 数据块没有被下一个快照继承:
- 继承数据块:如果上一个快照未被删除,那么该继承数据块不能删除;否则可以删除。
- 修改数据块:可以删除。
- 新增数据块:可以删除。
图4 快照中的数据块删除原则
以下通过举例说明删除快照后快照链容量计算。
以图5中的场景为例,在14:00删除快照2,在15:00删除快照3,那么快照链删除快照后的容量计算如下:
- 删除快照前,快照链容量 =快照1容量 + 快照2容量 + 快照3容量 =18MiB
- 14:00删除快照2,遍历快照2元数据文件中的所有数据块信息:
- 数据块A1:没有被快照3继承,且为快照1中的数据块A修改而来(修改数据块),因此数据块A1可以删除。
- 数据块B1:被快照3继承,数据块B1不能删除。
- 数据块C:没有被快照3继承,但继承于快照1(继承数据块)且快照1未被删除,因此数据块C不能删除。
- 数据块D:被快照3继承,因此数据块D不能删除。
删除快照2后,快照链容量 =18MiB - 数据块A1容量 =16MiB
- 15:00删除快照3,遍历快照3元数据文件中的所有数据块信息:
- 数据块A2:没有被下一快照继承,且为快照2中的数据块A1修改而来(修改数据块),因此数据块A2可以删除。
- 数据块B1:没有被下一快照继承,但继承于快照2且快照2已被删除,因此数据块B1可以删除。
- 数据块C1:没有被下一快照继承,且为快照2中的数据块C修改而来,因此数据块C1可以删除。
- 数据块D:没有被下一快照继承,但继承于快照2且快照2已被删除,因此数据块D可以删除。
- 数据块E:没有被下一快照继承,且为快照3新增数据块,因此数据块E可以删除。
删除快照3后,快照链容量 =16MiB - 数据块A2容量 - 数据块B1容量 - 数据块C1容量 - 数据块D容量 - 数据块E容量 =6MiB
EVS提供了在管理控制台查看快照容量功能,具体请参见查看云硬盘快照容量(适用于标准快照)。
云备份(CBR)与快照的区别
云备份以及快照为存储在云硬盘中的数据提供冗余备份,确保高可靠性,两者的主要区别如表5所示。
指标 | 产品定义 | 计费方式 | 存储方案 | 数据同步 | 容灾范围 | 业务恢复 |
|---|---|---|---|---|---|---|
云备份(CBR) | 针对病毒入侵、人为误删除、软硬件故障等场景,为云服务器、云硬盘、云数据库、云桌面、SFS Turbo、云上及本地文件目录,提供统一的备份服务。 | 需要购买云硬盘备份存储库用于存放云硬盘产生的备份。存储库按购买容量计费。 | 与云硬盘数据分开存储,数据存储在对象存储(OBS)中,可以实现在云硬盘存储损坏情况下的数据恢复。 | 保存云硬盘指定时刻的数据,可以设置自动备份。如果将创建备份的云硬盘删除,那么对应的备份不会被同时删除。 | 与云硬盘位于同一个区域内,可以是不同AZ。支持对备份的数据进行跨区域复制,跨云复制。 | 通过恢复备份至云硬盘,或者通过备份创建新的云硬盘,找回数据,恢复业务。数据持久性高。 |
存量快照 | 云硬盘数据在某个时刻的完整拷贝或镜像,是一种重要的数据容灾手段,当数据丢失时,可通过快照将数据完整的恢复到创建快照的时间点。 | 免费 | 快照存放在云硬盘所在的物理存储磁盘中,不会占用云硬盘的空间。 说明: 备份由于数据搬迁会耗费一定的时间,创建快照和回滚快照数据的速度比备份快。 | 保存云硬盘指定时刻的数据。如果将创建快照的云硬盘删除,那么对应的快照也会被同时删除。重装操作系统或切换操作系统后,系统盘快照会自动删除;数据盘快照不受影响,可以照常使用。 | 与云硬盘位于同一个AZ内。不支持将快照数据进行跨区域复制,跨云复制。 | 通过回滚快照至云硬盘,或者通过快照创建新的云硬盘,找回数据,恢复业务。 |
标准快照 | 云硬盘数据在某个时刻的完整拷贝或镜像,是一种重要的数据容灾手段,当数据丢失时,可通过快照将数据完整的恢复到创建快照的时间点。 | 以快照链(一块云硬盘中所有快照组成的关系链)为单位,根据快照链容量、存储时长计费。 | 与云硬盘数据分开存储,数据存储在对象存储(OBS)中,可以实现在云硬盘存储损坏情况下的数据恢复。 | 保存云硬盘指定时刻的数据,如果将创建快照的云硬盘删除,对应的快照不会被同时删除。 | 与云硬盘位于同一个区域内,可以是不同AZ。不支持将快照数据进行跨区域复制,跨云复制。 | 通过回滚快照至云硬盘,或者通过快照创建新的云硬盘,找回数据,恢复业务。数据持久性高。 |



