Sas экспандер что это

Обновлено: 04.07.2024

Я хотел бы подключить материнскую плату к объединительной плате. Для объединительной платы требуется 5 разъемов minSAS, всего 20 жестких дисков. Моя материнская плата поддерживает только 2 разъема miniSAS, всего 8 жестких дисков. Кто-нибудь может порекомендовать VMware одобренное решение для этого?

Вы не полностью объясняете, что вы хотите сделать. В этом случае я бы использовал выделенный SAS HBA для подключения к вашему внешнему шасси. Примером может служить что-то вроде контроллеров LSI 9200 или 9205. Я бы оставил слоты материнской платы в покое. Сколько дисков вы пытаетесь адресовать?

Уверены, что ваш корпус имеет мини-разъемы? Большинство корпусов будет иметь 4-полосные разъемы SFF-8088.

Очень старый пост - но ради подобных вопросов в будущем я все равно отвечу на него.

Для объединительной платы требуется 5 разъемов minSAS, всего 20 жестких дисков. Моя материнская плата поддерживает только 2 разъема miniSAS

Это чаще всего число портов для среднего контроллера SAS, 2 разъема = 8 дисков.

Кто-нибудь может порекомендовать VMware одобренное решение для этого?

VmWare не имеет ничего общего с расширителями (ESX или VmWare Workstation). Расширитель невидим для операционных систем: esx, linux, windows и т. Д. Некоторые расширители даже не подключаются к PCIe, а только к источнику питания (именно так расширитель общается с материнской платой). Важна совместимость оборудования между контроллером и расширителем.

Возможно, вы хотели спросить, совместим ли ваш контроллер SAS / hba на материнской плате с VmWare ESX, - что вам придется проверить с помощью vmware. Если он основан на LSI, то он изначально поддерживается в ESX. Если вы говорите о рабочей станции VmWare, то подойдет любой контроллер / hba, имеющий драйверы для Windows / Linux.

Так как вы спросили "Как использовать SAS Expander":

  • Вы подключаете разъемы материнской платы HD MiniSAS (далее: SFF-8644) к вашему расширителю, используя 2 идентичных кабеля, которые имеют: SFF-8644 на одном конце и SFF-8087 на другом конце. Я "предполагаю", что ваш расширитель имеет разъемы SFF-8087.
  • Теперь вы подключаете расширитель к объединительной плате с помощью 5 кабелей SFF-8087 -> SFF-8644 (тот же кабель, что и ранее, возможно, чуть длиннее).

Это ответит на ваш вопрос (если предположить, что вы не указали ни материнскую плату, ни используемый вами расширитель, ни версию vmware).

Дополнительно: Прочтите руководство по расширителю, чтобы увидеть, какие порты «контроллера» (обычно 1,2 или 0,1) - если вы ошиблись, повреждение не произойдет, но диски не будут иметь «древовидную» структуру (controller-> expander- > Диски, вы увидите контроллер-> Диски). Вот пример правильного соединения между контроллером и расширителем.

Правильное соединение между расширителем и контроллером показывает типичные три структуры сервер-контроллер-расширитель-накопители

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

Начнем с основ. Как же работают устройства на технологи SCSI? В стандарте SCSI все построено на концепции клиент/сервер.

Клиент, называемый инициатором (англ. initiator), отправляет разные команды и дожидается их результатов. Чаще всего, разумеется, в роли клиента выступает SAS контроллер. Сегодня SAS контроллеры — это HBA и RAID-контроллеры, а также контроллеры СХД, стоящие внутри внешних систем хранения данных.

Сервер называется целевым устройством (англ. target), его задача — принять запрос инициатора, обработать его и вернуть данные или подтверждение выполнения команды обратно. В роли целевого устройства может выступать и отдельный диск, и целый дисковый массив. В этом случае SAS HBA внутри дискового массива (так называемая внешняя система хранения данных), предназначенный для подключения к нему серверов, работает в режиме Target. Каждому целевому устройству (“таргету”) присваивается отдельный идентификатор SCSI Target ID.

Для связи клиентов с сервером используется подсистема доставки данных (англ. Service Delivery Subsystem), в большинстве случаев, это хитрое название скрывает за собой просто кабели. Кабели бывают как для внешних подключений, так и для подключений внутри серверов. Кабели меняются от поколения к поколению SAS. На сегодня имеется три поколения SAS:

— SAS-1 или 3Gbit SAS
— SAS-2 или 6Gbit SAS
— SAS-3 или 12 Gbit SAS – готовится к выходу в середине 2013 года




Внутренние и внешние кабели SAS

Инициатор, соединенный с целевым устройством системой доставки данных, называют доменом. Любое SCSI устройство содержит как минимум один порт, который может быть портом инициатора, целевого устройства или совмещать обе функции. Портам могут присваиваться идентификаторы (PID).

Целевые устройства состоят из как минимум одного логического номера устройства (Logical Unit Number или LUN). Именно LUN и идентифицирует с каким из дисков или разделов данного целевого устройства будет работать инициатор. Иногда говорят, что target предоставляет инициатору LUN. Таким образом, для полной адресации к нужному хранилищу используется пара SCSI Target ID + LUN.

Как в известном анекдоте («Я не даю в долг, а Первый Национальный Банк не торгует семечками») — целевое устройство обычно не выступает в роли «посылающего команды», а инициатор — не предоставляет LUN. Хотя стоит отметить, что стандарт допускает тот факт, что одно устройство может быть одновременно и инициатором и целью, но на практике это используют мало.

Для «общения» устройств в SAS существует протокол, по «доброй традиции» и по рекомендации OSI, разделенный на несколько слоев (сверху вниз): Application, Transport, Link, PHY, Architecture и Physical.

SAS включает в себя три транспортных протокола. Serial SCSI Protocol (SSP) — используется для работы со SCSI устройствами. Serial ATA Tunneling Protocol (STP) — для взаимодействия с дисками SATA. Serial Management Protocol (SMP) — для управления SAS-фабрикой. Благодаря STP мы можем подключать диски SATA к контроллерам SAS. Благодаря SMP мы можем строить большие (до 1000 дисковых/SSD-устройств в одном домене) системы, а также использовать зонирование SAS (подробнее об этом в статье про SAS-коммутатор).

Уровень связей служит для управления соединениями и передачи фреймов. Уровень PHY — используется для таких вещей как установка скорости соединения и кодировки. На архитектурном уровне находятся вопросы расширителей и топологии. Физический уровень определяет напряжение, форму сигналов соединения и т.д.

Все взаимодействие в SCSI строится на основании команд, которые инициатор посылает целевому устройству и ожидает их результата. Команды эти посылаются в виде блоков описания команды (Command Description Block или CDB). Блок состоит из одного байта кода команды и ее параметров. Первым параметром почти всегда выступает LUN. CDB может иметь длину от 6 до 32 байт, хотя последние версии SCSI допускают CDB переменной длины.

После получения команды целевое устройство возвращает код подтверждения. 00h означает что команда принята успешно, 02h обозначает ошибку, 08h — занятое устройство.

Команды делятся на 4 большие категории. N, от английского «non-data», предназначены для операций, не относящихся к непосредственно обмену данными. W, от «write» — запись данных, полученных целевым устройством от инициатора. R, как не сложно догадаться от слова «read» используется для чтения. Наконец В — для двустороннего обмена данными.

Команд SCSI существует достаточно много, поэтому перечислим только наиболее часто используемые.

А теперь рассмотрим несколько типичных примеров организации хранения данных на SAS.

Пример первый, сервер хранения данных.


Дата-центр одной из российских Web 2.0-компаний

Процессоры и память в таких серверах задействуются не сильно. Второе – в мире Web 2.0, информация хранится географически распределено, несколько копий на различных серверах. Хранится 2-3 копии информации. Иногда, если она запрашивается часто, хранят больше копий для балансировки нагрузки. Ну и третье, исходя из первого и второго, чем дешевле – тем лучше. В большинстве случаев все вышесказанное приводит к тому, что используются Nearline SAS или SATA диски высокой емкости. Как правило, Enterprise-уровня. Это значит, что такие диски предназначены для работы 24x7 и стоят значительно дороже своих собратьев, использующихся в настольных PC. Корпус обычно выбирают такой, куда можно вставить побольше дисков. Если это 3.5’’, то 12 дисков в 2U.


