Make ::tripleo::profile::base classes work with multiple nodes
authorMichele Baldessari <michele@acksyn.org>
Wed, 13 Jul 2016 20:30:45 +0000 (16:30 -0400)
committerMichele Baldessari <michele@acksyn.org>
Mon, 18 Jul 2016 19:45:25 +0000 (21:45 +0200)
In the Next Generation HA architecture a number of active/active services
will be run via systemd. In order for this to work we need to make sure that
the sync_db operation only takes place on the bootstrap node, just like it is
done today for the pacemaker profiles.

We do this by removing sync_db as a parameter and instead set it to true
or false depending if the hostname matches the bootstrap_node as it is done
today in the pacemaker role.

Note that we call hiera('bootstrap_nodeid', undef) because if a profile
is included on a non controller node that variable will be undefined.

The following testing was done:
- HA puppet-pacemaker.yaml scenario with three computes
- NonHA with one controller
- NonHA with three controllers

Fixes-Bug: 1600149

Co-Author: cmsj@tenshu.net

Change-Id: I04a7b9e3c18627ea512000a34357acb7f27d6e0e
Implements: blueprint ha-lightweight-architecture

29 files changed:
manifests/profile/base/ceilometer/collector.pp
manifests/profile/base/cinder/api.pp
manifests/profile/base/glance/registry.pp
manifests/profile/base/gnocchi/api.pp
manifests/profile/base/heat/engine.pp
manifests/profile/base/ironic.pp
manifests/profile/base/keystone.pp
manifests/profile/base/manila/scheduler.pp
manifests/profile/base/neutron.pp
manifests/profile/base/neutron/plugins/ml2.pp
manifests/profile/base/neutron/plugins/nuage.pp
manifests/profile/base/neutron/plugins/opencontrail.pp
manifests/profile/base/neutron/plugins/plumgrid.pp
manifests/profile/base/neutron/server.pp
manifests/profile/base/nova/api.pp
manifests/profile/base/sahara/engine.pp
manifests/profile/base/trove/api.pp
manifests/profile/pacemaker/ceilometer/collector.pp
manifests/profile/pacemaker/cinder/api.pp
manifests/profile/pacemaker/glance.pp
manifests/profile/pacemaker/gnocchi/api.pp
manifests/profile/pacemaker/heat/engine.pp
manifests/profile/pacemaker/keystone.pp
manifests/profile/pacemaker/neutron/plugins/ml2.pp
manifests/profile/pacemaker/neutron/plugins/nuage.pp
manifests/profile/pacemaker/neutron/plugins/opencontrail.pp
manifests/profile/pacemaker/neutron/plugins/plumgrid.pp
manifests/profile/pacemaker/nova/api.pp
manifests/profile/pacemaker/sahara/engine.pp

