Hi, I'd like to propose a few changes to reweight-by-utilization which will make it significantly less scary: 1. Change reweight-by-utilization to run in "dry run" -- display only -- mode unless an admin runs with --yes-i-really-really-mean-it. This way admins can see what will be reweighted before committing to any changes. 2. Add a configurable to limit the number of OSDs changed per execution: mon_reweight_max_osds_changed (default 4) 3. Add a configurable to limit the weight changed per OSD: mon_reweight_max_weight_change (default 0.05) Along with (2) and (3), the main loop in reweight_by_utilization: https://github.com/ceph/ceph/blob/master/src/mon/OSDMonitor.cc#L568 needs to sort the OSDs by utilization. 4. Make adjusting weights up optional with a new CLI option --adjust-up. This is useful because if you have nearly full OSDs you want to prioritize making space on those OSDs. I have already been running with these options in a python prototype: https://github.com/cernceph/ceph-scripts/blob/master/tools/crush-reweight-by-utilization.py If you agree I'll port these changes to OSDMonitor.cc and send a PR. Best Regards, Dan -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html