概述
持续数据保护(CDP):为云主机中的重要业务系统提供秒级细粒度的持续备份,既可以将云主机数据恢复到指定时间状态,又可以在不恢复系统的情况下找回文件。
持续数据保护(CDP)服务以单独的功能模块形式提供,需提前购买持续数据保护(CDP)模块许可证,且需在购买云平台许可证基础上使用,不可单独使用。
相关定义
- CDP任务:通过CDP任务,可将云主机数据持续备份到指定的备份服务器,实现持续数据保护。
- 恢复任务:提供向导式的恢复流程,帮助用户通过指定CDP任务和恢复点快速进行数据恢复。同时提供恢复操作记录,方便后续审计和追溯。
- CDP数据:对云主机进行持续数据保护产生的备份数据,存放在指定的备份服务器中。
- 恢复点:进行CDP持续备份时产生的数据点,一个恢复点对应用户指定时间间隔内的云主机数据变化。
- 锁定恢复点:支持将恢复点进行锁定或解锁,锁定恢复点后,恢复点对应的数据将不会被自动清理或删除。
功能原理
功能优势
- 简单:
- 软件定义,不依赖硬件,可扩展。
- 无需恢复系统,即可预览备份文件。
- 智能容量规划,帮助用户合理规划备份空间。
- 提供向导式的数据恢复流程与体验。
- 强大:
- 无代理备份:云主机无需安装代理,因此不受云主机操作系统限制,也无需考虑与各种应用耦合。降低配置复杂性的同时,不会占用云主机内存资源,对云主机性能基本无损耗。
- 秒级RPO:为云主机提供秒级细粒度持续数据保护,RPO可达1秒 。
- 快速拉起:CDP数据恢复支持快速拉起,RTO最低可达到秒级,保障业务连续性。
- 丰富的存储场景支持:支持对多种主存储类型的云主机进行CDP保护和数据恢复,满足不同存储场景下的CDP需求。支持的主存储类型包括:本地存储、NFS、SharedBlock、Ceph。
- 灵活:
- 灵活RPO设置:支持秒/分钟级别的RPO设置,满足不同场景需求。
- 灵活恢复点保留策略:支持自定义恢复点保留策略。
- 多种恢复级别:支持整机恢复和文件级恢复。
- 整机恢复:支持新建云主机和恢复到原云主机两种策略。
- 文件级恢复:支持在不恢复系统的情况下找回单个文件,且支持Windows系统和Linux系统等。
- 数据灵活展示与查找:
- 提供小时粒度的数据展示,直观反映云主机CDP数据变化情况,为备份容量规划提供有力参考。
- 提供恢复点搜索日历图,将存在恢复点的日期用颜色进行标识,缩小搜索范围,缩短恢复点查找时间。
- 可靠:
- 统一运维:UI界面提供CDP概览,支持统一查看CDP任务状态、恢复任务状态、备份服务器使用情况以及CDP相关未读告警统计。
- 支持通过新建云盘方式恢复到原云主机,恢复前的云盘支持全部保留并重新加载回云主机,最大限度保证数据安全,也有利于故障事后分析。
- 新建云主机恢复策略支持在不影响当前云主机正常运行的情况下,基于所选恢复点新建云主机,确认数据无误后再恢复到原环境中,满足恢复演练需求。
- 支持对恢复点进行标记和锁定,长期保存重要恢复点数据。
- 提供恢复任务列表,支持查看恢复记录和恢复进度,方便后续审计和追溯。
- 提供RPO偏移策略和报警,有效缓解重I/O场景下备份服务器的数据传输压力。
应用场景
- 核心业务数据持续保护
为核心业务数据,如银行系统数据、金融交易数据等,提供持续的数据备份与保护,最小程度减少数据丢失,保障业务连续性。
- 病毒防护与数据恢复
当面临病毒入侵,如勒索病毒攻击,可使用CDP进行数据恢复,恢复至任意时间点,减少病毒带来的损失。
使用限制
若云主机加载了Ceph主存储之外的云盘,进行CDP时,暂不支持创建快照、创建镜像、克隆云主机操作。
准备工作
- 确保已安装最新版本的ZStack Cloud,并安装持续数据保护(CDP)模块许可证。Note: 推荐使用ZStack Cloud 4.8.0 及以上版本。
- Libvirt、QEMU和Kernel最低版本要求如下:
- Libvirt:4.9.0-28.g214d823.el7及以上版本
- QEMU:4.2.0-475.g675e4a8.el7及以上版本
- Kernel:3.10.0-957.27.8.1.ga791a72.el7及以上版本
Note:- 推荐使用与ZStack Cloud发布OS版本保持一致的版本,详情请联系官方技术支持。
- 若使用旧版本升级,请联系官方技术支持将Libvirt、QEMU和Kernel升级至官方指定版本。
- 确保已创建云主机,且云主机未创建备份任务。
- 确保已在本地数据中心准备好一台存储服务器作为本地备份服务器,且该存储服务器未被复用为物理机。
- 确保已提前规划存储网络和备份网络,备份网络推荐使用万兆网卡。
快速使用流程
持续数据保护(CDP)服务支持基于本地备份服务器对云主机进行备份和恢复,同时支持在不恢复系统的情况下找回文件。
- CDP备份:
- 添加本地备份服务器到ZStack Cloud云平台。
- 创建云主机CDP任务。
- 管理本地CDP数据。
- CDP恢复:
- 将云主机CDP数据恢复至本地。
- 查看恢复进度。
- 查看恢复至本地的相关资源。
CDP场景实践详情可参考本地CDP恢复实践|恢复到原云主机和本地CDP恢复实践|新建云主机章节。
典型场景实践
本地CDP恢复实践|恢复到原云主机
背景信息
场景设定:假定用户已在本地部署一套最新的ZStack Cloud私有云环境,并安装持续数据保护(CDP)服务模块。现计划添加一台本地备份服务器对云主机进行备份。数据备份至本地服务器后,进行业务调整时,误操作丢失重要文件。由于用户的业务应用有硬件授权,为快速验证业务的可用性,需将数据恢复到原云主机查看应用是否正常。
| 本地备份服务器 | 配置信息 |
|---|---|
| 备份服务器IP | 172.24.246.195 |
| 挂载路径 | /cdp_store |
| SSH端口 | 22 |
| 用户名 | root |
| 密码 | password |
| 管理网络 | 172.24.246.195/16 |
| 备份网络 | 192.168.1.0/24 |
- 添加本地备份服务器。
- 创建CDP任务。
- 查看本地云主机CDP数据并锁定恢复点。
- 查看锁定恢复点中的重要文件。
- 删除重要文件,模拟重要数据丢失。
- 找锁定恢复点,将数据恢复到原云主机。
- 查看恢复进度及相关信息。
- 验证数据恢复。
操作步骤
-
添加本地备份服务器。
在ZStack Cloud主菜单,点击,进入本地备份服务器界面。点击添加本地备份服务器,弹出添加本地备份服务器界面。
可参考以下示例输入相应内容:- 添加方式:选择添加服务器
- 名称:填写本地备份服务器名称
- 简介:可选项,可留空不填
- 备份服务器IP:填写本地备份服务器的IP地址,本场景填写172.24.246.195
- 挂载路径:填写本地备份服务器上挂载存储的挂载路径,本场景填写/cdp_store
- SSH端口:默认为22
- 用户名:本场景填写root
- 密码:输入对应的用户密码,本场景填写password
- 备份网络:本场景填写192.168.1.0/24
- 备份数据:选择是否扫描已有备份数据,本场景无需扫描备份数据
如图 3所示:图 3. 添加本地备份服务器 
-
创建CDP任务。
在ZStack Cloud主菜单,点击,进入CDP任务界面。点击,弹出创建CDP任务界面。
创建CDP任务分为以下三步:- 设置基本信息。可参考以下示例输入相应内容:
- 名称:设置CDP任务名称
- 简介:可选项,可留空不填
- 云主机:选择需要进行持续数据保护的云主机,本场景选择业务云主机-1Note:
- 支持批量选择多台云主机创建CDP任务。
- 选择多台云主机时,任务名称将会自动增加后缀“-1/-2/-3”以此类推,用于区分任务。
- 1台云主机对应1个CDP任务。
- 为云主机创建CDP任务后,会对云主机进行一次全量备份。
- 若云主机已加载共享云盘,共享云盘数据不会进行备份。
- 已创建备份任务的云主机不支持创建CDP任务。
- 停止中的云主机,对其创建CDP任务后,CDP任务处于停用状态。可在云主机启动后自动启动。
- 本地备份服务器:本场景选择已添加的本地备份服务器
如图 4所示:图 4. 设置基本信息 
- 设置策略信息。可参考以下示例输入相应内容:
- CDP保护策略:设置CDP保护策略,包括恢复点间隔时间、定期备份频率、恢复点保留策略、备份速率
- 恢复点间隔时间:选择恢复点生成的间隔时间,默认每隔3秒生成一个恢复点,本场景使用默认值
- 定期合成备份频率:设置定期合成全量备份的时间间隔,默认每隔7天合成一个全量备份,本场景使用默认值
- 恢复点保留策略:设置恢复点保留时间和保留间隔,本场景使用默认值
- 备份速率:设置单块云盘的上行带宽上限,本场景选择不限速
- 任务运行策略:设置CDP任务的规划容量和RPO策略
- 规划容量:规划单个CDP任务所需的备份空间,超过CDP任务规划容量,CDP任务会自动停止。本场景使用云平台提供的参考值Note:
- 规划容量不可小于云盘总容量,不可超过备份服务器总容量。
- 云平台根据算法提供参考值,参考值计算方法如下:参考值 = 最大生产数据量 X 全量备份数量 X 1.1 + 每日变化数据量 X 恢复点保留时间 X 1.5
- 最大生产数据量:云主机进行1次全量备份预计产生的最大数据量。该数值最大不超过云主机的云盘总容量。
- 全量备份数量:恢复点保留时间 ÷ 定期备份频率。
- 每日变化数据量:需根据实际业务场景,预估每天的数据变化量。如:云主机数据量每月增加1 GB,则每日变化数据量可设置为35 MB。
- 恢复点保留时间:界面上设置的恢复点保留最大时间。
- 最大生产数据量 X 全量备份保留数量 X 1.1:数据保留时间内,CDP任务会进行不止一次全量备份。某些情况如机器重启,会触发全量备份。因此实际全量备份数量会按照一定比例进行增加(此处系数取1.1,可根据实际情况调整该系数)。
- 每日变化数据量 X 恢复点保留时间 X 1.5:快照卷的空间占用大约是实际数据变化量的1.5倍。
- 该公式仅用于指导用户初次进行备份容量规划。建议用户持续关注备份服务器容量变化,并根据实际情况,及时进行扩容。
- RPO策略:设置重I/O场景下数据复制产生延迟(偏移)后的CDP任务运行策略,默认偏移时间大于10分钟会自动停止CDP任务,数据复制同步后,CDP任务会自动恢复运行。本场景使用默认值
- 规划容量:规划单个CDP任务所需的备份空间,超过CDP任务规划容量,CDP任务会自动停止。本场景使用云平台提供的参考值
如图 5所示:图 5. 设置策略信息 
- CDP保护策略:设置CDP保护策略,包括恢复点间隔时间、定期备份频率、恢复点保留策略、备份速率
- 确认信息。
查看将要创建的CDP任务,支持跳转修改。
如图 6所示:图 6. 确认信息 
- 设置基本信息。
- 查看本地云主机CDP数据并锁定恢复点。
-
查看锁定恢复点中的重要文件。
假定重要文件名称为importantFile。
在ZStack Cloud主菜单,点击,进入云主机界面。在云主机详情页CDP数据子页面,点击锁定恢复点数量旁的箭头,进入锁定恢复点列表。找到刚刚锁定的恢复点,执行找回文件操作。在找回文件界面的搜索框,输入importantFile进行查找,可以看到该文件包含在当前锁定恢复点中。
如图 9所示:图 9. 查看锁定恢复点中的重要文件 
-
删除重要文件,模拟重要数据丢失。
假定用户进行业务调整时,误将importantFile文件删除,造成重要数据丢失。
如删除文件所示:图 10. 删除文件 
-
找到锁定点,将数据恢复到原云主机。
在ZStack Cloud主菜单,点击,进入云主机界面。在云主机详情页CDP数据子页面,点击锁定恢复点数量旁的箭头,进入锁定恢复点列表。
如图 11所示:图 11. 锁定恢复点列表 
在锁定恢复点列表,找到2022-05-15 23:00:00对应的锁定恢复点,执行恢复数据操作。恢复数据分为以下三步:- 恢复策略配置。可参考以下示例输入相应内容:
- CDP任务:显示当前锁定恢复点对应的CDP任务
- 恢复点:显示选择的锁定恢复点
- 恢复任务名称:恢复CDP数据会默认创建恢复任务并提供默认任务名称,可在恢复任务列表查看详细的恢复记录Note: 恢复任务默认命名规则:“云主机名称-所选恢复点时间”,如:业务云主机-1-2022-05-15-23:00:00。
- 恢复策略:本场景选择恢复到原云主机Note:
- 支持新建云盘和覆盖当前云盘两种方式。
- 恢复到原云主机后,原云主机会快速启动进行业务恢复。
- 恢复过程中,原云主机的启用状态会显示为“CDP恢复中”,此时云主机已处于运行状态,仅支持打开控制台操作。
- 恢复方式:选择恢复方式,支持新建云盘和覆盖当前云盘,本场景选择覆盖当前云盘
- 新建云盘:
- 此方式会新建云盘来替换当前云盘,当前云盘数据会被保留。
- 此方式会将当前云盘卸载,用户可在云主机配置信息页面查看新建和已卸载的云盘。
- 确认恢复数据可靠后,可手动删除被卸载的云盘,释放存储空间。
- 覆盖当前云盘:
- 此方式会覆盖云主机中的原始数据。
- 此方式会保留当前云盘中的快照。
- 新建云盘:
- 恢复速率:设置CDP保护中单块云盘的上行带宽上限,本场景不限速
如图 12所示:图 12. 恢复策略配置 
- 目标云主机配置。
默认展示原云主机的名称和简介。
如图 13所示:图 13. 目标云主机配置 
- 确认信息。
查看将要创建的恢复任务,支持跳转修改。
如图 14所示:图 14. 确认信息 
- 恢复策略配置。
-
查看恢复进度及相关信息。
在ZStack Cloud主菜单,点击,进入恢复任务界面。在恢复任务主列表,即可查看恢复任务进度、状态、目标云主机、耗时等信息。
如图 15所示:图 15. 查看恢复进度 
-
验证数据恢复。
登录云主机控制台,执行
ls命令,查看目录下的文件。可以看到importantFile文件已经存在。如数据恢复成功所示:图 16. 数据恢复成功 
后续操作
用户可在恢复成功后取消锁定恢复点,进而释放存储空间。至此,将数据恢复到原主机的CDP场景实践介绍完毕。
本地CDP恢复实践|新建云主机
背景信息
场景设定:假定用户已在本地部署一套最新的ZStack Cloud私有云环境,并安装持续数据保护(CDP)服务模块。现计划添加一台本地备份服务器对云主机进行备份。数据备份至本地服务器后,进行业务调整时,误操作丢失重要文件。由于用户不清楚问题发生的具体时刻,不敢直接覆盖原云主机。现需要将数据恢复到新云主机上,查看系统是否正常。
| 本地备份服务器 | 配置信息 |
|---|---|
| 备份服务器IP | 172.24.246.195 |
| 挂载路径 | /cdp_store |
| SSH端口 | 22 |
| 用户名 | root |
| 密码 | password |
| 管理网络 | 172.24.246.195/16 |
| 备份网络 | 192.168.1.0/24 |
- 添加本地备份服务器。
- 创建CDP任务。
- 查看本地云主机CDP数据并查看某个重要文件。
- 删除重要文件,模拟重要数据丢失。
- 从当前恢复点新建云主机进行恢复。
- 查看恢复进度及相关信息。
- 验证数据恢复。
操作步骤
-
添加本地备份服务器。
在ZStack Cloud主菜单,点击,进入本地备份服务器界面。点击添加本地备份服务器,弹出添加本地备份服务器界面。
可参考以下示例输入相应内容:- 添加方式:选择添加服务器
- 名称:填写本地备份服务器名称
- 简介:可选项,可留空不填
- 备份服务器IP:填写本地备份服务器的IP地址,本场景填写172.24.246.195
- 挂载路径:填写本地备份服务器上挂载存储的挂载路径,本场景填写/cdp_store
- SSH端口:默认为22
- 用户名:本场景填写root
- 密码:输入对应的用户密码,本场景填写password
- 备份网络:本场景填写192.168.1.0/24
- 备份数据:选择是否扫描已有备份数据,本场景无需扫描备份数据
如图 17所示:图 17. 添加本地备份服务器 
-
创建CDP任务。
在ZStack Cloud主菜单,点击,进入CDP任务界面。点击,弹出创建CDP任务界面。
创建CDP任务分为以下三步:- 设置基本信息。可参考以下示例输入相应内容:
- 名称:设置CDP任务名称
- 简介:可选项,可留空不填
- 云主机:选择需要进行持续数据保护的云主机,本场景选择业务云主机-1Note:
- 支持批量选择多台云主机创建CDP任务。
- 选择多台云主机时,任务名称将会自动增加后缀“-1/-2/-3”以此类推,用于区分任务。
- 1台云主机对应1个CDP任务。
- 为云主机创建CDP任务后,会对云主机进行一次全量备份。
- 若云主机已加载共享云盘,共享云盘数据不会进行备份。
- 已创建备份任务的云主机不支持创建CDP任务。
- 停止中的云主机,对其创建CDP任务后,CDP任务处于停用状态。可在云主机启动后自动启动。
- 本地备份服务器:本场景选择已添加的本地备份服务器
如图 18所示:图 18. 设置基本信息 
- 设置策略信息。可参考以下示例输入相应内容:
- CDP保护策略:设置CDP保护策略,包括恢复点间隔时间、定期备份频率、恢复点保留策略、备份速率
- 恢复点间隔时间:选择恢复点生成的间隔时间,默认每隔3秒生成一个恢复点,本场景使用默认值
- 定期合成备份频率:设置定期合成全量备份的时间间隔,默认每隔7天合成一个全量备份,本场景使用默认值
- 恢复点保留策略:设置恢复点保留时间和保留间隔,本场景使用默认值
- 备份速率:设置单块云盘的上行带宽上限,本场景选择不限速
- 任务运行策略:设置CDP任务的规划容量和RPO策略
- 规划容量:规划单个CDP任务所需的备份空间,超过CDP任务规划容量,CDP任务会自动停止。本场景使用云平台提供的参考值Note:
- 规划容量不可小于云盘总容量,不可超过备份服务器总容量。
- 云平台根据算法提供参考值,参考值计算方法如下:参考值 = 最大生产数据量 X 全量备份数量 X 1.1 + 每日变化数据量 X 恢复点保留时间 X 1.5
- 最大生产数据量:云主机进行1次全量备份预计产生的最大数据量。该数值最大不超过云主机的云盘总容量。
- 全量备份数量:恢复点保留时间 ÷ 定期备份频率。
- 每日变化数据量:需根据实际业务场景,预估每天的数据变化量。如:云主机数据量每月增加1 GB,则每日变化数据量可设置为35 MB。
- 恢复点保留时间:界面上设置的恢复点保留最大时间。
- 最大生产数据量 X 全量备份保留数量 X 1.1:数据保留时间内,CDP任务会进行不止一次全量备份。某些情况如机器重启,会触发全量备份。因此实际全量备份数量会按照一定比例进行增加(此处系数取1.1,可根据实际情况调整该系数)。
- 每日变化数据量 X 恢复点保留时间 X 1.5:快照卷的空间占用大约是实际数据变化量的1.5倍。
- 该公式仅用于指导用户初次进行备份容量规划。建议用户持续关注备份服务器容量变化,并根据实际情况,及时进行扩容。
- RPO策略:设置重I/O场景下数据复制产生延迟(偏移)后的CDP任务运行策略,默认偏移时间大于10分钟会自动停止CDP任务,数据复制同步后,CDP任务会自动恢复运行。本场景使用默认值
- 规划容量:规划单个CDP任务所需的备份空间,超过CDP任务规划容量,CDP任务会自动停止。本场景使用云平台提供的参考值
如图 19所示:图 19. 设置策略信息 
- CDP保护策略:设置CDP保护策略,包括恢复点间隔时间、定期备份频率、恢复点保留策略、备份速率
- 确认信息。
查看将要创建的CDP任务,支持跳转修改。
如图 20所示:图 20. 确认信息 
- 设置基本信息。
-
查看本地云主机CDP数据并查看某个重要文件。
假定用户在2022-5-15这天进行了重要业务调整,业务调整前查看了一下系统中的重要数据。
在ZStack Cloud主菜单,点击,进入云主机界面。在CDP数据子页面,查看2022-5-15任一时间段(如2022-05-15 22:00:00)的数据并执行找回文件操作。在找回文件界面的搜索框,输入importantFile进行查找,可以看到该文件包含在当前恢复点中。
如图 21所示:图 21. 查看恢复点中某重要文件 
-
删除重要文件,模拟重要数据丢失。
假定用户进行业务调整时,误将importantFile文件删除,造成重要数据丢失。
如删除文件所示:图 22. 删除文件 
-
从当前恢复点新建云主机进行恢复。
假定用户不清楚误操作发生在2022-5-15的具体哪个时刻,不敢直接覆盖原云主机,需要新建一台云主机进行恢复验证。
在ZStack Cloud主菜单,点击,进入云主机界面。在云主机详情页CDP数据子页面,日期选择2022-05-15,并执行恢复数据操作。恢复数据分为以下三步:- 恢复策略配置。可参考以下示例输入相应内容:
- CDP任务:显示当前CDP数据对应的CDP任务
- 恢复点:选择恢复点,支持从全部恢复点列表或锁定恢复点列表进行选择。本场景选择2022-05-15某个时间对应的恢复点Note:
- 全部恢复点选择列表支持日期、小时、分/秒3种筛选粒度。
- 按小时进行选择时,每小时为一个时间区间(整点)。
- 按日期进行选择时,提供恢复点日历图,将存在恢复点的日期用绿色进行标注,方便识别。
- 按分/秒进行选择时,建议结合恢复点间隔时间进行精准选择。
- 锁定恢复点选择列表默认展示所有锁定恢复点且支持按日期进行筛选。
- 恢复任务名称:恢复CDP数据会默认创建恢复任务并提供默认任务名称,可在恢复任务列表查看详细的恢复记录Note: 恢复任务默认命名规则:“云主机名称-所选恢复点时间”,如:业务云主机-1-2022-05-15-19:00:33。
- 恢复策略:本场景选择新建云主机Note:
- 此方式会从当前恢复点新建一台云主机,原云主机不受影响。
- 新建云主机后,云主机会快速启动进行业务恢复。
- 恢复过程中,新建云主机的启用状态会显示为“CDP恢复中”,此时云主机已处于运行状态,仅支持打开控制台操作。
- 恢复速率:设置CDP保护中单块云盘的上行带宽上限,本场景不限速
如图 23所示:图 23. 恢复策略配置 
-
- 目标云主机配置。可参考以下示例输入相应内容:
- 名称:设置新云主机名称,如:VM-from-CDP
- 简介:填写新云主机的简介,本场景可不填写
- 标签:为新云主机绑定标签,本场景可不绑定
- 计算规格:默认与原云主机使用的计算规格保持一致
- 网络配置:默认与原云主机使用的网络配置保持一致
- 主存储:默认与原云主机使用的主存储保持一致Note: 若云主机已加载SharedBlock主存储上的云盘,进行数据恢复时,置备类型默认使用厚置备。
- 物理机:默认与原云主机使用的物理机保持一致
如图 24所示:图 24. 目标云主机配置 
- 目标云主机配置。
- 确认信息
查看将要创建的恢复任务,支持跳转修改。
如图 25所示:图 25. 确认信息 
- 恢复策略配置。
-
查看恢复进度及相关信息。
在ZStack Cloud主菜单,点击,进入恢复任务界面。在恢复任务主列表,即可查看恢复任务进度、状态、目标云主机、耗时等信息。
如图 26所示:图 26. 查看恢复进度 
-
验证数据恢复。
登录新建云主机(VM-from-CDP)的控制台,执行
ls命令,查看目录下的文件。可以看到importantFile文件存在。如图 27所示:图 27. 数据恢复验证 
后续操作
至此,通过新建云主机进行数据恢复的CDP场景实践介绍完毕。




