From ff86a856a61ef2d177e05cb5a26d87f7d5741c78 Mon Sep 17 00:00:00 2001 From: Steven Hardy Date: Tue, 4 Oct 2016 15:52:19 +0100 Subject: j2 template per-role ServiceNetMapDefaults The *HostnameResolveNetwork should default to a sane value for all roles, including those specified by the user. We choose internal_api by default (maintaining the existing special-case for the CephStorage role which uses the storage network), but users can of course override the default with a network of their choice. Change-Id: Ib240f56c1db5842b953fa510316e75fd53f24735 Closes-Bug: #1629827 --- network/service_net_map.j2.yaml | 101 ++++++++++++++++++++++++++++++++++++++++ network/service_net_map.yaml | 100 --------------------------------------- 2 files changed, 101 insertions(+), 100 deletions(-) create mode 100644 network/service_net_map.j2.yaml delete mode 100644 network/service_net_map.yaml (limited to 'network') diff --git a/network/service_net_map.j2.yaml b/network/service_net_map.j2.yaml new file mode 100644 index 00000000..2f78133b --- /dev/null +++ b/network/service_net_map.j2.yaml @@ -0,0 +1,101 @@ +heat_template_version: 2016-10-14 + +description: > + Mapping of service_name_network -> network name + +parameters: + ServiceNetMap: + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. This + mapping overrides those in ServiceNetMapDefaults. + default: {} + type: json + + ServiceNetMapDefaults: + default: + ApacheNetwork: internal_api + NeutronTenantNetwork: tenant + CeilometerApiNetwork: internal_api + AodhApiNetwork: internal_api + GnocchiApiNetwork: internal_api + MongodbNetwork: internal_api + CinderApiNetwork: internal_api + CinderIscsiNetwork: storage + GlanceApiNetwork: storage + GlanceRegistryNetwork: internal_api + IronicApiNetwork: ctlplane + IronicNetwork: ctlplane + KeystoneAdminApiNetwork: ctlplane # allows undercloud to config endpoints + KeystonePublicApiNetwork: internal_api + ManilaApiNetwork: internal_api + NeutronApiNetwork: internal_api + HeatApiNetwork: internal_api + HeatApiCfnNetwork: internal_api + HeatApiCloudwatchNetwork: internal_api + NovaApiNetwork: internal_api + NovaMetadataNetwork: internal_api + NovaVncProxyNetwork: internal_api + SwiftStorageNetwork: storage_mgmt + SwiftProxyNetwork: storage + SaharaApiNetwork: internal_api + HorizonNetwork: internal_api + MemcachedNetwork: internal_api + RabbitmqNetwork: internal_api + RedisNetwork: internal_api + MysqlNetwork: internal_api + CephClusterNetwork: storage_mgmt + CephMonNetwork: storage + CephRgwNetwork: storage + PublicNetwork: external + OpenDaylightApiNetwork: internal_api + # We special-case the default ResolveNetwork for the CephStorage role + # for backwards compatibility, all other roles default to internal_api + CephStorageHostnameResolveNetwork: storage +{% for role in roles if role.name != 'CephStorage' %} + {{role.name}}HostnameResolveNetwork: internal_api +{% endfor %} + description: Mapping of service_name -> network name. Typically set + via parameter_defaults in the resource registry. + type: json + + # We define mappings to work around names that break when doing the + # CamelCase to snake_case conversion to align with service_names + ServiceNetMapDeprecatedMapping: + default: + MongoDbNetwork: MongodbNetwork + RabbitMqNetwork: RabbitmqNetwork + CephPublicNetwork: CephMonNetwork + SwiftMgmtNetwork: SwiftStorageNetwork + description: Mapping older deprecated service names, intended for + internal use only, this will be removed in future. + type: json + +parameter_groups: +- label: deprecated + description: Do not use deprecated params, they will be removed. + parameters: + - ServiceNetMapDeprecatedMapping + +outputs: + service_net_map: + value: + map_merge: + - {get_param: ServiceNetMapDefaults} + - map_replace: + - {get_param: ServiceNetMap} + - keys: {get_param: ServiceNetMapDeprecatedMapping} + + service_net_map_lower: + value: + # This does a conversion from CamelCase to snake_case, + # e.g HeatApiNetwork becomes heat_api_network so it + # matches the service names. + yaql: + expression: dict($.data.map.items().select([ regex(`([a-z0-9])([A-Z])`).replace($[0], '\\1_\\2').toLower(), $[1]])) + data: + map: + map_merge: + - {get_param: ServiceNetMapDefaults} + - map_replace: + - {get_param: ServiceNetMap} + - keys: {get_param: ServiceNetMapDeprecatedMapping} diff --git a/network/service_net_map.yaml b/network/service_net_map.yaml deleted file mode 100644 index 6e5c2449..00000000 --- a/network/service_net_map.yaml +++ /dev/null @@ -1,100 +0,0 @@ -heat_template_version: 2016-10-14 - -description: > - Mapping of service_name_network -> network name - -parameters: - ServiceNetMap: - description: Mapping of service_name -> network name. Typically set - via parameter_defaults in the resource registry. This - mapping overrides those in ServiceNetMapDefaults. - default: {} - type: json - - ServiceNetMapDefaults: - default: - ApacheNetwork: internal_api - NeutronTenantNetwork: tenant - CeilometerApiNetwork: internal_api - AodhApiNetwork: internal_api - GnocchiApiNetwork: internal_api - MongodbNetwork: internal_api - CinderApiNetwork: internal_api - CinderIscsiNetwork: storage - GlanceApiNetwork: storage - GlanceRegistryNetwork: internal_api - IronicApiNetwork: ctlplane - IronicNetwork: ctlplane - KeystoneAdminApiNetwork: ctlplane # allows undercloud to config endpoints - KeystonePublicApiNetwork: internal_api - ManilaApiNetwork: internal_api - NeutronApiNetwork: internal_api - HeatApiNetwork: internal_api - HeatApiCfnNetwork: internal_api - HeatApiCloudwatchNetwork: internal_api - NovaApiNetwork: internal_api - NovaMetadataNetwork: internal_api - NovaVncProxyNetwork: internal_api - SwiftStorageNetwork: storage_mgmt - SwiftProxyNetwork: storage - SaharaApiNetwork: internal_api - HorizonNetwork: internal_api - MemcachedNetwork: internal_api - RabbitmqNetwork: internal_api - RedisNetwork: internal_api - MysqlNetwork: internal_api - CephClusterNetwork: storage_mgmt - CephMonNetwork: storage - CephRgwNetwork: storage - ControllerHostnameResolveNetwork: internal_api - ComputeHostnameResolveNetwork: internal_api - BlockStorageHostnameResolveNetwork: internal_api - ObjectStorageHostnameResolveNetwork: internal_api - CephStorageHostnameResolveNetwork: storage - PublicNetwork: external - OpenDaylightApiNetwork: internal_api - description: Mapping of service_name -> network name. Typically set - via parameter_defaults in the resource registry. - type: json - - # We define mappings to work around names that break when doing the - # CamelCase to snake_case conversion to align with service_names - ServiceNetMapDeprecatedMapping: - default: - MongoDbNetwork: MongodbNetwork - RabbitMqNetwork: RabbitmqNetwork - CephPublicNetwork: CephMonNetwork - SwiftMgmtNetwork: SwiftStorageNetwork - description: Mapping older deprecated service names, intended for - internal use only, this will be removed in future. - type: json - -parameter_groups: -- label: deprecated - description: Do not use deprecated params, they will be removed. - parameters: - - ServiceNetMapDeprecatedMapping - -outputs: - service_net_map: - value: - map_merge: - - {get_param: ServiceNetMapDefaults} - - map_replace: - - {get_param: ServiceNetMap} - - keys: {get_param: ServiceNetMapDeprecatedMapping} - - service_net_map_lower: - value: - # This does a conversion from CamelCase to snake_case, - # e.g HeatApiNetwork becomes heat_api_network so it - # matches the service names. - yaql: - expression: dict($.data.map.items().select([ regex(`([a-z0-9])([A-Z])`).replace($[0], '\\1_\\2').toLower(), $[1]])) - data: - map: - map_merge: - - {get_param: ServiceNetMapDefaults} - - map_replace: - - {get_param: ServiceNetMap} - - keys: {get_param: ServiceNetMapDeprecatedMapping} -- cgit 1.2.3-korg