From f7826b8a3a083a1776c5f1f02526232a3bf32d4d Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Fri, 17 Apr 2015 20:19:36 +0200 Subject: Perform basic setup of Pacemaker cluster using puppet-pacemaker Depends-On: Ia1bbf53c674e34ba7c70249895b106ec0af3c249 Change-Id: Ifa9f579d26a3cba9f8705226984c7b987ae0ad1c --- puppet/manifests/overcloud_controller.pp | 38 +++++++++++++++++++------------- 1 file changed, 23 insertions(+), 15 deletions(-) (limited to 'puppet/manifests') diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index 0d57dc6f..08f9d427 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -27,25 +27,33 @@ if !str2bool(hiera('enable_package_install', 'false')) { if hiera('step') >= 1 { $controller_node_ips = split(hiera('controller_node_ips'), ',') + $enable_pacemaker = str2bool(hiera('enable_pacemaker')) + $enable_keepalived = !$enable_pacemaker + class { '::tripleo::loadbalancer' : controller_hosts => $controller_node_ips, } - class { '::corosync': - quorum_members => $controller_node_ips, - } - corosync::service { 'pacemaker': - version => '0', - } - service { 'pacemaker': - ensure => running, - require => Service['corosync'], - } - cs_property { 'stonith-enabled': - value => 'false', - } - cs_property { 'no-quorum-policy': - value => 'ignore', + if $enable_pacemaker { + $pacemaker_cluster_members = regsubst(hiera('controller_node_ips'), ',', ' ', 'G') + if $::hostname == downcase(hiera('bootstrap_nodeid')) { + $pacemaker_master = true + } else { + $pacemaker_master = false + } + user { 'hacluster': + ensure => present, + } -> + class { '::pacemaker': + hacluster_pwd => hiera('hacluster_pwd'), + } -> + class { '::pacemaker::corosync': + cluster_members => $pacemaker_cluster_members, + setup_cluster => $pacemaker_master, + } + class { '::pacemaker::stonith': + disable => true, + } } } -- cgit 1.2.3-korg