创建快照

最近更新时间: 2024-06-12 15:06:00

操作场景

通过云硬盘可以创建快照,从而保存指定时刻的云硬盘数据。使用增量的方式创建快照,即仅创建与上一次快照相比新更改的数据,因此在数据量改动不大的情况下能够在较快的时间内完成快照的创建。尽管快照是以增量方式创建,但删除快照不会影响您使用任何快照数据,未删除的快照均能将云硬盘恢复至该快照状态。

您可以在云硬盘的任何状态下创建快照,但快照只能保存当前时间点已完成写入的数据。若应用程序或进程正在写入数据,这部分数据可能无法被保存至该时间点创建的快照。根据实际业务情况,您可以选择暂时停止所有写入并及时创建快照,或者先将该云硬盘从云服务器中 卸载,创建快照后再重新挂载 ,以便获得数据完整的快照。

前提条件

  • 已成功创建云硬盘。

  • 当前地域内的快照个数和总容量未达到最大值,详细信息请参考快照使用限制

注意事项

快照仅保留硬盘上该时刻已经写入的数据,不会保留该时刻在内存中未写入硬盘的数据。强烈建议您在创建快照前关机或确保内存数据已写入硬盘并暂停硬盘读写,并从以下两方面进行操作:

  • 数据库层面

    对于数据库类型业务,建议先将数据库中所有表锁定为只读状态,防止在创建快照时有新数据写入,造成新数据无法被快照捕获。本文以 mysql 为例,进行如下操作:

    执行FLUSH TABLES WITH READ LOCK命令关闭所有打开的表,并使用全局读锁锁定所有数据库的所有表。如下图所示:

    对云硬盘创建快照。

    执行UNLOCK TABLES命令解除锁定。如下图所示:

  • 系统层面

    从系统角度而言,数据在处理过程中通常先存放在内存缓冲区,等到适当的时候再写入云硬盘,以提高系统的运行效率。因此,在创建快照时,存在缓冲区中尚未写入云硬盘的数据将无法被写入快照以及从快照中恢复,对数据一致性产生影响。

    执行sync命令,将文件系统内存缓冲区中的数据强制立刻写入云硬盘内,且在创建快照前避免写入新数据。

    执行命令后无错误信息返回,即缓存中的数据已写入云硬盘内。如下图所示:

操作步骤

使用控制台创建快照

  1. 登录云硬盘控制台 。

  2. 单击目标云硬盘所在行的【创建快照】。

  3. 在【创建快照】对话框中,输入快照名称,单击【确定】。

使用 API 创建快照

您可以使用 CreateSnapshot 接口创建快照