From 77cdb500af97e0ee75b79faef844f5eaae8733fd Mon Sep 17 00:00:00 2001 From: oddomatik Date: Thu, 30 Jul 2015 22:33:09 +0800 Subject: [PATCH] No CRUSH involvement in deciding PG target Quoting from elsewhere "[we calculate] a placement group using the object name, a hash code, the number of PGs in the pool and the pool name" --- doc/rados/operations/placement-groups.rst | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/doc/rados/operations/placement-groups.rst b/doc/rados/operations/placement-groups.rst index 2d77df6b97bf..4fb83bc96167 100644 --- a/doc/rados/operations/placement-groups.rst +++ b/doc/rados/operations/placement-groups.rst @@ -58,11 +58,10 @@ cannot realistically track placement on a per-object basis. | | +-----------------------+ -Placement groups are invisible to the Ceph user: the CRUSH algorithm -determines in which placement group the object will be -placed. Although CRUSH is a deterministic function using the object -name as a parameter, there is no way to force an object into a given -placement group. +The Ceph client will calculate which placement group an object should +be in. It does this by hashing the object ID and applying an operation +based on the number of PGs in the defined pool and the ID of the pool. +See `Mapping PGs to OSDs`_ for details. The object's contents within a placement group are stored in a set of OSDs. For instance, in a replicated pool of size two, each placement -- 2.47.3