Welcome to a placement update. This week is mostly focused on specs and illuminating some of the pressing issues with extraction.
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).
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
VCPUbeing locked at ==
totaland 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 make
max_unitmore 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_unitof any inventory gets more complicated in a world of complex NUMA topologies.
Eric has raised a question about the intended purpose of traits.
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
Making Nested Useful
Work on getting nova's use of nested resource providers happy and fixing bugs discovered in placement in the process.
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:
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.
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.
Taking a few days off is a great way to get out of sync.