Подключение тома Elastic SAN — Linux
В этой статье объясняется, как подключиться к тому эластичной зоны хранения (SAN) из отдельного клиента Linux. Дополнительные сведения о подключении из клиента Windows см. в разделе Подключение тома Elastic SAN — Windows.
В этой статье вы добавите конечную точку службы служба хранилища в подсеть виртуальной сети Azure, а затем настройте группу томов, чтобы разрешить подключения из подсети. Наконец, вы настроите клиентскую среду, чтобы подключиться к тому Elastic SAN и установить подключение.
При подключении отдельного эластичного тома SAN к нескольким клиентам необходимо использовать диспетчер кластеров. Дополнительные сведения см. в статье "Использование кластеризованных приложений в Azure Elastic SAN".
Необходимые компоненты
- Используйте последнюю версию Azure CLI или установите последний модуль Azure PowerShell
- Развертывание эластичной сети SAN
- Настройка конечной точки виртуальной сети
- Настройка правил виртуальной сети
Подключение томам
Настройка клиентской среды
Включение инициатора iSCSI
Чтобы создать подключения iSCSI из клиента Linux, установите пакет инициатора iSCSI. Точное выполнение команды может отличаться в зависимости от дистрибутива, и при необходимости обратитесь к своей документации.
Например, при использовании sudo apt install open-iscsi
Ubuntu с SUSE Linux Enterprise Server (SLES) вы будете использовать sudo zypper install open-iscsi
и с Red Hat Enterprise Linux (RHEL).sudo yum install iscsi-initiator-utils
Установка многопатокового ввода-вывода
Чтобы достичь большего количества операций ввода-вывода в секунду и пропускной способности тома и достичь его максимальных ограничений, необходимо создать несколько сеансов от инициатора iSCSI до целевого тома на основе многопоточных возможностей и требований к производительности приложения. Для объединения этих нескольких путей на одном устройстве требуется многопаточное ввод-вывод, а также для повышения производительности путем оптимального распределения операций ввода-вывода по всем доступным путям на основе политики балансировки нагрузки.
Установите пакет многопатокового ввода-вывода для дистрибутива Linux. Установка будет отличаться в зависимости от дистрибутива, и вы должны ознакомиться с их документацией. Например, в Ubuntu команда будет sudo apt install multipath-tools
иметь значение sudo zypper install multipath-tools
SLES, и для RHEL команда будет выполняться sudo yum install device-mapper-multipath
.
После установки пакета проверка, если существует /etc/multipath.conf. Если параметр /etc/multipath.conf не существует, создайте пустой файл и используйте параметры в следующем примере для общей конфигурации. Например, mpathconf --enable
будет создано /etc/multipath.conf в RHEL.
Вам потребуется внести некоторые изменения в /etc/multipath.conf. Вам потребуется добавить раздел устройств в следующем примере, а раздел по умолчанию в следующем примере задает некоторые значения по умолчанию, как правило, применимы. Если вам нужно сделать какие-либо другие конкретные конфигурации, например исключить тома из топологии multipath, см. страницу вручную для multipath.conf.
defaults {
user_friendly_names yes # To create ‘mpathn’ names for multipath devices
path_grouping_policy multibus # To place all the paths in one priority group
path_selector "round-robin 0" # To use round robin algorithm to determine path for next I/O operation
failback immediate # For immediate failback to highest priority path group with active paths
no_path_retry 1 # To disable I/O queueing after retrying once when all paths are down
}
devices {
device {
vendor "MSFT"
product "Virtual HD"
}
}
После создания или изменения файла перезапустите операции ввода-вывода Multipath. В Ubuntu команда находится sudo systemctl restart multipath-tools.service
в RHEL и SLES sudo systemctl restart multipathd
.
Присоединение томов к клиенту
Для создания подключений можно использовать следующий скрипт. Для его выполнения потребуется следующее:
- подписка: идентификатор подписки
- g: имя группы ресурсов
- e: эластичное имя SAN
- v: имя группы томов
- n <vol1, vol2, ...>: Имена томов 1 и 2 и других имен томов, которые могут потребоваться, разделенные запятыми
- s: число сеансов для каждого тома (по умолчанию — 32)
Скопируйте скрипт из этого файла и сохраните его в виде файла .py, например connect.py. Затем выполните его с необходимыми параметрами. Ниже приведен пример запуска скрипта.
./connect.py --subscription <subid> -g <rgname> -e <esanname> -v <vgname> -n <vol1, vol2> -s 32
Можно проверить количество сеансов с помощью sudo multipath -ll
Количество сеансов
Необходимо использовать 32 сеанса для каждого целевого тома, чтобы обеспечить максимальное количество операций ввода-вывода в секунду и /или пропускной способности.