Queue Manager fails in podman containerised environments
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
oslo.messaging |
In Progress
|
Medium
|
Matt Crees |
Bug Description
We hit this when trying to use queue manager in Kolla-Ansible. An invocation of nova-manage fails with the following traceback:
root@primary:~# podman exec nova_conductor nova-manage cell_v2 discover_hosts --by-service --cell_uuid c321ca04-
Traceback (most recent call last):
File "/var/lib/
sys.
^^^^^^
File "/var/lib/
config.
File "/var/lib/
rpc.init(CONF)
File "/var/lib/
TRANSPORT = create_
File "/var/lib/
return messaging.
File "/var/lib/
return msg_transport.
File "/var/lib/
mgr = driver.
File "/var/lib/
super(
File "/var/lib/
extensions = self._load_
File "/var/lib/
self.
File "/var/lib/
ext = self._load_
File "/var/lib/
return super()
File "/var/lib/
obj = plugin(
File "/var/lib/
super(
File "/var/lib/
self._q_manager = QManager(
File "/var/lib/
with open(f'
FileNotFoundError: [Errno 2] No such file or directory: '/proc/0/stat'
The issue here is that the group process id is zero when podman directly calls this command. /proc/0 doesn't exist, so the command fails.
podman exec nova_conductor ps xao pid,ppid,
PID PPID PGID SID COMMAND
1 0 1 1 dumb-init
2 1 1 1 nova-conductor
2389 0 0 0 ps
As an aside, this doesn't affect docker as the process group id is not 0:
docker exec nova_conductor ps xao pid,ppid,
PID PPID PGID SID COMMAND
1 0 1 1 dumb-init
6 1 1 1 nova-conductor
39 6 1 1 nova-conductor
40 6 1 1 nova-conductor
2418 0 2418 2418 ps
Changed in oslo.messaging: | |
importance: | Undecided → Medium |
assignee: | nobody → Matt Crees (mattcrees) |
Fix proposed to branch: master /review. opendev. org/c/openstack /oslo.messaging /+/939540
Review: https:/