Merge "compute: restart OVS agent on neutron.conf changes"
authorJenkins <jenkins@review.openstack.org>
Wed, 30 Mar 2016 09:35:19 +0000 (09:35 +0000)
committerGerrit Code Review <review@openstack.org>
Wed, 30 Mar 2016 09:35:19 +0000 (09:35 +0000)
1  2 
puppet/manifests/overcloud_compute.pp

@@@ -152,22 -152,18 +152,32 @@@ elsif hiera('neutron::core_plugin') == 
    #  require => Class['contrail::vrouter'],
    #}
  }
 +elsif hiera('neutron::core_plugin') == 'networking_plumgrid.neutron.plugins.plugin.NeutronPluginPLUMgridV2' {
 +  # forward all ipv4 traffic
 +  # this is required for the vms to pass through the gateways public interface
 +  sysctl::value { 'net.ipv4.ip_forward': value => '1' }
 +
 +  # ifc_ctl_pp needs to be invoked by root as part of the vif.py when a VM is powered on
 +  file { '/etc/sudoers.d/ifc_ctl_sudoers':
 +    ensure  => file,
 +    owner   => root,
 +    group   => root,
 +    mode    => '0440',
 +    content => "nova ALL=(root) NOPASSWD: /opt/pg/bin/ifc_ctl_pp *\n",
 +  }
 +}
  else {
  
+   # NOTE: this code won't live in puppet-neutron until Neutron OVS agent
+   # can be gracefully restarted. See https://review.openstack.org/#/c/297211
+   # In the meantime, it's safe to restart the agent on each change in neutron.conf,
+   # because Puppet changes are supposed to be done during bootstrap and upgrades.
+   # Some resource managed by Neutron_config (like messaging and logging options) require
+   # a restart of OVS agent. This code does it.
+   # In Newton, OVS agent will be able to be restarted gracefully so we'll drop the code
+   # from here and fix it in puppet-neutron.
+   Neutron_config<||> ~> Service['neutron-ovs-agent-service']
    include ::neutron::plugins::ml2
    include ::neutron::agents::ml2::ovs