一、前言
使用分组可以更好的管理osd,将不同类型的磁盘,分到不同的组中,例如hhd类型的osd分配到hhd组,ssd类型的osd分配到ssd组,将io要求不高的分配到hhd组做存储,io要求高的分配到ssd组做存储
二、配置
查看分组规则
ceph osd crush class ls
创建分组
ceph osd crush class create ssd
ceph osd crush class ls
添加新增的ssd磁盘作为osd
ceph orch device ls #节点添加磁盘后要先看ceph集群有无识别到新增的磁盘,不然没办法添加
ceph orch daemon add osd ceph04:/dev/sde #识别到后添加为osd,这里添加3块ssd磁盘作为osd,做存储池最低需要三块osd作为冗余
ceph orch daemon add osd ceph03:/dev/sdd
ceph orch daemon add osd ceph02:/dev/sdd
默认规则的原因添加后的osd为hdd类型,需要手动更改一下
ceph osd tree
ceph osd crush rm-device-class osd.12
ceph osd crush rm-device-class osd.8
ceph osd crush rm-device-class osd.5
ceph osd crush set-device-class ssd osd.12
ceph osd crush set-device-class ssd osd.8
ceph osd crush set-device-class ssd osd.5
ceph osd tree
创建用于ssd类型osd的class规则
ceph osd crush rule create-replicated ssd_rule default host ssd
ceph osd crush rule ls
查看class规则详细信息
ceph osd crush rule dump
可以看到有两个规则,一个是默认的规则,一个是刚创建的ssd_rule
创建ssd高性能存储池
ceph osd pool create ssd_pool 32 32 ssd_rule
ceph osd pool ls detail
可以看到使用了crush_rule id为1的规则
至此关于规则分组的内容介绍完成