ceph常用命令

1. 查看ceph集群配置信息

ceph daemon /var/run/ceph/ceph-mon.$(hostname -s).asok config show

或者是查看配置文件 /etc/ceph/conf

 

2. 在部署节点cent用户下切换到ceph目录下,修改ceph.conf文件,将新配置推送至全部的ceph节点

ceph-deploy  --overwrite-conf config push dlp node1 node2 node3

3. 检查仲裁状态,查看mon添加是否成功

ceph quorum_status --format json-pretty

4. 列式pool列表

ceph osd lspools

5. 列示pool详细信息

ceph osd dump |grep pool

6. 检查pool的副本数

ceph osd dump|grep -i size

7. 创建pool

ceph osd pool create pooltest 128

8. 删除pool

ceph osd pool delete data
ceph osd pool delete data data  --yes-i-really-really-mean-it

9. 设置pool副本数

ceph osd pool get data size
ceph osd pool set data size 3

10. 设置pool配额

ceph osd pool set-quota data max_objects 100        #最大100个对象

ceph osd pool set-quota data max_bytes $((10 * 1024 * 1024 * 1024))   #容量大小最大为10G

11. 重命名pool

ceph osd pool rename data date

12. PG

  Placement Groups。CRUSH先将数据分解成一组对象,然后根据对象名称、复制级别和系统中的PG数等信息执行散列操作,再将结果生成PG ID。可以将PG看做一个逻辑容器,这个容器包含多个对 象,同时这个逻辑对象映射之多个OSD上。如果没有PG,在成千上万个OSD上管理和跟踪数百万计的对象的复制和传播是相当困难的。没有PG这一层,管理海量的对象所消耗的计算资源也是不可想象的。建议每个OSD上配置50~100个PG。

  PGP是为了实现定位而设置的PG,它的值应该和PG的总数(即pg_num)保持一致。对于Ceph的一个pool而言,如果增加pg_num,还应该调整pgp_num为同样的值,这样集群才可以开始再平衡。

  参数pg_num定义了PG的数量,PG映射至OSD。当任意pool的PG数增加时,PG依然保持和源OSD的映射。直至目前,Ceph还未开始再平衡。此时,增加pgp_num的值,PG才开始从源OSD迁移至其他的OSD,正式开始再平衡。PGP,Placement Groups of Placement。

 

计算PG数:

 

ceph集群中的PG总数:

  PG总数 = (OSD总数 * 100) / 最大副本数,结果必须舍入到最接近的2的N次方幂的值;

 

ceph集群中每个pool中的PG总数:

  存储池PG总数 = (OSD总数 * 100 / 最大副本数) / 池数

 

获取现有的PG数和PGP数值

ceph osd pool get data pg_num
ceph osd pool get data pgp_num

13. 修改存储池的PG和PGP

ceph osd pool set data pg_num = 1
ceph osd pool set data pgp_num = 1

 

posted @ 2019-07-09 19:04  Ajunyu  阅读(3227)  评论(0编辑  收藏  举报