Серверу нужны данные, и чем быстрее становятся процессоры, тем больше места требуется для их хранения. Проблема в том, что даже флагманский RAID-контроллер напрямую обслуживает лишь около 24 накопителей. Можно набить сервер дисками M.2, но ёмкости всё равно не хватит, особенно там, где информацию держат годами: в банках, госструктурах, архивах видеонаблюдения. В таких проектах выгоднее брать диски с лучшим соотношением цены и объёма, чем переплачивать за дорогие единичные накопители. Вопрос в другом: как подключить всю эту массу дисков, если портов на контроллере мало, а в корзину помещается ограниченное число отсеков? Ответ дают SAS-экспандеры, которые позволяют одному контроллеру управлять десятками и сотнями накопителей. Ниже разберём, что это за устройства, как они работают, где применяются и какие у них ограничения.

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

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

Без экспандера число дисков жёстко ограничено типом порта и версией SAS: обычно это 4, 8, 16 или, в лучшем случае, 24. С экспандером этот потолок исчезает. Даже если у контроллера всего 2–3 порта SFF 8654-8i или MCIO x8, через экспандеры можно подключить десятки дисков, а при каскадировании и сотни. Поддерживаются и SAS, и SATA, поэтому конфигурацию можно комбинировать: дорогие SAS-диски отдать под критичные задачи, а недорогие SATA использовать для архивов и резервных копий.

Как он устроен внутри

Основа экспандера, как и у сетевого коммутатора, это специализированный ASIC-чип. Он маршрутизирует пакеты между входными портами (на стороне контроллера) и выходными (на стороне дисков), адресует большое число устройств, управляет очередями команд и буферизует данные. Пример такого чипа: PMC-Sierra от Microchip.

Два варианта исполнения

  1. Экспандер на бэкплейне. Самый распространённый вариант. Его легко узнать по крупному радиатору, который отводит тепло от ASIC-чипа. Все диски корзины подключаются к контроллеру одним или двумя SFF-кабелями, что упрощает сборку и прокладку проводов. Бэкплейны с экспандерами можно каскадировать, соединяя последовательно, как коммутаторы в обычной сети. Пример: бэкплейн сервера Supermicro.
  2. Экспандер в виде платы PCIe. Внешне напоминает HBA-контроллер, но вместо RAID-процессора на ней стоит ASIC и несколько внешних портов SFF. Слот PCIe используется только для питания и крепления, данные по шине PCI-E не идут: всю коммутацию делает сам чип. Такие платы объединяют несколько дисковых корзин или помогают собрать многопутевые конфигурации с резервированием хранилища.

Зачем нужны экспандеры: расчёт на примере

Возьмём контроллер MegaRAID 9560-16i. У него два порта SFF-8654 (8i), каждый обслуживает 8 накопителей SAS/SATA. Напрямую подключается всего 16 дисков, хотя контроллер позиционируется для среднего и крупного бизнеса. При этом производитель заявляет поддержку 240 логических устройств. Реализовать её как раз помогает экспандер: контроллер видит не отдельные диски, а сам экспандер (в системе он отображается как enclosure), который адресует сотни накопителей.

Но просто «повесить» 240 жёстких дисков не получится. Экспандер соединяется с контроллером 16 линками по 12 Гбит/с, то есть суммарная пропускная способность аплинка равна 192 Гбит/с. Если читать все 240 подключений одновременно, на каждый диск придётся около 0,8 Гбит/с (100 МБ/с). Это ниже линейной скорости любого современного HDD, а про SSD и говорить нечего.

Значит ли это, что экспандеры бесполезны? Нет. Их задача не ускорить каждый диск, а дать возможность адресовать огромное число устройств одним контроллером. Когда важна ёмкость, а не пиковая скорость всех дисков одновременно, это оптимальное решение. Теоретически даже можно собрать все 240 дисков в один RAID 5, хотя на практике так никто не делает.

Плотные корзины и топовые контроллеры

Ситуация не меняется и с самым мощным контроллером MegaRAID 9670-24i: у него три коннектора и прямая связь с 24 дисками. Для плотных систем с корзинами на 60, 72 и даже 90 отсеков этого мало. Supermicro, например, выпускает системы с вертикальной загрузкой на 90 дисков в корпусе 4U. Без экспандеров пришлось бы распаять на плате 12–15 HBA-контроллеров и обеспечить их линиями PCIe, а это нереально технически и бессмысленно экономически.

Каскадирование

Если и одного экспандера мало, их соединяют друг с другом. Так строятся иерархические структуры, масштабируемые до тысяч накопителей при управлении от одного-двух контроллеров. В крупных ЦОД это обычная картина: на одной головной паре контроллеров висят десятки дисковых полок.

Кто производит контроллеры и экспандеры

За последние 15 лет рынок сильно консолидировался. Сначала крупным игроком была LSI, затем её выкупила Avago Technologies, а потом саму Avago приобрела Broadcom. В итоге под крышей Broadcom оказались контроллеры MegaRAID, SAS-экспандеры, программное обеспечение и драйверы.

Бизнес Broadcom строится не на продаже готовых устройств конечным покупателям, а на OEM-партнёрстве: Dell, HPE, Lenovo и Supermicro закупают чипы и распаивают их на своих платах, бэкплейнах и картах расширения.

Второй заметный производитель — Microsemi, ныне часть Microchip Technology. В какой-то период она даже опережала Broadcom по ряду решений, например по поддержке передовых спецификаций SAS, но её доля рынка заметно меньше. Других разработчиков базовых ASIC для SAS-экспандеров фактически нет: все готовые платы и корзины построены на чипах Broadcom или Microsemi. Остальные компании, включая Intel, Lenovo, HP и Dell, разрабатывают лишь печатные платы, охлаждение и прошивку.

Отдельно стоит упомянуть SAS-коммутаторы, которые выпускала LSI ещё до поглощения Avago. Это были полноценные свитчи для сетей хранения на базе SAS: они коммутировали трафик между десятками серверов и сотнями дисковых полок. Сегодня эта технология ушла в прошлое.

Плюсы и минусы

Что получаем
Плюс Десятки и сотни дисков на одном контроллере, то есть максимальная ёмкость в рамках одного сервера или СХД
Плюс Освобождаются дефицитные порты контроллера: одна корзина идёт через один порт вместо отдельного порта на каждый диск, а кабельная инфраструктура проще
Плюс Отказоустойчивость: поддерживаются dual-path (связь строго по двум физическим линиям) и multipath (объединение разных путей в одну виртуальную связь); два контроллера подключены к одному бэкплейну, и при отказе одного второй продолжает работу без остановки
Плюс Унификация: SAS и SATA в одной корзине без смены бэкплейна и перекоммутации кабелей
Минус Все диски делят пропускную способность аплинка, и при интенсивной нагрузке реальная скорость заметно падает
Минус Появляется дополнительная задержка: чип тратит микросекунды на маршрутизацию, буферизацию и обработку команд
Минус Конфигурацию нужно тщательно рассчитывать

На что обратить внимание

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

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

Если нужны максимальные скорости и минимальные задержки, экспандеры не лучший инструмент. В таких сценариях стоит смотреть на NVMe-накопители, которые подключаются прямо к шине PCIe, минуя SAS. Но и у них есть свои нюансы, о которых мы расскажем в отдельной статье.

Для управления и мониторинга систем хранения на контроллерах Broadcom используется программа LSI Storage Authority (LSA).

Практические выводы при выборе

  • Для архивов, бэкапов и видеонаблюдения, где важна ёмкость, смело берите конфигурацию с экспандером и дисками с лучшей ценой за терабайт.
  • Для транзакционных нагрузок считайте, сколько дисков приходится на один аплинк, и не перегружайте его.
  • Для плотных корпусов на 60, 72 и 90 отсеков экспандер на бэкплейне фактически обязателен.
  • Для высокой доступности выбирайте корзины с поддержкой dual-path и multipath и два контроллера.
  • Для максимальной производительности и минимальной задержки рассматривайте NVMe.

Итоги

SAS-экспандеры — главный инструмент масштабирования, когда портов контроллера не хватает, а дисков нужно много. Они позволяют строить системы с сотнями накопителей под управлением одного-двух контроллеров, что критично для корпоративных СХД и плотных серверных сборок. Главный нюанс — баланс: чем больше дисков на один аплинк, тем ниже их совместная производительность. При грамотном проектировании экспандеры дают гибкость в построении хранилища и заметную экономию бюджета, ведь не приходится переплачивать за дорогие многопортовые контроллеры.

Готовые серверы с нужным числом отсеков можно посмотреть в каталоге серверов, а специалисты СервакМастер помогут подобрать конфигурацию под вашу задачу и сопроводят вас от покупки до развёртывания. Связаться с нами можно на странице контактов.