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