Разное

Iscsi что это – Iscsi — Википедия

30.06.2017

Содержание

iSCSI и другие

Вступление

С появлением Fibre Channel и SAN, построенных на нем, мир storage сделал ставку на сетевой доступ к системам хранения. Практически все в один голос заявили, что за сетями хранения данных — будущее. На протяжении нескольких лет FC интерфейс оставался безальтернативным стандартом для их построения, но уже сегодня многие понимают, что наступает время перемен. В SAN на основе FC есть пара серьёзных недостатков — это цена и проблемы доступа к географически (на расстоянии больше сотен км) отдаленным устройствам. В последнее время возник ряд инициатив, которые находятся на этапе стандартизации и призваны решить или же обойти указанные проблемы. Интереснейшая из них — iSCSI.

Буквосочетание iSCSI все чаще попадает на страницы газет и проспекты ведущих производителей систем хранение данных. Загляните на ресурсы, посвященные storage, и вы обязательно его увидите. Но, просмотрев статьи и новости, вы скорее всего найдете массу абсолютно противоположных утверждений: одни преподносят iSCSI как неопровержимого лидера для сетей хранения данных уже в недалеком будущем, другие поставили на нем крест еще до его рождения.

Sun стала в оппозицию к ІP Storage

Sun стала в оппозицию к IP Storage. Sun Microsystems не будет выпускать систем хранения данных с доступом по IP. Марк Канепа, вице-президент Sun, ответственный за производство всех систем хранения данных, заявил на днях, что IP Storage был всего лишь «мечтой», сообщает Byte and Switch.

Канепа сказал, что «непрактично применять TCP/IP для организации SAN из-за большей задержки в таких сетях. Даже если у сетей хранения на основе IP есть будущее, то наступит оно через три-пять лет, а возможно, не наступит никогда. Поток от систем хранения данных не может работать поверх стека протоколов общего назначения, у него есть особые потребности. Технологические трудности внедрения TCP/IP намного более велики, чем многие думают. Именно поэтому мы в Sun делаем ставку на Fibre Channel», сказал он. До сих пор никто из производителей систем хранения данных не занимал столь четкой позиции против IP Storage. Конкуренты Sun, компании Hewlett-Packard и IBM, более или менее активно поддерживают эти технологии.

17 декабря, 2001: www.ustar.kiev.ua

HP обещает поддержку iSCSI

«Окончательная версия новой технологии должна появиться в первом квартале 2002 года, — сообщил руководитель подразделения систем сетевого хранения HP Марк Томпсон. Корпорация намеревается представить широкий спектр продуктов, которые поддерживают стандарт, іSCSI, предназначенный для объединения систем хранения в ІP-сетях…»

В HP признают, что пользователи систем Fibre Channel чувствуют себя достаточно комфортно и большее тяготеют к модернизованной технологии FCIP, чем к іSCSI. Но, в то же время, в HP верят, что опыт работы с решениями, основанными на протоколе ІP, и в особенности с Ethernet, сделает продукты іSCSI привлекательными для многих заказчиков.

Computerworld, #35/2001: «Федеративные системы хранения»

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

IBM TotalStorage IP Storage 200i обеспечивает прямое подключение накопителей Ethernet LAN. Эта высокоскоростная система хранения данных поддерживает новый промышленный стандарт iSCSI, что обеспечивает передачу SCSI протокола поверх IP.

Ну что ж, столь противоречивые сообщения не оставляют нам другого выбора кроме как разобраться самим и самостоятельно взвесить все «ЗА» или «ПРОТИВ».

iSCSI

«iSCSI (Internet Small Computer System Interface) — это протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами».

Определение SNIA — IP Storage Forum: www.snia.org

iSCSI описывает:

  • Транспортный протокол для SCSI, который работает поверх TCP
  • Новый механизм инкапсуляции SCSI команд в IP сети
  • Протокол для новой генерации систем хранения данных, которые будут использовать «родной» TCP/IP

Сразу возникает негодование, хочется все разложить по отдельным кучкам. Как говорил один мой преподаватель: «Котлеты отдельно, мухи отдельно». Дело в том, что правила доставки пакетов в IP и SCSI абсолютно противоположные. В IP пакеты доставляются получателю без соблюдения строгой последовательности, он же и восстанавливает данные, на что затрачиваются определенные ресурсы. В то же время, по спецификации SCSI, как канального интерфейса, все пакеты должны передаваться один за другим без задержки, а нарушение этого порядка приводит к потере данных. Несмотря на то, что, по мнению некоторых специалистов, эта проблема вносит неоднозначность в практическое использование технологии iSCSI, на сегодня уже реализован ряд устройств, которые подтверждают ее жизнеспособность. Инженеры, которые работали над iSCSI, смогли определенным образом решить эту проблему. Спецификация iSCSI требует увеличения размеров заголовка пакета. В заголовок включается дополнительная информация, которая значительно ускоряет сборку пакетов.

По мнению одного из болельщиков iSCSI, Хеймора, старшего системного инженера университета штата Юта, основным препятствием для распространения Ethernet как базовой технологии построения сетей хранения данных является относительно большое время задержки (близкое к 75 микросекундам), которое возникает из-за особенностей стека TCP/ІР. В High-End системах при одновременном обращении к тысячам файлов это может стать серьезной проблемой.

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

iSCSI развивается очень быстро. Потребность в новом стандарте ощущалась так сильно, что буквально за 14 месяцев с момента предложения по созданию iSCSI, с которым в феврале 2000 года выступила IETF, появилось достаточно много устройств, чтобы продемонстрировать возможности по их взаимодействию. В июле 2000-го был опубликован Draft 0 по iSCSI, который стал началом работ по реализации технологии. В январе 2001 года в рамках SNIA (Storage Networking Industry Association) был создан IP Storage форум, который через полгода уже насчитывал 50 членов, а в апреле этого же года был представлен продукт, который в скором времени выиграл награду «Enterprise Networking Product».

Что же такого замечательного в iSCSI, что он находит поддержку среди грандов компьютерной индустрии, не считаясь с существующими внутри стандартам противоречиями.

Некоторые из важнейших прикладных задач и функций, реализуемые с использованием систем хранения данных, это:

Задачи, которые эффективно реализуются современными методами:

    · Консолидация систем хранения данных · Резервирование данных · Кластеризация серверов · Репликация (дублирование) · Восстановление в аварийных ситуациях

Новые возможности, которые эффективно реализуются с использованием IP Storage:

    · Географическое распределение SAN · QoS · Безопасность

Вместе с этим, новые системы хранения данных, для которых iSCSI будет родным протоколом, сформируют еще массу преимуществ:

    · Обеспечивается единая технология для подсоединения систем хранения, серверов и клиентов в рамках LAN, WAN, SAN · Наличие значительного опыта индустрии в Ethernet и SCSI технологиях · Возможность значительного географического отдаления систем хранения · Возможность использовать средства управления TCP/IP сетями