Типичный 2U-сервер хранения данных


16-портовый SAS HBA

Пример второй, почтовый сервер Exchange. А также MDaemon, Notes и другие подобные сервера.


SSD- кэширующий RAID-контроллер Nytro MegaRAID

Пример третий, внешняя система хранения данных своими руками.

Итак, самое серьезное знание SAS, конечно же, требуется тем, кто производит системы хранения данных или хочет их сделать своими руками. Мы остановимся на достаточно простой СХД, программное обеспечение для которой производится компанией Open-E. Конечно же, можно делать СХД и на Windows Storage Server, и на Nexenta, и на AVRORAID, и на Open NAS, и на любом другом подходящем для этих целей софте. Я просто обозначил основные направления, а дальше вам помогут сайты производителей. Итак, если это внешняя система, то мы почти никогда не знаем, сколько же дисков потребуется конечному пользователю. Мы должны быть гибкими. Для этого есть так называемые JBOD – внешние полки для дисков. В их состав входит один или два экспандера, каждый из которых имеет вход (4-х портовый разъем SAS), выход на следующий экспандер, остальные порты разведены на разъемы, предназначенные для подключения дисков. Причем, в двухэкспандерных системах первый порт диска разведен на первый экспандер, второй порт – на второй экспандер. Это позволяет строить отказоустойчивые цепочки JBOD-ов. Головной сервер может иметь внутренние диски в своем составе, либо не иметь их совсем. В этом случае используются «внешние» контроллеры SAS. То есть контроллеры с портами «наружу». Выбор между SAS RAID-контроллером или SAS HBA зависит от управляющего ПО, которое вы выбираете. В случае Open-E, это RAID-контроллер. Можно позаботиться и об опции кэширования на SSD. Если ваша СХД будет иметь очень много дисков, то решение Daisy Chain (когда каждый последующий JBOD подключается к предыдущему, либо к головному серверу) в силу многих причин не подходит. В этом случае головной сервер либо оснащается несколькими контроллерами, либо используется устройство, которое называется SAS-коммутатор. Он позволяет подключать один или несколько серверов к одному или нескольким JBOD. Подробнее SAS-коммутаторы мы разберем в следующих статьях. Для внешних систем хранения данных настоятельно рекомендуется использовать диски только SAS (в том числе NearLine) в силу повышенных требований к отказоустойчивости. Дело в том, что протокол SAS имеет в своем составе гораздо больше функций, чем SATA. Например, контроль записываемых-считываемых данных на всем пути с помощью проверочных сумм (T.10 End-to-End protection). А путь, как мы уже знаем, бывает очень длинным.


Напоследок, хочется поделиться некоторыми сведениями о текущей адаптации SAS мировыми производителями оборудования. SAS сегодня – это стандарт де-факто для серверных систем и профессиональных рабочих станций. Серверные системы подавляющего большинства как A- так и B- брендов имеют в составе контроллеры SAS, как HBA, так и RAID. В области внешних систем хранения данных, основные производители оборудования (HP, EMC, NetApp, IBM) уже несколько лет как перевели внутренние архитектуры своих систем на SAS. Таким образом, диски Fibre Channel стали за последние пару лет настоящей экзотикой. Fibre Channel продолжает жить и развиваться, в основном, как способ подключения серверов к системам хранения данных, хотя в области Low-End, Mid-Range и профессиональных систем, SAS отвоевывает все большую долю.

На этом наш экскурс в мир истории и теории SCSI вообще и SAS в частности подошел к концу, и в следующий раз я расскажу вам более подробно о применении SAS в реальной жизни.


Что такое SAS-экспандер?

SAS-экспандер - это коммутирующее устройство, обеспечивающее подключение к общей топологии нескольких SAS-инициаторов и таргетов. Экспандер хранит таблицу маршрутизации с WWN-адресами подключенных к SAS-домену узлов и обменивается данными о маршрутизации и зонировании (начиная с SAS-2) с другими экспандерами в домене. Обычно экспандер обеспечивает через встроенный SMP-таргет мониторинг: показания термодатчиков, скорость вращения вентиляторов, состояние блоков питания.

Применение SAS-экспандеров


