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