Map Horizon, Redis, Rabbit, memcached to isolated nets

This change adds parameters to select the networks for Horizon,
Redis, Rabbit MQ, and memcached services. Horizon is often used for
administration from outside the cloud, so if the external network
exists, Horizon will bind to that IP, otherwise it will default to
the Undercloud 'ctlplane' network. Redis, Rabbit MQ, and memcached
will bind to IPs on the internal_api network if it exists, else
they will default to the 'ctlplane' network as well. Any of these
network assignments can be overridden with an environment file.

Change-Id: Ie0aa46b4a3c00d3826866796b4ec3b14f71f987c
This commit is contained in:
Dan Sneddon 2015-05-27 01:42:49 -07:00
parent 4e891510e0
commit 2dfa94657e
2 changed files with 8 additions and 4 deletions

View File

@ -82,3 +82,7 @@ parameter_defaults:
NovaMetadataNetwork: internal_api
SwiftMgmtNetwork: storage_mgmt
SwiftProxyNetwork: storage
HorizonNetwork: external
MemcachedNetwork: internal_api
RabbitMqNetwork: internal_api
RedisNetwork: internal_api

View File

@ -882,16 +882,16 @@ resources:
# Horizon
horizon::django_debug: {get_input: debug}
horizon::secret_key: {get_input: horizon_secret}
horizon::bind_address: {get_input: controller_host}
horizon::bind_address: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
horizon::keystone_url: {get_input: keystone_auth_uri}
# Rabbit
rabbitmq::node_ip_address: {get_input: controller_host}
rabbitmq::node_ip_address: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
rabbitmq::erlang_cookie: {get_input: rabbit_cookie}
# Redis
redis::bind: {get_input: controller_host}
redis::bind: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, RedisNetwork]}]}
# Misc
memcached::listen_ip: {get_input: controller_host}
memcached::listen_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MemcachedNetwork]}]}
neutron_public_interface_ip: {get_input: neutron_public_interface_ip}
ntp::servers: {get_input: ntp_servers}
control_virtual_interface: {get_input: control_virtual_interface}