Stop deploying Nova API in WSGI with Apache
authorEmilien Macchi <emilien@redhat.com>
Fri, 3 Feb 2017 15:30:59 +0000 (10:30 -0500)
committerEmilien Macchi <emilien@redhat.com>
Tue, 7 Feb 2017 19:33:13 +0000 (19:33 +0000)
It was suggested by Nova team to not deploying Nova API in WSGI with
Apache in production.
It's causing some issues that we didn't catch until now (see in the bug
report). Until we figure out what was wrong, let's disable it so we can
move forward in the upgrade process.

Change-Id: I09b73476762593642a0e011f83f0233de68f2c33
Related-Bug: 1661360

puppet/services/nova-api.yaml

index 892e63d..0c5f3af 100644 (file)
@@ -63,13 +63,15 @@ conditions:
   nova_workers_zero: {equals : [{get_param: NovaWorkers}, 0]}
 
 resources:
-  ApacheServiceBase:
-    type: ./apache.yaml
-    properties:
-      ServiceNetMap: {get_param: ServiceNetMap}
-      DefaultPasswords: {get_param: DefaultPasswords}
-      EndpointMap: {get_param: EndpointMap}
-      EnableInternalTLS: {get_param: EnableInternalTLS}
+  # Temporarily disable Nova API deployed in WSGI
+  # https://bugs.launchpad.net/nova/+bug/1661360
+  # ApacheServiceBase:
+  #   type: ./apache.yaml
+  #   properties:
+  #     ServiceNetMap: {get_param: ServiceNetMap}
+  #     DefaultPasswords: {get_param: DefaultPasswords}
+  #     EndpointMap: {get_param: EndpointMap}
+  #     EnableInternalTLS: {get_param: EnableInternalTLS}
 
   NovaBase:
     type: ./nova-base.yaml
@@ -90,7 +92,9 @@ outputs:
       config_settings:
         map_merge:
         - get_attr: [NovaBase, role_data, config_settings]
-        - get_attr: [ApacheServiceBase, role_data, config_settings]
+        # Temporarily disable Nova API deployed in WSGI
+        # https://bugs.launchpad.net/nova/+bug/1661360
+        # - get_attr: [ApacheServiceBase, role_data, config_settings]
         - nova::cron::archive_deleted_rows::hour: '*/12'
           nova::cron::archive_deleted_rows::destination: '/dev/null'
           tripleo.nova_api.firewall_rules:
@@ -115,20 +119,23 @@ outputs:
                 "%{hiera('fqdn_$NETWORK')}"
               params:
                 $NETWORK: {get_param: [ServiceNetMap, NovaApiNetwork]}
-          nova::api::service_name: 'httpd'
-          nova::wsgi::apache_api::ssl: {get_param: EnableInternalTLS}
+          # Temporarily disable Nova API deployed in WSGI
+          # https://bugs.launchpad.net/nova/+bug/1661360
+          nova_wsgi_enabled: false
+          # nova::api::service_name: 'httpd'
+          # nova::wsgi::apache_api::ssl: {get_param: EnableInternalTLS}
           # NOTE: bind IP is found in Heat replacing the network name with the local node IP
           # for the given network; replacement examples (eg. for internal_api):
           # internal_api -> IP
           # internal_api_uri -> [IP]
           # internal_api_subnet - > IP/CIDR
-          nova::wsgi::apache_api::bind_host: {get_param: [ServiceNetMap, NovaApiNetwork]}
-          nova::wsgi::apache_api::servername:
-            str_replace:
-              template:
-                "%{hiera('fqdn_$NETWORK')}"
-              params:
-                $NETWORK: {get_param: [ServiceNetMap, NovaApiNetwork]}
+          nova::wsgi::apache_api::bind_host: {get_param: [ServiceNetMap, NovaApiNetwork]}
+          nova::wsgi::apache_api::servername:
+            str_replace:
+              template:
+                "%{hiera('fqdn_$NETWORK')}"
+              params:
+                $NETWORK: {get_param: [ServiceNetMap, NovaApiNetwork]}
           nova::api::neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret}
           nova::api::instance_name_template: {get_param: InstanceNameTemplate}
           nova_enable_db_purge: {get_param: NovaEnableDBPurge}
@@ -137,7 +144,9 @@ outputs:
           - nova_workers_zero
           - {}
           - nova::api::osapi_compute_workers: {get_param: NovaWorkers}
-            nova::wsgi::apache_api::workers: {get_param: NovaWorkers}
+          # Temporarily disable Nova API deployed in WSGI
+          # https://bugs.launchpad.net/nova/+bug/1661360
+          # nova::wsgi::apache_api::workers: {get_param: NovaWorkers}
       step_config: |
         include tripleo::profile::base::nova::api
       service_config_settings:
@@ -165,5 +174,7 @@ outputs:
           nova::keystone::auth::admin_url: {get_param: [EndpointMap, NovaAdmin, uri]}
           nova::keystone::auth::password: {get_param: NovaPassword}
           nova::keystone::auth::region: {get_param: KeystoneRegion}
-      metadata_settings:
-        get_attr: [ApacheServiceBase, role_data, metadata_settings]
+      # Temporarily disable Nova API deployed in WSGI
+      # https://bugs.launchpad.net/nova/+bug/1661360
+      # metadata_settings:
+      #   get_attr: [ApacheServiceBase, role_data, metadata_settings]