I like idea of scheduling actions overall. The idea of a generic scheduling service also appeals to me a lot. The question is how do you generalize the service. I'd love to see your write up. -jOrGe W.
On Feb 16, 2011, at 4:35 PM, Adrian Otto wrote: Glen, I definitely recognize the value in having scheduling capability. I wrote a high level draft of a REST API for a generic scheduler to be used for batch job processing. Scheduled events are discussed regularly by users of queue systems that want certain things to happen on regular intervals. Considering that a scheduler function is useful, and could be used for many different services within the OpenStack system, I suggest thinking about a separate service that's dedicated to executing scheduled jobs that may need to interact with multiple services within OpenStack. This way it could be used to act upon not only /severs, but any other resource(s) in any service(s). Imbedding the functionality within nova is probably an architectural mistake. Filing a blueprint for a separate scheduler service sounds like a good idea. Adrian On Feb 16, 2011, at 2:02 PM, Glen Campbell wrote: The proposed compute API 1.1 has a specification for server actions (Sec. 4.4) with the endpoint: /servers/{id}/action The actual action is specified as the body of the POST request, and the implication is that the action is performed immediately, or as soon as possible. I'd like us to consider changing this "action" resource into a "calendar" or perhaps "schedule" resource: /servers/{id}/schedule{/year{/month{/day{/hour{/minute}}}}} This would provide a generalized way of performing actions on a scheduled basis. For example, instead of having to wake up at 2AM to reboot a server (for whatever reason), the administrator could schedule that event: /servers/{id}/schedule/2011/2/17/02/00 By using the default resource (without the day or time specified), the meaning would be synonymous with the proposed "/action" resource; i.e., perform it NOW, or as soon as possible. The schedule resource could have additional uses; for example, a GET request could return the currently-scheduled actions for a particular server. Glen Confidentiality Notice: This e-mail message (including any attached or embedded documents) is intended for the exclusive and confidential use of the individual or entity to which this message is addressed, and unless otherwise expressly indicated, is confidential and privileged information of Rackspace. Any dissemination, distribution or copying of the enclosed material is prohibited. If you receive this transmission in error, please notify us immediately by e-mail at ab...@rackspace.com<mailto:ab...@rackspace.com>, and delete the original message. Your cooperation is appreciated. _______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : openstack@lists.launchpad.net<mailto:openstack@lists.launchpad.net> Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp Confidentiality Notice: This e-mail message (including any attached or embedded documents) is intended for the exclusive and confidential use of the individual or entity to which this message is addressed, and unless otherwise expressly indicated, is confidential and privileged information of Rackspace. Any dissemination, distribution or copying of the enclosed material is prohibited. If you receive this transmission in error, please notify us immediately by e-mail at ab...@rackspace.com<mailto:ab...@rackspace.com>, and delete the original message. Your cooperation is appreciated. _______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : openstack@lists.launchpad.net<mailto:openstack@lists.launchpad.net> Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp
_______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : openstack@lists.launchpad.net Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp