Состояние виртуального диска не подключен iscsi

Обновлено: 07.07.2024


Установил StarWind iSCSI SAN — Free Edition. Создал target, но так как бесплатная версия не позволяет использовать физический диск, я создал виртуальный.


С помощью встроенных в Windows инициаторов, я подключил iSCSI диск на 2-х компьютерах. Попробовав записать чтото на диск, заметил что место на диске расходуется, но записанная информация не отображается в этом диске с другого компьютера.


В первую очередь я подумал, что это может такая особенность iSCSI. Но ничего по этому поводу найти не смог.


Подскажите пожалуйста, в чём причина и как обеспечить нормальную работу iSCSI?

Оценить 2 комментария

Файловая система-то какая?
Чтобы один и тот же диск был доступен с нескольких подключений, на диске должна быть кластерная файловая система. Ну так а что вы хотите от NTFS =)
Если хотите именно расшаривать одно хранилище между несколькими подключениями, то либо ставите на него кластерную ФС (glusterfs, zfs итд), либо монтируете его куда-нибудь в одну точку и с неё раздаёте по NFS. Понятно, спасибо. ВРоде те ФС, что вы перечислили не очень дружат с Windows. А NFS — это обычное расшаривание папки по сети?

обычное расшаривание папки по сети, то что под windows — это samba
nfs — похожая технология, но родом из linux

samba тоже поможет вам, да.

Читайте матчасть, как нтфс должен узнавать что на него что то записали на другом компе?

Никак. Только ставить кластерную файловую систему.
NTFS не кластерная файловая система, поэтому работать с двумя компьютерами на запись не будет (вариант — писать может только один а все остальные read-only).

Теоретически к NTFS есть соответствующее расширение (CVS — Clustered Shared Volume), но оно работает только и в Hyper-V.

PS. Вы пять тысяч четыреста восемьдесят шестой пользователь, попытавшйся сделать так с iSCSI. :)

Если ищете кластерную файловую систему, поддерживаемую в ОС Windows, посмотрите в сторону Sanbolic Melio FS. про cluster fs вам конечно не рассказывали? GFS2 или там OCFS2?

Это не «особенность iSCSI», это особенность доступа к блочному устройству вообще, по любому протоколу. Кто-то должен быть диспетчером, отслежвающим записи и уведомляющим использующие устройство хосты об этом (иначе хосты ничего друг о друге не узнают, и не смогут сохранить целостность FS при записи).
В случае NAS и его протоколов (CIFS/SMB, NFS) такой арбитр это сама OS этого NAS. В случае блочного протокола такого арбитра по умолчанию нет.
Существуют специальные кластерные файловые системы, которые эту задачу решают. Но это не наколенное решение.

В общем случае примите как данность: Несмотря на то, что блочное устройство по протоколу iSCSI можно подключить одновременно к разным серверам, делать это (без установки кластерной FS) нельзя.

Решения:
1. Изменить решение, не подключать к одному iSCSI-устройству более одного хоста на запись.
2. Не использовать блочные протоколы, а использовать файловые протоколы (NAS)
2. Установить кластерную файловую систему

При использовании iSCSI данные между сервером и системой хранения передаются блоками, в необработанном виде. Это позволяет использовать SAN практически так же, как если бы они были подключены к серверу напрямую, а не по сети. Хост-система может создавать на SAN логические разделы, форматировать их и использовать как обычные локальные жесткие диски. В этом заключается основное отличие SAN от сетевых хранилищ (Network Area Storage, NAS), которые работают на уровне файловой системы и используют протоколы передачи файлов, такие как SMB или CIFS.

Технология iSCSI была разработана как более дешевая альтернатива Fibre Channel (FC). Системы на базе iSCSI поддерживают стандартные протоколы и могут быть построены на базе любой существующей сетевой инфраструктуры, поддерживающей протокол IP. Для работы iSCSI может использовать самые обычные сетевые устройства (коммутаторы, маршрутизаторы, сетевые адаптеры и т.п), тогда как для FC требуются специальные HBA-адаптеры, оптические кабеля и прочее дорогостоящее оборудование.

Архитектура iSCSI является клиент-серверной и включает в себя следующие компоненты:

А теперь остановимся и уточним некоторые моменты:

