Перейти к содержанию

Отладка GFS2

Примечание

Все IP-адреса, подсети, номера VLAN и наименования интерфейсов являются примерами. Необходимо производить настройку в соответствии с инфраструктурой.


Проверка состояния ФС

Проверка состояния ФС GFS2 производится с помощью команд CLI:

Указанные ниже команды можно выполнять групповым запросом, используя команду node nodes-cli <command>.

  • Вывод состояния кластерного транспорта, кворума и службы блокировок.

    Вывод не должен содержать ошибок.

    storage gfs2
    
    Вывод команды storage gfs2

    img

  • Конфигурация службы блокировок DLM:

    storage dlm-conf
    
    Эталонный вывод команды storage dlm-conf

    img

  • Вывод файла hosts для сопоставления узлов с именем узла.

    hosts
    

    На всех узлах, объединенных в Кластерный транспорт, в файле hosts должны быть внесены описания "ip имя узла” всех задействованных узлов Кластерного транспорта как трафика управления , так и трафика данных.

  • Вывод информации о подключенных и доступных LUNs:

    storage multipath
    
  • Вывод доступных FC LUNs:

    storage fc-luns  
    
  • Сканирование доступных ФС и блочных хранилищ:

    storage discovery
    

Проверка состояния служб

Для проверки состояния служб, связанных с работой GFS2, необходимо перейти в командную строку подсистемы. Для этого следует выполнить команду CLI:

shell

Проверка служб осуществляется с помощью следующих команд:

systemctl status corosync.service
Вывод команды systemctl status corosync.service при корректно работающей службе corosync

img

systemctl status dlm.service
Вывод команды systemctl status dlm.service при корректно работающей службе dlm

img

systemctl status storage-gfs2-gfs2_<lockspace>.mount
Вывод команды systemctl status storage-gfs2-gfs2_<lockspace>.mount при корректно смонтированном LUN

img

Каждому примонтированному LUN соответствует одна служба. Для проверки всех LUNs необходимо последовательно выполнять указанную команду, поочередно указывая <lockspace> примонтированных LUNs.

В некоторых случаях значение lockspace может не совпадать c именем директории точки монтирования.

systemctl status sbd.service
Вывод команды systemctl status sbd.service при корректно работающей службе sbd

img


Диагностика проблем и выявление инцидентов

Первичная диагностика состояния ФС GFS2 проводится в CLI с помощью команд, описанных в разделе Проверка состояния служб.

Ниже приведены возможные ошибки, причины их возникновения, а также действия, которые необходимо произвести для их исправления.


Возможные ошибки

Сбой в работе DLM, вызванный отсутствием/затиранием файла конфигурации.

  • Обнаружение ошибки:

    Зафиксирована ошибка в выводе команды shell:

    dmesg -T
    
    Вывод команды dmesg -T

    img

  • Причина возникновения ошибки:

    Отсутствие данных в файле конфигурации.

    Просмотр файла конфигурации

    img

  • Исправление:

    • Внести изменение в файл конфигурации /etc/dlm/dlm.conf согласно эталону.

      Эталонный вариант корректного файла конфигурации

      img

    • Перезагрузить систему.


Сбой при установлении соединения corosync и отказа на узле.

  • Обнаружение ошибки:

    • Зафиксирована ошибка в статусе corosync.service или log-файле /var/log/corosync/corosync.log.

      Вывод команды systemctl status corosync.service

      img

    • Зафиксирована ошибка в выводе команды journalctl -u corosync или journalctl --no-pager | grep corosync.

      Вывод команды journalctl -u corosync

      img

  • Диагностика ошибки на узлах:

    Информация на всех узлах должна содержать информацию обо всех узлах для корректного функционирования GFS2.

    Команда CLI:

    node nodes-cli “hosts”
    
  • Причина возникновения ошибки:

    Несоответствие файла hosts. Отсутствие записей, необходимых для функционирования связи между узлами.

  • Исправление:

    Внести изменение в файл /etc/hosts согласно данным, расположенным на Контроллере. Для этого следует:

    • Перейти в shell:

      shell
      
    • Открыть на редактирование файл /etc/hosts:

      nano /etc/hosts
      
    • Внести изменения.


Сбой при монтировании ФС GFS2 в результате повреждения ФС, вызванного сбоем.

Внимание

При срабатывании ограждения необходимо поочередно произвести размонтирование примонтированных ФС.

Не допускается использование кнопки Размонтировать. В случае ограждения все узлы, на которых была примонтирована ФС, будут немедленно перезагружены.

  • Обнаружение ошибки:

    • Зафиксирована ошибка на любом из узлов в выводе команды CLI:

      node node-cli “storage GFS2”
      
      Вывод команды node node-cli “storage GFS2”

      img

  • Исправление:

    • Необходимо остановить или перенести все ВМ и виртуальные диски, расположенные на данном хранилище, если сбой коснулся не всех узлов.

    • Поочередно на каждом из узлов:

      • Остановить или перенести все ВМ и виртуальные диски, задействованные на узле на другие совместные пулы данных.

      • Удалить запись монтирования поврежденной ФС из /etc/fstab на узле.

      • Размонтировать ФС на узле (не допускается использование кнопки Размонтировать).

      • В случае, если ограждение узла не произошло, необходимо произвести перезагрузку.

    • После перезагрузки всех узлов необходимо запустить команду для исправления ФС, используя команду shell любого из узлов:

      fsck.gfs2 -y <lun_path>
      
      Пример ввода fsck.gfs2 -y
      fsck.gfs2 -y /dev/mapper/3600143801259dcf30000b00000220000
      
    • После завершения исправления ФС необходимо поочередно примонтировать ФС на узлах, используя кнопки управления, расположенные напротив серверов в разделе основного меню Хранилища - LUNs - <LUN ФС GFS2>.