ceph經常使用命令

一、查看ceph集羣配置信息node

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

二、在部署節點修改了ceph.conf文件,將新配置推送至所有的ceph節點json

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

三、檢查仲裁狀態,查看mon添加是否成功spa

ceph quorum_status --format json-pretty

四、列式pool列表code

ceph osd lspools

五、列示pool詳細信息orm

ceph osd dump |grep pool

六、檢查pool的副本數對象

ceph osd dump|grep -i size

七、建立poolblog

ceph osd pool create pooltest 128

八、刪除pool資源

ceph osd pool delete data #這種刪除會提示你還要添加參數,要再寫一邊pool的名字和加上--yes-i-really-really-mean-it

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

九、設置pool副本數部署

ceph osd pool get data size

ceph osd pool set data size 3

十、設置pool配額get

ceph osd pool set-quota data max_objects 100                              #最大100個對象

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

十一、重命名pool

ceph osd pool rename data date

十二、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

1三、修改存儲池的PG和PGP

ceph osd pool set data pg_num = 1

ceph osd pool set data pgp_num = 1

爲何使用ceph –s會出現clock報錯呢?

  由於你不設置這個參數的話,它默認的時間偏移值是0.05秒,就是說每0.05秒確認時間是否一致,那確定作不到這麼大的精度,因此要調大一些,參數爲mon_clock_drift_allowed = 2,當我檢查出時間不一致之後,我達到30次再報警,mon_clock_drift_warn_backoff = 30。

相關文章
相關標籤/搜索