Placement update 26.
First a note from your editor: This will be the last of these I do
until July 7th. I'll be taking a break from sometime next week until
July. If someone else would like to do the three updates on the state of
placement and resource providers in that window that would be great.
# What Matters Most
It's actually a bit hard to be clear at the moment. Things are a bit
up in the air with some unresolved questions. The work for how to
deal with claims in the scheduler was proceeding apace at
https://review.openstack.org/#/q/status:open+topic:bp/placement-claims
and then at this week's scheudler subteam meeting we started talking
about "complex" allocations (reflected in an email thread:
http://lists.openstack.org/pipermail/openstack-dev/2017-June/117913.html
and etherpad:
https://etherpad.openstack.org/p/placement-allocations-straw-man.
and a proposed (wip-ish) spec:
https://review.openstack.org/#/c/471927/
). Part of what's up in the air about this is a) there isn't yet
agreement that this is the right way to go, b) it's not clear what
the impact of this change will be on the processing done in the
filter scheduler, mostly in terms of how the provided information is
used (if at all) during the filtering and weighing.
In the thread linked above there's a series of question that are
trying to shine lights into the various corners so we can make an
informed decision. From my perspective, writing answers to those
questions will help us to resolve the current situation and help us
to not get caught in these common cycles of questioning that we seem
to do when working on scheduler-related stuff.
# What's Changed
Incremental progress across the board. Some new code linked in
below.
# Help Wanted
Areas where volunteers are needed.
* General attention to bugs tagged placement:
https://bugs.launchpad.net/nova/+bugs?field.tag=placement
* Helping to create api documentation for placement (see the Docs
section below).
# Main Themes
## Claims in the Scheduler
Work is in progress on having the scheduler make resource claims but
is having a period of reflection and discussion. See the "matters
most" section above.
https://review.openstack.org/#/q/status:open+topic:bp/placement-claims
## Traits
The traits blueprint has been completed, based on the work described
in the spec, but we still have no way to make use of the traits:
* The placement API and the get_all_by_filters method on the
ResourceProviderList object have no way of expressing that a
request for resource providers should be filtered by a set of
trait requirements (or preferences).
* There's nothing on the nova-scheduler side of things which allows
expressing a trait that would be sent to the placement API.
There is a new spec (for queens) for the second part:
https://review.openstack.org/#/c/468797/
And there is some old code for the first part that will need to
revitalized and will likely be impacted by the outcome of "what
matters most" above:
https://review.openstack.org/#/c/429364/
## Shared Resource Providers
Currently pending resolution of the complex allocations discussion.
## Nested Resource Providers
Work has resumed on nested resource providers.
https://review.openstack.org/#/q/status:open+topic:bp/nested-resource-providers
Currently having some good review discussion on data structures and
graph traversal and search. It's a bit like being back in school.
## User and Project IDs in Allocations
This will allow placement allocations to be considered when doing
resource accounting for things like quota. User id and project id
information is added to allocation records and a new API resource is
added to be able to get summaries of usage by user or project.
https://review.openstack.org/#/q/topic:bp/placement-project-user
## Docs
Lots of placement-related api docs have merged or are in progress:
topics:
* https://review.openstack.org/#/q/status:open+topic:cd/placement-api-ref
Soon the whole API will be documented, so it will be time to turn on
a publishing job (only drafts are created now, as far as I recall).
It's interesting to note that in the process of documenting the API
we found (and fixed) a few (minor) bugs.
# Other Code/Specs
* https://review.openstack.org/#/c/472378/
A proposed fix to using multiple config locations with the
placement wsgi app. There's some active discussion on whether the
solution in mind is the right solution, or even whether the bug is
a bug (it is!).
* https://review.openstack.org/#/c/470578/
Add functional test for local delete allocations
* https://review.openstack.org/#/c/460147/
Use DELETE inventories method in report client.
* https://review.openstack.org/#/c/427200/
Add a status check for legacy filters in nova-status.
* https://review.openstack.org/#/c/453916/
Don't send instance updates from compute if not using filter
scheduler
* https://review.openstack.org/#/q/project:openstack/osc-placement
Work has started on an osc-plugin that can provide a command
line interface to the placement API.
It's quite likely that this code is going to need to be adopted by
someone new.
* https://review.openstack.org/#/c/457636/
Devstack change to install that plugin.
* https://review.openstack.org/#/c/469037/
Cleanups for _schedule_instances()
* https://review.openstack.org/#/c/469047/
Update placement.rst to link to more specs
* https://review.openstack.org/#/c/469048/
Provide more information about installing placement
* https://review.openstack.org/#/c/468928/
Disambiguate resource provider conflict message
* https://review.openstack.org/#/c/471067/
Use util.extract_json in allocations handler
# End
\o/
--
Chris Dent ┬──┬◡ノ(° -°ノ) https://anticdent.org/
freenode: cdent tw: @anticdent
__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev