Готовое решение для малого бизнеса StarWind Native SAN for Hyper-V. Отказоустойчивый кластер без покупки внешнего хранилища. 


FreeNAS 8 iSCSI
 

Эта статья описывает создание сетевого iSCSI хранилища на базе FreeNAS с последующим подключением к гипервизору ESXi 5.0

Есть, как минимум, два основных варианта создания такого хранилища. В первом RAID создается на аппаратном контроллере, а потом уже готовые разделы отдаются через iSCSI сервис в качестве LUN-ов. Во втором, более сложном варианте, RAID собирается софтверный силами FreeNAS и уже на нем создаются разделы, которые можно будет отдать по iSCSI.

Не берусь судить, какой из способов более правильный, каждый это решит для себя сам. Сам FreeNAS в доках первый вариант почти не рассматривает, описывая прелести второго с файловой системой ZFS, он же будет описан и в статье.
 
order
1.  Первым делом создаем RAID из имеющихся у нас дисков. Файловая система должна быть ZFS. Если вы выберете UFS, то отдать раздел по iSCSI вы не сможете. Необходимо заметить, что для работы ZFS требуется большой объем оперативной памяти, лучше, если это будет 8 Гб. Если у вашего FreeNAS не будет хотя бы 4Гб, то начнутся проблемы с ZFS.
Storage –> Active Volumes –> Create Volume –> Add Volume
 



2. На созданном Raid Volume, создаем еще один раздел ZFS. Указываем название раздела, его размер (например, 100Gib) и уровень сжатия. В результате, получаем раздел FreeNAS1, который мы сможем отдать хостам ESXi по протоколу iSCSI. Storage  –> Active Volumes  –> Create ZFS Volume  –> Add ZFS Volume




3. Теперь можем приступить к настройке iSCSI службы. Если у вас RAID был создан на аппаратном контроллере, то первые два шага можно пропустить и сразу приступить к конфигурации iSCSI. Для этого переходим в раздел Services и жмем по изображению гаечного ключа напротив iSCSI выключателя, у нас открывается новая вкладка iSCSI.
 
4.  Здесь будет описана минимально необходимая настройка, которая будет работать без авторизации на всех IP адресах назначенных моему FreeNAS. Как вы поймете в процессе, настроек у этого сервиса в FreeNAS 8.1 больше чем у остальных. Нам нужно по очереди посетить 5 разделов во вкладке iSCSI.
 
5. iSCSI –> Portals –>  Add Portal . Создаем портал, который будет слушать все интерфейсы FreeNAS на порту 3260. Если это первый портал, то ему присваивается ID 1
 


6.  iSCSI –> Authorized Initiator  –>  Add Authorized Initiator . Создаем логический объект, который может быть использован для разделения доступа к LUN-ам. В нашем случае, он будет создан с номером ID 1, который не будет проверять инициатора и не будет проверять из какой сети происходит доступ, а будет пускать всех. Существует рекомендация о создании отдельной сети передачи данных между хостами ESXi и системами хранения данных, если такая сеть будет создана, то ее можно будет прописать здесь (Authorized network).
 

7. iSCSI –> Targets –> Add Target.  Добавляем iSCSI target, это «точка» подключения к нашей системе хранения по iSCSI, ее увидит Initiator, обратившись к СХД по TCP/IP на порт 3260.
 

8.  iSCSI –> Device Extents –> Add Extent  Добавляем логический объект, который дает имя созданному ранее разделу. Для тех, кто не создавал программный ZFS рейд, а использует аппаратный Raid контроллер, в меню Disk device будут видны готовые разделы отданные системе контроллером. Вообще, я рекомендую использовать именно аппаратные RAID.
 
 

9.  iSCSI -> Associated Target -> Add Extent to Target    Теперь пришло время выставить соответствие между созданными ранее Target и Extent, чтобы наш Хост ESXi обратившись к FreeNAS по имени Target попал бы на нужный нам Extent.В FreeNAS 7 все было проще, но сейчас тоже есть логика, ее нужно один раз понять и настройка больше не будет вызывать проблем.
 

10. Пришло время включить службу  Services -> iSCSIИз-за того, что у FreeNAS не всегда с первого раза включаются службы, лучше перезагрузиться. Цель – это добиться работы тумблера FreeNAS на вкл/выкл без ошибок. Если все в порядке, то идем дальше


11.  Подключаемся к нашему ESXi хосту через vCenter или напрямую, используя vSphere Client. Переходим в меню Configurations -> Storage Adapters. Если у вас ESXi 5 то iSCSI устройства вы не увидите, его сначала нужно включить (включается здесь же, справа вверху Add).


12.  Для того, чтобы наш хост увидел LUN на FreeNAS, как на картинке ниже, нужно прописать в настройках iSCSI Software Adapter. Для этого правой кнопкой мыши кликаем по адаптеру и выбираем Properties. Находим вкладку Dynamic Discovery -> Add, добавляем IP адрес нашего FreeNAS сервера, жмем ОК. Теперь, если вы все сделали правильно, то во вкладке Static Discovery автоматически появится путь к нашему Target, который мы презентовали ранее.


13. Теперь нужно добавить LUN в список хранилищ хоста, в процессе добавления он будет отформатирован (на выбор VMFS3 или VMFS5). Переходим в Configuration -> Storage -> Add Storage и проходим по всем пунктам мастера. Если вы пробовали настраивать NFS storage, то должны помнить, что к одному и тому же LUN могут получить доступ разные ESXi хосты, работающие без vCenter под бесплатными лицензиями. С iSCSI сделать подобного не получится, каждый бесплатный ESXi будет пытаться отформатировать LUN перед подключением.Само собой, vCenter решает эту проблему. Если денег на покупку лицензий очень мало, то можно взять самый недорогой пакет Essentials Kit (700$) и 3 хоста будут видеть общие луны.


14.В итоге видим добавленный LUN и можем его использовать для хранения и запуска виртуальных машин.