基于ceph的分布式存储规划
一般构建存储资源池会构建 SSD系统存储池 和 HDD数据资源池 用于不同类型数据存储
由于hdd的性能问题,一般采用bcache技术 用NVMeSSD在IO速度较慢的HDD盘上做一层缓存,从而提高HDD盘的IO速率。
一个缓存设备(SSD)可以同时为多个后端设备(HDD)提供缓存。
例 有2SDD 6HDD 则可以每个SSD对应3个HDD
Ceph的BlueStore机制
Ceph中用来替代FileStore的存储后端,直接管理物理硬盘,避免通过文件系统带来开销,提高性能
BlueStore的三个主要组成部分是元数据区(Metadata)、数据区(Data)和预写日志区(WAL)
元数据区(Metadata)
存储对象的元数据(对象的位置、大小、校验和等)
数据区(Data)
存储实际的对象数据块(用户写入的原始数据)
避免频繁的元数据操作影响数据写入的效率,同时提高缓存的命中率。
预写日志区(WAL) Write-Ahead Logging
记录所有写操作的日志,用于崩溃恢复和事务一致性。
由于ceph bluestore机制,需要将缓存区分为DB分区/WAL分区/缓存分区。后续将缓存分区与HDD关联即可。
OSD(Object Storage Daemon)是负责存储实际的文件数据,将文件分割为对象并分布到集群中
其中的ssd 和hdd类型要区分开
创建PGs存储资源池 将两种osd划分为两个资源池
之后创建cephfs文件(生成crush-rule
多副本分布式存储支持EC 可创建纠删码池