Question about CRUSH object placement

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I'm trying to understand the CRUSH algorithm and how it distribute data.
Let's say I simplify a small datacenter setup and map it up
hierarchically in the crush map as show below.

           root          datacenter
          /    \
         /      \
        /        \
       a          b      room
     / | \      / | \
    a1 a2 a3   b1 b2 b3  rack
    |  |  |    |  |  |
    h1 h2 h3   h4 h5 h6  host

I want 4 copies of all data in my pool, configured on pool level. 2
copies in each room. And I want to be sure not 2 copies resides in the
same rack when there is no HW failures.

Will the chooseleaf rule below ensure this placement?

	step take root
	step chooseleaf firstn 0 type room
        step emit

Or do I have to specify this more, like

	step take root
	step choose firstn 2 type room
	step chooseleaf firstn 2 type rack
	step emit

Or even more, like?

	step take a
	step choose firstn 2 type rack
	step chooseleaf firstn 1 type host
	step emit
	step take b
	step choose firstn 2 type rack
	step chooseleaf firstn 1 type host
	step emit

Is there difference in failure behaviour in the different configurations?


-- 
/\rnulf ||eimsbakk

_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux