Инициатор iscsi ошибка целевого устройства

bard099
Новичок

Зарегистрирован: 25.01.2018
Пользователь #: 167,401
Сообщения: 63

Источник

Вопрос

Столкнулся с такой проблемой.

Имеется сервер Windows Server 2012. Он подключен к дисковой подсистеме iSCSI. Подключение выполнено с использованием многопутевого метода.

Однажды случилось, что один из путей стал недоступен. В журнале событий увидел ошибку:

Initiator failed to connect to the target. Target IP address and TCP Port number are given in dump data.

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

Наблюдал подобную ошибку на системах Windows Server 2008, но там все продолжало работать.

Возникает вопрос, почему не заработала многопутевая схема? Какие способы решения проблемы?

Ответы

Эта проблема возникает по одной или нескольким из следующих причин.

Причина 1

Конечное устройство iSCSI, перечисленные на вкладке Избранные конечные объекты iSCSI инициатор будет недоступна. Это может произойти, если изменяется имя целевого устройства iSCSI, при изменении IP-адреса или если целевое устройство iSCSI, удаляется из сети.

Причина 2

Целевое устройство iSCSI достигнуто предельное число входящих подключений.

Причина 3

Временное состояние сети временно предотвратить проблемы подключения к целевому устройству iSCSI.

Причина 4

Сетевой стек не полностью подготовлен при инициатор пытался подключиться к постоянных конечных объектов. Инициатор будет пытаться подключиться. Когда сетевой стек полностью подготовлены, подключение должно быть установлено успешно.

По этой сс ылке можно ознакомиться более подробно как решить проблему:

В системный журнал на компьютере, использующем программное обеспечение инициатора iSCSI для подключения к целевому устройству iSCSI может регистрироваться событие с кодом 1, 5 идентификатор события, событие ID 70 или событие ID 113

Источник

Iscsi инициатор ошибка подключения

Этот форум закрыт. Спасибо за участие!

Спрашивающий

Вопрос

Стоит сервер под управлением windows server 2003 R2 x64 SP2

27 июля 2012 потерялись коннекторы к СХД. Подключенный HDD с СХД тоже пропал.

Сейчас при поиске СХД пишет ошибки в журнал событий windows:

Тип события: Ошибка

Источник события: iScsiPrt
Категория события: Отсутствует
Код события: 7
Дата: 22.08.2012
Время: 9:57:49
Пользователь: Н/Д
Компьютер: MSERVER
Описание:
The initiator could not send an iSCSI PDU. Error status is given in the dump data.

Тип события: Ошибка
Источник события: iScsiPrt
Категория события: Отсутствует
Код события: 43
Дата: 22.08.2012
Время: 9:57:50
Пользователь: Н/Д
Компьютер: MSERVER
Описание:
Target failed to respond in time for a login request.

Тип события: Предупреждение
Источник события: MSiSCSI
Категория события: Отсутствует
Код события: 113
Дата: 22.08.2012
Время: 9:57:50
Пользователь: Н/Д
Компьютер: MSERVER
Описание:
iSCSI discovery via SendTargets failed 0xefff0012 to target portal *192.168.10.171 0003260 RootSCSIADAPTER000_0 .

Что уже не перепробовал.

1. Отключил бранмауэр windows;

2. выгружал Антивирус Касперского;

3. Переустановил все необходимые программы для работы с СХД ax4-5 SCi

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

Может быть у кого-нибудь есть ответ на мой вопрос.

Источник

Настройка ISCSI initiator в linux

Abstract: как работает open-iscsi (ISCSI initiator в linux), как его настраивать и чуть-чуть про сам протокол ISCSI.

Лирика: В интернете есть множество статей довольно хорошо объясняющих, как настроить ISCSI target, однако, почему-то, практически нет статей про работу с инициатором. Не смотря на то, что target технически сложнее, административной возни с initiator больше — тут больше запутанных концепций и не очень очевидные принципы работы.

ISCSI

Перед тем, как рассказать про ISCSI — несколько слов о разных типах удалённого доступа к информации в современных сетях.

NAS vs SAN

scsi over tcp

