Map Heat services to isolated networks
authorDan Sneddon <dsneddon@redhat.com>
Wed, 27 May 2015 01:49:24 +0000 (18:49 -0700)
committerDan Sneddon <dsneddon@redhat.com>
Wed, 27 May 2015 07:45:16 +0000 (07:45 +0000)
This change adds parameters to specify which networks the Heat services
will use. If the internal_api network exists, the Heat API, Heat Cloud
Formations, and Heat Cloudwatch services will bind to the IP address on
that network, otherwise the services will default to the IP on the
Undercloud 'ctlplane' network.

Change-Id: I5febe1b9071600b43fa76c6cf415db83cad472ab

overcloud-resource-registry-puppet.yaml
puppet/controller-puppet.yaml

index 8e26266..fbd20bc 100644 (file)
@@ -75,3 +75,6 @@ parameter_defaults:
     KeystoneAdminApiNetwork: internal_api
     KeystonePublicApiNetwork: external
     NeutronApiNetwork: internal_api
+    HeatApiNetwork: internal_api
+    HeatApiCfnNetwork: internal_api
+    HeatApiCloudwatchNetwork: internal_api
index e9a7d48..169280f 100644 (file)
@@ -783,9 +783,9 @@ resources:
                 heat::auth_uri: {get_input: keystone_auth_uri}
                 heat::identity_uri: {get_input: keystone_identity_uri}
                 heat::keystone_password: {get_input: heat_password}
-                heat::api::bind_host: {get_input: controller_host}
-                heat::api_cloudwatch::bind_host: {get_input: controller_host}
-                heat::api_cfn::bind_host: {get_input: controller_host}
+                heat::api::bind_host: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
+                heat::api_cloudwatch::bind_host: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiCloudwatchNetwork]}]}
+                heat::api_cfn::bind_host: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiCfnNetwork]}]}
                 heat::database_connection: {get_input: heat_dsn}
                 heat::instance_user: heat-admin
                 heat::debug: {get_input: debug}