Adding core_plugin, type_drivers and service_plugins parameters
authorShiva Prasad Rao <shirvao@cisco.com>
Thu, 20 Aug 2015 20:35:59 +0000 (16:35 -0400)
committerShiva Prasad Rao <shivrao@cisco.com>
Fri, 25 Sep 2015 18:31:58 +0000 (11:31 -0700)
Make core_plugin, type_drivers and service_plugins parameter in
neutron configurable through heat.
Also changing the type_drivers order to "vxlan,vlan,flat,gre"

Change-Id: Iba895ed5897bdaf7bb772ffc063c424abb6e1638

compute.yaml
controller.yaml
overcloud-without-mergepy.yaml
puppet/compute.yaml
puppet/controller.yaml
puppet/hieradata/common.yaml
puppet/hieradata/controller.yaml

index dd968e7..88d4cb2 100644 (file)
@@ -181,6 +181,23 @@ parameters:
     default: 'unset'
     description: Shared secret to prevent spoofing
     type: string
+  NeutronCorePlugin:
+    default: "ml2"
+    description: |
+        The core plugin for Neutron. The value should be the entrypoint to be loaded
+        from neutron.core_plugins namespace.
+    type: string
+  NeutronServicePlugins:
+    default: "router"
+    description: |
+        Comma-separated list of service plugin entrypoints to be loaded from the
+        neutron.service_plugins namespace.
+    type: comma_delimited_list
+  NeutronTypeDrivers:
+    default: "vxlan,vlan,flat,gre"
+    description: |
+        Comma-separated list of network type driver entrypoints to be loaded.
+    type: comma_delimited_list
   NeutronMechanismDrivers:
     default: 'openvswitch'
     description: |
@@ -367,6 +384,9 @@ resources:
           agent_mode: {get_input: neutron_agent_mode}
           ovs_db: {get_input: neutron_dsn}
           metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
+          core_plugin: {get_input: neutron_core_plugin}
+          service_plugins: {get_input: neutron_service_plugins}
+          type_drivers: {get_input: neutron_type_drivers}
           mechanism_drivers: {get_input: neutron_mechanism_drivers}
           allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
           l3_ha: {get_input: neutron_l3_ha}
@@ -444,6 +464,23 @@ resources:
         neutron_agent_mode: {get_param: NeutronAgentMode}
         neutron_router_distributed: {get_param: NeutronDVR}
         neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
+        neutron_core_plugin: {get_param: NeutronCorePlugin}
+        neutron_service_plugins:
+          str_replace:
+            template: "['PLUGINS']"
+            params:
+              PLUGINS:
+                list_join:
+                - "','"
+                - {get_param: NeutronServicePlugins}
+        neutron_type_drivers:
+          str_replace:
+            template: "['DRIVERS']"
+            params:
+              DRIVERS:
+                list_join:
+                - "','"
+                - {get_param: NeutronTypeDrivers}
         neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
         neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
         neutron_l3_ha: {get_param: NeutronL3HA}
index d6438d1..18dcc8e 100644 (file)
@@ -317,6 +317,23 @@ parameters:
     default: 'unset'
     description: Shared secret to prevent spoofing
     type: string
+  NeutronCorePlugin:
+    default: 'ml2'
+    description: |
+        The core plugin for Neutron. The value should be the entrypoint to be loaded
+        from neutron.core_plugins namespace.
+    type: string
+  NeutronServicePlugins:
+    default: "router"
+    description: |
+        Comma-separated list of service plugin entrypoints to be loaded from the
+        neutron.service_plugins namespace.
+    type: comma_delimited_list
+  NeutronTypeDrivers:
+    default: "vxlan,vlan,flat,gre"
+    description: |
+        Comma-separated list of network type driver entrypoints to be loaded.
+    type: comma_delimited_list
   NeutronMechanismDrivers:
     default: 'openvswitch'
     description: |
@@ -687,6 +704,9 @@ resources:
           metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
           agent_mode: {get_input: neutron_agent_mode}
           router_distributed: {get_input: neutron_router_distributed}
+          core_plugin: {get_input: neutron_core_plugin}
+          service_plugins: {get_input: neutron_service_plugins}
+          type_drivers: {get_input: neutron_type_drivers}
           mechanism_drivers: {get_input: neutron_mechanism_drivers}
           allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
           l3_ha: {get_input: neutron_l3_ha}
