When we use an external loadbalancer we do not want neither haproxy nor
VIPs on our control plane, since they will be managed externally.
So a user will usually include something like the following template:
/usr/share/openstack-tripleo-heat-templates/environments/external-loadbalancer-vip.yaml
or implement a similar set of parameters/resource mapping.
The main needed params are: EnableLoadBalancer set to false, the
noop-ing of the haproxy service via 'OS::TripleO::Services::HAproxy: OS::Heat::None'
and the hard-coding of the external VIPs via the *VirtualFixedIPs
parameters.
To make sure we do not create the OVNDbs VIP we will use
the listen_on_master_ip_only as the variable to
determine if an external loadbalancer is used:
- no -> external LB used
- yes -> pcmk+haproxy i.e. our own loadbalancer
We cannot use the enable_load_balancer hiera key that is normally
set by haproxy, because the haproxy service will be nooped.
NB: cherry-pick is not clean due to context
Related-Bug: #1864409
(cherry picked from commit 50c5e1e6a5)
Change-Id: Ie313c0410ed684661aeea77158572035ddfcfcd5