查看某个 pool 下的 img
rbd -p ceph-demo ls
创建 img
rbd create ceph-demo/ceph-trash.img --size 1G
删除 img
rbd rm ceph-demo/ceph-trash.img
把 img 移到回收站
rbd create ceph-demo/ceph-trash.img --size 1G
rbd trash move ceph-demo/ceph-trash.img --expires-at 20210612
rbd trash -p ceph-demo ls
把 img 从回收站中恢复
[root@node-1 ~]# rbd trash -p ceph-demo ls
3e199935e4ead ceph-trash.img
rbd trash restore -p ceph-demo 3e199935e4ead
rbd -p ceph-demo ls
查看 img 实际使用了多少容量
# ceph osd lspools
# rbd -p rbd ls
rbd diff rbd/harbor-registry |awk '{ SUM += $2 } END { print SUM/1024/1024/1024 " GB" }'
创建快照
# 创建 img
rbd create ceph-demo/rbd-test.img --image-feature layering --size 1G
rbd info ceph-demo/rbd-test.img
# 挂载 img
rbd device map ceph-demo/rbd-test.img
# 格式化 img
mkfs.ext4 /dev/rbd0
mount /dev/rbd0 /media/
# 写入测试数据
cd /media/
echo "aaa" > 1.txt
# 创建快照
rbd snap create ceph-demo/rbd-test.img@snap_20210612
# 查看 img 下有多少快照
rbd snap ls ceph-demo/rbd-test.img
测试回滚快照
cd /media/
rm -f 1.txt
cd
# 回滚
rbd snap rollback ceph-demo/rbd-test.img@snap_20210612
# 重新挂载
umount /media/
mount /dev/rbd0 /media/
cat /media/1.txt
取消挂载
rbd device unmap ceph-demo/rbd-test.img
删除快照
rbd snap remove ceph-demo/rbd-test.img@snap_20210612
克隆快照,保护快照
rbd snap create ceph-demo/rbd-test.img@template
rbd snap ls ceph-demo/rbd-test.img
rbd snap protect ceph-demo/rbd-test.img@template
rbd clone ceph-demo/rbd-test.img@template ceph-demo/vm1-clone.img
rbd -p ceph-demo ls
rbd -p ceph-demo info vm1-clone.img
挂载快照和查看快照模板下有多少个克隆
rbd device map ceph-demo/vm1-clone.img
mkdir /mnt/vm1-clone
mount /dev/rbd0 /mnt/vm1-clone/
ll /mnt/vm1-clone/
rbd children ceph-demo/rbd-test.img@template
让克隆的快照成为独立的img
rbd flatten ceph-demo/vm1-clone.img
rbd info ceph-demo/vm1-clone.img
取消快照保护
rbd snap unprotect ceph-demo/rbd-test.img@template
查看挂载的设备
rbd device ls
导出和导入快照
rbd snap create ceph-demo/rbd-test.img@snap-demo
rbd export ceph-demo/rbd-test.img@snap-demo /root/rbd-test.img
# 导入快照,新名为 rbd-test-new.img
rbd import /root/rbd-test.img ceph-demo/rbd-test-new.img
初始化这个pool 为 RBD (不加时默认为rbd)
rbd pool init ceph-demo