Table of Contents

Підключення iSCSI диска в Windows

Приклад параметрів підключення хмарного диску

Параметр Значення
IP адреса iSCSI інтерфейсу 10.12.1.112
Маска мережі iSCSI 255.255.255.248 (/29)
iSCSI портал 10.12.1.111
iSCSI target iqn.2017-11.call.lio:iscsi
Порт iSCSI 3260 (стандартний)

Налаштування мережі

Налаштовуємо IP-адресу на мережевому інтерфейсі, який буде використовуватись для iSCSI-трафіку:

  1. Через PowerShell (запускаємо від імені адміністратора). Спочатку дивимось список мережевих адаптерів
    Get-NetAdapter
  2. Призначаємо IP-адресу на потрібному інтерфейсі (замінюємо InterfaceIndex на індекс вашого адаптера)
    New-NetIPAddress -InterfaceIndex 5 -IPAddress 10.12.1.112 -PrefixLength 29
  3. Перевіряємо мережеву зв'язність з iSCSI порталом
    Test-NetConnection -ComputerName 10.12.1.111 -Port 3260

    Очікуваний результат — TcpTestSucceeded : True

Також можна налаштувати IP-адресу через графічний інтерфейс: Control PanelNetwork and Sharing CenterChange adapter settings → правий клік на адаптері → PropertiesInternet Protocol Version 4 (TCP/IPv4)Properties → вводимо IP 10.12.1.112, маску 255.255.255.248.

Підключення в Windows 10 / Windows 11

Запуск та налаштування служби iSCSI Initiator:

  1. Відкриваємо PowerShell від імені адміністратора та запускаємо службу iSCSI
    Start-Service -Name MSiSCSI
    Set-Service -Name MSiSCSI -StartupType Automatic

    Або через графічний інтерфейс: Services (services.msc) → знаходимо Microsoft iSCSI Initiator Service → правий клік → PropertiesStartup type: AutomaticStart.

  2. Перевіряємо, що служба запущена
    Get-Service -Name MSiSCSI

    Статус повинен бути Running.

Підключення через PowerShell:

  1. Додаємо iSCSI портал
    New-IscsiTargetPortal -TargetPortalAddress 10.12.1.111 -TargetPortalPortNumber 3260
  2. Переглядаємо доступні таргети
    Get-IscsiTarget

    Очікуваний результат:

    IsConnected NodeAddress
    ----------- -----------
          False iqn.2017-11.call.lio:iscsi
  3. Підключаємось до таргету
    Connect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi"

    Очікуваний результат:

    AuthenticationType : NONE
    InitiatorInstanceName : ROOT\ISCSIPRT\0000_0
    InitiatorNodeAddress  : iqn.1991-05.com.microsoft:hostname
    ...
    IsConnected           : True
    IsPersistent          : False
  4. Перевіряємо активні сесії
    Get-IscsiSession

Підключення через графічний інтерфейс (iSCSI Initiator):

  1. Відкриваємо iSCSI Initiator: натискаємо Win + R → вводимо iscsicplOK. При першому запуску система запропонує запустити службу — натискаємо Yes.
  2. На вкладці Discovery натискаємо Discover Portal… → вводимо IP 10.12.1.111, порт 3260OK
  3. Переходимо на вкладку Targets → в списку повинен з'явитись таргет iqn.2017-11.call.lio:iscsi зі статусом Inactive
  4. Обираємо таргет → натискаємо Connect → у вікні ставимо галочку Add this connection to the list of Favorite Targets (для автопідключення) → OK
  5. Статус таргету зміниться на Connected

Підключення в Windows Server

Встановлення компонента iSCSI Target (якщо потрібен серверний функціонал):

Примітка: Для підключення до зовнішнього iSCSI таргету (як iSCSI initiator) додаткові компоненти встановлювати не потрібно — iSCSI Initiator вбудований у Windows Server. Компонент iSCSI Target Server потрібен тільки якщо ви хочете створити власний iSCSI таргет на цьому сервері.

  1. Встановлення iSCSI Target Server через PowerShell (опціонально)
    Install-WindowsFeature -Name FS-iSCSITarget-Server -IncludeManagementTools

    Або через Server ManagerAdd Roles and FeaturesFile and Storage ServicesFile and iSCSI ServicesiSCSI Target Server.

Запуск служби iSCSI Initiator та підключення:

  1. Запускаємо службу iSCSI Initiator
    Start-Service -Name MSiSCSI
    Set-Service -Name MSiSCSI -StartupType Automatic
  2. Додаємо iSCSI портал та виконуємо discovery
    New-IscsiTargetPortal -TargetPortalAddress 10.12.1.111 -TargetPortalPortNumber 3260
  3. Переглядаємо доступні таргети
    Get-IscsiTarget
  4. Підключаємось до таргету
    Connect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi"
  5. Перевіряємо підключення
    Get-IscsiSession
    Get-Disk

    Новий iSCSI диск з'явиться зі статусом Offline та RAW (якщо він новий).

Ініціалізація та форматування диска

