一、通过reweight-by-utilization命令进行批量调整
ceph osd reweight-by-utilization <var 值*100>
命令执行后的参数解释,这里只是输出参数,没有发生改变。
no change
moved 0 / 32032 (0%)
avg 1685.89
stddev 314.877 -> 314.877 (expected baseline 39.9645)
min osd.2 with 358 -> 358 pgs (0.21235 -> 0.21235 * mean)
max osd.7 with 1826 -> 1826 pgs (1.0831 -> 1.0831 * mean)
oload 108
max_change 0.05
max_change_osds 4
average_utilization 0.7960
overload_utilization 0.8597
### 参数解释
# no change:没有变化,表示当前的 OSD 权重没有变化。
# moved 0 / 32032 (0%):没有 OSD 被移动,表示没有数据重新分布到不同的 OSD 上。32032 表示总的 PG 数量,0% 表示没有数据移动。
# avg 1685.89:平均 PG 数量为 1685.89。PG(Placement Groups)是 Ceph 集群中数据分布的基本单位。
# stddev 314.877 -> 314.877 (expected baseline 39.9645):标准差保持不变,仍为 314.877,表示 PG 数量的分布没有变化。预期的基线标准差为 39.9645,这表明集群的负载分布相对较差,远超预期。
# min osd.2 with 358 -> 358 pgs (0.21235 -> 0.21235 * mean):最小的 OSD 是 osd.2,它持有 358 个 PG,PG 数量没有变化。它的负载为 0.21235,这是该 OSD 的实际利用率,相对于平均值没有变化。
# max osd.7 with 1826 -> 1826 pgs (1.0831 -> 1.0831 * mean):最大的 OSD 是 osd.7,它持有 1826 个 PG,PG 数量也没有变化。它的负载为 1.0831,相对于平均值没有变化。
# oload 108:集群的负载指数是 108,表示集群的整体负载情况。
# max_change 0.05:最大权重变化为 0.05,表示在此次测试中,任何 OSD 的权重最大变化幅度为 5%。
# max_change_osds 4:最多可以有 4 个 OSD 的权重发生变化。
# average_utilization 0.7960:集群的平均利用率为 0.7960,表示所有 OSD 的平均存储利用率为 79.6%。
# overload_utilization 0.8597:集群的过载利用率为 0.8597,表示超过 85.97% 利用率的 OSD 会被视为过载。
调整前查看集群状态和osd使用率
很明显,出现了nearfull的告警
[root@con01]# ceph -s
cluster:
id: 94db4957-bee3-4b33-9274-da2f59a20c16
health: HEALTH_WARN
noout,nodeep-scrub flag(s