1、簡介
ceph 集羣搭建成功後,很多時候 pg 分佈是 不均勻的,此時 就需要 我們 通過 手動調整 weight值,從而 達到 pg相對均衡(本文 針對 有ceph 基礎的人,所以 命令 不會 進行解釋)
# 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
2、weight 值調整
weight 代表 osd的權重,1 = 1TB;可以 通過 調整 weight 值 來調整 pg分佈;需要注意的是 與容量 之間的 等價關係 只是 認爲 量化 出來的,用於 crush 計算的一個 衡量標準
2.1 調整命令
# ceph osd crush reweight {name} {float[0.0-1]}
2.1 預估 pg分佈
#### osdmaptool 實現 預估 pg分佈
# osdmaptool /tmp/osdmap --test-map-pgs --import-crush {crushmap}
3、reweight 值調整
reweight 代表 在 weight 的基礎上 進行 百分比配比
3.1 調整命令
# ceph osd reweight-by-utilization {avr_num} {float} {osd_num} [--no-increasing]
# ceph osd reweight-by-pg {avr_num} {float} {osd_num} [[pool1] ... [poolN]]
3.2 預估 變化
# 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]]