首页»Ceph»Ceph 分布式存储运维实践:从集群规划到故障自愈

Ceph 分布式存储运维实践:从集群规划到故障自愈

Ceph 把对象、块、文件三种存储统一在一套 RADOS 集群之上,是私有云与云原生环境里最常见的分布式存储底座。本页不重复安装向导,而是从极客运维的日常视角出发,围绕集群规划、CRUSH 布局、PG 状态、性能调优与故障自愈几个层面,整理一套可以长期稳定运行的 Ceph 运维方法。

3-in-1
对象 / 块 / 文件统一存储
CRUSH
去中心化数据分布算法
PG
数据分布与恢复的基本单位
Ceph 集群拓扑示意

集群拓扑与网络规划

公网与集群网分离、MON 奇数部署、OSD 节点预留心跳带宽,是后续稳定性的第一道门槛。

CRUSH 规则与故障域

CRUSH 规则与故障域

按机架、主机、磁盘划分故障域,配合副本数或纠删码策略,让数据在硬件故障时仍可自愈。

关键运维要点

常见状态与处理思路

状态 含义 处理方向
HEALTH_WARN 存在告警但服务可用 逐条查看 ceph health detail
PG degraded 副本不足,数据仍在恢复 确认 OSD 在线状态,观察恢复速率
OSD down 磁盘或进程异常 检查磁盘健康与日志,必要时替换
nearfull 集群容量接近阈值 扩容 OSD 或调整权重,避免写满

性能调优与容量治理

Ceph 的性能瓶颈往往不在 CPU,而在网络与磁盘队列。对全闪集群,优先关注 BlueStore 的 WAL/DB 设备分离与网络 MTU;对混闪集群,则要控制回填与恢复的并发,避免业务 IO 被后台任务拖垮。

容量治理上,建议把 mon_osd_nearfull_ratio 与扩容流程绑定,形成“告警—评估—扩容—回填”的闭环,而不是等集群写满再紧急处理。

Ceph 监控面板占位

监控与告警

把 OSD 延迟、PG 状态、恢复速率与容量水位纳入统一面板,故障才能被提前发现。

返回首页

常见问题

Q:PG 数量到底怎么定?

A:按 OSD 总数与副本数估算,单 OSD 承载 100 个左右 PG 是常见起点,再结合集群规模与恢复能力微调,避免频繁重分布。

Q:OSD 掉线后能直接换盘吗?

A:先确认 OSD 是否可恢复,若需换盘,应先将 OSD 标记 out 并等待数据回填完成,再执行销毁与重建,避免二次降级。

Q:Ceph 适合跑数据库吗?

A:RBD 可以提供块设备,但数据库对延迟敏感,建议使用本地 NVMe 或专用存储,Ceph 更适合对象、镜像与共享文件场景。

相关阅读