[placement] update 18-47

Chris Dent cdent+os at anticdent.org
Fri Nov 23 15:06:53 UTC 2018


HTML: https://anticdent.org/placement-update-18-47.html

It's been a while since the last placement update. Summit happened.
Seemed pretty okay, except for the food. People have things they'd
like to do with placement.

# Most Important

We're starting to approach the point where we're thinking about the
possibility of maybe turning off placement-in-nova. We're not there
yet, and as is always the case with these kinds of things, it's the
details at the end that present the challenges. As such there are a
mass of changes spread around nova, placement, devstack, grenade,
puppet and openstack-ansible related to making things go. More
details on those below, but what we need is the same as ever:
reviews. Don't be shy. If you're not a core or not familiar with
placement, reviews are still very helpful. A lot of the patches take
the form of "this _might_ be the right way to do this".

# What's Changed

There is now a placement-manage command which can do database
migrations, driven by alembic. This means that the devstack patch
which uses the extracted placement can merge soon. Several other
testing related (turning on tempest and grenade for placement)
changes depend-on that.

Matt did a placement-status command which has a no-op we-are-here
upgrade check. We've already met the python3 goals (I think?), so I
reckon placement is good to go on community-wide goals. Woot.

The PlacementFixture that placement provides for other projects to
do functional tests with it has merged. There's a patch for [nova
using it](https://review.openstack.org/#/c/617941/).

The spec for [counting quota usage in
placement](https://review.openstack.org/#/c/509042/) has been
revived after learning at summit that a proposed workaround that
didn't use placement wasn't really all that good for people using
cells v2.

# Bugs

* Placement related [bugs not yet in progress](https://goo.gl/TgiPXb): 17.
   +1.
* [In progress placement bugs](https://goo.gl/vzGGDQ) 13. +2

# Specs

Summit and U.S. Thanksgiving has disrupted progress on some of
these, but there are still plenty of specs awaiting their future.

_Many_ of these have unaddressed negative review comments.

* <https://review.openstack.org/#/c/544683/>
   Account for host agg allocation ratio in placement
   (Still in rocky/)

* <https://review.openstack.org/#/c/595236/>
   Add subtree filter for GET /resource_providers

* <https://review.openstack.org/#/c/597601/>
   Resource provider - request group mapping in allocation candidate

* <https://review.openstack.org/#/c/549067/>
   VMware: place instances on resource pool
   (still in rocky/)

* <https://review.openstack.org/#/c/555081/>
   Standardize CPU resource tracking

* <https://review.openstack.org/#/c/599957/>
   Allow overcommit of dedicated CPU
   (Has an alternative which changes allocations to a float)

* <https://review.openstack.org/#/c/591037/>
   Modelling passthrough devices for report to placement

* <https://review.openstack.org/#/c/603955/>
   Nova Cyborg interaction specification.

* <https://review.openstack.org/#/c/601596/>
   supporting virtual NVDIMM devices

* <https://review.openstack.org/#/c/603352/>
   Spec: Support filtering by forbidden aggregate

* <https://review.openstack.org/#/c/552924/>
   Proposes NUMA topology with RPs

* <https://review.openstack.org/#/c/569011/>
   Count quota based on resource class

* <https://review.openstack.org/#/c/141219/>
   Adds spec for instance live resize

* <https://review.openstack.org/#/c/612497/>
   Provider config YAML file

* <https://review.openstack.org/#/c/509042/>
   Propose counting quota usage from placement and API database

* <https://review.openstack.org/603545>
   Resource modeling in cyborg.

# Main Themes

## Making Nested Useful

Progress is being made on gpu-reshaping for libvirt and xen:

* <https://review.openstack.org/#/q/topic:bp/reshape-provider-tree+status:open>

Making use of nested is bandwidth-resource-provider:

* <https://review.openstack.org/#/q/status:open+project:openstack/nova+branch:master+topic:bp/bandwidth-resource-provider>

Somewhat related to nested are a stack of changes to how often the
ProviderTree in the resource tracker is checked against placement,
and a variety of other "let's make this more right" changes in the
same neighborhood:

* Stack at: <https://review.openstack.org/#/c/615646/>

## Extraction

(There's an
[etherpad](https://etherpad.openstack.org/p/placement-extract-stein-4)
which tracks some of the work related to extraction. Please refer to
that for additional information.)

TripleO and OpenStack-Ansible are both working on tooling to install
and/or upgrade to extracted placement:

* <https://review.openstack.org/#/q/topic:tripleo-placement-extraction>
* <https://review.openstack.org/#/q/project:openstack/openstack-ansible-os_placement>

libvirt support for GPU reshaping:

* <https://review.openstack.org/#/c/599208/>

Grenade and tempest testing for extracted placement:

* Extracted placement in devstack:
   <https://review.openstack.org/600162>
* Turning on tests: <https://review.openstack.org/#/c/617565/>
* Some fixes to grenade using python3:
   <https://review.openstack.org/#/c/619728/>

A replacement for `placeload` performance testing that was in the
`nova-next` job: <https://review.openstack.org/#/c/619248/>. This
might be of interest to people trying to do testing of live
services without devstack. It starts with a basic node, turns on
mysql, runs placement with uwsgi, and does the placeload testing.
Note that this found a pretty strange [bug in
_ensure_aggregates](https://bugs.launchpad.net/nova/+bug/1804453).

Documentation tuneups:

* Front page: <https://review.openstack.org/#/c/619273/>
* Release-notes: <https://review.openstack.org/#/c/618708/> This is
   blocked until we refactor the release notes to reflect _now_
   better.
* The main remaining task here is participating in
   [openstack-manuals](https://docs.openstack.org/doc-contrib-guide/doc-index.html).

We've been putting off making a decision about os-resource-classes.
Anyone have strong opinions?

# Other

Besides the 20 or so [open
changes](https://review.openstack.org/#/q/status:open+project:openstack/placement)
in placement itself, and those mentioned above, here are some other
changes that may be of interest.

* <https://review.openstack.org/#/q/topic:bp/initial-allocation-ratios>
   Improve handling of default allocation ratios

* <https://review.openstack.org/#/q/topic:minimum-bandwidth-allocation-placement-api>
   Neutron minimum bandwidth implementation

* <https://review.openstack.org/#/c/602160/>
   Add OWNERSHIP $SERVICE traits

* <https://review.openstack.org/#/c/586960/>
   zun: Use placement for unified resource management

* <https://review.openstack.org/#/q/topic:cd/gabbi-tempest-job>
   Using gabbi-tempest for integration tests.

* <https://review.openstack.org/#/q/project:openstack/blazar+topic:bp/placement-api>
   Blazar using the placement-api

* <https://review.openstack.org/619626>
   Tenks doing some node management, with a bit of optional
   placement.

* <https://review.openstack.org/617273>
   Extracted placement in loci

* <https://review.openstack.org/#/c/613589/>
   Extracted placement in kolla

* <https://review.openstack.org/#/c/613629/>
   Extracted placement in kolla-ansible

# End

Lot going on. Thanks to everyone for their contributions.

-- 
Chris Dent                       ٩◔̯◔۶           https://anticdent.org/
freenode: cdent                                         tw: @anticdent


More information about the openstack-discuss mailing list