Использование двух экспандеров, подключенных к разным портам дисков, позволяет получить port-failover (защиту от выхода из строя phy диска и/или контроллера) или controller-failover - дополнительную защиту от выхода из строя контроллера, в случае использования специализированных внешних SAS СХД или специальных программных решений (например, Nexenta-HA на платформе Supermicro SBB).


SAS-экспандеры в продуктах Supermicro

Корпуса с SAS-экспандерами. Развновидностей много: от 2U до 4U, с SAS-1 или SAS-2 экспандерами, с одним или с двумя экспандерами, под SFF и LFF диски, с обычным и двухсторонним размещением дисков.


  • 2U корпуса (и 4U с двухсторонним размещением дисков) имеют разновидности "LP" и "U" (например, SC216E26-R1200LPB и SC216E26-R1200UB). Первая предназначена для обычный плат размером до E-ATX, платы расширения - только низкопрофильные, устанавливаются напрямую, без райзера. Вторая - для системных плат форм-фактора UIO (с вырезом для размещения платы в нижний слот райзера) и позволяет устанавливать до 4-х плат полной высоты + 3-х низкопрофильных плат.
  • Большинство экспандерных бэкплейнов Supermicro имеют один вход и два выхода (с разъемами 4x SAS SFF-8087) для удобства каскадирования: последовательное подключение более 6-ти экспандеров LSI крайне не желательно, а два выхода позволяют построить топологию с ответвлениями. Вот пример топологии с каскадом из двух 2-экспандерных бэкплейнов на чипе LSI SAS2X36 (12 phy экспандера - на вход и выходы, оставшиеся 24 - для подключения дисков):



И еще есть отдельные дисковые корзины на 8 SFF дисков CSE-M28E1 и CSE-M28E2. Занимают 3 отсека 5.25", имеют съемный вентилятор на задней стенке и 1 или 2 экспандера LSI SASX12. Интересной особенностью является подключение при помощи обычный SATA разъемов (по 4 на экспандера) и использованием нестандартных "перекрестных" кабелей 4xSAS->4 SATA. Сделано это потому, что два из четырех phy можно использовать не только на вход, но и на выход - для каскадирования. В комплекте идут два кабеля: с современными SFF-8087 разъемом и старым широким SFF-8484. Проблема номер один - кабели длиной 50см, такой длины хватает не всегда. Проблема номер два - несовместмость с SAS2 контроллерами, о чем уже упоминалось выше.
Альтернативой является корзина M28SAB с обычным бэкплейном без экспандера.
Вот и все. Задавайте дополнительные вопросы по почте и в комментариях, а за продукцией Supermicro, LSI и Adaptec обращайтесь в компанию True System.

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

Сложность выбора заключается в том, что кроме того, что контроллеры бывают с интерфейсами SATA и SAS, так они еще выпускаются в трех вариантах функционала: RAID-контроллер, HBA и Expander. Давайте разбираться.

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

SATA – наследник или следующая ступень развития IDE интерфейса и расшифровываемый как Serial Advanced Technology Attachment (последовательная технология подключения). К слову, IDE после появления SATA, сначала переименовали в ATA, а затем в PATA - Parallel Advanced Technology Attachment (параллельная технология подключения). Так же SATA и унаследовал свой сегмент применения - домашние-офисный сегмент. Не полностью, конечно, есть и энтерпрайз sata диски, но общее позиционирование интерфейса – все-таки ближе к рядовому потребителю, чем к корпоративному.

SAS – тоже наследник прошедшего поколения, но полностью корпоративного сектора. При этом своим появлением он не заставил никого переименовываться, а уже в своем имени несет наследственность «родителя» и расшифровывается как Serial Attached SCSI.

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

Обратная совместимость с SATA: к любому SAS устройству можно подключить SATA диск, так что не стоит волноваться о доступности информации на SATA дисках, если в систему планируется добавить SAS контроллер. Главное не подключайте к контроллеру мобильные и домашние диски из-за их особенности определения времени наработки.

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

Работа по MAC-адресу: в отличии от SATA диска, SAS диски имеют каждый свой персональный mac-адрес, как любая сетевая карта. Связанно это с объемом дисков в одной связанной системе: SAS контроллер способен оперировать 16384 устройствами.

