[Bug 1967139] Re: unable to enable ceph-mgr dashboard module

Chris MacNaughton 1967139 at bugs.launchpad.net
Wed Jul 20 21:07:28 UTC 2022


** Description changed:

+ [Impact]
+ 
+ The PEP443 in-compliant version reported by python-cheroot causes Ceph's
+ dashboard module to be unavailable on Jammy.
+ 
+ [Test Plan]
+ 
+ $ ceph mgr module enable dashboard
+ Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: invalid version number '8.5.2+ds1' (pass --force to force enablement)
+ 
+ With this change, the above command should execute successfully and
+ enable the ceph dashboard
+ 
+ 
+ [Where problems could occur]
+ 
+ Issues could occur with version detection in depending code as the
+ version would now be reporting a PEP443 compatible version.
+ 
+ [Other Info]
+  
+ ---- Original Report ----
+ 
  # lsb_release -rd
  Description:    Ubuntu Jammy Jellyfish (development branch)
  Release:        22.04
  
  # apt-cache policy ceph
  ceph:
-   Installed: 17.1.0-0ubuntu3
-   Candidate: 17.1.0-0ubuntu3
-   Version table:
-  *** 17.1.0-0ubuntu3 500
-         500 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages
-         100 /var/lib/dpkg/status
+   Installed: 17.1.0-0ubuntu3
+   Candidate: 17.1.0-0ubuntu3
+   Version table:
+  *** 17.1.0-0ubuntu3 500
+         500 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages
+         100 /var/lib/dpkg/status
  
  # What expected to happen?
  Enable to activate ceph-mgr dashboard module
  
  # What happened instead?
  My cluster status:
  # ceph -s
-   cluster:
-     id:     52dcb872-a44a-11ec-a9d5-00155d1a624f
-     health: HEALTH_OK
+   cluster:
+     id:     52dcb872-a44a-11ec-a9d5-00155d1a624f
+     health: HEALTH_OK
  
-   services:
-     mon: 3 daemons, quorum aa-ceph01,aa-ceph02,aa-ceph03 (age 17m)
-     mgr: aa-ceph03(active, since 3m), standbys: aa-ceph01, aa-ceph02
-     osd: 9 osds: 9 up (since 16m), 9 in (since 16m)
+   services:
+     mon: 3 daemons, quorum aa-ceph01,aa-ceph02,aa-ceph03 (age 17m)
+     mgr: aa-ceph03(active, since 3m), standbys: aa-ceph01, aa-ceph02
+     osd: 9 osds: 9 up (since 16m), 9 in (since 16m)
  
-   data:
-     pools:   1 pools, 1 pgs
-     objects: 2 objects, 449 KiB
-     usage:   185 MiB used, 270 GiB / 270 GiB avail
-     pgs:     1 active+clean
+   data:
+     pools:   1 pools, 1 pgs
+     objects: 2 objects, 449 KiB
+     usage:   185 MiB used, 270 GiB / 270 GiB avail
+     pgs:     1 active+clean
  
  It shows following error:
  
  # ceph mgr module enable dashboard
  Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: invalid version number '8.5.2+ds1' (pass --force to force enablement)
  
  # some logs collected from ceph-mgr
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Module not found: 'dashboard'
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Traceback (most recent call last):
-   File "/usr/share/ceph/mgr/dashboard/__init__.py", line 52, in <module>
-     from .module import Module, StandbyModule  # noqa: F401
-   File "/usr/share/ceph/mgr/dashboard/module.py", line 49, in <module>
-     patch_cherrypy(cherrypy.__version__)
-   File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 197, in patch_cherrypy
-     accept_socket_error_0(v)
-   File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 124, in accept_socket_error_0
-     if v < StrictVersion("9.0.0") or cheroot_version < StrictVersion("6.5.5"):
-   File "/lib/python3.10/distutils/version.py", line 64, in __gt__
-     c = self._cmp(other)
-   File "/lib/python3.10/distutils/version.py", line 168, in _cmp
-     other = StrictVersion(other)
-   File "/lib/python3.10/distutils/version.py", line 40, in __init__
-     self.parse(vstring)
-   File "/lib/python3.10/distutils/version.py", line 137, in parse
-     raise ValueError("invalid version number '%s'" % vstring)
+   File "/usr/share/ceph/mgr/dashboard/__init__.py", line 52, in <module>
+     from .module import Module, StandbyModule  # noqa: F401
+   File "/usr/share/ceph/mgr/dashboard/module.py", line 49, in <module>
+     patch_cherrypy(cherrypy.__version__)
+   File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 197, in patch_cherrypy
+     accept_socket_error_0(v)
+   File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 124, in accept_socket_error_0
+     if v < StrictVersion("9.0.0") or cheroot_version < StrictVersion("6.5.5"):
+   File "/lib/python3.10/distutils/version.py", line 64, in __gt__
+     c = self._cmp(other)
+   File "/lib/python3.10/distutils/version.py", line 168, in _cmp
+     other = StrictVersion(other)
+   File "/lib/python3.10/distutils/version.py", line 40, in __init__
+     self.parse(vstring)
+   File "/lib/python3.10/distutils/version.py", line 137, in parse
+     raise ValueError("invalid version number '%s'" % vstring)
  ValueError: invalid version number '8.5.2+ds1'
  
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Class not found in module 'dashboard'
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Error loading module 'dashboard': (2) No such file or directory
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'progress'
  2022-03-30T13:45:11.838+0000 7fb965cf2dc0 -1 mgr[py] Module progress has missing NOTIFY_TYPES member
  2022-03-30T13:45:11.838+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'localpool'
  2022-03-30T13:45:11.958+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'osd_perf_query'
  2022-03-30T13:45:12.134+0000 7fb965cf2dc0 -1 mgr[py] Module osd_perf_query has missing NOTIFY_TYPES member
  2022-03-30T13:45:12.134+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'telemetry'
  2022-03-30T13:45:12.442+0000 7fb965cf2dc0 -1 mgr[py] Module telemetry has missing NOTIFY_TYPES member
  2022-03-30T13:45:12.442+0000 7fb965cf2dc0 -1 log_channel(cluster) log [ERR] : Failed to load ceph-mgr modules: dashboard

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

