Placement Group States
When checking a cluster’s status (e.g., running ceph -w
or ceph -s
),
Ceph will report on the status of the placement groups. A placement group has
one or more states. The optimum state for placement groups in the placement group
map is active + clean
.
- creating
Ceph is still creating the placement group.
- activating
The placement group is peered but not yet active.
- active
Ceph will process requests to the placement group.
- clean
Ceph replicated all objects in the placement group the correct number of times.
- down
A replica with necessary data is down, so the placement group is offline.
- laggy
A replica is not acknowledging new leases from the primary in a timely fashion; IO is temporarily paused.
- wait
The set of OSDs for this PG has just changed and IO is temporarily paused until the previous interval’s leases expire.
- scrubbing
Ceph is checking the placement group metadata for inconsistencies.
- deep
Ceph is checking the placement group data against stored checksums.
- degraded
Ceph has not replicated some objects in the placement group the correct number of times yet.
- inconsistent
Ceph detects inconsistencies in the one or more replicas of an object in the placement group (e.g. objects are the wrong size, objects are missing from one replica after recovery finished, etc.).
- peering
The placement group is undergoing the peering process
- repair
Ceph is checking the placement group and repairing any inconsistencies it finds (if possible).
- recovering
Ceph is migrating/synchronizing objects and their replicas.
- forced_recovery
High recovery priority of that PG is enforced by user.
- recovery_wait
The placement group is waiting in line to start recover.
- recovery_toofull
A recovery operation is waiting because the destination OSD is over its full ratio.
- recovery_unfound
Recovery stopped due to unfound objects.
- backfilling
Ceph is scanning and synchronizing the entire contents of a placement group instead of inferring what contents need to be synchronized from the logs of recent operations. Backfill is a special case of recovery.
- forced_backfill
High backfill priority of that PG is enforced by user.
- backfill_wait
The placement group is waiting in line to start backfill.
- backfill_toofull
A backfill operation is waiting because the destination OSD is over the backfillfull ratio.
- backfill_unfound
Backfill stopped due to unfound objects.
- incomplete
Ceph detects that a placement group is missing information about writes that may have occurred, or does not have any healthy copies. If you see this state, try to start any failed OSDs that may contain the needed information. In the case of an erasure coded pool temporarily reducing min_size may allow recovery.
- stale
The placement group is in an unknown state - the monitors have not received an update for it since the placement group mapping changed.
- remapped
The placement group is temporarily mapped to a different set of OSDs from what CRUSH specified.
- undersized
The placement group has fewer copies than the configured pool replication level.
- peered
The placement group has peered, but cannot serve client IO due to not having enough copies to reach the pool’s configured min_size parameter. Recovery may occur in this state, so the pg may heal up to min_size eventually.
- snaptrim
Trimming snaps.
- snaptrim_wait
Queued to trim snaps.
- snaptrim_error
Error stopped trimming snaps.
- unknown
The ceph-mgr hasn’t yet received any information about the PG’s state from an OSD since mgr started up.