The services framework from nova is in the process of being moved into openstack-common. I'd like to propose the following additions to the services framework to make it more useful:
* Signal Handling
--HUP to reload configs
--TERM die as soon as threads are finished
* Command and Control over RPC:
Pause (stop consuming regular queue messages)
Resume (continue consuming regular queu messages)
Reload (reload configs and continue)
Restart (run a new copy of the daemon and terminate this one)
* Potential Command and Control:
ChangeConfigOption (does it change the on disk config or just the running one?)
StartPaused (start a new copy of the code Paused, requires running simultaneous code)
SoftTerminate (terminate the instance when threads are finished)
NOTE: The last two could be useful for the following strategy:
a) StartPaused
b) Pause (this one)
c) Resume (new one)
d) SoftTerminate(this one)