Top.Mail.Ru
RAID-контроллер: зачем нужен и как выбрать | Блог Serverflow Скачать
прайс-лист
Бесплатная
доставка по РФ
Бонус за
обратную связь
Интернет-магазин
Серверного оборудования
8 (800) 222-70-01 Консультация IT-специалиста Сравнение

RAID-контроллер: зачем нужен и как выбрать

~ 21 мин
19446
Простой
Статьи
RAID-контроллер: зачем нужен и как выбрать

Введение

Современные серверы и СХД работают с десятками и даже сотнями накопителей. Управлять всем этим хозяйством напрямую с помощью примитивного контроллера, встроенного в материнскую плату “для галочки”, задача практически невыполнимая — встроенный контроллер физически не может адресовать много дисков и он поддерживает далеко не все уровни RAID. А без грамотного управления дисковым массивом невозможно обеспечить отказоустойчивость хранилища, ускорить передачу данных и сделать его администрирование удобным и прозрачным. В ответ на эти вызовы индустрия пришла к созданию отдельного специализированного устройства — RAID-контроллера, который берет на себя организацию дискового массива, обеспечивая либо повышенную производительность, либо отказоустойчивость, либо и то и другое одновременно. Однако выбор подходящего контроллера — задача далеко не тривиальная: нужно понимать разницу между аппаратным и программным RAID, между RAID-контроллером и HBA-адаптером, учитывать типы подключаемых дисков, необходимый уровень отказоустойчивости и бюджет. В этой статье специалисты компании ServerFlow расскажут вам, как появились RAID-контроллеры, чем они отличаются от HBA, какие у них есть критические недостатки, кто сегодня задает тон на рынке RAID и в каких случаях без настоящего аппаратного RAID действительно не обойтись.

Как появились RAID-контроллеры

История RAID началась в 1987 году в стенах Калифорнийского университета в Беркли, который и по сей день остается кузницей инноваций, меняющих всю IT-индустрию. Трое исследователей (Дэвид Паттерсон, Гарт Гибсон и Рэнди Катц) опубликовали работу под названием “A Case for Redundant Arrays of Inexpensive Disks”, в которой объяснялась система, делающая массивы дисков отказоустойчивыми. В те времена жесткие диски были крайне ненадежными устройствами и часто ломались, а ГБ данных просто исчезали без малейшей надежды на восстановление. Паттерсон, Гибсон и Катц предложили концепцию уровней RAID (1-5), использующих несколько физических носителей для создания единого логического тома с повышенной надежностью и скоростью. Позднее на рынок вышли первые RAID-контроллеры, например, Alpine от компании Array Technology 1988 года выпуска с поддержкой RAID 5 и Intelligent Drive Array от Compaq (ныне HP) 1989 года выпуска с поддержкой RAID 1 и 5. Изначально технология RAID была прерогативой мощных серверных систем, но со временем она перекочевала и в персональные компьютеры. Несмотря на появление огромного количества поколений контроллеров и изобретения новых уровней RAID, фундаментальная концепция, описанная в 1987 году, так и не поменялась, что является лучшим доказательством инновационности этой технологии.

Устаревший RAID-контроллер на базе чипа LSI SAS3108
Устаревший RAID-контроллер на базе чипа LSI SAS3108.

Из чего состоит RAID-контроллер

Аппаратный RAID-контроллер — это, по сути, полноценный компьютер, но оптимизированный для выполнения одного класса задач. Ввиду этого, любой RAID-контроллер имеет свой набор определенных компонентов.

RAID-контроллер Adaptec RAID 5805
RAID-контроллер Adaptec RAID 5805.

ROC (RAID-on-Chip)

