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

Тип монтирования LUN GFS2

Общие сведения

Начиная с версии SpaceVM 6.5.4, изменен основной тип монтирования LUN с файловой системой GFS2. Он предусматривает новое поведение узла при возникновении угрозы повреждения файловой системы, включая автоматическое ограждение проблемного узла.

Примерами таких угроз являются:

  • Аварийное отключение внешней СХД от узла.

  • Переполнение пула данных.

Примечание

Изменение не связано с механизмом ограждения узлов при потере кворума кластерного транспорта, который предотвращает появление двух независимых кластеров (split-brain), способных одновременно повреждать файловую систему несогласованными операциями записи.

В версиях SpaceVM 6.5.3 и ниже тип монтирования по умолчанию не предусматривал обязательное ограждение узлов.


Возможности

Добавлена возможность выбора типа монтирования при создании пула данных или в меню управления LUN при попытке монтирования ко всем узлам.

Добавлен новый параметр Режим отладки. Если этот режим не включен, то будет использоваться основной режим монтирования, включающий механизм автоматического ограждения узла при угрозе повреждения файловой системы.

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

  • Повреждение файловой системы при аварийном отключении внешней СХД.

    При использовании протоколов iSCSI или FC после аварийного отключения СХД от одного узла, он перейдет в форсированный режим перезагрузки. После восстановления он сможет снова подключить СХД и использовать файловую систему GFS2 без необходимости останавливать весь пул данных GFS2 на всех узлах. Нет необходимости выполнять команду fsck для восстановления файловой системы, требующую отмонтирования LUN от всех узлов.

  • Некорректная работа пула данных GFS2 на всех узлах при аварийном отсоединении внешней СХД.

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

  • Отсутствие кворума и задержки подключения LUN к узлам кластера после восстановления.

    Механизм принудительного ограждения узла ускоряет процесс восстановления проблемных узлов кластера, обеспечивая тем самым эффективную поддержку кворума кластера и доступ ко всем LUN со стороны каждого узла.

  • Повреждение файловой системы с риском утраты данных при ее переполнении.

    Хотя логика SpaceVM защищает файловую систему от переполнения, такие ситуации все же возможны, например, при быстром и неконтролируемом увеличении размеров нескольких динамически расширяющихся образов дисков ВМ. При активации режима автоматического ограждения узел, с которого осуществляется операция записи в файл, приводящая к переполнению, будет перезагружен для предотвращения повреждения файловой системы.

Поскольку режим с включенным ограждением реагирует на потерю связи с СХД, активация типа связности KERNEL_STORAGE в кластере GFS2 не рекомендуется. Данный режим не требует использования дополнительных методов ограждения, реализованных логикой контроллера SpaceVM. Рекомендуется использовать режим ограждения VIRTUAL, при котором контроллер SpaceVM лишь логически отмечает проблемный узел как огражденный, но не предпринимает попытки его отключения или перезагрузки.

Внимание

Использование режима отладки в производственных системах не рекомендуется. Этот режим предназначен исключительно для использования на тестовых стендах, где допустимо возникновение повреждений файловой системы вследствие различных сбоев, и требуется минимизировать количество перезагрузок узлов.

Также не рекомендуется применять смешанные режимы монтирования в производственных средах, поскольку включение режима отладки даже на одном из LUN может привести к некорректной реакции на сбои, что может вызвать повреждения файловой системы.


Настройка существующих пулов данных GFS2 в режим ограждения узла при угрозах повреждения файловых систем

После обновления существующие LUN с файловой системой GFS2 не будут автоматически перемонтированы в новом режиме. Для этого потребуется выполнить дополнительную операцию.

Данная операция не требует остановки ВМ, работающих в данном кластере. Она выполняется отдельно на каждом узле для каждого LUN. Перед перемонтированием LUN в новый режим необходимо предварительно перенести все ВМ на другие узлы. На текущем узле не должны оставаться процессы, использующие LUN, который требуется перемонтировать. Это касается различных задач, таких как копирование и загрузка файлов.

Внимание

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

  1. Перейти в раздел Пулы данных.

  2. Открыть выбранный пул данных GFS2.

  3. Записать значения в строках:

    • Путь.

      Например, /storages/gfs2/gfs2_9a090f93/gfs2_pool.

    • Устройство.

      Например, /dev/mapper/3600140529c1ef200d934702af9b202c9.

  4. Перейти в терминал узла с GFS2.

  5. Выполнить команду:

    mount
    

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

    Пример записи
    /dev/mapper/3600140529c1ef200d934702af9b202c9 on /storages/gfs2/gfs2_9a090f93 type gfs2 (rw,noatime,nodiratime,debug,x-systemd.automount,_netdev)
    

    Необходимо обратить внимание, что в списке опций указан debug. Этот режим монтирования небезопасен в кластерах GFS2, рекомендуется к использованию только в непроизводственных системах.

  6. Выполнить команду для перемонтирования LUN с опцией errors=panic и путем без последней директории:

    storage gfs2-mount-debug -p /storages/gfs2/gfs2_9a090f93
    
  7. После выполнения команды необходимо повторно выполнить команду mount и убедиться, что запись изменилась следующим образом:

    /dev/mapper/3600140529c1ef200d934702af9b202c9 on /storages/gfs2/gfs2_9a090f93 type gfs2 (rw,noatime,nodiratime,errors=panic,x-systemd.automount,_netdev)
    

    Необходимо убедиться, что опция debug заменена на errors=panic.

Рекомендации по безопасности

Данные шаги необходимо выполнять на всех узлах кластера. Перед началом работ необходимо перенести все ВМ на другие узлы, чтобы избежать возможных сбоев.

Операция возможна и на версиях SpaceVM 6.5.3 и ниже. Все возможности режима с ограждением будут функционировать, однако они не будут отражены в Web-интерфейсе.