[placement] update 19-28

Chris Dent cdent+os at anticdent.org
Fri Jul 19 11:18:00 UTC 2019


HTML: https://anticdent.org/placement-update-19-28.html

This is pupdate 19-28. Next week is the Train-2 milestone.

# Most Important

Based on the discussion on the [PTG attendance
thread](http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007654.html)
and the notes on the [related
etherpad](https://etherpad.openstack.org/p/placement-shanghai-ptg)
I'm going to tell the Foundation there will be approximately seven
Placement team members at Shanghai but formal space or scheduling
will not be required. Instead any necessary discussions will be
arranged on premise. If you disagree with this, please speak up
soon.

The main pending feature is consumer types, see below.

# What's Changed

* A bug in the resource class cache used in the placement server was
   found and [fixed](https://review.opendev.org/671341). It will be
   interesting to see how this impacts performance. While it
   increases database reads by one (for most requests) it removes a
   process-wide lock, so things could improve in threaded servers.

* os-resource-classes
   [0.5.0](https://pypi.org/project/os-resource-classes/) was
   released, adding FPGA and PGPU resource classes.

     It's been discussed in IRC that we may wish to make 1.x releases
     of both os-resource-classes and os-traits at some point to make
     it clear that they are "real". If we do this, I recommend we do
     it near a cycle boundary.

* An [integrated-gate-placement](https://review.opendev.org/669309)
   zuul template has merged. A [placement change to use
   it](https://review.opendev.org/671257) is ready and waiting to
   merge. This avoids running some tests which are unrelated; for
   example, cinder-only tests.

# Specs/Features

Since spec freeze for most projects is next week and placement has
merged all its specs, until U opens, I'm going to skip this section.

# Stories/Bugs

(Numbers in () are the change since the last pupdate.)

There are 22 (-1) stories in [the placement
group](https://storyboard.openstack.org/#!/project_group/placement).
0 (0) are [untagged](https://storyboard.openstack.org/#!/worklist/580).
2 (-1) are [bugs](https://storyboard.openstack.org/#!/worklist/574). 5 (0)
are [cleanups](https://storyboard.openstack.org/#!/worklist/575). 10
(-1) are [rfes](https://storyboard.openstack.org/#!/worklist/594).
4 (0) are [docs](https://storyboard.openstack.org/#!/worklist/637).

If you're interested in helping out with placement, those stories
are good places to look.

* Placement related nova [bugs not yet in progress](https://goo.gl/TgiPXb)
   on launchpad: 17 (1).

* Placement related nova [in progress bugs](https://goo.gl/vzGGDQ) on
   launchpad: 4 (0).

# osc-placement

osc-placement is currently behind by 11 microversions.

* <https://review.opendev.org/666542>
   Add support for multiple member_of. There's been some useful
   discussion about how to achieve this, and a consensus has emerged
   on how to get the best results.

# Main Themes

## Consumer Types

Adding a type to consumers will allow them to be grouped for various
purposes, including quota accounting.

* <https://review.opendev.org/#/q/topic:bp/support-consumer-types>
   This is currently the migration to add the necessary table and
   column.

## Cleanup

Cleanup is an overarching theme related to improving documentation,
performance and the maintainability of the code. The changes we are
making this cycle are fairly complex to use and are fairly complex
to write, so it is good that we're going to have plenty of time to
clean and clarify all these things.

As mentioned for a few weeks, one of the important cleanup tasks
that is not yet in progress is updating the
[gabbit](https://opendev.org/openstack/placement/src/branch/master/gate/gabbits/nested-perfload.yaml)
that creates the nested topology that's used in nested performance
testing. We've [asked the startlingx
community](http://lists.starlingx.io/pipermail/starlingx-discuss/2019-July/005330.html)
for input.

Another cleanup that needs to start is satisfying the community wide
goal of [PDF doc
generation](https://storyboard.openstack.org/#!/story/2006110). I
did some experimenting on this and while I was able to get a book
created, the number of errors, warnings, and manual interventions
required meant I gave up until there's time to do a more in-depth
exploration and learn the tools.

# Other Placement

Miscellaneous changes can be found in [the usual
place](https://review.opendev.org/#/q/project:openstack/placement+status:open).

There are two [os-traits
changes](https://review.opendev.org/#/q/project:openstack/os-traits+status:open)
being discussed. And zero [os-resource-classes
changes](https://review.opendev.org/#/q/project:openstack/os-resource-classes+status:open)
(yay!).

# Other Service Users

New discoveries are added to the end. Merged stuff is removed.
Anything that has had no activity in 4 weeks has been removed.

* <https://review.openstack.org/#/q/topic:bug/1819923>
   Nova: nova-manage: heal port allocations

* <https://review.openstack.org/650188>
   nova-spec: Allow compute nodes to use DISK_GB from shared storage RP

* <https://review.opendev.org/659233>
   Cyborg: Placement report

* <https://review.opendev.org/662229>
   helm: add placement chart

* <https://review.opendev.org/656023>
   Nova: Use OpenStack SDK for placement

* <https://review.opendev.org/612497>
   Nova: Spec: Provider config YAML file

* <https://review.opendev.org/634551>
   libvirt: report pmem namespaces resources by provider tree

* <https://review.opendev.org/660852>
   Nova: Remove PlacementAPIConnectFailure handling from AggregateAPI

* <https://review.opendev.org/#/q/topic:bp/support-move-ops-with-qos-ports>
   Nova: support move ops with qos ports

* <https://review.opendev.org/664689>
   Nova: get_ksa_adapter: nix by-service-type confgrp hack

* <https://review.opendev.org/666202>
   Blazar: Create placement client for each request

* <https://review.opendev.org/667952>
   nova: Support filtering of hosts by forbidden aggregates

* <https://review.opendev.org/669079>
   blazar: Send global_request_id for tracing calls

* <https://review.opendev.org/668252>
   Nova: Update HostState.\*\_allocation_ratio earlier

* <https://review.opendev.org/670112>
   Nova: WIP: Add a placement audit command

* <https://review.opendev.org/586960>
   zun: [WIP] Use placement for unified resource management

* <https://review.opendev.org/671371>
   neutron: Filter placement API endpoint by type too

* <https://review.opendev.org/671638>
   OSA: Install placement osc plugin on utility machines

* <https://review.opendev.org/671478>
   Kayobe: Build placement images by default

* <https://review.opendev.org/671312>
   blazar: Fix placement operations in multi-region deployments

# End

If you've done any performance or scale testing with placement, I'd
love to hear about your observations. Please let me know.

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


More information about the openstack-discuss mailing list