Причем, для передачи данных на storage с интерфейсом iSCSI можно использовать не только носители, коммутаторы и маршрутизаторы существующих сетей LAN/WAN, но и обычные сетевые карточки на стороне клиента. Правда, при этом возникают значительные накладные расходы процессорной мощности на стороне клиента, который использует такую карточку. По утверждению разработчиков, программная реализация iSCSI может достичь скоростей среды передачи данных Gigabit Ethernet при значительной, до 100% загрузке современных CPU. В связи с чем, рекомендуется использование специальных сетевых карточек, которые будут поддерживать механизмы разгрузки CPU от обработки стека TCP. На момент написания статьи (Июнь 2002 года), такие карточки производила компания Intel.

Intel PRO/1000T IP Storage Adapter предлагается компанией Intel по цене 700USD за штуку. Это устройство содержит мощный процессор Xscale, 32M памяти и осуществляет передачу вычислений, связанных с протоколами iSCSI и TCP/IP, а также расчет контрольных сумм кадров TCP, IP на интегрированный процессор. Его быстродействие, согласно внутренним тестам компании, может достигать 500Mbit/s при 3-5% загрузке CPU host системы.

Давайте рассмотрим iSCSI повнимательней


Рисунок 1. IP сеть с использованием iSCSI устройств

В примере, изображенном на рисунке 1, каждый сервер, рабочая станция и накопитель поддерживают Ethernet интерфейс и стек протокола iSCSI. Для организации сетевых соединений используются IP маршрутизаторы и Ethernet коммутаторы.

С внедрением SAN мы получили возможность использовать SCSI протокол в сетевых инфраструктурах, обеспечивая высокоскоростную передачу данных на уровне блоков между множественными элементами сети хранения данных.

Internet Small Computer System Interface тоже обеспечивает блочный доступ к данным, но не самостоятельно, а поверх сетей TCP/IP.

Архитектура обычного SCSI базируется на «клиент»/«серверной» модели. «Клиент», например сервер, или рабочая станция, инициирует запросы на считывание или запись данных с исполнителя — «сервера», например системы хранения данных. Команды, которые выдает «клиент» и обрабатывает «сервер» помещаются в Command Descriptor Block (CDB). «Сервер» выполняет команду, а окончание ее выполнения обозначается специальным сигналом. Инкапсуляция и надежная доставка CDB транзакций между инициаторами и исполнителями через TCP/IP сеть и есть главная задача iSCSI, причем ее приходится осуществлять в нетрадиционной для SCSI, потенциально ненадежной среде IP сетей.

Перед вами модель уровней протокола iSCSI, которая дает возможность понять порядок инкапсуляции SCSI команд для передачи их через физический носитель.


Рисунок 2. Модель нижних уровней протокола iSCSI

iSCSI протокол осуществляет контроль передачи блоков данных и обеспечивает подтверждение достоверности завершения операции ввода/вывода. Что, в свою очередь, обеспечивается через одно или несколько TCP соединений.

іSCSI имеет четыре составляющие:

  • Управление именами и адресами (iSCSI Address and Naming Conventions).
  • Управление сеансом (iSCSI Session Management).
  • Обработка ошибок (iSCSI Error Handling).
  • Безопасность (iSCSI Security).
Управление именами и адресами
Так как iSCSI устройства являются участниками IP сети, они имеют индивидуальные Сетевые Сущности (Network Entity). Сетевая Сущность может содержать одних или несколько iSCSI Узлов.


Рисунок 3. Модель сетевых сущностей

iSCSI узел является идентификатором SCSI устройств (в Сетевой Сущности), доступных через сеть. Каждый iSCSI узел имеет уникальное iSCSI имя (длиной до 255 байт), которое формируется по правилам, принятым для обозначения узлов в Internet. Например: «fqn.com.ustar.storage.itdepartment.161». Такое название имеет удобную для восприятия человеком форму и может обрабатываться Сервером Доменных Имен (DNS). Таким образом, iSCSI имя обеспечивает корректную идентификацию iSCSI устройства вне зависимости от его физического местонахождения. В то же время, в процессе контроля и передачи данных между устройствами удобнее пользоваться комбинацией IP адреса и TCP порта, которые обеспечиваются Сетевым порталом (Network Portal). iSCSI протокол дополнительно к iSCSI именам обеспечивает поддержку псевдонимов, которые, как правило, отображаются в системах администрирования для удобства идентификации и управления администраторами системы.

Управление сеансом

iSCSI сессия состоит из фаз аутентификации (Login Phase) и фазы обмена (Full Feature Phase), которая звершается специальной командой.

Фаза аутентификации iSCSI аналогична процессу Fibre Channel Port Login (PLOGI). Она используется для того, чтобы согласовать разнообразные параметры между двумя Сетевыми Сущностями и подтвердить право доступа инициатора. Если фаза аутентификации iSCSI завершается успешно, исполнитель подтверждает login инициатору, иначе логин не подтверждается, а TCP соединение закрывается.

Как только login подтвердится, iSCSI сессия переходит к фазе обмена. Если было установлено более одного соединения TCP, iSCSI требует, чтобы каждая пара команда/ответ проходила через одно TCP соединение. Такая процедура гарантирует, что каждая отдельная команда считывания или записи будет осуществляться без необходимости дополнительно отслеживать каждый запрос по поводу его прохождения по разным потокам. Однако разные транзакции могут одновременно передаваться через разные TCP соединения в рамках одной сессии.


Рисунок 4. Пример iSCSI Write

В завершение транзакции инициатор передает/принимает последние данные, а исполнитель отправляет ответ, который подтверждает успешную передачу данных.

В случае необходимости закрыть сессию, используется команда iSCSI logout, которая передает информацию о причинах завершения сессии. Она также может передать информацию о том, какое соединение следует закрыть в случае возникновения ошибки соединения, чтобы закрыть проблемные TCP связи.

Обработка ошибок

В связи с высокой вероятностью возникновения ошибок при передаче данных в некоторых типах IP сетей, в особенности WAN реализациях, в которых может функционировать iSCSI, протокол предусматривает массу мероприятий по обработке ошибок.

Для того, чтобы обработка ошибок и восстановление после сбоев функционировали корректно, как инициатор, так и исполнитель должны иметь возможность буферизации команд до момента их подтверждения. Каждое конечное устройство должно иметь возможность выборочно восстановить утраченный или испорченный PDU в рамках транзакции для восстановления передачи данных.

Иерархия системы обработки ошибок и восстановление после сбоев в iSCSI включает:

  1. На наиболее низком уровне — определение ошибки и восстановление данных на уровне SCSI задачи, например, повторение передачи утраченного или поврежденного PDU.
  2. На следующем уровне — в TCP соединении, которое передает SCSI задачу, может произойти ошибка, а именно, TCP соединение может повредиться. В этом случае осуществляется попытка восстановить соединение.
  3. И наконец, сама iSCSI сессия может испортиться. Терминация и восстановление сессии, как правило, не требуется, если восстановление корректно отрабатывается на других уровнях, однако может произойти обратное. Такая ситуация требует закрытия всех TCP соединений, завершения всех задач, недовыполненных SCSI команд и перезапуска сессии через повторный login.
Безопасность

