适用场景
- 产品:
ZCF - 组件:
ZStack Cloud - 版本:
4.8.x - 部署形态:双管理
- 触发条件:需要清理超出
7天且无效的CDP历史备份脏数据,同时保证最近有效恢复点不受影响。
问题现象
CDP备份目录内存在历史无效脏数据。- 需要释放空间或清理无效文件。
- 不能直接删除,而要先核验
7天内的有效备份链和恢复点。
判断方法
- 先检查
7天内的CDP备份链是否完整。 - 先把疑似无效文件移走,再在云平台验证恢复点是否可挂载。
- 验证成功后再删除移走的数据。
原因说明
本次清理的关键不是“发现旧文件就删”,而是先保证最近 7 天内的备份链仍然完整可恢复。为避免误删影响恢复能力,必须先做链路校验、再做临时搬移、再做恢复点验证,最后才执行删除。
解决方案
- 执行前准备
- 风险等级:低
- 不影响现有虚拟机业务运行。
- 但
rm操作必须准确。
- 校验 7 天内备份链
- 登录
CDP备份服务器节点。 - 进入对应目录:
cd /backup/cdp/backup/xxx
- 预期结果:进入目标云盘 / 备份链目录。
- 过滤单个磁盘的备份文件:
ll | grep <disk_uuid>
- 预期结果:看到该磁盘对应的全部
qcow2备份文件。
- 检查
7天内备份链:
/usr/bin/qemu-img info --output=json --backing-chain -U <xxx.qcow2> | grep full-backing-filename
- 预期结果:确认最近
7天内的快照链完整。
- 暂移无效数据
- 创建临时备份目录:
mkdir <backup_dir>
- 预期结果:准备一个隔离位置存放疑似无效数据。
- 把无效数据先移走,而不是直接删除:
mv xxx.qcow2 <backup_dir>
- 预期结果:无效数据被临时隔离,仍保留回退空间。
- 验证恢复点
- 登录云平台,找到对应云主机。
- 在恢复点界面中选择几份
7天内的CDP备份,测试恢复文件是否能正常挂载。
- 预期结果:若恢复点正常挂载,说明有效数据未受影响。
- 删除无效数据
- 在确认有效恢复点正常后,删除已移走的无效数据目录:
rm -rf <backup_dir>
- 预期结果:无效历史脏数据被正式清理。
- 按同样流程处理剩余全部
CDP脏数据。
- 预期结果:整个备份目录完成清理且恢复点能力保持正常。
验证方法
- 检查
7天内备份链仍完整。 - 检查恢复点可正常挂载。
- 检查已确认无效的数据目录被删除。
- 检查虚拟机业务不受影响。
风险与回滚
- 风险:如果未先验证恢复点就直接
rm -rf,可能误删仍需保留的数据。 - 风险等级:低。
回退方法
若尚未删除,只是完成了 mv,则可以直接恢复原位置:
mv <backup_dir>/xxx xxx
