Ceph作为一个分布式存储,在项目中常见的形态有两者,一种是采用 SSD 或NVME 磁盘做Ceph的日志盘,使用SATA磁盘来做数据盘。这样的好处是比较经济实惠。另一种则是全部采用 SSD 或NVME磁盘,其性能更好,但是其价格比较昂贵。在第一种形态中,我们能像中间件那样加上一层缓存层,从而实现给数据盘加速的功能吗?Bcache就是这样一种缓存技术。
1. bcache 是什么
- Bcache是Linux内核块设备层Cache,支持将一个或多个速度较快的磁盘设备(如SSD)作为读写速度相对较慢的磁盘设备的Cache.它使得固态硬盘作为硬盘驱动器的缓存,既解决了固态硬盘容量太⼩的问题,又解决了硬盘驱动器运行速度太慢的问题。
2. 三种缓存策略
bcache从3.10版本开始被集成进内核,⽀持3种缓存策略,分别是 Writeback 、Writethrough 、 Writearoud , 默认使⽤Writethrough,缓存策略可被动态修改。
- Writethrough (直写策略): 数据写入时, 必须