В связи с использованием iSCSI в сетях, где возможен несанкционированный доступ к данным, спецификация предусматривает возможность использования разнообразных методов для повышения безопасности. Такие средства шифрования, как IPSec, которые используют нижние уровни, не требуют дополнительного согласования, так как являются прозрачными для верхних уровней, в том числе для iSCSI. Для аутентификации могут использоваться разнообразные решения, например такие, как Kerberos, или обмен Частными Ключами, в качестве репозитария ключей может использоваться iSNS сервер.

Другие (iFCP, FCIP)

В рамках работы над сетевыми технологиями хранения данных в Internet Engineering Task Force (IETF) была создана рабочая группа IP Storage (IPS) по направлениям:

  • iSCSI (Internet Small Computer Systems Interface)
  • FCIP (Fibre Channel over TCP/IP)
  • iFCP (Internet Fibre Channel Protocol)
  • iSNS (Internet Storage Name Service)

А также, как уже отмечалось, в январе 2001 в рамках SNIA (Storage Networking Industry Association) был организован IP Storage форум. Сегодня форум включает три подгруппы: FCIP, iFCP, iSCSI. Каждая из которых представляет протокол, который находится под протекцией IETF.

FCIP — созданный на базе TCP/IP туннельный протокол, функцией которого является соединение географически отдаленных FC SAN без какого-либо влияния на FC и IP протоколы.

iFCP — созданный на базе TCP/IP протокол для соединения FC систем хранения данных FC сетей хранение данных, используя IP инфраструктуру совместно или вместо FC коммутационных и маршрутизирующих элементов.

iSCSI — рассматривается выше…

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


Рисунок 5. Блок-схема IP Storage сетей

Fibre Channel over IP

Наименее революционным из трех названых выше является протокол Fibre Channel over IP. Он не вносит практически никаких изменений в структуру SAN и в организацию самых систем хранения данных. Главная идея этого протокола — реализация возможности объединения географически отдаленных сетей хранения данных.

Вот так выглядит стек протокола FCIP:


Рисунок 6. Нижние уровни протокола FCIP

FCIP помогает эффективно решить задачу территориального распределения, и объединения SAN на больших расстояниях. Его основными преимуществами является то, что этот протокол полностью прозрачен для существующих FC SAN сетей и ориентирован на использование инфраструктуры современных MAN/WAN сетей. Таким образом, для обеспечения новой функциональности пользователям, которые ищут возможности связать между собою географически отдаленные FC SAN, будет нужен всего лишь FCIP шлюз и подключение к MAN/WAN сети. Географически распределенная SAN, построенная с помощью FCIP, воспринимается SAN устройствами как обычная FC сеть, а для MAN/WAN сети, к которой она подключенная, она представляет обычный IP трафик.

Draft стандарт рабочей группы IETF IPS — FCIP определяет:

  • правила инкапсуляции FC кадров для передачи через TCP/IP;
  • правила использования инкапсуляции для создания виртуальной связи между FC устройствами и элементами FC сети;
  • окружение TCP/IP для поддержки создания виртуальной связи и обеспечение тунелирования FC трафика через IP сеть, включая безопасность, целостность данных и вопрос скорости передачи данных.

Среди прикладных задач, которые можно качественно решить с использованием FCIP протокола: удаленное резервирование, восстановление данных и общий доступ к данным. При использовании высокоскоростных MAN/WAN коммуникаций можно также с успехом применять: синхронное дублирование данных и общий распределенный доступ к системам хранения данных.

iFCP

Internet Fibre Channel Protocol — это протокол, который обеспечивает передачу FC трафика поверх TCP/IP транспорта между шлюзами iFCP. В этом протоколе, транспортный уровень FC замещается транспортом IP сети, трафик между FC устройствами маршрутизируется и коммутируется средствами TCP/IP. Протокол iFCP предоставляет возможность подключать существующие FC системы хранения данных к IP сети с поддержкой сетевых сервисов, которые нужны этим устройствам.

Стек протокола iFCP имеет такой вид:


Рисунок 7. Нижние уровни протокола iFCP

iFCP, согласно спецификации:

  • накладывает кадры FC для их транспортирования на предварительно определенное TCP соединение;
  • FC сервисы передачи сообщений и маршрутизации перекрываются в шлюзовом устройстве iFCP, таким образом, сетевые структуры и компоненты FC не сливаются в общую FC SAN, а управляются средствами TCP/IP;
  • динамично создает IP туннели для FC кадров

Важной особенностью iFCP является то, что этот протокол обеспечивает FC device-to-device связь (связь между устройствами) через IP сеть, которая является значительно более гибкой схемой, если сравнивать ее со связью SAN-to-SAN. Так, например, если iFCP имеет TCP связь между парами портов N_Port двух FC устройств, такая связь может иметь свой собственный уровень QoS, который будет отличаться от уровня QoS другой пары FC устройств.

Заключение

Подводя итоги, хочется выразить свою твёрдую уверенность в том, что Fibre Channel в ближайшее время никуда не исчезнет, рынок FC SAN будет расти и развиваться. В то же время, IP Storage протоколы предоставят возможность эффективно использовать сети хранения данных в тех прикладных задачах, для которых FC не может обеспечить эффективной реализации. Используя протоколы FCIP и iFCP, сети хранения данных станут географически распределенными. А внедрение iSCSI в свою очередь, даст возможность использования преимуществ SAN в сферах, которые до сих пор остаются нереализованными, или реализуются неэффективно в рамках распространенных сегодня технологий.

P.S.

Бурное развитие сетей хранения данных стало основой формирования концепции World Wide Strorage Area Network. WWSAN — всемирная сеть хранения данных и предусматривает создание инфраструктуры, которая обеспечит высокоскоростной доступ и хранение данных, распределенных по всему миру. Концепция очень близкая к существующей сегодня WWW, но имеет в своей основе другие сервисы. Одним из оригинальных примеров является обслуживание «менеджера», который ездит по всему миру с презентациями. WWWSAN предусматривает прозрачное перемещение «мобильных» данных вслед за персональным перемещением их собственника по всему миру. Таким образом, где бы ни находился «менеджер», он всегда будет иметь возможность получить высокоскоростной доступ к нужным ему данным, работа с которыми не будет требовать сложной, временами очень неэффективной синхронизации через WWW.

Можно с уверенностью утверждать, что концепция построения всемирной сети хранения данных идеально вписывается в развитие современных технологий IP Storage.

Термины и сокращения:
  • SAN — Storage Area Network, Сеть Хранения Данных
  • CDB — command descriptor block, протокол дескриптора (описания) команды.
  • PDU — Protocol Data Unit протокольная единица обмена, модуль данных протокола.
  • QoS — сокр. от Quality of Service качество и класс предоставляемых услуг передачи данных (обычно описывает сеть в терминах задержки и полосы сигнала).
  • SNIA — Storage Networking Industry Association, ассоциация индустрии сетевых систем хранения данных.
  • DNS — Domain Name Server, сервер доменных имен.
  • PLOGI — Fibre Channel Port Login.
  • iSCSI — Internet Small Computer Systems Interface
  • FCIP — Fibre Channel over TCP/IP
  • iFCP — Internet Fibre Channel Protocol
  • iSNS — Internet Storage Name Service
  • WWSAN — World Wide Strorage Area Network, всемирная сеть хранения данных