Если вы собрали два массива из четырех SATA дисков силами домашней материнской платы или простого SATA контроллера, а затем поменяли местами диски из разных массивов – система закономерно отрапортует вам о разрушении обоих массивов.

В случае с SATA система оперирует только адресным портами нахождением диска относительно контроллера, т.е. диски 00 и 01 это первый массив, а 02 и 03 это второй. Касаемо же SAS структуры - контроллер всегда оперирует адресом самого диска, а не его расположением относительно порта контроллера.

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

Что же касается типов контроллеров по функционалу:

Начнем с самого простого по функциональности – SAS Expander (экспандер)

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

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

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

Вторая важная особенность, через экспандер можно подключать SATA диски к SAS контроллеру, а вот к SATA контроллеру не получится, т.к. сам экспандер является SAS-устройством.

SAS HBA – он же Host Bus Adapter (Адаптер главной шины)

Как и экспандер выполняет задачу по расширению дисковой подсистемы, но в отличие от него осуществляет подключение к системе SAS устройств, если изначально система не располагает этим интерфейсом. Как и в случае со SCSI, SAS интерфейс используется не только дисками, но и внешними устройствами, например, ленточными библиотеками, стримерами или дисковыми полками.

В отличие от экспандера HBA работает через драйвер и может предлагать простейший функционал по настройке подключенного массива дисков, как правило это объединение дисков в 0, 1, 10 уровень или организацию JBOD, когда данные пишутся последовательно на все доступные диски. С точки зрения системы JBOD - это просто один диск, размер которого увеличивается, когда к HBA подключается новый диск и назначается входящим в данную группу.

SAS RAID – самый «продвинутый» вариант контроллера. Он обладает возможностями всех вышеперечисленных типов, но имеет высокопроизводительный процессор для выполнения более сложных операций. Рейд контроллер конечно же, как и HBA, требует установку драйвера.

Так же, как и HBA, может объединять диски в 0, 1, 10, JBOD массивы, но в отличии от HBA способен работать с массивами 5, 6, 50 и 60 уровней и обеспечивать на порядок большую производительность на операциях ввода/вывода.

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

image

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

Вот вроде бы и разобрались – для подключения 24х дисков вовсе не нужно 24 порта на контроллере, достаточно и 4х (так как обычно именно 4 SAS линии используется для соединения контроллера с экспандером). А используя контроллер с 4мя внутренними портами и 4мя внешними можно не только задействовать (при использовании экспандера все диски в сервере, но и обеспечить возможность дальнейшего увеличения дисковой подсистемы за счет добавления внешней дисковой полки (JBOD).

Но сразу возникает несколько новых вопросов: “А нужно ли использовать экспандер? Может быть он так замедляет работу, что от него надо отказаться? У меня целых 24 (а то и еще больше) диска подключено только по 4м линиям SAS – наверное это будет очень медленно?”.

Попробуем найти ответы. Начнем с конца: 4 SAS линии по 3Gbps дают в сумме 12Gbps, а это целых 1.5 Гига-байта в секунду. Можно ли реально достичь такой пропускной способности? В принципе можно, но (а) нужно помнить, что наверное с этим потоком нужно еще что-то делать, а не просто читать или писать и (б) дисков для этого потребуется (даже при благоприятном стечении обстоятельств) заметно больше десятка. А если учесть, что при типичной работе сервера запросы к дисковой подсистеме идут в значительной степени случайные, то полосы пропускания в 12Gbps оказывается вполне достаточно – можете проверить сами на любом своем сервере, запустив perfmon (под Windows) и посмотрев на трансфер с дисков во время работы. А что до возникновения дополнительных задержек при использовании экспандеров, то они конечно есть, но “поймать” (измерить) их Вам не удастся – настолько они малы по сравнению с задержками при обращении к жесткому диску. Есть и еще один аргумент, чтобы не бояться экспандеров – в RAID-контроллерах, где количество портов больше 8, зачастую это объясняется именно наличием интегрированного на плате экспандера – например Adaptec 51245, 51645, 52445. Так что по сути, делая выбор в пользу многопортового контроллера, Вы просто приобретаете SAS экспандер на одной плате с контроллером.

Итак, использование SAS экспандеров не только не противопоказано, а вполне оправдано в подавляющем большинстве случаев!

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