From 250d979aea7055eaed0c1dfa5850514c816da195 Mon Sep 17 00:00:00 2001 From: Michele Baldessari Date: Fri, 25 Aug 2017 10:21:11 +0200 Subject: Set meta container-attribute-target=host attribute This is needed because when we run bundles we actually want to store attributes on a per-node basis and not on a per-bundle basis. By activating this attribute pacemaker will pass some extra OCS_RESKEY_CRM_meta attributes that will help us in this decision. We can merge this once we have packages for pacemaker and resource-agents releases that contain the necessary fixes. Proper pacemaker and resource-agents are now in the repo [1] so we can merge it and backport it to pike. [1] https://buildlogs.centos.org/centos/7/cloud/x86_64/openstack-pike/ Closes-Bug: #1713007 Change-Id: I0dd06e953b4c81f217d0f4199b2337e4c3358086 (cherry picked from commit 6bcb011723ad7b75f18914c887dc4fa4bad4d620) --- manifests/profile/pacemaker/database/mysql_bundle.pp | 9 +++++---- manifests/profile/pacemaker/database/redis_bundle.pp | 2 +- manifests/profile/pacemaker/ovn_dbs_bundle.pp | 2 +- manifests/profile/pacemaker/rabbitmq_bundle.pp | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/manifests/profile/pacemaker/database/mysql_bundle.pp b/manifests/profile/pacemaker/database/mysql_bundle.pp index e07ac2e..1bcdbbe 100644 --- a/manifests/profile/pacemaker/database/mysql_bundle.pp +++ b/manifests/profile/pacemaker/database/mysql_bundle.pp @@ -100,9 +100,10 @@ class tripleo::profile::pacemaker::database::mysql_bundle ( $galera_nodes_count = count($galera_nodes_array) # construct a galera-pacemaker name mapping for the resource agent - # [galera-bundle-0:galera_node[0], galera-bundle-1:galera_node[1], ... ,galera-bundle-n:galera_node[n]] - $host_map_array = $galera_nodes_array.map |$i, $host| { - "galera-bundle-${i}:${host}" + # [galera-0:galera-0.internalapi.local, ...] + $host_map_array_tmp = zip($galera_node_names_lookup, $galera_fqdns_names_lookup) + $host_map_array = $host_map_array_tmp.map |$i| { + "${i[0]}:${i[1]}" } $cluster_host_map_string = join($host_map_array, ';') @@ -314,7 +315,7 @@ MYSQL_HOST=localhost\n", pacemaker::resource::ocf { 'galera': ocf_agent_name => 'heartbeat:galera', master_params => '', - meta_params => "master-max=${galera_nodes_count} ordered=true", + meta_params => "master-max=${galera_nodes_count} ordered=true container-attribute-target=host", op_params => 'promote timeout=300s on-fail=block', resource_params => "additional_parameters='--open-files-limit=16384' enable_creation=true wsrep_cluster_address='gcomm://${galera_nodes}' cluster_host_map='${cluster_host_map_string}'", tries => $pcs_tries, diff --git a/manifests/profile/pacemaker/database/redis_bundle.pp b/manifests/profile/pacemaker/database/redis_bundle.pp index 8b18858..1e144f9 100644 --- a/manifests/profile/pacemaker/database/redis_bundle.pp +++ b/manifests/profile/pacemaker/database/redis_bundle.pp @@ -150,7 +150,7 @@ class tripleo::profile::pacemaker::database::redis_bundle ( ocf_agent_name => 'heartbeat:redis', resource_params => 'wait_last_known_master=true', master_params => '', - meta_params => 'notify=true ordered=true interleave=true', + meta_params => 'notify=true ordered=true interleave=true container-attribute-target=host', op_params => 'start timeout=200s stop timeout=200s', tries => $pcs_tries, location_rule => { diff --git a/manifests/profile/pacemaker/ovn_dbs_bundle.pp b/manifests/profile/pacemaker/ovn_dbs_bundle.pp index 8c287b1..efe3e93 100644 --- a/manifests/profile/pacemaker/ovn_dbs_bundle.pp +++ b/manifests/profile/pacemaker/ovn_dbs_bundle.pp @@ -139,7 +139,7 @@ class tripleo::profile::pacemaker::ovn_dbs_bundle ( resource_params => "master_ip=${ovn_dbs_vip} nb_master_port=${nb_db_port} sb_master_port=${sb_db_port} manage_northd=yes", tries => $pcs_tries, location_rule => $ovn_dbs_location_rule, - meta_params => 'notify=true', + meta_params => 'notify=true container-attribute-target=host', bundle => 'ovn-dbs-bundle', } diff --git a/manifests/profile/pacemaker/rabbitmq_bundle.pp b/manifests/profile/pacemaker/rabbitmq_bundle.pp index 4d6b9af..db34d03 100644 --- a/manifests/profile/pacemaker/rabbitmq_bundle.pp +++ b/manifests/profile/pacemaker/rabbitmq_bundle.pp @@ -206,7 +206,7 @@ class tripleo::profile::pacemaker::rabbitmq_bundle ( pacemaker::resource::ocf { 'rabbitmq': ocf_agent_name => 'heartbeat:rabbitmq-cluster', resource_params => $params, - meta_params => 'notify=true', + meta_params => 'notify=true container-attribute-target=host', op_params => 'start timeout=200s stop timeout=200s', tries => $pcs_tries, location_rule => { -- cgit 1.2.3-korg