Skip to main content

Definition

PG splitting with upmap-remapped is a technique used to speed up the PG splitting process in Ceph clusters by preventing unnecessary data movement during splits.

How It Works

When PGs are split, the new PGs become remapped rather than degraded. For example, if PG 5.b with OSDs [13,14,9,2,12,7,15] gets split to create new PG 5.1b, the new PG 5.1b becomes remapped with [13,14,9,2,12,7,15] as the acting set and a completely different set of OSDs for the up set. The split happens on the original set of OSDs and then new locations are picked.

Run upmap-remapped in a loop during PG splitting:

while true; do
if ! ceph status 2>&1 | grep -q "unknown"; then
./upmap-remapped.py | sh -x
fi
sleep 30
done

This method allows the rebalancing to be deferred until after PG creation finishes, making the process more efficient.