现象:ceph写满,ceph-s 中nearfull osd
办法:调整osd weight权重,进行数据均衡
步骤:1,执行ceph osd df可以看到当前的pg在osd上分布情况以及使用率情况
2,防止数据均衡过程中,其他osd 数据out,及deep-scrub操作出现大量block IO。设置集群noout以及nodeep-scrub标签:
ceph osd set noout
ceph osd set nodeep-scrub
3,集群节点,执行ceph osd reweight-by-utilization <var 值*100>。把var值1.18以上的osd进行均衡调整。
ceph osd reweight-by-utilization 118
注释:
手动调整
1、找到空间利用率较高的OSD,然后逐个进行调整
ceph osd reweight {osd_numeric_id} {reweight}
上述命令中各个参数含义如下:
osd_numeric_id:OSD对应的数字ID
reweight:待设置的OSD的reweight。reweight取值越小,将使更多的数据从对应的OSD迁出。
批量调整
目前有两种模式进行批量调整:
1、按照OSD当前空间利用率(reweight-by-utilization);
2、按照PG在OSD之间的分布(reweight-by-pg);
4,等待数据平衡,时间长短取决于数据量多少以及数据均衡程度
5,执行完成ceph osd df | sort -rnk 7查看osd使用率,确保osd都在85以下,没有达到预期,重复执行2-3
6,取消noout和nodeep-scrub标签,执行ceph –s确认执行成功;
ceph osd unset noout文章来源:https://www.toymoban.com/news/detail-802649.html
ceph osd unset nodeep-scrub文章来源地址https://www.toymoban.com/news/detail-802649.html
到了这里,关于ceph写满,nearfull osd解决思路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!