OpenStack Networking (Neutron)
Go to file
John Schwarz 23c7c8a08e Throttle SIGHUPs to keepalived
Multiple SIGHUPs in quick succession might cause the master keepalived
to forfeit its mastership (which will cause keepalived to remove IPs of
its external devices, severing connectivity). This can happen when, for
example, associating or disassociating multiple floatingips.

The patch makes the agent throttle SIGHUP sent to keepalived: the very first
SIGHUP is always sent; as for subsequent signals, they are delayed till
agent threshold is reached. (It's 3 seconds by default.)

As an example, when three consequent router updates trigger keepalived
respawn then:
* the very first signal is sent as usual;
* the second signal is deferred and sent in up to 3 seconds since the
  first signal;
* the third signal is ignored, though the change that triggered it will
  be correctly applied by the second signal handler when it is triggered
  after threshold delay.

If the last time a spawn request occurred is older than current-time
minus threshold then there is no delay.

Co-Authored-By: Jakub Libosvar <libosvar@redhat.com>
Co-Authored-By: Cedric Brandily <zzelle@gmail.com>
Co-Authored-By: Ihar Hrachyshka <ihrachys@redhat.com>

Closes-Bug: 1647432
Change-Id: I2955e0de835458a2eea4dd088addf33b656f8670
(cherry picked from commit 977d254cc6)
2017-03-29 02:11:04 +00:00
api-ref Fix some typos 2016-06-28 22:46:19 +02:00
bin XenAPI: add support for conntrack with XenServer 2016-09-23 02:34:25 +00:00
devstack Use gate_hook to enable q-trunk for rally. 2017-01-05 23:31:10 +09:00
doc Revert "Linux Bridge: driver support for QoS egress minimum bandwidth" 2017-02-10 04:34:21 +00:00
etc Revert "Linux Bridge: driver support for QoS egress minimum bandwidth" 2017-02-10 04:34:21 +00:00
neutron Throttle SIGHUPs to keepalived 2017-03-29 02:11:04 +00:00
rally-jobs Trim rally scenario sizes 2017-03-15 14:17:54 +00:00
releasenotes Merge "Terminate macvtap agent when physical_interface_mapping config not present" into stable/ocata 2017-02-07 19:39:23 +00:00
tools Merge "configure_for_func_testing.sh: Remove neutron-legacy inclusion" 2017-02-03 21:02:24 +00:00
.coveragerc Cleanup coverage configuration 2016-10-17 17:06:19 +05:30
.gitignore Automatically generate neutron core configuration files 2015-11-27 15:22:59 +00:00
.gitreview Update .gitreview for stable/ocata 2017-02-06 23:47:34 +00:00
.mailmap Add mailmap entry 2014-05-16 13:40:04 -04:00
.pylintrc Remove last vestiges of oslo-incubator 2016-11-04 20:49:13 -04:00
.testr.conf Allow more time for DB migration tests 2016-09-21 20:54:41 -04:00
CONTRIBUTING.rst Make crystal clear how to contribute/approach the neutron community 2016-10-28 11:49:44 -07:00
HACKING.rst Merge "Replace assertEqual(None, *) with assertIsNone in tests" 2016-11-22 02:15:19 +00:00
LICENSE Adding Apache Version 2.0 license file. This is the official license agreement under which Quantum code is available to 2011-08-08 12:31:04 -07:00
README.rst Show team and repo badges on README 2016-11-25 15:35:21 +01:00
TESTING.rst Merge "TrivialFix: Modify the spelling mistake" 2017-02-03 09:59:05 +00:00
babel.cfg Use babel to generate translation file 2013-01-24 00:20:32 +08:00
bindep.txt Fix periodic jobs: Add databases to bindep.txt 2016-10-09 06:31:00 +02:00
requirements.txt Updated from global requirements 2017-03-09 18:17:23 +00:00
run_tests.sh Deprecate run_tests.sh 2016-11-08 03:50:20 +00:00
setup.cfg Add Loki service plugin for optional DB havoc 2017-02-03 05:12:33 -08:00
setup.py Updated from global requirements 2015-09-21 18:56:49 +00:00
test-requirements.txt Updated from global requirements 2016-12-28 09:11:12 +00:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/ocata 2017-02-10 06:00:50 +00:00

README.rst

Team and repository tags

image

Welcome!

To learn more about neutron:

Get in touch via email. Use [Neutron] in your subject.

To learn how to contribute:

CONTRIBUTING.rst