ceph之rados设计原理与实现:crush算法

执行命令

shell 复制代码
ceph osd crush dump

可以查看当前集群crush信息

其中会输出可调crush参数"tunables"、规定的若干规则"rules"、以及crush map。

这些规则"rules"可以与存储池绑定,针对特定存储池执行自制的crush算法映射。

"crushmap"包含了数据中心、机架、主机、osd等整个拓扑结构,除了osd都是虚拟的,并且记录了每个osd的weight和reweight,weight和reweight直接影响了随机哈希算法结果,但是由于crush是随机的,所以调整weight、reweight并不能精确控制pg在osd上的分布。

"tunables"大多数参数都不建议调整,如果选不出足够的样本数,那么应该调大全局重试次数,但显然这会增加哈希计算时间。

以上针对crush可以的参数调整,都会导致pg在osd迁移已达到数据分布均衡,但是为了在线平衡不影响业务的性能,每次调整都应该先模拟测试效果,并且做到多次微调。

调整crush只有两个目标,一个是增加crush计算效率,另一个就是数据负载均衡。针对数据重平衡,ceph有reweight、weight-set、umap、balancer。balancer依赖前三种工具,计算osd空间利用率的方差构建评分系统,既可以针对整个集群也可以针对存储池独占的osd,实现自动的评估系统评分,然后决定什么时候调整以及调整多少合适,从而代替了人工实现了自动化。因为针对上述参数的调整都是需要人工干预,都是多次微调实际非常麻烦,并且实际生产环境ceph扩容或者故障导致的pg自动迁移非常频繁,每次pg迁移后之前的调整都付之东流,因此自动化调整应运而生。

相关推荐
RobinDevNotes8 小时前
Palmier Pro:AI时代的Mac视频编辑器
人工智能·ceph·macos·ai·音视频·视频编辑·mcp
bgy666610 天前
Ceph 分布式存储完整实战指南:架构、部署与全场景运维
分布式·ceph·架构
SLD_Allen10 天前
Ceph配置RDMA和GPUDirect支持的具体技术方案
ceph·rdma·gpudirect
2401_8346369911 天前
Ceph 分布式存储从入门到精通:架构解析 + cephadm 部署 + 存储池管理
ceph
吾皇斯巴达15 天前
ceph index-less桶可以用radosgw-admin bucket rm吗
ceph
运维全栈笔记1 个月前
腾讯云 CVM 搭建 Ceph 集群部署笔记
笔记·ceph·腾讯云
刘某的Cloud1 个月前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
heimeiyingwang1 个月前
【架构实战】Kubernetes存储实战:从EmptyDir到Ceph CSI的持久化存储选型指南
ceph·架构·kubernetes
DLYSB_1 个月前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
AAA@峥1 个月前
Ceph 分布式文件系统 CephFS 实战指南
运维·分布式·ceph