Ceph官方文档[中文翻译]提供了Ceph分布式存储系统的全面技术指南和操作手册,内容涵盖安装、配置及维护等各个方面。
Ceph是一个开源的分布式存储系统,旨在提供高可用性、可扩展性和低成本的存储解决方案。其官方网站提供了详细的安装指南、配置指导以及管理和维护文档。
为了运行一个基本的Ceph集群,至少需要启动一个监视器(Monitor)和两个对象存储守护进程(OSD)。如果要使用Ceph文件系统客户端,则必须要有元数据服务器(Metadata Server, MDS)。OSD的主要功能包括储存数据,并处理复制、恢复及再均衡等任务。此外,它们通过向其他OSD发送心跳信息来提供给监视器监控状态。
监视器维护着集群的状态图表,其中包括监视映射、对象存储守护进程映射、放置组(PG)映射和CRUSH算法的配置映射。Ceph记录每一次发生在Monitors, OSDs 和 PG上的状态变更的历史信息,并用“纪元”来标识这些变化的时间点。
MDS为Ceph文件系统提供元数据服务,使用户能够执行诸如ls、find等基本命令而不对存储集群造成负担。客户端的数据被保存为对象在存储池内,通过CRUSH算法计算出哪个放置组应该持有指定的对象,并进一步确定哪个OSD守护进程负责该放置组。
构建Ceph集群时推荐使用普通硬件以降低费用,但规划硬件配置需要平衡如区域故障和潜在性能问题等因素。CPU、RAM以及硬盘驱动器是主要的考虑因素之一。MDS对CPU要求较高,而Monitor虽然不受CPU限制影响但仍需注意机器在未来是否还会运行其他高负载的任务。
对于内存而言,元数据服务器与监视器应拥有至少每进程1GB的内存以快速提供其服务的数据,然而OSD在日常操作中不需要太多内存但在恢复过程中会占用大量资源。选择合适的文件系统和硬盘驱动也是关键步骤之一:btrfs虽然尚未稳定到足以用于生产环境的程度,但它能够同时记录日志并写入数据;而xfs和ext4则不能。
确保均衡的日志与OSD的性能对于Ceph的高效运行至关重要,并且考虑到大容量硬盘每GB的成本较低,建议使用大于1TB的硬盘来存储对象数据。