Comment 12 for bug 1956846

Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Hello:

This documentation [1] is outdated. We should document how keepalived is configured now.

This is an example of configuration [2]. We don't create an "interface" but an "vrrp_instance" section, named with random ID (in this case, VR_252).

According to the documentation [3], the "state" config knob is the initial state of this instance of the virtual router. Of course, as you comment, keepalived will vote to actually decide which one is the active one.

As commented before, the method initializing the router port [4] is the same for any router, independently of the type (legacy, DVR, HA, DVR-HA). Since Train, the routes written in the router namespace have the protocol defined ("static" by default). That works as the workaround Maximilian commented.

If you want to push a patch to handle this scenario, you are more than welcome. Any help is always accepted in OpenStack.

Regards.

[1]https://wiki.openstack.org/wiki/Neutron/L3_High_Availability_VRRP
[2]https://paste.opendev.org/show/812099/
[3]https://manpages.debian.org/unstable/keepalived/keepalived.conf.5.en.html
[4]https://github.com/openstack/neutron/blob/5730eae0e96ea68a700bb7afd280cdd4284532ba/neutron/agent/linux/interface.py#L154-L177