>> There are two types of "object", RBD-image-object and 8MiB-block-object.
>> When create a RBD image, a RBD-image-object is created and 12800 
>> 8MiB-block-objects
>> are allocated. That whole RBD-image-object is mapped to a single PG, which 
>> is mapped
>> to 3 OSDs (replica 3). That means, all user data on that RBD image is stored 
>> in those
>> 3 OSDs. Is my understanding correct?
>
> RBD image is not a object, is a bunch of objects as block device abstraction.
> Nope, each object of image may be placed to pseudo random placement. For 
> example if you
> have 10000 osds and 10GiB image with 4MiB objects your image may be placed to 
> 2560
> different PGs on 100-1000-2560 OSDs...

That's what I thought. I am confused by this.

# ceph osd map vm fcb09c9c-4cd9-44d8-a20b-8961c6eedf8e_disk
osdmap e18381 pool 'vm' (4) object 'fcb09c9c-4cd9-44d8-a20b-8961c6eedf8e_disk' 
-> pg 4.c7a78d40 (4.0) -> up ([4,17,6], p4) acting ([4,17,6], p4)

It calls RBD image "object" and it shows the whole image maps to a single PG,
while the image is actually split into many objects each of which maps to a PG.
How am I supposed to understand the output of this command?


Thanks!
Tony
_______________________________________________
ceph-users mailing list -- ceph-users@ceph.io
To unsubscribe send an email to ceph-users-le...@ceph.io

Reply via email to