快照原理

ZStack采用ROW(Redirect-On-Write,写时重定向)快照技术,与传统的COW(Copy-On-Write,写时复制)快照技术不同,利用写时重定向方法,创建快照涉及的实际数据活动显著减少,有效降低快照任务对存储I/O性能影响,保证业务持续稳定运行。

增量快照

ZStack采用增量快照方式,只有发生数据变化的部分才会被拷贝到快照中。

图 1所示:
图 1. 增量快照


快照1、快照2、快照3分别为一块磁盘的第一份、第二份和第三份快照。
  • 快照1:磁盘的第一份快照,全量快照,拷贝了该磁盘上某一时刻的所有数据;
  • 快照2:磁盘的第二份快照,增量快照,拷贝了基于快照1变化的数据块B1和C1,数据块A和D引用快照1中的A和D;
  • 快照3:磁盘的第三份快照,增量快照,拷贝了基于快照2变化的数据块B2,数据块A和D引用快照1中的A和D,数据块C1引用快照2中的C1。

快照树

通常一块磁盘对应一条快照链,ZStack支持对一块磁盘创建一棵快照树,快照树的每一个分支都是一条快照链。

图 2所示:
图 2. 快照树


快照树包括以下信息:
  • 快照链:磁盘的一组快照组成的关系链,快照树的每一个分支都是一条快照链。
  • 快照节点:快照链中的一个节点,表示磁盘的一份快照。
  • 快照容量:快照占用的存储空间。支持查看快照树中所有快照的总容量,以及单个快照节点的容量。
说明:
  • 系统默认每条快照链最多有128个节点,用户可自行设置快照链的最大长度,设置方法:

    进入设置 > 全局设置 > 高级设置,修改快照增量的最大数目即可。

  • Ceph存储场景下,每条快照链最多有32个节点,包括手动创建及自动创建的快照。
  • 快照链长度达到上限后:
    • 若继续创建自动快照,系统会自动删除最早的自动快照;
    • 若继续创建手动快照,用户需手动删除不需要的快照。
  • 在生产环境中,建议单块磁盘的快照数量尽量控制在10以内,快照过多会影响云主机/云盘的IO性能、数据安全以及主存储容量。如需长期备份,建议使用灾备服务。

快照回滚

通过快照回滚可将磁盘数据恢复至创建快照时的状态。

图 3所示:
图 3. 快照回滚


上图显示了一块磁盘在不同时刻创建快照,并通过快照回滚恢复至某一时刻的数据状态。
  1. T0时刻,磁盘处于数据状态1,包括:数据块A、B、C和D。
  2. T1时刻,对磁盘创建快照1,全量快照,拷贝了该磁盘在T0时刻的所有数据。
  3. T2时刻,磁盘处于数据状态2,包括:基于磁盘数据状态1变化的数据块A1和B1,以及基于磁盘数据状态1无变化的数据块C和D。磁盘数据状态1中的原数据块A和B被保护在快照1中。
  4. T3时刻,对磁盘创建快照2,增量快照,拷贝了基于快照1变化的数据块A1和B1,数据块C和D引用快照1中的C和D。
  5. T4时刻,磁盘处于数据状态3,包括:基于磁盘数据状态2变化的数据块C1,以及基于磁盘数据状态2无变化的数据块A1、B1和D。磁盘数据状态2中的原数据块C被保护在快照2中。
  6. T5时刻,对磁盘创建快照3,增量快照,拷贝了基于快照2变化的数据块C1,数据块A1和B1引用快照2中的A1和B1,数据块D引用快照1中的D。
  7. T6时刻,磁盘处于数据状态4,包括:基于磁盘数据状态3变化的数据块A2,以及基于磁盘数据状态3无变化的数据块B1、C1和D。磁盘数据状态3中的原数据块A1被保护在快照3中。
  8. T7时刻,对磁盘创建快照4,增量快照,拷贝了基于快照3变化的数据块A2,数据块B1引用快照2中的B1,数据块C1引用快照3中的C1,数据块D引用快照1中的D。
  9. T8时刻,执行快照回滚,将磁盘数据恢复至创建快照1时的状态。在该过程中,会依次从快照1、快照2、快照3中找出被保护的数据,进行比对组合,从而找出需恢复的数据块A、B和C,将其写回磁盘即可。磁盘数据状态4中的原数据块A2、B1和C1被保护在快照4中。
说明: 执行快照回滚操作前,强烈建议对磁盘创建一份快照,以保护当前磁盘数据状态,如上述T7时刻创建的快照4。
  • 系统默认快照回滚不会触发一次性自动快照;
  • 用户可自行设置快照回滚是否触发一次性自动快照,设置方法:

    进入设置 > 全局设置 > 高级设置,开启自动创建云盘快照开关即可。

删除快照

删除一条快照链上的某个快照节点,会删除未被快照链中其他快照节点引用的数据块。

图 4所示,删除快照2,该快照中的数据块B1会被删除,但数据块A1、C和D不会被删除。
图 4. 删除快照


学习路径

ZStack 产品学习路径

快速梳理文档,点击相应文本链接,快速跳转到相应文档的页面,学习 ZStack 产品。

我知道了

下载ZStack企业版

您已填写过基本信息?点击这里

姓名应该不少于两个字符
手机号格式错误
验证码填写错误 获取短信验证码 60 秒后可重发
公司名称不应该少于4个字符
邮箱格式错误

下载链接将会通过邮件形式发送至您的邮箱,请谨慎填写。

下载ZStack企业版

还未填写过基本信息?点击这里

邮箱或手机号码格式错误
验证手机号
手机号格式错误
验证码填写错误 获取短信验证码 60 秒后可重发

商务咨询:

400-962-2212 转 1

售后咨询:

400-962-2212 转 2

商务联系:

sales@zstack.io
申请ZStack多机版
姓名应该不少于两个字符
手机号格式错误
验证码填写错误 获取短信验证码 60 秒后可重发
公司名称不应该少于4个字符
邮箱格式错误

商务咨询:

400-962-2212 转 1

售后咨询:

400-962-2212 转 2

商务联系:

sales@zstack.io

下载链接已发送至您的邮箱。

如未收到,请查看您的垃圾邮件、订阅邮件、广告邮件。 当您收到电子邮件后,请点击 URL 链接,以完成下载。

下载链接已发送至您的邮箱。

如未收到,请查看您的垃圾邮件、订阅邮件、广告邮件。
或点击下方URL链接 (IE内核浏览器请右键另存为), 完成下载:

感谢您使用 ZStack 产品和服务。

成功提交申请。

我们将安排工作人员尽快与您取得联系。

感谢您使用 ZStack 产品和服务。

回到顶部