Литература:
  • «SAN после Fibre Channel», — Лукас Мериан. 12.02.2002: Computerworld, #05/2002;
  • IP Storage Tutorial, — SNIA;
  • iSCSI Technical White Paper, — SNIA;
  • Internet Fibre Channel Protocol (iFCP) — A Technical Overview, — SNIA;
  • Storage Forum, — HP EMEA, 12-13 июня 2002 года.

Данную статью можно также прочитать в журнале «Сети и Телекоммуникации» №6, 2002

www.ixbt.com

Сетевое хранилище на iSCSI, что это такое?

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

19″ системы обычно не обладают достаточным пространством, чтобы вместить дополнительные жёсткие диски. В результате появляется единственная альтернатива: подключение к серверу отдельных 19″ хранилищ по интерфейсу SCSI или Fiber Channel. Однако при этом мы всё равно смешиваем серверные задачи и функции хранения данных.

И большие серверные корпуса с дополнительными отсеками для жёстких дисков тоже не назовёшь идеальным выходом — опять же, получаем смесь задач.

Согласитесь, что идеальное хранилище должно быть очень гибким. Таким, чтобы его можно было легко развернуть, использовать из многих участков сети, из разных операционных систем и, конечно, можно было легко расширять. Да и производительность не стоит упускать из внимания. Ответом на все поставленные вопросы можно назвать iSCSI — Internet SCSI. Это решение «упаковывает» протокол SCSI в пакеты TCP/IP, в результате чего вы получаете универсальный интерфейс хранилища для всей сетевой инфрастуктуры. Кроме того, iSCSI позволяет консолидировать текущие системы хранения.

Как работает iSCSI?


На диаграмме показан принцип работы iSCSI. Подсистемы хранения должны использовать существующую сетевую инфрастуктуру, независимо от серверов. Консолидация систем хранения, которую мы упоминали выше, означает лишь то, что хранилище должно быть доступно с любого сервера, обеспечивая минимизацию затрат на управление. Кроме того, можно добавлять дополнительную ёмкость и к существующим системам.

Преимуществ у такого подхода много, и они довольно очевидны. Во многих корпорациях уже развёрнута эффективная сетевая инфраструктура, часто использующая проверенные временем технологии типа Ethernet. Никаких новых технологий для использования iSCSI или других систем типа SAN (Storage Area Networks) внедрять и тестировать не нужно. Конечно, здесь можно сэкономить и на дорогих специалистах по внедрению.

В целом, управлять клиентами и серверам iSCSI после небольшого обучения сможет любой сетевой администратор. Ведь iSCSI развёртывается на существующей инфраструктуре. Кроме того, iSCSI отличается высокой доступностью, так как серверы iSCSI можно подключать к нескольким коммутаторам или сетевым сегментам. Наконец, архитектура изначально отличается высокой масштабируемостью благодаря технологиям коммутации Ethernet.

В принципе, сервер iSCSI может быть реализован как программно, так и аппаратно. Но из-за высокой нагрузки программного решения на процессор лучше всё же придерживаться последнего варианта. Основная нагрузка на сервер iSCSI заключается в инкапсуляции пакетов SCSI в пакеты TCP/IP, причём всё должно выполняться в реальном времени. Понятно, что в программном сервере все эти задачи будет выполнять центральный процессор, а в аппаратном решении — специальные движки TCP/IP и SCSI.

Благодаря клиенту iSCSI, ресурсы хранилища iSCSI-сервера могут быть интегрированы в клиентскую систему в виде устройства, которое по смыслу близко к локальному жёсткому диску. Здесь большим преимуществом по сравнению с привычными общими сетевыми папками (share) будет высокая безопасность. Ведь iSCSI особо подчёркивает правильную аутентификацию пакетов iSCSI, а по сети они передаются в шифрованном виде.

Конечно, вы получите производительность несколько меньше, чем у локальных систем SCSI — ведь сеть вносит свои задержки. Впрочем, современные сети с пропускной способностью до 1 Гбит/с (128 Мбайт/с) уже обеспечивают достаточную скорость, но большая часть её так и не используется.

Каждому узлу iSCSI присваивается своё имя (длиной, максимум, до 255 байт) и псевдоним (короткое имя), которые не зависят от IP-адреса. Таким образом, доступ к хранилищу будет обеспечен даже после его переноса в другую подсеть.

iSCSI в деле

Конечно, не считая сеть, основным требованием для внедрения iSCSI является организация iSCSI-сервера. Мы протестировали несколько решений как программных так и аппаратных.

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

В принципе, iSCSI можно использовать и на 100-Мбит/с сети, но тогда, по сравнению с локальными приводами, вы получите существенное замедление. Естественно, гигабитный Ethernet является куда более эффективным решением — вряд ли пропуская способность станет «узким местом» даже при использовании нескольких массивов RAID 5. В то же время, это нельзя сказать про массивы RAID 0, но подобное хранилище редко подключается по сети.

Если обратиться к клиенту, то здесь необходим инициатор iSCSI. Они выпущены практически для всех операционных систем. Поиск в Google комбинации слов «Microsoft», «iSCSI» и «Initiator» является наглядным тому примером.

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

Протокол iSCSI обеспечивает шифрование пакетов на основе IPsec, хотя оно не является обязательным. К примеру, внутри сети корпорации не всегда имеет смысл шифровать пакеты. Подобная опция будет наиболее интересна для WAN.

Дополнительные применения

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

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

Нагрузка iSCSI

Если решение iSCSI реализовано программно, то сетевому адаптеру придётся передавать немалые данные. Поскольку обычные сетевые адаптеры не всегда используют различные технологии аппаратного ускорения, часть нагрузки может перелагаться на центральный процессор. SCSI — это блочный протокол, а Ethernet — пакетный. То есть немало нагрузки будет относиться к инкапсулированию и извлечению информации SCSI из пакетов TCP/IP. Подобная задача способна «под завязку» загрузить даже современный процессор.

Для решения проблемы были разработаны специальные движки TOE (TCP/IP Offload Engines), которые берут на себя все сложные операции iSCSI сразу же после сетевого адаптера. В результате снижается нагрузка на системный процессор, и пользователи и система могут продолжать нормально работать.

Надеюсь теперь стало чуть более понятно что такое сетевые хранилища на iSCSI и как они устроены.

itew.ru

Бездисковая загрузка по технологии iSCSI / Habr

Начну из далека. Как часто вы встречаете организации использующие «Подключение к удаленному рабочему столу» как основной способ работы в офисе? Я стал встречать такие все чаще и мое личное мнение — это удобно! Удобно для сотрудников, удобно для системных администраторов, а самой компании это позволяет сократить IT расходы. А нередко это даже необходимость для комфортной многопользовательской работы в некоторых программах (пример — ПО 1С).

А как часто вы видите что в качестве клиентов используются обычные себе полноценные ПК, иногда даже вполне производительные и для локальной работы.

Разговор будет о замечательной технологии iSCSI, и как мы её можем использовать чтобы уменьшить совокупную стоимость владения, и поможет тем кто хочет познакомиться с технологией поближе.

Вики гласит:
iSCSI (англ. Internet Small Computer System Interface) — протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами.

