How to dynamically change a configuration value in a Ceph cluster?
It is possible to change a particular configuration setting in a Ceph cluster dynamically, and I think it is a very neat and useful feature.
Imagine the case where you want to change the replica count of a particular PG from 3 to 4. How would you change this without restarting the Ceph cluster itself? That is where the 'ceph tell' command comes in.
As we saw in the previous post, you can get the list of configuration settings using the administrator socket, from either a monitor or an OSD node.
To change a configuration use:
[sourcecode language="bash" gutter="false"]
# ceph tell mon.* injectargs '--{tunable value_to_be_set}'
[/sourcecode]
For example, to change the timeout value after which an OSD is out and down, can be changed with:
[sourcecode language="bash" gutter="false"]
# ceph tell mon.* injectargs '--mon_osd_report_timeout 400'
[/sourcecode]
By default, it is 300 seconds, ie.. 5 minute