diff --git a/manifests/profile/base/pacemaker.pp b/manifests/profile/base/pacemaker.pp index 96a0f694c..b316de883 100644 --- a/manifests/profile/base/pacemaker.pp +++ b/manifests/profile/base/pacemaker.pp @@ -108,7 +108,12 @@ class tripleo::profile::base::pacemaker ( $enable_fencing = str2bool(hiera('enable_fencing', false)) and $step >= 5 if $step >= 1 { - $pacemaker_short_node_names = join(hiera('pacemaker_short_node_names'), ',') + if (hiera('pacemaker_short_node_names_override', undef)) { + $pacemaker_short_node_names = join(hiera('pacemaker_short_node_names_override'), ',') + } else { + $pacemaker_short_node_names = join(hiera('pacemaker_short_node_names'), ',') + } + $pacemaker_cluster_members = downcase(regsubst($pacemaker_short_node_names, ',', ' ', 'G')) $corosync_ipv6 = str2bool(hiera('corosync_ipv6', false)) if $corosync_ipv6 { diff --git a/manifests/profile/pacemaker/cinder/backup_bundle.pp b/manifests/profile/pacemaker/cinder/backup_bundle.pp index 598f88f89..4f0a9f827 100644 --- a/manifests/profile/pacemaker/cinder/backup_bundle.pp +++ b/manifests/profile/pacemaker/cinder/backup_bundle.pp @@ -67,7 +67,12 @@ class tripleo::profile::pacemaker::cinder::backup_bundle ( if $step >= 2 and $pacemaker_master { $cinder_backup_short_node_names = hiera('cinder_backup_short_node_names') - $pacemaker_short_node_names = hiera('pacemaker_short_node_names') + if (hiera('pacemaker_short_node_names_override', undef)) { + $pacemaker_short_node_names = hiera('pacemaker_short_node_names_override') + } else { + $pacemaker_short_node_names = hiera('pacemaker_short_node_names') + } + $pcmk_cinder_backup_nodes = intersection($cinder_backup_short_node_names, $pacemaker_short_node_names) $pcmk_cinder_backup_nodes.each |String $node_name| { pacemaker::property { "cinder-backup-role-${node_name}": diff --git a/manifests/profile/pacemaker/cinder/volume_bundle.pp b/manifests/profile/pacemaker/cinder/volume_bundle.pp index 42fa0876e..7ac4d8e2d 100644 --- a/manifests/profile/pacemaker/cinder/volume_bundle.pp +++ b/manifests/profile/pacemaker/cinder/volume_bundle.pp @@ -67,7 +67,13 @@ class tripleo::profile::pacemaker::cinder::volume_bundle ( if $step >= 2 and $pacemaker_master { $cinder_volume_short_node_names = hiera('cinder_volume_short_node_names') - $pacemaker_short_node_names = hiera('pacemaker_short_node_names') + + if (hiera('pacemaker_short_node_names_override', undef)) { + $pacemaker_short_node_names = hiera('pacemaker_short_node_names_override') + } else { + $pacemaker_short_node_names = hiera('pacemaker_short_node_names') + } + $pcmk_cinder_volume_nodes = intersection($cinder_volume_short_node_names, $pacemaker_short_node_names) $pcmk_cinder_volume_nodes.each |String $node_name| { pacemaker::property { "cinder-volume-role-${node_name}": diff --git a/manifests/profile/pacemaker/database/mysql_bundle.pp b/manifests/profile/pacemaker/database/mysql_bundle.pp index 473a3e2b5..620eaa54d 100644 --- a/manifests/profile/pacemaker/database/mysql_bundle.pp +++ b/manifests/profile/pacemaker/database/mysql_bundle.pp @@ -149,11 +149,15 @@ class tripleo::profile::pacemaker::database::mysql_bundle ( # FQDN are lowercase in /etc/hosts, so are pacemaker node names $galera_node_names_lookup = downcase(hiera('mysql_short_node_names', $::hostname)) - # is this an additional nova cell? - if hiera('nova_is_additional_cell', undef) { - $galera_fqdns_names_lookup = downcase(hiera('mysql_cell_node_names', $::hostname)) + if (hiera('mysql_node_names_override', undef)) { + $galera_fqdns_names_lookup = downcase(hiera('mysql_node_names_override')) } else { - $galera_fqdns_names_lookup = downcase(hiera('mysql_node_names', $::hostname)) + # is this an additional nova cell? + if hiera('nova_is_additional_cell', undef) { + $galera_fqdns_names_lookup = downcase(hiera('mysql_cell_node_names', $::hostname)) + } else { + $galera_fqdns_names_lookup = downcase(hiera('mysql_node_names', $::hostname)) + } } if is_array($galera_node_names_lookup) { @@ -306,7 +310,12 @@ MYSQL_HOST=localhost\n", } if $pacemaker_master { - $mysql_short_node_names = hiera('mysql_short_node_names') + if (hiera('mysql_short_node_names_override', undef)) { + $mysql_short_node_names = hiera('mysql_short_node_names_override') + } else { + $mysql_short_node_names = hiera('mysql_short_node_names') + } + $mysql_short_node_names.each |String $node_name| { # lint:ignore:puppet-lint-2.0.1 does not work with multiline strings # and blocks (remove this when we move to 2.2.0 where this works) diff --git a/manifests/profile/pacemaker/database/redis_bundle.pp b/manifests/profile/pacemaker/database/redis_bundle.pp index f9a1d5046..2d89356d9 100644 --- a/manifests/profile/pacemaker/database/redis_bundle.pp +++ b/manifests/profile/pacemaker/database/redis_bundle.pp @@ -215,7 +215,12 @@ slave-announce-port ${local_tuple[0][2]} if $step >= 2 { if $pacemaker_master { - $redis_short_node_names = hiera('redis_short_node_names') + if (hiera('redis_short_node_names_override', undef)) { + $redis_short_node_names = hiera('redis_short_node_names_override') + } else { + $redis_short_node_names = hiera('redis_short_node_names') + } + $redis_nodes_count = count($redis_short_node_names) $redis_short_node_names.each |String $node_name| { pacemaker::property { "redis-role-${node_name}": diff --git a/manifests/profile/pacemaker/haproxy_bundle.pp b/manifests/profile/pacemaker/haproxy_bundle.pp index 04047c0d5..e5c213025 100644 --- a/manifests/profile/pacemaker/haproxy_bundle.pp +++ b/manifests/profile/pacemaker/haproxy_bundle.pp @@ -106,7 +106,12 @@ class tripleo::profile::pacemaker::haproxy_bundle ( if $step >= 2 and $enable_load_balancer { if $pacemaker_master { - $haproxy_short_node_names = hiera('haproxy_short_node_names') + if (hiera('haproxy_short_node_names_override', undef)) { + $haproxy_short_node_names = hiera('haproxy_short_node_names_override') + } else { + $haproxy_short_node_names = hiera('haproxy_short_node_names') + } + $haproxy_short_node_names.each |String $node_name| { pacemaker::property { "haproxy-role-${node_name}": property => 'haproxy-role', diff --git a/manifests/profile/pacemaker/rabbitmq_bundle.pp b/manifests/profile/pacemaker/rabbitmq_bundle.pp index 3e72e659c..0a22cd320 100644 --- a/manifests/profile/pacemaker/rabbitmq_bundle.pp +++ b/manifests/profile/pacemaker/rabbitmq_bundle.pp @@ -149,11 +149,14 @@ class tripleo::profile::pacemaker::rabbitmq_bundle ( if $step >= 2 { if $pacemaker_master { - if $rpc_scheme == 'rabbit' { + if (hiera('rabbitmq_short_node_names_override', undef)) { + $rabbitmq_short_node_names = hiera('rabbitmq_short_node_names_override') + } elsif ($rpc_scheme == 'rabbit') { $rabbitmq_short_node_names = hiera('oslo_messaging_rpc_short_node_names') } elsif $notify_scheme == 'rabbit' { $rabbitmq_short_node_names = hiera('oslo_messaging_notify_short_node_names') } + $rabbitmq_nodes_count = count($rabbitmq_short_node_names) $rabbitmq_short_node_names.each |String $node_name| { pacemaker::property { "rabbitmq-role-${node_name}":