Index ¦ Archives ¦ Atom

Placement Update 18-48

Here's a placement update. It's been a rather busy week in placement-land: Gibi and I, with the help of others, have been getting the functional tests in nova working with an external placement. It is working now, which is great, but much work was done, more details within.

Most Important

Progress continues on the work in ansible, puppet/tripleo, kolla, loci to package placement up and establish upgrade processes. All of these things need review (see below). Work on GPU reshaping in virt drivers is getting close.

What's Changed

  • Devstack installs placement from openstack/placement, not nova.
  • Placement now runs tempest and grenade (in py3) in CI. This is great because real integration tests and sad because our once really fast CI runs are gone.
  • The placement service can now start without a conf file. This is basically fixing a bug: we required a single config file in a specific location, rather than the defaults (which includes no file). We require an explicit database connection.



Spec freeze is milestone 2, the week of January 7th. None of the specs listed last week have merged.

Main Themes

Making Nested Useful

Progress is being made on gpu-reshaping for libvirt and xen:

Also making use of nested is bandwidth-resource-provider:

Eric's in the process of doing lots of cleanups to how often the ProviderTree in the resource tracker is checked against placement, and a variety of other "let's make this more right" changes in the same neighborhood:


(There's an etherpad which tracks some of the work related to extraction. Please refer to that for additional information.)

Several deployment tools are working on making things work with the extracted placement:

A replacement for placeload performance testing that was in the nova-next job: This might be of interest to people trying to do testing of live services without devstack. It starts with a basic node, turns on mysql, runs placement with uwsgi, and does the placeload testing. Note that this found a pretty strange bug in _ensure_aggregates.

Documentation tuneups:

The functional tests in nova excitement this week has led to some interesting changes. The biggest of these is changing placement to no longer use global config. That patch is an aggregate of the many things done to remove a race condition in the nova functional tests. Trying to use the config of two different projects in the same process space is hard if they are both global. So now placement doesn't. This is a win in many ways. Getting those two patches merged soon is important.

We've been putting off making a decision about os-resource-classes. Anyone have strong opinions?


There are 12 or so open changes in placement itself. Of those these two are the most important:

Outside of placement itself, here are some related changes:


That was the November that was.

© Chris Dent. Built using Pelican. Theme by Giulio Fidente on github.