Содержание

RAID

RAID (англ. redundant array of independent/inexpensive disks — избыточный массив независимых/недорогих жёстких дисков) — массив из нескольких дисков, управляемых контроллером, взаимосвязанных скоростными каналами и воспринимаемых внешней системой как единое целое. В зависимости от типа используемого массива может обеспечивать различные степени отказоустойчивости и быстродействия. Служит для повышения надёжности хранения данных и/или для повышения скорости чтения/записи информации (RAID 0).

Мониторинг RAID обычная задача пользователя. Почему пользователя? В настоящее время RAID -массивы стоят на различных устройствах, начиная от NAS для домашнего использования и заканчивая промышленными серверами. Нередко на обычном компьютере стоит RAID.

Виды RAID -массивов

К сожалению, каждая разновидность RAID (имеется ввиду производитель решения) контролируется разными программами - нет единообразия решений.

Выбор RAID - контроллера

Software vs FakeRaid

В реальном аппаратном рейде контрольные суммы вычисляются на контроллере + там есть проверка на отложенную запись.

Повторяю для особо одарённых: настоящий RAID абсолютно прозрачен для операционных систем (любых), не требует установки драйверов, не даёт увидеть отдельных дисков вместо массива целиком. Всё остальное - software/fake raid.

Поддержка RAID в Linux

Многие контроллеры RAID для своей работы требует драйвера на уровне ядра операционной системы. Для того чтобы выяснить поддерживает ли ядро ваше устройство нужно установить файлы документации.

Для Debian:

# aptitude install linux-doc-2.6.26 user-mode-linux-doc

Для Ubuntu:

# aptitude install linux-doc user-mode-linux-doc

После установки, например поддержка RAID контроллеров Adaptec будет описана в файле aacraid.txt.gz

# mcedit /usr/share/doc/linux-doc/scsi/aacraid.txt.gz

Мониторинг состояния HDD, RAID

Уровни спецификации RAID и таблица сравнения быстродействия RAID

Калифорнийский университет в Беркли представил следующие уровни спецификации RAID, которые были приняты как стандарт де-факто:

(+): За счёт этого существенно повышается производительность (от количества дисков зависит кратность увеличения производительности).

(+): RAID 0 может быть реализован как программно, так и аппаратно.

(−): Страдает надёжность всего массива (при выходе из строя любого из входящих в RAID 0 винчестеров полностью и безвозвратно пропадает вся информация). Надёжность массива RAID 0 заведомо ниже надёжности любого из дисков в отдельности.

(+): Обеспечивает приемлемую скорость записи и выигрыш по скорости чтения при распараллеливании запросов.

(+): Имеет высокую надёжность — работает до тех пор, пока функционирует хотя бы один диск в массиве.

(-): Недостаток заключается в том, что приходится выплачивать стоимость двух жёстких дисков, получая полезный объем одного жёсткого диска (классический случай, когда массив состоит из двух дисков).

Изначально предполагается, что жёсткий диск — вещь надёжная. Соответственно, вероятность выхода из строя сразу двух дисков равна (по формуле) произведению вероятностей отказа каждого диска, то есть ниже на порядок. К сожалению, данная теоретическая модель недостаточно полно отражает процессы, протекающие в реальной жизни. Так, обычно два винчестера берутся из одной партии и работают в одинаковых условиях, а при выходе из строя одного из дисков нагрузка на оставшийся увеличивается, поэтому на практике при выходе из строя одного из дисков следует срочно принимать меры — вновь восстанавливать избыточность. Для этого с любым уровнем RAID (кроме нулевого) рекомендуют использовать диски горячего резерва. Достоинство такого подхода — поддержание постоянной надёжности. Недостаток — ещё большие издержки (то есть стоимость трёх винчестеров для хранения объёма одного диска).

Зеркало на многих дисках — RAID 1+0. При использовании такого уровня зеркальные пары дисков выстраиваются в «цепочку», поэтому объём полученного тома может превосходить ёмкость одного жёсткого диска. Достоинства и недостатки такие же, как и у уровня RAID 0. Как и в других случаях, рекомендуется включать в массив диски горячего резерва из расчёта один резервный на пять рабочих.

Комбинированные уровни RAID

Помимо базовых уровней RAID 0 — RAID 5, описанных в стандарте, существуют комбинированные уровни RAID 1+0, RAID 3+0, RAID 5+0, RAID 1+5, которые различные производители интерпретируют каждый по-своему.

- RAID 1+0 — это сочетание зеркалирования и чередования.

Нынешние контроллеры используют этот режим по умолчанию для RAID 1. То есть, 1 диск основной, 2-й диск — зеркало, причем чтение производится с них поочередно, как для RAID 0. Собственно, сейчас можно считать что RAID 1 и RAID 1+0 — это просто разное название одного и того же метода аппаратного зеркалирования дисков. Но не стоит забывать, что полноценный RAID 1+0 должен содержать как минимум 4 диска.

- RAID 5+0 — это чередование томов 5-го уровня. RAID 1+5 — RAID 5 из зеркалированных пар. И так далее.

Комбинированные уровни наследуют как преимущества, так и недостатки своих «родителей»: появление чередования в уровне RAID 5+0 нисколько не добавляет ему надёжности, но зато положительно отражается на производительности. Уровень RAID 1+5, наверное, очень надёжный, но не самый быстрый и, к тому же, крайне неэкономичный: полезная ёмкость тома меньше половины суммарной ёмкости дисков…

Стоит отметить, что количество жестких дисков в комбинированных массивах также изменится. Например для RAID 5+0 используют 6 или 8 жестких дисков, для RAID 1+0 — 4, 6 или 8.