Монтирование целевых объектов iSCSI с 2 разных целевых серверов iSCSI в Ubuntu

У меня есть два целевых сервера iSCSI. Инициатор iSCSI является хостом Ubuntu (Ubuntu 14.04). Я использую open-iscsi Ubuntu для монтирования целей iSCSI с обоих серверов назначения iSCSI в мой инициатор.

Проблема в том, что символические ссылки в /dev/disk/by-id "перезаписаны".

Когда я выполняю обнаружение iscsiadm и команду iscsiadm -m node -l для первого целевого сервера iSCSI, целевые объекты монтируются, и в /dev/disk/by-id есть символические ссылки.

Например, выполнение ls -l /dev/disk/by-id после входа на первый целевой сервер iSCSI может показать следующее:

scsi-3600000e00010001 -> ../../sdc
scsi-3600000e00010002 -> ../../sdd
scsi-3600000e00010003 -> ../../sde
wwn-0x60000e00010001 -> ../../sdc
wwn-0x60000e00010002 -> ../../sdd
wwn-0x60000e00010003 -> ../../sde

После обнаружения и входа на второй целевой сервер iSCSI (без выхода с целевого сервера iSCSI) выполнение ls -l /dev/disk/by-id показывает что-то вроде этого:

scsi-3600000e00010001 -> ../../sdaa
scsi-3600000e00010002 -> ../../sdab
scsi-3600000e00010003 -> ../../sdac
wwn-0x60000e00010001 -> ../../sdaa
wwn-0x60000e00010002 -> ../../sdab
wwn-0x60000e00010003 -> ../../sdac

1) Я проверил, что все цели iSCSI смонтированы на инициаторе Ubuntu, введя команду fdisk -l. Все цели iSCSI смонтированы.

2) Но теперь символические ссылки указывают на цели со 2-го сервера. Похоже, что символические ссылки на цели с 1-го сервера были перезаписаны символическими ссылками на 2-й сервер.

Возможно ли, чтобы все цели iSCSI с обоих целевых серверов iSCSI имели отдельные символические ссылки и были перечислены в /dev/disk/by-id?

Я не эксперт по iSCSI, поэтому я решил спросить. Я гуглил эту проблему и искал соответствующие теги здесь, но я не нашел ответов. Может я что то не правильно настраиваю?

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

2 ответа

Решение

Я нашел ответ на это.

Для целей iSCSI, которые находятся в Ubuntu, вы должны отредактировать файл конфигурации цели по адресу: /etc/tgt/conf.d/1.conf

В файле 1.conf информация о конфигурации хранится в формате HTML.

Для каждой цели iSCSI необходимо указать значение "scsi_id" для каждой цели iSCSI.

До:

`<`target iqn.2001-04.com.hostname-tgt-1`>`
    direct-store /dev/disk/by-id/wwn-0x500258aaa
    direct-store /dev/disk/by-id/wwn-0x500258aab
    direct-store /dev/disk/by-id/wwn-0x500258aac
    direct-store /dev/disk/by-id/wwn-0x500258aad
    initiator-address 10.10.10.21
    initiator-address 10.10.10.22
    initiator-address 10.10.10.23
    initiator-address 10.10.10.24        
    initiator-address 10.10.10.25
    initiator-address 10.10.10.26
`<`/target`>`

После:

`<`target iqn.2001-04.com.hostname-tgt-1:target-001`>`
    scsi_id 500258aaa
    direct-store /dev/disk/by-id/wwn-0x500258aaa
    initiator-address 10.10.10.21
    initiator-address 10.10.10.22
    initiator-address 10.10.10.23
    initiator-address 10.10.10.24        
    initiator-address 10.10.10.25
    initiator-address 10.10.10.26
`<`/target`>`

`<`target iqn.2001-04.com.hostname-tgt-1:target-002`>`
    scsi_id 500258aab
    direct-store /dev/disk/by-id/wwn-0x500258aab
    initiator-address 10.10.10.21
    initiator-address 10.10.10.22
    initiator-address 10.10.10.23
    initiator-address 10.10.10.24        
    initiator-address 10.10.10.25
    initiator-address 10.10.10.26
`<`/target`>`

`<`target iqn.2001-04.com.hostname-tgt-1:target-003`>`
    scsi_id 500258aac
    direct-store /dev/disk/by-id/wwn-0x500258aac
    initiator-address 10.10.10.21
    initiator-address 10.10.10.22
    initiator-address 10.10.10.23
    initiator-address 10.10.10.24        
    initiator-address 10.10.10.25
    initiator-address 10.10.10.26
`<`/target`>`

`<`target iqn.2001-04.com.hostname-tgt-1:target-004`>`
    scsi_id 500258aad
    direct-store /dev/disk/by-id/wwn-0x500258aad
    initiator-address 10.10.10.21
    initiator-address 10.10.10.22
    initiator-address 10.10.10.23
    initiator-address 10.10.10.24        
    initiator-address 10.10.10.25
    initiator-address 10.10.10.26
`<`/target`>`

Когда вы монтируете цели iSCSI с обоих серверов iSCSI, символические ссылки в /dev/disk/by-id будут уникальными для каждой цели iSCSI.

ПРИМЕЧАНИЕ. Я использовал обратные черты ("`") перед символами <или>, поскольку редактор этого веб-сайта отображал их некорректно. Не используйте метки при редактировании файла 1.tgt.

Вам необходимо указать VPD (Vital Product Data) для ваших целевых LUN iSCSI. Это включает в себя указание идентификаторов производителя и серийных номеров для каждого добавляемого LUN и полностью контролируется на целевой стороне.

Однако вы не указали, какой сервер вы используете, и этот процесс сильно отличается от целевого сервера к серверу. Если вы дадите мне знать, какой у вас целевой сервер, я могу обновить его, чтобы он был более конкретным. В противном случае, это довольно общая рекомендация.

Другие вопросы по тегам