Thanks to edleafe for doing last week's resource providers and placement 
update. This one will try to situate things for next week's PTG. Because of the 
PTG there will be no update next week. If everything goes to plan there should 
be a wealth of etherpads and some summaries which will be further summarized in 
the following week.

# What Matters Most

To make sure we address all the most relevant stuff next week, it would be 
useful for anyone interested or invested in placement to have a review of some 
etherpads, even if you aren't going to be at the PTG.

The overarching nova etherpad for the PTG is at:

    https://etherpad.openstack.org/p/nova-ptg-pike

The list of things related to placement is long enough to get its own:

    https://etherpad.openstack.org/p/nova-ptg-pike-placement

There's an also an etherpad for doing a retrospective on the ocata cycle. That 
has some placement related things on it. If you have some things to say on how 
placement development went this cycle, good or bad, please add them to:

    https://etherpad.openstack.org/p/nova-ocata-retrospective

# What's Changed

In the last week or so the main things to have changed are merges to master and 
backports of tweaks to status checks and deployment ordering (in systems like 
TripleO) and a fair number of bugs (for example, two fixes to generated SQL to 
make it work with postgresql). Master is now pike, so the functionality that 
didn't make it into ocata is once again being actively worked on (see lots of 
links below).

The full extent of the "Placement API Developer Notes" has merged. It's at:

    https://docs.openstack.org/developer/nova/placement_dev.html

If you're working on placement and have not read that, it's probably worth 
reading. If you find that something is missing, please say so so we can figure 
out how to fix it.

# Main Themes

The first two items listed below are the immediate feature priorities for 
placement.

## Custom Resource Classes (Ironic Inventories)

https://review.openstack.org/#/q/status:open+topic:bp/custom-resource-classes

We hoped to get this into Ocata but we didn't manage to bring it together in a 
way that was comprehensible and tested enough to be confident. There's since 
been some adjustments that should help with that but there remain some concerns 
on where in the layers of code the inventory handling should happen.

## Real use of Shared Resource Providers

https://review.openstack.org/#/q/status:open+topic:bp/shared-resources-pike

One of the big payoffs of the resource providers concept is that we'll finally 
be able to allocate use of shared resources (such as farms of disk) in a 
rational fashion. The changes at the topic above start that work. There's also 
an etherpad where discussion of some of
the options is in progress:

    https://etherpad.openstack.org/p/decision-finding-shared-inventory

You'll see from that we've still got some distance to go before we're all on 
the same page about how this is supposed to work.

## Resource Provider Traits

https://review.openstack.org/#/q/status:open+topic:bp/resource-provider-traits
https://review.openstack.org/#/q/status:open+topic:bp/resource-provider-tags

(We should decide on just one bp name here.)

This is the qualitative aspect of resource providers (e.g., disk which is SSD) 
and will allow requests to express preferences or requirements for types of 
things, not just quantities of things.

## Nested Resource Providers

https://review.openstack.org/#/q/status:open+topic:bp/nested-resource-providers

How to represent resources that are within other resources. Mostly to do with 
things like NUMA functionality and PCI devices hosted on a compute node.

## Docs

https://review.openstack.org/#/q/topic:cd/placement-api-ref

The start of creating an API ref for the placement API. Not a lot there yet as 
I haven't had much of an opportunity to move it along. There is, however, 
enough there for content to be started, if people have the opportunity to do 
so. Check with me to divvy up the work if you'd like to contribute.

## Claims into the Scheduler

This is something that will be talked about at the PTG as part of long term 
placement planning. Eventually requesting and claiming resources will be a 
single request to the placement API. We need to figure out the flow of how that 
is going to work.

# Other Code/Specs

Miscellaneous changes in progress. Bugs fixes, cleanups, leftovers. These need 
review and eventual merging.

* https://review.openstack.org/#/c/428612/
  Better exception and response message when failing to create a
  resource class.

* https://bugs.launchpad.net/nova/+bug/1635182
  Fixing it so we don't have to add json_error_formatter everywhere.
  There's a collection of related fixes attached to that bug report.

  Pushkar, you might want to make all of those have the same topic, or
  put them in a stack of related changes.

* https://review.openstack.org/#/q/status:open+topic:valid_inventories
  Fixes that ensure that we only accept valid inventories when setting
  them.

* https://review.openstack.org/#/c/416751/
  Removing the Allocation.create() method which was only ever used in
  tests and not in the actual, uh, creation of allocations.

* https://review.openstack.org/#/c/427330/
  Avoid deprecation warnings from oslo_context.

* https://review.openstack.org/#/q/topic:bp/delete-inventories-placement-api
  We need to be able to delete all the inventory hosted by one
  resource provider in one request. Right now you need one delete for
  each class of resource.

* https://review.openstack.org/#/c/418393/
  A spec for improving the level of detail and structure in placement
  error responses so that it is easier to distinguish between
  different types of, for example, 409 responses.

* https://review.openstack.org/#/c/423872/
  Spec for versioned-object based notification of events in the
  placement API.

* https://review.openstack.org/#/c/392891/
  CORS support in the placement API. We'll need this for browser-side
  clients.

* https://review.openstack.org/#/c/382613/
  A little demo script for showing how a cronjob to update inventory
  on a shared resource provider might work. This has been around for a
  long time, I created it because it seemed like having a sort of demo
  would be good, but it's been sitting around for a long time. It may
  not be aligned with what we need. If so I'd like to abandon it.

# Other Things

We started two etherpads to discuss plans for pike and the need for greater 
functional testing, but didn't make a ton of progress on either:

* https://etherpad.openstack.org/p/nova-scheduler-pike
* https://etherpad.openstack.org/p/nova-placement-functional

# End Matter

Thanks for reading this far. If you will be at the PTG next week, see you 
there. If you won't, we'll miss you and we'll make sure there's
information available that reflects what happened.

--
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

Reply via email to