IP capacity awarness (filter) via aggregate metadata
Problem description:
Some IP subnets can be restricted to a subset of hosts, due to an operators network configuration. In this environment, it means you could build somewhere that has no public IPs available.
This may seem familiar to some of you as it was being addressed previously via:
However as far as I can tell this work has halted.
Proposal:
A stopgap/workaround until subnet data is available in the `host_state` vars for scheduler filters.
For the time being I believe we could use metadata that contains subnets within aggregates to accomplish the same thing short term.
This should be easy to migrate from to an eventual solution where the subnet data could be available within the `host_state` variable.
A first pass / POC for this has been made here:
Current requirements to make this work:
Aggregates that contain a comma separated list of subnets within a `subnets` key that detail the subnets that hosts within the aggregate are using.
Performance impact with current POC:
The first host that scheduling is attempted against will invoke a call to neutron to get IP availability and cache it so it can be checked against on each other potential host.
Blueprint information
- Status:
- Started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Kevin Rasmussen
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Needs Code Review
- Milestone target:
- None
- Started by
- Kevin Rasmussen
- Completed by