neutron/neutron
Jakub Libosvar 4fdd89e94f l3-ha: Send gratuitous ARP when new floating IP is added
We rely on keepalived to send gratuitous ARPs when floating IP is added.
Older versions of keepalived up to 1.2.20 (exclusive) contain bug [1] where
keepalived does not send GARP on receiving SIGHUP. Unfortunately, newer
versions containing the fix are not packaged yet for some distributions
like RHEL or CentOS or Ubuntu Xenial, so this patch adds a workaround for
such distributions until new packages are available.

The patch also sets net.ipv4.ip_nonlocal_bind kernel parameter to 0 for
Snat and HA router namespaces in order to avoid sending gratuitous ARPs
for IP addresses that are not bound to the interface anymore - possibly
because of failover or removal. Note that kernel < 3.19 contain a bug
where this knob is missing. In case it attempts to set the parameter and
it's missing on the system, it doesn't set the knob in root
namespace like it's done for fip namespaces, but only issues a warning
message.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1391553

Change-Id: Ieab53624dc34dc687a0e8eebd84778f7fc95dd77
Closes-bug: 1639315
2016-11-10 15:27:21 -05:00
..
agent l3-ha: Send gratuitous ARP when new floating IP is added 2016-11-10 15:27:21 -05:00
api Simplify resources module in RPC callbacks 2016-10-31 19:34:04 +00:00
callbacks Fix events misnomer in callback registry debug trace 2016-09-15 18:53:27 -07:00
cmd neutron-lib: use replace_file from neutron lib 2016-11-07 09:18:41 +00:00
common Merge "neutron-lib: use replace_file from neutron lib" 2016-11-08 06:30:35 +00:00
conf Merge "Deprecate send_arp_for_ha option" 2016-11-08 05:10:06 +00:00
core_extensions Respond negatively to tenant detachment of enforced QoS policies 2016-05-16 21:54:15 +00:00
db Merge "Use ensure_tree from oslo_utils.fileutils" 2016-11-06 21:04:46 +00:00
debug Replace device owners hard coded strings to neutron_lib constants 2016-07-12 04:11:35 -04:00
extensions Migrate to neutron-lib released API definition for trunk APIs 2016-11-05 19:58:14 -07:00
hacking Forbid importing neutron.tests.* from outside tests subtree 2016-09-15 18:42:45 +00:00
ipam Merge "Catch DBReferenceError in IPAM and convert to SubnetNotFound" 2016-09-16 07:09:25 +00:00
locale Imported Translations from Zanata 2016-08-19 07:27:43 +00:00
notifiers Use singleton for Nova notifier 2016-09-09 05:12:03 -07:00
objects Fix modify_fields_from_db for vif_details empty str 2016-11-03 23:02:31 +00:00
pecan_wsgi Merge "Pecan: Fix internal server error on QoS rule PUT" 2016-11-01 01:16:11 +00:00
plugins Merge "XenAPI: add support for conntrack with XenServer" 2016-11-02 11:57:42 +00:00
quota Merge "Mark quota operations as retriable" 2016-09-13 20:34:31 +00:00
scheduler Merge "OVO for SegmentHostMapping" 2016-10-26 11:38:07 +00:00
server Revert "Revert "Remove threading before process forking"" 2016-06-02 21:26:08 +00:00
services Refactor/prepare db common utils for neutron-lib 2016-10-28 10:53:11 -04:00
tests l3-ha: Send gratuitous ARP when new floating IP is added 2016-11-10 15:27:21 -05:00
__init__.py Hacking rule to check i18n usage 2016-03-30 21:28:37 -04:00
_i18n.py Move i18n to _i18n, as per oslo_i18n guidelines 2015-12-01 19:29:10 -07:00
auth.py Consume ConfigurableMiddleware from oslo_middleware 2015-10-08 17:59:43 +00:00
context.py Use context from_environ to load contexts 2016-07-12 13:49:41 +10:00
manager.py Don't swallow ImportError from load_class_by_alias_or_classname 2016-09-26 09:33:48 +00:00
neutron_plugin_base_v2.py Revert "Revert "Remove threading before process forking"" 2016-06-02 21:26:08 +00:00
opts.py SR-IOV: Remove deprecated supported_pci_vendor_devs option 2016-10-31 18:33:26 +02:00
policy.py Prevent use filter(lambda obj: test(obj), data) 2016-09-14 16:23:32 +07:00
service.py Merge "Use dispose_pool() from oslo.db" 2016-08-26 22:03:41 +00:00
version.py
worker.py Remove notification for process event 2016-06-28 11:49:31 -07:00
wsgi.py Merge "Use dispose_pool() from oslo.db" 2016-08-26 22:03:41 +00:00