[Environment]
Xenial/Queens
[Description]
If no user_domain_id is provided then, the following exception will be raised by the aodh-notifier component:
$ openstack alarm-history show 1424b6fb-1d9d-4d69-b00a-ad455aad0ecb
==> /var/log/aodh/aodh-notifier.log <== 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/generic/base.py", line 201, in get_auth_ref 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier return self._plugin.get_auth_ref(session, **kwargs) 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/v2.py", line 63, in get_auth_ref 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier authenticated=False, log=False) 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 848, in post 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier return self.request(url, 'POST', **kwargs) 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/python2.7/dist-packages/keystoneauth1/session.py", line 737, in request 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier raise exceptions.from_response(resp, method, url) 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier NotFound: (http://10.5.0.36:35357/v2.0/tokens): The resource could not be found. (HTTP 404) (Request-ID: req-50d54903-d2af-4fd1-be68-a92498d91b85) 2019-05-31 02:07:26.663 15274 ERROR aodh.notifier
Domain configuration for the aodh service is as follows:
root@juju-95497c-controller-1:/home/ubuntu# grep domain /etc/aodh/aodh.conf gnocchi_external_domain_name = service_domain project_domain_name = service_domain user_domain_name = service_domain
### Explanation
The following line https://github.com/openstack/aodh/blob/master/aodh/keystone_client.py#L51 enforces the existence of the user_domain_id for getting the authenticated keystone session.
[Proposed Solution]
* Use user_domain_name as a fallback if no user_domain_id is provided. * The charm templates should provide only user_domain_id if provided orelse fallback to user_domain_name.
[Environment]
Xenial/Queens
[Description]
If no user_domain_id is provided then, the following exception will be raised by the
aodh-notifier component:
$ openstack alarm-history show 1424b6fb- 1d9d-4d69- b00a-ad455aad0e cb
==> /var/log/ aodh/aodh- notifier. log <== python2. 7/dist- packages/ keystoneauth1/ identity/ generic/ base.py" , line 201, in get_auth_ref get_auth_ ref(session, **kwargs) python2. 7/dist- packages/ keystoneauth1/ identity/ v2.py", line 63, in get_auth_ref False, log=False) python2. 7/dist- packages/ keystoneauth1/ session. py", line 848, in post python2. 7/dist- packages/ keystoneauth1/ session. py", line 737, in request from_response( resp, method, url) 10.5.0. 36:35357/ v2.0/tokens): The resource could not be found. (HTTP 404) (Request-ID: req-50d54903- d2af-4fd1- be68-a92498d91b 85)
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier return self._plugin.
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier authenticated=
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier return self.request(url, 'POST', **kwargs)
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier File "/usr/lib/
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier raise exceptions.
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier NotFound: (http://
2019-05-31 02:07:26.663 15274 ERROR aodh.notifier
Domain configuration for the aodh service is as follows:
root@juju- 95497c- controller- 1:/home/ ubuntu# grep domain /etc/aodh/aodh.conf external_ domain_ name = service_domain
gnocchi_
project_domain_name = service_domain
user_domain_name = service_domain
### Explanation
The following line https:/ /github. com/openstack/ aodh/blob/ master/ aodh/keystone_ client. py#L51
enforces the existence of the user_domain_id for getting the authenticated keystone session.
[Proposed Solution]
* Use user_domain_name as a fallback if no user_domain_id is provided.
* The charm templates should provide only user_domain_id if provided orelse
fallback to user_domain_name.