SM:R3.2build26:Centos : Contrail HA : Incorrect Endpoint populated for keystone in openstackrc

Bug #1669365 reported by sundarkh
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
R3.2
Fix Committed
High
Abhay Joshi
Trunk
Invalid
High
Abhay Joshi

Bug Description

SM:R3.2build26:Centos : Contrail HA : Incorrect Endpoint populated for keystone in openstackrc

1) Provision a Contrail HA cluster in centos mitaka package as follows
 server-manager-client display server --select id,cluster_id,roles,ip_address

+---------+----------------+----------------+----------------------------------------------------------------------------+

| id | cluster_id | ip_address | roles |

+---------+----------------+----------------+----------------------------------------------------------------------------+

| nodec28 | cluster5sanity | 10.204.217.13 | [u'compute'] |

| nodeg37 | cluster5sanity | 10.204.217.77 | [u'compute'] |

| nodec10 | cluster5sanity | 10.204.217.176 | [u'compute'] |

| nodei17 | cluster5sanity | 10.204.217.129 | [u'config', u'control', u'collector', u'database', u'webui', u'openstack'] |

| nodei19 | cluster5sanity | 10.204.217.131 | [u'config', u'control', u'collector', u'database', u'webui'] |

| nodei20 | cluster5sanity | 10.204.217.132 | [u'config', u'control', u'collector', u'database', u'webui'] |

+---------+----------------+----------------+----------------------------------------------------------------------------+

root@nodec50:~# server-manager-client display cluster -d | grep vip

                            "contrail_external_vip": "10.204.217.246",

                            "contrail_internal_vip": "192.168.100.10",

root@nodec50:~#

2) Provision gets completed;

3) Log into open stack Node ; Check that the keystone end point is the local ip of the box is used instead of the VIP

[root@nodei17 ~]# keystone endpoint-list | grep 5000

| 438ef9c3a26f4b449c4958154722cd37 | RegionOne | http://192.168.100.14:5000/v2.0 | http://192.168.100.14:5000/v2.0 | http://192.168.100.14:35357/v2.0 | 6f4679644e8445aa8b6eba33be6636f6 |

[root@nodei17 ~]# cat /etc/contrail/openstackrc

export OS_USERNAME=admin

export OS_PASSWORD=contrail123

export OS_TENANT_NAME=admin

export OS_AUTH_URL=http://192.168.100.14:5000/v2.0/ >>>>>>>> VIP should be the IP here

export OS_REGION_NAME=RegionOne

export OS_NO_CACHE=1

export OS_VOLUME_API_VERSION=2

[root@nodei17 ~]# ifconfig -a | grep 192. -B2

eno2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

        inet 192.168.100.14 netmask 255.255.255.0 broadcast 192.168.100.255

4) This results in failure of service creations with keystone exception

Traceback (most recent call last):
testtools.testresult.real._StringException: Traceback (most recent call last):
File "scripts/analytics/test_analytics.py", line 245, in setUpClass
super(AnalyticsTestSanity3, cls).setUpClass()
File "/contrail-test/scripts/analytics/base.py", line 11, in setUpClass
super(AnalyticsBaseTest, cls).setUpClass()
File "test_v1.py", line 47, in setUpClass
cls.connections = cls.isolated_creds.get_connections(cls.inputs)
File "common/isolated_creds.py", line 92, in get_connections
logger=self.logger)
File "common/connections.py", line 53, in __init__
self.project_id = self.get_project_id()
File "common/connections.py", line 89, in get_project_id
auth = self.get_auth_h(project_name)
File "common/connections.py", line 101, in get_auth_h
project_name, self.inputs, self.logger)
File "/contrail-test/fixtures/openstack.py", line 364, in __init__
self.reauth()
File "/contrail-test/fixtures/openstack.py", line 376, in reauth
logger=self.logger)
File "/contrail-test/fixtures/keystone_tests.py", line 30, in __init__
self.keystone = self.get_client()
File "/contrail-test/fixtures/keystone_tests.py", line 72, in get_client
auth_url=self.auth_url, region_name=self.region_name)
File "/usr/lib/python2.7/dist-packages/keystoneclient/client.py", line 62, in Client
d = discover.Discover(session=session, **kwargs)
File "/usr/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneclient/discover.py", line 185, in __init__
authenticated=authenticated)
File "/usr/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneclient/_discover.py", line 142, in __init__
authenticated=authenticated)
File "/usr/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneclient/_discover.py", line 41, in get_version_data
resp = session.get(url, headers=headers, authenticated=authenticated)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 564, in get
return self.request(url, 'GET', **kwargs)
File "/usr/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 370, in request
auth_headers = self.get_auth_headers(auth)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 624, in get_auth_headers
return auth.get_headers(self, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/plugin.py", line 84, in get_headers
token = self.get_token(session)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 90, in get_token
return self.get_access(session).auth_token
File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 136, in get_access
self.auth_ref = self.get_auth_ref(session)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/v2.py", line 65, in get_auth_ref
authenticated=False, log=False)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 572, in post
return self.request(url, 'POST', **kwargs)
File "/usr/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 467, in request
raise exceptions.from_response(resp, method, url)
keystoneauth1.exceptions.http.InternalServerError: An unexpected error prevented the server from fulfilling your request. (HTTP 500) (Request-ID: req-0bf42c9c-976d-4e65-b8ae-04d798ce0350)

5) Seen in Kilo/Liberty/Mitaka

sundarkh (sundar-kh)
description: updated
Revision history for this message
sundarkh (sundar-kh) wrote :

Seen in latest build R3.2.2-b31 also

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/29747
Committed: http://github.org/Juniper/contrail-puppet/commit/55a4d69c16bab84852c582573beeb76156cfce46
Submitter: Zuul (<email address hidden>)
Branch: R3.2

commit 55a4d69c16bab84852c582573beeb76156cfce46
Author: Dheeraj Gautam <email address hidden>
Date: Mon Mar 20 23:48:51 2017 -0700

SM-Compute: add neutron realted details

Closes-Bug: #1669365

1. put correct neutron details
2. use Package<tag=openstack> for openstack_started

Change-Id: I64b0589cff52635489764f2c19e239b9a182b144

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.