ceilometerclient can only return external vip for authentication

Bug #1489305 reported by jz
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
python-ceilometerclient
New
Undecided
Unassigned

Bug Description

I have installed ceilometer-alarm-evaluator on controller. But it gives following errors:
I have configured the os_auth_url using internal_vip.
2015-06-12 07:39:58.777 14555 ERROR ceilometer.alarm.service [-] alarm evaluation cycle failed
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service Traceback (most recent call last):
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometer/alarm/service.py", line 93, in _evaluate_assigned_alarms
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service alarms = self._assigned_alarms()
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometer/alarm/service.py", line 151, in _assigned_alarms
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service 'value': True}])
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/v2/alarms.py", line 77, in list
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service return self._list(options.build_url(self._path(), q))
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/common/base.py", line 68, in _list
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service resp = self.api.get(url)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/openstack/common/apiclient/client.py", line 355, in get
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service return self.client_request("GET", url, **kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/openstack/common/apiclient/client.py", line 345, in client_request
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service self, method, url, **kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/openstack/common/apiclient/client.py", line 244, in client_request
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service self.authenticate()
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/openstack/common/apiclient/client.py", line 315, in authenticate
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service self.auth_plugin.authenticate(self)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/openstack/common/apiclient/auth.py", line 203, in authenticate
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service self._do_authenticate(http_client)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/client.py", line 186, in _do_authenticate
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service _get_endpoint(ks_session, **ks_kwargs))
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/ceilometerclient/client.py", line 138, in _get_endpoint
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service region_name=kwargs.get('region_name'))
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/session.py", line 626, in get_endpoint
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service return auth.get_endpoint(self, **kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/auth/identity/base.py", line 215, in get_endpoint
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service service_catalog = self.get_access(session).service_catalog
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/auth/identity/base.py", line 144, in get_access
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service self.auth_ref = self.get_auth_ref(session)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/auth/identity/v2.py", line 78, in get_auth_ref
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service authenticated=False, log=False)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/session.py", line 488, in post
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service return self.request(url, 'POST', **kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/utils.py", line 318, in inner
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service return func(*args, **kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/session.py", line 374, in request
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service resp = send(**kwargs)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service File "/usr/lib/python2.7/dist-packages/keystoneclient/session.py", line 417, in _send_request
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service raise exceptions.ConnectionRefused(msg)
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service ConnectionRefused: Unable to establish connection to https://10.111.161.24:5000/v2.0/tokens
2015-06-12 07:39:58.777 14555 TRACE ceilometer.alarm.service
2015-06-12 07:39:58.783 14555 WARNING ceilometer.openstack.common.loopingcall [-] task u'<bound method AlarmEvaluationService._evaluate_assigned_alarms of <ceilometer.alarm.service.AlarmEvaluationService object at 0x7f1763250510>>' run outlasted interval by 67.33 sec

I followed the code, in the _discover_auth_versions method, it seems that keystone can only return the external_vip , but in controller nodes, we can only use internal_vip. We have configured using internal VIP in the conf files.

Revision history for this message
Lianhao Lu (lianhao-lu) wrote :

jz, does your keystone listens on https://10.111.161.24:5000 ? Looks like the ceilometerclient is connecting to internal ip 10.111.161.24.

Revision history for this message
jz (danielradcliffe2004) wrote :

I think it's because in the _discover_auth_versions method, keystone can only return external vip instead of both external vip and internal vip

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.