SSD, M.2, SATA, SAS и NVMe: что именно определяет совместимость
Надпись «SSD» говорит о типе накопителя на флеш-памяти, но не о способе его подключения. Модуль M.2 может быть SATA SSD или PCIe SSD с протоколом NVMe. Внешне похожие M.2-накопители могут использовать разные контакты, линии и драйверы, поэтому слот M.2 на плате нужно проверять по документации: какие ключи, интерфейсы и длины модулей он поддерживает.
Тип накопителя не заменяет проверку топологии подключения
| Вариант | Интерфейс и протокол | Типичное подключение | Варианты RAID |
|---|---|---|---|
| SATA SSD, включая SATA M.2 | SATA | Порт SATA, SATA/SAS HBA или совместимый RAID-контроллер | Программный, платформенный или аппаратный RAID при поддержке |
| SAS SSD | SAS | SAS HBA или SAS RAID-контроллер; корзина с SAS-экспандером может быть промежуточной частью тракта | Программный или аппаратный RAID при поддержке |
| NVMe M.2 | PCIe + NVMe | M.2-слот с PCIe, райзер, адаптер или PCIe-коммутатор | Программный, платформенный или аппаратный NVMe RAID |
| U.2, U.3 или EDSFF NVMe SSD | PCIe + NVMe | NVMe-бэкплейн, кабели, PCIe-порты или tri-mode-цепочка | Программный, платформенный или аппаратный NVMe RAID |
Следовательно, SATA M.2 и NVMe M.2 отличаются не только скоростью. SATA M.2 работает в SATA-стеке и обычно виден системе как обычный SATA-накопитель. NVMe M.2 использует PCIe-линии и NVMe-драйвер; для него важны распределение линий PCIe, возможности слота, райзера и прошивки платформы. Наличие физического разъёма M.2 не означает, что он поддерживает оба варианта.
Можно ли создать RAID из разных типов SSD
Отдельный массив из SATA SSD, отдельный массив из SAS SSD и отдельный массив из NVMe SSD — обычные схемы, если их поддерживают контроллер или программный стек. SATA M.2 можно объединять так же, как другие SATA SSD, но только если слот или адаптер действительно выводит SATA и накопитель обнаружен платформой. Для NVMe RAID не обязательно покупать отдельный аппаратный контроллер: возможны программный RAID, RAID-функция платформы и аппаратный NVMe RAID.
Смешать SATA, SAS и NVMe в одном массиве иногда технически возможно, но это не универсальная возможность и обычно неудачная отправная точка для серверной конфигурации. RAID-реализация может запрещать сочетание интерфейсов, типов носителей или секторных форматов. Даже если массив создаётся, доступная ёмкость каждого участника обычно ограничивается объёмом наименьшего диска. Более медленный SSD или накопитель с нестабильной длительной записью может ограничивать производительность и увеличивать задержки, а диск с меньшим ресурсом или большей фактической нагрузкой — раньше исчерпать ресурс записи.
Не смешивайте накопители без подтверждения поддержки
Как подключают SATA, SAS и NVMe SSD к RAID
SATA SSD подключают к SATA-портам платы, HBA или RAID-контроллеру. Для SAS SSD нужен полный SAS-совместимый путь до хоста: SAS HBA или SAS RAID-контроллер, а при наличии корзины — также совместимые кабели, бэкплейн и экспандер. HBA обычно передаёт отдельные накопители операционной системе и не формирует аппаратный RAID сам по себе; массив в такой схеме создаёт ОС или иной программный слой.
NVMe SSD подключаются по PCIe; в зависимости от схемы тракт ведёт к корневому комплексу процессора или чипсета, PCIe-коммутатору либо совместимому RAID-контроллеру. Накопители можно передать ОС напрямую для программного массива, подключить к платформенной RAID-функции либо к RAID-контроллеру, который явно поддерживает NVMe. Совместимыми должны быть все присутствующие в выбранном тракте компоненты: PCIe-линии от установленного процессора, слот или райзер, а при их использовании — кабель, бэкплейн, контроллер и его прошивка.
Три варианта NVMe RAID
- Программный RAID. ОС работает с отдельными NVMe-устройствами и формирует массив собственными средствами. В Linux распространён mdadm; порядок настройки вынесен в статью «Как создать и настроить программный RAID в Linux с mdadm».
- Платформенный RAID. Логика RAID использует в озможности платформы, BIOS/UEFI и драйвер. Пример такого подхода — Intel VROC, но его доступность, уровни RAID, требования к накопителям и лицензированию нужно сверять для конкретного поколения платформы, процессора, BIOS/UEFI и драйвера.
- Аппаратный NVMe или tri-mode RAID. Контроллер создаёт логический диск и может поддерживать SAS, SATA и PCIe/NVMe. Это не отменяет проверки физической топологии и совместимости.
Обычный SAS/SATA RAID-контроллер не превращает NVMe SSD в SATA-диски: NVMe использует другой транспорт — PCIe — и другой протокол. Даже трёхрежимный RAID-контроллер не является гарантией готового NVMe RAID. Обозначение tri-mode говорит о потенциальной поддержке нескольких типов устройств, но конкретная конфигурация может требовать NVMe-портов контроллера, правильных кабелей, совместимого бэкплейна, поддерживаемой прошивки и, в отдельных реализациях, лицензии.
Контроллер и бэкплейн — единая цепочка
Когда для нескольких NVMe нужна PCIe Bifurcation
PCIe Bifurcation делит линии одного PCIe-слота на несколько логических PCIe-портов: например, слот x16 — на четыре соединения x4. Это нужно, когда несколько NVMe на пассивном адаптере должны быть напрямую видны платформе. Bifurcation не создаёт RAID, не заменяет RAID-контроллер и не добавляет линий PCIe.
Bifurcation нужна не во всех схемах. Деление линий может не требоваться, если каждый NVMe подключён к отдельному PCIe-порту платформы либо используется активный адаптер или бэкплейн с PCIe-коммутатором. Само наличие специализированного NVMe-бэкплейна ничего не гарантирует: пассивный бэкплейн может зависеть от деления линий вышестоящего PCIe-порта. Для пассивной карты или бэкплейна необходимо сверить поддержку bifurcation именно у выбранного слота или порта при установленной конфигурации процессоров и райзеров: доступные схемы x8/x8, x4/x4/x4/x4 и другие варианты различаются между платформами.
Создание NVMe RAID и загрузка ОС — разные проверки
Массив может успешно создаваться и быть доступен работающей ОС, но не появляться как загрузочное устройство. Загрузка с NVMe RAID зависит от реализации RAID, режима BIOS/UEFI, версии прошивки, загрузочного драйвера, поддержки ОС и разметки загрузочного тома. Для платформенного RAID особенно важно проверить, видит ли установщик нужный драйвер и может ли прошивка передать загрузку с созданного массива.
Перед развёртыванием ОС нужно отдельно подтвердить три результата: контроллер или платформа видит все физические SSD; RAID-стек создаёт и показывает логический диск; этот логический диск доступен установщику и присутствует среди загрузочных целей. Общий порядок создания аппаратного массива через интерфейс прошивки описан в статье «Как создать RAID-массив на сервере через BIOS/UEFI».
Почему RAID на SSD не складывает паспортную скорость
Высокие паспортные IOPS и последовательная скорость SSD не дают заранее известной скорости массива. IOPS, пропускная способность и задержки зависят от профиля нагрузки: размера блока, доли чтения и записи, случайности доступа, глубины очереди и параллелизма. Для NVMe дополнительно важны поколение и число линий PCIe, возможное узкое место в райзере, бэкплейне или PCIe-коммутаторе.
- RAID-контроллер, его процессор, очередь команд и политика кэша могут ограничивать производительность быстрее, чем сами SSD.
- Устойчивую запись SSD снижают заполненность, сборка мусора, внутренний SLC-кэш и фоновая работа накопителя; кратковременный benchmark не всегда показывает рабочий результат.
- Массивы с чётностью тратят ресурсы на вычисление чётности и обработку частичных записей. Размер Stripe Size и политика кэша влияют на результат, но не имеют универсального значения для всех нагрузок.
- При соединении быстрых и медленных SSD производительность и задержки часто определяются более медленным участником или его поведением при длительной записи.
Настройка Write-Back, Stripe Size и оценка RAID скорости записи требуют отдельного анализа нагрузки и защиты кэша; это разобрано в статье «Кэш RAID-контроллера, Write Back и Stripe Size: выбор без лишнего риска». Измерять массив следует с профилем, похожим на реальное приложение, включая длительную запись и задержки, а не только пиковую последовательную скорость: «Как тестировать производительность RAID: IOPS, задержки, fio и правила корректного benchmark».
RAID 1, RAID 10 и чётность на SSD и NVMe
Особенности SSD не отменяют различий между уровнями RAID. RAID 1 и RAID 10 обычно проще оценивать при интенсивной записи: запись идёт в копии данных, без расчёта распределённой чётности. Это не гарантирует одинаковую производительность на любой реализации — многое зависит от контроллера, очередей, задержек SSD и профиля I/O.
В RAID 5 и RAID 6 быстрая флеш-память уменьшает часть задержек, но не устраняет штраф мелкой частичной записи. Если запись не покрывает полную полосу, реализация часто выполняет операции чтения-модификации-записи и вычисляет чётность. RAID-кэш может сгладить часть нагрузки, но его эффект и корректность зависят от конкретной реализации и защищённости кэша.
Во время Rebuild массива с чётностью оставшиеся участники читаются, а отсутствующие данные пересчитываются и записываются на замену. SSD способны сократить продолжительность такой операции по сравнению с HDD, однако rebuild всё равно конкурирует с рабочей нагрузкой, повышает задержки и нагружает оставшиеся диски. Пока массив находится в деградированном режиме, часть избыточности уже потеряна; оставлять его в этом состоянии надолго рискованно.
Формулы ёмкости, допустимые отказы и общий выбор уровней приведены отдельно: «Как выбрать RAID 0, 1, 5, 6 или 10: ёмкость и отказоустойчивость».
Ресурс SSD, защита питания и мони торинг
Для серверного RAID важны не только интерфейс и ёмкость SSD. Следует оценить заявленный производителем ресурс записи — обычно TBW или DWPD, — устойчивую производительность после заполнения, допустимый профиль нагрузки, температуру, версию прошивки и доступность совместимой замены. RAID с чётностью, rebuild, фоновые проверки и служебная активность могут увеличить фактический объём записей на накопители.
Для критичных записей особенно значима защита от потери питания, или PLP. Она помогает накопителю сохранить данные и внутренние метаданные при внезапном отключении питания, когда используется энергозависимый кэш. PLP не обязательна для каждого сценария, но отсутствие такой защиты нужно осознанно учитывать вместе с поведением кэша SSD, контроллера и источника бесперебойного питания.
RAID не заменяет резервные копии
Мониторинг должен охватывать логический массив, каждый физический SSD, контроллер, его кэш и средства защиты кэша. Доступность S.M.A.R.T., диагностических данных, TRIM для SATA SSD и аналогичных команд управлени я зависит от модели диска, ОС, драйвера, контроллера и режима представления накопителя; считать такую передачу данных универсальной нельзя. Практический порядок мониторинга описан в статье «Мониторинг и профилактика RAID: S.M.A.R.T., Patrol Read, Consistency Check и оповещения».
Что проверить до создания RAID на SSD или NVMe
Проверка совместимости RAID-стека
Эта последовательность помогает отделить поддержку накопителя от поддержки массива и загрузки с него.
- 1Определить интерфейс каждого SSDЗафиксируйте для каждого накопителя форм-фактор, SATA/SAS/NVMe, доступную ёмкость, секторный формат, модель и прошивку. Не делайте вывод об интерфейсе только по форм-фактору M.2.
- 2Проверить физический путь подключенияДля SATA и SAS проверьте порты, HBA или контроллер, кабели и дисковую корзину. Для NVMe — PCIe-линии от установленного процессора, слот, райзер, бэкплейн, кабель и необходимость bifurcation либо PCIe-коммутатора.
- 3Выбрать RAID-реализациюУточните, будет ли использоваться программный RAID, функция платформы или аппаратный NVMe/tri-mode RAID. Сверьте поддерживаемые типы SSD, RAID-уровни, ограничения числа устройств, версии BIOS/UEFI, драйвера и прошивки.
- 4Отдельно проверить загрузкуУбедитесь в документации платформы и выбранной ОС, что созданный RAID-том поддерживается как загрузочный. Проверьте режим UEFI или Legacy, драйвер установщика и видимость массива среди загрузочных устройств.
- 5Оценить рабочий режим и отказСопоставьте ресурс записи SSD, PLP, устойчивую производительность, мониторинг, доступность запасного накопителя и поведение массива во время rebuild. Рассчитывайте производительность с зап асом на деградированный режим и фоновые операции.
Термины в статье
- Аппаратный RAID
- Реализация RAID, в которой специализированный контроллер формирует логические диски и выполняет операции массива. Наличие и защита кэша зависят от модели.
- Деградированный режим
- Состояние отказоустойчивого RAID-массива, потерявшего часть избыточности, но сохраняющего доступ, пока сочетание отказов допустимо для его уровня и раскладки.
- Дисковая корзина
- Дисковая корзина — узел шасси с отсеками для установки нескольких накопителей и организации их подключения к питанию и контроллеру либо HBA.
- Защита от потери питания
- Защита от потери питания — функция SSD, сохраняющая данные и метаданные из энергозависимого кэша при внезапном отключении питания за счёт накопленной энергии.
- Логический диск
- Логический диск — блочное устройство, которое RAID-контроллер или программная RAID-подсистема предоставляет хосту как отдельный накопитель.
- Программный RAID
- RAID, реализованный ОС или другим программным стеком хоста без отдельного аппаратного RAID-контроллера. Использует вычислительные ресурсы сервера.
- Трёхрежимный RAID-контроллер
- Аппаратный RAID-контроллер, интерфейсы которого поддерживают SAS-, SATA- и PCIe/NVMe-накопители; схема подключения зависит от контроллера и платформы.
- Чётность
- Избыточные контрольные данные, вычисляемые из блоков одной полосы RAID. Один блок чётности защищает от отказа одного диска, два независимых блока RAID 6 — от от каза двух.
- HBA
- HBA — адаптер ввода-вывода, соединяющий сервер с накопителями или SAN и не формирующий аппаратные RAID-массивы.
- Intel VROC
- Intel VROC — платформенная реализация RAID для NVMe SSD, подключённых к PCIe-линиям поддерживаемых процессоров Intel; использует Intel VMD и драйвер вместо отдельного RAID-контроллера.
- IOPS
- IOPS — число завершённых операций ввода-вывода в секунду, которое накопитель, RAID-массив или СХД обеспечивает при заданном профиле нагрузки.
- M.2
- M.2 — спецификация компактного разъёма и модулей расширения, определяющая размеры и ключи; накопители M.2 могут использовать интерфейс SATA или PCIe.
- mdadm
- Утилита командной строки Linux для создания, сборки, мониторинга и изменения программных RAID-массивов подсистемы MD.
- NVMe
- NVMe — протокол обмена командами с энергонезависимыми накопителями, оптимизированный для параллельного ввода-вывода; локальные NVMe-SSD обычно подключаются по PCIe.
- PCIe Bifurcation
- PCIe Bifurcation — деление линий одного слота PCI Express на несколько логических портов, например x16 на два x8 или четыре x4, для прямого подключения нескольких устройств.
- RAID
- Технология объединения нескольких накопителей в логические блочные устройства для повышения производительности и/или отказоустойчивости в зависимости от RAID-уровня.
- RAID 1
- RAID 1 — уровень RAID с зеркалированием данных на двух или более дисках. Полезная ёмкость равна ёмкости наименьшего участника, а доступ сохраняется, пока исправна хотя бы одна копия.
- RAID 10
- Комбинированный уровень: чередование (RAID 0) поверх зеркальных пар (RAID 1). Сочетает высокую скорость и отказоустойчивость, отдавая под избыточность половину ёмкости.
- RAID 5
- RAID 5 — уровень RAID с чередованием данных и распределённой чётностью, выдерживающий отказ одного диска. Требует минимум трёх дисков.
- RAID 6
- Уровень RAID с чередованием данных и двойной распределённой чётностью. Выдерживает отказ любых двух дисков; минимум четыре диска.
- RAID-контроллер
- Устройство или модуль, который формирует RAID-массивы из накопителей и предоставляет ОС логические диски, управляя размещением данных, отказами и восстановлением избыточности.
- RAID-кэш
- Буфер быстрой памяти между хостом и накопителями RAID, используемый для кэширования чтения и записи. Может снижать задержку и повышать производительность ввода-вывода.
- Rebuild
- Процесс восстановления избыточности массива после замены отказавшего диска: контроллер вычисляет и записывает на новый диск недостающие данные из остальных дисков.
- S.M.A.R.T.
- S.M.A.R.T. — технология самодиагностики накопителей, собирающая показатели состояния и ошибок. Она помогает выявлять признаки деградации диска до отказа.
- SAS
- SAS — последовательный интерфейс и набор протоколов SCSI для подключения накопителей, поддерживающий адресацию устройств, экспандеры и обычно двухпортовое подключение дисков.
- SATA
- SATA — последовательный интерфейс подключения HDD, SSD и оптических приводов; в обычной прямой схеме один порт контроллера соединён с одним накопителем.
- TRIM
- TRIM — операция ATA, которой ОС сообщает SATA SSD, что указанные логические блоки больше не используются; немедленное стирание данных при этом не гарантируется.
- Write-Back кэш
- Политика кэша RAID-контроллера: запись подтверждается после помещения данных в кэш, а на накопители переносится позже. Кэш требует защиты от потери питания.
