RAID
Технология объединения нескольких дисков в один логический том ради отказоустойчивости, скорости или увеличения объёма.
Что такое RAID
RAID (Redundant Array of Independent Disks — избыточный массив независимых дисков) — технология объединения нескольких физических накопителей в один логический том. Операционная система видит один диск, а данные распределены по нескольким.
Решает три задачи, и почти всегда с компромиссом между ними:
- Отказоустойчивость — массив переживает выход диска из строя без потери данных.
- Скорость — чтение и запись параллельно с нескольких дисков.
- Объём — один том больше самого крупного из имеющихся накопителей.
Изначально аббревиатуру расшифровывали как Inexpensive Disks — идея была собрать надёжное хранилище из дешёвых серийных дисков вместо одного дорогого промышленного. Сегодня прижилось Independent.
Уровни RAID
| Уровень | Мин. дисков | Полезный объём | Переживает отказ | Смысл |
|---|---|---|---|---|
| RAID 0 | 2 | 100% | Нет | Только скорость и объём |
| RAID 1 | 2 | 50% | N−1 дисков | Зеркало, простое и надёжное |
| RAID 5 | 3 | (N−1)/N | 1 диск | Компромисс объём/надёжность |
| RAID 6 | 4 | (N−2)/N | 2 диска | RAID 5 для больших дисков |
| RAID 10 | 4 | 50% | 1 в каждом зеркале | Скорость + надёжность, дорого |
RAID 0 отказоустойчивости не даёт вовсе — наоборот, снижает: отказ любого диска убивает весь массив, и вероятность отказа растёт с числом дисков. Слово «избыточный» в названии к нулевому уровню не относится.
RAID 5 хранит контрольные суммы, размазанные по всем дискам. Его репутация испортилась с ростом объёмов: при замене диска массив читает все оставшиеся целиком, чтобы пересчитать данные. На больших HDD это тянется сутками, все диски под полной нагрузкой, а второй отказ в этом окне убивает массив. Отсюда правило: на дисках от нескольких терабайт — RAID 6 или RAID 10, но не RAID 5.
RAID 10 — зеркала, объединённые в страйп. Быстрее всех на случайной записи и быстро восстанавливается (копируется только один диск, не весь массив). Платите половиной объёма.
Что такое RAID-контроллер
RAID-контроллер — устройство или программный слой, который собирает физические диски в массив и считает контрольные суммы. Вариантов три, и разница между ними существенная.
Аппаратный RAID — отдельная плата в слоте PCIe со своим процессором и кешем: Broadcom/LSI MegaRAID, Dell PERC, HPE Smart Array. Считает чётность сама, не трогая CPU. ОС видит готовый том.
Тут критична деталь, которую часто игнорируют: кеш на запись без защиты питания опасен. Контроллер отвечает «записано», держа данные в своей памяти. Пропало питание — данные исчезли, а массив уверен, что всё на диске. Поэтому на write-back кеш ставят батарею (BBU) или флеш-защиту. Без них включать write-back — приглашение к порче данных.
Второй нюанс аппаратного RAID: массив привязан к модели контроллера. Плата умерла — диски нужно вставить в совместимый контроллер, иначе метаданные никто не прочитает.
Программный RAID — массив собирает ОС: mdadm в Linux, RAIDZ в ZFS, Storage Spaces в Windows. Современному процессору расчёт чётности почти ничего не стоит, а массив не привязан к железу: диски переезжают в любой сервер. Для этого контроллер переводят в режим HBA / IT mode — сквозной проброс дисков без своей логики.
Fake RAID — «RAID» на чипсете материнской платы. Своего процессора у него нет, всё считает драйвер, то есть тот же программный RAID, но с проприетарным форматом и хуже диагностикой. Сюда же относится большинство настроек RAID в UEFI на десктопных платах.
# Собрать зеркало из двух дисков (Linux, mdadm)
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
# Состояние массивов
cat /proc/mdstat
mdadm --detail /dev/md0
NVMe RAID mode: что это в настройках UEFI
Частый вопрос при сборке или установке системы. NVMe RAID Mode (у Intel это связано с VMD — Volume Management Device и технологией RST, у AMD — RAIDXpert2) — параметр в UEFI, переключающий режим работы контроллера накопителей.
- AHCI / NVMe (обычный режим) — диск виден системе напрямую. Значение по умолчанию для большинства сценариев.
- RAID / VMD (режим RAID) — контроллер перехватывает диски и отдаёт их ОС как массив, но только при наличии специального драйвера.
Отсюда самая распространённая проблема: установщик Windows не видит NVMe-диск. Причина обычно в том, что в UEFI включён режим RAID/VMD, а драйвера у установщика нет. Решений два — либо подгрузить драйвер (Intel RST/VMD или AMD RAID) кнопкой «Загрузить драйвер», либо переключить режим в AHCI, если массив вам не нужен.
Отдельно стоит запомнить: менять режим после установки ОС нельзя. Windows загрузится с ошибкой INACCESSIBLE_BOOT_DEVICE, потому что нужный драйвер хранилища не был инициализирован при загрузке.
И ещё: полноценного аппаратного RAID для NVMe в привычном виде почти нет — классический контроллер стал бы узким местом на скоростях PCIe. Практика для NVMe — программный массив (mdadm, ZFS) или платформенные решения вроде Intel VROC, часть возможностей которого на серверных платформах исторически требовала лицензионного ключа.
RAID — это не резервная копия
Самое важное и самое игнорируемое. RAID защищает от отказа железа, и только от него. Он не спасает от:
- случайного
rm -rfиDROP TABLE— удаление честно продублируется на все диски; - шифровальщика — по той же причине;
- порчи данных на уровне ФС или приложения;
- пожара, залива и кражи сервера;
- ошибки самого контроллера.
RAID даёт непрерывность работы: диск умер, сервис живёт. Резервное копирование даёт возможность вернуться назад во времени. Это разные задачи, и одно другое не заменяет — эти уровни защиты нужны оба.
Связанные термины
- SSD и HDD — накопители, из которых собирают массив
- NVMe SSD — почему для него используют программный RAID
- UEFI и BIOS — где включается режим RAID/VMD
- Резервное копирование — то, что RAID не заменяет
- СХД — промышленные хранилища на базе RAID-массивов
- SLA и отказоустойчивость — контекст, ради которого RAID и внедряют
Готовы запустить GPU-задачу?
Запустить GPU-сервер