Ceph存储集群
Ceph
提供了一个基于RADOS
(一种可扩展的、可靠的pb级存储集群存储服务)的无限可扩展的Ceph
存储集群.
Ceph
存储集群由两种类型的守护进程组成:
Ceph Monitor
(mon)Ceph OSD Daemon
(OSD)
其中Ceph Monitor
维护集群映射的主副本。多节点Ceph Monitor
确保了Ceph Monitor
守护进程失败时的高可用性。
Ceph
客户端从Ceph Monitor
获取集群信息
ceph osd
守护进程检查自己的状态和其他OSD
的状态,并向Ceph Monitor
上报。
Ceph
客户端和每个ceph osd
守护进程使用CRUSH
算法高效地计算数据位置信息,而不必依赖于中央查找表。
Ceph
的高级特性包括通过librados
提供到Ceph
存储集群的本地接口,以及建立在librados
之上的许多服务接口。
Ceph
数据存储流程
Ceph
存储集群从Ceph
客户端接收数据——无论是通过一个Ceph
块设备、Ceph
对象存储、Ceph
文件系统还是使用librados
创建的自定义实现——它将数据作为对象存储。
每个对象都对应于文件系统中的一个文件,文件系统存储在对象存储设备上。ceph osd
守护进程处理存储磁盘的读写操作。
ceph osd
守护进程将所有数据作为对象存储在一个平面命名空间中(没有目录层次结构)。
对象具有标识符、二进制数据和由一组名称/值对组成的元数据。语义完全由Ceph
客户端决定。
例如,CephFS
使用元数据存储文件属性,如文件所有者、创建日期、最后修改日期等。其中,对象ID全局唯一。