Title:
  unable to enable ceph-mgr dashboard module

Status in ceph package in Ubuntu:
  Confirmed
Status in python-cheroot package in Ubuntu:
  Fix Released
Status in ceph source package in Jammy:
  New
Status in python-cheroot source package in Jammy:
  New

Bug description:
  [Impact]

  The PEP443 in-compliant version reported by python-cheroot causes
  Ceph's dashboard module to be unavailable on Jammy.

  [Test Plan]

  $ ceph mgr module enable dashboard
  Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: invalid version number '8.5.2+ds1' (pass --force to force enablement)

  With this change, the above command should execute successfully and
  enable the ceph dashboard

  
  [Where problems could occur]

  Issues could occur with version detection in depending code as the
  version would now be reporting a PEP443 compatible version.

  [Other Info]
   
  ---- Original Report ----

  # lsb_release -rd
  Description:    Ubuntu Jammy Jellyfish (development branch)
  Release:        22.04

  # apt-cache policy ceph
  ceph:
    Installed: 17.1.0-0ubuntu3
    Candidate: 17.1.0-0ubuntu3
    Version table:
   *** 17.1.0-0ubuntu3 500
          500 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages
          100 /var/lib/dpkg/status

  # What expected to happen?
  Enable to activate ceph-mgr dashboard module

  # What happened instead?
  My cluster status:
  # ceph -s
    cluster:
      id:     52dcb872-a44a-11ec-a9d5-00155d1a624f
      health: HEALTH_OK

    services:
      mon: 3 daemons, quorum aa-ceph01,aa-ceph02,aa-ceph03 (age 17m)
      mgr: aa-ceph03(active, since 3m), standbys: aa-ceph01, aa-ceph02
      osd: 9 osds: 9 up (since 16m), 9 in (since 16m)

    data:
      pools:   1 pools, 1 pgs
      objects: 2 objects, 449 KiB
      usage:   185 MiB used, 270 GiB / 270 GiB avail
      pgs:     1 active+clean

  It shows following error:

  # ceph mgr module enable dashboard
  Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: invalid version number '8.5.2+ds1' (pass --force to force enablement)

  # some logs collected from ceph-mgr
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Module not found: 'dashboard'
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Traceback (most recent call last):
    File "/usr/share/ceph/mgr/dashboard/__init__.py", line 52, in <module>
      from .module import Module, StandbyModule  # noqa: F401
    File "/usr/share/ceph/mgr/dashboard/module.py", line 49, in <module>
      patch_cherrypy(cherrypy.__version__)
    File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 197, in patch_cherrypy
      accept_socket_error_0(v)
    File "/usr/share/ceph/mgr/dashboard/cherrypy_backports.py", line 124, in accept_socket_error_0
      if v < StrictVersion("9.0.0") or cheroot_version < StrictVersion("6.5.5"):
    File "/lib/python3.10/distutils/version.py", line 64, in __gt__
      c = self._cmp(other)
    File "/lib/python3.10/distutils/version.py", line 168, in _cmp
      other = StrictVersion(other)
    File "/lib/python3.10/distutils/version.py", line 40, in __init__
      self.parse(vstring)
    File "/lib/python3.10/distutils/version.py", line 137, in parse
      raise ValueError("invalid version number '%s'" % vstring)
  ValueError: invalid version number '8.5.2+ds1'

  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Class not found in module 'dashboard'
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0 -1 mgr[py] Error loading module 'dashboard': (2) No such file or directory
  2022-03-30T13:45:11.706+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'progress'
  2022-03-30T13:45:11.838+0000 7fb965cf2dc0 -1 mgr[py] Module progress has missing NOTIFY_TYPES member
  2022-03-30T13:45:11.838+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'localpool'
  2022-03-30T13:45:11.958+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'osd_perf_query'
  2022-03-30T13:45:12.134+0000 7fb965cf2dc0 -1 mgr[py] Module osd_perf_query has missing NOTIFY_TYPES member
  2022-03-30T13:45:12.134+0000 7fb965cf2dc0  1 mgr[py] Loading python module 'telemetry'
  2022-03-30T13:45:12.442+0000 7fb965cf2dc0 -1 mgr[py] Module telemetry has missing NOTIFY_TYPES member
  2022-03-30T13:45:12.442+0000 7fb965cf2dc0 -1 log_channel(cluster) log [ERR] : Failed to load ceph-mgr modules: dashboard

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1967139/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list