Bug 1287736 - L3 agent fails to respawn keepalived process
Summary: L3 agent fails to respawn keepalived process
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-neutron
Version: 8.0 (Liberty)
Hardware: Unspecified
OS: Unspecified
high
unspecified
Target Milestone: ga
: 8.0 (Liberty)
Assignee: Ihar Hrachyshka
QA Contact: Alexander Stafeyev
URL:
Whiteboard:
Depends On:
Blocks: 1293339
TreeView+ depends on / blocked
 
Reported: 2015-12-02 14:52 UTC by Arie Bregman
Modified: 2023-02-22 23:02 UTC (History)
9 users (show)

Fixed In Version: openstack-neutron-7.0.1-2.el7ost
Doc Type: Bug Fix
Doc Text:
Prior to this update, the L3 agent failed to respawn keepalived process if the keepalived parent process died. This was because the child keepalived process was still running. Consequently, the L3 agent could not recover from keepalived parent process death, breaking the HA router served by the process. With this update, the L3 agent is made aware of the child keepalived process, and now cleans up it as well before respawning keepalived. As a result, the L3 agent is now able to recover HA routers when the keepalived process dies.
Clone Of:
: 1293339 (view as bug list)
Environment:
Last Closed: 2016-04-07 21:15:19 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 251693 0 None None None Never
Red Hat Bugzilla 1286729 0 urgent CLOSED Can't restart keepalived after it's killed 2021-02-22 00:41:40 UTC
Red Hat Product Errata RHEA-2016:0603 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 8 Enhancement Advisory 2016-04-08 00:53:53 UTC

Description Arie Bregman 2015-12-02 14:52:27 UTC
Description of problem: keepalived fails to respawn after crash when running OSP8 (Liberty) neutron.

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

How reproducible: always.

First, OSP8 based steps to reproduce:
1. set up OSP8 system.
2. run test_keepalived_respawns functional test for OSP8 neutron.
3. experience the following failure.

==============================
Failed 1 tests - output below:
==============================

neutron.tests.functional.agent.linux.test_keepalived.KeepalivedManagerTestCase.test_keepalived_respawns
-------------------------------------------------------------------------------------------------------

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
      File "neutron/tests/functional/agent/linux/test_keepalived.py", line 73, in test_keepalived_respawns
        exception=RuntimeError(_("Keepalived didn't respawn")))
      File "neutron/agent/linux/utils.py", line 339, in wait_until_true
        eventlet.sleep(sleep)
      File "/usr/lib/python2.7/site-packages/eventlet/greenthread.py", line 34, in sleep
        hub.switch()
      File "/usr/lib/python2.7/site-packages/eventlet/hubs/hub.py", line 294, in switch
        return self.greenlet.switch()
    RuntimeError: Keepalived didn't respawn

Comment 2 Assaf Muller 2015-12-02 17:40:57 UTC
Adding upstream patch Arie sent. We'll need to backport it, so also adding dev_ack.

Comment 8 errata-xmlrpc 2016-04-07 21:15:19 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://rhn.redhat.com/errata/RHEA-2016-0603.html


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