Composable Midonet compute plugin
authorDan Prince <dprince@redhat.com>
Wed, 6 Jul 2016 18:17:39 +0000 (14:17 -0400)
committerDan Prince <dprince@redhat.com>
Tue, 12 Jul 2016 13:48:31 +0000 (09:48 -0400)
Adds a new neutron compute plugin used to help configure midonet
for use on compute nodes.

Change-Id: I3a6996d3d9557ecad5ccd26a3901caccbf111468

environments/neutron-midonet.yaml
puppet/manifests/overcloud_compute.pp
puppet/services/neutron-compute-plugin-midonet.yaml [new file with mode: 0644]

index cdf5fb6..c120d0b 100644 (file)
@@ -7,7 +7,7 @@ resource_registry:
   OS::TripleO::Services::ComputeNeutronOvsAgent: OS::Heat::None
   # Override the NeutronCorePlugin to use Nuage
   OS::TripleO::Services::NeutronCorePlugin: OS::TripleO::Services::NeutronCorePluginMidonet
-  OS::TripleO::Services::ComputeNeutronCorePlugin: OS::Heat::None
+  OS::TripleO::Services::ComputeNeutronCorePlugin: ../puppet/services/neutron-compute-plugin-midonet.yaml
 
 parameter_defaults:
   EnableZookeeperOnController: true
index ddb1c35..6c74ee8 100644 (file)
@@ -33,28 +33,7 @@ if hiera('step') >= 4 {
     'DEFAULT/linuxnet_interface_driver': value => 'nova.network.linux_net.LinuxOVSInterfaceDriver';
   }
 
-  if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
-    file { '/etc/libvirt/qemu.conf':
-      ensure  => present,
-      content => hiera('midonet_libvirt_qemu_data')
-    }
-  }
-
-  # If the value of core plugin is set to 'midonet',
-  # include midonet agent,
-  # else use the default value of 'ml2'
-  if hiera('neutron::core_plugin') == 'midonet.neutron.plugin_v1.MidonetPluginV2' {
-
-    # TODO(devvesa) provide non-controller ips for these services
-    $zookeeper_node_ips = hiera('neutron_api_node_ips')
-    $cassandra_node_ips = hiera('neutron_api_node_ips')
-
-    class { '::tripleo::network::midonet::agent':
-      zookeeper_servers => $zookeeper_node_ips,
-      cassandra_seeds   => $cassandra_node_ips
-    }
-  }
-  elsif hiera('neutron::core_plugin') == 'neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2' {
+  if hiera('neutron::core_plugin') == 'neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2' {
 
     include ::contrail::vrouter
     # NOTE: it's not possible to use this class without a functional
diff --git a/puppet/services/neutron-compute-plugin-midonet.yaml b/puppet/services/neutron-compute-plugin-midonet.yaml
new file mode 100644 (file)
index 0000000..c3b65c4
--- /dev/null
@@ -0,0 +1,19 @@
+heat_template_version: 2016-04-08
+
+description: >
+  OpenStack Neutron Compute Midonet plugin
+
+parameters:
+  EndpointMap:
+    default: {}
+    description: Mapping of service endpoint -> protocol. Typically set
+                 via parameter_defaults in the resource registry.
+    type: json
+
+outputs:
+  role_data:
+    description: Role data for the Neutron Compute Plumgrid plugin
+    value:
+      config_settings:
+      step_config: |
+        include ::tripleo::profile::base::neutron::agents::midonet