ceph对象存储osd分配不均匀,osd full?

200TB的集群,导入100来个T的数据就有osd full(95%)是什么情况?看osd状况,最大92%,最少58%,大部分在60-70%左右。CRUSH算法下为什么会分布不均呢?

参与14

2同行回答

zhuqibszhuqibs软件开发工程师Adidas
crush算法不是万能的啊!(1)哈希计算分配数据地址,存在一定的随机性,随着系统的使用,各个存储节点的容量使用很不均衡,在一些不利配置的条件下,最大和最小容量之间最高相差50%,即使对数据进行复杂的重新分布均衡优化,也仅能达到90%左右的容量使用率。造成容量的浪费;(2)crush算法中,有两...显示全部

crush算法不是万能的啊!
(1)哈希计算分配数据地址,存在一定的随机性,随着系统的使用,各个存储节点的容量使用很不均衡,在一些不利配置的条件下,最大和最小容量之间最高相差50%,即使对数据进行复杂的重新分布均衡优化,也仅能达到90%左右的容量使用率。造成容量的浪费;
(2)crush算法中,有两次映射,对象到PG的映射是通过哈希值取模,对象名是不可控的,因此只有在数据量大的情况,可以达到一个大致的均衡分布。再就是第二次映射,ceph会生成一系列的pg数目,包含了一些osd列表,它是一种伪随机算法,pg的数目也会影响数据均衡的效果,也会产生一些不稳定因素

收起
互联网服务 · 2020-04-17
浏览2322
youki2008youki2008系统架构师DDT
CRUSH算法也是要分情况进行计算的显示全部

CRUSH算法也是要分情况进行计算的

收起
互联网服务 · 2020-04-27
浏览1562

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-04-17
  • 关注会员:3 人
  • 问题浏览:2942
  • 最近回答:2020-04-27
  • X社区推广