Протокол iSCSI (Internet Small Computer System Interface) представляет собой реализацию протокола SCSI поверх IP, что позволяет подключать серверы к системам хранения данных через стандартную TCP/IP сеть, не используя Fibre Channel. В данной статье мы рассмотрим настройку iSCSI-хранилища на Windows Server 2019 и использование его на других серверах (в Windows Server 2016 и 2012 R2 настройка аналогична). Пример использования: серверу файлов необходим дополнительный объем, и через сеть мы подключаем к нему виртуальный диск с другого сервера-хранилища по iSCSI.
Приобрести оригинальные ключи активации Windows Server можно у нас в каталоге от 1190 ₽
Создание и настройка iSCSI Target
Первым шагом является создание iSCSI таргета (сервера). Для этого необходимо включить роль iSCSI Target Server на сервере, где будет размещено хранилище. Процесс можно выполнить через GUI или командой PowerShell.
— Откройте Server Manager -> File and Storage Services -> File and iSCSI Services и установите роль iSCSI.
— Можно установить через PowerShell выполнив команду:
Install-WindowsFeature -Name FS-iSCSITarget-Server
— В Server Manager выберите File and Storage Services -> iSCSI и запустите New iSCSI Virtual Disk Wizard.
— Выберите физический диск, на котором будет создан виртуальный iSCSI диск, укажите его имя и тип (Fixed Size, Dynamically expanding или Differencing).
— На этапе выбора инициаторов (серверов, подключающихся к таргету), выберите один из методов идентификации: IP-адрес, IQN, DNS Name или MAC Address. Используем вариант с IP-адресом.
— При необходимости настройте аутентификацию через CHAP: введите имя пользователя и пароль (не менее 12 символов).
— Создание виртуального диска размером 200 ГБ:
New-IscsiVirtualDisk -Path С:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB
По умолчанию создается динамический диск размером 4,096 Кб, независимо от того, сколько было указано параметром Size. Динамический диск будет расширяться по мере необходимости.
— Для создания фиксированного диска:
New-IscsiVirtualDisk -Path С:\iSCSIVirtualDisks\iscsiDisk2.vhdx -Size 200GB -UseFixed
— Присвоим таргету имя и разрешим доступ с определенного IP-адреса:
New-IscsiServerTarget -TargetName "iscsiTarget33" -InitiatorId @("IPAddress:172.17.244.8")
— Или используем IQN имя для подключения:
New-IscsiServerTarget -TargetName iscsiTarget33 -InitiatorIds “IQN: 1991-05.com.microsoft:win2019test.ddd.com”
— Получим список таргетов и LUN:
Get-IscsiServerTarget | fl TargetName, LunMappings
— Полное имя таргета можно получить командой:
Get-IscsiTarget
— Подключим таргет:
Connect-IscsiTarget -NodeAddress iqn.1991-05.com.microsoft:win2019test-iscsitarget33-target
Настройка iSCSI Initiator на Windows Server
Следующий шаг — это подключение к созданному iSCSI диску со второго сервера-инициатора.
— Откройте Control Panel -> iSCSI Initiator или выполните команду iscsicpl.exe.
— Убедитесь, что служба Microsoft iSCSI Initiator Service настроена на автоматический запуск:
Set-Service -Name MSiSCSI -StartupType Automatic
— Перейдите на вкладку Discovery, нажмите Discover Portal и введите IP-адрес iSCSI таргета.
— Нажмите Advanced и измените значения по умолчанию в выпадающих списках: Local Adapter –> Microsoft iSCSI Initiator, Initiator IP –> 172.17.244.8.
— Для подключения к iSCSI хранилищу необходимо открыть порты 860 и 3260 в Windows Firewall.
— Перейдите на вкладку Targets, на ней появится новое подключение. Чтобы включить его, нажмите Connect -> Advanced, выберите значения из выпадающих полей, включите галочку Enable CHAP log on, укажите имя пользователя и 12-значный пароль.
— После подключения, диск будет находиться в состоянии Offline. Откройте консоль Disk Management, выберите новый диск, сделайте его Online, а затем выполните Initialize Disk.
— Создайте разделы на диске и отформатируйте его в NTFS.
Для быстрой инициализации и форматирования нового диска можно использовать следующий однострочный PowerShell:
Get-Disk | Where-Object PartitionStyle -eq 'RAW' | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -Confirm:$false
Важно: iSCSI-диски не поддерживают файловую систему ReFS.
Теперь этот виртуальный диск, подключенный с другого сервера по протоколу iSCSI можно использовать как обычный локально подключенный диск.
Вы также можете подключить iSCSI-диск на инициаторе через PowerShell. Для получения IQN таргета выполните:
Get-iSCSITarget
Для подключения выполните команду:
Connect-IscsiTarget –IsPersistent $False
Если используется CHAP аутентификация, подключение будет таким:
Get-iScsiTarget | Connect-iScsitarget –AuthenticationType ONEWAYCHAP –ChapUserName
Для обеспечения высокой доступности и балансировки нагрузки можно настроить несколько избыточных сетевых компонентов (сетевые карты, коммутаторы) и использовать модуль MPIO (Multipath I/O).
Заключение
Настройка и подключение iSCSI-дисков в Windows Server является простым и гибким решением для расширения хранилища или создания отказоустойчивых кластеров. Используя iSCSI, можно подключать диски по сети как к локальному хранилищу, так и к сетевым ресурсам, обеспечивая эффективное управление данными.