Надёжное хранилище RAID 6 Массивы RAID (Redundant Array of Inexpensive/Independent Drives) являются наиболее распространённым решением, когда производительности, ёмкости или надёжности одного жёсткого диска недостаточно. Именно поэтому RAID встречается в серверах, рабочих станциях или производительных настольных компьютерах. Поскольку для RAID необходимо использовать два или более жёстких дисков, то массив нельзя назвать дешёвым. Кроме того, на суммарную цену может повлиять и сам контроллер. Наше недавнее Сегодня почти все материнские платы верхнего уровня используют встроенный RAID-контроллер Serial ATA, где чаще всего встречаются режимы RAID 0 и 1. Впрочем, RAID 0 не обеспечивает избыточности хранения данных. Цель этого массива – увеличение пропускной способности. При этом надёжность хранения даже снижается: если хотя бы один диск выйдет из строя, то весь массив будет потерян. RAID 1 выполняет совершенно противоположную задачу: он копирует содержимое одного жёсткого диска на другой в реальном времени, поэтому если любой из накопителей выйдет из строя, данные не будут потеряны. В бизнес-окружении RAID 1 или 0+1 (комбинация RAID 0 и 1 на четырёх приводах) считается самой простой. Поскольку сохранность данных в “зеркале” RAID 1 обеспечивается за счёт уменьшения доступной ёмкости в два раза, для больших дисковых массивов используются режимы RAID 3 или RAID 5. Оба генерируют информацию избыточности со всех приводов в массиве. RAID 3 сегодня практически исчез, поскольку информация избыточности записывается на один жёсткий диск, что приводит к нежелательному “узкому месту”. RAID 5, напротив, распределяет информацию избыточности по всем накопителям. Таким образом, чем больше накопителей вы добавите, тем быстрее будет работать RAID-массив. RAID 6 основывается на том же принципе, что и RAID 5, но добавляет ещё один уровень защиты, повторно высчитывая информацию избыточности, но уже по другому алгоритму. При этом требуются сложные вычисления из области матричной алгебры, так что “железу” есть, чем заняться. Как работают массивы с избыточностью? Проблема с массивами с избыточностью – RAID 5 или RAID 6 – заключается в том, чтобы генерировать нужную информацию “на лету”. При этом должна существовать возможность восстановления данных массива с помощью сгенерированной информации избыточности. Чтобы понять принцип избыточности, можно обратиться к самому простому варианту: булевой операции “исключающее ИЛИ” (XOR). В следующей таблице показано, как она работает. Не считая генерации информации избыточности, массив RAID 5 не отличается от RAID 0, разве что доступна ёмкость всех жёстких дисков, кроме одного. А в RAID 6 – кроме двух. Записываемые данные распределяются на кусочки (stripe), каждый из которых состоит из n-1 блоков, где n – число приводов в массиве. Понятно, что оставшийся блок содержит информацию избыточности. Каждый блок записывается на свой жёсткий диск, причём размер блока обычно меняется от 4 до 64 кбайт. Как мы уже упоминали, блок с информацией избыточности попеременно записывается на разные жёсткие диски, чтобы не создавать “узкого места”. Чем больше приводов вы используете, тем более важна эта особенность. Создание информации избыточности, равно как и обратный процесс (восстановление данных после потери одного блока), требует немалой вычислительной мощности. У профессиональных контроллеров RAID присутствует специальный RISC-процессор (часто на кристалле контроллера), который снимает вычислительную нагрузку с процессора компьютера. Часто этот RISC-процессор называют XOR-движком или XOR-ускорителем. А подобные RAID-контроллеры называют аппаратными. Под программными RAID-контроллерами понимают модели, у которых вычислением информации избыточности занимается процессор компьютера. Конечно, такие контроллеры стоят дешевле, поскольку дополнительного аппаратного обеспечения не требуется. В то же время, программные RAID-контроллеры хорошо работают только на системе со скоростным процессором, не нагруженной другими требовательными задачами. Кстати, RAID-массив можно создавать и полностью программно, без контроллера, Производительность массивов с избыточностью Поскольку массив RAID 5 по чтению данных не слишком отличается от RAID 0, он увеличивает скорость чтения из-за чередования (одновременно читаются блоки с разных приводов). Но с записью дела обстоят совершенно по-иному, так как для каждого кусочка данных (stripe) следует рассчитать информацию избыточности. Следовательно, производительность чтения возрастает по мере добавления приводов, но производительность записи чаще всего ограничена. С точки зрения производительности RAID 6 не должен особо отличаться от RAID 5. Но на практике отличия есть, причём связаны они с разной реализацией дополнительного уровня избыточности. Конечно же, производительность записи уменьшилась, что связано с увеличением вычислительной нагрузки. Неужели RAID 5 недостаточно? Кому нужен RAID 6? Основная причина популярности RAID 5 заключается в повышении надёжности хранения данных, при одновременном сохранении приемлемого уровня производительности. Но вся надёжность оказывается под угрозой, стоит только выйти из строя одному накопителю. Повреждённый массив RAID 5 теряет данные, если “вылетает” хотя бы один накопитель. В этом отношении он ничем не отличается от RAID 0. К сожалению, вероятность выхода привода из строя растёт с их числом, поэтому нужно гарантировать постоянную защиту массива. В принципе, у RAID 5 она реализуется с помощью запасного (spare) привода, который автоматически будет введён в работу для перестроения массива, стоит только одному накопителю выйти из строя. Люди часто считают, что повреждённый массив по степени опасности можно сравнить с одиночным жёстким диском. На самом деле, ситуация ещё хуже! Конечно, всегда есть опасность, что одиночный привод выйдет из строя, однако в случае повреждённого массива RAID 5 эта опасность возрастает кратно числу приводов. RAID 6 можно рассматривать как более удобный массив для защиты данных, поскольку он позволяет выйти из строя двум накопителям, и ваши данные при этом не потеряются. Подобный сценарий встречается намного реже, чем выход из строя одного жёсткого диска, что позволяет считать RAID 6 более надёжным. Наконец, отметим, что в RAID 6 для повторного расчёта информации избыточности используется другой, более надёжный алгоритм. Теоретически, алгоритм расчёта RAID 5 нельзя назвать точным: существуют ситуации, когда он не способен распознать изменение оригинальных данных (скажем, если в них изменился один бит). Дополнительный алгоритм вычисления избыточности RAID 6 этот недостаток компенсирует. Из-за удвоения информации избыточности RAID 6 вряд ли можно рекомендовать для условий, требующих высокой производительности. Некоторым пользователям больше подойдут “гнездовые” RAID-массивы, скажем RAID 5+1 (два массива RAID 5 в “зеркале”). Но при этом потребуется большее число жёстких дисков (минимум, шесть) и, как и в обычном RAID 1, доступная ёмкость массива в два раза меньше суммарной ёмкости приводов. Adaptec 2820SA и пакет Advanced Data Protection Suite Контроллер Adaptec Serial ATA II RAID 2820SA использует 64-битный интерфейс PCI-X и предназначен для серверов или рабочих станций. Контроллер обладает неплохим набором функций, а рекомендованная цена составляет $575. Интересующая нас опция RAID 6 является добавкой, входящей в пакет под названием Advanced Data Protection Suite. Кроме того, существует возможность добавления резервного аккумулятора. За обе услуги придётся доплачивать по отдельности. Базовые функции RAID приятно радуют своим разнообразием. Обычная розничная версия карты поддерживает режимы RAID 0, 1, 10, 5 и 50, “горячую подмену” запасного привода (hot spare), миграцию уровней RAID и онлайновое увеличение ёмкости массива. В комплект поставки входят восемь кабелей SATA (по одному на порт), загрузочный CD с Adaptec Storage Manager, драйверы для Windows, Linux, Netware и FreeBSD, а также слотовая планка с низким профилем. Сама карта имеет низкий профиль, но расположение портов SATA осложняет подключение кабелей внутри низкопрофильных серверов (2U, 3U), поскольку они направлены вверх. Поэтому в таких ситуациях лучше купить SATA-кабели, вилки которых повёрнуты под углом 90°. Adaptec часто использует Serial ATA-контроллеры третьих производителей, но здесь применяется собственный контроллер AIC-8210. Он поддерживает интерфейс PCI-X, RAID-блок под названием Adaptec RAID Code (ARC) и восемь портов Serial ATA с функциями Serial ATA 2.5. Как мы уже упоминали, поддержку RAID 6 следует докупать. Она входит в состав пакета Advanced Data Protection Suite, который содержит следующие опции. Создание массива Areca ARC-1220 Мы рассматривали контроллер Areca ARC-1220 ещё в октябре 2005 года во время Контроллер Areca является мощным инструментом для опытных пользователей и содержит простое программное обеспечение для управления массивами. В данном тестировании мы фокусировали внимание на поддержке RAID 6, но результаты тестов выглядят обещающе. Promise SuperTrak EX8350 Прошло довольно много времени с тех пор, как RAID-контроллер Promise появлялся в нашей лаборатории, так что мы с интересом взялись за SuperTrak EX8350. Карта использует интерфейс PCI Express x4, поэтому для её установки потребуется достаточно современная система. (Если вам нужен интерфейс PCI-X 133, то можно выбрать модель EX8300). Обе карты построены на SATA II-контроллере Marvell. Движок обработки информации избыточности построен на мощном процессоре Intel Xscale IOP333 (500 МГц), который дополнен 128 Мбайт буферной DDR-памяти. Говоря о буфере, разумно будет докупить опциональную батарею. На контроллере установлены восемь портов Serial ATA II, поддерживающих пропускную способность 300 Мбайт/с и “родную” очередь команд NCQ. По информации на сайте Promise, возможна установка четырёх контроллеров на систему, но у нас нет информации об ограничениях количества массивов, числа приводов на массив и т.д. Архитектура RAID, конечно же, существует уже достаточно давно, и сегодня производители предлагают гибкую поддержку нескольких массивов на одном наборе приводов. Уже привычными стали поддержка запасных жёстких дисков, онлайновое расширение ёмкости и миграция уровней RAID. Контроллер Promise поддерживает множество версий Windows, а так же SuSe и Red Hat Linux. В комплект поставки входит исходный код драйверов под Linux, так что вы можете скомпилировать драйверы под ваш дистрибутив Linux. Создание массива Тестовая конфигурация Результаты тестирования Результаты тестирования Заключение: Areca Начнём с хорошего: Adaptec, Areca и Promise предлагают восьмипортовые RAID-контроллеры высшего класса для интерфейсов PCI Express x4 или PCI-X 133. Все они обладают необходимыми функциями, позволяющими администратору или опытному пользователю создать надёжное, быстрое и безопасное хранилище. Все контроллеры успешно справились с задачей восстановления массива после искусственного вывода из строя и замены привода (или двух). Поддержка драйверами вполне даже приличная, хотя и не полная, а уровень производительности достаточно хороший даже для требовательных бизнес-приложений. Вполне очевидно, что сегодня Adaptec воспринимает рынок Serial ATA более серьёзно, чем пару лет назад. 2820SA оснащён функциями, соответствующими продуктам компании в сегменте SCSI или даже выше. RAID 6, к примеру, так и не реализован ни на одном SCSI RAID-контроллере Adaptec. Конечно, поддержку RAID 6 придётся докупать отдельно, что не очень-то логично для контроллера за $500. Promise обеспечивает более высокую производительность по меньшей цене, так что контроллер компании весьма и весьма убедителен. Впрочем, лидером группы является “старый добрый” контроллер Areca ARC-1220. Хотя карта находится на рынке уже несколько месяцев, а программное обеспечение не особо мощное, контроллер показал лучшую производительность RAID 6 во всех тестах. Кроме того, Areca обеспечивает высокую производительность и в случаях, когда один или два диска выведены из массива RAID 6. Сравнительная таблица функций
x
y
x XOR y
0
0
0
0
1
1
1
0
1
1
1
0
Источник: Adaptec. Именно так работает массив RAID 5. А RAID 6 даёт ещё большую защиту данных.
Источник: Promise.
Контроллер автоматически перестроит повреждённый массив с помощью запасного привода, выделенного заранее, и восстановит оригинальную конфигурацию, когда вышедший из строя накопитель будет заменён.
Контроллер будет распределять данные RAID 1 на несколько накопителей (массив с чередованием), чтобы обеспечить увеличение скорости чтения, сохраняя, в то же время, хорошую производительность на уровне записи на один жёсткий диск. Здесь имеет смысл выбирать основной накопитель с ёмкостью в два раза большей, чем у приводов массива с чередованием.
RAID 6 уже должен быть вам знаком. RAID 60 сочетает RAID 6 и RAID 0, составляя массив RAID 6 из пар дисков с чередованием. При этом безопасность хранения данных снижается, но вероятность потери трёх накопителей массива RAID 60 относительно низка.
Системное аппаратное обеспечение
Процессор
2x Intel Xeon (ядро Nocona)
3,6 ГГц, FSB800, 1 Мбайт кэша L2
Платформа
Asus NCL-DS (Socket 604)
Чипсет Intel E7520, BIOS 1005
Память
Corsair CM72DD512AR-400 (DDR2-400 ECC, регистровая)
2x 512 Мбайт, CL3-3-3-10
Системный жёсткий диск
Western Digital Caviar WD1200JB
120 Гбайт, 7200 об/мин, кэш 8 Мбайт, UltraATA/100
Контроллер накопителей
Intel 82801EB UltraATA/100 (ICH5)
Silicon Image Sil3124, PCI-X
Сеть
Broadcom BCM5721 встроенный Gigabit Ethernet NIC
Графическая карта
Встроенная графика
ATi RageXL, 8 Мбайт
Тесты
Производительность ввода/вывода
IOMeter 2003.05.10
Fileserver-Benchmark
Webserver-Benchmark
Database-Benchmark
Workstation-Benchmark
Системное программное обеспечение и драйверы
ОС
Microsoft Windows Server 2003 Enterprise Edition, Service Pack 1
Драйвер платформы
Intel Chipset Installation Utility 7.0.0.1025
Графический драйвер
Default Windows Graphics Driver
Производитель
Adaptec
Areca
Promise
Продукт
2820SA
ARC 1220
Supertrak EX8350
Прошивка
5.1.0(b8364)
1.36
v2.9.0.10
Драйверы
v5.1.8360
1.02
v2.8.0.14
Портов SATA II
8
16 (у PCI-X 24)
8
Кэш
128 (256 опц.) Мбайт ECC
128 Мбайт DDR333 ECC
128 Мбайт DDR333 ECC
Интерфейс
PCI-X
PCI Express x4
PCI Express x4
Доп. версии
4 порта
4, 8, 12 портов
PCI-X 4 порта
Поддержка неск. карт
Нет
Да
Да
Форм-фактор карты
Стандартный
Низк. профиль (порты сверху)
Низк. профиль (порты сверху)
XOR-движок
AIC-8210 SATA RAID-on-Chip (ROC) ASIC
Intel IOP332
IOP333 (500 MHz)
Миграция уровней RAID
Да
Да
Да
Онлайновое расширение ёмкости
Да
Да
Да
Несколько массивов RAID
Да
Да
Да
Отложенная раскрутка шпинделя
Да
Да
Да
Поддержка запасного привода (с “горячей” подменой)
Да
Да
Да
Аккумулятор
Опционально
Опционально
Опционально
Поддержка ОС
Windows, Linux, Netware, FreeBSD
Windows 2000/XP/2003, RedHat, SuSe, FreeBSD
Windows 2000/XP/2003, RedHat, SuSe, Linux open source driver
Прочее
Поддержка RAID 6, командная строка, динамик, SNMP, 64-бит LBA
Поддержка RAID 6, командная строка, динамик, SNMP, светодиоды активности, 64-бит LBA
Поддержка RAID 6, командная строка, динамик, SNMP, светодиоды активности, 64-бит LBA
Рекомендуемая цена (US $)
530
600
415
Гарантия
3 года
Неизвестна
3 года