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

Вот все, что вам нужно знать о многопутевости в Linux.

Идентификаторы многопутевых устройств на серверах

Для многопутевого также необходимо просмотреть устройства с многопутевым распространением. Если вы когда-нибудь слышали о WWID (Всемирный идентификатор) концепция раньше, она не покажется вам слишком чуждой.

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

instagram viewer

Например, вы можете думать об этом так. Представьте, что к вашему серверу подключены устройства хранения, такие как:

  • /dev/sda
  • /dev/sdb
  • /dev/sdc
  • /dev/sdd

Если user_friendly_names в этот момент установлено значение «да», имена устройств изменятся.

кошка /etc/multipath.conf

# Выход
значения по умолчанию {
user_friendly_names да
}

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

После того, как вы установите user_friendly_names возможность да в файле конфигурации вы можете проверить имя устройства следующим образом:

судо фдиск -л

Процедура согласования имен многопутевых устройств

Имя, присвоенное многопутевым устройствам с помощью этой процедуры, будет уникальным для узла. Нельзя утверждать, что это применимо ко всем узлам. Если вы хотите, чтобы на всех узлах были согласованные многопутевые устройства, установите user_friendly_names вариант "нет". Таким образом вы уменьшите любые проблемы, поскольку устройства больше не будут иметь уникальное прозвище и вместо этого будут использовать WWID.

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

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

судоsystemctlостановкамногопутевые инструменты.оказание услуг
sudo многопутевой -F

С помощью этих команд вы, соответственно, остановите службу multipath и очистите все карты multipath-устройств. Теперь станьте пользователем root и скопируйте привязки файл, расположенный в /etc/multipath каталог на другие машины.

На этом этапе вы будете использовать демон-процессы Linux. После всех этих действий необходимо запустить многолучевость снова демон:

судоsystemctlНачаломногопутевые инструменты.оказание услуг

Обзор общих характеристик устройств Multipath

Возможности устройств Multipath и параметры конфигурации не ограничиваются user_friendly_names. Ниже вы найдете информацию о некоторых других конфигурациях, которые вы можете сделать в /etc/mutipath.conf файл:

  • черный список { }: Если вы хотите указать, какие устройства следует исключить из multipath, вы можете указать их имена между двумя фигурными скобками.
    черный список {
    devnode "^ сда"
    }
  • устройства { }: Между этими двумя фигурными скобками можно поставить некоторые реквизиты для конкретных устройств.
    устройства {
    продавец "ДЕЛЛ"
    товар "MD32xx"
    }
  • многолучевое { }: В этом поле вы можете установить атрибуты конкретных многолучевых устройств. Как и другие атрибуты, многолучевое распространение также имеет множество различных податрибутов.
    многолучевое {
    wwid 3500405b170164c3911244b325426400b
    псевдоним желтый
    руководство по восстановлению после сбоя
    }
  • черный список_исключений {}: Это поле предназначено для устройств, которые находятся в черном списке, но вы хотите, чтобы для них был включен многопутевой доступ. Вместо того, чтобы заносить в черный список все устройства по одному, вы можете занести их все в черный список и указать в этом поле те, которые вы хотите использовать позже.
    черный список_исключений {
    wwid "3500405b170164c3911244b325426400b"
    }

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

значения по умолчанию {
user_friendly_names нет
}
черный список {
devnode "^ сда"
}
черный список_исключений {
devnode "sda|sdb"
устройство {
продавец "ДЕЛЛ"
товар "MD32xx"
}
}
устройства {
устройство {
продавец "HP"
товар "А6189А"
}
}
многолучевость {
многолучевое {
wwid 3500405b170164c3911244b325426400b
псевдоним красный
}
}

Логика в многопутевых устройствах

Вы можете думать о многопутевых устройствах как о физических единицах. Например, пусть /dev/mapper/mpatha быть именем многопутевого устройства. Это устройство будет действовать как физическое устройство. Когда вы создаете LVM (Управление логическими томами), вам также потребуется отредактировать /etc/lvm.conf файл.

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

Чтобы этого не произошло, можно проделать следующие манипуляции на /etc/lvm.conf файл:

фильтр = [ "петля.*/", "р/.*/" ]

Эта команда добавит петли и удалит все устройства. Однако на этом процесс не заканчивается. После внесения этого изменения в /etc/lvm.conf, сохраните файл и также обновите initrd. initrd позволяет выполнять некоторые манипуляции с RAM-диском. Причина, по которой вы вносите изменения здесь, заключается в том, чтобы копировать их во время загрузки.

Обновить-инитрамфс -у -к все

Каждый раз, когда lvm.conf а также multipath.conf файлы обновлены, необходимо выполнить это обновление на initramfs. Так вы получите стабильный и надежный сервер. Также не стоит забывать об обновлении initramfs, особенно если вы внесли изменения в атрибуты черного списка и фильтра.

Важность многолучевой системы

В средах с несколькими путями серверы могут продолжать обращаться к дискам, даже если один из используемых ими компонентов (HBA, SAN, контроллер хранилища) выходит из строя. Это представляет особый интерес для системных и серверных администраторов.

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

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

Если у вас нет сервера для тестирования всего этого, установка Ubuntu Server является оптимальным выбором и довольно проста.