Welcome to a placement update. This week is mostly focused on specs and illuminating some of the pressing issues with extraction.
Most Important
Last week's important tasks remain important:
- Work on specs and setting priorities.
- Working towards upgrade tests (see more on that in the extraction section below).
What's Changed
Tetsuro is a core reviewer in placement now. Yay! Welcome.
Mel produced a summary of the PTG with some good links and plans.
Questions and Links
No answer to last week's question that I can recall, so here it is again:
-
[Last week], belmoreira showed up in #openstack-placement with some issues with expected resource providers not showing up in allocation candidates. This was traced back to
max_unit
forVCPU
being locked at ==total
and hardware which had had SMT turned off now reporting fewer CPUs, thus being unable to accept existing large flavors. Discussion ensued about ways to potentially makemax_unit
more manageable by operators. The existing constraint is there for a reason (discussed in IRC) but that reason is not universally agreed.There are two issues with this: The "reason" is not universally agreed and we didn't resolve that. Also, management of
max_unit
of any inventory gets more complicated in a world of complex NUMA topologies.
Eric has raised a question about the intended purpose of traits.
Bugs
- Placement related bugs not yet in progress: 18. +1.
- In progress placement bugs 9. -1.
Specs
-
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/600016/ List resource providers having inventory
-
https://review.openstack.org/#/c/593475/ Bi-directional enforcement of traits
-
https://review.openstack.org/#/c/599598/ allow transferring ownership of instance
-
https://review.openstack.org/#/c/591037/ Modelling passthrough devices for report to placement
-
https://review.openstack.org/#/c/509042/ Propose counting quota usage from placement and API database (A bit out of date but may be worth resurrecting)
-
https://review.openstack.org/#/c/603585/ Spec: allocation candidates in tree
-
https://review.openstack.org/#/c/603805/ [WIP] generic device discovery policy
-
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/552105/ Support initial allocation ratios
-
https://review.openstack.org/#/c/569011/ Count quota based on resource class
Main Themes
Making Nested Useful
Work on getting nova's use of nested resource providers happy and fixing bugs discovered in placement in the process.
- https://review.openstack.org/#/q/topic:bp/use-nested-allocation-candidates
- https://review.openstack.org/#/q/topic:bug/1792503
Consumer Generations
gibi is still working hard to drive home support for consumer generations on the nova side. Because of some dependency management that stuff is currently in the following topic:
Extraction
There are few large-ish things in progress with the extraction process which need some broader attention:
-
Matt is working on a patch to grenade to deal with upgrading, with a migration of data.
-
We have work in progress to tune up the documentation but we are not yet publishing documentation. We need to work out a plan for this. Presumably we don't want to be publishing docs until we are publishing code, but the interdependencies need to be teased out.
-
We need to decide how we are going to manage database schema migrations (alembic is the modern way) and we need to create the tooling for running those migrations (as well as upgrade checks). This includes deciding how we want to manage command line tools (using nova's example or something else).
Until those things happen we don't have a "thing" which people can install and run, unless they do some extra hacking around which we don't want to impose upon people any longer than necessary.
Other
As with last time, I'm not going to make a list of links to pending changes that aren't already listed above. I'll start doing that again eventually (once priorities are more clear), but for now it is useful to look at open placement patches and patches from everywhere which mention placement in the commit message.
End
Taking a few days off is a great way to get out of sync.