aboutsummaryrefslogtreecommitdiffstats
path: root/puppet/manifests/overcloud_controller_pacemaker.pp
diff options
context:
space:
mode:
Diffstat (limited to 'puppet/manifests/overcloud_controller_pacemaker.pp')
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp47
1 files changed, 47 insertions, 0 deletions
diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
index 14c01788..3a311655 100644
--- a/puppet/manifests/overcloud_controller_pacemaker.pp
+++ b/puppet/manifests/overcloud_controller_pacemaker.pp
@@ -177,6 +177,8 @@ if hiera('step') >= 2 {
if $pacemaker_master {
+ include pacemaker::resource_defaults
+
# FIXME: we should not have to access tripleo::loadbalancer class
# parameters here to configure pacemaker VIPs. The configuration
# of pacemaker VIPs could move into puppet-tripleo or we should
@@ -608,6 +610,14 @@ if hiera('step') >= 3 {
tunnel_types => split(hiera('neutron_tunnel_types'), ','),
}
+ if 'cisco_ucsm' in hiera('neutron_mechanism_drivers') {
+ include ::neutron::plugins::ml2::cisco::ucsm
+ }
+ if 'cisco_nexus' in hiera('neutron_mechanism_drivers') {
+ include ::neutron::plugins::ml2::cisco::nexus
+ include ::neutron::plugins::ml2::cisco::type_nexus_vxlan
+ }
+
include ::cinder
class { '::cinder::api':
sync_db => $sync_db,
@@ -873,6 +883,43 @@ if hiera('step') >= 4 {
clone_params => "interleave=true",
}
+ pacemaker::constraint::base { 'haproxy-then-keystone-constraint':
+ constraint_type => 'order',
+ first_resource => "haproxy-clone",
+ second_resource => "${::keystone::params::service_name}-clone",
+ first_action => 'start',
+ second_action => 'start',
+ require => [Pacemaker::Resource::Service['haproxy'],
+ Pacemaker::Resource::Service[$::keystone::params::service_name]],
+ }
+ pacemaker::constraint::base { 'rabbitmq-then-keystone-constraint':
+ constraint_type => 'order',
+ first_resource => "rabbitmq-clone",
+ second_resource => "${::keystone::params::service_name}-clone",
+ first_action => 'start',
+ second_action => 'start',
+ require => [Pacemaker::Resource::Ocf['rabbitmq'],
+ Pacemaker::Resource::Service[$::keystone::params::service_name]],
+ }
+ pacemaker::constraint::base { 'memcached-then-keystone-constraint':
+ constraint_type => 'order',
+ first_resource => "memcached-clone",
+ second_resource => "${::keystone::params::service_name}-clone",
+ first_action => 'start',
+ second_action => 'start',
+ require => [Pacemaker::Resource::Service['memcached'],
+ Pacemaker::Resource::Service[$::keystone::params::service_name]],
+ }
+ pacemaker::constraint::base { 'galera-then-keystone-constraint':
+ constraint_type => 'order',
+ first_resource => "galera-master",
+ second_resource => "${::keystone::params::service_name}-clone",
+ first_action => 'promote',
+ second_action => 'start',
+ require => [Pacemaker::Resource::Ocf['galera'],
+ Pacemaker::Resource::Service[$::keystone::params::service_name]],
+ }
+
# Cinder
pacemaker::resource::service { $::cinder::params::api_service :
clone_params => "interleave=true",