XPost: linux.debian.devel.release
This is a multi-part MIME message sent by reportbug.
Package: release.debian.org
Severity: normal
User:
[email protected]
Usertags: unblock
X-Debbugs-Cc:
[email protected]
Control: affects -1 + src:nova
Please unblock package aodh
Please unblock package barbican
Please unblock package blazar
Please unblock package ceilometer
Please unblock package cinder
Please unblock package cyborg
Please unblock package designate
Please unblock package glance
Please unblock package heat
Please unblock package ironic
Please unblock package keystone
Please unblock package magnum
Please unblock package manila
Please unblock package masakari
Please unblock package mistral
Please unblock package neutron
Please unblock package nova
Hi,
[ Reason ]
I discover that when running daemons with the queue manager
option, they create a file under /dev/shm that depends on the
process name, unless it is overritten by a config value. As
OpenStack API all run under uwsgi, the process name is the same
and clashes between services.
I've added a OS_OSLO_MESSAGING_RABBIT__PROCESSNAME environment
var at startup of all daemons, which is equivalent to set:
[oslo_messaging_rabbit]
processname=<something>
this way, this avoids multiple daemons using the same qmanager
file.
As I wanted things to be unified, I have set this env var for
all daemons, even if it doesn't change the current behavior
(ie: it used to use argv[0] which is the same as what I've set,
except for uwsgi API where it was really mandatory).
Also, for Neutron, you'll see 2 backported patches as bugfixes.
You may reply for Neutron specifically separately.
[ Impact ]
It would otherwise be impossible for OpenStack users to run
multiple API servers from different OpenStack project on the
same host, if activating the RabbitMQ queue manager.
[ Tests ]
I manually tested the fix.
[ Risks ]
Not much risk: it's just an env var per daemon.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
unblock aodh/20.0.0-2
unblock barbican/20.0.0-3
unblock blazar/15.0.0-3
unblock ceilometer/24.0.0-2
unblock cinder/26.0.0-2
unblock cyborg/14.0.0-3
unblock designate/20.0.0-2
unblock glance/30.0.0-3
unblock heat/24.0.0-2
unblock ironic/29.0.0-7
unblock keystone/27.0.0-3
unblock magnum/20.0.0-2
unblock manila/20.0.0-3
unblock masakari/19.0.0-3
unblock mistral/20.0.0-2
unblock neutron/26.0.0-8
unblock nova/31.0.0-4
diff --git a/debian/aodh-api-uwsgi.ini b/debian/aodh-api-uwsgi.ini
index 9122d7cd..e451b367 100644
--- a/debian/aodh-api-uwsgi.ini
+++ b/debian/aodh-api-uwsgi.ini
@@ -52,6 +52,8 @@ listen = 100
##################################
### OpenStack service specific ###
##################################
+env = OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=aodh-api
+
# This is needed, otherwise connections stay open
add-header = Connection: close
diff --git a/debian/aodh-evaluator.init.in b/debian/aodh-evaluator.init.in index 64bf7111..e305a4b9 100644
--- a/debian/aodh-evaluator.init.in
+++ b/debian/aodh-evaluator.init.in
@@ -15,3 +15,4 @@
DESC="OpenStack Aodh Evaluator (aodh-evaluator)"
PROJECT_NAME=aodh
NAME=${PROJECT_NAME}-evaluator
+export OS_OSLO_MESSAGING_RABBIT__PROCESSNAME=aodh-evaluator
diff --git a/debian/aodh-expirer.init.in b/debian/aodh-expirer.init.in
index c3ba59c9..4411e66f 100644
--- a/debian/aodh-expirer.init.in
+++ b/debian/aodh-expirer.init.in
@@ -15,3 +15,4 @@
DESC="OpenStack Aodh Expirer (aodh-expirer)"
PROJECT_NAME=aodh
NAME=${PROJECT_NAME}-expirer
+export OS