Move nova constraints from controller manifest to each service
Currently we are still creating all the pacemaker constraints for nova in the main overcloud_controller_pacemaker.pp manifest file. Let's move those to each role where they belong. Note that given that a constraint depends on two separate pacemaker resources it is a bit arbitrary in which file they end up being (the one of the first resource or the second one). Depends-On: I96a3a313d15fac820b020feae0568437c2cbade3 Change-Id: I4f15485b1f355b3b38fc6c16552f204aa8bba7bc
This commit is contained in:
parent
b0e53995ec
commit
d85d0681dd
|
@ -99,88 +99,6 @@ if hiera('step') >= 5 {
|
|||
Pacemaker::Resource::Ocf['openstack-core']],
|
||||
}
|
||||
|
||||
# Nova
|
||||
pacemaker::constraint::base { 'keystone-then-nova-consoleauth-constraint':
|
||||
constraint_type => 'order',
|
||||
first_resource => 'openstack-core-clone',
|
||||
second_resource => "${::nova::params::consoleauth_service_name}-clone",
|
||||
first_action => 'start',
|
||||
second_action => 'start',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::consoleauth_service_name],
|
||||
Pacemaker::Resource::Ocf['openstack-core']],
|
||||
}
|
||||
pacemaker::constraint::colocation { 'nova-consoleauth-with-openstack-core':
|
||||
source => "${::nova::params::consoleauth_service_name}-clone",
|
||||
target => 'openstack-core-clone',
|
||||
score => 'INFINITY',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::consoleauth_service_name],
|
||||
Pacemaker::Resource::Ocf['openstack-core']],
|
||||
}
|
||||
pacemaker::constraint::base { 'nova-consoleauth-then-nova-vncproxy-constraint':
|
||||
constraint_type => 'order',
|
||||
first_resource => "${::nova::params::consoleauth_service_name}-clone",
|
||||
second_resource => "${::nova::params::vncproxy_service_name}-clone",
|
||||
first_action => 'start',
|
||||
second_action => 'start',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::consoleauth_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::vncproxy_service_name]],
|
||||
}
|
||||
pacemaker::constraint::colocation { 'nova-vncproxy-with-nova-consoleauth-colocation':
|
||||
source => "${::nova::params::vncproxy_service_name}-clone",
|
||||
target => "${::nova::params::consoleauth_service_name}-clone",
|
||||
score => 'INFINITY',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::consoleauth_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::vncproxy_service_name]],
|
||||
}
|
||||
pacemaker::constraint::base { 'nova-vncproxy-then-nova-api-constraint':
|
||||
constraint_type => 'order',
|
||||
first_resource => "${::nova::params::vncproxy_service_name}-clone",
|
||||
second_resource => "${::nova::params::api_service_name}-clone",
|
||||
first_action => 'start',
|
||||
second_action => 'start',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::vncproxy_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::api_service_name]],
|
||||
}
|
||||
pacemaker::constraint::colocation { 'nova-api-with-nova-vncproxy-colocation':
|
||||
source => "${::nova::params::api_service_name}-clone",
|
||||
target => "${::nova::params::vncproxy_service_name}-clone",
|
||||
score => 'INFINITY',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::vncproxy_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::api_service_name]],
|
||||
}
|
||||
pacemaker::constraint::base { 'nova-api-then-nova-scheduler-constraint':
|
||||
constraint_type => 'order',
|
||||
first_resource => "${::nova::params::api_service_name}-clone",
|
||||
second_resource => "${::nova::params::scheduler_service_name}-clone",
|
||||
first_action => 'start',
|
||||
second_action => 'start',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::api_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::scheduler_service_name]],
|
||||
}
|
||||
pacemaker::constraint::colocation { 'nova-scheduler-with-nova-api-colocation':
|
||||
source => "${::nova::params::scheduler_service_name}-clone",
|
||||
target => "${::nova::params::api_service_name}-clone",
|
||||
score => 'INFINITY',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::api_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::scheduler_service_name]],
|
||||
}
|
||||
pacemaker::constraint::base { 'nova-scheduler-then-nova-conductor-constraint':
|
||||
constraint_type => 'order',
|
||||
first_resource => "${::nova::params::scheduler_service_name}-clone",
|
||||
second_resource => "${::nova::params::conductor_service_name}-clone",
|
||||
first_action => 'start',
|
||||
second_action => 'start',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::scheduler_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::conductor_service_name]],
|
||||
}
|
||||
pacemaker::constraint::colocation { 'nova-conductor-with-nova-scheduler-colocation':
|
||||
source => "${::nova::params::conductor_service_name}-clone",
|
||||
target => "${::nova::params::scheduler_service_name}-clone",
|
||||
score => 'INFINITY',
|
||||
require => [Pacemaker::Resource::Service[$::nova::params::scheduler_service_name],
|
||||
Pacemaker::Resource::Service[$::nova::params::conductor_service_name]],
|
||||
}
|
||||
|
||||
# Fedora doesn't know `require-all` parameter for constraints yet
|
||||
if $::operatingsystem == 'Fedora' {
|
||||
$redis_aodh_constraint_params = undef
|
||||
|
|
Loading…
Reference in New Issue