With the Crush algorithm, Ceph OSD Crush RM caters to the elastic and scalable nature of modern storage systems. As OSDs are added or removed, the Crush map dynamically recalculates the data distribution, ensuring optimal resource utilization. This elasticity allows administrators to adapt the cluste...
1.2 crush分类管理 ceph crush算法分配PG的时候可以将PG分配到不同主机的OSD上,实现以主机为单位的高可用,这也是默认机制;但无法保证不同PG位于不同机柜或机房的主机,如果要实现基于机柜或更高级的IDC等方式的数据高可用;而且也不能实现A项目的数据在SSD,B项目的数据在机械盘,如果要实现此功能则需要导出crush运行图...
为把PG 映射到 OSD , CRUSH Map 需要 OSD 列表(即配置文件所定义的 OSD 守护进程名称),所以它们首先出现在 CRUSH Map 里。 要在CRUSH Map 里声明一个设备,在设备列表后面新建一行,输入 device 、之后是唯一的数字 ID 、之后是相应的 ceph-osd 守护进程实例名字。 # devices device {num} {osd.name} #例...
ceph osd crush add/set osd.{osd-id} {weight} {args} 上述命令中的{weight}值表明该osd的存储能力(容量),一般1T的盘,weight设为1,{args}知道该osd位置。 删除层级结构 将子bucket从父bucket下删除: ceph osd crush rm {bucket_name} {parent_bucket_name} 只有当一个bucket下没有子bucket时,它才能被...
正常情况下OSD的状态是up in状态,如果down掉OSD,它的状态会变为down in,等待数据均衡完成后osd变为down out状态,Ceph 会把其归置组迁移到其他OSD, CRUSH 就不会再分配归置组给它。 3. 查看OSD的状态 # 查看集群的osd状态 # 查看指定osd的状态:ceph osd dump 3 ...
通过对 ceph osd tree 查看 所有的 class 类都是 hdd, 如果自动设备检测出错,可以手动修改 ceph osd crush rm-device-classosd.0 手动添加ssd类 ceph osd crushset-device-classssd osd.0 更改crush rule名字: osd crush rule rename <srcname> <dstname> ...
osd 根据磁盘类型分组调整 ###查看已有磁盘类型ceph osd crush classls###如不满足多个类型, 先删除osd已有类型foriin{0..11};doceph osd crush rm-device-class osd.$i;done###将指定磁盘设置分组foriin{0..11};doceph osd crush set-device-class ssd osd.${i};done###新建ssd和hdd磁盘对应分类规则...
cephadmin@ceph-deploy:~$ ceph osd pool stats mypool pool mypool id 2 nothing is going on 1.4 查看指定pool或所有pool的状态 ceph osd pool stats 示例 cephadmin@ceph-deploy:~$ ceph osd pool stats mypool pool mypool id 2 nothing is going on ...
Ceph 消除了集中网关,允许客户端直接和 Ceph OSD 守护进程通讯。 Ceph OSD 守护进程自动在其它 Ceph 节点上创建对象副本来确保数据安全和高可用性; 为保证高可用性,监视器也实现了集群化。 为消除中心节点, Ceph 使用了 CRUSH 算法。 CRUSH算法 Ceph 客户端和 OSD 守护进程都用 CRUSH 算法来计算对象的位置信息,而...
1. 增加 OSD(手动) 要增加一个 OSD,要依次创建数据目录、把硬盘挂载到数据目录、把 OSD 加入集群、然后把它加入 CRUSH Map。 Tip:Ceph 喜欢统一的硬件,与存储池无关。如果你要新增容量不一的硬盘驱动器,还需调整它们的权重。但是,为实现最佳性能,CRUSH 的分级结构最好按类型、容量来组织。