前言
部署集群的时候权重是默认生成的,这个是根据磁盘大小分配的,我们有的时候需要去修改一下这个默认权重
修改
如果统一的初始值,那么直接添加参数即可
osd_crush_initial_weight
如果想自己添加算法,那么就根据下面的去做就可以了
centos+jewel
修改:
/usr/lib/ceph/ceph-osd-prestart.sh
defaultweight=`df -P -k $data/ | tail -1 | awk '{ d= $2/107374182 ; r = sprintf("%.4f", d); print r }'`
修改这个地方的值就可以了
defaultweight=`echo 2`
centos+hammer
修改 /etc/init.d/ceph
defaultweight="$(df -P -k $osd_data/. | tail -1 | awk '{ print sprintf("%.2f",$2/1073741824) }')"
修改成
defaultweight="$(echo 5)"
ubuntu+hammer
由于ubuntu用initctl控制服务,不是用的/etc/init.d/ceph/,所以要修改另外的一个路径
修改/usr/libexec/ceph/ceph-osd-prestart.sh
defaultweight=`df -P -k /var/lib/ceph/osd/${cluster:-ceph}-$id/ | tail -1 | awk '{ d= $2/1073741824 ; r = sprintf("%.2f", d); print r }'`
修改为:
defaultweight=`echo 8`
总结
这个比较简单,通过修改取值就可以改变默认配置了,上面的可以根据自己的需求加入算法即可
变更记录
Why | Who | When |
---|---|---|
创建 | 武汉-运维-磨渣 | 2016-11-02 |