index c294e56..b0a986f 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
-#
 
 class tripleo::profile::base::ceilometer::collector (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   $ceilometer_backend = downcase(hiera('ceilometer_backend', 'mongodb'))
   # MongoDB
index a2da25f..ad970f6 100644 (file)
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::cinder::api (
-  $sync_db = true,
-  $step    = hiera('step'),
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   class { '::tripleo::profile::base::cinder':
     pacemaker_master => $sync_db,
index 774f646..ce89d12 100644 (file)
@@ -18,9 +18,9 @@
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 # [*glance_backend*]
 #   (Optional) Glance backend(s) to use.
 #   Defaults to downcase(hiera('glance_backend', 'swift'))
-#
+
 class tripleo::profile::base::glance::registry (
-  $sync_db        = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
   $step           = hiera('step'),
   $glance_backend = downcase(hiera('glance_backend', 'swift')),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   if $step >= 3 and $sync_db {
     include ::glance::db::mysql
index d415ee9..870a9bb 100644 (file)
 #   (Optional) Gnocchi backend string file, swift or rbd
 #   Defaults to swift
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to undef
 
 class tripleo::profile::base::gnocchi::api (
   $gnocchi_backend = downcase(hiera('gnocchi_backend', 'swift')),
+  $bootstrap_node  = hiera('bootstrap_nodeid', undef),
   $step            = hiera('step'),
-  $sync_db         = true,
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::gnocchi
 
index b48837c..1fd627f 100644 (file)
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to undef
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::heat::engine (
-  $sync_db        = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
   $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   if $step >= 3 and $sync_db {
     include ::heat::db::mysql
index 139654b..dd30dd7 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step of the deployment
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
-#
+
 class tripleo::profile::base::ironic (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   if $step >= 3 {
     include ::ironic
index 706b78f..9617c11 100644 (file)
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
-#
-# [*manage_roles*]
-#   (Optional) whether to create keystone admin role
-#   Defaults to true
-#
-# [*manage_endpoint*]
-#   (Optional) Whether to create keystone endpoints
-#   Defaults to true
-#
 # [*manage_db_purge*]
 #   (Optional) Whether keystone token flushing should be enabled
 #   Defaults to hiera('keystone_enable_db_purge', true)
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::keystone (
-  $sync_db         = true,
-  $manage_roles    = true,
-  $manage_endpoint = true,
   $manage_db_purge = hiera('keystone_enable_db_purge', true),
+  $bootstrap_node  = hiera('bootstrap_nodeid', undef),
   $step            = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+    $manage_roles = true
+    $manage_endpoint = true
+  } else {
+    $sync_db = false
+    $manage_roles = false
+    $manage_endpoint = false
+  }
 
   if $step >= 3 and $sync_db {
     include ::keystone::db::mysql
index b6d7593..3d39c4a 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optiona) Whether to run db sync.
-#   Defaults to true.
-#
+
 class tripleo::profile::base::manila::scheduler (
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
   $step           = hiera('step'),
-  $sync_db        = true,
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   if $step >= 3 and $sync_db {
     include ::manila::db::mysql
index 1ee2d90..7b07b1f 100644 (file)
@@ -23,9 +23,9 @@
 #   Defaults to hiera('step')
 #
 class tripleo::profile::base::neutron (
-  $step    = hiera('step'),
+  $step = hiera('step'),
 ) {
-  if hiera('step') >= 3 {
+  if $step >= 3 {
     include ::neutron
     include ::neutron::config
   }
index 8218c9e..0193615 100644 (file)
 #   (Optional) The mechanism drivers to use with the Ml2 plugin
 #   Defaults to hiera('neutron::plugins::ml2::mechanism_drivers')
 #
-# [*sync_db*]
-# (Optional) Whether to run Neutron DB sync operations
-# Defaults to undef
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::neutron::plugins::ml2 (
   $mechanism_drivers  = hiera('neutron::plugins::ml2::mechanism_drivers'),
-  $sync_db            = true,
+  $bootstrap_node     = hiera('bootstrap_nodeid', undef),
   $step               = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::neutron
 
index 5d3661e..4ada340 100644 (file)
 #
 # Nuage Neutron profile for tripleo
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run Neutron DB sync operations
-#   Defaults to undef
-#
+
 class tripleo::profile::base::neutron::plugins::nuage (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::neutron
 
index 96d7421..6cd710a 100644 (file)
 #
 # Opencontrail Neutron profile for tripleo
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run Neutron DB sync operations
-#   Defaults to undef
-#
+
 class tripleo::profile::base::neutron::plugins::opencontrail (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::neutron
 
index f5cd273..efd75ac 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run Neutron DB sync operations
-#   Defaults to undef
-#
+
 class tripleo::profile::base::neutron::plugins::plumgrid (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::neutron
 
index 8b5539e..5a1b377 100644 (file)
 #
 # === Parameters
 #
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
+#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
 #
 class tripleo::profile::base::neutron::server (
-  $step             = hiera('step'),
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::neutron
 
-  if $step >= 3 {
+  if $step >= 3 and $sync_db {
     include ::neutron::db::mysql
   }
 
-  if $step >= 4 {
+  # We start neutron-server on the bootstrap node first, because
+  # it will try to populate tables and we need to make sure this happens
+  # before it starts on other nodes
+  if $step >= 4 and $sync_db {
     include ::neutron::server::notifications
-    include ::neutron::server
+    # We need to override the hiera value neutron::server::sync_db which is set
+    # to true
+    class { '::neutron::server':
+      sync_db => $sync_db,
+    }
+  }
+  if $step >= 5 and !$sync_db {
+    include ::neutron::server::notifications
+    class { '::neutron::server':
+      sync_db => $sync_db,
+    }
   }
-
 }
index 3b36c57..9c7d295 100644 (file)
 #
 # Nova API profile for tripleo
 #
-# === Parameters
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
-#
 class tripleo::profile::base::nova::api (
-  $step    = hiera('step'),
-  $sync_db = true,
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   include ::tripleo::profile::base::nova
 
index 8fa1f5f..f792a96 100644 (file)
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::sahara::engine (
-  $sync_db = true,
-  $step    = hiera('step'),
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
+
   if $step >= 3 and $sync_db {
     include ::sahara::db::mysql
   }
index a98f114..06edf7f 100644 (file)
 #
 # === Parameters
 #
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to true
+# [*bootstrap_node*]
+#   (Optional) The hostname of the node responsible for bootstrapping tasks
+#   Defaults to hiera('bootstrap_nodeid')
 #
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
+
 class tripleo::profile::base::trove::api (
-  $sync_db = true,
-  $step    = hiera('step'),
+  $bootstrap_node = hiera('bootstrap_nodeid', undef),
+  $step           = hiera('step'),
 ) {
+  if $::hostname == downcase($bootstrap_node) {
+    $sync_db = true
+  } else {
+    $sync_db = false
+  }
 
   if $step >= 3 and $sync_db {
     include ::trove::db::mysql
index 2a838f2..6610a07 100644 (file)
@@ -40,9 +40,7 @@ class tripleo::profile::pacemaker::ceilometer::collector (
   include ::ceilometer::params
   include ::tripleo::profile::pacemaker::ceilometer
 
-  class { '::tripleo::profile::base::ceilometer::collector':
-    sync_db => (downcase($::hostname) == $pacemaker_master),
-  }
+  include ::tripleo::profile::base::ceilometer::collector
 
   if $step >= 5 and downcase($::hostname) == $pacemaker_master {
     $ceilometer_backend = downcase(hiera('ceilometer_backend', 'mongodb'))
index 2c9cedf..6354244 100644 (file)
@@ -45,9 +45,7 @@ class tripleo::profile::pacemaker::cinder::api (
     $pacemaker_master = false
   }
 
-  class { '::tripleo::profile::base::cinder::api':
-    sync_db => $pacemaker_master,
-  }
+  include ::tripleo::profile::base::cinder::api
 
   if $step >= 5 and $pacemaker_master {
     pacemaker::resource::service { $::cinder::params::api_service :
index 10f4f03..91fddf6 100644 (file)
@@ -76,9 +76,7 @@ class tripleo::profile::pacemaker::glance (
   }
 
   include ::tripleo::profile::base::glance::api
-  class { '::tripleo::profile::base::glance::registry':
-    sync_db        => $pacemaker_master,
-  }
+  include ::tripleo::profile::base::glance::registry
 
   if $step >= 4 {
     if $glance_backend == 'file' and $glance_file_pcmk_manage {
index 684527f..da65731 100644 (file)
 #
 # === Parameters
 #
-# [*pacemaker_master*]
-#   (Optional) The hostname of the node responsible for bootstrapping tasks
-#   Defaults to hiera('bootstrap_nodeid')
-#
 # [*step*]
 #   (Optional) The current step in deployment. See tripleo-heat-templates
 #   for more details.
 #   Defaults to hiera('step')
-#
-# [*sync_db*]
-#   (Optional) Whether to run db sync
-#   Defaults to undef
 
 class tripleo::profile::pacemaker::gnocchi::api (
-  $pacemaker_master = hiera('bootstrap_nodeid'),
   $step             = hiera('step'),
-  $sync_db          = true,
 ) {
 
   include ::tripleo::profile::pacemaker::gnocchi
 
   class { '::tripleo::profile::base::gnocchi::api':
     step    => $step,
-    sync_db => (downcase($::hostname) == $pacemaker_master),
   }
 }
index 47b8a09..158c138 100644 (file)
@@ -39,9 +39,7 @@ class tripleo::profile::pacemaker::heat::engine (
   }
 
   include ::tripleo::profile::pacemaker::heat
-  class { '::tripleo::profile::base::heat::engine':
-    sync_db        => $pacemaker_master,
-  }
+  include ::tripleo::profile::base::heat::engine
 
   if $step >= 5 and $pacemaker_master {
     pacemaker::resource::service { $::heat::params::engine_service_name :
index 46a40db..5a3701b 100644 (file)
@@ -46,17 +46,11 @@ class tripleo::profile::pacemaker::keystone (
 
   if $::hostname == downcase($bootstrap_node) {
     $pacemaker_master = true
-    $manage_roles = true
   } else {
     $pacemaker_master = false
-    $manage_roles = false
   }
 
-  class { '::tripleo::profile::base::keystone':
-    sync_db         => $pacemaker_master,
-    manage_roles    => $manage_roles,
-    manage_endpoint => $manage_roles
-  }
+  include ::tripleo::profile::base::keystone
 
   if $step >= 5 and $pacemaker_master and $enable_load_balancer {
     pacemaker::constraint::base { 'haproxy-then-keystone-constraint':
index 6c9d8b1..e5e13b7 100644 (file)
 #
 # === Parameters
 #
-# [*pacemaker_master*]
-#   (Optional) The hostname of the pacemaker master
-#   Defaults to hiera('bootstrap_nodeid', undef)
-#
-class tripleo::profile::pacemaker::neutron::plugins::ml2 (
-  $pacemaker_master = hiera('bootstrap_nodeid', undef),
-) {
+class tripleo::profile::pacemaker::neutron::plugins::ml2
+{
 
   include ::neutron::params
   include ::tripleo::profile::pacemaker::neutron
 
-  class { '::tripleo::profile::base::neutron::plugins::ml2':
-    sync_db => ($::hostname == downcase($pacemaker_master))
-  }
+  include ::tripleo::profile::base::neutron::plugins::ml2
 
 }
index ea40d38..de00761 100644 (file)
 #
 # === Parameters
 #
-# [*pacemaker_master*]
-#   (Optional) The hostname of the pacemaker master
-#   Defaults to hiera('bootstrap_nodeid', undef)
-#
-class tripleo::profile::pacemaker::neutron::plugins::nuage (
-  $pacemaker_master = hiera('bootstrap_nodeid', undef),
-) {
+class tripleo::profile::pacemaker::neutron::plugins::nuage
+{
 
-  class { '::tripleo::profile::base::neutron::plugins::nuage':
-    sync_db => ($::hostname == downcase($pacemaker_master))
-  }
+  include ::tripleo::profile::base::neutron::plugins::nuage
 
 }
index 8db3cb2..f1568e9 100644 (file)
 #
 # === Parameters
 #
-# [*pacemaker_master*]
-#   (Optional) The hostname of the pacemaker master
-#   Defaults to hiera('bootstrap_nodeid', undef)
-#
-class tripleo::profile::pacemaker::neutron::plugins::opencontrail (
-  $pacemaker_master = hiera('bootstrap_nodeid', undef),
-) {
+class tripleo::profile::pacemaker::neutron::plugins::opencontrail
+{
 
-  class { '::tripleo::profile::base::neutron::plugins::opencontrail':
-    sync_db => ($::hostname == downcase($pacemaker_master))
-  }
+  include ::tripleo::profile::base::neutron::plugins::opencontrail
 
 }
index 57f9e31..7313ef9 100644 (file)
 #
 # === Parameters
 #
-# [*pacemaker_master*]
-#   (Optional) The hostname of the pacemaker master
-#   Defaults to hiera('bootstrap_nodeid', undef)
-#
-class tripleo::profile::pacemaker::neutron::plugins::plumgrid (
-  $pacemaker_master = hiera('bootstrap_nodeid', undef),
-) {
+class tripleo::profile::pacemaker::neutron::plugins::plumgrid
+{
 
-  class { '::tripleo::profile::base::neutron::plugins::plumgrid':
-    sync_db => ($::hostname == downcase($pacemaker_master))
-  }
+  include ::tripleo::profile::base::neutron::plugins::plumgrid
 
 }
index 30ab733..8a6dc8d 100644 (file)
@@ -42,9 +42,7 @@ class tripleo::profile::pacemaker::nova::api (
     stop       => '/bin/true',
   }
 
-  class { '::tripleo::profile::base::nova::api':
-    sync_db => (downcase($::hostname) == $pacemaker_master),
-  }
+  include ::tripleo::profile::base::nova::api
 
   if $step >= 5 and downcase($::hostname) == $pacemaker_master {
     pacemaker::resource::service { $::nova::params::api_service_name:
index 6265e80..850c645 100644 (file)
@@ -39,9 +39,7 @@ class tripleo::profile::pacemaker::sahara::engine (
   }
 
   include ::tripleo::profile::pacemaker::sahara
-  class { '::tripleo::profile::base::sahara::engine':
-    sync_db => $pacemaker_master
-  }
+  include ::tripleo::profile::base::sahara::engine
 
   if $step >= 5 and $pacemaker_master {
     pacemaker::resource::service { $::sahara::params::engine_service_name :