Для понимания происходящего определимся с терминологией:

iSCSI Target: (Цель iSCSI) — программа или аппаратный контроллер (HBA), осуществляющие эмуляцию диска и выполняющие запросы iSCSI. подробнее

iSCSI Initiator: (Инициатор iSCSI) — Клиентская программа или аппаратный контроллер, который взаимодействует с iSCSI Target.

IQN: (iSCSI Qualified Name) — Уникальный идентификатор (имя) iSCSI Target’a или iSCSI Initiator’а.

LUN: (Logical Unit Number) — Адрес блочного устройства в диапазоне 0-127. подробнее

Инициатор iSCSI

Прелесть в том, что Windows 7, Windows Server 2008 и всё что старше умеют устанавливаться напрямую на iSCSI target. Проблема только в том, как инициализировать удаленное блочное устройство при включении ПК.
Все современные сетевые карты умеют работать по технологии PXE, а вот с iSCSI дружат только дорогущие серверные сетевые карты например intel

Однако есть как минимум два знакомых мне open source проекта gPXE и iPXE, последний, к слову, форк первого, с немного доработанной системой вывода ошибок и несколькими дополнительными опциями.

Лично я использую gPXE, я его нашел первым, к тому-же у них на сайте есть очень удобный генератор rom-o-matic

Есть много способов как загрузиться через gPXE. Для рабочего варианта я вшивал её ROM вместо PXE загрузчика в BIOS метеринки. Рисковый вариант, можно остаться без материнки, забегая вперед это позволит уменьшить время загрузки на ~ 10 сек.

Расскажу лучше о простом и безопасном для оборудования способе под названием PXE chainloading подробно (англ.) . Суть такова — с помощью PXE загрузчика загружаем gPXE, который в свою очередь выступает iSCSI инициатором и передает управление диску. Для этого нам нужен TFTP сервер (я не стал прибегать к стороннему софту, сделал как тут) и правильная настройка DHCP сервера.
Вот так выглядит DHCP параметры у меня:

Обратите внимание на параметр «175 gPXE_Options», инкапсулированное значение «08 01 01 ff» означает опцию keep_san = 1, которая заставляет gPXE не удалять регистрацию диска в случае неудачной загрузки с него (это необходимо для установки операционной системы).

В параметре «017 Корневой путь» самый просто синтаксис будет iscsi:<Айпи iSCSI target>:::::<IQN цели>

Настройки iSCSI инициатора на этом закончены.

Цель iSCSI

В качестве цели я использовал Microsoft iSCSI Software Target 3.3

Настройки цели крайне простые и интуитивные.

Создаём новое или импортируем существующий VHD диск:

Далее создаём цель:

Добавляем созданный или импортированный ране диск:

На этом настройка цели почти закончена. Осталось только добавить IQN(или любой другой тип индификатора: MAC, IP) инициатора(ов) который имеет доступ к этой цели.

Если после этого при загрузке клиентского ПК в gPXE промелькнут надписи:
Registered as BIOS drive 0x80
Booting from BIOS drive 0x80
Значит у нас получилось. И можно приступать к установке ОС.

Установка ОС или Epic Fail

Уже с ностальгией вспоминаю тот момент, когда первый раз я дошел до этого этапа и… поначалу меня постигало кучу разочарований. Забегая вперед скажу, что причиной многому была неудачная материнская плата GYGABYTE GA-425TUD.

Что же я увидел когда дошел до пункта выбора диска? Верно. Ничего. Подумал, ага, надо подгрузить сетевые драйвера. Аномально долгий поиск ~ 30 — 40 минут на пустой флешке, куда были переписаны исключительно дрова для нужной сетевухи, заставлял меня думать что ОС виснет и раз 5-10 я так и не дожидался окончания поиска, выключал, перезагружал, менял опции gPXE. Так сложилось, что однажды я таки дождался пока драйвера были найдены, и радовался как ребенок обнаружив что в меню выбора появился так желанный мне диск.
Радость тут-же омрачилась тем что ОС сообщила мне о невозможности установиться на этот диск и любезно попросила меня проверить включен ли в моём BIOS контроллер этого диска.

Решение было найдено довольно быстро вот тут в самом низу. Если коротко то ребята советовали включать/выключать SATA контроллер, менять режим его работы IDE, ACHI и даже попробовать подключить реальный диск на время установки, но установку проводить на iSCSI диск. Для меня сработало подключение реального диска в режиме ACHI. Теперь установка пошла на iSCSI диск без проблем. Однако после перезагрузки ОС (один из этапов установки) я постоянно ловил BSOD на classpnp.sys.

Причина до сих пор мне не совсем понятна.
Большими усилиями была найдена зацепка

Решением стало отключение LWF фильтра в ОС на сетевухе.

Открываем HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
Находим и открываем подпапку для NIC (eg. 0007)
Открывает подпапку Linkage
Редактируем FilterList. Удаляем линию которая ссылается на LWF driver UUID {B70D6460-3635-4D42-B866-B8AB1A24454C}. В моём случае это бала вторая линия.
До:
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B5F4D659-7DAA-4565-8E41-BE220ED60542}-0000
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B70D6460-3635-4D42-B866-B8AB1A24454C}-0000
После:
{158B0494-2576-4DE5-9E32-98DB9E177DD8}-{B5F4D659-7DAA-4565-8E41-BE220ED60542}-0000

В этом варианте у меня заработало даже на проблемной материнке.
После этого я пробовал еще 2 или 3 материнки, установка проходила гладко изначально (нужно было лишь подгрузить сетевые драйвера).

Тесты


Интересно на сколько будет заметно что мой HDD где-то там в 100 метрах от меня? На глаз вообще не отличить! Но я даже не надеялся что вы поверите моему глазу по этому приведу результаты тестов.
Наши герои:

Seagate ST500DM002 — будет работать локально, как у людей ;D
iSCSI SSD Patriot 128 PYROSE — на сервере, будет работать через iSCSI, сетевой канал 1ГБ.
iSCSI RAID 10 4xSeagate ST500DM002 — на сервере, будет работать через iSCSI, сетевой канал 1ГБ.
(Локальный)Seagate ST500DM002


iSCSI SSD Patriot 128 PYROSE


iSCSI RAID 10 4xSeagate ST500DM002


Свод и выводы


На мой взгляд вполне заслуживающая внимания технология, как видно из тестов даже на 1ГБ сети имеет хороший КПД. При текущих ценах на HDD позволит экономить как минимум 2500р с рабочей станции и облегчает задачу резервирования данных. У меня в организации все сотрудники работают в терминале, еще вот открыли учебный класс на 8 рабочих мест, именно там в качестве теста я и внедрял эту технологию.

С радостью отвечу на вопросы.

habr.com

Ускорьте работу хранилища NAS с помощью iSCSI | Мир ПК

Marco Chiappetta. Speed Up Your NAS Device With iSCSI. PC World, September 2012, c. 86.

Хотите обращаться к сетевой системе хранения чуть быстрее? Испытайте способ, основанный на использовании встроенного инструмента Windows. Протокол iSCSI позволяет подключаться к удаленному тому хранения по Сети так, словно тот является локальным диском.

