注意
本文档适用于 Ceph 的开发版本。
放置组状态
当检查集群状态(例如,运行 ceph -w 或 ceph -s)时,Ceph 将报告放置组的状态。一个放置组有一个或多个状态。放置组映射中放置组的最佳状态是 active + clean。
- creating
Ceph 仍在创建放置组。
- activating
放置组已配对但尚未激活。
- active
Ceph 将处理对放置组的请求。
- clean
Ceph 已将放置组中的所有对象按正确的次数复制。
- down
具有必要数据的副本已关闭,因此放置组处于离线状态。
- laggy
副本未及时确认来自主节点的租约;IO 暂时暂停。
- wait
此 PG 的 OSD 集刚刚更改,IO 暂时暂停,直到前一个间隔的租约到期。
- scrubbing
Ceph 正在检查放置组元数据是否存在不一致性。
- deep
Ceph 正在根据存储的校验和检查放置组数据。
- degraded
Ceph 尚未将放置组中的某些对象按正确的次数复制。
- inconsistent
Ceph 检测到放置组中一个或多个对象的副本存在不一致性(例如,对象大小错误,恢复完成后某个副本中缺少对象等)。
- peering
放置组正在进行配对过程
- repair
Ceph 正在检查放置组并修复发现的任何不一致性(如果可能)。
- recovering
Ceph 正在迁移/同步对象及其副本。
- forced_recovery
用户强制执行该 PG 的高恢复优先级。
- recovery_wait
放置组正在排队等待开始恢复。
- recovery_toofull
恢复操作正在等待,因为目标 OSD 超过了其满容量比例。
- recovery_unfound
由于找不到对象而停止恢复。
- backfilling
Ceph 正在扫描和同步放置组的全部内容,而不是从最近操作的日志中推断需要同步的内容。回填是恢复的一种特殊情况。
- forced_backfill
用户强制执行该 PG 的高回填优先级。
- backfill_wait
放置组正在排队等待开始回填。
- backfill_toofull
回填操作正在等待,因为目标 OSD 超过了回填满容量比例。
- backfill_unfound
由于找不到对象而停止回填。
- incomplete
Ceph 检测到放置组缺少可能发生的写入信息,或者没有任何健康的副本。如果看到此状态,请尝试启动可能包含所需信息的任何失败的 OSD。在纠删码池的情况下,暂时减少 min_size 可能允许恢复。
- stale
放置组处于未知状态 - 自放置组映射更改以来,监控器尚未收到有关它的更新。
- remapped
放置组暂时映射到与 CRUSH 指定的 OSD 集不同的 OSD 集。
- undersized
放置组的副本数少于配置的池复制级别。
- peered
放置组已配对,但由于没有足够的副本达到池配置的 min_size 参数,因此无法为客户端 IO 服务。在此状态下可能会发生恢复,因此 PG 最终可能会自我修复到 min_size。
- snaptrim
正在修剪快照。
- snaptrim_wait
排队等待修剪快照。
- snaptrim_error
错误停止修剪快照。
- unknown
自 mgr 启动以来,ceph-mgr 尚未从 OSD 收到有关 PG 状态的任何信息。