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 [email protected]<mailto:[email protected]>, and delete the original
message.
Your cooperation is appreciated.
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to :
[email protected]<mailto:[email protected]>
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 [email protected], and delete the original message.
Your cooperation is appreciated.
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp