Actions
Bug #44514
closedmgr/dashboard: Internal Server Error 500 on landing page with cephadm backend
% Done:
0%
Source:
Tags:
Backport:
Regression:
No
Severity:
2 - major
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
How to reproduce¶
- Enable cephadm and provision at least one service.
- Start the Dashboard.
- Error on the landing page:
Analysis¶
- The backend raise an exception when receiving /api/health/minimal request. The backend raises the exception when retrieving iSCSI service URL from orchestrator. (https://github.com/ceph/ceph/blob/b57403de206dfe80b437a2d5b38c8d68afab0335/src/pybind/mgr/dashboard/services/iscsi_config.py#L80-L90)
"Traceback (most recent call last): File \"/usr/lib/python3.7/site-packages/cherrypy/_cprequest.py\", line 631, in respond self._do_respond(path_info) File \"/usr/lib/python3.7/site-packages/cherrypy/_cprequest.py\", line 690, in _do_respond response.body = self.handler() File \"/usr/lib/python3.7/site-packages/cherrypy/lib/encoding.py\", line 221, in __call__ self.body = self.oldhandler(*args, **kwargs) File \"/usr/lib/python3.7/site-packages/cherrypy/_cptools.py\", line 237, in wrap return self.newhandler(innerfunc, *args, **kwargs) File \"/ceph/src/pybind/mgr/dashboard/services/exception.py\", line 93, in dashboard_exception_handler return handler(*args, **kwargs) File \"/usr/lib/python3.7/site-packages/cherrypy/_cpdispatch.py\", line 60, in __call__ return self.callable(*self.args, **self.kwargs) File \"/ceph/src/pybind/mgr/dashboard/controllers/__init__.py\", line 665, in inner ret = func(*args, **kwargs) File \"/ceph/src/pybind/mgr/dashboard/controllers/health.py\", line 199, in minimal return self.health_minimal.all_health() File \"/ceph/src/pybind/mgr/dashboard/controllers/health.py\", line 62, in all_health result['iscsi_daemons'] = self.iscsi_daemons() File \"/ceph/src/pybind/mgr/dashboard/controllers/health.py\", line 126, in iscsi_daemons for gateway_name in IscsiGatewaysConfig.get_gateways_config()['gateways']: File \"/ceph/src/pybind/mgr/dashboard/services/iscsi_config.py\", line 125, in get_gateways_config orch_config = cls._load_config_from_orchestrator() File \"/ceph/src/pybind/mgr/dashboard/services/iscsi_config.py\", line 86, in _load_config_from_orchestrator 'service_url': instance.service_url AttributeError: 'ServiceDescription' object has no attribute 'hostname'
- Some problems are observed here:
- cephadm returns services that are not in `iscsi` type. An issue was created to track this. (https://tracker.ceph.com/issues/44512)
- ServiceDescription has no `hostname` member. Service now doesn't represent any individual daemon, we should move to DaemonDescription (list daemons)
- iSCSI support is not ready in cepadm yet, not sure how to get service_url of iSCSI daemons.
Files
Updated by Lenz Grimmer about 4 years ago
- Subject changed from mgr/dashboard: Error on landing page with cephadm backend to mgr/dashboard: Internal Server Error 500 on landing page with cephadm backend
- Severity changed from 3 - minor to 2 - major
Raising Severity - this ought to be fixed quickly to avoid bad first time impressions.
Updated by Kiefer Chang about 4 years ago
If we have #44512 fixed, then the user should not see the error.
But before we know how to retrieve iSCSI information from Orhcestrator daemons, I suggest creating a PR to bypass getting formation from Orhcestrator.
And creating another issue to bring the feature back when orchestrator works are ready.
Updated by Ricardo Marques about 4 years ago
Agree with Kiefer, let's just bypass orchestrator until iSCSI is supported.
Updated by Kiefer Chang about 4 years ago
- Related to Bug #44593: mgr/dashboard: get iSCSI gateway information from Orchestrator added
Updated by Kiefer Chang about 4 years ago
- Status changed from New to Fix Under Review
- Assignee set to Kiefer Chang
- Pull request ID set to 33947
Updated by Kiefer Chang about 4 years ago
- Status changed from Fix Under Review to Won't Fix
Let's fix https://tracker.ceph.com/issues/44593 directly.
Updated by Ernesto Puerta about 3 years ago
- Project changed from mgr to Dashboard
- Category changed from 146 to General - Back-end
Actions