更新时间:2025-07-30 GMT+08:00

云硬盘快照功能概述

快照简介

云硬盘快照是指云硬盘数据在某个时刻的完整拷贝或镜像,是一种重要的数据容灾手段,当数据丢失时,可通过快照将数据完整的恢复到创建快照的时间点。

云硬盘快照当前正在逐步按区域进行公测转商用,所以部分区域会存在公测(存量快照)、商用(标准快照)两种类型,如表1所示。

表1 快照类型说明

类型

说明

标准快照(商用快照)

快照数据存储在OBS中。使用标准快照创建云硬盘,通过控制台创建的云硬盘的模式(SCSI或VBD)、加密属性、可用区、云硬盘类型和快照源云硬盘不需要保持一致

存量快照(公测快照)

快照数据与云硬盘数据存储在一起,部分区域不再支持新建。已有的存量快照会继续保留,仅支持恢复数据、在相同可用区创建新云硬盘和删除快照操作。

当前仅部分区域上线了标准快照,具体的区域列表请参见功能总览中快照页签下的区域信息。

表2 功能介绍

功能介绍

说明

参考文档

创建快照

支持创建单个快照,保存指定时刻的云硬盘数据。

说明:

快照为只读属性,当快照创建完成后,快照中的数据将无法进行任何修改。

创建云硬盘快照

回滚数据

如果云硬盘的数据发生错误或者损坏,可以回滚快照数据至创建该快照的云硬盘,从而恢复数据。

使用快照回滚数据至云硬盘

使用快照创建云硬盘

通过快照创建新的云硬盘,可以快速将快照中的数据复制给新的云硬盘。

使用快照创建云硬盘

使用快照极速可用功能

标准快照创建后,需要把数据上传至OBS中才可以使用,但是随着云硬盘中存储的数据越来越多,上传时间会越来越长。为了解决以上问题,您可以开启快照极速可用功能实现快照创建后秒级可用,无需等待上传完成就可以进行快照回滚数据和创建云硬盘,回滚数据和创建云硬盘速度快且不影响数据的完整性。

开启/关闭云硬盘快照极速可用功能(适用于标准快照)

查看快照信息

查看快照容量包含:查看某个云硬盘下的所有快照总容量(快照链容量)、查看指定时间段内的快照总容量、查看当前账号在指定区域下的快照总容量。

查看快照详情包括:所属区域和可用区、所属的云硬盘信息、快照的标签等信息。

查看云硬盘快照容量(适用于标准快照)

查看云硬盘快照详情

删除快照

当不再使用快照或快照数量超过配额时,可以删除部分快照以释放存储空间。

删除云硬盘快照

使用场景

快照功能可以帮助您实现以下需求:

  • 日常备份数据

    通过对云硬盘定期创建快照,实现数据的日常备份,可以应对由于误操作、病毒以及黑客攻击等导致数据丢失或不一致的情况。

  • 快速恢复数据

    应用软件升级或业务数据迁移等重大操作前,您可以创建一份或多份快照,一旦升级或迁移过程中出现问题,可以通过快照及时将业务恢复到快照创建点的数据状态。

    例如,当由于云服务器A的系统盘A发生故障而无法正常开机时,由于系统盘A已经故障,因此也无法将快照数据回滚至系统盘A。此时您可以使用系统盘A已有的快照新创建一块云硬盘B并挂载至正常运行的云服务器B上,从而云服务器B能够通过云硬盘B读取原系统盘A的数据。

    当前通过快照回滚数据,只支持回滚快照数据至源云硬盘,不支持快照回滚到其它云硬盘。

  • 快速部署多个业务

    通过同一个快照可以快速创建出多个具有相同数据的云硬盘,从而可以同时为多种业务提供数据资源。例如数据挖掘、报表查询和开发测试等业务。这种方式既保护了原始数据,又能通过快照创建的新云硬盘快速部署其他业务,满足企业对业务数据的多元化需求。

  • 您可以通过快照实现云硬盘数据在不同可用区之间的迁移。

    例如,您通过位于可用区1的云硬盘“volume-01”创建快照“snapshot-01”,然后通过快照“snapshot-01”创建位于可用区2的新云硬盘“volume-02”,从而实现云硬盘数据在不同可用区之间的迁移。

    仅标准快照支持跨可用区迁移数据。

约束与限制

表3 约束与限制

限制项

说明

快照额度

  • 单个云硬盘最多支持手动创建7个存量快照
  • 单个云硬盘最多支持手动创建256个标准快照,其中支持开启极速可用功能的快照数量为7个。

