[Bug 2065867] Re: mgr: failed dependency - no module named distutils
James Page
2065867 at bugs.launchpad.net
Thu May 16 14:28:13 UTC 2024
** Description changed:
- When running on noble with the snapshot of squid, the ceph-mgr has
- errors on enabling specific modules - volume and dashboard.
+ [ Impact ]
+ dashboard and volume ceph mgr modules fail to activate under Python 3.12 due to use of distutils.
+
+ [ Test Plan ]
+ Deploy ceph-mon charm to three machines using Juju on Ubuntu 24.04.
+ sudo ceph status
+ "Module 'volumes' has failed dependency: No module named 'distutils'" present in output (this is the last module to fail loading"
+
+ [ Where problems could occur ]
+ The proposed patch switches to using the vendored distutils in setuptools for the two imports in the ceph mgr modules that exhibit this issue - this is a minimal fix; codebase really needs refactoring to drop all use of distutils but that's outside of the scope on an SRU update.
+
+ Other distutils usage gets caught by the distutils_hack that setuptools
+ uses to inject its vendored copy into the distutils module location.
+
+ [ Original Bug Report ]
+ When running on noble with the snapshot of squid, the ceph-mgr has errors on enabling specific modules - volume and dashboard.
$ sudo microceph.ceph status
- cluster:
- id: 4e3ff87c-5320-4494-9d3c-42e69cc11398
- health: HEALTH_WARN
- Module 'volumes' has failed dependency: No module named 'distutils'
- OSD count 0 < osd_pool_default_size 3
-
- services:
- mon: 1 daemons, quorum joplin.glenview.com (age 5s)
- mgr: joplin.glenview.com(active, starting, since 0.942931s)
- osd: 0 osds: 0 up, 0 in
-
- data:
- pools: 0 pools, 0 pgs
- objects: 0 objects, 0 B
- usage: 0 B used, 0 B / 0 B avail
- pgs:
+ cluster:
+ id: 4e3ff87c-5320-4494-9d3c-42e69cc11398
+ health: HEALTH_WARN
+ Module 'volumes' has failed dependency: No module named 'distutils'
+ OSD count 0 < osd_pool_default_size 3
+
+ services:
+ mon: 1 daemons, quorum joplin.glenview.com (age 5s)
+ mgr: joplin.glenview.com(active, starting, since 0.942931s)
+ osd: 0 osds: 0 up, 0 in
+
+ data:
+ pools: 0 pools, 0 pgs
+ objects: 0 objects, 0 B
+ usage: 0 B used, 0 B / 0 B avail
+ pgs:
distutils as a standalone package was removed from noble - the ceph
codebase makes quite a bit of use of distuils still which gets picked up
by the distutils_hack in setuptools but not in the context of the mgr
daemon.
--
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/2065867
Title:
mgr: failed dependency - no module named distutils
Status in ceph package in Ubuntu:
Triaged
Status in ceph source package in Noble:
Triaged
Status in ceph source package in Oracular:
Triaged
Bug description:
[ Impact ]
dashboard and volume ceph mgr modules fail to activate under Python 3.12 due to use of distutils.
[ Test Plan ]
Deploy ceph-mon charm to three machines using Juju on Ubuntu 24.04.
sudo ceph status
"Module 'volumes' has failed dependency: No module named 'distutils'" present in output (this is the last module to fail loading"
[ Where problems could occur ]
The proposed patch switches to using the vendored distutils in setuptools for the two imports in the ceph mgr modules that exhibit this issue - this is a minimal fix; codebase really needs refactoring to drop all use of distutils but that's outside of the scope on an SRU update.
Other distutils usage gets caught by the distutils_hack that
setuptools uses to inject its vendored copy into the distutils module
location.
[ Original Bug Report ]
When running on noble with the snapshot of squid, the ceph-mgr has errors on enabling specific modules - volume and dashboard.
$ sudo microceph.ceph status
cluster:
id: 4e3ff87c-5320-4494-9d3c-42e69cc11398
health: HEALTH_WARN
Module 'volumes' has failed dependency: No module named 'distutils'
OSD count 0 < osd_pool_default_size 3
services:
mon: 1 daemons, quorum joplin.glenview.com (age 5s)
mgr: joplin.glenview.com(active, starting, since 0.942931s)
osd: 0 osds: 0 up, 0 in
data:
pools: 0 pools, 0 pgs
objects: 0 objects, 0 B
usage: 0 B used, 0 B / 0 B avail
pgs:
distutils as a standalone package was removed from noble - the ceph
codebase makes quite a bit of use of distuils still which gets picked
up by the distutils_hack in setuptools but not in the context of the
mgr daemon.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/2065867/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list