Group baremetal nodes for scheduling
Right now in Nova we have a way to determine which machines or groups of machines to send instance boot requests using host aggregates. This works by creating a host aggregate in nova and registering nova service hosts with this host aggregate. matching data in key:value form can be added to things like flavors and host aggregates. The scheduler can then pick this up and determine where to send instance boot requests.
This method of grouping nodes breaks down a little when we start thinking about nova baremetal nodes. Many nova baremetal nodes can be registered with a single host and there is no way to group different types of hardware (unless a new service host is created, which is less than ideal and also limits the number of host aggs a host can be associated with).
It would be nice to have a similar way of grouping and matching nodes for nova baremetal, but rather than being associated with service hosts the grouping is based on actually baremetal nodes.
One example use case for this is in TripleO Tuskar where we would like to group nodes based on hardware type and deploy specific services onto different types of hardware.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Drafting
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Simply put - you want "node aggregates" as well as "host aggregates". Seems totally reasonable. Could be done by allowing you to add a specific node to a host aggregate rather than its host. -- @markmcSimply put - you want "node aggregates" as well as "host aggregates". Seems totally reasonable. Could be done by allowing you to add a specific node to a host aggregate rather than its host. -- @markmc
If you are still working on this, please re-submit via nova-specs. If not, please mark as obsolete, and add a quick comment to describe why. --johnthetubaguy (20th April 2014)