From 1c3bd1feaa2988003a7189bfc1fe4cd9ea580259 Mon Sep 17 00:00:00 2001 From: Emilien Macchi Date: Wed, 18 Mar 2015 12:01:20 -0400 Subject: puppet: implement MongoDB on controller nodes This patch aims to configure MongoDB server on controller nodes with Puppet. It also create a default replicaset for Ceilometer, so MongoDB can be highly available when multiple controllers are run. Change-Id: I3c1ff06ebc3c9dac44fc790caaea711d0eba4bb7 --- puppet/manifests/overcloud_controller.pp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'puppet/manifests/overcloud_controller.pp') diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index 3e3f2e70..0541fa4e 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -39,6 +39,21 @@ if hiera('step') >= 2 { include ::ntp } + # MongoDB + include ::mongodb::globals + include ::mongodb::server + $mongo_node_ips = split(downcase(hiera('mongo_node_ips')), ',') + $mongo_node_ips_with_port = suffix($mongo_node_ips, ':27017') + + if count($mongo_node_ips) > 1 { + if downcase($::hostname) == hiera('bootstrap_nodeid') { + $mongodb_replset = hiera('mongodb::server::replset') + mongodb_replset { $mongodb_replset : + members => $mongo_node_ips_with_port, + } + } + } + if str2bool(hiera('enable_galera', 'true')) { $mysql_config_file = '/etc/my.cnf.d/galera.cnf' } else { -- cgit 1.2.3-korg