Аббревиатура iSCSI расшифровывается как Internet Small Computer System Interface. Технология SCSI (без i) уже очень давно используется для подключения различных периферийных устройств к компьютерным системам, но чаще всего с ее помощью осуществляется обмен данными с устройствами хранения — жесткими дисками или ленточными накопителями. Протокол iSCSI позволяет подсоединяться к удаленному тому хранения по Сети так, словно тот является локальным диском. Проще говоря, iSCSI транслирует команды SCSI по сетям IP (Internet Protocol). Данная технология напоминает виртуальный кабель SATA (или SCSI), причем для организации связи между системой и томом хранения используется сетевое соединение.

Чем же отличается iSCSI от любого другого подсоединенного по Сети накопителя с присвоенной ему буквой? Во многом конечные результаты будут аналогичны. Но, благодаря iSCSI, подключаемый том для операционной системы выглядит, как локальное блочное устройство хранения, которое можно отформатировать в стандарте любой файловой системы по своему выбору.

Интерфейсу iSCSI нужны два основных компонента: подсоединяемое к Сети устройство хранения (network-attached storage, NAS) или сервер с томом, сконфигурированным в качестве целевого объекта iSCSI, и инициатор iSCSI, позволяющий подключать систему к целевому объекту.

Если у вас имеется устройство NAS, подсоединенное к ПК, работающему в среде Windows, скорее всего, этого окажется вполне достаточно. Фактически все серверы NAS предлагают возможность настройки конфигурации целевых объектов iSCSI. А у Microsoft в каждой версии Windows, начиная с Vista, имеется инструмент для создания инициатора iSCSI. Инициатор можно запускать на компьютере с версией операционной системы не ниже Windows 2000.

Чтобы продемонстрировать принципы работы технологии iSCSI, возьмем сервер NAS с двумя накопителями Thecus N2200XXX, на котором запущена адаптированная версия ОС Linux с поддержкой iSCSI, и настольную систему под управлением Windows 7 Максимальная. Любая система, работающая в среде Windows, при взаимодействии с системой NAS создает устройство, поддерживающее iSCSI.

iSCSI — достоинства и недостатки

Как уже отмечалось выше, сетевой целевой объект iSCSI представлен в системе в виде локального диска. Поэтому можно не только отформатировать его в стандарте файловой системы ОС своего компьютера, но и обеспечить с тома iSCSI запуск приложений, которым требуется локальный диск. Такая гибкость очень важна для малого бизнеса, потому что многие программы не умеют работать в сетях. Технология iSCSI помогает разрешить данную проблему.

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

Следует отметить, что технологии iSCSI присущи определенные недостатки. Установка системы не слишком сложна, однако для настройки целевого объекта и инициатора iSCSI одного лишь поиска сетевых ресурсов будет недостаточно. Чтобы избежать повреждения или потери данных, к целевому объекту одновременно следует подключать только один инициатор. Если вы используете высокопроизводительные серверы и дисковые накопители, производительность окажется ограничена скоростью сетевого соединения. Поэтому оптимальным выбором представляется подключение на гигабитных скоростях и выше — медленные сетевые соединения могут нивелировать все преимущества iSCSI.

 

Установка

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

1. Войдите в меню конфигурации сервера NAS, выберите режим RAID и зарезервируйте пространство для тома iSCSI. Я использовал зеркалирование RAID 1 с двумя накопителями емкостью по 2 Тбайт. Одна половина имеющейся емкости была выделена под файловую систему EXT4, а другая осталась неиспользованной. (На третьем этапе неиспользуемая емкость была отведена для iSCSI.)

 

2. После выделения пространства для RAID его нужно отформатировать. Когда процесс форматирования завершится (в зависимости от конфигурации накопителя продолжительность этой процедуры может занимать несколько часов), можно приступать к выделению неиспользуемого пространства для целевого объекта iSCSI. (Если же все доступное пространство будет зарезервировано для iSCSI, не нужно форматировать дисковый массив на данном этапе.)

 

3. Теперь настроим конфигурацию целевого объекта iSCSI. Сначала я щелкнул мышью на ссылке Space Allocation в меню Storage, находящемся на левой панели, а затем нажал кнопку Add на вкладке iSCSI target. На экране появилось новое окно, в котором нужно выбрать желаемый размер целевого объекта iSCSI, активизировать его и присвоить ему имя.

А если вы желаете добавить еще один уровень безопасности, на этом же этапе можно настроить параметры протокола CHAP (Challenge Handshake Authentication Protocol).

4. Если все имеющееся пространство решено не выделять одному целевому объекту iSCSI, можно присвоить нескольким целевым объектам логические идентификаторы LUN (Logical Unit Number). Это позволит подключать несколько систем к одному устройству NAS или серверу, а каждая клиентская система получит свой собственный целевой объект iSCSI.

 

Настройка целевого объекта

После того как целевой объект iSCSI создан, необходимо подключиться к нему через инициатор iSCSI на клиентском ПК с операционной системой Windows. Щелкните мышью на кнопке «Пуск», наберите в поисковой строке iSCSI и нажмите клавишу (или перейдите в меню «Пуск» к Панели управления и в разделе «Система и безопасность» выберите пункт «Администрирование», а затем — «Инициатор iSCSI»). Если на экране появится сообщение о том, что служба iSCSI не работает, разрешите ее запуск, после чего на экране отобразится окно свойств инициатора iSCSI.

Тест CrystalDiskMark показал, что целевой объект iSCSI выполняет операции чтения на 40% быстрее подключенного сетевого диска

 

Перейдите на вкладку «Обнаружение» и нажмите кнопку «Обнаружить портал». В открывшемся окне введите IP-адрес устройства NAS или сервера, на котором размещается целевой объект iSCSI. Номер порта изменять не нужно (если ранее номер порта iSCSI не определялся). По умолчанию система предлагает порт 3260. Если ранее вы разрешили проведение аутентификации CHAP, следует нажать кнопку «Дополнительно» и ввести учетную информацию CHAP. В противном случае нажмите кнопку OK, и IP-адрес вашего устройства NAS или сервера появится в списке конечных порталов.

Если целевого объекта в этом списке нет, убедитесь в том, что IP-адрес введен правильно, а нужный порт на межсетевом экране открыт.

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

В клиентской системе, подключенной к целевому объекту iSCSI, нужно отформатировать целевой объект с использованием той же процедуры, которую вы проделываете с любым локальным диском. Нажмите кнопку «Пуск», щелкните правой кнопкой мыши на пункте «Компьютер» и выберите из контекстного меню пункт «Управление». В разделе «Запоминающие устройства» окна утилиты «Управление компьютером» щелкните на ссылке «Управление дисками». На экране появится диалоговое окно «Инициализация диска». Убедитесь в том, что опция «Выбор диска» установлена и укажите нужный тип раздела (я использовал MBR — Master Boot Record). Нажмите OK.

Следуя подсказкам, отображаемым на экране, укажите размер тома, присвойте диску букву и укажите файловую систему и метку тома. Нажмите кнопку «Завершить». По завершении форматирования появится новая буква накопителя. Теперь можно переносить файлы и запускать программы с накопителя NAS независимо от того, где он находится.

 

