ceph的rbd的快照管理-数据备份与恢复的基石(6)

前言

Ceph RBD 快照:数据备份与恢复的基石

在云原生和虚拟化场景中,数据安全永远是绕不开的话题。Ceph 块设备(RBD)提供的快照功能,正是为数据备份与恢复而生的一种轻量级机制。本文基于 Ceph 官方文档,梳理 RBD 快照的核心概念与常用操作,帮助你在实际运维中用好这一能力。

官网

Snapshots --- Ceph Documentation

快照的增删改查-日常操作

增

1.创建快照

【方式一】

复制代码
[root@ceph141 ~]# rbd snap create -p pool1 --image rbd1 --snap snap2

【方式二】

复制代码
[root@ceph141 ~]# rbd snap create pool1/rbd1@snap3

2.保护快照

复制代码
[root@ceph141 ~]# rbd snap protect pool1/rbd1@snap5

查

1.查看快照

【方式一】

复制代码
[root@ceph141 ~]# rbd snap ls -p pool1 --image rbd1
SNAPID  NAME   SIZE   PROTECTED  TIMESTAMP               
     3  snap1  2 GiB             Mon Oct 19 11:27:07 2026
     4  snap2  2 GiB             Mon Oct 19 11:33:58 2026
     5  snap3  2 GiB             Mon Oct 19 11:34:47 2026

【方式二】

复制代码
[root@ceph141 ~]# rbd snap ls pool1/rbd1
SNAPID  NAME   SIZE   PROTECTED  TIMESTAMP               
     3  snap1  2 GiB             Mon Oct 19 11:27:07 2026
     4  snap2  2 GiB             Mon Oct 19 11:33:58 2026
     5  snap3  2 GiB             Mon Oct 19 11:34:47 2026

2.查看快照的详细信息(是否被保护)

复制代码
[root@ceph141 ~]# rbd info pool1/rbd1@snap1

改

1.回滚快照

【方式一】

复制代码
[root@ceph141 ~]# rbd snap rollback -p pool1 --image rbd1 --snap snap5

【方式二】

复制代码
[root@ceph141 ~]# rbd snap rollback pool1/rbd1@nap5

删

1.删除快照

复制代码
[root@ceph141 ~]# rbd snap rm pool1/rbd1@snap2
Removing snap: 100% complete...done.

2.无法删除被保护的快照

未被保护的快照可以删除

3.删除某个rbd的所有快照

复制代码
[root@ceph141 ~]# rbd snap purge 存储池/rbd镜像	
# 删除所有的快照

案例:给rbd创建快照,通过快照还原rbd数据

环境说明

1.测试环境已经安装了ceph集群

不会安装ceph,可以参考之前博客。

使用cephadm部署ceph集群(ceph进阶之路-1.cephadm部署ceph集群)-CSDN博客

2.客户端已经挂在了ceph的rbd镜像。

推荐阅读:

ceph的rbd管理(3)-CSDN博客

测试

一.客户端环境如下

准备测试数据

二、ceph端给rbd创建快照

复制代码
[root@ceph141 ~]# rbd snap create pool1/rbd1 --snap snap5
Creating snap: 100% complete...done.
[root@ceph141 ~]# 

三、客户端模拟删除数据

复制代码
[root@jenkins211 ~]# rm -rf /mnt/hosts

四、如何还原数据呢(重点)

1.客户端准备恢复数据前要删除块设备映射

复制代码
[root@jenkins211 ~]# umount /mnt

[root@jenkins211 ~]# rbd-nbd unmap /dev/nbd0
[root@jenkins211 ~]# 

2.服务端开始回滚数据

复制代码
[root@ceph141 ~]# rbd snap rollback pool1/rbd1@snap5

3.客户端重新映射挂载

复制代码
[root@jenkins211 ~]# rbd-nbd map pool1/rbd1
[root@jenkins211 ~]# mount /dev/nbd0 /mnt

RBD的块设备的快照数量限制

1.设置快照数量限制

复制代码
[root@ceph141 ~]#  rbd snap limit set pool1/rbd1  --limit 5       #最多5个快照                

2.查看快照数量限制

复制代码
[root@ceph141 ~]# rbd info pool1/rbd1 |egrep "snapshot_count|snapshot_limit"
        snapshot_count: 0
        snapshot_limit: 5
[root@ceph141 ~]#

当这个rbd快照数量超过5个后,就不能做快照了。

3.清除快照数量限制

复制代码
[root@ceph141 ~]# rbd snap limit clear pool1/rbd1
[root@ceph141 ~]# rbd info pool1/rbd1 |egrep "snapshot_count|snapshot_limit"
        snapshot_count: 0
[root@ceph141 ~]# 

本文作者:JasonChen陈杰,转载请标注原文链接,后续会持续更新。

相关推荐
xianyuCcCcCCCcc22 天前
Ceph 分布式存储:集群配置与存储池管理
运维·分布式·ceph
人生匆匆1 个月前
docker部署ceph集群
ceph·docker·容器
xianyuCcCcCCCcc1 个月前
Ceph 分布式存储:核心架构与集群部署
分布式·ceph·架构
梅菲塔亚1 个月前
Ceph分布式存储
分布式·ceph
Terry_Tsang1 个月前
CephFS 故障分析
ceph
逐流人1 个月前
Ceph对象存储与文件系统存储管理:从RADOS网关、S3与Swift到CephFS快照同步
linux·运维·ceph·云原生·云计算·swift·rados
逐流人1 个月前
Ceph分布式存储集群配置与池管理:从配置优先级到PG、复本池与纠删码池
运维·分布式·ceph·云原生·云计算·rados
月落汀兰1 个月前
建池后类型不可修改!深度拆解 Ceph PG 放置组,副本 / 纠删码池选型,快照与命名空间避坑
运维·ceph
.冰块.1 个月前
Ceph 分布式存储实战(二):存储池管理与 cephx 认证授权
分布式·ceph·rados·纠删码·复本池·cephx认证与用户权限