ceph 集羣搭建成功後,不少時候 pg 分佈是 不均勻的,此時 就須要 咱們 經過 手動調整 weight值,從而 達到 pg相對均衡(本文 針對 有ceph 基礎的人,因此 命令 不會 進行解釋)
ide
# ceph osd tree ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF -1 0.20181 root default -7 0.05499 host mon0 0 hdd 0.01799 osd.0 up 1.00000 1.00000 1 hdd 0.01799 osd.1 up 1.00000 1.00000
weight 表明 osd的權重,1 = 1TB;能夠 經過 調整 weight 值 來調整 pg分佈;須要注意的是 與容量 之間的 等價關係 只是 認爲 量化 出來的,用於 crush 計算的一個 衡量標準
code
# ceph osd crush reweight {name} {float[0.0-1]}
#### osdmaptool 實現 預估 pg分佈 # osdmaptool /tmp/osdmap --test-map-pgs --import-crush {crushmap}
reweight 表明 在 weight 的基礎上 進行 百分比配比it
# ceph osd reweight-by-utilization {avr_num} {float} {osd_num} [--no-increasing] # ceph osd reweight-by-pg {avr_num} {float} {osd_num} [[pool1] ... [poolN]]
# ceph osd test-reweight-by-utilization {avr_num} {float} {osd_num} [--no-increasing] # ceph osd test-reweight-by-pg {avr_num} {float} {osd_num} [[pool1] ... [poolN]]