ceph-crush-location hook

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

 



There is a provsion in the startup scripts that will move your osd to the 
correct position in the crush map on startup.  By default, this sets the 
host based on hostname and then pulls in any fields defined in 'osd crush 
location' in ceph.conf.

This is useful but not sufficiently flexible for users who have multiple 
types of devices and non-trivial crush trees.  I just merged a new helper 
into master called ceph-crush-location that implements the above basic 
behavior (and is now called by the sysvinit and upstart startup scripts).  
However, you can now implement your own hook by setting 'osd crush 
location hook = /path/to/my/script' and implement whatever logic you want.  
The script just needs to output an appropriate list of key/value pairs 
when called like so:

 $ ceph-crush-location --cluster ceph --id 0 --type osd
 host=vapre root=default

The other change is that the default hook checks either '$type crush 
location' (e.g. osd crush location) or, if that is empty, 'crush 
location'.  In the very near future the clients will also understand the 
'crush location' option and use that for localizing their reads when 
appropriate (e.g., for hadoop or read-only rbd images).  That means that 
updating your chef/puppet/juju or other provisioning tools to define 
'crush location' in /etc/ceph/ceph.conf will make all of this stuff Just 
Work.

sage
_______________________________________________
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]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux