Прежде, чем начать свое повествование, хочу выделить основного автора данного решения, Сергея Кляуса и поблагодарить его за содействие в развертывании у заказчика демо-проекта.
А проект заключался в следующем: требовалось создать распределенную структуру систем хранения данных, с учетом возможности разделения на домены, и обеспечить безопасную аутентификацию конечных пользователей. И главное, вместо привычного FC, использовался протокол iSCSI.
При создании статьи возник вопрос, насколько корректно называть такую систему SAN. С приходом iSCSI, понятия SAN и NAS тесно переплелись между собой. В панели урпавления OpenStorage настройки iSCSI указываются именно в разделе SAN, посему позволю себе использовать именно эту аббревиатуру.
В первой статье я предлагаю ознакомиться с iSNS (Internet Storage Name Service).
Определимся с понятиями:
iSCSI инициатор — это клиент, подключающийся к iSCSI таргету (серверу) посредством одного из способов обнаружения: Static, Sendtargets или iSNS.
Static — инициатору явно указывается таргет в виде ip и iqn.
Sendtargets — инициатору указывается ip-адрес таргета, который «отправляет» инициатору все имеющиеся iqn.
iSNS — инициатору указывается ip-адрес iSNS-сервера, который содержит в себе информацию о всех доступных данному инициатору таргетов.
Установка iSNS-сервера.
iSNS сервер разрабатывается в рамках проекта OpenSolaris, поэтому для его развертывания потребуется выделенный сервер с OpenSolaris или SXCE, или виртуальная машина (например VirtualBox). Для установки необходимо использовать IPS:
# pkg install SUNWisns
Для работы с iSNS-сервером можно использовать iSNS GUI, работающий через Java Web Console. К сожалению, Java Web Console не входит в поставку OpenSolaris, а проект SXCE — свернут. Однако ее можно сравнительно легко установить используя дистрибутив Solaris 10:
смонтируйте диск и перейдите в соответствующую директорию:
# mount -F hsfs -o ro /dev/dsk/c7t0d0p0 /mnt
# cd /mnt/Solaris_10/Product/
Затем установите соответствующие пакеты:
# pkgadd -d . SUNWmcon SUNWmconr SUNWmcos SUNWmcosx \
SUNWmctag SUNWjato SUNWjhrt SUNWzfsgu
Запустите веб-консоль:
# svcadm enable webconsole
Также вам может потребоваться установка CACAO. Это к счастью может быть сделано через IPS:
# pkg install SUNWcacaort SUNWcacaowsvr
После этого можно переходить к установке iSNS BUI. Скачать его можно на странице
iSNS BUI по адресу iSNS BUI Download
Настройка iSNS-сервера.
Для настройки iSNS-сервера зайдите на веб-консоль по адресу https://hostname:6789/. Для доступа вам потребуется пользователь, обладающий ролью root и пароль от этой роли. Далее можно воспользоваться удобным BUI или выполнить команды из CLI.

Приведем пример настройки через CLI:
В структуре iSNS используется понятие Discovery Domain Set, схожее по смыслу с привычным пониманием этого понятия в SAN.
Можно использовать стандартный DDS:
# isnsadm enable-dd-set Default
Или же создать свой собственный:
# isnsadm create-dd-set my-set
# isnsadm enable-dd-set my-set
Включаем поддержку iSNS на таргетах:
# iscsitadm modify admin -S enable
# iscsitadm modify admin -s ip-address:3205
Итак, смотрим вывод
#isnsadm list-node
iSCSI Name: iqn.1986-03.com.sun:02:2f5a429e-dac5-cb9e-d83d-c7d7fdc23e4c.x4150-tgt
Alias: x4150-tgt
Type: Target
iSCSI Name: iqn.1986-03.com.sun:01:0003ba603b71.4b727a7d
Alias: sf210
Type: Initiator
Добавим имеющиеся узлы к ранее созданному Discovery Domain:
# isnsadm add-node -d my-domain iqn.1986-03.com.sun:02:2f5a429e-dac5-cb9e-d83d-c7d7fdc23e4c.x4150-tgt
# isnsadm add-node -d my-domain iqn.1986-03.com.sun:01:0003ba603b71.4b727a7d
Включим iSNS Discovery Mode на инициаторе:
#iscsiadm modify discovery -i enable
Все, iSNS успешно функционирует.