Bug 50698 - Проблемы ceph c модулем: mgr daemons do not support module 'dashboard' (ограничения PyO3)
Summary: Проблемы ceph c модулем: mgr daemons do not support module 'dashboard' (огран...
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: ceph (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Alexey Shabalin
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-06-20 15:12 MSK by Tatyana Gagina
Modified: 2024-06-20 17:22 MSK (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tatyana Gagina 2024-06-20 15:12:48 MSK
Стенды, обновлённые до Sisyphus:
ALT Server x86-64

Версия: ceph-18.2.2-alt1

Шаги:
1. Настроить кластер ceph и на первую ноду установить пакет:
# apt-get install ceph-mgr-dashboard

2. Включить модуль:
# ceph mgr module enable dashboard 


Результат: 
Error ENOENT: all mgr daemons do not support module 'dashboard', pass --force to force enablement
и
Error ENOENT: module 'dashboard' reports that it cannot run on the active manager daemon: PyO3 modules do not yet support subinterpreters, see https://github.com/PyO3/pyo3/issues/576 (pass --force to force enablement)
(на p10 была другая ошибка https://bugzilla.altlinux.org/49695).

Workaround:
Работает с параметром --force:
# ceph mgr module enable dashboard --force

Как итог - модуль включен:
#  ceph mgr module ls
MODULE
balancer        on (always on)
crash           on (always on)
devicehealth    on (always on)
orchestrator    on (always on)
pg_autoscaler   on (always on)
progress        on (always on)
rbd_support     on (always on)
status          on (always on)
telemetry       on (always on)
volumes         on (always on)
dashboard       on
iostat          on
alerts          -
localpool       -
mds_autoscaler  -
mirroring       -
nfs             -
osd_perf_query  -
osd_support     -
restful         -
rgw             -
selftest        -
snap_schedule   -
stats           -


Но:
 после не удаётся создать пользователя: # ceph dashboard ac-user-create cephadmin -i passwd administrator
Результат: no valid command found; 10 closest matches:
Error EINVAL: invalid command
Файл с паролем создан ('echo <пароль> > passwd', всё на месте).

Аналогично при создании сертификата: 
# ceph dashboard create-self-signed-cert
no valid command found; 10 closest matches:
Error EINVAL: invalid command


В логах:
# journalctl -u ceph-mgr@ceph-hosta.service
июн 20 13:13:04 ceph-hosta systemd[1]: Started ceph-mgr@ceph-hosta.service - Ceph cluster manager daemon.
июн 20 13:13:04 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:04.914+0300 7f132ad40000 -1 mgr[py] Module alerts has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.050+0300 7f132ad40000 -1 mgr[py] Module crash has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.275+0300 7f132ad40000 -1 mgr[py] Module pg_autoscaler has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.459+0300 7f132ad40000 -1 mgr[py] Module snap_schedule has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.650+0300 7f132ad40000 -1 mgr[py] Module orchestrator has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.851+0300 7f132ad40000 -1 mgr[py] Module volumes has missing NOTIFY_TYPES member
июн 20 13:13:05 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:05.945+0300 7f132ad40000 -1 mgr[py] Module balancer has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.035+0300 7f132ad40000 -1 mgr[py] Module progress has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.230+0300 7f132ad40000 -1 mgr[py] Module nfs has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.365+0300 7f132ad40000 -1 mgr[py] Module status has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.499+0300 7f132ad40000 -1 mgr[py] Module osd_perf_query has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.594+0300 7f132ad40000 -1 mgr[py] Module selftest has missing NOTIFY_TYPES member
июн 20 13:13:06 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:06.684+0300 7f132ad40000 -1 mgr[py] Module osd_support has missing NOTIFY_TYPES member
июн 20 13:13:07 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:07.002+0300 7f132ad40000 -1 mgr[py] Module rbd_support has missing NOTIFY_TYPES member
июн 20 13:13:07 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:07.196+0300 7f132ad40000 -1 mgr[py] Module rgw has missing NOTIFY_TYPES member
июн 20 13:13:07 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:07.287+0300 7f132ad40000 -1 mgr[py] Module iostat has missing NOTIFY_TYPES member
июн 20 13:13:07 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:07.379+0300 7f132ad40000 -1 mgr[py] Module devicehealth has missing NOTIFY_TYPES member
июн 20 13:13:07 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:07.644+0300 7f132ad40000 -1 mgr[py] Module telemetry has missing NOTIFY_TYPES member
июн 20 13:13:08 ceph-hosta ceph-mgr[13348]: 2024-06-20T13:13:08.821+0300 7f13138606c0 -1 mgr.server handle_report got status from non-daemon mon.ceph-hostc
июн 20 13:16:39 ceph-hosta systemd[1]: Stopping ceph-mgr@ceph-hosta.service - Ceph cluster manager daemon...
июн 20 13:16:40 ceph-hosta systemd[1]: ceph-mgr@ceph-hosta.service: Deactivated successfully.
июн 20 13:16:40 ceph-hosta systemd[1]: Stopped ceph-mgr@ceph-hosta.service - Ceph cluster manager daemon.
июн 20 13:16:40 ceph-hosta systemd[1]: ceph-mgr@ceph-hosta.service: Consumed 5.747s CPU time, 293.0M memory peak, 0B memory swap peak.
-- Boot 74fcba9ff7a54ce0801b49b4d9d54a93 --
июн 20 13:16:57 ceph-hosta systemd[1]: Started ceph-mgr@ceph-hosta.service - Ceph cluster manager daemon.
июн 20 13:16:59 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:16:59.282+0300 7f5e2c959000 -1 mgr[py] Module alerts has missing NOTIFY_TYPES member
июн 20 13:16:59 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:16:59.464+0300 7f5e2c959000 -1 mgr[py] Module crash has missing NOTIFY_TYPES member
июн 20 13:16:59 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:16:59.694+0300 7f5e2c959000 -1 mgr[py] Module pg_autoscaler has missing NOTIFY_TYPES member
июн 20 13:16:59 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:16:59.883+0300 7f5e2c959000 -1 mgr[py] Module snap_schedule has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.073+0300 7f5e2c959000 -1 mgr[py] Module orchestrator has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.286+0300 7f5e2c959000 -1 mgr[py] Module volumes has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.380+0300 7f5e2c959000 -1 mgr[py] Module balancer has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.476+0300 7f5e2c959000 -1 mgr[py] Module progress has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.704+0300 7f5e2c959000 -1 mgr[py] Module nfs has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.838+0300 7f5e2c959000 -1 mgr[py] Module status has missing NOTIFY_TYPES member
июн 20 13:17:00 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:00.971+0300 7f5e2c959000 -1 mgr[py] Module osd_perf_query has missing NOTIFY_TYPES member
июн 20 13:17:01 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:01.065+0300 7f5e2c959000 -1 mgr[py] Module selftest has missing NOTIFY_TYPES member
июн 20 13:17:01 ceph-hosta ceph-mgr[1120]: 2024-06-20T13:17:01.186+0300 7f5e2c959000 -1 mgr[py] Module osd_support has missing NOTIFY_TYPES member

Также недоступен Web интерфейс (http://10.88.*.*:8080). 
Предварительно сервис на первом хосте отключен (# systemctl disable --now ahttpd.service) и выполнено # ceph config set mgr mgr/dashboard/ssl false,
так как сертификат не настраивался (также может потребоваться с параметром --force).

Есть ли какая-то вероятность, что это связано с этой ошибкой (из-за недостаующего модуля PyO3)?
Comment 1 Tatyana Gagina 2024-06-20 16:23:59 MSK
Дополнительно: 
Если  включить автоперезапуск сервисов на каждом хосте и перезагрузиться, статус будет HEALTH_WARN: Module 'dashboard' has failed dependency: PyO3 modules do not yet support subinterpreters, see https://github.com/PyO3/pyo3/issues/576

Шаги:
# sed -i '/CEPH_AUTO_RESTART_ON_UPGRADE/s/no/yes/' /etc/sysconfig/ceph
# reboot
# ceph -s

Результат: 
cluster:
    id:     ddf192ff-5f3e-4911-ba6d-0c797f9dddb2
    health: HEALTH_WARN
            Module 'dashboard' has failed dependency: PyO3 modules do not yet support subinterpreters, see https://github.com/PyO3/pyo3/issues/576
 
  services:
    mon: 3 daemons, quorum ceph-hosta,ceph-hostc,ceph-hostb (age 57s)
    mgr: ceph-hosta(active, since 49s), standbys: ceph-hostc, ceph-hostb
    mds: 1/1 daemons up, 2 standby
    osd: 9 osds: 9 up (since 49s), 9 in (since 3h)
 
  data:
    volumes: 1/1 healthy
    pools:   4 pools, 161 pgs
    objects: 26 objects, 641 KiB
    usage:   754 MiB used, 44 GiB / 45 GiB avail
    pgs:     161 active+clean
Comment 2 Tatyana Gagina 2024-06-20 17:22:50 MSK
(Ответ для Tatyana Gagina на комментарий #1)
> Дополнительно: 
> Если  включить автоперезапуск сервисов на каждом хосте и перезагрузиться,
> статус будет HEALTH_WARN: Module 'dashboard' has failed dependency: PyO3
> modules do not yet support subinterpreters, see
> https://github.com/PyO3/pyo3/issues/576
> 
В начале всех шагов предварительно настроен кластер.

>
> Шаги:
> # sed -i '/CEPH_AUTO_RESTART_ON_UPGRADE/s/no/yes/' /etc/sysconfig/ceph
> # reboot
> # ceph -s
>