追查系统故障,需要找到问题的根源安置组和相关的OSD。
一般来说,归置组卡住时 ceph 的自修复功能往往无能为力,卡住的状态细分为:
1. unclean
不干净:归置组里有些对象的复制数未达到期望次数,它们应该在恢复中。
2. inactive
不活跃:归置组不能处理读写,因为它们在等着一个持有最新数据的 OSD 再次进入 up 状态。
3. stale
发蔫:归置组们处于一种未知状态,因为存储它们的 OSD 有一阵子没向监视器报告了(由 mon osdreport timeout 配置)。
为找出卡住的归置组,执行:
1
|
ceph
pg dump_stuck [unclean|inactive|stale] |