• На каждом iSCSI сервере может быть один или несколько iSCSI Target;
• Каждый iSCSI Target может быть подключен к одному или нескольким виртуальным дискам;
• Каждый iSCSI Target может обслуживать одно или несколько подключений от iSCSI Initiator;
• В свою очередь, каждый iSCSI Initiator может подключаться к одному или нескольким iSCSI Target и, следовательно, к одному или нескольким виртуальным дискам.

Кроме того, в Windows Server 2012 поддерживается loopback-конфигурация, в которой и Target и Initiator могут находиться на одном и том же сервере.

В операционных системах Microsoft поддержка iSCSI появилась довольно давно. Первая версия Microsoft iSCSI Initiator устанавливалась в качестве отдельного компонента в Windows 2000, Windows XP SP2 и Windows Server 2003 SP1, а начиная с Windows Server 2008 и Vista iSCSI Initiator был встроен в операционную систему.

Что касается iSCSI Target, то изначально он входил в специальную версию серверной ОС Windows Data Storage Server 2003, которая была предназначена для построения систем хранения и поставлялась только в предустановленом виде. Однако с 2011 года компонент Microsoft iSCSI Software Target 3.3 стал доступен для загрузки и установки на Windows Server 2008R2, а в Windows Server 2012 он полностью интегрирован в систему и устанавливается в качестве роли сервера.

На этом закончим теоретическую часть и приступим к практике. Для настройки возьмем самый простой вариант, в качестве подопытных используем два сервера с установленной Windows Server 2012 R2: SRV2 для роли iSCSI Target и SRV3 для iSCSI Initiator.

Запуск службы iSCSI Initiator

Для начала проверим состояние службы инициатора на SRV3. Для этого открываем Server Manager и в меню «Tools» выбираем пункт «iSCSI Initiator».

Запуск iSCSI Initiator

Как видите, по умолчанию служба не запущена. Нажав на «Yes» в диалоговом окне, мы стартуем службу iSCSI Initiator и поставим ее в режим автоматического запуска.

подтверждение на запуск сервиса iSCSI Initiator

Затем в окне свойств переходим на вкладку «Configuration» и запоминаем значение IQN, оно пригодится нам при настройке сервера.

свойства iSCSI Initiator

Стартовать сервис iSCSI Initiator и установить режим его запуска можно и из консоли PowerShell, следующими командами:

Start-Service msiscsi
Set-Service msiscsi -StartupType automatic

Установка роли iSCSI Target Server

Server Manager

И выбираем роль «iSCSI Target Server», которая находится в разделе File and Storage Services\File and iSCSI Services.

установка роли iSCSI Target

Либо воспользуемся командой PowerShell:

Install-WindowsFeature -Name FS-iSCSITarget-Server

Подготовка диска

Теперь подготовим физический диск, который будет использоваться для хранения виртуальных iSCSI дисков. Специально для этой цели к серверу подключен новый жесткий диск размером 120Гб. На данный момент диск неактивен (Offline). Для его активации в Server Manager переходим в раздел File and Storage Services -> Disks, кликаем на диске и переводим его в Online.

подключение нового диска

Теперь на этом диске надо создать новый раздел (или том), для чего в контекстном меню выбираем пункт New Volume.

создание нового тома на диске

Выбираем физический диск, на котором будет создаваться том

выбор диска

указываем размер тома

выбор размера тома

и выбираем букву диска.

выбор буквы диска

Затем выбираем для диска файловую систему, размер сектора и указываем метку тома. Здесь напомню, что виртуальные диски iSCSI можно создавать только на томах NTFS, новая файловая система ReFS (Resilient File System) не поддерживается.

настройки файловой системы

Смотрим суммарную информацию, и если все правильно, то жмем «Create», запуская создание тома.

подтверждение на создание нового тома

Те же действия можно проделать с помощью PowerShell. Находим нужный диск:

Переводим его в online:

Set-Disk -Number 1 -IsOffline $false

Initialize-Disk -Number 1

New-Partition -DiskNumber 1 -UseMaximumSize -DriveLetter D

И форматируем его в NTFS:

Format-Volume -DriveLetter D -FileSystem NTFS -NewFileSystemLabel ″iSCSI Storage″

Создание виртуальных дисков iSCSI

Следующим пунктом нашей программы идет создание виртуальных iSCSI дисков. Для этого переходим в раздел iSCSI и кликаем по ссылке, запуская очередной мастер.

создание виртуального iSCSI диска

Выбираем том, на котором будет храниться виртуальный диск.

выбор тома для размещения виртуального диска

