目录
1. 问题背景
集群 pg 数量规划不合理,导致在集群存入大量的数据之后,osd 上的数据分布不均衡,部分 osd 的存储百分比接近或超过 85% 告警阈值,在百分比达到 95% 之后,集群会停止 IO。
由于调整 pg 风险高,需要提前做评估和审核,所以需要使用临时解决方案调整 osd 权重的方式,降低存储数量过高的 osd 权重,降低其 osd 中的存储数据量,避免 osd 使用率达到 95% 阈值。
2. 操作影响
调整 osd 权重之后,集群发生少量的数据均衡,业务无感知
3. 适用版本
TStack-通用
4. 操作范围
任意可操作 ceph 集群的存储节点
5. 操作周期
1 - 2 小时
6. 操作步骤
6.1 查看当前 osd 数据状态
# 列出最大的10个
ceph osd df | sort -rnk 7
# WEIGHT 列为当前集群 osd 使用率百分比
# %USE 列为当前集群 osd 权重
# VAR 列为为当前集群 osd 磁盘使用率/集群平均使用率,值接近 1 为最佳
6.2 计算需要调整的 osd 权重
计算方法: WEIGHT / VAR = [new_weight](保留五位小数)
例如:某 osd 权重为 1.20000,VAR 为 1.2,调整后权重则为 1.20000 / 1.2 = 1.00000
注意:请勿将 WEIGHT 列与 REWEIGHT 列混淆,REWEIGHT 列在正常情况下,值永远为 1.00000
权重值视环境而定(不确定请与产品同学沟通),一般情况只需对峰值进行处理
6.3 调整权重
# [id] 为 osd id
# [new_weight] 为 osd 新权重
# 调整前请将调整的 pg 及 pg 原权重记录,等到 pg 扩容完成之后,调整回原有权重
# 如果在操作过程中发生异常,请使用回退方案
ceph osd crush reweight osd.[id] [new_weight]
注意:每次只可操作一个 osd ,等到所有 PG 都为 active+[其它状态] 可执行下一个 REWEIGHT 操作
7. 回退步骤
# [id] 为 osd id
# [old_weight] 为 osd 原始权重
ceph osd crush reweight osd.[id] [old_weight]
标签:weight,权重,id,Ceph,集群,应急,osd,调整
From: https://www.cnblogs.com/xuning-xuning/p/17350227.html