diff options
Diffstat (limited to 'network')
-rw-r--r-- | network/config/bond-with-vlans/controller-no-external.yaml | 31 | ||||
-rw-r--r-- | network/endpoints/endpoint_data.yaml | 81 | ||||
-rw-r--r-- | network/endpoints/endpoint_map.yaml | 696 | ||||
-rw-r--r-- | network/management.yaml | 2 | ||||
-rw-r--r-- | network/noop.yaml | 3 | ||||
-rw-r--r-- | network/ports/external_from_pool_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/external_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/internal_api_from_pool_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/internal_api_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/storage_from_pool_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/storage_mgmt_from_pool_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/storage_mgmt_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/storage_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/tenant_from_pool_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/tenant_v6.yaml | 6 | ||||
-rw-r--r-- | network/ports/vip_v6.yaml | 6 |
16 files changed, 524 insertions, 355 deletions
diff --git a/network/config/bond-with-vlans/controller-no-external.yaml b/network/config/bond-with-vlans/controller-no-external.yaml index 375d40be..d9532439 100644 --- a/network/config/bond-with-vlans/controller-no-external.yaml +++ b/network/config/bond-with-vlans/controller-no-external.yaml @@ -5,6 +5,10 @@ description: > with VLANs attached for the controller role. parameters: + ControlPlaneIp: + default: '' + description: IP address/subnet on the ctlplane network + type: string ExternalIpSubnet: default: '' description: IP address/subnet on the external network @@ -62,6 +66,18 @@ parameters: default: '10.0.0.1' description: default route for the external network type: string + ControlPlaneSubnetCidr: # Override this via parameter_defaults + default: '24' + description: The subnet CIDR of the control plane network. + type: string + DnsServers: # Override this via parameter_defaults + default: [] + description: A list of DNS servers (2 max for some implementations) that will be added to resolv.conf. + type: comma_delimited_list + EC2MetadataIp: # Override this via parameter_defaults + description: The IP address of the EC2 metadata server. + type: string + resources: OsNetConfigImpl: @@ -72,6 +88,21 @@ resources: os_net_config: network_config: - + type: interface + name: nic1 + use_dhcp: false + addresses: + - + ip_netmask: + list_join: + - '/' + - - {get_param: ControlPlaneIp} + - {get_param: ControlPlaneSubnetCidr} + routes: + - + ip_netmask: 169.254.169.254/32 + next_hop: {get_param: EC2MetadataIp} + - type: ovs_bridge name: {get_input: bridge_name} use_dhcp: true diff --git a/network/endpoints/endpoint_data.yaml b/network/endpoints/endpoint_data.yaml index 46148dfb..40b26f26 100644 --- a/network/endpoints/endpoint_data.yaml +++ b/network/endpoints/endpoint_data.yaml @@ -1,6 +1,15 @@ # Data in this file is used to generate the endpoint_map.yaml template. # Run the script build_endpoint_map.py to regenerate the file. +Aodh: + Internal: + vip_param: AodhApi + Public: + vip_param: Public + Admin: + vip_param: AodhApi + port: 8042 + Ceilometer: Internal: vip_param: CeilometerApi @@ -10,6 +19,15 @@ Ceilometer: vip_param: CeilometerApi port: 8777 +Gnocchi: + Internal: + vip_param: GnocchiApi + Public: + vip_param: Public + Admin: + vip_param: GnocchiApi + port: 8041 + Cinder: Internal: vip_param: CinderApi @@ -37,6 +55,11 @@ Glance: vip_param: GlanceApi port: 9292 +GlanceRegistry: + Internal: + vip_param: GlanceRegistry + port: 9191 + Mysql: '': vip_param: Mysql @@ -56,6 +79,21 @@ Heat: '': /v1/%(tenant_id)s port: 8004 +HeatCfn: + Internal: + vip_param: HeatApi + uri_suffixes: + '': /v1 + Public: + vip_param: Public + uri_suffixes: + '': /v1 + Admin: + vip_param: HeatApi + uri_suffixes: + '': /v1 + port: 8000 + Horizon: Public: vip_param: Public @@ -63,40 +101,27 @@ Horizon: '': /dashboard port: 80 +# TODO(ayoung): V3 is a temporary fix. Endpoints should be versionless. +# Required for https://bugs.launchpad.net/puppet-nova/+bug/1542486 Keystone: Internal: vip_param: KeystonePublicApi uri_suffixes: '': /v2.0 EC2: /v2.0/ec2tokens + V3: /v3 names: EC2: KeystoneEC2 Public: vip_param: Public uri_suffixes: '': /v2.0 + V3: /v3 Admin: vip_param: KeystoneAdminApi uri_suffixes: '': /v2.0 - port: 35357 - port: 5000 - -# TODO(ayoung): V3 is a temporary fix. Endpoints should be versionless. -# Required for https://bugs.launchpad.net/puppet-nova/+bug/1542486 -KeystoneV3: - Internal: - vip_param: KeystonePublicApi - uri_suffixes: - '': /v3 - Public: - vip_param: Public - uri_suffixes: - '': /v3 - Admin: - vip_param: KeystoneAdminApi - uri_suffixes: - '': /v3 + V3: /v3 port: 35357 port: 5000 @@ -114,34 +139,16 @@ Nova: vip_param: NovaApi uri_suffixes: '': /v2.1/%(tenant_id)s - V3: /v3 Public: vip_param: Public uri_suffixes: '': /v2.1/%(tenant_id)s - V3: /v3 Admin: vip_param: NovaApi uri_suffixes: '': /v2.1/%(tenant_id)s - V3: /v3 port: 8774 -NovaEC2: - Internal: - vip_param: NovaApi - uri_suffixes: - '': /services/Cloud - Public: - vip_param: Public - uri_suffixes: - '': /services/Cloud - Admin: - vip_param: NovaApi - uri_suffixes: - '': /services/Admin - port: 8773 - NovaVNCProxy: Internal: vip_param: NovaApi @@ -175,7 +182,7 @@ Sahara: uri_suffixes: '': /v1.1/%(tenant_id)s Public: - vip_param: SaharaApi + vip_param: Public uri_suffixes: '': /v1.1/%(tenant_id)s Admin: diff --git a/network/endpoints/endpoint_map.yaml b/network/endpoints/endpoint_map.yaml index 8f0f587a..f4c17985 100644 --- a/network/endpoints/endpoint_map.yaml +++ b/network/endpoints/endpoint_map.yaml @@ -8,9 +8,12 @@ description: A map of OpenStack endpoints. Since the endpoints are URLs, parameters come from net_ip_uri_map, which will include these brackets in IPv6 addresses. parameters: + AodhApiVirtualIP: {type: string, default: ''} CeilometerApiVirtualIP: {type: string, default: ''} CinderApiVirtualIP: {type: string, default: ''} GlanceApiVirtualIP: {type: string, default: ''} + GlanceRegistryVirtualIP: {type: string, default: ''} + GnocchiApiVirtualIP: {type: string, default: ''} HeatApiVirtualIP: {type: string, default: ''} KeystoneAdminApiVirtualIP: {type: string, default: ''} KeystonePublicApiVirtualIP: {type: string, default: ''} @@ -23,6 +26,9 @@ parameters: EndpointMap: type: json default: + AodhAdmin: {protocol: http, port: '8042', host: IP_ADDRESS} + AodhInternal: {protocol: http, port: '8042', host: IP_ADDRESS} + AodhPublic: {protocol: http, port: '8042', host: IP_ADDRESS} CeilometerAdmin: {protocol: http, port: '8777', host: IP_ADDRESS} CeilometerInternal: {protocol: http, port: '8777', host: IP_ADDRESS} CeilometerPublic: {protocol: http, port: '8777', host: IP_ADDRESS} @@ -32,25 +38,26 @@ parameters: GlanceAdmin: {protocol: http, port: '9292', host: IP_ADDRESS} GlanceInternal: {protocol: http, port: '9292', host: IP_ADDRESS} GlancePublic: {protocol: http, port: '9292', host: IP_ADDRESS} + GlanceRegistryInternal: {protocol: http, port: '9191', host: IP_ADDRESS} + GnocchiAdmin: {protocol: http, port: '8041', host: IP_ADDRESS} + GnocchiInternal: {protocol: http, port: '8041', host: IP_ADDRESS} + GnocchiPublic: {protocol: http, port: '8041', host: IP_ADDRESS} HeatAdmin: {protocol: http, port: '8004', host: IP_ADDRESS} HeatInternal: {protocol: http, port: '8004', host: IP_ADDRESS} HeatPublic: {protocol: http, port: '8004', host: IP_ADDRESS} + HeatCfnAdmin: {protocol: http, port: '8000', host: IP_ADDRESS} + HeatCfnInternal: {protocol: http, port: '8000', host: IP_ADDRESS} + HeatCfnPublic: {protocol: http, port: '8000', host: IP_ADDRESS} HorizonPublic: {protocol: http, port: '80', host: IP_ADDRESS} KeystoneAdmin: {protocol: http, port: '35357', host: IP_ADDRESS} KeystoneInternal: {protocol: http, port: '5000', host: IP_ADDRESS} KeystonePublic: {protocol: http, port: '5000', host: IP_ADDRESS} - KeystoneV3Admin: {protocol: http, port: '35357', host: IP_ADDRESS} - KeystoneV3Internal: {protocol: http, port: '5000', host: IP_ADDRESS} - KeystoneV3Public: {protocol: http, port: '5000', host: IP_ADDRESS} NeutronAdmin: {protocol: http, port: '9696', host: IP_ADDRESS} NeutronInternal: {protocol: http, port: '9696', host: IP_ADDRESS} NeutronPublic: {protocol: http, port: '9696', host: IP_ADDRESS} NovaAdmin: {protocol: http, port: '8774', host: IP_ADDRESS} NovaInternal: {protocol: http, port: '8774', host: IP_ADDRESS} NovaPublic: {protocol: http, port: '8774', host: IP_ADDRESS} - NovaEC2Admin: {protocol: http, port: '8773', host: IP_ADDRESS} - NovaEC2Internal: {protocol: http, port: '8773', host: IP_ADDRESS} - NovaEC2Public: {protocol: http, port: '8773', host: IP_ADDRESS} NovaVNCProxyAdmin: {protocol: http, port: '6080', host: IP_ADDRESS} NovaVNCProxyInternal: {protocol: http, port: '6080', host: IP_ADDRESS} NovaVNCProxyPublic: {protocol: http, port: '6080', host: IP_ADDRESS} @@ -67,6 +74,120 @@ parameters: outputs: endpoint_map: value: + AodhAdmin: + host: + str_replace: + template: + get_param: [EndpointMap, AodhAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + port: + get_param: [EndpointMap, AodhAdmin, port] + protocol: + get_param: [EndpointMap, AodhAdmin, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, AodhAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + - ':' + - get_param: [EndpointMap, AodhAdmin, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, AodhAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + - ':' + - get_param: [EndpointMap, AodhAdmin, port] + AodhInternal: + host: + str_replace: + template: + get_param: [EndpointMap, AodhInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + port: + get_param: [EndpointMap, AodhInternal, port] + protocol: + get_param: [EndpointMap, AodhInternal, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, AodhInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + - ':' + - get_param: [EndpointMap, AodhInternal, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, AodhInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: AodhApiVirtualIP} + - ':' + - get_param: [EndpointMap, AodhInternal, port] + AodhPublic: + host: + str_replace: + template: + get_param: [EndpointMap, AodhPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + port: + get_param: [EndpointMap, AodhPublic, port] + protocol: + get_param: [EndpointMap, AodhPublic, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, AodhPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, AodhPublic, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, AodhPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, AodhPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, AodhPublic, port] CeilometerAdmin: host: str_replace: @@ -529,6 +650,158 @@ outputs: IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - get_param: [EndpointMap, GlancePublic, port] + GlanceRegistryInternal: + host: + str_replace: + template: + get_param: [EndpointMap, GlanceRegistryInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GlanceRegistryVirtualIP} + port: + get_param: [EndpointMap, GlanceRegistryInternal, port] + protocol: + get_param: [EndpointMap, GlanceRegistryInternal, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, GlanceRegistryInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GlanceRegistryInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GlanceRegistryVirtualIP} + - ':' + - get_param: [EndpointMap, GlanceRegistryInternal, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, GlanceRegistryInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GlanceRegistryInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GlanceRegistryVirtualIP} + - ':' + - get_param: [EndpointMap, GlanceRegistryInternal, port] + GnocchiAdmin: + host: + str_replace: + template: + get_param: [EndpointMap, GnocchiAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + port: + get_param: [EndpointMap, GnocchiAdmin, port] + protocol: + get_param: [EndpointMap, GnocchiAdmin, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiAdmin, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiAdmin, port] + GnocchiInternal: + host: + str_replace: + template: + get_param: [EndpointMap, GnocchiInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + port: + get_param: [EndpointMap, GnocchiInternal, port] + protocol: + get_param: [EndpointMap, GnocchiInternal, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiInternal, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: GnocchiApiVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiInternal, port] + GnocchiPublic: + host: + str_replace: + template: + get_param: [EndpointMap, GnocchiPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + port: + get_param: [EndpointMap, GnocchiPublic, port] + protocol: + get_param: [EndpointMap, GnocchiPublic, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiPublic, port] + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, GnocchiPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, GnocchiPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, GnocchiPublic, port] HeatAdmin: host: str_replace: @@ -646,6 +919,123 @@ outputs: IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - get_param: [EndpointMap, HeatPublic, port] + HeatCfnAdmin: + host: + str_replace: + template: + get_param: [EndpointMap, HeatCfnAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + port: + get_param: [EndpointMap, HeatCfnAdmin, port] + protocol: + get_param: [EndpointMap, HeatCfnAdmin, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnAdmin, port] + - /v1 + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnAdmin, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnAdmin, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnAdmin, port] + HeatCfnInternal: + host: + str_replace: + template: + get_param: [EndpointMap, HeatCfnInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + port: + get_param: [EndpointMap, HeatCfnInternal, port] + protocol: + get_param: [EndpointMap, HeatCfnInternal, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnInternal, port] + - /v1 + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnInternal, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnInternal, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: HeatApiVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnInternal, port] + HeatCfnPublic: + host: + str_replace: + template: + get_param: [EndpointMap, HeatCfnPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + port: + get_param: [EndpointMap, HeatCfnPublic, port] + protocol: + get_param: [EndpointMap, HeatCfnPublic, protocol] + uri: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnPublic, port] + - /v1 + uri_no_suffix: + list_join: + - '' + - - get_param: [EndpointMap, HeatCfnPublic, protocol] + - :// + - str_replace: + template: + get_param: [EndpointMap, HeatCfnPublic, host] + params: + CLOUDNAME: {get_param: CloudName} + IP_ADDRESS: {get_param: PublicVirtualIP} + - ':' + - get_param: [EndpointMap, HeatCfnPublic, port] HorizonPublic: host: str_replace: @@ -845,119 +1235,119 @@ outputs: host: str_replace: template: - get_param: [EndpointMap, KeystoneV3Admin, host] + get_param: [EndpointMap, KeystoneAdmin, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystoneAdminApiVirtualIP} port: - get_param: [EndpointMap, KeystoneV3Admin, port] + get_param: [EndpointMap, KeystoneAdmin, port] protocol: - get_param: [EndpointMap, KeystoneV3Admin, protocol] + get_param: [EndpointMap, KeystoneAdmin, protocol] uri: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Admin, protocol] + - - get_param: [EndpointMap, KeystoneAdmin, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Admin, host] + get_param: [EndpointMap, KeystoneAdmin, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystoneAdminApiVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Admin, port] + - get_param: [EndpointMap, KeystoneAdmin, port] - /v3 uri_no_suffix: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Admin, protocol] + - - get_param: [EndpointMap, KeystoneAdmin, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Admin, host] + get_param: [EndpointMap, KeystoneAdmin, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystoneAdminApiVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Admin, port] + - get_param: [EndpointMap, KeystoneAdmin, port] KeystoneV3Internal: host: str_replace: template: - get_param: [EndpointMap, KeystoneV3Internal, host] + get_param: [EndpointMap, KeystoneInternal, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystonePublicApiVirtualIP} port: - get_param: [EndpointMap, KeystoneV3Internal, port] + get_param: [EndpointMap, KeystoneInternal, port] protocol: - get_param: [EndpointMap, KeystoneV3Internal, protocol] + get_param: [EndpointMap, KeystoneInternal, protocol] uri: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Internal, protocol] + - - get_param: [EndpointMap, KeystoneInternal, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Internal, host] + get_param: [EndpointMap, KeystoneInternal, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystonePublicApiVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Internal, port] + - get_param: [EndpointMap, KeystoneInternal, port] - /v3 uri_no_suffix: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Internal, protocol] + - - get_param: [EndpointMap, KeystoneInternal, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Internal, host] + get_param: [EndpointMap, KeystoneInternal, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: KeystonePublicApiVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Internal, port] + - get_param: [EndpointMap, KeystoneInternal, port] KeystoneV3Public: host: str_replace: template: - get_param: [EndpointMap, KeystoneV3Public, host] + get_param: [EndpointMap, KeystonePublic, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: PublicVirtualIP} port: - get_param: [EndpointMap, KeystoneV3Public, port] + get_param: [EndpointMap, KeystonePublic, port] protocol: - get_param: [EndpointMap, KeystoneV3Public, protocol] + get_param: [EndpointMap, KeystonePublic, protocol] uri: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Public, protocol] + - - get_param: [EndpointMap, KeystonePublic, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Public, host] + get_param: [EndpointMap, KeystonePublic, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Public, port] + - get_param: [EndpointMap, KeystonePublic, port] - /v3 uri_no_suffix: list_join: - '' - - - get_param: [EndpointMap, KeystoneV3Public, protocol] + - - get_param: [EndpointMap, KeystonePublic, protocol] - :// - str_replace: template: - get_param: [EndpointMap, KeystoneV3Public, host] + get_param: [EndpointMap, KeystonePublic, host] params: CLOUDNAME: {get_param: CloudName} IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - - get_param: [EndpointMap, KeystoneV3Public, port] + - get_param: [EndpointMap, KeystonePublic, port] NeutronAdmin: host: str_replace: @@ -1189,240 +1579,6 @@ outputs: IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - get_param: [EndpointMap, NovaPublic, port] - NovaV3Admin: - host: - str_replace: - template: - get_param: [EndpointMap, NovaAdmin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - port: - get_param: [EndpointMap, NovaAdmin, port] - protocol: - get_param: [EndpointMap, NovaAdmin, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaAdmin, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaAdmin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaAdmin, port] - - /v3 - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaAdmin, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaAdmin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaAdmin, port] - NovaV3Internal: - host: - str_replace: - template: - get_param: [EndpointMap, NovaInternal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - port: - get_param: [EndpointMap, NovaInternal, port] - protocol: - get_param: [EndpointMap, NovaInternal, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaInternal, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaInternal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaInternal, port] - - /v3 - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaInternal, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaInternal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaInternal, port] - NovaV3Public: - host: - str_replace: - template: - get_param: [EndpointMap, NovaPublic, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - port: - get_param: [EndpointMap, NovaPublic, port] - protocol: - get_param: [EndpointMap, NovaPublic, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaPublic, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaPublic, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - - ':' - - get_param: [EndpointMap, NovaPublic, port] - - /v3 - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaPublic, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaPublic, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - - ':' - - get_param: [EndpointMap, NovaPublic, port] - NovaEC2Admin: - host: - str_replace: - template: - get_param: [EndpointMap, NovaEC2Admin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - port: - get_param: [EndpointMap, NovaEC2Admin, port] - protocol: - get_param: [EndpointMap, NovaEC2Admin, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Admin, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Admin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Admin, port] - - /services/Admin - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Admin, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Admin, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Admin, port] - NovaEC2Internal: - host: - str_replace: - template: - get_param: [EndpointMap, NovaEC2Internal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - port: - get_param: [EndpointMap, NovaEC2Internal, port] - protocol: - get_param: [EndpointMap, NovaEC2Internal, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Internal, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Internal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Internal, port] - - /services/Cloud - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Internal, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Internal, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: NovaApiVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Internal, port] - NovaEC2Public: - host: - str_replace: - template: - get_param: [EndpointMap, NovaEC2Public, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - port: - get_param: [EndpointMap, NovaEC2Public, port] - protocol: - get_param: [EndpointMap, NovaEC2Public, protocol] - uri: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Public, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Public, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Public, port] - - /services/Cloud - uri_no_suffix: - list_join: - - '' - - - get_param: [EndpointMap, NovaEC2Public, protocol] - - :// - - str_replace: - template: - get_param: [EndpointMap, NovaEC2Public, host] - params: - CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: PublicVirtualIP} - - ':' - - get_param: [EndpointMap, NovaEC2Public, port] NovaVNCProxyAdmin: host: str_replace: @@ -1622,7 +1778,7 @@ outputs: get_param: [EndpointMap, SaharaPublic, host] params: CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: SaharaApiVirtualIP} + IP_ADDRESS: {get_param: PublicVirtualIP} port: get_param: [EndpointMap, SaharaPublic, port] protocol: @@ -1637,7 +1793,7 @@ outputs: get_param: [EndpointMap, SaharaPublic, host] params: CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: SaharaApiVirtualIP} + IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - get_param: [EndpointMap, SaharaPublic, port] - /v1.1/%(tenant_id)s @@ -1651,7 +1807,7 @@ outputs: get_param: [EndpointMap, SaharaPublic, host] params: CLOUDNAME: {get_param: CloudName} - IP_ADDRESS: {get_param: SaharaApiVirtualIP} + IP_ADDRESS: {get_param: PublicVirtualIP} - ':' - get_param: [EndpointMap, SaharaPublic, port] SwiftAdmin: diff --git a/network/management.yaml b/network/management.yaml index 1800b57a..6878bac4 100644 --- a/network/management.yaml +++ b/network/management.yaml @@ -13,7 +13,7 @@ parameters: ManagementNetValueSpecs: default: {'provider:physical_network': 'management', 'provider:network_type': 'flat'} description: Value specs for the management network. - type: string + type: json ManagementNetAdminStateUp: default: false description: The admin state of the network. diff --git a/network/noop.yaml b/network/noop.yaml deleted file mode 100644 index 0963d2ce..00000000 --- a/network/noop.yaml +++ /dev/null @@ -1,3 +0,0 @@ -heat_template_version: 2015-04-30 - -description: A stack which creates no network(s). diff --git a/network/ports/external_from_pool_v6.yaml b/network/ports/external_from_pool_v6.yaml index bf0c036d..baa544e7 100644 --- a/network/ports/external_from_pool_v6.yaml +++ b/network/ports/external_from_pool_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Returns an IP from a network mapped list of IPs. This version is for IPv6 @@ -43,12 +43,10 @@ outputs: - {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the external network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} - '/' - - {get_param: [ExternalNetCidr, -2]} - - {get_param: [ExternalNetCidr, -1]} + - {str_split: ['/', {get_attr: [ExternalPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/external_v6.yaml b/network/ports/external_v6.yaml index 522caaa0..bfe2686f 100644 --- a/network/ports/external_v6.yaml +++ b/network/ports/external_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port on the external network. The IP address will be chosen @@ -57,12 +57,10 @@ outputs: - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the external network IP value: list_join: - '' - - {get_attr: [ExternalPort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [ExternalPort, subnets, 0, cidr, -2]} - - {get_attr: [ExternalPort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [ExternalPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/internal_api_from_pool_v6.yaml b/network/ports/internal_api_from_pool_v6.yaml index 34c17ab2..8d0a91b6 100644 --- a/network/ports/internal_api_from_pool_v6.yaml +++ b/network/ports/internal_api_from_pool_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Returns an IP from a network mapped list of IPs. This version is for IPv6 @@ -43,12 +43,10 @@ outputs: - {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the internal API network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: InternalApiNetName}, {get_param: NodeIndex}]} - '/' - - {get_param: [InternalApiNetCidr, -2]} - - {get_param: [InternalApiNetCidr, -1]} + - {str_split: ['/', {get_attr: [InternalApiPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/internal_api_v6.yaml b/network/ports/internal_api_v6.yaml index 279e6bd0..14738b33 100644 --- a/network/ports/internal_api_v6.yaml +++ b/network/ports/internal_api_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port on the internal_api network. @@ -52,12 +52,10 @@ outputs: - {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the internal API network IP value: list_join: - '' - - {get_attr: [InternalApiPort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [InternalApiPort, subnets, 0, cidr, -2]} - - {get_attr: [InternalApiPort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [InternalApiPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/storage_from_pool_v6.yaml b/network/ports/storage_from_pool_v6.yaml index 966d96ae..328f8385 100644 --- a/network/ports/storage_from_pool_v6.yaml +++ b/network/ports/storage_from_pool_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Returns an IP from a network mapped list of IPs. This version is for IPv6 @@ -43,12 +43,10 @@ outputs: - {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the storage network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: StorageNetName}, {get_param: NodeIndex}]} - '/' - - {get_param: [StorageNetCidr, -2]} - - {get_param: [StorageNetCidr, -1]} + - {str_split: ['/', {get_attr: [StoragePort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/storage_mgmt_from_pool_v6.yaml b/network/ports/storage_mgmt_from_pool_v6.yaml index 890da75c..50470c92 100644 --- a/network/ports/storage_mgmt_from_pool_v6.yaml +++ b/network/ports/storage_mgmt_from_pool_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Returns an IP from a network mapped list of IPs This version is for IPv6 @@ -43,12 +43,10 @@ outputs: - {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the storage MGMT network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: StorageMgmtNetName}, {get_param: NodeIndex}]} - '/' - - {get_param: [StorageMgmtNetCidr, -2]} - - {get_param: [StorageMgmtNetCidr, -1]} + - {str_split: ['/', {get_attr: [StorageMgmtPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/storage_mgmt_v6.yaml b/network/ports/storage_mgmt_v6.yaml index 61956be2..9db66964 100644 --- a/network/ports/storage_mgmt_v6.yaml +++ b/network/ports/storage_mgmt_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port on the storage_mgmt API network. @@ -52,12 +52,10 @@ outputs: - {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the storage_mgmt network IP value: list_join: - '' - - {get_attr: [StorageMgmtPort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [StorageMgmtPort, subnets, 0, cidr, -2]} - - {get_attr: [StorageMgmtPort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [StorageMgmtPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/storage_v6.yaml b/network/ports/storage_v6.yaml index 13b62276..adf3595a 100644 --- a/network/ports/storage_v6.yaml +++ b/network/ports/storage_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port on the storage network. @@ -52,12 +52,10 @@ outputs: - {get_attr: [StoragePort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the storage network IP value: list_join: - '' - - {get_attr: [StoragePort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [StoragePort, subnets, 0, cidr, -2]} - - {get_attr: [StoragePort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [StoragePort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/tenant_from_pool_v6.yaml b/network/ports/tenant_from_pool_v6.yaml index b2bcd426..bbe6f736 100644 --- a/network/ports/tenant_from_pool_v6.yaml +++ b/network/ports/tenant_from_pool_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Returns an IP from a network mapped list of IPs @@ -42,12 +42,10 @@ outputs: - {get_param: [IPPool, {get_param: ExternalNetName}, {get_param: NodeIndex}]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the tenant network IP value: list_join: - '' - - {get_param: [IPPool, {get_param: TenantNetName}, {get_param: NodeIndex}]} - '/' - - {get_param: [TenantNetCidr, -2]} - - {get_param: [TenantNetCidr, -1]} + - {str_split: ['/', {get_attr: [TenantPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/tenant_v6.yaml b/network/ports/tenant_v6.yaml index 6ca37549..21ba1efa 100644 --- a/network/ports/tenant_v6.yaml +++ b/network/ports/tenant_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port on the tenant network. @@ -52,12 +52,10 @@ outputs: - {get_attr: [TenantPort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the tenant network IP value: list_join: - '' - - {get_attr: [TenantPort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [TenantPort, subnets, 0, cidr, -2]} - - {get_attr: [TenantPort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [TenantPort, subnets, 0, cidr]}, 1]} diff --git a/network/ports/vip_v6.yaml b/network/ports/vip_v6.yaml index de927094..498e5d69 100644 --- a/network/ports/vip_v6.yaml +++ b/network/ports/vip_v6.yaml @@ -1,4 +1,4 @@ -heat_template_version: 2015-04-30 +heat_template_version: 2015-10-15 description: > Creates a port for a VIP on the isolated network NetworkName. @@ -54,12 +54,10 @@ outputs: - {get_attr: [VipPort, fixed_ips, 0, ip_address]} - ']' ip_subnet: - # FIXME: this assumes a 2 digit subnet CIDR (need more heat functions?) description: IP/Subnet CIDR for the network associated with this IP value: list_join: - '' - - {get_attr: [VipPort, fixed_ips, 0, ip_address]} - '/' - - {get_attr: [VipPort, subnets, 0, cidr, -2]} - - {get_attr: [VipPort, subnets, 0, cidr, -1]} + - {str_split: ['/', {get_attr: [VipPort, subnets, 0, cidr]}, 1]} |