Ceph(luminous 版) pool 管理

网友投稿 1420 2022-10-13

Ceph(luminous 版) pool 管理

Ceph(luminous 版) pool 管理

一、Ceph(luminous 版) pool 管理

ceph下利用命令池管理

一)显示池

# rados lspoolsvolumes# ceph osd lspools1 volumes,# ceph osd pool lsvolumes# ceph osd pool ls detailpool 1 'volumes' replicated size 3 min_size 1 crush_rule 0 object_hash rjenkins pg_num 2048 pgp_num 2048 last_change 161 flags hashpspool stripe_width 0 application rbd removed_snaps [1~3]

二)池使用率

方法一:rados df方法二:ceph df

三)创建池

1、格式

ceph osd pool create {pool-name} {pg-num} [{pgp-num}]

2、命令行

ceph osd pool create volumes 2048 2048

3、pg-num与gpg-num

1、pg-num与gpg-num知识

当前以 36 osd 只创建一个池 3 副本的容量进行计算 假如预计以后需要进行两倍扩容, 那么建议 pg-num 与 pgp-num 设定为 4096 pg-num 与 pgp-num 只可以扩大不可以缩小 pg-num 与 pgp-num 常见数量一样 建议在创建池时候就定义好合理的 pg-num 与 pgp-num 在改变(增加) pg-num 与 pgp-num 时候, 会自动产生 rebalance 操作, 会严重影响 ceph cluster io 性能

2、查询pg和pgp的数量

查询pg的数量ceph osd pool get volumes pg_num查询pgp的数量ceph osd pool get volumes pgp_num

3、修改pg和pgp的数量

常见pg-num与pgq-num都为2的平方数倍数

查询pg的数量ceph osd pool set volumes pg_num查询pgp的数量ceph osd pool set volumes pgp_num

6、pool size

pool size用于指定当前存放池中的文件实际保存的文件副本数量,常见为3

1、查询pool size

ceph osd pool get volumes size

2、修改pool size

ceph osd pool set volumes size 3

7、pool rule

rule修改,格式参考crush map说明

查询pool rule

方法一:ceph osd dump|egrep "^pool|crush"方法二:ceph osd pool get volumes crush_rule

8、定义池的使用类型

luminous 版本新特性 :在不定义使用类型时,会获得错误信息如下

# ceph -s cluster: id: c45b752d-5d4d-4d3a-a3b2-04e73eff4ccd health: HEALTH_WARN application not enabled on 1 pool(s) <- 参考这里 too many PGs per OSD (341 > max 300) services: mon: 3 daemons, quorum cephsvr-128040,cephsvr-128214,cephsvr-128215 mgr: openstack(active) osd: 36 osds: 36 up, 36 in data: pools: 2 pools, 4096 pgs objects: 10343 objects, 33214 MB usage: 101 GB used, 196 TB / 196 TB avail pgs: 4096

1、设定池类型

ceph osd pool application enable volumes rbd

当前常见池使用类型有三种

CephFS uses the application name cephfsRBD uses the application name rbdRGW uses the application name rgw

2、修改方法

ceph osd dump | grep "^pool" | grep "crush"ceph osd pool application enable data rbdceph osd dump | grep "^pool" | grep "crush"

9、初始化rbd池

这个是luminous版本新特性

rbd pool init volumes

10、rbd文件导入

-p参数已经弃用,需要使用--dest-pool参数

rbd -p volumes import 7.tar 8.tarrbd --dest-pool volumes import 7.tar 9.tar

11、rbd文件导出

rbd -p volumes export 8.tar 8.tar

四)删除pool

1、删除pool报错

1、报错信息

$ sudo ceph osd pool rm test1 test1 --yes-i-really-really-mean-itError EPERM: pool deletion is disabled; you must first set the mon_allow_pool_delete config option to true before you can destroy a pool

luminous 版本的新特性,需要配置 mon_allow_pool_delete 配置后才允许对 pool 进行删除

2、解决报错

获取ceph mon socket

$ ceph-conf --name mon.$(hostname -s) --show-config-value admin_socket/var/run/ceph/ceph-mon.controller01.asok

查询配置

$ sudo ceph daemon /var/run/ceph/ceph-mon.$(hostname -s).asok config show | grep mon_allow_pool_delete "mon_allow_pool_delete": "false",

修改配置

#修改配置$ sudo ceph tell mon.$(hostname -s) injectargs '--mon_allow_pool_delete=true'injectargs:mon_allow_pool_delete = 'true' (not observed, change may require restart) #systemctl restart ceph-mon.target#修改后验证$ sudo ceph daemon /var/run/ceph/ceph-mon.$(hostname).asok config show | grep mon_allow_pool_delete "mon_allow_pool_delete": "true",

3、删除指定的pool

sudo ceph osd pool rm

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:搭建高可用OpenStack(Queen版)集群(二)之部署控制节点高可用的管理支持服务
下一篇:MyQEE- PHP框架(MYQeen)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~