-
Hello friends, After update from Oracle Linux 8.7 to 8.8 all my containers are not shutting down gracefully. What I have discovered are these strange messages in
The number of these messages correlates with the number of my containers. The behavior happens only when shutdown or reboot is invoked. Regular management like Is anybody aware of this issue? I have tried changing the podman's Background:
Version information:
|
Beta Was this translation helpful? Give feedback.
Replies: 3 comments
-
OK, found this: #17096 It seems the D-Bus User Management Bus is required for
To test the behavior one does not need to reboot the whole machine dealing with persistent journal etc… Stopping and re-starting rootless user is sufficient:
and the logs:
As shown, the shutdown process takes less than a second. The proper shutdown of all the containers takes at least 3 minutes! I really don't know what's going on. Everything has been working until RHEL 8.8 (Oracle Linux 8.8 in my case) arrived. That release upgraded podman as well as systemd. But anyway, I need to find out a solution as this can easily lead to data loss. Is there any way to tell podman to NOT use D-Bus? |
Beta Was this translation helpful? Give feedback.
-
OKi, next iteration. As the log tells, systemd initiates the D-Bus User Message Bus shutdown procedure which effectively disables acceptance of new requests. When I put
all the |
Beta Was this translation helpful? Give feedback.
-
Soooo, long story short… Did a lot of digging around and inside and 've found the culprit: podman generated When the machine is going down, libpod scopes (there is one for each running container) are triggered for stop. That works fine. The libpod scope invokes To get rid of this, the Luckily enough podman has the Full example:
Please note the |
Beta Was this translation helpful? Give feedback.
Soooo, long story short…
Did a lot of digging around and inside and 've found the culprit: podman generated
libpod
scopes.When the machine is going down, libpod scopes (there is one for each running container) are triggered for stop. That works fine. The libpod scope invokes
podman stop
which sends an appropriate signal to the first process of the container, thus triggering the shutdown sequence. However, the libpod scope does not respect any timeouts (thepodman generate systemd
service – this is expected – nor podman--stop-timeout
neitherTimeoutStopSec
on the libpod scope). Instead it immediately starts firing KILL signals all around effectively breaking graceful shutdown.To get rid…