Одним из протоколов доступа к блочным устройствам является iscsi. Буква ‘i’ в названии относится не к продукции эппл, а к Internet Explorer. По своей сути это ‘scsi over tcp’. Сам протокол SCSI (без буквы ‘i’) — это весьма сложная конструкция, поскольку он может работать через разные физические среды (например, UWSCSI — параллельная шина, SAS — последовательная — но протокол у них один и тот же). Этот протокол позволяет делать куда больше, чем просто «подтыкать диски к компьютеру» (как это придумано в SATA), например, он поддерживает имена устройств, наличие нескольких линков между блочным устройством и потребителем, поддержку коммутации (ага, SAS-коммутатор, такие даже есть в природе), подключение нескольких потребителей к одному блочному устройству и т.д. Другими словами, этот протокол просто просился в качестве основы для сетевого блочного устройства.

Терминология

В мире SCSI приняты следующие термины:
target — тот, кто предоставляет блочное устройство. Ближайший аналог из обычного компьютерного мира — сервер.
initiator — клиент, тот, кто пользуется блочным устройством. Аналог клиента.
WWID — уникальный идентификатор устройства, его имя. Аналог DNS-имени.
LUN — номер «кусочка» диска, к которому идёт обращение. Ближайший аналог — раздел на жёстком диске.

ISCSI приносит следующие изменения: WWID исчезает, на его место приходит понятие IQN (iSCSI Qualified Name) — то есть чистой воды имя, сходное до степени смешения с DNS (с небольшими отличиями). Вот пример IQN: iqn.2011-09.test:name.

IETD и open-iscsi (сервер и клиент под линукс) приносят ещё одну очень важную концепцию, о которой чаще всего не пишут в руководствах по iscsi — portal. Portal — это, если грубо говорить, несколько target’ов, которые анонсируются одним сервером. Аналогии с www нет, но если бы веб-сервер можно было попросить перечислить все свои virtualhosts, то это было бы оно. portal указывает список target’ов и доступные IP, по которым можно обращаться (да-да, iscsi поддерживает несколько маршрутов от initiator к target).

target

Статья не про target, так что даю очень краткое описание того, что делает target. Он берёт блочное устройство, пришлёпывает к нему имя и LUN и публикет его у себя на портале, после чего позволяет всем желающим (авторизация по вкусу) обращаться к нему.

Вот пример простенького файла конфигурации, думаю, из него будет понятно что делает target (файл конфигурации на примере IET):

(сложный от простого отличается только опциями экспорта). Таким образом, если у нас есть target, то мы хотим его подключить. И тут начинается сложное, потому что у initiator’а своя логика, он совсем не похож на тривиальное mount для nfs.

Initiator

В качестве инициатора используется open-iscsi. Итак, самое важное — у него есть режимы работы и состояние. Если мы дадим команду не в том режиме или не учтём состояние, результат будет крайне обескураживающий.

Итак, режимы работы:

  • Поиск target’ов (discovery)
  • Подключение к target’у
  • Работа с подключенным target’ом

Из этого списка вполне понятен жизненный цикл — сначала найти, потом подключиться, потом отключиться, потом снова подключиться. Open-iscsi держит сессию открытой, даже если блочное устройство не используется. Более того, он держит сессию открытой (до определённых пределов, конечно), даже если сервер ушёл в перезагрузку. Сессия iscsi — это не то же самое, что открытое TCP-соединение, iscsi может прозрачно переподключаться к target’у. Отключение/подключение — операции, которыми управляют «снаружи» (либо из другого ПО, либо руками).

Немного о состоянии. После discovery open-iscsi запоминает все найденные target’ы (они хранятся в /etc/iscsi/), другими словами, discovery — операция постоянная, совсем НЕ соответствующая, например, dns resolving). Найденные target можно удалить руками (кстати, частая ошибка — когда у open-iscsi, в результате экспериментов и настройки, пачка найденных target’ов, при попытке логина в которые выползает множество ошибок из-за того, что половина target’ов — старые строчки конфига, которые уже давно не существуют на сервере, но помнятся open-iscsi). Более того, open-iscsi позволяет менять настройки запомненного target’а — и эта «память» влияет на дальнейшую работу с target’ами даже после перезагрузки/перезапуска демона.

Блочное устройство

Второй вопрос, который многих мучает по-началу — куда оно попадает после подключения? open-iscsi создаёт хоть и сетевое, но БЛОЧНОЕ устройство класса SCSI (не зря же оно «я сказя»), то есть получает букву в семействе /dev/sd, например, /dev/sdc. Используется первая свободная буква, т.к. для всей остальной системы это блочное устройство — типичный жёсткий диск, ничем не отличающийся от подключенного через usb-sata или просто напрямую к sata.

