loadbalancer: explode hieradata to separate HAproxy & keepalived

* Stop using tripleo::loadbalancer and start using tripleo::haproxy and
  tripleo::keepalived.
* Use hieradata when possible for calling tripleo::haproxy and
  tripleo::keepalived classes.

Change-Id: I3afa4a21a22cbb574014624c6d23e17ead51ecf7
Depends-On: I84dfa9d409d390c6f549d62cb3634931e4cb432c
This commit is contained in:
Emilien Macchi 2016-05-25 16:08:15 -04:00
parent 167ebe49b7
commit cb69c9e4ab
2 changed files with 29 additions and 21 deletions

View File

@ -461,26 +461,12 @@ if $step == 2 {
if hiera('service_certificate', undef) {
class { '::tripleo::loadbalancer':
controller_virtual_ip => hiera('controller_admin_vip'),
controller_hosts => [hiera('controller_host')],
control_virtual_interface => 'br-ctlplane',
public_virtual_ip => hiera('controller_public_vip'),
public_virtual_interface => 'br-ctlplane',
service_certificate => hiera('service_certificate', undef),
keystone_admin => true,
keystone_public => true,
neutron => true,
glance_api => true,
glance_registry => true,
nova_osapi => true,
nova_metadata => true,
swift_proxy_server => true,
heat_api => true,
ceilometer => str2bool(hiera('enable_telemetry', false)),
ironic => true,
rabbitmq => true,
class { '::tripleo::haproxy':
# with our current version of hiera, we can't set tripleo::loadbalancer::service_certificate in hieradata
# because the value might be empty and puppet would fail to compile the catalog.
service_certificate => hiera('service_certificate', undef),
}
include ::tripleo::keepalived
}
if str2bool(hiera('enable_tempest', true)) {

View File

@ -464,8 +464,30 @@ zaqar::management::mongodb::uri: mongodb://127.0.0.1:27017
zaqar::messaging::mongodb::uri: mongodb://127.0.0.1:27017
zaqar::message_pipeline: 'zaqar.notification.notifier'
# Loadbalancer
tripleo::loadbalancer::haproxy_stats_password: {{UNDERCLOUD_HAPROXY_STATS_PASSWORD}}
# HAproxy
tripleo::haproxy::haproxy_stats_password: {{UNDERCLOUD_HAPROXY_STATS_PASSWORD}}
tripleo::haproxy::controller_virtual_ip: "%{hiera('controller_admin_vip')}"
tripleo::haproxy::controller_hosts: "%{hiera('controller_host')}"
tripleo::haproxy::public_virtual_ip: "%{hiera('controller_public_vip')}"
tripleo::haproxy::public_virtual_interface: 'br-ctlplane'
tripleo::haproxy::keystone_admin: true
tripleo::haproxy::keystone_public: true
tripleo::haproxy::neutron: true
tripleo::haproxy::glance_api: true
tripleo::haproxy::glance_registry: true
tripleo::haproxy::nova_osapi: true
tripleo::haproxy::nova_metadata: true
tripleo::haproxy::swift_proxy_server: true
tripleo::haproxy::heat_api: true
tripleo::haproxy::ceilometer: "%{hiera('enable_telemetry')}"
tripleo::haproxy::ironic: true
tripleo::haproxy::rabbitmq: true
# Keepalived
tripleo::keepalived::controller_virtual_ip: "%{hiera('controller_admin_vip')}"
tripleo::keepalived::control_virtual_interface: 'br-ctlplane'
tripleo::keepalived::public_virtual_ip: "%{hiera('controller_public_vip')}"
tripleo::keepalived::public_virtual_interface: 'br-ctlplane'
# service tenant
ceilometer::api::keystone_tenant: 'service'