Подключение iSCSI диска в Proxmox

 

Подключение iSCSI диска в Proxmox

В этой статье будет рассмотрено, как выполняется подключение iSCSI диска в Proxmox. Потому что в некоторых сценариях использования iSCSI диска необходимо выполнить дополнительные настройки, которые могут быть далеко не очевидны на первый взгляд. Если вы используете подключенный iSCSI диски напрямую для размещения виртуальных машин, то проблем даже при стандартных настройках подключения у вас возникнуть не должно. Но если вы, например, попытаетесь настроить LVM, то могут возникнуть некоторые сложности (если у вас есть более одного пути до сервера iSCSI). По крайней мере при использовании настроек по умолчанию. Подробности будут приведены ниже.

Описание окружения

Общая схема приведена ниже.

 

В качестве iSCSI таргета выступает Windows Server 2019, у которого собран RAID5 из трех дисков. В данной тестовой среде RAID5 программный, но при использовании аппаратного RAID5 алгоритм подключения iSCSI диска не изменится.

Версия Proxmox – 7.3-6.

Подключение iSCSI диска

Самый первый шаг – это подключение с сервера Proxmox к порталу iSCSI. В рассматриваемом случае это сервер с Windows Server. Если планировалось использовать iSCSI диск напрямую для размещения виртуальных машин, то это единственный шаг, который нужно выполнить (при условии, что указана опция “Use LUNs directly”). Подробности ниже.

Если нужно узнать IQN iSCSI инициатора Proxmox для настройки ограничения на iSCSI таргете, то выполните вот эту команду на сервере Proxmox:

cat /etc/iscsi/initiatorname.iscsi | grep InitiatorName=

InitiatorName=iqn.1993-08.org.debian:01:4ec2deb75a9

Итого, чтобы выполнить подключение iSCSI диска в Proxmox нужно сделать следующее:

1. Перейти в веб интерфейс администрирования Proxmox.

2. Перейти в раздел “Datacenter – Storage”.

3. Нажать кнопку для запуска настройки подключения к iSCSI таргету.

 

4. Укажите параметры подключения к порталу iSCSI.

 

В таблице ниже приведено краткое описание основных параметров подключения.

Параметр

Описание

ID

Имя подключения. Именно это имя будет отображаться для настроенного подключения в веб интерфейсе администрирования Proxmox

Portal

Адрес сервера (таргета) iSCSI

Target

Имя таргета. Генерируется автоматически, если сервер Proxmox смог успешно подключиться к порталу iSCSI. Если на сервере iSCSI доступно несколько таргетов для Proxmox, то вы увидите список из нескольких позиций

Nodes

Для каких узлов Proxmox выполнить подключение диска. Узел в данном случае только один

Enable

Указывает включено ли подключение или нет

Use LUNs directly

Если эта опция установлена, то диски виртуальных машин будут размещаться непосредственно на iSCSI. Однако, вы не сможете настроить, например, LVM в такой конфигурации. Я не буду указывать эту опцию.

5. Нажмите кнопку “Add”.

6. После успешного подключения iSCSI диск должен отобразиться в списки всех доступных хранилищ.

 

Если вы не планировали использовать LVM и будите размещать ВМ непосредственно на iSCSI диске (указали опцию “Use LUNs directly”), то для вас настройка подключения завершена. Если вы планировали настройку LVM на подключенном iSCSI диске и до сервера iSCSI у вас есть более одного пути, то нужно выполнить настройку multipath.

Настройка multipath

Если вы прямо сейчас попробуете выполнить настройку LVM на подключенном iSCSI диске, то вы можете получить примерно такую ошибку:

 

create storage failed: vgcreate vg01 /dev/disk/by-id/scsi-360003ff44dc75adc839073953a451b73 error: Cannot use device /dev/sdc with duplicates. (500)

Почему? Потому что до сервера iSCSI вы можете добраться более, чем по одному пути – по адресу 10.10.9.1 и 10.10.10.46. Если у вас всего один путь до сервера iSCSI, то, вероятно, вы такой ошибки не увидите.

