Cells: keep some compute hosts empty in a child cell

Registered by John Garbutt

Its really useful to keep some hosts empty in a child cell, so its easy to do upgrades using live-migrate, and leaves room for things like resizes.

The plan is to add this extra config:
CONF.cells.host_reserve_percent

Where you are able to select what percentage of hosts from the child cell, will not have their capacity reported to the parent cell.

The hosts with the most free memory are considered to by "empty", or at least the "most empty" so are selected first, before reserving any hosts that might not be completely empty.

It is still up to the child cells scheduler to be correctly stacking (rather than spreading) to ensure the hosts remain empty.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
John Garbutt
Direction:
Needs approval
Assignee:
John Garbutt
Definition:
Drafting
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

Since this is basically like a scheduler filter, this doesn't really need a spec, but I don't want to self-approve the blueprint either. --johnthetubaguy 28th October 2014

Gerrit topic: https://review.openstack.org/#q,topic:bp/cells-host-reserve-scheduling,n,z

Addressed by: https://review.openstack.org/125607
    cells: adds CONF.cells.host_reserve_percent

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.