Сердцем RAID-контроллера является специализированный чип, который в индустрии принято называть ROC (RAID-on-Chip). Название созвучно с термином SoC (System-on-Chip), и это не с проста: ROC по своей сути и есть SoC, только заточенный исключительно под выполнение RAID-функций. Сегодня подавляющее большинство ROC базируются на архитектуре Arm. Этот выбор продиктован прежде всего соображениями энергоэффективности, так как в серверных корпусах с охлаждением всегда туго. Однако не стоит проводить прямых параллелей с мобильными процессорами вроде Snapdragon: архитектура та же, но вся логика на кристалле завязана на управлении данными и дисками. Некоторые производители уже начинают присматриваться и к архитектуре RISC-V — например, Samsung в своих новых сериях SSD-контроллеров. Привлекательность RISC-V кроется в свободном лицензировании, поэтому вполне вероятно, что в будущем индустрия начнет дрейф в эту сторону. Но RISC-V и Arm были в ходу далеко не всегда. Первые ROC создавались исключительно на базе процессоров IBM Power, альтернатив которым в те годы попросту не существовало. Платой за производительность становилось колоссальное тепловыделение. На закате жизненного цикла IBM Power на сцену вышли ROC на базе x86 от Intel, которые представляли собой сигнальные процессоры, умеющие раскладывать хеши и делить данные на блоки. Но x86 тоже не смог обеспечить достаточный уровень функциональности, времена x86 в RAID безвозвратно ушли, и современные ROC полностью пересели на Arm.

ROC-чип Intel IOP348
ROC-чип Intel IOP348.

Кэш-память

Второй по значимости компонент RAID-контроллеров — кэш-память. Она выступает в роли сверхбыстрого буфера между дисками и контроллером. Для операционной системы сервера все выглядит так, будто данные уже физически записаны на диск, хотя на самом деле они все еще находятся в быстрой, но энергозависимой памяти контроллера. Этот режим работы носит название write-back, и именно он дает колоссальный прирост производительности, особенно при операциях записи. Объем кэш-памяти напрямую влияет на производительность в сложных режимах RAID и может достигать 8 ГБ в топовых серверных моделях контроллеров — к слову, там используется еще и ECC память, поэтому не удивляйтесь, смотря на огромные прайсы на RAID-контроллеры.

Чипы кэш-памяти RAID-контроллера
Чипы кэш-памяти RAID-контроллера.

BBU

У кэш-памяти есть фундаментальная архитектурная уязвимость: она энергозависима. В случае внезапного отключения питания все данные, находившиеся в кэше, но не попавшие на диски, будут безвозвратно утеряны. Для предотвращения этого используется модуль резервного питания, который в индустрии принято называть BBU. В современных реализациях это суперконденсатор, а в прошлом — литий-ионный аккумулятор. У Broadcom эта технология называется CacheVault. При потере питания энергии суперконденсатора хватает ровно на то, чтобы контроллер успел скопировать содержимое кэша из DRAM во встроенную энергонезависимую флеш-память NAND. По своей сути такая схема очень близка к концепции энергонезависимых модулей памяти NVDIMM.

BBU-модуль Broadcom CacheVault Flash Backup Unit
BBU-модуль Broadcom CacheVault Flash Backup Unit (модель FBU345) для защиты кэша RAID-контроллера.

Интерфейсы

RAID-контроллер общается с окружающим миром через два типа интерфейсов. 
  • Системный интерфейс — это PCI Express, через который контроллер подключается к материнской плате. Современные модели используют шину PCIe 4.0 или 5.0 в конфигурации x8 или x16 линий. 
  • Дисковые порты — это разъемы на самом контроллере, к которым через кабели подключаются накопители. Они эволюционировали от старых SFF-8087 до современных SFF-8643 (Mini-SAS HD) и SlimSAS. Самые передовые контроллеры, например из серии Broadcom 96xx-97xx, поддерживают технологию Tri-Mode, позволяющую работать с дисками SAS, SATA и NVMe через одни и те же физические порты.
Кабельное подключение RAID-контроллера
Современные RAID-контроллеры подключаются к дисковому массиву с помощью кабелей.

RAID vs HBA — в чем разница?

В среде системных администраторов часто возникает путаница между RAID-контроллерами и HBA-адаптерами. Внешне они выглядят практически идентично, используют одни и те же разъемы и подключаются в те же слоты PCIe. Однако несмотря на внешнее сходство, с функциональной точки зрения разница фундаментальна и сводится к ключевому отличию — наличию или отсутствию аппаратного кэша. У HBA-контроллеров, как правило, нет аппаратного кэша — эта привилегия остается исключительно за RAID. HBA используют чипы классом ниже, и даже если они формально поддерживают какие-то RAID-функции, реализованы они таким образом, что пользоваться ими решительно не хочется. При включении RAID на HBA производительность в IOPS резко падает, а задержки становятся непредсказуемыми. Зато в режиме прямого доступа к дискам (JBOD или IT-mode) HBA демонстрирует качества, делающие его безальтернативным выбором для построения программных RAID-массивов на базе ZFS, mdadm или TrueNAS. Задержки при работе с каждым отдельным диском остаются стабильными, отсутствует переупорядочивание запросов, а сам адаптер ведет себя как абсолютно прозрачный мост между шиной PCIe и дисковым интерфейсом.

