1.存储原理
学习目标:这一节,我们从存储解读、案例解读、小结三个方面来学习。
1.1 存储解读
存储数据
Ceph 存储集群从 Ceph 客户端接收数据,无论是通过 Ceph 块设备、Ceph 对象存储、Ceph 文件系统还是使用 librados 创建的自定义实现,这些数据存储为 RADOS 对象,每个对象都存储在一个对象存储设备上。
Ceph OSD 守护进程处理存储驱动器上的读、写和复制操作。它主要基于两种文件方式实现:
- FileStore方式,每个 RADOS 对象都作为一个单独的文件存储在传统文件系统(通常是 XFS)上。
- BlueStore方式,对象以类似整体数据库的方式存储,这是最新版本 Ceph 默认的存储方式。
注意:在 Ceph 中,每一个文件都会被拆分为多个独立的 Object,然后按照上面的逻辑进行持久化。
Ceph OSD 守护进程将 “数据” 作为对象存储在平面命名空间中,该对象包括如下部分:
- 标识符:在内存中唯一查找的标识
- 二进制数据:每个对象的真实数据
- 属性数据:由一组名称/值对组成的元数据,语义完全取决于 Ceph 客户端。
例如,CephFS 使用元数据来存储文件属性,例如文件所有者、创建日期、上次修改日期等。
注意