Настройка службы iSCSI на сервере FreeBSD |
[исправить] |
Q. Как я могу установить и настроить службу iSCSI на сервере FreeBSD ?
A. FreeBSD 7.x полностью поддерживает iSCSI. Старые версии, такие как FreeBSD
6.3 требуют обратного
портирования для поддержки iSCSI. Следущие инструкции приведены для настройки
iSCSI только под FreeBSD 7.0.
FreeBSD iscsi_initiator driver
iscsi_initiator в ядре FreeBSD реализует страндарт сетевого протокола Internet SCSI (iSCSI),
взаимодействует с пользовательским окружением iscontrol и обеспечивает доступ к
удаленным виртуальным SCSI устройствам.
Компилирование драйвера
обратите внимание на то, что FreeBSD 7.x поставляется с уже скомпилированным драйвером.
Вы можете пропустить этот шаг, если драйвер /boot/kernel/iscsi_initiator.ko
уже присутствует в вашей системе.
Для компиляции ядра с драйвером, выполните следущее:
# cd /usr/src/sys/i386/conf
# cp GENERIC ISCSIKERNEL
# vi ISCSIKERNEL
Вставьте строку:
device iscsi_initiator
Сохраните и закройте файл конфигурации. Соберите ядро:
# cd /usr/src
# make buildkernel KERNCONF=ISCSIKERNEL
Установите ядро:
# make installkernel KERNCONF=ISCSIKERNEL
Перезагрузите систему:
# reboot
Установка драйвера iSCSI в FreeBSD
Нам необходим драйвер ядра FreeBSD для протокола iSCSI, который называется /boot/kernel/iscsi_initiator.ko.
Загрузите его можно с правами пользователя root следующей командой:
# kldload -v iscsi_initiator.ko
Вывод:
Loaded iscsi_initiator.ko, id=6
Для загрузки драйвера во время начальной загрузки, поместите слудующую строку в /boot/loader.conf:
# vi /boot/loader.conf
# Beginning of the iSCSI block added by Vivek
iscsi_initiator_load="YES"
# End of the block added by Vivek
Сохраните и закройте файл.
Команда iscontrol для подключения, предоставления и контроля сессии iSCSI initiator.
Теперь нам необходимо использовать команду iscontrol. Сперва просмотрим сессии:
# iscontrol -d targetaddress=iSCSI-SERVER-IP-ADDRESS initiatorname=nxl
# iscontrol -v -d targetaddress=192.168.1.100 initiatorname=nxl
Пожалуйста, запишите список доступных targetnames/targetadresses. Как только
будет известно targetname,
отредактируйте файл /etc/iscsi.conf:
# vi /etc/iscsi.conf
Укажите директивы подобным образом:
officeiscsi {
authmethod = CHAP
chapIName = YOUR-ISCSI-USERNAME
chapSecret = YOUR-ISCSI-PASSWORD
initiatorname = nxl
TargetName = iqn.XYZZZZZZZZZZZZZ # whatever "iscontrol -v -d " gives you
TargetAddress = 192.168.1.100:3260,1 # your iscsi server IP
}
Сохраните и закройте файл.
Где:
officeiscsi { : Начало конфигурации iSCSI.
authmethod : Установить в качестве метода аутентификации chap
chapIName : Имя
chapSecret : Пароль
initiatorname : Если не указано другое, то iqn.2005-01.il.ac.huji.cs:<hostname>
TargetName : Имя, под которым будет изветен target. Не путайте его с target address,
который назначается администратором или через поиск устройств.
TargetAddress : Имеет вид domainname[:port][,portal-group-tag] согласно RFC:
domainname может быть определен как имя DNS, адрес IPv4 в десятичном представлении
или IPv6 адрес, как указано в [RFC2732].
} : Конец конфигурации
Старт сессии iSCSI
Следущие команды читают опции из /etc/iscsi.conf, используя targetaddress в блоке,
называемом officeiscsi, и запускают сессию iscsi.
# iscontrol -c /etc/iscsi.conf -n officeiscsi
Как только вы выполните команду iscontrol, должно создаться новое устройство в каталоге /dev.
Для проверки выполним команду dmesg:
# dmesg
Форматируем диск iSCSI
Запустим sysinstall для форматирования обнаруженного устройства iSCSI:
# sysinstall
Выбираем Custom > 3 Partition > Выбираем устройство iSCSI по имени da1. После
форматирования вводим:
# mkdir /iscsi
# mount /dev/da1s1 /iscsi
Возможно вам понадобится обновить файл /etc/fstab:
/dev/ad1s1 /iscsi ufs rw 3 3
|
|
|
|
Раздел: Корень / Администратору / Система / Диски и файлы / Файловые системы |
1.3, tekken (?), 12:55, 30/10/2009 [ответить]
| +/– |
у меня большая проблема:
1. поднимаю iSCSI target;
2. подключаю к нему одного initiator'a;
Всё работает просто прекрасно.
3. подключаю второго initiator'a
Вот тут-то и начинаются проблемы: инитиаторы не видят в реальном времени изминений сделаных другим инитиатором (например на одном удаляешь/создаёшь файлы/папки, на другом всё как буд-то ни в чём не бывало) и т.п.
Т.е. как бы нет синхронизации действий в реальном времени м/у инитиаторами
| |
1.4, demnull (ok), 20:29, 31/10/2009 [ответить]
| +/– |
Доброго времени суток, tekken!
Я пытался сделать тожесамое! И могу смело сказать что работать с одним таргетом с двух и более инициаторов у тебя не получиться, т.к. в результате создается блочное утройство.., и кто последний сделал изменения - тот и папа!
Если я не прав, бросайте в меня камни и подскажите как надо!
| |
|
2.6, boykov (ok), 12:30, 11/03/2010 [^] [^^] [^^^] [ответить]
| +/– |
>Доброго времени суток, tekken!
>
>Я пытался сделать тожесамое! И могу смело сказать что работать с одним
>таргетом с двух и более инициаторов у тебя не получиться, т.к.
>в результате создается блочное утройство.., и кто последний сделал изменения -
>тот и папа!
>
>Если я не прав, бросайте в меня камни и подскажите как надо!
>
прав. ибо для отслеживания изменений на общей файловой системе нужны отдельные прибамбасы, вроде кластерного кворума, nfs и иже с ними.
iscsi просто не умеет файловой системы, он уровнем ниже.
| |
|
1.5, kdesys (??), 15:21, 04/11/2009 [ответить]
| +/– |
Как настроить автоматическое монтирование iscsi при загрузке?
| |
1.8, redacid (ok), 12:17, 22/08/2013 [ответить]
| +/– |
да в чём проблема запихнуть в скрипт то, что вы вводите вручную?
| |
|