aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormarios <marios@redhat.com>2015-09-30 13:47:58 +0300
committermarios <marios@redhat.com>2015-10-06 09:03:52 +0300
commit3dd47a7c2a4ef9f565249053c49d65561ad95741 (patch)
tree120b655a80672ac39c2a7c3c4776c142a5b8438c
parent9e918a4a517f62d4417909311041e3e54a726462 (diff)
Rework pacemaker constraints from ovs and netns cleanup agents
In the current neutron-* services constraints chain, the ovs and netns cleanup services are re-run after a neutron-server restart. As discussed at [1] this may not be desirable leaving some neutron services down and any tenant routers without IP. This review introduces a second constraints chain so we now have: neutron-server-->openvswitch-->dhcp-->l3-->metadata and ovs-cleanup-->netns-cleanup-->openvswitch Instead of a single chain like neutron-server-->ovs-cleanup-->netns-cleanup-->openvswitch--> dhcp-->l3-->metadata [1] https://bugzilla.redhat.com/show_bug.cgi?id=1266910#c12 Related-Bug: 1501378 Change-Id: I4096704257aff74ff5bd37d8d01d8a776c6c6a76
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp40
1 files changed, 22 insertions, 18 deletions
diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
index 7615290a..8af898ee 100644
--- a/puppet/manifests/overcloud_controller_pacemaker.pp
+++ b/puppet/manifests/overcloud_controller_pacemaker.pp
@@ -1048,24 +1048,8 @@ if hiera('step') >= 4 {
ocf_agent_name => "neutron:NetnsCleanup",
clone_params => "interleave=true",
}
- pacemaker::constraint::base { 'keystone-to-neutron-server-constraint':
- constraint_type => "order",
- first_resource => "${::keystone::params::service_name}-clone",
- second_resource => "${::neutron::params::server_service}-clone",
- first_action => "start",
- second_action => "start",
- require => [Pacemaker::Resource::Service[$::keystone::params::service_name],
- Pacemaker::Resource::Service[$::neutron::params::server_service]],
- }
- pacemaker::constraint::base { 'neutron-server-to-neutron-ovs-cleanup-constraint':
- constraint_type => "order",
- first_resource => "${::neutron::params::server_service}-clone",
- second_resource => "${::neutron::params::ovs_cleanup_service}-clone",
- first_action => "start",
- second_action => "start",
- require => [Pacemaker::Resource::Service[$::neutron::params::server_service],
- Pacemaker::Resource::Ocf["${::neutron::params::ovs_cleanup_service}"]],
- }
+
+ # neutron - one chain ovs-cleanup-->netns-cleanup-->ovs-agent
pacemaker::constraint::base { 'neutron-ovs-cleanup-to-netns-cleanup-constraint':
constraint_type => "order",
first_resource => "${::neutron::params::ovs_cleanup_service}-clone",
@@ -1098,6 +1082,26 @@ if hiera('step') >= 4 {
require => [Pacemaker::Resource::Ocf["neutron-netns-cleanup"],
Pacemaker::Resource::Service["${::neutron::params::ovs_agent_service}"]],
}
+
+ #another chain keystone-->neutron-server-->ovs-agent-->dhcp-->l3
+ pacemaker::constraint::base { 'keystone-to-neutron-server-constraint':
+ constraint_type => "order",
+ first_resource => "${::keystone::params::service_name}-clone",
+ second_resource => "${::neutron::params::server_service}-clone",
+ first_action => "start",
+ second_action => "start",
+ require => [Pacemaker::Resource::Service[$::keystone::params::service_name],
+ Pacemaker::Resource::Service[$::neutron::params::server_service]],
+ }
+ pacemaker::constraint::base { 'neutron-server-to-openvswitch-agent-constraint':
+ constraint_type => "order",
+ first_resource => "${::neutron::params::server_service}-clone",
+ second_resource => "${::neutron::params::ovs_agent_service}-clone",
+ first_action => "start",
+ second_action => "start",
+ require => [Pacemaker::Resource::Service[$::neutron::params::server_service],
+ Pacemaker::Resource::Service[$::neutron::params::ovs_agent_service]],
+ }
pacemaker::constraint::base { 'neutron-openvswitch-agent-to-dhcp-agent-constraint':
constraint_type => "order",
first_resource => "${::neutron::params::ovs_agent_service}-clone",