CEPH自定义crushmap

CEPH自定义crushmap 实现储存隔离


一、更新规则

1、获取规则信息

ceph osd getcrushmap -o ./crushmap.bin
crushtool -d crushmap.bin -o ./crushmap.txt

2、更改规则以及规则说明

以下我们为hdd,sdd定义规则,用于缓存分层
1、hdd

rule hdd_rule {
   
	id 2                                   
	type replicated
	min_size 1
	max_size 10
	step take default class hdd
	step chooseleaf firstn 0 type host
	step emit
}

2、ssd

rule ssd_rule {
   
	id 1
	type replicated
	min_size 1
	max_size 10
	step take default class ssd
	step chooseleaf firstn 0 type host
	step emit
}

3、规则说明

rule <rulename> {
   
id <id >                  [整数,规则id]
type [replicated|erasure] [规则类型,用于复制池还是纠删码池]
min_size <min-size>       [如果池的最小副本数小于该值,则不会为当前池应用这条规则]
max_size <max-size>       [如果创建的池的最大副本大于该值,则不会为当前池应用这条规则]
step take <bucket type>   [这条规则作用的bucket,默认为default]
step [chooseleaf|choose] [firstn] <num> type <bucket-type> 
# num == 0 选择N(池的副本数)个bucket
# num > 0且num < N 选择num个bucket
# num < 0 选择N-num(绝对值)个bucket
step emit
}

如上设置主要是根据以下的class 类型来进行配置,儿默认情况下默认情况下,我们所有的 osd crush class 类型都是 hdd。如果你想设置更多规则,可以更改磁盘的crush class

# devices
device 0 osd.0 class hdd
device 1 osd.1 class hdd
device 2 osd.2 class hdd
device 3 osd.3 class hdd
device 4 osd.4 class hdd
device 5 osd.5 class hdd
device 6 osd.6 class hdd
device 7 osd.7 class hdd
device 8 osd.8 class hdd
device 9 osd.9 class hdd
device 10 osd.10 class hdd
device 11 osd.11 class hdd
device 12 osd.12 class hdd
device 13 osd.13 class hdd
device 14 osd.14 class hdd
device 15 osd.15 class hdd
device 16 osd.16 class hdd
device 17 osd.17 class hdd
device 18 osd.1
### 关于中的红外传感器 #### 红外传感器工作原理 红外传感器是一种利用物体发出的红外辐射来检测目标并完成相应功能的电子元件。其基本工作原理基于热电效应和光电效应,通过接收特定波长范围内的红外线信号实现对环境或对象的状态监测[^1]。当应用于时,红外传感器主要用于探测床铺表面温度变化以及识别可能存在的活体生物(如尘)。这些设备通常会发射不可见光束,并捕捉反射回来的信息以判断是否有活动迹象。 #### 在中的具体应用 在实际产品设计中,红外传感技术被用来提升清洁效率与用户体验。例如,在启动前自动扫描待处理区域是否存在潜在威胁;或者动态调整吸力大小从而达到节能目的同时确保最佳效果[^2]。此外,某些高端型号还集成了更复杂的算法分析能力,能够区分不同类型的微小颗粒物并将数据反馈给用户以便采取进一步措施。 ```python # 示例代码展示如何模拟简单的红外感应逻辑 class InfraredSensor: def __init__(self, threshold=0.5): self.threshold = threshold def detect(self, signal_strength): """根据接收到的信号强度判定是否发现目标""" if signal_strength >= self.threshold: return True # 发现目标 else: return False # 未发现目标 sensor = InfraredSensor() print(sensor.detect(0.7)) # 输出:True 表示有反应 ``` 以上片段仅作为概念演示用途并不完全代表真实硬件运作方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值