contrail-charms: contrail-openstack: support multiple IPs in neutron ContrailPlugin api_server_ip

Bug #1778241 reported by Bernhard Koessler on 2018-06-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R4.1
Fix Committed
High
Andrey Pavlov
R5.0
Won't Fix
High
Andrey Pavlov
Trunk
Fix Committed
High
Andrey Pavlov

Bug Description

support support of charm for this fix: https://bugs.launchpad.net/juniperopenstack/+bug/1746151

Currently, the charm configures VIP (if configured, otherwise first unit IP) in Contrail plugin config on neutron unit.

The change should allow to configure the ha endpoints of the contrail-api directly in line with the other config files.

Ideally, there should be a choice of using VIP or the endpoints but the preference should be the endpoints to support HA clusters without the use of a VIP/L2. I assume this can be done by not defining vip in the contrail-controller charm. (VIP could still be used in external hacluster if needed).

Additional note:
- VIP is also configured in /etc/contrail/vnc_api_lib.ini - need to review if VIP can be avoided there as well - TBD
- review other places where VIP is used
e.g. https://github.com/Juniper/contrail-charms/blob/13da977aff7efd67f0e1e7b2f16ecdfc6f445e9c/contrail-agent/hooks/contrail_agent_utils.py#L240

--> this should also use the list of api endpoints directly instead of vip as VIP might not be available on compute nodes due to iptables etc

Changed in juniperopenstack:
assignee: nobody → Andrey Pavlov (apavlov-e)
Andrey Pavlov (apavlov-e) wrote :

vnc_api also supports list of servers separated by ','

Andrey Pavlov (apavlov-e) wrote :

code for 4.1 is here https://github.com/Juniper/contrail-controller/blob/R4.1/src/api-lib/vnc_api.py#L337-L338

and similar code present in 4.0 branch

Andrey Pavlov (apavlov-e) wrote :

another specified place ( https://github.com/Juniper/contrail-charms/blob/13da977aff7efd67f0e1e7b2f16ecdfc6f445e9c/contrail-agent/hooks/contrail_agent_utils.py#L240 )
is used in two operations:
- provide VIP to configs (vnc_api_lib.ini only). it can be switched to use several IP-s
- use the VIP for provision script. it can be re-written to run provision with all IP-s one-be-one until success.

Andrey Pavlov (apavlov-e) wrote :

several commits are in place ( https://github.com/Juniper/contrail-charms )

Changed in juniperopenstack:
milestone: none → r4.1.2.0
status: New → Fix Committed
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers