Support multiple default schedule availability zones

Registered by Belmiro Moreira

I updated the description of this blueprint because previously generated a lot of confusion about the goal.

The goal of this blueprint is to have multiple schedule availability zones as default instead only one.
This means:
deprecate "default_schedule_zone" configuration option and have instead "default_schedule_zones=[]"

When an instance is created, if the user doesn't define an availability zone, it will be schedule into one node in the list of default schedule availability zones.
The advantage of this aproach is when an deployment has multiple availability zones the instances will be spread between them instead overload only one, if users don't specify an availability zone.

Implementation:
- deprecate "default_schedule_zone" and create "default_schedule_zones" option.
- if default_schedule_zone is present in configuration use this value to not break current configurations (default_schedule_zones=[default_schedule_zone])
- if an user doesn't specify an availability zone it shouldn't be added in the DB (remove the current behaviour). Anyway when query for the avz of an instance nova doesn't use this value.
- change AvailabilityZoneFilter to support multiple default azs.

Blueprint information

Status:
Started
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Belmiro Moreira
Definition:
Review
Series goal:
None
Implementation:
Good progress
Milestone target:
None
Started by
Belmiro Moreira

Related branches

Sprints

Whiteboard

I'd like to see this discussed on the openstack-dev list. There's also a scheduling sub-team that would probably provide some good feedback on this. https://wiki.openstack.org/wiki/Meetings/Scheduler --russellb

I updated the description of this blueprint because previously generated a lot of confusion about the goal.
-- Belmiro

This blueprint was discussed in the "scheduler sub-group meeting" (18/06/2013)
It was discussed that when a compute node belongs to multiple avz a random one is selected (basically keeping the current implementation).
-- Belmiro

deferred from icehouse-3 to "next": http://lists.openstack.org/pipermail/openstack-dev/2014-February/026335.html

Unapproved - please re-submit via nova-spec --johnthetubagy (20th March 2014)

Removed from next, as next is now reserved for near misses from the last milestone --johnthetubaguy

Gerrit topic: https://review.openstack.org/#q,topic:bp/implements,n,z

Addressed by: https://review.openstack.org/87098
    Define multiple default schedule zones

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.