天天看点

【ceph | 运维】pool相关命令

 pool相关命令

 1. 创建pool命令:

$ ceph osd pool create {pool-name}  {pg-num} [{pgp-num}] [replicated] [crush-ruleset-name] [expected-num-objects]
$ ceph osd pool create {pool-name} {pg-num} erasure [erasure-code-profile] [crush-rulset-name] [expected-num-objects]      

各个参数的意义如下:

    • {pool-name}
      • desc: Pool 的名字, 不能重复.
      • type: string.
      • required: yes.
    • {pg-num}
      • desc: Pool 的 Placement groups 数, 默认为 8, 基本不能满足需要, 一般要重写
      • type: integer
      • required: yes
      • default: 8.
    • {pgp_num}
      • desc: 为配置目的而设的 pg 总数. 一般等于 pg 数.
      • type: integer.
      • required: yes. 如果没有指定, 则为默认值.
    • {replicated|erasure}
      • desc: 标明 Pool 的类型是多副本 (replicated) 的以能够从损坏的 OSDs 中恢复数据, 还是 消除(erasure) 的以获得 广义的 RAID5 兼容性.
      • require: no.
      • default: replicated.
    • [crush-ruleset-name]
      • desc: crush ruleset 的名字. 指定的 ruleset 必须存在.
      • type: string
      • required: no
      • default: 对于 replicated pools, 其值是由

        osd pool default crush replicated ruleset

        设定. 对于 erasure pools, 如果
    • [erasure-code-profile=profile]
      • desc:
      • required: no.
    • [expected-num-objects]
      • desc: xxx
      • -required: no.
      • default: 0, no splitting at the pool creation time.

列举crush rule:

ceph osd crush rule ls      

更改pool的crush rule:

ceph osd pool set buckets.non-ec crush_rule sata_root01      

获取pool的crush rule:

ceph osd pool get default.rgw.buckets.non-ec crush_rule sata_rule1      

更改pool副本数:

ceph osd pool set default.rgw.buckets.data size 2      

 获取pool副本数:

ceph osd pool get default.rgw.buckets.data size       

创建 pool:

ceph osd pool create <pool-name> <pg-num> [<pgp-num>] [replicated] [crush-ruleset-name] [expected-num-objects]      

配置 pool 配额:

ceph osd pool set-quota <pool-name> [max_objects <obj-count>] [max_bytes <bytes>]      

删除 pool:

ceph osd pool delete <pool-name> [<pool-name>] --yes-i-really-really-mean-it      

重命名 pool:

ceph osd pool rename <current-pool-name> <new-pool-name>      

展示 pool 统计:

rados df      

给 pool 做快照:

$ ceph osd pool rmsnap <pool-name> <snap-name>

配置 pool 的相关参数:

$ ceph osd pool 

set

<pool-name> <key> <value>

获取 pool 参数的值:

$ ceph osd pool get <pool-name> <key>      

配置对象副本数目:

ceph osd pool set <poolname> size <num-repicas>      

获取对对象副本数目:

$ ceph osd dump | 

grep

'replicated size'

参考资料

1. Ceph 中的 Pools 和 PGs