Чем более ценную информацию приходится хранить на сервере, тем выше требования к надежности подсистемы хранения. Обеспечить ее может решение, построенное на базе HBA. Разбираемся, что это такое и почему вам уже следует присмотреться к HBA внимательнее.

Dell QLogic QLE2560

Dell QLogic QLE2560

Определение понятия

Host Bus Adapter (HBA) – это устройство и одноименный режим, в которых реализованы порты для подключения дисковых и не дисковых устройств хранения. Сразу после подключения их начинает видеть и идентифицировать как блочные устройства операционная система. Детальная информация о них доступна в device manager, в файле devmgmt.msc (для семейства Windows).

Типы HBA

Различают три HBA: интегрированные в системную плату, в виде отдельного устройства и виртуальные, создаваемые посредством RAID-контроллера. Рассмотрим их подробнее.

Интегрированные в системную плату

О том, что в материнскую плату сервера может быть интегрирован HBA, знают далеко не все, хотя это довольно популярное исполнение. При этом порты для подключения дисков используются разрозненно, в то время как в настройках можно выбрать подходящие параметры для HBA (их совсем немного) и рассматривать подсистему хранения как единое целое. Такие HBA часто работают на базе SATA-технологии – например, популярной сегодня NVMe. Главный недостаток интегрированного решения в том, что оно поддерживает очень скромный перечень ОС (Linux и Windows), плюс к нему проблематично подключить дополнительные устройства.

В виде отдельного устройства

Такие HBA обычно основаны на технологии SAS 12G (или SAS3) и, соответственно, поддерживают режимы SATA I, II, III и SAS-1 SAS-2, SAS-3. Благодаря SAS с подключаемыми устройствами можно работать как с обычными SATA при условии прямого подключения, хотя в последнее время это практикуют нечасто, так как с большим количеством дисков лучше использовать SAS.

К материнской плате HBA-устройство подключается через разъем 8x PCI-e V3. Внутренних портов при этом будет максимум 24, но с помощью SAS-экспандеров их количество можно увеличить под нужды конкретного проекта. Таким образом, на выходе можно легко получить, например, 40-портовый SATA HBA. Нарастить подобным образом порты в интегрированных SATA HBA невозможно, разве что с помощью SATA multiplier, но по сравнению с SAS-технологией у нее меньше достоинств и больше недостатков.

НBA как RAID-контроллер

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

Реализация HBA позволяет использовать несколько HBA SAS и SATA разных поколений от разных производителей, а также объединять их в единое устройство с интегрированным на материнской плате HBA.

Какие порты есть у HBA

Интегрированные в материнскую плату HBA располагают стандартными портами SATA или SAS. В последнее время также появились модели с PCI-портами (8x PCI), которые поддерживают подключение накопителей вида M.2 и U.2. У HBA в виде отдельных устройств другие порты – счетверенные SAS 4х. Для внутренних подключений они поддерживают формат Mini SAS-HD SFF8643, для внешних – SFF-8644.

Предпочтительные диски

Актуальные модели HBA поддерживают все доступные сегодня типы накопителей – в частности, SAS/SATA и SSD/HDD. Также возможно подключение устройств вроде DVD-ROM и ленточных накопителей. При этом речь идет не только о передаче информации от дисков в операционную систему, но и о поддержке их максимальной емкости и производительности работы. В большей степени это справедливо для серверных HBA в виде отдельных устройств. Также к HBA можно подключать внешние стойки JBOD, EBOD, RBOВ и ленточные библиотеки. В двух последних случаях потребуется дополнительная поддержка функции Multi-LUN.

Требования к HBA

Главное требование – надежность. Если в случае с дисками ею можно управлять с помощью RAID, а то для HBA нужно поддерживать постоянно высоким. В линейке HBA 1100/1200 Microchip Adaptec производитель заявляет о времени наработки от 1,36 до 2,73 млн часов при условии соблюдения температурного режима, плюс дает трехлетнюю гарантию. Для большинства ЦОДов это отличные показатели надежности. Второе обязательное требование к HBA – это производительность. Для указанной выше линейки устройств она составляет 1 700 000 iops, что дает возможность работать с современными накопителями SAS/SATA SSD без каких-либо ограничений.

Функции HBA

Параметры работы можно выбрать в настройках, но их перечень зависит от способа реализации HBA. Вполне ожидаемо, что у интегрированных моделей настроек меньше всего – там можно разве что активировать поддержку NCQ. У серверных SAS HBA ситуация получше: здесь доступна поддержка режимов legacy- и uEFI-, вывод при загрузке основных параметров устройства, поддержка SMART, интеграция в систему управления, поддержка CLI и функции шифрования.

Перспективы HBA

HBA можно назвать недооцененной, но очень перспективной технологией, которая в будущем может оказать большое влияние на принципы работы с дисками в дата-центрах. Мы видим, как на смену SATA постепенно приходит NVMe и как растет рынок материнских плат с интегрированными HBA. В серверных HBA и RAID-контроллерах с их поддержкой на уровне отдельных устройств NVMe тоже фигурируют все чаще. Вероятно, что скоро мы придем к единому универсальному решению, когда будет возможна одновременная поддержка устройств типа NVMe, SAS и SATA.

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