Bug 1585678 - [UPDATE] [SWIFT] after update openstack-swift-object stuck in restarting
Summary: [UPDATE] [SWIFT] after update openstack-swift-object stuck in restarting
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: z2
: 13.0 (Queens)
Assignee: Christian Schwede (cschwede)
QA Contact: Mike Abrams
Kim Nylander
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-06-04 12:05 UTC by Raviv Bar-Tal
Modified: 2022-08-18 16:41 UTC (History)
7 users (show)

Fixed In Version: openstack-tripleo-heat-templates-8.0.2-46.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-08-29 16:36:45 UTC
Target Upstream Version:
Embargoed:
rbartal: needinfo-


Attachments (Terms of Use)
docker ps (12.80 KB, text/plain)
2018-06-04 12:08 UTC, Raviv Bar-Tal
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1724559 0 None None None 2018-06-19 14:21:20 UTC
OpenStack gerrit 577126 0 'None' MERGED Disable pid file usage in the swift_rsync container 2021-02-09 14:41:15 UTC
OpenStack gerrit 577403 0 'None' MERGED Disable pid file usage in the swift_rsync container 2021-02-09 14:41:15 UTC
Red Hat Issue Tracker OSP-3980 0 None None None 2022-08-18 16:41:11 UTC
Red Hat Product Errata RHBA-2018:2574 0 None None None 2018-08-29 16:37:34 UTC

Description Raviv Bar-Tal 2018-06-04 12:05:50 UTC
Description of problem:
After overcloud update the  openstack-swift-object get stuck in restarting state

b3ec4546e62b        192.168.24.1:8787/rhosp13/openstack-swift-object:2018-05-29.2                "kolla_start"            24 hours ago        Restarting (11) About an hour ago                       swift_rsync



full output of docker ps is attached 


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Raviv Bar-Tal 2018-06-04 12:08:56 UTC
Created attachment 1447408 [details]
docker ps

Comment 3 Christian Schwede (cschwede) 2018-06-04 13:07:44 UTC
Can you share logfiles with us (from /var/log/containers/swift and /var/log/swift) please? Or even grant access to a deployment to investigate this? Thx!

Comment 8 Christian Schwede (cschwede) 2018-06-05 09:27:27 UTC
Checked this, it's the same reason as in https://bugzilla.redhat.com/show_bug.cgi?id=1517548.

$ sudo docker logs swift_rsync
exec /usr/bin/rsync --daemon --no-detach --config=/etc/rsyncd.conf
failed to create pid file /var/run/rsyncd.pid: File exists

Question is why this happens with the fix already included. Did the update finish successfully?

Comment 15 Christian Schwede (cschwede) 2018-06-19 14:05:19 UTC
So this one is a bit tricky, it really depends on the deployment - I guess one mostly sees this in slow environments?

The problem is that there is a default timeout of 10 seconds in docker to stop a container. After that the process in the container will be killed. In the case of rsyncd it might get killed therefore, shutting down unclean and leaving the rsyncd.pid there. When the container is restarted, the rsyncd process finds the pid file, and immediately exits.

Actually the pid file is not really used in a containerized environment, so we should get rid of it. However, this one is hardcoded into a template [1] and thus can't be simply unset in TripleO.

I think we should do the following: add a workaround in puppet-tripleo or tripleo-heat-templates to comment the pid file setting, while at the same time proposing an update to puppetlabs-rsync, making the pid file configurable. Once this is merged, we can remove the workaround.

The manual workaround to get the container out of this loop is to modify the pid file setting like this:

sed -i -e 's/^pid file/# pid file/g' /var/lib/config-data/swift/etc/rsyncd.conf

[1] https://github.com/puppetlabs/puppetlabs-rsync/blob/master/templates/header.erb#L4

Comment 16 Christian Schwede (cschwede) 2018-06-21 11:21:54 UTC
Also proposed required PR for puppetlabs-rsync: https://github.com/puppetlabs/puppetlabs-rsync/pull/120

Comment 33 Joanne O'Flynn 2018-08-15 07:56:51 UTC
This bug is marked for inclusion in the errata but does not currently contain draft documentation text. To ensure the timely release of this advisory please provide draft documentation text for this bug as soon as possible.

If you do not think this bug requires errata documentation, set the requires_doc_text flag to "-".


To add draft documentation text:

* Select the documentation type from the "Doc Type" drop down field.

* A template will be provided in the "Doc Text" field based on the "Doc Type" value selected. Enter draft text in the "Doc Text" field.

Comment 38 errata-xmlrpc 2018-08-29 16:36:45 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:2574


Note You need to log in before you can comment on or make changes to this bug.