Ceph CRUSH算法

Ceph CRUSH算法旨在解决数据分布和负载均衡问题,确保大规模集群中的数据均匀分布和低开销。它是一个伪随机过程,创建了一个层次化的Cluster Map,通过Placement Rules自定义副本分布,并使用不同类型的Bucket策略实现高效的数据映射。该算法考虑了机架感知和故障隔离,适应集群的伸缩性需求。
摘要由CSDN通过智能技术生成

1. 数据分布算法挑战

  • 数据分布和负载均衡:
    a. 数据分布均衡,使数据能均匀的分布到各个节点上。
    b. 负载均衡,使数据访问读写操作的负载在各个节点和磁盘的负载均衡。
  • 灵活应对集群伸缩
    a. 系统可以方便的增加或者删除节点设备,并且对节点失效进行处理。
    b. 增加或者删除节点设备后,能自动实现数据的均衡,并且尽可能少的迁移数据。
  • 支持大规模集群
    a. 要求数据分布算法维护的元数据相对较小,并且计算量不能太大。随着集群规模的增 加,数据分布算法开销相对比较小。

2. Ceph CRUSH算法说明

  • CRUSH算法的全称为:Controlled Scalable Decentralized Placement of Replicated Data,可控的、可扩展的、分布式的副本数据放置算法。
  • pg到OSD的映射的过程算法叫做CRUSH 算法。(一个Object需要保存三个副本,也就是需要保存在三个osd上)。
  • CRUSH算法是一个伪随机的过程,他可以从所有的OSD中,随机性选择一个OSD集合,但是同一个PG每次随机选择的结果是不变的,也就是映射的OSD集合是固定的。

3. Ceph CRUSH算法原理

CRUSH算法因子:

  • 层次化的Cluster Map
    反映了存储系统层级的物理拓扑结构。定义了OSD集群具有层级关系的 静态拓扑结构。OSD层级使得 CRUSH算法在选择OSD时实现了机架感知能力,也就是通过规则定义, 使得副本可以分布在不同的机 架、不同的机房中、提供数据的安全性 。
  • Placem
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值