Это часто вызывает панику «как я могу узнать имя блочного устройства?». Оно выводится в подробном выводе iscsiadm (# iscsiadm -m session -P 3).

Авторизация

В отличие от SAS/UWSCSI, ISCSI доступно для подключения кому попало. Для защиты от таких, есть логин и пароль (chap), и их передача iscsiadm’у — ещё одна головная боль для начинающих пользователей. Она может осуществляться двумя путями — изменением свойств уже найденного ранее target’а и прописываем логина/пароля в файле конфигурации open-iscsi.
Причина подобных сложностей — в том, что пароль и процесс логина — это атрибуты не пользователя, а системы. ISCSI — это дешёвая версия FC-инфраструктуры, и понятие «пользователь» в контексте человека за клавиатурой тут неприменимо. Если у вас sql-база лежит на блочном устройстве iscsi, то разумеется, вам будет хотеться, чтобы sql-сервер запускался сам, а не после минутки персонального внимания оператора.

Файл конфигурации

Это очень важный файл, потому что помимо логина/пароля он описывает ещё поведение open-iscsi при нахождении ошибок. Он может отдавать ошибку «назад» не сразу, а с некоторой паузой (например, минут в пять, чего достаточно для перезагрузки сервера с данными). Так же там контролируется процесс логина (сколько раз пробовать, сколько ждать между попытками) и всякий тонкий тюнинг самого процесса работы. Заметим, эти параметры довольно важны для работы и вам нужно обязательно понимать, как поведёт ваш iscsi если вынуть сетевой шнурок на 10-20с, например.

Краткий справочник

Я не очень люблю цитировать легконаходимые маны и строчки, так что приведу типовой сценарий употребения iscsi:

сначала мы находим нужные нам target, для этого мы должны знать IP/dns-имя инициатора: iscsiadm -m discovery -t st -p 192.168.0.1 -t st — это команда send targets.

iscsiadm -m node (список найденного для логина)
iscsiadm -m node -l -T iqn.2011-09.example:data (залогиниться, то есть подключиться и создать блочное устройство).
iscsiadm -m session (вывести список того, к чему подключились)
iscsiadm -m session -P3 (вывести его же, но подробнее — в самом конце вывода будет указание на то, какое блочное устройство какому target’у принадлежит).
iscsiadm — m session -u -T iqn.2011-09.example:data (вылогиниться из конкретной )
iscsiadm -m node -l (залогиниться во все обнаруженные target’ы)
iscsiadm -m node -u (вылогиниться из всех target’ов)
iscsiadm -m node —op delete -T iqn.2011-09.example:data (удалить target из обнаруженных).

mulitpath

Ещё один вопрос, важный в серьёзных решениях — поддержка нескольких маршрутов к источнику. Прелесть iscsi — в использовании обычного ip, который может быть обычным образом обработан, как и любой другой трафик (хотя на практике обычно его не маршрутизируют, а только коммутируют — слишком уж великая там нагрузка). Так вот, iscsi поддерживает multipath в режиме «не сопротивляться». Сам по себе open-iscsi не умеет подключаться к нескольким IP одного target’а. Если его подключить к нескольким IP одного target’а, то это приведёт к появлению нескольких блочных устройств.

Однако, решение есть — это multipathd, который находит диски с одинаковым идентифиатором и обрабатывает их как положено в multipath, с настраиваемыми политиками. Эта статья не про multipath, так что подробно объяснять таинство процесса я не буду, однако, вот некоторые важные моменты:

  1. При использовании multipath следует ставить маленькие таймауты — переключение между сбойными путями должно происходить достаточно быстро
  2. В условиях более-менее быстрого канала (10G и выше, во многих случаях гигабит) следует избегать параллелизма нагрузки, так как теряется возможность использовать bio coalesing, что в некоторых типах нагрузки может неприятно ударить по target’у.

Источник

Всем привет. Есть 4 пк с windows server 2012 и инициатором ISCSI, есть Qnap nas хранилище,с поднятым на нем таргетом iscsi (сервер). Луны созданы и распределены по машинам. Все хорошо работало,но на одной из машин пропал конечный объект(пусто). При попытке заново обнаружить целевой портал цели пишет: «ошибка целевого устройства». На все 4 пк установлены по 2-е сетевые карты. С проблемной машины пингы со всех сетевых интерфейсов проходят. Фаервол отключен. В чем может быть проблема?
Ошибка в логах есть: Не удалось выполнить обнаружение iSCSI через SendTargets, код ошибки 0xefff0012 для целевого портала


  • Вопрос задан

    более двух лет назад

  • 407 просмотров

  • Remove From My Forums
  • Question

  • Running 2 Windows Server 2008 R2 Servers and Microsoft iSCSi target software on one of the servers (Server A). Setup a target and Virtual Storage on Server A. Using Microsoft iSCSi initiator on both servers (Servers A and B). I can connect to target created
    on Server A with initiator on Server B. But I can’t connect to target on Server A with the initiator on Server A. If I use the IQN for the target on Server A with the initiator on Server A I get an error message that says «address cannot resolve to an ip address).
    If I use the IP address or FQDN for the target on Server A with the initiator on Server A I get a «target error message». The error log shows event ID 41 (WinTarget error, «The iSCSi target rejected a connection request from local computer»). Thought it might
    be the initiator so I downloaded the Starwind initiator client, but getting connection requests denied as well. All firewall settings and port 3260 seem fine. Any ideas on what’s stopping the iscsi initator on server A from connecting to the target on Server
    A?

