Как перераспределить место в Ceph?

Помогите разобраться с CEPH

Для теста развернул на одной машине CEPH

В качестве OSD использую директории на диске

Создал 7 директорий:

/opt/osd1
/opt/osd2
/opt/osd3
...
/opt/osd7

поднял rados gateway в итоге получилось 6 пулов:

#ceph osd pool ls
.rgw.root
default.rgw.control
default.rgw.meta
default.rgw.log
default.rgw.buckets.index
default.rgw.buckets.data

Для теста выставил следующие параметры ( репликация мне не нужна):

osd pool default size = 1
osd pool default min size = 1
osd pool default pg num = 30
osd pool default pgp num = 30

В ходе теста CEPH предупредил что заканчивается место на одном OSD. Я решил, что поможет добавление нового OSD и CEPH сам перераспределит данные ( я был не прав!) Сейчас статус ceph стал таким:

~# ceph -s
  cluster:
    id:     3ed5c9c-ec59-4223-9104-65f82103a45d
    health: HEALTH_ERR
            Reduced data availability: 28 pgs stale
            1 slow requests are blocked > 32 sec. Implicated osds 0
            4 stuck requests are blocked > 4096 sec. Implicated osds 1,2,5

  services:
    mon: 1 daemons, quorum Rutherford
    mgr: Ruerfr(active)
    osd: 7 osds: 6 up, 6 in
    rgw: 1 daemon active

  data:
    pools:   6 pools, 180 pgs
    objects: 227 objects, 2.93KiB
    usage:   23.0GiB used, 37.0GiB / 60GiB avail
    pgs:     152 active+clean
             28  stale+active+clean

место на OSD закончилось и он ушел в статус down:

# ceph osd tree
ID CLASS WEIGHT  TYPE NAME           STATUS REWEIGHT PRI-AFF
-1       0.06857 root default
-3       0.06857     host Rutherford
 0   hdd 0.00980         osd.0           up  0.95001 1.00000
 1   hdd 0.00980         osd.1           up  0.90002 1.00000
 2   hdd 0.00980         osd.2           up  0.90002 1.00000
 3   hdd 0.00980         osd.3         down        0 1.00000
 4   hdd 0.00980         osd.4           up  1.00000 1.00000
 5   hdd 0.00980         osd.5           up  1.00000 1.00000
 6   hdd 0.00980         osd.6           up  1.00000 1.00000

Я понимаю что проблема в моем не понимании работы CEPH, но к сожалению сам найти решение не смог, поэтому прошу помощи. Вопросы на которые я так и не смог ответить:

Как сейчас восстановить работу CEPH , место на диске есть. Создать OSD могу , но как заставить CEPH перераспределить данные с одного OSD на другие ?
Почему CEPH писал данные только на один OSD, я изначально создавал их 7 штук ?
  • Вопрос задан
  • 564 просмотра
Пригласить эксперта
Ответы на вопрос 2
FoxCloud
@FoxCloud
Хостинг и облачные сервисы
в общем-то автор скинул недостающие ответы и ему расписали решение: https://www.linux.org.ru/forum/general/15813823

опять-таки, Size=1, Min Size =1 - нетипичные и нерекомендуемые настройки, которые не гарантируют корректность работы Ceph

Дизайн Ceph в принципе предполагает Size =3 , Min Size = 2. Каждый объект храним в 3 копиях, а если остаются две - бьём тревогу
Ответ написан
@maksasila
System Administrator
А что показывают:
ceph osd df tree
df -h

К тому же CEPH пытался писать в другие OSD, но не смог:
4 stuck requests are blocked > 4096 sec. Implicated osds 1,2,5

Нужно смотреть, почему есть эти заблокиированные реквесты.

И почему 7 папок, а не сразу 10 или 20? (сарказм)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы