Usually, you don’t always want to restart your daemon everytime you change your configuration. Fortunatly, Ceph supports parameter injection!
First check the parameter you want to change in your configuration via the admin daemon socket. To learn more about the admin socket, please refer to my article. Let’s say I want to enable the RBD caching:
ceph --admin-daemon /var/run/ceph/ceph-osd.0.asok config show | grep 'rbd_cache_max_dirty_age ='
rbd_cache_max_dirty_age = 0
Then inject a change into all the OSDs:
$ ceph tell osd.* injectargs '--rbd_cache_max_dirty_age = 1'
ok
Since we don’t want to apply the changes to only one OSD, we use the symbol * to spread the new parameter across all the OSDs.
Finally re-check your configuration:
$ ceph --admin-daemon /var/run/ceph/ceph-osd.0.asok config show | grep 'rbd_cache_max_dirty_age ='
rbd_cache_max_dirty_age = 1
网友评论