Подключение тома Elastic SAN — Linux

В этой статье объясняется, как подключиться к тому эластичной зоны хранения (SAN) из отдельного клиента Linux. Дополнительные сведения о подключении из клиента Windows см. в разделе Подключение тома Elastic SAN — Windows.

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

При подключении отдельного эластичного тома SAN к нескольким клиентам необходимо использовать диспетчер кластеров. Дополнительные сведения см. в статье "Использование кластеризованных приложений в Azure Elastic SAN".

Необходимые компоненты

Подключение томам

Настройка клиентской среды

Включение инициатора iSCSI

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

Например, при использовании sudo apt install open-iscsiUbuntu с 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 сеанса для каждого целевого тома, чтобы обеспечить максимальное количество операций ввода-вывода в секунду и /или пропускной способности.

Следующие шаги

Настройка сети Elastic SAN