Сравнение производительности

Чтобы оценить производительность используемого удаленного накопителя NAS, подключенного через интерфейс iSCSI, я сравнил целевой объект iSCSI со стандартным подключенным сетевым накопителем с помощью двух тестовых программ.

Тест ATTO Disk Benchmark особой разницы между подключенным сетевым диском и устройством iSCSI не выявил, хотя диск и продемонстрировал чуть более высокую пропускную способность. Впрочем, это относительно легкий тест, оценивающий только последовательную запись данных.

В тесте ATTO целевой объект iSCSI (его результаты представлены на графике) и сетевой диск продемонстрировали примерно одинаковую производительность

 

А вот тест CrystalDiskMark анализирует работу устройств в режиме как последовательного, так и произвольного доступа, оперируя двумя файлами разного объема. По его результатам, целевой объект iSCSI продемонстрировал существенно более высокое быстродействие. Скорость записи у устройства iSCSI и стандартного подключенного сетевого диска оказалась одинаковой, зато операции чтения через интерфейс iSCSI выполнялись на 30—40% быстрее.

Как показало тестирование, доступ к устройству NAS и форматирование его по образу и подобию локального диска, а также возможность запуска программ — не единственные преимущества, предоставляемые технологией iSCSI. Она обеспечивает еще и ускорение выполнения операций чтения. Таким образом, если вы имеете дело с устройствами NAS дома или в офисе, iSCSI позволит существенно (и совершенно бесплатно) повысить их производительность.

www.osp.ru

ISCSI — это… Что такое ISCSI?

iSCSI

Протокол iSCSI (Internet Small Computer System Interface) — это протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами.

iSCSI описывает:

  • Транспортный протокол для SCSI, который работает поверх TCP.
  • Новый механизм инкапсуляции SCSI команд в IP сети.
  • Протокол для нового поколения систем хранения данных, которые будут использовать «родной» TCP/IP.

Протокол iSCSI является стандартизованным по RFC 3720. Существует много коммерческих и некоммерческих реализаций этого протокола.

Системы на основе iSCSI могут быть построены на любой достаточно быстрой физической основе, поддерживающей протокол IP, например Gigabit Ethernet или 10G Ethernet. Использование стандартного протокола позволяет применять стандартные средства контроля и управления потоком, а также существенно уменьшает стоимость оборудования по сравнению с сетями Fibre Channel.

Архитектура

ISCSI — клиент-серверная архитектура. Сервер (принимающий запросы) называется iSCSI target, клиент — iSCSI initiator.

Сервер (target) может быть реализован как программно, так и аппаратно. Программная реализация принимает запросы по сети, обрабатывает их, читает (записывает) нужные данные на носитель, отдаёт информацию (результат) обратно по сети. Так как эти операции при высокой интенсивности запросов занимают существенное время процессора, были созданы аппаратные iSCSI HBA (адаптеры), которые совмещают в себе сетевую карту Ethernet и SCSI-контроллер.

iSCSI работает на блочном уровне. Объектом, к которому предоставляется доступ, является область данных, интерпретируемая инициатором как блочное устройство (диск). Доступ является монопольным (за исключением специально рассчитанных на это файловых систем и файловых систем в режиме «только для чтения»). Обязанность создавать и обслуживать файловую систему возлагается на инициатора; сервер (цель, target) лишь обслуживает низкоуровневые запросы, аналогичные запросам, которые обслуживает драйвер диска при работе с локальными дисками.

Для адресации по сети и клиент и сервер имеют свои адреса, которые должны быть уникальными.


Адрес может иметь один из двух видов: iqn и eui.

  • iqn-адрес (англ. iSCSI Qualified Name, квалифицированное iSCSI-имя) — …
  • eui (IEEE EUI-64 format)…

Для iqn используется (в теории, см ниже) следующий формат адреса имени:

iqn.2001-04.com.example:storage.tape1.sys1.xyz
 ~ ~~ ~
 1      2        3               4 
  1. iqn — указание на тип
  2. Дата регистрации доменного имени в формате год-месяц (ГГГГ-ММ)
  3. Доменное имя в реверсивной форме (org.wikimedia.commons для commons.wikimedia.org)
  4. Заданное (в пределах домена) имя ресурса в произвольной форме. Отделяется от первых трёх частей двоеточием.

Ben Rockwood в руководстве «A Quick Guide to iSCSI on Linux» пишет, что он не знает инициаторов, которые бы действительно использовали бы DNS для разрешения имени цели (target) из iqn; в большинстве случаев IP-адрес (доменное имя) сервера запрашивается отдельно, а весь iqn используется как единая строка идентификации ресурса[1].

Для обнаружения списка доступных устройств на iSCSI цели (сервере) используется технология обнаружения (discovery, auto-discovery). Это сервис, слушающий на порте tcp (обычно, 3260) запросы клиентов и отдающий им список доступных целей. Такой сервис называют порталом (англ. portal).

Помимо порталов, для поиска доступных целей может так же использоваться iSNS (Internet storage name service).

Дополнительно, iSCSI поддерживает multipath.

Примеры реализаций

Инициаторы (клиенты)

Присутствует в стандартной сборке Linux с версии 2.6.16.

Программный сервер (target)

Также существует монолитный проект на основе BSD — OpenNAS,

На основе FreeBSD 7.2 сделан FreeNAS (может выступать как в качестве target, так и initiator). Сайт проекта FreeNAS

Аналог FreeNAS, но на основе Linux — проект Openfiler (также может выступать как в качестве target, так и initiator)

Преимущества

  • Консолидация систем хранения данных
  • Резервирование данных
  • Кластеризация серверов
  • Репликация
  • Восстановление в аварийных ситуациях
  • Географическое распределение SAN
  • QoS
  • Безопасность

Недостатки

…основным препятствием для распространения Ethernet как базовой технологии построения сетей хранения данных является относительно большое время задержки (близкое к 75 микросекундам), которое возникает из-за особенностей стека TCP/ІР. В High-End системах при одновременном обращении к тысячам файлов это может стать серьёзной проблемой.

Ссылки

Источники

Linux iSCSI HOWTO


Ошибка цитирования Для существующего тега <ref> не найдено соответствующего тега <references/>

dic.academic.ru

ISCSI — Википедия. Что такое ISCSI

Материал из Википедии — свободной энциклопедии

iSCSI (англ. Internet Small Computer System Interface) — протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами.

iSCSI описывает:

  • Транспортный протокол для SCSI, который работает поверх TCP.
  • Механизм инкапсуляции SCSI команд в IP сети.
  • Протокол для нового поколения систем хранения данных, которые будут использовать «родной» TCP/IP.

Протокол iSCSI является стандартизованным по RFC 3720. Существует много коммерческих и некоммерческих реализаций этого протокола.

Системы на основе iSCSI могут быть построены на любой достаточно быстрой физической основе, поддерживающей протокол IP, например Gigabit Ethernet или 10G Ethernet. Использование стандартного протокола позволяет применять стандартные средства контроля и управления потоком, а также существенно уменьшает стоимость оборудования по сравнению с сетями Fibre Channel.

