Отладка GFS2
Примечание
Все IP-адреса, подсети, номера VLAN и наименования интерфейсов являются примерами. Необходимо производить настройку в соответствии с инфраструктурой.
Проверка состояния ФС
Проверка состояния ФС GFS2 производится с помощью команд CLI:
Указанные ниже команды можно выполнять групповым запросом, используя команду
node nodes-cli <command>
.
-
Вывод состояния кластерного транспорта, кворума и службы блокировок.
Вывод не должен содержать ошибок.
storage gfs2
-
Конфигурация службы блокировок DLM:
storage dlm-conf
-
Вывод файла
hosts
для сопоставления узлов с именем узла.hosts
На всех узлах, объединенных в Кластерный транспорт, в файле
hosts
должны быть внесены описания "ip имя узла” всех задействованных узлов Кластерного транспорта как трафика управления, так и трафика данных. -
Вывод информации о подключенных и доступных LUNs:
storage multipath
-
Получение таргетов iSCSI:
storage iscsi-discovery <ip_address:port>
-
Вывод доступных iSCSI LUNs:
storage iscsi-luns
-
Сканирование доступных ФС и блочных хранилищ:
storage discovery
Проверка состояния служб
Для проверки состояния служб, связанных с работой GFS2, необходимо перейти в командную строку подсистемы. Для этого следует выполнить команду CLI:
shell
Проверка служб осуществляется с помощью следующих команд:
-
Корректность запущенных служб, связанных с GFS2:
systemctl list-units | grep open_iscsi
systemctl list-units | grep corosync
systemctl list-units | grep dlm
systemctl list-units | grep storage
-
Проверка состояния служб:
systemctl status open-iscsi.service
systemctl status corosync.service
systemctl status dlm.service
systemctl status storage-gfs2-gfs2_<lockspace>.mount
Вывод команды
systemctl status storage-gfs2-gfs2_<lockspace>.mount
при корректно работающей службеstorage-gfs2
В некоторых случаях значение
lockspace
может не совпадать c именем директории точки монтирования.systemctl status sbd.service
Диагностика проблем и выявление инцидентов
Первичная диагностика состояния ФС GFS2 проводится в CLI с помощью команд, описанных в разделе Проверка состояния служб.
Ниже приведены возможные ошибки, причины их возникновения, а также действия, которые необходимо произвести для их исправления.
Возможные ошибки
Сбой в работе DLM, вызванный отсутствием/затиранием файла конфигурации.
-
Обнаружение ошибки:
Зафиксирована ошибка в выводе команды shell:
dmesg -T
-
Причина возникновения ошибки:
Отсутствие данных в файле конфигурации.
-
Исправление:
-
Внести изменение в файл конфигурации
/etc/dlm/dlm.conf
согласно эталону. -
Перезагрузить систему.
-
Сбой при установлении соединения corosync
и отказа на узле.
-
Обнаружение ошибки:
-
Зафиксирована ошибка в статусе
corosync.service
или log-файле/var/log/corosync/corosync.log
. -
Зафиксирована ошибка в выводе команды
journalctl -u corosync
илиjournalctl --no-pager | grep corosync
.
-
-
Диагностика ошибки на узлах:
Информация на всех узлах должна содержать информацию обо всех узлах для корректного функционирования GFS2.
Команда CLI:
node nodes-cli “hosts”
Команда shell:
cat /etc/hosts
-
Причина возникновения ошибки:
Несоответствие файла
hosts
. Отсутствие записей, необходимых для функционирования связи между узлами. -
Исправление:
Внести изменение в файл
/etc/hosts
согласно данным, расположенным на Контроллере.
Сбой при монтировании ФС GFS2 в результате повреждения ФС, вызванного сбоем.
Внимание
При срабатывании ограждения необходимо поочередно произвести размонтирование примонтированных ФС.
Не допускается использование кнопки Размонтировать. В случае ограждения все узлы, на которых была примонтирована ФС, будут немедленно перезагружены.
-
Обнаружение ошибки:
-
Зафиксирована ошибка на любом из узлов в выводе команды CLI:
node node-cli “storage GFS2”
-
-
Исправление:
-
Необходимо остановить или перенести все ВМ и виртуальные диски, расположенные на данном хранилище, если сбой коснулся не всех узлов (не вызван отключением iSCSI-сервера).
-
Поочередно на каждом из узлов:
-
Остановить или перенести все ВМ и виртуальные диски, задействованные на узле на другие совместные пулы данных.
-
Удалить запись монтирования поврежденной ФС из
/etc/fstab
на узле. -
Размонтировать ФС на узле (не допускается использование кнопки Размонтировать).
-
В случае, если ограждение узла не произошло, необходимо произвести перезагрузку.
-
-
После перезагрузки всех узлов необходимо запустить команду для исправления ФС, используя команду shell любого из узлов:
fsck.gfs2 -y <lun_path>
Пример ввода
fsck.gfs2 -y
fsck.gfs2 -y /dev/mapper/3600143801259dcf30000b00000220000
-
После завершения исправления ФС необходимо поочередно примонтировать ФС на узлах, используя кнопки управления, расположенные напротив серверов в разделе основного меню Хранилища - LUNs - <LUN ФС GFS2>.
-
Сбой при монтировании ФС GFS2 в результате сбоя процесса создания кластерного транспорта.
-
Обнаружение ошибки:
Фиксируется ошибка монтирования ФС, вывод
corosync
иdlm
корректные. При создании кластерного транспорта не создалась директория для монтирования ФС. -
Исправление:
Создать директорию для монтирования ФС по пути, указанном в log-файле ошибки
/storage/gfs2/gfs2_<lockspace>
.Путь для директории монтирования может отличаться от
lockspace
.