Watcher fails to load storage plugin

Bug #1707603 reported by Alexander Chadin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
watcher
Fix Released
High
Alexander Chadin

Bug Description

Watcher fails to load storage plugin in case there is no installed Cinder in OpenStack services.

2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling [req-ca9c5270-1165-45a7-932e-765ab3460b67 - - - - -] publicURL endpoint for volumev3 service not found: EndpointNotFound: publicURL endpoint for volumev3 service not found
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling Traceback (most recent call last):
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/scheduling.py", line 74, in _sync
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling timed_sync()
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/scheduling.py", line 62, in _timed_sync
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling sync_func()
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/model/collector/base.py", line 185, in synchronize
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling self.cluster_data_model = self.execute()
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/model/collector/cinder.py", line 62, in execute
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return builder.execute()
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/model/collector/cinder.py", line 207, in execute
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling self._add_physical_layer()
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/decision_engine/model/collector/cinder.py", line 84, in _add_physical_layer
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling for snode in self.cinder_helper.get_storage_node_list():
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/watcher/common/cinder_helper.py", line 32, in get_storage_node_list
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return list(self.cinder.services.list(binary='cinder-volume'))
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/cinderclient/v2/services.py", line 47, in list
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return self._list(url, "services")
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/cinderclient/base.py", line 84, in _list
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling resp, body = self.api.client.get(url)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 175, in get
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return self._cs_request(url, 'GET', **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 166, in _cs_request
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return self.request(url, method, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/cinderclient/client.py", line 152, in request
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/adapter.py", line 393, in request
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling resp = super(LegacyJsonAdapter, self).request(*args, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/adapter.py", line 159, in request
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return self.session.request(url, method, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/positional/__init__.py", line 101, in inner
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return wrapped(*args, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 513, in request
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling **endpoint_filter)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 856, in get_endpoint
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return auth.get_endpoint(self, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 219, in get_endpoint
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling service_name=service_name)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/positional/__init__.py", line 101, in inner
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling return wrapped(*args, **kwargs)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling File "/usr/lib/python2.7/site-packages/keystoneauth1/access/service_catalog.py", line 228, in url_for
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling raise exceptions.EndpointNotFound(msg)
2017-07-31 12:03:30.416 7190 ERROR watcher.decision_engine.scheduling EndpointNotFound: publicURL endpoint for volumev3 service not found

Maybe we need to add option to config file where all plugins (compute, storage) are listed and can be deleted.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on watcher (master)

Change abandoned by Hidekazu Nakamura (<email address hidden>) on branch: master
Review: https://review.openstack.org/489514

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to watcher (master)

Reviewed: https://review.openstack.org/491386
Committed: https://git.openstack.org/cgit/openstack/watcher/commit/?id=985c6c49f9ecfdebc0deb1e0e4ec1241d269de08
Submitter: Jenkins
Branch: master

commit 985c6c49f9ecfdebc0deb1e0e4ec1241d269de08
Author: Hidekazu Nakamura <email address hidden>
Date: Mon Aug 7 16:36:21 2017 +0900

    Fix failure to load storage plugin

    Watcher fails to load storage plugin in case there is no installed
    Cinder in OpenStack services.

    This patch set adds collector_plugins parameter under collector
    section in watcher.conf. If plugin name is in collector_plugins,
    The plugin is loaded.

    Change-Id: Ie3c3543216c925d49b772bf5fe3773ca7d5ae437
    Closes-Bug: #1707603

Changed in watcher:
status: Triaged → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/watcher 1.4.0

This issue was fixed in the openstack/watcher 1.4.0 release.

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.