云硬盘类型

  • 暂不支持使用普通IO和高IO类型的云硬盘创建启用了快照极速可用功能的标准快照。
  • 高IO和普通IO不支持极速可用功能。
  • 普通IO和高IO不支持快照一致性组的极速可用功能。

快照保留策略

系统不会主动删除用户的快照,删除快照存在以下场景:

  • 用户主动删除快照。
  • 用户删除云硬盘,该云硬盘存在的存量快照会被删除,标准快照不受影响,但是标准快照的极速可用功能会被关闭。

计费说明

存量快照不收费,您可以免费使用

标准快照根据快照链容量、存储时长计费。详情请参见快照计费说明

快照原理

使用快照备份云硬盘数据时,存量快照是建立一种快照与数据的关联关系,存放在云硬盘所在的物理存储磁盘中,标准快照数据存在在OBS中,均不会占用云硬盘的空间。原理介绍如下所示。

存量快照是建立一种快照与数据的关联关系存放在云硬盘所在的物理存储磁盘中

以通过云硬盘v1在不同时刻创建快照s1和s2为例:
  1. 首先创建一个全新的云硬盘v1,没有任何数据。
  2. 在云硬盘v1中写入数据d1和d2,此时使用新的数据空间存储d1和d2。
  3. 为步骤2中修改后的云硬盘v1创建快照s1,此时并不会去另存一份数据d1和d2,而是建立快照s1与数据d1和d2的关联关系。
  4. 在云硬盘v1中新写入数据d3,并将数据d2修改成d4,此时会使用新的数据空间存储d3和d4,并不会覆盖原有的d2数据。快照s1到数据d1和d2的关联关系仍然有效,因此如果有需要,可以通过快照s1恢复原数据。
  5. 为步骤4修改后的云硬盘v1创建另一个快照s2,建立快照s2到数据d1、d3和d4的关联关系。
    图1 快照原理

标准快照是以数据块作为快照数据备份的最小粒度,快照分为全量快照增量快照。为云硬盘创建的第一个快照为全量快照,全量快照包含创建快照时间点前云硬盘上的所有数据(数据块);后续创建的快照均为增量快照,增量快照仅存储较上一个快照有变化的数据块。

全量快照和增量快照的元数据文件中会记录快照创建时间点前的所有数据块信息,因此通过任何一个快照回滚数据至云硬盘时,均可以恢复创建快照时间点前的所有云硬盘数据。

图2 创建快照原理图

根据数据块的来源区分,快照元数据文件中包含三类数据块:继承数据块(继承于上一个快照的数据块)、修改数据块(较上一个快照有修改的数据块)、新增数据块(较上一个快照新增的数据块)。

快照的数据文件中只会存储较上一个快照有变化的数据块(修改数据块、新增数据块)。

如图所示,假设云硬盘在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 快照链增加快照

    图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 快照链删除快照

    图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提供了在管理控制台查看快照容量功能,具体请参见查看云硬盘快照容量(适用于标准快照)

云硬盘备份与快照的区别

云硬盘备份以及快照为存储在云硬盘中的数据提供冗余备份,确保高可靠性,两者的主要区别如表4所示。

表4 备份和快照的区别

指标

存储方案

数据同步

容灾范围

业务恢复

备份

与云硬盘数据分开存储,数据存储在对象存储(OBS)中,可以实现在云硬盘存储损坏情况下的数据恢复。

保存云硬盘指定时刻的数据,可以设置自动备份。如果将创建备份的云硬盘删除,那么对应的备份不会被同时删除。

与云硬盘位于同一个区域内,可以是不同AZ

通过恢复备份至云硬盘,或者通过备份创建新的云硬盘,找回数据,恢复业务。数据持久性高。

存量快照

快照存放在云硬盘所在的物理存储磁盘中,不会占用云硬盘的空间。

说明:

备份由于数据搬迁会耗费一定的时间,创建快照和回滚快照数据的速度比备份快。

保存云硬盘指定时刻的数据。如果将创建快照的云硬盘删除,那么对应的快照也会被同时删除。重装操作系统或切换操作系统后,系统盘快照会自动删除;数据盘快照不受影响,可以照常使用。

与云硬盘位于同一个AZ内

通过回滚快照至云硬盘,或者通过快照创建新的云硬盘,找回数据,恢复业务。

标准快照

与云硬盘数据分开存储,数据存储在对象存储(OBS)中,可以实现在云硬盘存储损坏情况下的数据恢复。

保存云硬盘指定时刻的数据,如果将创建快照的云硬盘删除,对应的快照不会被同时删除。

与云硬盘位于不同AZ内

通过回滚快照至云硬盘,或者通过快照创建新的云硬盘,找回数据,恢复业务。数据持久性高。