@@ -934,6 +954,23 @@ resources:
         neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
         neutron_agent_mode: {get_param: NeutronAgentMode}
         neutron_router_distributed: {get_param: NeutronDVR}
+        neutron_core_plugin: {get_param: NeutronCorePlugin}
+        neutron_service_plugins:
+          str_replace:
+            template: "['PLUGINS']"
+            params:
+              PLUGINS:
+                list_join:
+                - "','"
+                - {get_param: NeutronServicePlugins}
+        neutron_type_drivers:
+          str_replace:
+            template: "['DRIVERS']"
+            params:
+              DRIVERS:
+                list_join:
+                - "','"
+                - {get_param: NeutronTypeDrivers}
         neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
         neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
         neutron_l3_ha: {get_param: NeutronL3HA}
index e7c4dfc..4b065dd 100644 (file)
@@ -172,6 +172,23 @@ parameters:
         of VXLAN VNI IDs that are available for tenant network allocation
     default: ["1:1000", ]
     type: comma_delimited_list
+  NeutronCorePlugin:
+    default: 'ml2'
+    description: |
+        The core plugin for Neutron. The value should be the entrypoint to be loaded
+        from neutron.core_plugins namespace.
+    type: string
+  NeutronServicePlugins:
+    default: "router"
+    description: |
+        Comma-separated list of service plugin entrypoints to be loaded from the
+        neutron.service_plugins namespace.
+    type: comma_delimited_list
+  NeutronTypeDrivers:
+    default: "vxlan,vlan,flat,gre"
+    description: |
+        Comma-separated list of network type driver entrypoints to be loaded.
+    type: comma_delimited_list
   NeutronMechanismDrivers:
     default: 'openvswitch'
     description: |
@@ -792,6 +809,9 @@ resources:
           NeutronDVR: {get_param: NeutronDVR}
           NeutronMetadataProxySharedSecret: {get_param: NeutronMetadataProxySharedSecret}
           NeutronAgentMode: {get_param: NeutronAgentMode}
+          NeutronCorePlugin: {get_param: NeutronCorePlugin}
+          NeutronServicePlugins: {get_param: NeutronServicePlugins}
+          NeutronTypeDrivers: {get_param: NeutronTypeDrivers}
           NeutronMechanismDrivers: {get_param: NeutronMechanismDrivers}
           NeutronAllowL3AgentFailover: {get_param: NeutronAllowL3AgentFailover}
           NeutronL3HA: {get_param: NeutronL3HA}
@@ -875,6 +895,9 @@ resources:
           NeutronMetadataProxySharedSecret: {get_param: NeutronMetadataProxySharedSecret}
           NeutronAgentMode: {get_param: NeutronComputeAgentMode}
           NeutronPublicInterfaceRawDevice: {get_param: NeutronPublicInterfaceRawDevice}
+          NeutronCorePlugin: {get_param: NeutronCorePlugin}
+          NeutronServicePlugins: {get_param: NeutronServicePlugins}
+          NeutronTypeDrivers: {get_param: NeutronTypeDrivers}
           NeutronMechanismDrivers: {get_param: NeutronMechanismDrivers}
           # L3 HA and Failover is not relevant for Computes, should be removed
           NeutronAllowL3AgentFailover: {get_param: NeutronAllowL3AgentFailover}
index 3f73099..99a54e0 100644 (file)
@@ -149,6 +149,23 @@ parameters:
     default: 'unset'
     description: Shared secret to prevent spoofing
     type: string
+  NeutronCorePlugin:
+    default: 'ml2'
+    description: |
+        The core plugin for Neutron. The value should be the entrypoint to be loaded
+        from neutron.core_plugins namespace.
+    type: string
+  NeutronServicePlugins:
+    default: "router"
+    description: |
+        Comma-separated list of service plugin entrypoints to be loaded from the
+        neutron.service_plugins namespace.
+    type: comma_delimited_list
+  NeutronTypeDrivers:
+    default: "vxlan,vlan,flat,gre"
+    description: |
+        Comma-separated list of network type driver entrypoints to be loaded.
+    type: comma_delimited_list
   NeutronMechanismDrivers:
     default: 'openvswitch'
     description: |
@@ -403,6 +420,9 @@ resources:
                 neutron_router_distributed: {get_input: neutron_router_distributed}
                 neutron_agent_mode: {get_input: neutron_agent_mode}
                 neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
