Delay HA router transition from "backup" to "master"
As described in the bug, when a HA router transitions from "master" to
"backup", "keepalived" processes will set the virtual IP in all other
HA routers. Each HA router will then advert it and "keepalived" will
decide, according to a trivial algorithm (higher interface IP), which
one should be "master". At this point, the other "keepalived" processes
running in the other servers, will remove the HA router virtual IP
assigned an instant before
To avoid transitioning some routers form "backup" to "master" and then
to "backup" in a very short period, this patch delays the "backup" to
"master" transition, waiting for a possible new "backup" state. If
during the waiting period (set to the HA VRRP advert time, 2 seconds
default) to set the HA state to "master", the L3 agent receives a new
"backup" HA state, the L3 agent does nothing.
Reviewed: https:/ /review. opendev. org/719978 /git.openstack. org/cgit/ openstack/ neutron/ commit/ ?id=5b45f947fd7 a25cc9b58e3b94f 189ad50523a0b4
Committed: https:/
Submitter: Zuul
Branch: stable/queens
commit 5b45f947fd7a25c c9b58e3b94f189a d50523a0b4
Author: Rodolfo Alonso Hernandez <email address hidden>
Date: Wed Jul 24 16:32:02 2019 +0000
Delay HA router transition from "backup" to "master"
As described in the bug, when a HA router transitions from "master" to
"backup", "keepalived" processes will set the virtual IP in all other
HA routers. Each HA router will then advert it and "keepalived" will
decide, according to a trivial algorithm (higher interface IP), which
one should be "master". At this point, the other "keepalived" processes
running in the other servers, will remove the HA router virtual IP
assigned an instant before
To avoid transitioning some routers form "backup" to "master" and then
to "backup" in a very short period, this patch delays the "backup" to
"master" transition, waiting for a possible new "backup" state. If
during the waiting period (set to the HA VRRP advert time, 2 seconds
default) to set the HA state to "master", the L3 agent receives a new
"backup" HA state, the L3 agent does nothing.
Conflicts:
neutron/ agent/l3/ agent.py
neutron/ agent/l3/ ha_router. py
Closes-Bug: #1837635
Change-Id: I70037da9cdd0f8 448e0af8dd96b4e 3f5de5728ad 3bfd945af1119a6 0dfe91cb91) deba5357c6a47e7 e528fcf775) 48ede651525458b abc1b30d8d)
(cherry picked from commit 3f022a193f66fde
(cherry picked from commit adac5d9b7a72b4e
(cherry picked from commit 7682d2fa77108b1