Даем диску имя и описание.

задаем имя виртуальному диску

Указываем размер виртуального диска и его тип. Выбирать можно из трех вариантов:

задаем тип и размер виртуального диска

Теперь нужно указать iSCSI Target, к которому будет подключен данный диск. Поскольку на сервере не создано ни одного таргета, выбираем «New iSCSI target».

указываем iSCSI Target

Даем таргету имя и описание.

задаем имя для iSCSI Target

И указываем сервера, которые могут получить к нему доступ.

указываем сервера доступа

При выборе серверов можно воспользоваться двумя способами. Если инициатор находится на Windows Server 2012 или Windows 8, то можно просто нажать «Browse» и выбрать нужный сервер из списка. Для более старых систем надо вручную ввести идентификатор сервера. В качестве идентификатора можно указать IQN инициатора, DNS имя или IP-адрес сервера, либо MAC-адрес сетевого адаптера.

окно выбора серверов доступа

настройки аутентификации

Проверяем правильность настроек и запускаем создание диска.

подтверждаем создание виртуального диска

Попробуем сделать все то же с помощью PowerShell. Создадим еще один виртуальный iSCSI диск на 20ГБ командой:

New-IscsiVirtualDisk -Path D:\iSCSIVirtualDisks\iSCSI2.vhdx

Обратите внимание, что по умолчанию создается динамический диск, для создания VHD фиксированного размера надо воспользоваться ключом -UseFixed.

создание виртуального диска из PowerShell

Теперь создаем второй iSCSI Target c именем iscsi-target-2 и в качестве сервера доступа укажем IQN SRV3:

создание iSCSI Target и подключение диска

И проверим результат командой:

Get-IscsiServerTarget | fl TargetName, LunMappings

вывод информации о iSCSI Target

Подключение

Возвращаемся на SRV3, открываем окно свойств инициатора, переходим на вкладку Discovery и жмем кнопку Discover Portal.

окно Discover свойств iSCSI Initiator

Вводим имя или IP-адрес портала и жмем ОК.

настройка подключения к iSCSI Target

По умолчанию iSCSI использует все доступные IP-адреса, и если вы хотите, чтобы трафик iSCSI шел только через определенный сетевой интерфейс, то надо перейти в расширенные настройки и в поле «Connect using» указать нужный IP.

расширенная настройка подключения к iSCSI Target

Теперь переходим на вкладку Targets, где должны отобразиться все доступные для подключения iSCSI Target. Выбираем нужный таргет и жмем «Connect».

выбор iSCSI Target

Не забудьте отметить чекбокс «Add this connection to the list of Favorite Targets», который обеспечивает автоматическое подключение к таргету при выключении или перезагрузке машины.

подключение к iSCSI Target

оснастка Disk Management

То же самое можно выполнить с помощью PowerShell. Выводим список доступных таргетов:

И подключаемся к нужному:

Ключ -IsPersistent $true обеспечивает автоматическое подключение при выключении или перезагрузке.

подключение к iSCSI Target из PowerShell

Ну и для отключения можно воспользоваться командой Disconnect-IscsiTarge, вот так:

отключение к iSCSI Target из PowerShell

Заключение

На этом настройка завершена. Как я говорил, это самый простой, базовый вариант настройки хранилища. В iSCSI имеется еще много интересных возможностей. Например, можно использовать службу имен iSCSI (iSNS) для простоты управления, многопутевой ввод-вывод (MPIO) для обеспечения отказоустойчивости, а для безопасности настроить аутентификацию по протоколу CHAP и шифрование трафика с помощью IPSec. О некоторых из этих фич я планирую написать в следующих статьях.

И в заключение важные моменты, которые надо учесть при организации системы хранения iSCSI:

• Развертывать iSCSI желательно в быстрой сети, не ниже Gigabit Ethernet;
• Сетевой трафик iSCSI рекомендуется отделить от остального трафика и вынести в отдельную сеть, например с помощью VLAN или физического разделения на подсети;
• Для обеспечения высокой доступности на сетевом уровне необходимо использовать технологию MPIO, либо сеансы с несколькими подключениями (MCS). Объединение сетевых адаптеров (NIC Teaming) для подключения к устройствам хранения iSCSI не поддерживается;
• При использовании технологии Storage Spaces можно хранить виртуальные диски iSCSI на Storage Spaces, но нельзя использовать LUN-ы iSCSI для создания Storage Spaces;
• Для хранения виртуальных дисков iSCSI нельзя использовать общие кластерные тома CSV (Cluster Shared Volume).

