Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Оплата
Новости
Доставка
Загрузки
Форум
Настройка
    info@proxmox.su
    +7 (495) 320-70-49
    Заказать звонок
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Аспро: ЛайтШоп
    Телефоны
    +7 (495) 320-70-49
    Заказать звонок
    0
    0
    0
    Аспро: ЛайтШоп
    • +7 (495) 320-70-49
      • Назад
      • Телефоны
      • +7 (495) 320-70-49
      • Заказать звонок
    • info@proxmox.su
    • Москва, Бакунинская улица, 69с1
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Proxmox Виртуальная Среда
    Неправильные права доступа к файлу `/etc/pve/ceph.conf` не позволяют пользователю `ceph` получить доступ к файлу конфигурации Ceph в кластере PVE.

    Форумы: Proxmox Виртуальная Среда, Proxmox Backup Server, Proxmox Mail Gateway, Proxmox Datacenter Manager
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Неправильные права доступа к файлу `/etc/pve/ceph.conf` не позволяют пользователю `ceph` получить доступ к файлу конфигурации Ceph в кластере PVE., Proxmox Виртуальная Среда
     
    qiongzhu
    Guest
    #1
    0
    18.05.2024 14:21:00
    Пытаюсь установить radosgw + ceph dashboard в экспериментальном кластере PVE v8.2.2 с 3 узлами и Ceph v18.2.2. Вот проблема, с которой столкнулся: Ceph v18.2.2 представил новую функцию 'Multi-Site' в dashboard, которая требует доступа к 3 дополнительным типам информации (`realm` / `zone` / `zonegroup`). Однако, эту информацию нельзя получить через стандартизированный S3 API, поэтому разработчик Ceph решил вызывать cli `radosgw-admin` из dashboard (то есть из процесса ceph-mgr) для получения необходимых данных. Утилита cli `radosgw-admin` по умолчанию читает файл конфигурации `/etc/ceph/ceph.conf`. Но в PVE этот файл является симлинком к файлу `/etc/pve/ceph.conf` в следующем виде Bash: lrwxrwxrwx 1 root root 18 May 18 15:31 ceph.conf -> /etc/pve/ceph.conf И этот файл ограничивает права владельца/группы и разрешения, что не позволяет пользователю `ceph` его читать: Bash: root@pve8-ceph1:~# ls -l /etc/pve/ceph.conf
    -rw-r----- 1 root www-data 682 May 18 15:31 /etc/pve/ceph.conf
    root@pve8-ceph1:~# sudo -u ceph cat /etc/pve/ceph.conf
    cat: /etc/pve/ceph.conf: Permission denied Процесс ceph-mgr запускается с привилегиями root, но вскоре отказывается от них и переключается на `ceph:ceph`. Когда я обращаюсь к dashboard, который размещен в этом процессе, вызов `radosgw-admin` с `ceph:ceph` не работает корректно. Я пытаюсь изменить владельца или права доступа к файлу `/etc/pve/ceph.conf`, но это не работает в файловой системе кластера PVE `/etc/pve` Bash: root@pve8-ceph1:/etc/pve# ls -l /etc/pve/ceph.conf
    -rw-r----- 1 root www-data 682 May 18 15:31 /etc/pve/ceph.conf
    root@pve8-ceph1:/etc/pve# chmod 644 /etc/pve/ceph.conf
    chmod: changing permissions of '/etc/pve/ceph.conf': Operation not permitted
    root@pve8-ceph1:/etc/pve# chown root:ceph /etc/pve/ceph.conf
    chown: changing ownership of '/etc/pve/ceph.conf': Operation not permitted Я могу заставить ceph dashboard работать, удалив симлинк `/etc/ceph/ceph.conf` и скопировав файл из `/etc/pve/ceph.conf`. Но этот метод определенно проблематичен в будущем, поскольку файлы конфигурации должны синхронизироваться вручную. Я думаю, правильным решением будет установить правильного владельца/группу и права доступа к файлу `/etc/pve/ceph.conf`. Есть какие-нибудь советы по этому поводу?
     
     
     
    geoah
    Guest
    #2
    0
    22.07.2024 22:52:00
    Привет @qiongzhu, ты случайно разобрался, как настроить radosgw? Похоже, у меня та же — или похожая — проблема.
     
     
     
    UdoB
    Guest
    #3
    0
    23.07.2024 09:42:00
    Простое (хотя и не факт, что правильное) решение: добавьте пользователя ceph в группу www-data. Команда: adduser ceph www-data.
     
     
     
    geoah
    Guest
    #4
    0
    23.07.2024 10:16:00
    @UdoB Отлично! Спасибо тебе за это, очень признателен. Кажется, больше не жалуется, поэтому корректность не так важна.
     
     
     
    qiongzhu
    Guest
    #5
    0
    23.11.2024 17:58:00
    Нет. Это не работает, потому что: в файле `/usr/lib/systemd/system/ceph-mgr@.service` `ceph-mgr` запускается с параметром `--setuser ceph --setgroup ceph`, что отбрасывает любые другие права группы. Вот способы сделать ceph счастливым, можешь выбрать любой из них:
    1. Владелец файла `ceph.conf` — `ceph`.
    2. Группа файла `ceph.conf` — `ceph`.
    3. Права доступа к файлу `ceph.conf` позволяют группе `others` читать. Например: 644.
    4. Изменить файл `ceph-mgr@.service`, но тогда системные обновления будут сложнее.
     
     
     
    UdoB
    Guest
    #6
    0
    23.11.2024 18:04:00
    Ну... заработало у меня, в моей конкретной ситуации. Но да, я и писал "(не обязательно правильное) решение". Спасибо за добавление этих подсказок! (Я не проверял.)
     
     
     
    qiongzhu
    Guest
    #7
    0
    23.11.2024 18:05:00
    Да. И radosgw, и dashboard работают нормально с PVE 8.2. Основная проблема — права доступа к файлу ceph.conf, из-за чего "multi-site" в ceph dashboard выдает ошибку 500. Выше есть несколько обходных путей, некрасивые, но полезные.
     
     
     
    blackline
    Guest
    #8
    0
    23.01.2025 05:22:00
    Поскольку файл /etc/pve/ceph.conf нельзя изменить правами (chmod) или владельцем (chown), у меня остался только один выход – отредактировать /usr/lib/systemd/system/ceph-mgr@.service.

    Код:
    systemctl stop ceph-mgr@YOURNODE.service
    nano /usr/lib/systemd/system/ceph-mgr@.service

    # изменить:
    ExecStart=/usr/bin/ceph-mgr -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup ceph
    # на:
    ExecStart=/usr/bin/ceph-mgr -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup www-data

    # сохранить и выйти: ctrl + s; ctrl + x
    systemctl daemon-reload
    systemctl start ceph-mgr@YOURNODE.service
     
     
     
    herzkerl
    Guest
    #9
    0
    21.04.2025 13:12:00
    Огромное спасибо—это, наконец, решило проблему!
     
     
     
    penetal
    Guest
    #10
    0
    14.05.2025 12:18:00
    Еще один способ сделать ту же самую правку — использовать команду `edit` systemctl.

    Код:
    `systemctl edit ceph-mgr@.service`

    Добавьте следующие строки (первая строка пустая, чтобы удалить старую строку `ExecStart`):

    Код:
    `[Service]`
    `ExecStart=`
    `ExecStart=/usr/bin/ceph-mgr -f --cluster ${CLUSTER} --id %i --setuser ceph --setgroup www-data`

    Я не знаю, лучше это или хуже, чем изменение исходного файла юнита службы, но, по крайней мере, это использует "официальный" и более заметный способ изменить службу, показывая, что используется файл переопределения:

    Код:
    `root@metal01:~# systemctl status ceph-mgr@$(hostname).service`

    ```
    ● ceph-mgr@metal01.service - Ceph cluster manager daemon
        Loaded: loaded (/lib/systemd/system/ceph-mgr@.service; enabled; preset: enabled)
       Drop-In: /usr/lib/systemd/system/ceph-mgr@.service.d
                └─ceph-after-pve-cluster.conf
                /etc/systemd/system/ceph-mgr@.service.d
                └─override.conf
    ```
     
     
     
    Страницы: 1
    Читают тему
    +7 (495) 320-70-49
    info@proxmox.su

    Конфиденциальность Оферта
    © 2026 Proxmox.su
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры