Here's an update on resource providers and placement. I've been away
from OpenStack for most of this week, so apologies if I have missed
something important. Please follow up with anything I've missed (or
questions or comments or anything else).

# What Matters Most

Traits are still top of the priority stack. Links below.
Conversation is also happening around the need to make claims,
with some different ideas on scope. More on that, also below.

# What's Changed

Andrey Volkov stepped up to move placement api-ref work forward.
There's now a CI job gate-placement-api-ref-nv which will publish
drafts of placement-api-ref work. With this in place we can start
making real progress on those docs. More in the #docs theme below.

The repo for osc-placement has been created:
https://github.com/openstack/osc-placement

# 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).

* Helping to create and evaluate functional tests of the resource
   tracker and the ways in which it and nova-scheduler use the
   reporting client. For some info see
   https://etherpad.openstack.org/p/nova-placement-functional
   and talk to edleafe.

* Performance testing. If you have access to some nodes, some basic
  benchmarking and profiling would be very useful. See the
  performance section below.

# Main Themes

## Traits

The work to implement the traits API in placement is happening at

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

It's getting close. The sooner we get that happy, the sooner we can
make progress on the rest of the themes. What's left are mostly
details.

## Ironic/Custom Resource Classes

A spec for "custom resource classes in flavors" that describes the
stuff that will actually make use of custom resource classes has merged:

      https://review.openstack.org/#/c/446570/

Over in ironic some functional and integration tests have started:

      https://review.openstack.org/#/c/443628/

## Claims in the Scheduler

A "Super WIP" spec for claims in the scheduler has started at

    https://review.openstack.org/#/c/437424/

There are several different points of view on how this is supposed
to work. We need to resolve those differences to make some progress.
We all seem to agree on the long term plan, but not on how to get
there in the medium term.

## Shared Resource Providers

https://blueprints.launchpad.net/nova/+spec/shared-resources-pike

Progress on this will continue once traits and claims have moved forward.

## Nested Resource Providers

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

The spec for this has been updated with what was learned at the PTG
and to move it to Pike, needs to be reviewed.

## Docs

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

As mentioned above Andrey Volkov has made some excellent progress on
making this work. There's now a draft publishing job in place, but
with the current state of logs.openstack.org it's hard to see if it
is working correctly. If not, we'll fix it.

With this stuff in place it should now be possible to start filling
in the relevant documentation for the API. Note that at the moment
this is mostly a manual process; the author of the docs is expected
to gather the relevant JSON samples from running their own requests
against the API (using, for example, curl) and formatting
appropriately. I've been using gabbi-run for this as it makes it
easy to tweak and capture the JSON being sent.

Find me (cdent) or Andrey (avolkov) if you want to help out or have
other questions.

## Performance

We're aware that there are some redundancies in the resource tracker
that we'd like to clean up

     http://lists.openstack.org/pipermail/openstack-dev/2017-January/110953.html

but it's also the case that we've done no performance testing on the
placement service itself.

We ought to do some testing to make sure there aren't unexpected
performance drains.

# Other Code/Specs

* 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. We had some discussion in the weekly subteam
     meeting about what the use cases are for this, starting

     
http://eavesdrop.openstack.org/meetings/nova_scheduler/2017/nova_scheduler.2017-03-06-14.00.log.html#l-120

     The gist is: "we should do this when we can articulate the
     problem the notifications will solve". Comment on the review if
     you have some opinions on that.

* https://review.openstack.org/#/c/448791/
   Idempotent PUT for resource classes. This is something that was
   discovered while evaluating some resource tracker code. Has a bp
   but probably needs a spec:
   https://blueprints.launchpad.net/nova/+spec/placement-put-resource-class

* https://review.openstack.org/#/c/444065/
   Fixing a typo in the resource providers spec.

* https://review.openstack.org/#/c/448282/
   https://review.openstack.org/#/c/448283/
   Two changes in the os-traits library. One for adding some
   networking related traits, another for restructuring the library
   to remove some boilerplate.

   Some fun discussion happening on this stuff to make it a bit more
   future proof and avoid duplication.

* https://review.openstack.org/#/c/447401/
   Adding a reference to resource provide traits spec about the
   os-traits library.

* https://bugs.launchpad.net/nova/+bug/1661312
     Race condition for allocations during evacuation. Known bug, not
     sure of solution. Needs an owner.

* https://bugs.launchpad.net/nova/+bug/1632852
     Cache headers not produced by placement API. This was assigned to
     several different people over time, but I'm not sure if there is
     any active code.

* https://etherpad.openstack.org/p/placement-newton-leftovers
      There's still some lingering stuff on here, some of which is
      mentioned elsewhere in this message, but not all.

# End

Go think about claims.

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