Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx

上传人:b****1 文档编号:14317240 上传时间:2022-10-22 格式:PPTX 页数:14 大小:113.88KB
下载 相关 举报
Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx_第1页
第1页 / 共14页
Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx_第2页
第2页 / 共14页
Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx_第3页
第3页 / 共14页
Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx_第4页
第4页 / 共14页
Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx

《Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx》由会员分享,可在线阅读,更多相关《Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx(14页珍藏版)》请在冰豆网上搜索。

Openstack统一存储Ceph之Crush算法介绍京东云计算总监何雨PPT资料.pptx

在新添加osd时指定,如:

cephosdcrushset22.5pool=mypoolroot=defaultdatacenter=nanjingroom=jd310row=1rack=2host=ebs-158,8.1,2.0,0.8,2.0,2.1,2.0,1.3,1.0,1.0,Crush算法:

决定objectdata与osd(一个硬盘对应一个osd)的映射关系。

每次读取或写入object,都由crush算法决定object的存储位置cephclient端无须通过中央节点而直接与osd交互。

CRUSH实现了一种伪随机(确定性)的函数,它的参数是objectid或objectgroupid,并返回一组存储设备(用于保存object副本)。

CRUSH需要clustermap(描述存储集群的层级结构)、和副本分布策略(rule)。

Crush对物理设备的拓扑结构编码,好处:

抵御设备失效导致的数据不可获取:

设备失效无处不在,比如电源问题,网络问题,硬盘问题等。

做法:

将数据存储在物理上分割的硬盘中,比如存储在不同的datacenter,room,row,rack,host中与中心节点分布式比较优势:

避免单点故障消除性能瓶颈可轻松扩展物理机,Crushmap包含四部分:

1.Devices:

具体的硬盘2.BucketTypes:

声明cluster中的bucket3.BucketInstances:

bucket的定义说明,包括bucketid,所使用的算法,所使用的hash算法,包含的items。

4.Rules:

选择device的rule,bucket-typebucket-nameidauniquenegativenumericIDweighttherelativecapacity/capabilityoftheitem(s)algthebuckettype:

uniform|list|tree|strawhashthehashtype:

0bydefaultitemitem-nameweightweightId为负数,以便与device区分,因为bucket中的item可以是bucket,也可以是device。

20hostnode-ebs21id-2#donotchangeunnecessarily22#weight2.00023algstraw24hash0#rjenkins125itemosd.0weight1.00026itemosd.1weight1.00027,可以定制bucket-type,定制化方法:

coposdgetcrushmap-o/home/lwb/crushmapcrushtool-d/home/lwb/crushmap-o/home/lwb/crushmap.obj在crushmap.obj文件中在#types下插入一行(注意要添加的插入到对应的位置,比如要在root和row中插入一行,则输入type4namemmm,后面的数字要递增)crushtool-ccrushmap.objo/tmp/ttttttcephosdsetcrushmapi/tmp/tttttt,设置叶节点Weight:

以容量为指标,设置weight值:

推荐以1TB为基数,设置weight值为1.0。

这样500G的则为0.5,3TB则为3.0.以性能为指标,设置weight值:

比如性能好些的盘,weight设置为1.2,性能差些的weight设置为0.8,bucket节点Weight:

为下级itemsweight之和,Rule:

ruleruleset/ruleidtypereplicated|raid4min_size/备份最小数max_size/备份最大数steptake/从bucket-type开始挑选stepchoose|chooseleaffirstn|indep/挑选规则stepemit其中:

(1)当pool设定的备份数不在min_size,max_size中,则该rule不起作用

(2)steptake到stepemit为selectaction。

计算得分最高的item:

Hash值与一个权重有关的函数值f(w(i)的乘积函数f(w(i);

(事先需要将items按权重从小到大排序)如果所有的item权重都一样。

则该函数f(w(i)=1.0*0x10000否则,f(w(0)=1.0*0x10000其他f(w(i)计算规则如下:

假设item个数为N,wbelow_i=(item_weighti-item_weighti-1)*(N-i+1)wnext_i=(N-i)*(items_weighti-items_weighti-1),如果第i后面有k个item的权重与i相同,则这个N-i变为N-i-k,那么第i到第k个item的结果值都与第i个计算出来的相同。

pbelow_i=wbelow_i/(wbelow_i+wnext_i)straw_i=straw_i-1*pow(1/pbelow_i,1/(N-i)如果第i后面有k个item的权重与i相同,则这个N-i变为N-i-kf(w(i)=straw_i*0x10000,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1