RAID-контроллер vs HBA-контроллер
Слева — полноценный RAID-контроллер, справа — HBA-адаптер. Отличие только в наличии кэш-памяти.

Недостатки RAID-контроллеров

При всех своих неоспоримых достоинствах аппаратные RAID-контроллеры не лишены серьезных недостатков, о которых необходимо знать до принятия решения о покупке.

Первый и самый коварный недостаток — тепловыделение. RAID-контроллеры греются очень сильно, несмотря на использование энергоэффективных Arm-ядер. RAID требуется воздушное охлаждение с жестко заданными параметрами. В официальных спецификациях производителей прописывается минимальный объем воздуха, который должен проходить через зону установки контроллера — эта величина измеряется в литрах в минуту на единицу площади. Обычным корпусным вентилятором тут не обойтись, нужен направленный поток воздуха. А наличие радиатора на плате — это отнюдь не декоративный элемент. Радиатор обязан работать в паре с нагнетающим потоком, иначе его эффективность стремится к нулю. Мы в ServerFlow видели десятки контроллеров с характерным желто-коричневым оттенком текстолита — это последствия хронического перегрева. Чип ROC в штатном режиме может работать при температурах около ста градусов Цельсия, но длительная эксплуатация в таких условиях приводит к деградации паяных соединений: припой теряет свойства, контакт между чипом и платой нарушается, и контроллер выходит из строя. В особо тяжелых случаях происходит отхождение кристалла кремния от подложки.

Второй очевидный недостаток — стоимость. Аппаратный RAID-контроллер стоит значительно дороже простого HBA. Цены на модели для серверов стартуют от нескольких сотен долларов и могут легко достигать нескольких тысяч долларов за топовые варианты с большим кэшем и поддержкой NVMe. Свой негативный вклад вносит и глобальный дефицит микросхем памяти: RAID-контроллеры несут на борту до 8 ГБ DRAM в виде кэша, поэтому они дорожают, в то время как HBA остаются сравнительно доступными.

Третий недостаток — предопределенность. Если вы взяли аппаратный RAID, то использовать его в роли моста для программного RAID не выйдет — назад пути нет. Как мы уже описывали выше, для программного RAID обязательно нужен HBA адаптер, а использование аппаратного RAID приведет к проблемам из-за непредсказуемых задержек. Можете забыть про такие термины, как кэширование памяти, TrueNAS, RAID-Z2. В общем, брать дорогой RAID-контроллер и пытаться превратить его в HBA для программного хранилища — затея не только бредовая, но и очень неэффективная.

Основные производители RAID и HBA

Просторы рынка контроллеров очень бедны, и RAID с HBA это тоже касается. Наверное, 90% мирового рынка занимает Broadcom. Ключевые линейки компании, MegaRAID и HBA, стали стандартом де-факто в корпоративном сегменте. Контроллеры Broadcom строятся на фирменных чипах ROC и поддерживают все современные интерфейсы: от SAS 12/24 Гбит/с до PCIe 5.0 с поддержкой NVMe. Чипы MegaRAID настолько глубоко проникли в индустрию, что многие OEM-производители (Dell, Lenovo, Fujitsu, HPE, Supermicro) поставляют контроллеры Broadcom под собственными брендами, зачастую лишь меняя прошивку и наклейку на радиаторе. Даже всем известные народные контроллеры HighPoint базируются на чипах Broadcom.

Оставшиеся 10% рынка занимает Microsemi. Их контроллеры Adaptec серии SmartRAID имеют свои сильные стороны: они поддерживают широкий спектр недорогих твердотельных накопителей и предлагают некоторые продвинутые функции вроде maxCache и zero-maintenance cache. Доля невелика, но Microsemi смогла занять и удержать несколько локальных ниш, вроде периферийных систем и бюджетных домашних сборок.

