Заметки по sheepdog, сделанные после аварии
Один из дисков дошел до 100% заполнения, и его никак было не освободить.
Удаление ненужных файлов tmp невозможно было сделать никакими способами.
Пытались сначала делать усечение (cat /dev/zero > filename.tmp), а затем удаление. Не получилось, т.к. при схеме записи COW (Copy-On-Write) блоки реально не удаляются с диска.
После остановки узла, получилось отмонтировать командой:
После повтроного запуска узла, наблюдалось неправильное количество v-node:
Чтобы исправить надо делать reweight кластера:
Теперь все хорошо. По 128 vnodes стало.
root@cu-rgpu-01:~# dog node list
Id Host:Port V-Nodes Zone
0 10.212.0.101:7000 128 1694553098
1 10.212.0.102:7000 128 1711330314
2 10.212.0.103:7000 128 1728107530
Далее смотрим лог /var/lib/sheepdog/sheep.log
Там много записей типа copy policy 29c7a8 not found?
обратите внимание на 29c7a8 - это конкретный volume
Смотрим подробности:
ls -l /vm-rpool/volumes/osd-05/ | grep 29c7a8
...
-rw-r----- 1 root root 4194304 Dec 27 14:50 0029c7a80000c7ee
С 3-го по 8-ой символ имени файла - это идентификатор тома вот в выводе, вы увидите объекты, принадлежащие тому они начинаются с 00 29c7a8 это хэшкод имени тома или его ID если же начинается с 8 файл - это метаданные тома в принципе, какой то объект не может быть найден, можно сделать попытку найти его в /vm-rpool/volumes/osd-4 и 5 потом, просто его можно скопировать в нужный vdi Надо выгрузить списки файлов по 29c7a8 из двух каталогов и сравнить.
Кроме того, надо следить за рамером логов в разеделе /var/lib/sheepdog и периодически перемещать старые логи на /vm-rpool/volumes Сейчас диски будут доступны. Они были недоступны в момент, когда мы остановили sheepdog на первом узле. сейчас, если диска еще нет, первый узел sheepdog отработает как gateway, перенаправляя запросы на другой узел и достанет объект со 2го или 3го узла. Сейчас будет работать, но медленнее.
Надо включать компрессию, т.к. данные жмутся в 1.27 раза - это очень хорошо.
Ограничение на уровне zfs пула не действенно и может привести к тем же последствиям Надо квоты выставлять на проекты.
Опубликовано: 28.12.2018