注意

本文档适用于 Ceph 的开发版本。

Ceph 简介

Ceph 可用于为云平台提供Ceph 对象存储,Ceph 也可用于为云平台提供Ceph 块设备服务。Ceph 可用于部署Ceph 文件系统。所有Ceph 存储集群部署都始于设置每个Ceph 节点,然后设置网络。

Ceph 存储集群需要以下组件:至少一个 Ceph Monitor 和至少一个 Ceph Manager,以及至少与 Ceph 集群中存储的给定对象副本数一样多的Ceph 对象存储守护进程 (OSD)(例如,如果 Ceph 集群中存储了给定对象的三个副本,则该 Ceph 集群中必须至少存在三个 OSD)。

Ceph 元数据服务器对于运行 Ceph 文件系统客户端是必需的。

注意

最佳实践是为每个 Monitor 配备一个 Ceph Manager,但这并非必需。

  • MonitorsCeph Monitor (ceph-mon) 维护集群状态的地图,包括monitor 地图、manager 地图、OSD 地图、MDS 地图和 CRUSH 地图。这些地图是 Ceph 守护进程相互协调所需的关键集群状态。Monitors 还负责管理守护进程和客户端之间的身份验证。通常需要至少三个 monitors 以实现冗余和高可用性。

  • ManagersCeph Manager 守护进程 (ceph-mgr) 负责跟踪运行时指标和 Ceph 集群的当前状态,包括存储利用率、当前性能指标和系统负载。Ceph Manager 守护进程还托管基于 python 的模块,用于管理和公开 Ceph 集群信息,包括基于 web 的Ceph Dashboard。通常需要至少两个 managers 以实现高可用性。

  • Ceph OSDs:对象存储守护进程 (Ceph OSD, ceph-osd) 存储数据,处理数据复制、恢复、再平衡,并通过检查其他 Ceph OSD 守护进程的心跳来向 Ceph Monitors 和 Managers 提供一些监控信息。通常需要至少三个 Ceph OSD 以实现冗余和高可用性。

  • MDSesCeph 元数据服务器 (MDS, ceph-mds) 存储Ceph 文件系统的元数据。Ceph 元数据服务器允许 CephFS 用户运行基本命令(如 lsfind 等),而不会给 Ceph 存储集群带来负担。

  • RGWsCeph 对象网关 (RGW, ceph-radosgw) 守护进程提供应用程序和 Ceph 存储集群之间的 RESTful 网关。S3 兼容 API 是最常用的,但也提供 Swift API。

Ceph 将数据存储为逻辑存储池中的对象。使用 CRUSH 算法,Ceph 计算哪个 placement group (PG) 应该包含该对象,以及哪个 OSD 应该存储该 placement group。CRUSH 算法使 Ceph 存储集群能够动态扩展、再平衡和恢复。

建议

要开始在生产中使用 Ceph,您应该查阅我们的硬件建议和操作系统建议。

参与其中

您可以通过参与 Ceph 社区来获得帮助或贡献文档、源代码或错误。

由 Ceph 基金会为您呈现

Ceph 文档是由非营利性 Ceph 基金会 资助和托管的社区资源。如果您希望支持这项工作和我们的其他努力,请考虑 立即加入