备份恢复块存储和之前做的测试一样,先将块存储状态以快照的形式备份下来,然后将快照存储到某个池中独立存储或导出镜像存储到某个存储设备或空间中储存,为了安全还是设置保护比较稳妥,
一备份与恢复
创建RBD池
ceph osd pool create RDB_Store_pool 64 64
ceph osd pool create RDB_Backup_pool 64 64
ceph osd lspools
Ceph学习笔记四 块存储备份与恢复(6)
创建块存储镜像并映射挂载
创建块存储镜像
rbd create -p RDB_Store_pool rbd-store-demo.img --image-feature layering --size 10G
rbd info RDB_Store_pool/rbd-store-demo.img
Ceph学习笔记四 块存储备份与恢复(6)
映射块存储并挂载
rbd map RDB_Store_pool/rbd-store-demo.img
Ceph学习笔记四 块存储备份与恢复(6)
客户端挂载块存储
格式化块存储
mkfs.ext4 /dev/rbd1
Ceph学习笔记四 块存储备份与恢复(6)
挂载块存储
mkdir /store
mount /dev/rbd1 /store/
Ceph学习笔记四 块存储备份与恢复(6)
复制文件到块存储中
Ceph学习笔记四 块存储备份与恢复(6)
创建块存储快照
rbd snap create RDB_Store_pool/rbd-store-demo.img@store-test1
Ceph学习笔记四 块存储备份与恢复(6)
给快照添加保护
rbd snap protect RDB_Store_pool/rbd-store-demo.img@store-test1
Ceph学习笔记四 块存储备份与恢复(6)
将快照存储到其他池中
导入到其他池中建议将父子关系剔除,这样不会因为父镜像删除子镜像不能使用
将快照存入其他池内
rbd clone RDB_Store_pool/rbd-store-demo.img@store-test1 RDB_Backup_pool/RSP-SD-ST1.img
Ceph学习笔记四 块存储备份与恢复(6)
查看快照的父镜像
rbd info RDB_Backup_pool/RSP-SD-ST1.img
Ceph学习笔记四 块存储备份与恢复(6)
删除父镜像关系
删除父镜像关系这一步骤是针对将快照镜像存放到池中所设置的,避免由于沟通不及时或手欠误删而导致删除删除父镜像关系子镜像不可用的结果
rbd flatten RDB_Backup_pool/RSP-SD-ST1.img
Ceph学习笔记四 块存储备份与恢复(6)
或者将块存储镜像快照导出存到其他存储空间
rbd export RDB_Store_pool/rbd-store-demo.img@store-test1 /backup/store-test1-202092701.img
Ceph学习笔记四 块存储备份与恢复(6)
恢复1
模拟删除文件
Ceph学习笔记四 块存储备份与恢复(6)
导入镜像
rbd import store-test1-202092701.img RDB_Test_pool1/202092701-restore.img
Ceph学习笔记四 块存储备份与恢复(6)
挂载镜像
挂载映射镜像,恢复资料
rbd map RDB_Test_pool1/202092701-restore.img
Ceph学习笔记四 块存储备份与恢复(6)
恢复2
模拟删除文件
Ceph学习笔记四 块存储备份与恢复(6)
使用快照恢复
rbd snap rollback RDB_Store_pool/rbd-store-demo.img@store-test1
Ceph学习笔记四 块存储备份与恢复(6)

二增量备份与恢复
往块存储添加新内容
Ceph学习笔记四 块存储备份与恢复(6)
针对添加的新内容创建新快照
rbd snap create RDB_Store_pool/rbd-store-demo.img@store-test2
Ceph学习笔记四 块存储备份与恢复(6)
导出新的快照
可以看出来第二镜像和第一个镜像没太多差别,增量备份比较节省磁盘空间
rbd export-diff RDB_Store_pool/rbd-store-demo.img@store-test2 /backup/store-test1-202092902.img
Ceph学习笔记四 块存储备份与恢复(6)
导入新镜像
rbd import /backup/store-test2-202092702.img RDB_Test_pool1/202092702-restore.img
Ceph学习笔记四 块存储备份与恢复(6)
恢复
之前演示过恢复过程,接下来演示下其他恢复方式
模拟删除文件
Ceph学习笔记四 块存储备份与恢复(6)
恢复
导入第一个镜像,注意rbd-store-test.img镜像是随机建立的
rbd import /backup/store-test1-202092901.img RDB_Store_pool/rbd-store-test.img
导入第二镜像 第一个镜像的差异部分
rbd import-diff /backup/store-test1-202092902.img RDB_Store_pool/rbd-store-test.img
Ceph学习笔记四 块存储备份与恢复(6)
挂载镜像
Ceph学习笔记四 块存储备份与恢复(6)