Change scheduler from proxy to queryable entity
The current scheduler model of having it proxy requests to computes makes it difficult to reason about the workflow involved in creating/resizing an instance, and makes future state management work unwieldy. Nova, most likely conductor, should query the scheduler for placement decisions and then handle the workflow for create/resize itself.
A new call will be added to the scheduler which will return a list of hosts that can be used for instance placement.
Blueprint information
- Status:
- Complete
- Approver:
- Russell Bryant
- Priority:
- High
- Drafter:
- Andrew Laski
- Direction:
- Approved
- Assignee:
- Andrew Laski
- Definition:
- Approved
- Series goal:
- Accepted for havana
- Implementation:
- Implemented
- Milestone target:
- 2013.2
- Started by
- Andrew Laski
- Completed by
- Russell Bryant
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Call scheduler for run_instance from conductor
Addressed by: https:/
WIP Query scheduler for host to build instance on
Addressed by: https:/
Set up 'compute_task' conductor namespace.
Addressed by: https:/
New select_destinations scheduler call
What's completed up to this point is making the scheduler queryable. It is being queried for cold migrations and unshelving instances. Future blueprint(s) will address other code paths currently going through the scheduler and modifying them to query it instead.
Addressed by: https:/
Remove unused code from compute manager
Work Items
Dependency tree
* Blueprints in grey have been implemented.