Puppet: Configure neutron_api_class on controller
authorJiri Stransky <jistr@redhat.com>
Wed, 11 Mar 2015 17:44:28 +0000 (18:44 +0100)
committerDan Prince <dprince@redhat.com>
Wed, 11 Mar 2015 20:54:55 +0000 (16:54 -0400)
We're already configuring Neutron in Overcloud, but the controller
is still configured to use the default Nova neutron_api_class for
default configuration for networking, which means it used Nova Network
and not Neutron. This causes some of the Nova API is_neutron
checks to behave incorrectly.

This patch updates the controller to use nova::network::neutron (like
we already do on the overcloud_compute.pp role). As part of the change
several of the compute specific hiera settings for the
nova::network::neutron class have been moved to common.yaml.

Change-Id: Id2d5a5a0aa1ca087de714880ef1ea98484b06849

puppet/controller-puppet.yaml
puppet/hieradata/common.yaml
puppet/hieradata/compute.yaml
puppet/manifests/overcloud_controller.pp

index 5f9bd8b..3e2957f 100644 (file)
@@ -506,6 +506,18 @@ resources:
             - - 'mysql://neutron:unset@'
               - {get_param: VirtualIP}
               - '/ovs_neutron?charset=utf8'
+        neutron_url:
+          list_join:
+            - ''
+            - - 'http://'
+              - {get_param: VirtualIP}
+              - ':9696'
+        neutron_admin_auth_url:
+          list_join:
+            - ''
+            - - 'http://'
+              - {get_param: VirtualIP}
+              - ':35357/v2.0'
         ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}
         ceilometer_password: {get_param: CeilometerPassword}
         ceilometer_dsn:
@@ -701,6 +713,10 @@ resources:
                 nova::api::admin_password: {get_input: nova_password}
                 nova::database_connection: {get_input: nova_dsn}
                 nova::api::neutron_metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret}
+                nova::network::neutron::neutron_admin_password: {get_input: neutron_password}
+                nova::network::neutron::neutron_url: {get_input: neutron_url}
+                nova::network::neutron::neutron_admin_auth_url: {get_input: neutron_admin_auth_url}
+
                 # Rabbit
                 rabbit_username: {get_input: rabbit_username}
                 rabbit_password: {get_input: rabbit_password}
index a75bbe3..14ba97e 100644 (file)
@@ -6,3 +6,9 @@ ceilometer::agent::auth::auth_region: 'regionOne'
 # FIXME: Might be better to use 'service' tenant here but this requires
 # changes in the tripleo-incubator keystone role setup
 ceilometer::agent::auth::auth_tenant_name: 'admin'
+
+nova::network::neutron::neutron_admin_tenant_name: 'service'
+nova::network::neutron::neutron_admin_username: 'neutron'
+nova::network::neutron::vif_plugging_is_fatal: false
+nova::network::neutron::vif_plugging_timeout: 30
+
index ffa716a..8d5c88f 100644 (file)
@@ -10,11 +10,6 @@ nova::compute::vnc_enabled: true
 nova::compute::libvirt::vncserver_listen: '0.0.0.0'
 nova::compute::libvirt::migration_support: true
 
-nova::network::neutron::neutron_admin_tenant_name: 'service'
-nova::network::neutron::neutron_admin_username: 'neutron'
-nova::network::neutron::vif_plugging_is_fatal: false
-nova::network::neutron::vif_plugging_timeout: 30
-
 neutron::plugins::ml2::tunnel_id_ranges: ['1:1000']
 
 ceilometer::agent::auth::auth_tenant_name: 'service'
index 390edda..81e8799 100644 (file)
@@ -210,6 +210,7 @@ if hiera('step') >= 2 {
   include ::nova::cert
   include ::nova::conductor
   include ::nova::consoleauth
+  include ::nova::network::neutron
   include ::nova::vncproxy
   include ::nova::scheduler