Bug 1320704

Summary: [RFE] Multiple IP's per service endpoint to support ipv4/ipv6
Product: Red Hat OpenStack Reporter: Benjamin Schmaus <bschmaus>
Component: openstack-keystoneAssignee: John Dennis <jdennis>
Status: CLOSED WONTFIX QA Contact: nlevinki <nlevinki>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.0 (Kilo)CC: ayoung, bschmaus, jdennis, mcornea, nkinder, srevivo, vcojot
Target Milestone: ---Keywords: FutureFeature, ZStream
Target Release: 8.0 (Liberty)   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-02-24 18:45:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Benjamin Schmaus 2016-03-23 18:47:01 UTC
Description of problem:

Keystone currently cannot support multiple IP addresses per endpoint, or multiple endpoints per service. Attempting to add another endpoint will simply overwrite that endpoint (or cause it to return some addresses from both)

Customer requires IPv6 support in OpenStack for most of their VNFs, however some ancillary services cannot yet talk IPv6 or have outdated Openstack client versions. For this reason, they want to dual stack the endpoints in keystone so the services can discover both and talk on whichever one is supported.


Version-Release number of selected component (if applicable):7.0/7.3


How reproducible: 100%


Steps to Reproduce:
1. See Comments Below
2.
3.

Actual results:
Only one service endpoint available.

Expected results:


Additional info:

Comment 8 Adam Young 2016-06-28 14:12:40 UTC
From Keystone's perspective, an Endpoint is just an entry in the service catalog.  Either you have one, and it is capable of handling both IPv4 and IPv6, or you have two, one for each Networking type.

If you want to blur the distinction, you should probably use DNS entries for the endpoints, and let the caller select the networking version to use.

I don't really understand what more you would request of Keystone?  That the service catalog indicate which form of Networking a given endpoint supports?

It might make more sense to configure HA proxy  that we can run in front of the IPv4-only endpoints to support IPv6 to IPV4 translation, and have every service support both IPv4 and IPv6.  Then Use DNS names for the services instead of IP Addresses, and have A records for IPv4 and AAAA records for IPv6

Keystone is not going to support multiple URLs per endpoint.