Answers

  • Running 2 Windows Server 2008 R2 Servers and Microsoft iSCSi target software on one of the servers (Server A). Setup a target and Virtual Storage on Server A. Using Microsoft iSCSi initiator on both servers (Servers A and B). I can connect to target
    created on Server A with initiator on Server B. But I can’t connect to target on Server A with the initiator on Server A. If I use the IQN for the target on Server A with the initiator on Server A I get an error message that says «address cannot resolve to
    an ip address). If I use the IP address or FQDN for the target on Server A with the initiator on Server A I get a «target error message». The error log shows event ID 41 (WinTarget error, «The iSCSi target rejected a connection request from local computer»).
    Thought it might be the initiator so I downloaded the Starwind initiator client, but getting connection requests denied as well. All firewall settings and port 3260 seem fine. Any ideas on what’s stopping the iscsi initator on server A from connecting to the
    target on Server A?

    Microsoft iSCSI target does not support «loopback» connections. Upgrade to Windows Server 2012 (revision coming with it DOES support loopback) or use free StarWind iSCSI target as it does support loopback on any OS.

    -nismo

    • Proposed as answer by

      Sunday, June 10, 2012 5:36 PM

    • Marked as answer by
      dmcgill
      Monday, June 11, 2012 11:21 AM

Вопрос

По ошибке я ввел адрес целевого портала iSCSI в инициаторе iSCSI на одном из наших виртуальных серверов, который не имеет адреса в сетевом диапазоне, используемом для iSCSI. Это привело к появлению следующих ошибок/предупреждений в журнале событий:

До сих пор это было ожидаемым поведением, поэтому я удалил портал с инициатора iSCSI, как описано в MSKB 976072. Однако, ошибки/предупреждения продолжают появляться каждый час, несмотря на то, что ни iSCSI Initiator GUI, ни iscscli не показывают никаких порталов (или серверов iSNS):

Проблема сохраняется после перезагрузки сервера. Удаление устройства Microsoft iSCSI Initiator через devmgmt.msc, а также изменение параметров инициатора следующим образом:

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

Отключение устройства, конечно, предотвращает повторное появление ошибок/предупреждений, но я бы не хотел прибегать к этому.

Как я могу предотвратить появление этих ошибок и предупреждений (кроме отключения устройства-инициатора или переустановки сервера)? Чего мне не хватает?

Окружение: Виртуальная машина работает на кластере Hyper-V под управлением SCVMM 2012. Хосты и гости работают под управлением Windows Server 2008 R2 SP1. Физические машины представляют собой лезвия Dell PowerEdge M710HD.

Понравилась статья? Поделить с друзьями:
  • Инициализирован отчет об ошибке iommu что это
  • Инициализирован отчет об ошибке iommu windows 10 зависает
  • Иногда случаются ошибки это нормально песня
  • Инициализация программы photoshop невозможна ошибка диска
  • Иногда случаются ошибки на английском