diff options
author | marios <marios@redhat.com> | 2015-09-30 13:47:58 +0300 |
---|---|---|
committer | marios <marios@redhat.com> | 2015-10-06 09:03:52 +0300 |
commit | 3dd47a7c2a4ef9f565249053c49d65561ad95741 (patch) | |
tree | 120b655a80672ac39c2a7c3c4776c142a5b8438c /puppet | |
parent | 9e918a4a517f62d4417909311041e3e54a726462 (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
Diffstat (limited to 'puppet')
-rw-r--r-- | puppet/manifests/overcloud_controller_pacemaker.pp | 40 |
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", |