+                neutron::core_plugin: {get_input: neutron_core_plugin}
+                neutron::service_plugins: {get_input: neutron_service_plugins}
+                neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
                 neutron_mechanism_drivers: {get_input: neutron_mechanism_drivers}
                 neutron_public_interface_raw_device: {get_input: neutron_public_interface_raw_device}
                 admin_password: {get_input: admin_password}
@@ -481,6 +501,23 @@ resources:
         neutron_agent_mode: {get_param: NeutronAgentMode}
         neutron_router_distributed: {get_param: NeutronDVR}
         neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
+        neutron_core_plugin: {get_param: NeutronCorePlugin}
+        neutron_service_plugins:
+          str_replace:
+            template: "['PLUGINS']"
+            params:
+              PLUGINS:
+                list_join:
+                - "','"
+                - {get_param: NeutronServicePlugins}
+        neutron_type_drivers:
+          str_replace:
+            template: "['DRIVERS']"
+            params:
+              DRIVERS:
+                list_join:
+                - "','"
+                - {get_param: NeutronTypeDrivers}
         neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
         neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
         neutron_url:
index 084fe3d..57158e5 100644 (file)
@@ -297,6 +297,23 @@ parameters:
     default: 'unset'
     description: Shared secret to prevent spoofing
     type: string
+  NeutronCorePlugin:
+    default: 'ml2'
+    description: |
+        The core plugin for Neutron. The value should be the entrypoint to be loaded
+        from neutron.core_plugins namespace.
+    type: string
+  NeutronServicePlugins:
+    default: "router"
+    description: |
+        Comma-separated list of service plugin entrypoints to be loaded from the
+        neutron.service_plugins namespace.
+    type: comma_delimited_list
+  NeutronTypeDrivers:
+    default: "vxlan,vlan,flat,gre"
+    description: |
+        Comma-separated list of network type driver entrypoints to be loaded.
+    type: comma_delimited_list
   NeutronMechanismDrivers:
     default: 'openvswitch'
     description: |
@@ -748,6 +765,23 @@ resources:
         neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
         neutron_agent_mode: {get_param: NeutronAgentMode}
         neutron_router_distributed: {get_param: NeutronDVR}
+        neutron_core_plugin: {get_param: NeutronCorePlugin}
+        neutron_service_plugins:
+          str_replace:
+            template: "['PLUGINS']"
+            params:
+              PLUGINS:
+                list_join:
+                - "','"
+                - {get_param: NeutronServicePlugins}
+        neutron_type_drivers:
+          str_replace:
+            template: "['DRIVERS']"
+            params:
+              DRIVERS:
+                list_join:
+                - "','"
+                - {get_param: NeutronTypeDrivers}
         neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers}
         neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover}
         neutron_l3_ha: {get_param: NeutronL3HA}
@@ -1075,6 +1109,9 @@ resources:
                 neutron::agents::metadata::metadata_ip: {get_input: neutron_api_network}
                 neutron_agent_mode: {get_input: neutron_agent_mode}
                 neutron_router_distributed: {get_input: neutron_router_distributed}
+                neutron::core_plugin: {get_input: neutron_core_plugin}
+                neutron::service_plugins: {get_input: neutron_service_plugins}
+                neutron::plugins::ml2::type_drivers: {get_input: neutron_type_drivers}
                 neutron_mechanism_drivers: {get_input: neutron_mechanism_drivers}
                 neutron::server::allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover}
                 neutron::server::l3_ha: {get_input: neutron_l3_ha}
index 455f7f2..4a872d5 100644 (file)
@@ -14,11 +14,6 @@ nova::network::neutron::vif_plugging_timeout: 30
 nova::network::neutron::dhcp_domain: ''
 
 neutron::allow_overlapping_ips: true
-neutron::plugins::ml2::type_drivers:
-  - flat
-  - gre
-  - vxlan
-  - vlan
 
 sysctl_settings:
   net.ipv4.tcp_keepalive_intvl:
index 3c5697e..a66c1ea 100644 (file)
@@ -66,9 +66,6 @@ glance::backend::swift::swift_store_create_container_on_put: true
 glance::backend::rbd::rbd_store_user: 'openstack'
 
 # neutron
-neutron::core_plugin: 'ml2'
-neutron::service_plugins:
-  - 'neutron.services.l3_router.l3_router_plugin.L3RouterPlugin'
 neutron::server::sync_db: true
 neutron::agents::dhcp::dnsmasq_config_file: /etc/neutron/dnsmasq-neutron.conf