码迷,mamicode.com
首页 > 其他好文 > 详细

ceph学习笔记之十 副本放置策略

时间:2017-08-08 00:42:46      阅读:239      评论:0      收藏:0      [点我收藏+]

标签:ceph   sds   

副本放置策略

CRUSH 算法的设置目的是使数据能够根据设备的存储能力和宽带资源加权平均地分布,并保持一个相对的概率平衡。副本放置在具有层次结构的存储设备中,这对数据安全也有重要影响。通过反射系统的物理安装组织,CRUSH算法可以将系统模块化,从而定位潜在的设备故障。这些潜在故障的资源包括物理的,比如共用电源,共用的网络。通过向集群映射编码信息,CRUSH副本放置策略可以将数据对象独立在不同故障域,同时仍然保持所需的分布。例如,为了定位可能存在的并发故障,应该确保设备上的数据副本放置在不同的机架、主机、电源、控制器、或其他的物理位置。

Placement Rules

Cluster Map反映了存储系统层级的物理拓扑;Placement Rules则决定了一个PG的对象副本选择规则,通过对规则进行设定,就可以使副本在集群中的分布位置。

解读Placement Rules用法

# rules

rule replicated_ruleset {

        ruleset 0                //Ruleset的ID编号

        type replicated         //类型为replicated或者erasure code

        min_size 1             //副本数最小值为1

        max_size 10           //副本数最大值为10

        step take default     //选择一个名称为default的bucket,做下一步输入

        step chooseleaf firstn 0 type host   //firstn 0为表示为pool设置的副本数

        step emit

}

rule replicated_ssd_ruleset {

        ruleset 1

        type replicated

        min_size 1

        max_size 10

        step take ssd

        step chooseleaf firstn 0 type host

        step emit

}

# end crush map

Placement Rules执行流程

1、take操作选择一个Bucket ,一般是root类型的Bucket

2、choose操作有不同的选择方式

本文出自 “無詺IT小站” 博客,谢绝转载!

ceph学习笔记之十 副本放置策略

标签:ceph   sds   

原文地址:http://opencloud.blog.51cto.com/1041438/1954293

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!