octavia/octavia
Michael Johnson 72715ba619 Fix failover when multiple amphora have failed
If a load balancer loses more than one amphora at the same time
the failover process will fail and leave the load balancer in
provisioning status ERROR.

This patch resolves this by failing over one amphora at a time
marking any amphora that are also failed in status ERROR. The health
manager will then failover the other failed amphora in subsequent checks.

This patch will update multiple healthy amphora in parallel and will
timeout failed amphroa using the new "active_connection_max_retries"
configuration setting used for "fail-fast" connections.

The patch also updates the amphora failover flow documentation to
show the full flow and not just the spares failover flow.

It updates the amphora driver "get_diagnostics" method to pass instead
of error.

It also adds a AmphoraComputeConnectivityWait task to explicitly wait
for a compute instance to come up and be reachable. This allows a longer
timeout and clarifies this may fail due to compute (nova) failures.
Previously the first plug vip task would do this wait.

Change-Id: Ief97ddda8261b5bbc54c6824f90ae9c7a2d81701
Story: 2001481
Task: 6202
(cherry picked from commit 0139f12c2e)
2018-08-08 14:54:41 -07:00
..
amphorae Fix failover when multiple amphora have failed 2018-08-08 14:54:41 -07:00
api Merge "Allow fields filter on single object GETs" into stable/queens 2018-07-18 17:48:42 +00:00
certificates Properly test access to tls_refs in the API layer 2018-03-28 08:55:33 +00:00
cmd Let healthmanager process shutdown cleanly (again) 2018-06-05 20:33:39 +02:00
common Fix failover when multiple amphora have failed 2018-08-08 14:54:41 -07:00
compute Update compute noop driver/tests (many were disabled/useless) 2017-12-07 15:51:58 -08:00
controller Fix failover when multiple amphora have failed 2018-08-08 14:54:41 -07:00
db Merge "Improve the error logging for zombie amphora" into stable/queens 2018-07-18 13:39:03 +00:00
distributor Updated the function name with "get_remove_vip_subflow" to fix the typo 2018-01-18 15:16:20 +05:30
hacking Fix a bad revert method and add hacking check 2017-08-14 12:03:37 -07:00
network Ignore a port not found when deleting an LB 2018-07-10 17:17:33 +00:00
policies Amphora API Failover call 2017-12-21 12:02:27 -08:00
tests Fix failover when multiple amphora have failed 2018-08-08 14:54:41 -07:00
__init__.py Adding Python 3.4 Compatibility and Tox Check 2015-06-23 18:18:17 +00:00
i18n.py Remove _LI, _LW, _LE, _LC from i18n 2017-05-23 16:28:29 +07:00
opts.py Update Octavia docs for documentation migration 2017-07-03 11:43:40 -07:00
version.py Adds methods in version.py for proper oslo_reports setup 2016-06-07 11:51:26 +03:00