Например, посмотрим какие есть блочные устройства:

lsblk

root@px01:~# lsblk

NAME   MAJ:MIN RM   SIZE RO T YPE MOUNTPOINT 

sda      8:0    0   600G  0 disk

├─sda1   8:1    0  1007K  0 part

├─sda2   8:2    0   512M  0 part

└─sda3   8:3    0 599.5G  0 part

sdb      8:16   0   600G  0 disk

├─sdb1   8:17   0  1007K  0 part

├─sdb2   8:18   0   512M  0 part

└─sdb3   8:19   0 599.5G  0 part

sdc      8:32   0   200G  0 disk

sdd      8:48   0   200G  0 disk

sr0     11:0    1 994.2M  0 rom 

 

Хоть в данном случае и был подключен только один iSCSI диск на 200 ГБ, но при просмотре видно, что диска отображается два. Так работает multipath. И эту ситуацию нужно корректно обработать.

Теперь предстоит выполнить настройку multipath, основываясь на руководстве от вендора:

1. Сначала изменим параметры настройки подключений в файле /etc/iscsi/iscsid.conf:

nano /etc/iscsi/iscsid.conf

Укажем следующие параметры:

node.startup = automatic

node.session.timeo.replacement_timeout = 15

2. Установим необходимы пакеты для multipath:

apt-get update

apt-get install multipath-tools

3. Определим wwid для блочных устройств (/dev/sdc и /dev/sdd) – он должен совпадать:

/lib/udev/scsi_id -g -u -d /dev/sdc

/lib/udev/scsi_id -g -u -d /dev/sdd

root@px01:~# /lib/udev/scsi_id -g -u -d /dev/sdc

360003ff44dc75adc839073953a451b73

root@px01:~# /lib/udev/scsi_id -g -u -d /dev/sdd

360003ff44dc75adc839073953a451b73

4. Создадим конфигурационный файл для multipath:

touch /etc/multipath.conf

5. В конфигурационном файле /etc/multipath.conf добавим диски:

blacklist {

        wwid .*

}

 

 

 

blacklist_exceptions {

        wwid "360003ff44dc75adc839073953a451b73"

}

т.е. multipath мы запрещаем для всех дисков, кроме дисков с указанным в секции blacklist_exceptions wwid.

6. Также в конфигурационном файле /etc/multipath.conf добавим секцию с указанием параметров по умолчанию для подключений:

defaults {

        polling_interval        2

        path_selector           "round-robin 0"

        path_grouping_policy    multibus

        uid_attribute           ID_SERIAL

        rr_min_io               100

        failback                immediate

        no_path_retry           queue

        user_friendly_names     yes

}

7. Затем добавим wwid в файл /etc/multipath/wwids:

multipath -a 360003ff44dc75adc839073953a451b73

root@px01:~# multipath -a 360003ff44dc75adc839073953a451b73

wwid '360003ff44dc75adc839073953a451b73' added

root@px01:~#

 

8. В заключении перезапускаем службу multipath-tools:

systemctl restart multipath-tools.service

Проверка подключения диска

Вот теперь можно попробовать выполнить настройку LVM, но предварительно проверив, что конфигурация multipath работает корректно:

multipath -ll

root@px01:~# multipath -ll

mpatha (360003ff44dc75adc839073953a451b73) dm-0 MSFT,Virtual HD

size=200G features='1 queue_if_no_path' hwhandler='0' wp=rw

`-+- policy='round-robin 0' prio=1 status=active

  |- 33:0:0:0 sdc 8:32 active ready running

  `- 34:0:0:0 sdd 8:48 active ready running

root@px01:~#

 

И вот только теперь можно попробовать выполнить повторную настройку LVM.

 

После настройку multipath настройка LVM завершается успешно:

 

 

 

 

Источник.

Метаданные статьи

Идентификатор статьи:
16
Категория:
Дата добавления:
2024-02-29 19:59:04
Просмотры:
748
Рейтинг (Голоса):
(0)

Связанные статьи