[placement] update 19-34

Chris Dent cdent+os at anticdent.org
Fri Aug 30 09:50:53 UTC 2019


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

Welcome to placement update 19-34. Feature Freeze is the week of
September 9th. We have features in progress in placement itself
(consumer types) and osc-placement that would be great to land.

# Most Important

In addition to the features above, we really need to get started on
tuning up the documentation so that `same_subtree` and friends can
be used effectively.

It is also time to start thinking about what features, if any, need
to be pursued in Ussuri. If there are few, that ought to leave time
and energy for getting the osc-placement plugin more up to date.

And, there are plenty of stories (see below) that need attention.
Ideally we'd end every cycle with zero stories, including removing
ones that no longer make sense.

# What's Changed

* Tetsuro has picked up the baton for performance and refactoring
   work and found [some](https://review.opendev.org/677120)
   [improvements](https://review.opendev.org/677209) that have
   merged. There's additional work in progress (noted below).

# Stories/Bugs

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

There are 25 (2) stories in [the placement
group](https://storyboard.openstack.org/#!/project_group/placement).
0 (0) are [untagged](https://storyboard.openstack.org/#!/worklist/580).
5 (1) are [bugs](https://storyboard.openstack.org/#!/worklist/574). 4 (0)
are [cleanups](https://storyboard.openstack.org/#!/worklist/575). 12
(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: 6 (2).

# osc-placement

osc-placement is currently behind by 12 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.

* <https://review.opendev.org/640898>
   Adds a new `--amend` option which can update resource provider
   inventory without requiring the user to pass a full replacement
   for inventory and an `--aggregate` option to set inventory on all
   the providers in an aggregate. This has been broken up into three
   patches to help with review. This one is very close but needs
   review from more people than Matt.

# 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>
   A WIP, as microversion 1.37, has started.

I picked this up yesterday and hope to have it finished next week,
barring distractions. I figure having it in place for nova for
Ussuri is a nice to have.

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

Performance related explorations continue:

* <https://review.opendev.org/#/c/679385/>
   Refactor initialization of research context. This puts the code
   that might cause an exit earlier in the process so we can avoid
   useless work.

One outcome of the performance work needs to be something like a
_Deployment Considerations_ document to help people choose how to
tweak their placement deployment to match their needs. The simple
answer is use more web servers and more database servers, but that's
often very wasteful.

Discussions about [using a different JSON
serializer](http://lists.openstack.org/pipermail/openstack-discuss/2019-August/thread.html#8849)
terminated choosing not to use `orjson` because it presents some
packaging and distribution issues that might be problematic. There's
still an option to use one of the other alternatives, but that
exploration has not started.

# Other Placement

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

* <https://review.opendev.org/676982>
   Merge request log and request id middlewares is worth attention.
   It makes sure that _all_ log message from a single request use a
   global and local request id.

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

# 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.opendev.org/659233>
   Cyborg: Placement report

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

* <https://review.opendev.org/#/q/topic:bp/virtual-persistent-memory>
   libvirt: report pmem namespaces resources by provider tree

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

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

* <https://review.opendev.org/671793>
   Nova: libvirt: Start reporting PCPU inventory to placement
   A part of <https://review.opendev.org/#/q/topic:bp/cpu-resources>

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

* <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/670696>
   tempest: Add placement API methods for testing routed provider nets

* <https://review.opendev.org/672678>
   openstack-helm: Build placement in OSH-images

* <https://review.opendev.org/674129>
   Correct global_request_id sent to Placement

* <https://review.opendev.org/#/q/topic:bp/cross-cell-resize>
   Nova: cross cell resize

* <https://review.opendev.org/674524>
   Nova: Scheduler translate properties to traits

* <https://review.opendev.org/623558>
   Nova: single pass instance info fetch in host manager

* <https://review.opendev.org/674708>
   Zun: [WIP] Claim container allocation in placement

* <https://review.opendev.org/#/q/topic:bp/provider-config-file>
   Nova: using provider config file for custom resource providers

# End

☃

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


More information about the openstack-discuss mailing list