OpenStack collectd plugins crash when internalURL isn't set in the catalog
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
StackLight |
Fix Committed
|
Medium
|
Simon Pasquier | ||
1.0 |
Fix Committed
|
Undecided
|
Simon Pasquier |
Bug Description
At first we noticed that the availability API panel had a gap every hour and the collectd log file reported exceptions:
[2017-03-22 13:35:50] Notification: severity = OKAY, host = controller2, plugin = pacemaker_resource, type = gauge, type_instance = vip__management, message = {"resource"
[2017-03-22 13:35:58] Unhandled python exception in read callback: KeyError: 'internalURL'
[2017-03-22 13:35:59] Unhandled python exception in read callback: KeyError: 'internalURL'
[2017-03-22 13:35:59] Service 'keystone' not found in catalog
[2017-03-22 13:35:59] Could not find Keystone tenants
After investigation, it appears that a service was registered in the Keystone catalog with only its public URL (internal and admin URLs were even not present).
Workaround:
Register an internal +admin URL for the offending service.
no longer affects: | lma-toolchain/1.1 |
Changed in lma-toolchain: | |
milestone: | 1.0.1 → 1.1.0 |
Changed in lma-toolchain: | |
status: | Triaged → In Progress |
Reviewed: https:/ /review. openstack. org/450602 /git.openstack. org/cgit/ openstack/ fuel-plugin- lma-collector/ commit/ ?id=b5a12ffbfa4 ce1c482969c2d8f 2948e416263d32
Committed: https:/
Submitter: Jenkins
Branch: master
commit b5a12ffbfa4ce1c 482969c2d8f2948 e416263d32
Author: Simon Pasquier <email address hidden>
Date: Tue Mar 28 09:35:44 2017 +0200
Fix collectd plugins when 'internalURL' isn't set
It is possible to register a service in the Keystone catalog without
internalURL. This change fixes the collectd plugins to support that
configuration.
Change-Id: Id5ef3c4fcd473b 92855cb656a8043 5d670062cfb
Closes-Bug: #1676755