Подключение диска iSCSI

1. Зайдите в «Панель Управления -> Администрирование» и запустите Инициатор iSCSI.


2. В разделе «Свойства» инициатора iSCSI перейдите на вкладку «Обнаружение» и нажмите кнопку «Обнаружить портал».


3. В открывшемся окне заполните поле «IP адрес» сервера iSCSI.



5. Сохраните настройки, убедитесь в получении изображения, подобного приведенному ниже:


6. В разделе «Свойства» инициатора iSCSI перейдите на вкладку «Конечные объекты», выберите появившийся объект с неактивным состоянием и нажмите кнопку «Подключить».




9. Сохраните настройки. Убедитесь, что значение поля «Состояние» обнаруженного конечного объекта – «Подключено», как на рисунке ниже. Выйдите из раздела «Свойства» Инициатора iSCSI, сохранив настройки.



Инициализация и форматирование диска iSCSI

Подключенный iSCSI диск необходимо подготовить к работе (инициализировать и отформатировать).

10. В разделе «Администрирование» откройте вкладку «Управление компьютером».


11. Перейдите в раздел «Управление дисками».


12. Убедитесь, что ваш диск отображается, его состояние – «Вне сети».


13. Выберите из контекстного меню пункт «В сети».


14. Выполните инициализацию диска.



15. Проверьте, что статус диска изменился на «В сети», но на нём отсутствуют разделы и файловая система.


16. Из контекстного меню на не размеченном диске выберите «Создать простой том».


17. После открытия «Мастера создания простого тома» нажмите кнопку «Далее».


18. Укажите в соответствующем поле размер раздела, или оставьте без изменений значение «по умолчанию» (если необходимо использовать весь диск под один раздел).


19. Назначьте букву диска для нового раздела.


20. Выберите тип файловой системы и метку тома.



Важно! Во время форматирования может возникнуть окно с предложением отформатировать диск. Необходимо игнорировать этот запрос, закрыть окно и дождаться окончания форматирования.


22. Проверьте, что новый том находится в состоянии «Исправен».


23. Убедитесь, что новый том отображается среди дисков в «Проводнике».



Проверка доступности диска iSCSI для записи

24. Для проверки тома, перейдите к соответствующему диску в «Проводнике» и создайте, к примеру, текстовый файл, как на рисунке ниже:


25. Убедитесь, что при создании файла проблем не возникло – это означает, что новый том iSCSI подключен, отформатирован и работает исправно.


Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
  • VMware Technology Network
  • :
  • Global
  • :
  • Russian
  • :
  • Russian Discussions
  • :
  • Хост не видит iSCSI-таргет
Skyrod7
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

Здравствуйте. Подскажите, что это может быть: есть 2 хоста ESX, 2 iSCSI СХД с Starwind Free, все в одной подсети, пинги проходят. Один хост видит таргеты с обоих СХД, второй хост - только с одного СХД. Таргеты на СХД в Clustered ( то есть могут отдаваться нескольким инициаторам).

VTsukanov
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

vmkping с больного хоста на невидимую СХД проходит?

Skyrod7
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

Да. проходит. И хост уже ребутил и на СХД сервис перезапускал. Поднял пробный таргет, тоже на обоих видится. Все хосты и таргеты в одной подсети

VTsukanov
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

Судя по тому что вы говорите, что то не так со вторым СХД, советов, кроме как проверяйте настройки, дать не могу.

Мне в свое время на 3.5 помог tcpdump на ESXе

EGarbuzov
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

Посмотрите на что идёт ругань в логах Starwind'а (в моей платной версии: консоль управления-> ваш iSCSI сервер->Server Log)

У меня ругался что-то типа "LUN не активирован". Помогло удалить таджет (не сам файл!) и заново добавить.

Skyrod7
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

Вкладка Server Log девственна чиста. Удалил таргет и пересоздал с теми же параметрами- всё увиделось. Непонятно

EGarbuzov
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Email to a Friend

> Вкладка Server Log девственна чиста

В консоль управления лог почему-то не синхронизируется автоматически - сверху есть ссылка Refresh .

> всё увиделось

Отметьте вопрос решённым. Или подождите, возможно представители самого Starwinda что-то прокомментируют - в этой ветке они точно бывают

Читайте также: