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 improvements 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. 0 (0) are untagged. 5 (1) are bugs. 4 (0) are cleanups. 12 (1) are rfes. 4 (0) are docs.
If you're interested in helping out with placement, those stories are good places to look.
-
Placement related nova bugs not yet in progress on launchpad: 17 (-1).
-
Placement related nova in progress bugs 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
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/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 being discussed. And zero os-resource-classes changes.
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
☃