Pupdate 19-27 is here and now.
Most Important
Of the features we planned to do this cycle, all are done save one:
consumer types (in progress, see below). This means we have a good
opportunity to focus on documentation, performance, and improving
the codebase for maintainability. You do not need permission to work
on these things. If you find a problem and know how to fix it, fix
it. If you are not sure about the solution, please discuss it on
this email list or in the #openstack-placement
IRC channel.
This also means we're in a good position to help review changes that use placement in other projects.
The Foundation needs to know how much, if any, Placement time will be needed in Shanghai. I started a thread and an etherpad.
What's Changed
-
The
same_subtree
query parameter has merged as microversion 1.36. This enables a form of nested provider affinity: "these providers must all share the same ancestor". -
The placement projects have been updated (pending merge) to match the Python 3 test runtimes for Train community wide goal. Since the projects have been Python3-enabled from the start, this was mostly a matter of aligning configurations with community-wide norms. When Python 3.8 becomes available we should get on that sooner than later to catch issues early.
Specs/Features
All placement specs have merged. Thanks to everyone for the frequent reviews and quick followups.
Some non-placement specs are listed in the Other section below.
Stories/Bugs
(Numbers in () are the change since the last pupdate.)
There are 23 (0) stories in the placement group. 0 (0) are untagged. 3 (1) are bugs. 5 (0) are cleanups. 11 (0) 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: 16 (0).
-
Placement related nova in progress bugs 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. This is stuck and needs input from users of the tool.
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 last week, one of the important cleanup tasks that is not yet in progress is updating the gabbit that creates the nested topology that's used in nested performance testing. The topology there is simple, unrealistic, and doesn't sufficiently exercise the several features that may be used during a query that desires a nested response. This needs to be someone who is more closely related to real world use of nested than me. efried? gibi?
Another cleanup that needs to start is satisfying the community wide goal of PDF doc generation. Anyone know if there is a cookbook for this?
Other Placement
Miscellaneous changes can be found in the usual place.
There are three os-traits changes being discussed. And one os-resource-classes change.
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/664862 OSA: Add nova placement to placement migration
-
https://review.opendev.org/657796 Nova: Defaults missing group_policy to 'none'
-
https://review.opendev.org/666202 Blazar: Create placement client for each request
-
https://review.opendev.org/669309 tempest: Define the Integrated-gate-placement gate template
-
https://review.opendev.org/668263 Nova: Restore RT.old_resources if ComputeNode.save() fails
-
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/670105 neutron: segments: fix rp inventory update
-
https://review.opendev.org/670112 Nova: WIP: Add a placement audit command
-
https://review.opendev.org/668526 OSA: Add placement client for neutron
-
https://review.opendev.org/586960 zun: [WIP] Use placement for unified resource management
End
A colleague suggested yesterday that the universe doesn't have an over subscription problem, rather there's localized contention, and what we really have is a placement problem.