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.