У меня двухузловая установка GlusterFS. У каждого по 2 реплики. Одна из систем как-то была перегружена. Потом все пошло не так. На данный момент у меня отключены все приложения. Я не знаю, как его вернуть. Я могу запустить том, но некоторые файлы кажутся поврежденными.
Я побежал gluster volume heal kvm1
, Сейчас gluster volume heal kvm1 info
показывает длинный список gfid, например
<gfid:57d68ac5-5ae7-4d14-a65e-9b6bbe0f83a3>
<gfid:c725a364-93c5-4d98-9887-bc970412f124>
<gfid:8178c200-4c9a-407b-8954-08042e45bfce>
<gfid:b28866fa-6d29-4d2d-9f71-571a7f0403bd>
Я не уверен, что это действительно что-то «лечит». Количество записей стабильно. Как я могу подтвердить, что процесс заживления действительно работает?
# gluster volume heal kvm1 info|egrep 'Brick|entries'
Brick f24p:/data/glusterfs/kvm1/brick1/brick
Number of entries: 5
Brick f23p:/data/glusterfs/kvm1/brick1/brick
Number of entries: 216
Brick f23p:/bricks/brick1/kvm1
Number of entries: 6
Brick f24p:/bricks/brick2/kvm1
Number of entries: 1
# gluster volume status
Status of volume: kvm1
Gluster process Port Online Pid
------------------------------------------------------------------------------
Brick f24p:/data/glusterfs/kvm1/brick1/brick 49160 Y 5937
Brick f23p:/data/glusterfs/kvm1/brick1/brick 49153 Y 5766
Brick f23p:/bricks/brick1/kvm1 49154 Y 5770
Brick f24p:/bricks/brick2/kvm1 49161 Y 5941
NFS Server on localhost 2049 Y 5785
Self-heal Daemon on localhost N/A Y 5789
NFS Server on f24p 2049 Y 5919
Self-heal Daemon on f24p N/A Y 5923
There are no active volume tasks
Я был в таком же состоянии:
Я нашел этот скрипт (разрешает gfid в путь к файлу) https://gist.github.com/semiosis/4392640
Моя интерпретация следующая (т.е. ваша первая строка gfid) на узле, отображающем gfid (результат команды gluster)
Файл% yourBrickPath% /. Glusterfs / 57 / d6 / 57d68ac5-5ae7-4d14-a65e-9b6bbe0f83a3 - это жесткая ссылка, указывающая на индексный дескриптор.
В нормальной ситуации у вас должен быть файл (в производственном каталоге), указывающий на тот же индексный дескриптор, и по какой-то причине этой жесткой ссылки больше нет.
Я вижу 2 решения:
изменить: содержимое файла может помочь
Возможно, вы наткнулись на эту ошибку, если используете версию <3.7.7:
https://bugzilla.redhat.com/show_bug.cgi?id=1284863
Проверьте, не отображается ли в каких-либо журналах glustershd «Не удалось получить xlator xl-0».
Исправление находится в версии 3.7.7. Однако было бы здорово найти обходные пути, если кто-нибудь их найдет.