[Bug 1858304] Re: [SRU] ceph-mgr-dashboard package missing dependencies

macchese 1858304 at bugs.launchpad.net
Sun Jan 24 17:33:11 UTC 2021


this bug is still alive on:

root at juju-ee3f63-0-lxd-0:/var/log# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.1 LTS
Release:        20.04
Codename:       focal

root at juju-ee3f63-0-lxd-0:/var/log# dpkg -l |grep ceph
ii  ceph                                 15.2.7-0ubuntu0.20.04.1           amd64        distributed storage and file system
ii  ceph-base                            15.2.7-0ubuntu0.20.04.1           amd64        common ceph daemon libraries and management tools
ii  ceph-common                          15.2.7-0ubuntu0.20.04.1           amd64        common utilities to mount and interact with a ceph storage cluster
ii  ceph-mds                             15.2.7-0ubuntu0.20.04.1           amd64        metadata server for the ceph distributed file system
ii  ceph-mgr                             15.2.7-0ubuntu0.20.04.1           amd64        manager for the ceph distributed file system
ii  ceph-mgr-dashboard                   15.2.7-0ubuntu0.20.04.1           all          dashboard module for ceph-mgr
ii  ceph-mgr-modules-core                15.2.7-0ubuntu0.20.04.1           all          ceph manager modules which are always enabled
ii  ceph-mon                             15.2.7-0ubuntu0.20.04.1           amd64        monitor server for the ceph storage system
ii  ceph-osd                             15.2.7-0ubuntu0.20.04.1           amd64        OSD server for the ceph storage system
ii  libcephfs2                           15.2.7-0ubuntu0.20.04.1           amd64        Ceph distributed file system client library
ii  python3-ceph-argparse                15.2.7-0ubuntu0.20.04.1           amd64        Python 3 utility libraries for Ceph CLI
ii  python3-ceph-common                  15.2.7-0ubuntu0.20.04.1           all          Python 3 utility libraries for Ceph
ii  python3-cephfs                       15.2.7-0ubuntu0.20.04.1           amd64        Python 3 libraries for the Ceph libcephfs library


ruuning:

root at juju-ee3f63-0-lxd-0:~# ceph mgr module enable dashboard 
Error ENOENT: all mgr daemons do not support module 'dashboard', pass --force to force enablement

root at juju-ee3f63-0-lxd-0:~# ceph mgr module enable dashboard --force
module 'dashboard' is already enabled

root at juju-ee3f63-0-lxd-0:~# ceph mgr services 
{}

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/1858304

Title:
  [SRU] ceph-mgr-dashboard package missing dependencies

Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive train series:
  Fix Released
Status in Ubuntu Cloud Archive ussuri series:
  Fix Released
Status in ceph package in Ubuntu:
  Fix Released
Status in ceph source package in Eoan:
  Fix Released
Status in ceph source package in Focal:
  Fix Released

Bug description:
  [Impact]
  Users are unable to enable the Ceph Dashboard WebUI without installing extra Python dependencies.

  [Test Case]
  Install and configure a ceph cluster
  sudo ceph mgr module enable dashboard
  sudo ceph config set mgr mgr/dashboard/ssl false

  errors thrown as detailed in original bug report.

  [Regression Potential]
  Minimal - packaging only change to add missing dependencies.

  [Original Bug Report]
  After deploying Ceph Nautilus on Eoan I installed the ceph-mgr-dashboard package and tried to enable the dashboard with:

  sudo ceph mgr module enable dashboard

  The following error is returned:
  Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: No module named 'distutils.util' (pass --force to force enablement)

  Investigating the ceph-mgr logs I found:

  2020-01-05 00:23:13.698 7f74b423cd00 -1 mgr[py] Traceback (most recent call last):
    File "/usr/share/ceph/mgr/dashboard/__init__.py", line 38, in <module>
      from .module import Module, StandbyModule
    File "/usr/share/ceph/mgr/dashboard/module.py", line 26, in <module>
      from .services.sso import load_sso_db
    File "/usr/share/ceph/mgr/dashboard/services/sso.py", line 21, in <module>
      from ..tools import prepare_url_prefix
    File "/usr/share/ceph/mgr/dashboard/tools.py", line 11, in <module>
      from distutils.util import strtobool
  ModuleNotFoundError: No module named 'distutils.util'

  I then installed python3-distutils which let me get further but the
  dashboard still wasn't starting compaining about no cert configured so
  I ran:

  ceph config set mgr mgr/dashboard/ssl false

  Now ceph status reports the error:
  Module 'dashboard' has failed: No module named 'routes'

  Investigating the logs I found:

  2020-01-05 00:30:19.990 7f663bd26700 -1 log_channel(cluster) log [ERR] : Unhandled exception from module 'dashboard' while running on mgr.ceph-mon2: No module named 'routes'
  2020-01-05 00:30:19.990 7f663bd26700 -1 dashboard.serve:
  2020-01-05 00:30:19.990 7f663bd26700 -1 Traceback (most recent call last):
    File "/usr/share/ceph/mgr/dashboard/module.py", line 362, in serve
      mapper, parent_urls = generate_routes(self.url_prefix)
    File "/usr/share/ceph/mgr/dashboard/controllers/__init__.py", line 336, in generate_routes
      mapper = cherrypy.dispatch.RoutesDispatcher()
    File "/lib/python3/dist-packages/cherrypy/_cpdispatch.py", line 515, in __init__
      import routes
  ModuleNotFoundError: No module named 'routes'

  This was addressed by installing the python3-routes package.

  Based on this I believe both python3-distutils and python3-routes
  should be added to the dependencies of the ceph-mgr-dashboard package.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1858304/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list