aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/haproxy.pp
diff options
context:
space:
mode:
authorFeng Pan <fpan@redhat.com>2016-12-13 22:36:10 -0500
committerFeng Pan <fpan@redhat.com>2017-01-18 23:58:11 -0500
commitade8845ac81067d017458ceb9195789ae02176ed (patch)
tree5f77fc90ef91e107ec62c246b039de85ca19f4ae /manifests/haproxy.pp
parent3b3699ac9929ab459eec4ff2ad978c438f5dfadb (diff)
Adds etcd
etcd is used by networking-vpp ML2 driver as the messaging mechanism. This patch adds etcd service which can be used by other services. Implements: blueprint fdio-integration-tripleo Change-Id: Idaa3e3deddf9be3d278e90b569466c2717e2d517 Signed-off-by: Feng Pan <fpan@redhat.com>
Diffstat (limited to 'manifests/haproxy.pp')
-rw-r--r--manifests/haproxy.pp27
1 files changed, 27 insertions, 0 deletions
diff --git a/manifests/haproxy.pp b/manifests/haproxy.pp
index cc21e37..09bd5ec 100644
--- a/manifests/haproxy.pp
+++ b/manifests/haproxy.pp
@@ -251,6 +251,10 @@
# (optional) Enable or not RabbitMQ binding
# Defaults to false
#
+# [*etcd*]
+# (optional) Enable or not Etcd binding
+# Defaults to hiera('etcd_enabled', false)
+#
# [*docker_registry*]
# (optional) Enable or not the Docker Registry API binding
# Defaults to hiera('enable_docker_registry', false)
@@ -526,6 +530,7 @@ class tripleo::haproxy (
$mysql_clustercheck = false,
$mysql_member_options = undef,
$rabbitmq = false,
+ $etcd = hiera('etcd_enabled', false),
$docker_registry = hiera('enable_docker_registry', false),
$redis = hiera('redis_enabled', false),
$redis_password = undef,
@@ -713,6 +718,11 @@ class tripleo::haproxy (
"${redis_vip}:6379" => $haproxy_listen_bind_param,
}
+ $etcd_vip = hiera('etcd_vip', $controller_virtual_ip)
+ $etcd_bind_opts = {
+ "${etcd_vip}:2379" => $haproxy_listen_bind_param,
+ }
+
class { '::haproxy':
service_manage => $haproxy_service_manage,
global_options => {
@@ -1255,6 +1265,23 @@ class tripleo::haproxy (
}
}
+ if $etcd {
+ haproxy::listen { 'etcd':
+ bind => $etcd_bind_opts,
+ options => {
+ 'balance' => 'source',
+ },
+ collect_exported => false,
+ }
+ haproxy::balancermember { 'etcd':
+ listening_service => 'etcd',
+ ports => '2379',
+ ipaddresses => hiera('etcd_node_ips', $controller_hosts_real),
+ server_names => hiera('etcd_node_names', $controller_hosts_names_real),
+ options => $haproxy_member_options,
+ }
+ }
+
if $docker_registry {
::tripleo::haproxy::endpoint { 'docker-registry':
public_virtual_ip => $public_virtual_ip,