Особняком стоит новая, восходящая звезда — компания Marvell. Да-да, это те самые ребята, которые заключили стратегический контракт с Nvidia по развитию топового интерконнекта NVLink в лучших ИИ-системах мира. Как оказалось, их ASIC-микросхемы одни из лучших на рынке, да и контроллеры управления для SSD они делают на достойном уровне. Marvell активно вкатывается в тему PCIe-ретаймеров и делает RAID-контроллеры начального уровня. Пока что их решения не применяются в качестве основных RAID-контроллеров в серьезных серверных конфигурациях, но их часто напаивают на материнские платы для организации RAID 1 из пары SATA-дисков под загрузочный том — исключительно для повышения надежности.

Когда нужен RAID-контроллер?

Теперь, когда мы разобрались с устройством и подводными камнями, самое время ответить на главный вопрос: когда без аппаратного RAID-контроллера действительно не обойтись?
  • Во-первых, если в сервере используются HDD/SDD и требуется отказоустойчивость (RAID 1, 5, 6, 10) без нагрузки на центральный процессор. Аппаратный контроллер на порядок лучше справляется со сложными уровнями RAID и вычислением контрольных сумм, освобождая CPU сервера для выполнения своих прямых задач. Отказоустойчивость здесь всегда стоит на первом месте, а скорости на втором плане, но они растут с каждым поколением — в передовых Broadcom MegaRAID 9760W-32i уже обещают ошеломительные 14 миллионов IOPS.
  • Во-вторых, когда необходима защита данных в кэше при внезапном отключении питания. Наличие модуля BBU или технологии CacheVault позволяет контроллеру гарантированно сохранить данные из кэша на флеш-память или удержать их до восстановления питания. Программный RAID, работающий через обычный HBA, такой гарантии дать не может.
  • В-третьих, если вы используете операционную систему, где производительность программного RAID неудовлетворительна. Это особенно актуально для старых версий Windows Server без поддержки современных Storage Spaces. Кроме того, аппаратный RAID значительно проще администрировать через единую утилиту (MegaRAID Storage Affority или Adaptec Storage Manager), причем настройка массива возможна еще на уровне BIOS/UEFI, еще до запуска установленной ОС.
  • В-четвертых, в средах виртуализации (VMware ESXi, Hyper-V), где хочется иметь единый пул дисков, видимый гипервизору, и не зависеть от драйверов гостевых систем. Аппаратный RAID позволяет создать один логический том и уже на него ставить гипервизор, что радикально упрощает конфигурацию и повышает стабильность.
RAID-контроллер в материнской плате сервера
RAID-контроллер жизненно необходим, если вы хотите обеспечить отказоустойчивость дискового массива, сохранив высокую скорость передачи данных.

Выводы

RAID-контроллер — это незаменимая вещь для обеспечения отказоустойчивости и увеличения скорости передачи данных ваших дисков в классических серверных сценариях. Выбор между аппаратным RAID-контроллером и HBA-адаптером — это не вопрос того, какое устройство “лучше” в вакууме. Это вопрос соответствия конкретного инструмента конкретной задаче. Если вы строите сервер на накопителях с аппаратным RAID 5 или 6 и вам нужна защита кэша, ваш выбор — производительный контроллер Broadcom с CacheVault. Если же вы разворачиваете программное хранилище на базе ZFS или TrueNAS, вашим лучшим другом станет качественный HBA. И не дайте RAID-контроллеру умереть от теплового удара. Обеспечьте ему достойное охлаждение, следите за температурой ROC, и тогда это устройство прослужит долгие годы, исправно оберегая данные. В общем, выбирайте RAID с умом, а не только по ценнику. За качественными RAID, HBA и другими серверными компонентами обращайтесь в ServerFlow — мы поможем подобрать оптимальное решение именно под ваши задачи и ваш бюджет, соберем лучшую серверную конфигурацию и предоставим вам решение, готовое к выполнению корпоративных задач с первого дня эксплуатации!
Автор: Serverflow Serverflow
Поделиться

Комментарии 0

Написать комментарий
Сейчас тут ничего нет. Ваш комментарий может стать первым.
Написать отзыв
До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Написать комментарий

Комментарий появится на сайте после предварительной модерации

До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Мы свяжемся с вами утром

График работы: Пн-Пт 10:00-18:30 (по МСК)

Обработаем вашу заявку
в ближайший рабочий день

График работы: Пн-Пт 10:00-18:30 (по МСК)