Ceph集群OSD崩溃恢复

Ceph集群OSD崩溃恢复

问题背景

集群处于HEALTH_WARN状态

1个守护进程(OSD.325)最近崩溃

通过ceph -s命令,查看详细的警告信息:

复制代码
[XXXXX ~]# ceph -s
  cluster:
    id:     xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    health: HEALTH_WARN
            1 daemons have recently crashed
RECENT_CRASH 1 daemons have recently crashed
    osd.325 crashed on host hostname at YYYY-MM-DD HH:MM:SS.SSSSSSZ

问题分析

1. OSD崩溃问题

需要确认崩溃的OSD.325的状态。使用ceph osd find命令来定位OSD:

复制代码
[root@hostname ~]# ceph osd find 325
Error ENOENT: osd.325 does not exist

系统提示OSD.325不存在。进一步通过OSD树结构查找:

复制代码
[root@hostname ~]# ceph osd tree | grep 325

没有任何输出,确认了OSD.325已经不在集群中。

这种情况通常发生在:OSD崩溃后被管理员从集群中移除,但崩溃记录没有被清理。

2. 查看崩溃记录

接下来,我们查看集群中的崩溃记录:

复制代码
[root@hostname ~]# ceph crash ls
ID                                                               ENTITY     NEW 
YYYY-MM-DD_HH:MM:SS.SSSSSSZ_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx osd.325        
YYYY-MM-DD_HH:MM:SS.SSSSSSZ_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx osd.325        
YYYY-MM-DD_HH:MM:SS.SSSSSSZ_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx osd.325     *  

从输出中可以看到,确实存在OSD.325的崩溃记录,发生时间为YYYY年MM月DD日,并且标记为"NEW"(星号表示)。这意味着这个崩溃记录还没有被归档处理。

解决方案

1. 归档崩溃记录

既然OSD.325已经不在集群中,只需要归档这个崩溃记录即可消除相关警告:

复制代码
[root@hostname ~]# ceph crash archive YYYY-MM-DD_HH:MM:SS.SSSSSSZ_xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

归档成功后,我们再次检查集群状态:

复制代码
[root@hostname ~]# ceph -s
  cluster:
    id:     xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    health: HEALTH_WARN
            XX pgs not deep-scrubbed in time

可以看到,OSD崩溃的警告已经消失

经验总结

  1. 定期检查集群状态 :通过ceph -s命令定期检查集群健康状态,及时发现问题。

  2. 崩溃记录管理 :当处理完OSD崩溃后,记得使用ceph crash archive命令归档崩溃记录,避免不必要的警告。

  3. 故障排除流程

    • 确认问题(ceph -s
    • 定位具体组件(ceph osd find, ceph osd tree
    • 查看详细信息(ceph crash ls
    • 采取修复措施(ceph crash archive
    • 验证结果(再次ceph -s
相关推荐
运维全栈笔记6 天前
腾讯云 CVM 搭建 Ceph 集群部署笔记
笔记·ceph·腾讯云
刘某的Cloud7 天前
ceph osd 导入导出 rbd volume 卷
linux·运维·ceph·volume
heimeiyingwang7 天前
【架构实战】Kubernetes存储实战:从EmptyDir到Ceph CSI的持久化存储选型指南
ceph·架构·kubernetes
DLYSB_18 天前
存储运维实战:基于 Ceph Event 监听与 Python 适配器的分布式存储健康度物理声光响应架构
运维·ceph·python·报警灯
AAA@峥21 天前
Ceph 分布式文件系统 CephFS 实战指南
运维·分布式·ceph
AAA@峥1 个月前
Ceph RBD 块存储全解析:原理与实操汇总
运维·分布式·ceph
AAA@峥1 个月前
Ceph 集群配置管理完整指南
运维·数据库·分布式·ceph
胖兔纸21 个月前
OpenStack 1.7.2 & Ceph 9.2.1 运维命令
运维·ceph·openstack
seacracker1 个月前
Ceph 太重运维成本高?轻量统一存储 PowerFS 对比测评(HPC/AI 场景首选)
运维·人工智能·ceph·ai存储·统一存储
牛奶咖啡132 个月前
CEPH分布式存储应用实践——基于Docker安装部署Ceph分布式存储环境
ceph·安装部署ceph分布式存储·cephv20.2.2·docker中手动部署ceph·cephadm部署ceph·docker部署ceph准备·分布式存储环境部署