Ceph基本操作—存储池、块设备

1. 存储池

创建存储池:8 个 PG

$ ceph osd pool create data-pool 8 8
pool 'data-pool' created

列出存储池:

$ ceph osd pool ls
data-pool

查看存储池的统计信息:

$ rados df
POOL_NAME USED OBJECTS CLONES COPIES MISSING_ON_PRIMARY UNFOUND DEGRADED RD_OPS  RD WR_OPS  WR USED COMPR UNDER COMPR 
data-pool  0 B       0      0      0                  0       0        0      0 0 B      0 0 B        0 B         0 B 

total_objects    0
total_used       3.0 GiB
total_avail      57 GiB
total_space      60 GiB

删除存储池:
需要首先修改 ceph.conf 配置文件,

...
[mon]
mon allow pool delete = true
sudo ceph-deploy --overwrite-conf config push <nodes>
sudo systemctl restart ceph-mon.target
$ ceph osd pool rm data-pool data-pool --yes-i-really-really-mean-it

2. 块设备

映像

创建映像:16MB、位于存储池 data-pool 中,映像名为 foo

$ rbd create --size 16 data-pool/foo

列出映像:

$ rbd ls data-pool
foo

查看映像信息:

$ rbd info data-pool/foo
rbd image 'foo':
	size 16 MiB in 4 objects
	order 22 (4 MiB objects)
	snapshot_count: 0
	id: 3737822b8571
	block_name_prefix: rbd_data.3737822b8571
	format: 2
	features: layering, exclusive-lock, object-map, fast-diff, deep-flatten
	op_features: 
	flags: 
	create_timestamp: Sat Nov 27 06:38:16 2021
	access_timestamp: Sat Nov 27 06:38:16 2021
	modify_timestamp: Sat Nov 27 06:38:16 2021

调整映像大小:

$ rbd resize --size 32 data-pool/foo
Resizing image: 100% complete...done.

$ rbd resize --size 8 data-pool/foo --allow-shrink
Resizing image: 100% complete...done.

删除映像:

$ rbd rm data-pool/foo
Removing image: 100% complete...done.

映射

映射块设备:

$ sudo rbd map data-pool/foo --id admin
/dev/rbd0

查看设备映射:

$ rbd showmapped
id pool      namespace image snap device    
0  data-pool           foo   -    /dev/rbd0

使用块设备:

$ mkdir mnt
$ sudo mkfs.ext4 -q /dev/rbd0
$ sudo mount /dev/rbd0 mnt

解除映射:需要先执行 umount

$ sudo rbd unmap /dev/rbd/data-pool/foo

快照

创建快照:创建名为 snap1 的快照

$ rbd snap create data-pool/foo@snap1

列出快照:

$ rbd snap ls data-pool/foo
SNAPID NAME  SIZE  PROTECTED TIMESTAMP                
     4 snap1 4 MiB           Sat Nov 27 21:31:49 2021

回滚:

$ rbd snap rollback data-pool/foo@snap1
Rolling back to snapshot: 100% complete...done.

删除指定的快照:

$ rbd snap rm data-pool/foo@snap1
Removing snap: 100% complete...done.

清除所有的快照:

$ rbd snap purge data-pool/foo

克隆

先保护快照:使之无法被删除

$ rbd snap protect data-pool/foo@snap1

克隆快照:克隆为 data-pool/bar

$ rbd clone data-pool/foo@snap1 data-pool/bar

查看快照的子孙:

$ rbd children data-pool/foo@snap1
data-pool/bar

flatten 快照的子孙:克隆出来的映像仍保留了对父快照的引用。要从快照的子孙中删除这些父快照的引用,可以把快照的信息复制给快照的子孙,也就是 flatten。要删除快照,必须先进行 flatten。

$ rbd flatten data-pool/bar
Image flatten: 100% complete...done.

取消保护:

$ rbd snap unprotect data-pool/foo@snap1
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值