Примеры реализаций

Инициаторы (клиенты)

Присутствует в стандартной сборке Linux с версии 2.6.16.

Также существует монолитный проект на основе BSD — OpenNAS,

На основе FreeBSD 7.2 сделан FreeNAS (может выступать как в качестве target, так и initiator).[1]

Аналог FreeNAS, но на основе Linux — проект Openfiler (также может выступать как в качестве target, так и initiator). Состояние проекта неясно, никто из разработчиков не объявил о его закрытии, но версия не обновлялась с 2008 года.[2]

Отколовшийся от FreeNAS (после покупки последнего компанией iXsystems) форк NAS4Free на FreeBSD обновленной до версии 9.1.[3]

Также реализация хранилищ данных с использованием iSCSI выполнена в продуктах:

  • Nexenta (доступна бесплатная версия Nexenta Community Edition)
  • Open-E DSS.

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

Терминология iSCSI во многом основывается на терминологии, использующейся в SCSI:

  • initiator — тот, кто устанавливает соединение с целью(target). Чаще всего это узел (в общем случае) осуществляет ввод/вывод на блочные устройства.
  • target — экспортируемый объект. В зависимости от контекста цель(target) называют или целиком экспортирующий узел, или только экспортируемый объект. Сам объект может делиться на lun’ы.
  • Портал — группа целей(targets), которые анонсируются вместе. Чаще всего один узел хранения — один портал.
  • IQN — полное имя участника взаимодействия. На практике существует iqn у инициатора и у цели(target).
  • endpoint — уточнённое имя ресурса, чаще всего включает в себя iqn, номер LUN’а и указание на конкретный метод доступа к нему (например, номер соединения, LUN и IP-адрес, с которого следует получать доступ к устройству).
  • LUN (Logical Unit Number) — номер объекта внутри цели(target). Ближайшим аналогом является раздел диска или отдельный том.

Сравнение iSCSI таргетов

Преимущества

  • Консолидация систем хранения данных
  • Резервирование данных
  • Кластеризация серверов
  • Репликация
  • Восстановление в аварийных ситуациях
  • Географическое распределение SAN
  • QoS
  • Безопасность

Примечания

Ссылки

Источники

Linux iSCSI HOWTO

wiki.sc

Настройка iSCSI хранилища в Windows Server 2012

Internet Small Computer System Interface (iSCSI) — это протокол передачи данных, предназначенный для обмена данными между серверами и системами хранения данных (Storage Area Network, SAN). iSCSI представляет из себя комбинацию протокола SCSI и стека протоколов TCP/IP и предназначен для передачи блоков данных через сети Ethernet. Управляющие команды SCSI передаются внутри IP-пакетов, а протокол TCP обеспечивает управление потоком и надежность передачи данных.

 

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

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

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

iSCSI Initiator — клиентский компонент, который отправляет запросы на подключение компоненту iSCSI Target, находящемуся на стороне сервера. Инициатор может быть реализован программно, в виде драйвера, либо аппаратно, в виде специального iSCSI адаптера.

iSCSI Target — серверный компонент, слушающий клиентские запросы и обеспечивающий установку соединения между клиентом и сервером iSCSI. Кроме того, таргет связан с виртуальными дисками iSCSI, и после установки соединения все виртуальные диски, связанные с этим таргетом, становятся доступны через инициатор. В качестве iSCSI Target может выступать как специализированная СХД, так и обычный Windows сервер с установленной ролью iSCSI Target.

Виртуальные диски iSCSI — используются для разбиения дискового пространства на логические разделы (Logical Unit Number, LUN). В Windows Server 2012 iSCSI LUN представляют из себя обычные виртуальные диски формата VHD\VHDX. Кстати, в Windows Server 2012 для iSCSI поддерживался только формат VHD, что ставило ограничение в 2ТБ на максимальный размер LUN. В Windows Server 2012 R2 используется формат VHDX, что позволяет создавать LUN-ы размером до 64ТБ.

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

• На каждом 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».

 

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

 

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

IQN (iSCSI qualified name) — это уникальный идентификатор, назначаемый для каждого iSCSI Target и Initiator. IQN формируется из даты (месяц и год) регистрации домена, официального имени домена, написанного в обратном порядке и любого произвольного имени, например имени сервера. Получается примерно так: iqn:1991-05.com.microsoft:srv3.contoso.com

 

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

Start-Service msiscsi
Set-Service msiscsi -StartupType automatic

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

Теперь перейдем на SRV2 и приступим к настройке серверной части. Первое, что нам надо сделать — это установить на сервер роль iSCSI Target. Открываем Server Manager, переходим по ссылке «Add roles and features»

 

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

 

Либо воспользуемся командой 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. Находим нужный диск:

Get-Disk | where {$_.OperationalStatus -eq ″Offline″}

Переводим его в 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 и кликаем по ссылке, запуская очередной мастер.

 

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

 

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

 

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

• Fixed size (фиксированного размера) — создаваемый диск сразу занимает весь выделенный объем. Это наиболее производительный, но наименее экономичный вариант;
• Dynamically expanding (динамически расширяемый) — изначально создается диск минимального размера, который затем динамически изменяется в зависимости от количества записанных на него данных. Наилучший вариант в плане использования дискового пространства;
• Differencing (разностный) — в этом варианте нужно указать расположение родительского диска, с которым будет связан создаваемый диск. Разностный диск может быть как фиксированным, так и динамическим, в зависимости от типа родителя.  У этого типа дисков есть свои преимущества, но использовать их для iSCSI лично я особого смысла не вижу.

 

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

 

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

 

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

 

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

 

Идем дальше. На следующей странице можно настроить аутентификацию по протоколу CHAP между серверами. CHAP (Challenge Handshake Authentication Protocol) — это протокол для проверки подлинности партнера по подключению, основанный на использовании общего пароля или секрета. Для iSCSI можно задействовать как одностороннюю, так и двухстороннюю (reverse) проверку подлинности CHAP.

 

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

 

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

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

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

 

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

New-IscsiServerTarget -TargetName iscsi-target-2 -InitiatorIds ″IQN:iqn.1991-05.com.microsoft:srv3.contoso.com″

 

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

Get-IscsiServerTarget | fl TargetName, LunMappings

Подключение

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

 

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

 

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

 

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

 

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

 

Подключение состоялось, и если открыть оснастку управления дисками, то там появится новый диск. Дальше с этим диском поступаем так же, как с обычным жестким диском, подключенным локально — переводим в Online, инициализируем, создаем на нем разделы и форматируем.

 

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

Get-IscsiTarget | fl

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

Connect-IscsiTarget -NodeAddress ″iqn.1995-05.com.microsoft:srv2-iscsi-target-2-target″ -IsPersistent $true

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

 

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

Disconnect-IscsiTarget -NodeAddress ″iqn.1995-05.com.microsoft:srv2-iscsi-target-2-target″ -Confirm:$false

Заключение

На этом настройка завершена. Как я говорил, это самый простой, базовый вариант настройки хранилища. В 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).

Источник: http://windowsnotes.ru/windows-server-2012/nastrojka-iscsi-xranilishha-v…

fadmin.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *