Nova Neutron configuration now uses keystone v3 endpoint

Our current nova-neutron configuration does not work with
the latest puppet-nova. In particular, this patch[1].

This commit adds keystone v3 endpoints to the map and gets the
nova::network::neutron configuration to use them.

[1] d09868a59c

Change-Id: Ifb8c23c81c665c2732fa5cd757760668b06a449a
This commit is contained in:
David Moreau Simard 2016-02-11 11:55:54 -05:00 committed by John Trowbridge
parent 8c6943e898
commit ab068a824e
3 changed files with 34 additions and 2 deletions

View File

@ -65,6 +65,9 @@ parameters:
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'}
@ -267,6 +270,32 @@ resources:
IP: {get_param: KeystonePublicApiVirtualIP}
CloudName: {get_param: CloudName}
UriSuffix: '/v2.0/ec2tokens'
# TODO(ayoung): V3 is a temporary fix. Endpoints should be versionless.
# Required for https://bugs.launchpad.net/puppet-nova/+bug/1542486
KeystoneV3Internal:
type: OS::TripleO::Endpoint
properties:
EndpointName: KeystoneV3Internal
EndpointMap: { get_param: EndpointMap }
IP: {get_param: KeystonePublicApiVirtualIP}
CloudName: {get_param: CloudName}
UriSuffix: '/v3'
KeystoneV3Public:
type: OS::TripleO::Endpoint
properties:
EndpointName: KeystoneV3Public
EndpointMap: { get_param: EndpointMap }
IP: {get_param: PublicVirtualIP}
CloudName: {get_param: CloudName}
UriSuffix: '/v3'
KeystoneV3Admin:
type: OS::TripleO::Endpoint
properties:
EndpointName: KeystoneV3Admin
EndpointMap: { get_param: EndpointMap }
IP: {get_param: KeystoneAdminApiVirtualIP}
CloudName: {get_param: CloudName}
UriSuffix: '/v3'
NeutronInternal:
type: OS::TripleO::Endpoint
@ -461,6 +490,9 @@ outputs:
KeystonePublic: {get_attr: [ KeystonePublic, endpoint] }
KeystoneAdmin: {get_attr: [ KeystoneAdmin, endpoint] }
KeystoneEC2: {get_attr: [ KeystoneEC2, endpoint] }
KeystoneV3Internal: {get_attr: [ KeystoneV3Internal, endpoint] }
KeystoneV3Public: {get_attr: [ KeystoneV3Public, endpoint] }
KeystoneV3Admin: {get_attr: [ KeystoneV3Admin, endpoint] }
NeutronInternal: {get_attr: [ NeutronInternal, endpoint] }
NeutronPublic: {get_attr: [ NeutronPublic, endpoint] }
NeutronAdmin: {get_attr: [ NeutronAdmin, endpoint] }

View File

@ -624,7 +624,7 @@ resources:
AGENT_EXTENSIONS: {get_param: NeutronAgentExtensions}
neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice}
neutron_internal_url: {get_param: [EndpointMap, NeutronInternal, uri]}
neutron_auth_url: {get_param: [EndpointMap, KeystoneAdmin, uri]}
neutron_auth_url: {get_param: [EndpointMap, KeystoneV3Admin, uri]}
keystone_vip: {get_param: KeystonePublicApiVirtualIP}
admin_password: {get_param: AdminPassword}
rabbit_username: {get_param: RabbitUserName}

View File

@ -1083,7 +1083,7 @@ resources:
neutron_internal_url: { get_param: [ EndpointMap, NeutronInternal, uri ] }
neutron_public_url: { get_param: [ EndpointMap, NeutronPublic, uri ] }
neutron_admin_url: { get_param: [ EndpointMap, NeutronAdmin, uri ] }
neutron_auth_url: { get_param: [ EndpointMap, KeystoneAdmin, uri_no_suffix ] }
neutron_auth_url: { get_param: [ EndpointMap, KeystoneV3Admin, uri ] }
nova_internal_url: { get_param: [ EndpointMap, NovaInternal, uri ] }
ceilometer_backend: {get_param: CeilometerBackend}
ceilometer_metering_secret: {get_param: CeilometerMeteringSecret}