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

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

В этой статье вы настроите группу томов, чтобы разрешить подключения из подсети. Затем вы настроите клиентную среду для подключения к Elastic SAN-том и установления соединения.

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

Предпосылки

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

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

Например, в Ubuntu используйте sudo apt install open-iscsi. В 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. В SLES используйте sudo zypper install multipath-tools. В 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 3			# To disable I/O queueing after retrying once when all paths are down
    polling_interval 5         # Set path check polling interval to 5 seconds
    find_multipaths yes        # To allow multipath to take control of only those devices that have multiple paths 
}
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 сеанса для каждого целевого тома, чтобы достичь максимальных значений IOPS и пропускной способности.

Вы можете изменить количество сеансов, выполнив скрипт и выполнив следующие инструкции:

Замечание

Используется -n для задания количества сеансов. Параметр принимает значения от 1 до 32, а по умолчанию — 32.

python3 connect_for_documentation.py \ 

--subscription <your-subscription-id>\ 

-g <resource-group>\ 

-e <elastic-san-name>\ 

-v <volume-group-name>\ 

-n volume1 volume2 \ 

-s <value>

Дальнейшие действия

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