NVMe в сервере: почему все вдруг заговорили про U.2 и Tri-Mode
Лет пять назад серверный диск — это был либо SATA, либо SAS. Всё просто. А теперь продаваны предлагают NVMe, U.2, U.3, Tri-Mode, PCIe 4.0 — и непонятно, совместимо ли это с вашим сервером и нужно ли вообще. Разберёмся спокойно. Обещаю: к концу статьи вы будете знать не меньше половины этих букв. ;)
Коротко, если лень читать.
- NVMe — это не «ещё один диск», а способ подключения по PCIe: в разы быстрее SATA/SAS
- В серверах NVMe-диски бывают в форм-факторе U.2/U.3 (как 2,5" жёсткие, но быстрее)
- Контроллер с Tri-Mode понимает и SAS, и SATA, и NVMe — один слот под всё
- Сервер на PCIe 4.0 → берите 9500-8i; попроще → 9400-8i
Что такое NVMe и почему он быстрее.
SATA и SAS-диски общаются с системой через протокол с очередями «один запрос — один ответ». NVMe работает напрямую по шине PCIe: тысячи параллельных очередей, задержки в разы ниже, скорости — в десятки раз выше. По-простому: SATA-диск — это грузовик по дороге с одним светофором, NVMe — гоночная трасса с сотней полос. Оба доедут, вопрос — когда.
В ноутбуках NVMe давно стал стандартом (те самые накопители M.2). В серверах всё чуть сложнее: там нужны большие объёмы, горячая замена и надёжность, поэтому NVMe-диски делают в форм-факторе U.2/U.3 — внешне как обычный 2,5-дюймовый диск, но внутри это полноценный SSD на шине PCIe.
U.2 или U.3 — в чём разница.
U.2 (SFF-8639) — первое поколение серверных NVMe. U.3 — новое: тот же разъём, но умнее. Если вкратце: U.3 понимает и NVMe, и SAS, и SATA в одном слоте, и обратно совместим с U.2. Так что при выборе между ними — берите U.3, если бюджет позволяет, но и U.2 никуда не денется: это рабочий стандарт на годы. Классическая история про «новое и умное» против «старого и проверенного» — только тут новое ещё и работает. ;)
Tri-Mode: один контроллер — три протокола.
Раньше на каждый тип дисков нужен был свой контроллер: SAS-контроллер не видел NVMe, NVMe-контроллер не видел SATA. Tri-Mode решает это разом: один порт контроллера понимает и SAS, и SATA, и NVMe. Сегодня поставили SATA-диски, завтра добавили NVMe — контроллер менять не надо. Редкий случай, когда слово «завтра» в IT действительно означает «без переделок».
Практичный совет: если собираете сервер «с запасом» — берите контроллер с Tri-Mode. Он дороже простого HBA, но закрывает любые сценарии на годы вперёд. И, что немаловажно, избавляет от неловкого разговора с начальником на тему «почему опять покупаем железо»: проще один раз взять контроллер с запасом, чем дважды объяснять, зачем понадобился второй.
Что брать под вашу задачу.
Сервер на PCIe 4.0, диски NVMe U.2/U.3. Broadcom 9500-8i — SAS-4 (24 Гбит/с), PCIe 4.0, Tri-Mode. Это максимум на сегодня: 8 портов, любые диски, запас лет на пять.
Сервер попроще, массив на SAS/SATA. Broadcom 9400-8i — SAS-3 (12 Гбит/с), Tri-Mode. Золотая середина: и диски обычные видит, и NVMe-диски в него можно подключить.
Бюджет и NAS на ZFS. LSI 9300-8i — проверенная классика в IT-режиме. Без Tri-Mode, но для SATA/SAS — то, что нужно, и стоит копейки. Работает как швейцарские часы, только не такие красивые.
Все модели — в разделе SAS/NVMe контроллеры, с гарантией.
О чём забывают.
Слот PCIe. 9500-8i — это PCIe 4.0 x8. В слоте PCIe 3.0 x8 он заработает, но на скорости PCIe 3.0. Проверьте слот до покупки. Иначе купите «быстрый» контроллер и будете жить на старой скорости, утешая себя мыслью, что «зато с запасом».
Кабели. Для NVMe U.2 нужны специальные кабели SFF-8643 → U.2 (SlimSAS), они не всегда идут в комплекте. Уточняйте. Докупить кабель проще, чем объяснять жене, зачем в доме третий сервер.
Охлаждение. NVMe-диски греются сильнее SATA. В корпусе с плохим обдувом они будут сбрасывать скорость. Обдув — обязателен. Быстрый диск без охлаждения — это кто быстрее в пробке постоит.
Разъёмы бэкплейна. NVMe работает не через любой бэкплейн: нужен бэкплейн с поддержкой NVMe/U.2, а не просто SAS. Это частая ошибка при сборке. Все собирают, никто не читает инструкцию — так что вы будете не первым, кто узнает об этом на этапе «почему не видит».
Словарик терминов.
NVMe (Non-Volatile Memory Express) — протокол доступа к SSD по шине PCIe; высокая пропускная способность и низкие задержки.
NVMe разработан специально для флеш-памяти, тогда как предшественник AHCI создавался для жёстких дисков. Ключевое отличие — параллелизм: до 65 535 очередей команд (глубиной до 65 535) против одной очереди у AHCI, что позволяет SSD выдавать сотни тысяч IOPS. Накопители выпускаются в форм-факторах M.2, U.2/U.3, EDSFF и подключаются напрямую к линиям PCIe (3.0/4.0/5.0) — от 3,5 ГБ/с на накопителе и выше. Сетевое расширение — NVMe over Fabrics (NVMe-oF).
Подробнее: NVM Express — Википедия
SAS — интерфейс подключения накопителей для серверов: SAS-2 (6 Гбит/с), SAS-3 (12 Гбит/с), SAS-4 (24 Гбит/с).
SAS — наследник параллельного SCSI с последовательной передачей «точка-точка»: каждый диск — отдельная линия, без конфликтов шины, с полноценной горячей заменой. Протокол понимает и диски SATA (на SAS-контроллер можно подключать оба типа; обратно — нет). SAS ценят за надёжность: dual-port (два порта на накопителе) для отказоустойчивых подключений и предсказуемое поведение в массивах.
Подробнее: Serial Attached SCSI — Википедия
SATA — интерфейс подключения накопителей до 6 Гбит/с; применяется в потребительском и серверном сегменте.
SATA пришёл на смену параллельному ATA (IDE) в начале 2000-х: один накопитель — одна линия, без перемычек, с горячей заменой (AHCI). Три поколения: 1,5 / 3 / 6 Гбит/с; реальная скорость ограничена ~550–600 МБ/с. В серверах SATA — дешёвая альтернатива SAS (SATA-диски подключаются к SAS-контроллерам), но без dual-port и с меньшим ресурсом записи.
Подробнее: SATA — Википедия
PCIe (PCI Express) — высокоскоростная последовательная шина для подключения контроллеров и NVMe-накопителей.
PCIe заменила параллельные PCI/PCI-X: данные идут по последовательным линиям (lanes), устройство занимает x1–x16. Поколения удваивают скорость: PCIe 3.0 — ~1 ГБ/с на линию, 4.0 — 2 ГБ/с, 5.0 — ~4 ГБ/с. Совместимость обратная: карта 4.0 работает в слоте 5.0 и наоборот, но на скорости младшего. NVMe-накопитель обычно использует x4, HBA — x8; при сборке важно сверять поколение PCIe у процессора, слота и устройства.
Подробнее: PCI Express — Википедия
U.2 (SFF-8639) / U.3 — серверные форм-факторы NVMe-накопителей 2,5"; U.3 поддерживает NVMe/SAS/SATA и совместим с U.2.
U.2 — стандартный серверный отсек 2,5", объединяющий SAS, SATA и NVMe (PCIe): разъём SFF-8639 шире обычного и содержит линии PCIe, поддерживает горячую замену и dual-port. U.3 (SFF-TA-1001) — эволюция: управляющие сигналы вынесены на отдельные контакты, один отсек работает с любым типом накопителя. Диск U.2 встаёт в отсек U.3 и наоборот; бэкплейн должен поддерживать нужный тип сигналов (обычный SAS-бэкплейн NVMe не передаёт).
Подробнее: U.2 (SFF-8639) — Википедия), U.3 — English Wikipedia
Tri-Mode — режим контроллера: один порт поддерживает SAS, SATA и NVMe.
Обычный SAS/SATA-контроллер не понимает NVMe, а NVMe-контроллер — SAS/SATA; Tri-Mode решает это на уровне порта: разъём автоматически определяет тип накопителя и переключает сигнальную схему. Режим удобен при модернизации: в один сервер ставят NVMe U.2/U.3, SATA-SSD и SAS-диски без замены контроллера. Требует совместимого бэкплейна и кабелей — проверяйте и разъём, и корзину.
Подробнее: U.3 — English Wikipedia
M.2 — компактный форм-фактор накопителей для ноутбуков и ПК.
M.2 — карта шириной 22 мм и длиной 30–110 мм (2230…22110), пришедшая на смену mSATA. Разъём несёт линии PCIe и/или SATA в зависимости от «ключа» (B или M); в слоте работают NVMe-SSD, SATA-SSD и модули Wi-Fi. В серверах M.2 используют ограниченно (загрузка, кэш) — без горячей замены и обычно один на слот. При выборе важно различать ключ B/M и поддержку NVMe/SATA.
Подробнее: M.2 — Википедия
SFF-8643 (SlimSAS) — внутренний разъём SAS/NVMe.
SFF-8643 (mini-SAS HD) — внутренний разъём SAS, ставший стандартом серверных корпусов: один разъём передаёт четыре линии (x4) — четыре канала SAS по 12 Гбит/с (SAS-3) или четыре линии PCIe для NVMe. Через него внутренние порты HBA (9400-8i) соединяются с бэкплейном или накопителями. Компактнее предшественника SFF-8087; используется и в Tri-Mode контроллерах. Кабели бывают SAS и NVMe (с переходом на U.2) — не перепутайте тип.
Подробнее: Serial Attached SCSI — English Wikipedia
Бэкплейн (Backplane) — панель с разъёмами в корпусе для подключения накопителей.
Бэкплейн — печатная плата в передней части корпуса: диски вставляются в неё, с обратной стороны подключаются кабели к контроллеру. Объединяет сигналы и питание отсеков, поддерживает индикацию и горячую замену. Бывает пассивным (простое соединение) и активным (с SAS-экспандером). Тип критичен: SAS/SATA-бэкплейн не передаёт NVMe — для Tri-Mode и U.2/U.3 нужен совместимый.
Подробнее: Backplane — Википедия
HBA, IT-режим, ZFS — см. статью «Как выбрать SAS-контроллер».
По теме.
- Как выбрать SAS-контроллер, чтобы потом не кусать локти — база серии: HBA, IT/IR-режим, 8i/8e
- Дисковые полки JBOD — куда ставить много дисков, когда отсеки в корпусе кончились
- 10GbE — NVMe-сервер выдаёт гигабайт в секунду, а гигабитная сеть такое не переварит
---
Всё есть в разделе SAS/NVMe контроллеры. Если сомневаетесь, какой контроллер под ваши диски и слот — напишите нам: подскажем совместимость, кабели и прошивку. Без осуждения, мы такое уже видели.