Після підключення iSCSI диска його потрібно ініціалізувати та відформатувати:

Через PowerShell:

  1. Переглядаємо диски та знаходимо новий iSCSI диск
    Get-Disk

    Новий диск зазвичай має статус Offline та Partition Style: RAW.

  2. Переводимо диск в онлайн та ініціалізуємо (замінюємо 1 на номер вашого диска)
    Set-Disk -Number 1 -IsOffline $false
    Initialize-Disk -Number 1 -PartitionStyle GPT
  3. Створюємо розділ та форматуємо в NTFS
    New-Partition -DiskNumber 1 -UseMaximumSize -AssignDriveLetter
    Format-Volume -DriveLetter E -FileSystem NTFS -NewFileSystemLabel "iSCSI_Disk" -Confirm:$false

    Замінюємо E на потрібну букву диска. Після цього диск буде доступний як E:\.

Увага! Форматування знищить усі дані на диску. Виконуйте тільки для нового або порожнього диска.

Через графічний інтерфейс (Disk Management):

  1. Відкриваємо Disk Management: натискаємо Win + R → вводимо diskmgmt.mscOK
  2. Новий диск з'явиться з позначкою Not Initialized → правий клік → Initialize Disk → обираємо GPTOK
  3. Правий клік на нерозміченій області → New Simple Volume → слідуємо майстру → обираємо букву диска, файлову систему NTFS, мітку тому → Finish

Налаштування автоматичного підключення

Щоб iSCSI диск підключався автоматично після перезавантаження:

Через PowerShell:

  1. Реєструємо підключення як постійне (persistent)
    Connect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi" -IsPersistent $true

    Якщо таргет вже підключений, спочатку відключаємось, потім підключаємось з прапором -IsPersistent:

    Disconnect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi" -Confirm:$false
    Connect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi" -IsPersistent $true
  2. Перевіряємо, що підключення збережено як persistent
    Get-IscsiSession | Format-List -Property *

    Значення IsPersistent повинно бути True.

Через графічний інтерфейс:

  1. Відкриваємо iSCSI Initiator (iscsicpl) → вкладка Favorite Targets
  2. Якщо таргет вже є в списку — автопідключення налаштоване
  3. Якщо ні — на вкладці Targets обираємо таргет → Connect → ставимо галочку Add this connection to the list of Favorite TargetsOK

Також переконайтесь, що служба iSCSI Initiator має автоматичний запуск:

Get-Service -Name MSiSCSI | Select-Object Name, Status, StartType

Відключення iSCSI диска

Для безпечного відключення iSCSI диска:

Через PowerShell:

  1. Переводимо диск в офлайн (замінюємо 1 на номер диска)
    Set-Disk -Number 1 -IsOffline $true
  2. Відключаємось від таргету
    Disconnect-IscsiTarget -NodeAddress "iqn.2017-11.call.lio:iscsi" -Confirm:$false

Через графічний інтерфейс:

  1. Disk Management (diskmgmt.msc) → правий клік на iSCSI диску → Offline
  2. iSCSI Initiator (iscsicpl) → вкладка Targets → обираємо таргет → Disconnect

Важливо: Завжди переводьте диск в Offline перед відключенням iSCSI сесії. Відключення при активних операціях вводу-виводу може призвести до втрати даних.

Усунення несправностей

Проблема Рішення
Служба MSiSCSI не запускається Перевірте статус: Get-Service MSiSCSI. Запустіть вручну: Start-Service MSiSCSI. Перевірте Event Log: Get-EventLog -LogName System -Source “MSiSCSI” -Newest 10
Портал не відповідає Перевірте зв'язність: Test-NetConnection -ComputerName 10.12.1.111 -Port 3260. Перевірте Windows Firewall: Get-NetFirewallRule | Where-Object { $_.DisplayName -like “*iSCSI*” }
Discovery не знаходить таргети Перевірте правильність IP порталу. Видаліть та додайте портал заново: Remove-IscsiTargetPortalNew-IscsiTargetPortal
Диск не з'являється після login Відкрийте Disk Management (diskmgmt.msc) → ActionRescan Disks. Перевірте: Get-Disk | Where-Object { $_.BusType -eq “iSCSI” }
Диск зникає після перезавантаження Переконайтесь що підключення persistent: Get-IscsiSession | Select-Object IsPersistent. Якщо ні — перепідключіть з -IsPersistent $true

Корисні діагностичні команди:

  1. Повна інформація про iSCSI сесії
    Get-IscsiSession | Format-List *
  2. Список iSCSI дисків
    Get-Disk | Where-Object { $_.BusType -eq "iSCSI" }
  3. Перегляд iSCSI Initiator Name (IQN) поточної системи
    (Get-InitiatorPort).NodeAddress
  4. Перегляд подій iSCSI в Event Log
    Get-WinEvent -LogName "Microsoft-Windows-iSCSITarget*" -MaxEvents 20

Посилання на документації: Microsoft iSCSI PowerShell module Windows Server iSCSI Target Server iSCSI Boot Overview