====== Tunning CEPH recovery ====== ^ Documentation ^| ^Name:| Tunning CEPH recovery | ^Description:| How to tune recovery options on CEPH for speed up recovery | ^Modification date :|31/07/2018| ^Owner:|dodger| ^Notify changes to:|Owner | ^Tags:|ceph, object storage | ^Scalate to:|The_fucking_bofh| ====== Instructions ====== ===== Check actual values ===== ceph tell 'osd.*' config get osd_recovery_max_single_start ceph tell 'osd.*' config get osd_max_backfills ceph tell 'osd.*' config get osd_recovery_max_active ceph tell 'osd.*' config get osd_recovery_max_single_start ceph tell 'osd.*' config get osd_backfill_scan_max ceph tell 'osd.*' config get osd_backfill_scan_min ceph tell 'osd.*' config get osd_recovery_sleep_hdd ===== Change values ===== This will change the values on the running instances, without having to restart the OSD daemon: ceph tell 'osd.*' config set osd_recovery_max_single_start 1000 ceph tell 'osd.*' config set osd_max_backfills 100 ceph tell 'osd.*' config set osd_recovery_max_active 300 ceph tell 'osd.*' config set osd_recovery_max_single_start 1000 ceph tell 'osd.*' config set osd_backfill_scan_max 51200 ceph tell 'osd.*' config set osd_backfill_scan_min 6400 ceph tell 'osd.*' config set osd_recovery_sleep_hdd 0 And add the options to the ''ceph.conf'' file under ''[osd]'' section (see [[linux:ceph:modifying_ceph_dot_conf|Modifying ceph.conf]]): osd recovery max single start = 1000 osd max backfills = 100 osd recovery max active = 300 osd recovery max single start = 1000 osd backfill scan max = 51200 osd backfill scan min = 6400 osd recovery sleep hdd = 0 ===== Restart osd's ===== Not necessary using ''ceph tell'' command. From ''osm-001'' (with environment variables initialized): for i in ${OSDSERVERS} ; do echo "###### ${i}" ; ssh ${i} "sudo systemctl restart ceph-osd.target" ; sleep 5; done