RAIDCore RC4852
Ключевым моментом функциональности RAIDCore является архитектура Fulcrum, которую мы уже упоминали выше. По данным RAIDCore, работники компании обладают в сумме 150 часами опыта в каждом аспекте технологий хранения.
Факты заключаются в том, что модель хранения данных настолько гибка, что с массивом можно делать практически всё, что угодно. В результате пользователь может осуществлять лёгкую миграцию с одного уровня RAID на другой, расширять массив RAID путём добавления дисков, выделять запасной диск и изменять структуру данных в случае сбоя, а также использовать жёсткий диск для размещения на нём двух или более массивов.
К сожалению, даже быстрое ознакомление со всеми возможностями отнимает массу времени. На полное тестирование всех опций уйдут недели. Однако мы постарались осветить лучшие возможности этого контроллера и протестировать их настолько глубоко, насколько это было возможным.
Мы не ограничивались стандартным тестом сбоя диска. Если скорость чтения полного массива составляет 250 Мбайт/с, то в случае сбоя она снижается до 130 Мбайт/с. Если добавляется новый диск и он указывается как заменяемый, то происходит автоматическое перестроение массива. При этом скорость передачи падает до 70 Мбайт/с.
Fulcrum: по функциям Adaptec и LSI остаются далеко позади
Описанные выше функции вполне стандартны для корпоративных систем хранения. RAIDCore прекрасно об этом знает, но до сих пор ресурсы, которыми обладает контроллер RAID, не были полностью задействованы. Ниже мы более подробно осветим основные возможности архитектуры Fulcrum.
Автоматическая настройка производительности
Что интересно, RAIDCore заявляет о том, что единственная опция по отношению к кэшированию - это его включение или выключение. Все остальные параметры, влияющие на производительность, типа размера блока, подбираются автоматически.
Более того, архитектура Fulcrum может в определённой степени кэшировать информацию избыточности массива RAID 5, что позволяет несколько повысить производительность даже при случайной записи. Для этого старые данные должны быть считаны, а вместе с ними и соответствующая информация избыточности. Затем новые данные будут записаны, за чем следует, опять же, создание информации избыточности.
Распределённый запасной диск (Distributed Spare)
Для бесперебойной работы массива RAID должен присутствовать диск "горячей подмены" (запасной). Ведь жёсткий диск может выйти из строя в любой момент, при этом будет необходимо максимально быстро найти ему замену, чтобы данные были вновь защищены информацией избыточности - ведь за время замены может произойти самое плохое - выйдет из строя ещё один диск.
Но возникает ещё несколько вопросов, о которых задумывается далеко не каждый администратор: что произойдёт, если запасной диск выйдет из строя? Обычно такого не случается, но вдруг? Для предотвращения подобных случаев архитектура Fulcrum позволяет использовать распределённый запасной диск. То есть ни один из дисков в полной мере не является запасным и выключенным - вместо этого на каждом диске выделяется специальная пустая область. В случае сбоя массив "расширяется" и занимает эти области, то есть функция восстановления больше напоминает миграцию на другой уровень RAID, чем классическое перестроение массива.
Если массив, созданный с распределённым запасным диском теряет привод (в данном случае RAID 50), то массив мигрирует на новый RAID 50, используя меньшую ёмкость хранения (нижняя ветвь).
Не ново, но полезно: назначение приоритетов
RAIDCore позволяет назначать приоритеты действий, которые могут влиять на производительность массива RAID. К примеру, перестроение массива можно осуществлять как с максимально быстрой скоростью, так и с минимальным влиянием на производительность системы - всё в руках администратора. Подобными возможностями обладает и LSI. Хотя Adaptec и поддерживает три уровня приоритета, они относятся только к изначальному построению массива. 3Ware обеспечивает назначение пяти уровней приоритетов.
Непрерывная проверка данных
За то небольшое время, пока контроллер был в наших руках, мы не смогли проверить данную функцию, поскольку она является частью архитектуры Fulcrum. Заключается она в том, что даже те секторы диска, которые не используются, постоянно проверяются, чтобы гарантировать их считываемость. Таким образом, появляется возможность предсказывать ошибки чтения, за которыми зачастую следует отказ диска. Эта функция распространена и среди других контроллеров, но называется она каждый раз по-разному. Скажем, Adaptec называет её фоновой проверкой целостности (Background Consistency Check).
Лёгкая миграция дисков
Поскольку архитектура Fulcrum предназначена для обеспечения максимальной гибкости и может применяться к широкому диапазону оборудования, диски и массивы должны быть взаимозаменяемы. Записанные данные можно использовать на всех устройствах, поддерживающих Fulcrum.
Роуминг диска
Многие из вас уже знакомы со словом "роуминг" из мобильной связи. Подобную технологию поддерживает и RAIDCore: каждый привод имеет уникальный идентификатор, что позволяет подключать его к любому порту контроллера.
Массивы более 2 Тбайт
Для дома массивы подобных размеров пока не актуальны, однако в профессиональных приложениях они уже начинают иметь некоторый смысл: мы имеем в виду ограничение на 2 терабайта. Хотя NTFS поддерживает диски с размером до 264 байт или 16 экзабайт (гига - тера - пета - экза), но таблицы распределения там только 32-битные. С 512 байтами на сектор, что сегодня наиболее распространено, мы получаем 232 x 512 байт или 2 терабайта. Архитектура Fulcrum оказывается гибкой и по физическим параметрам.
Кэш как NVRAM с буферной батареей
Буферная батарея не является изобретением RAIDCore, но её присутствие вполне ожидаемо. Чтобы информация из кэша не потерялась при внезапном отключении питания (предполагается, что в кэше есть важные данные, которые должны быть записаны), используется, так называемый, энергонезависимый кэш NVRAM (non-volatile RAM). Он построен из обычных чипов памяти, которые дополнены батареей. Когда система будет повторно запущена, контроллер RAID запишет несохранённые данные, чтобы гарантировать их целостность.
Несколько массивов на одном диске
Эта функция пока ещё встречается достаточно редко. Она позволяет жёсткому диску лишь частично входить в массив, таким образом, одна часть диска может входить в первый массив, другая - во второй и т.д.
Какой же смысл в подобной функции? Если вы желаете расширить массив RAID 5, состоящий из четырёх жёстких дисков, каждый на 200 Гбайт, ещё на два диска, то вы можете, в будущем, установить новые диски на 300 Гбайт. Но тогда 100 Гбайт на каждом диске будут не задействованы, поэтому на доступном пространстве вы можете создать ещё один массив. Возможно, RAID 0 для временных данных?
Эта функция важна для низкобюджетных рынков - просто подумайте о возможных конфигурациях всего с двумя приводами: первая половина дисков может быть сконфигурирована в массив RAID 0 - идеально для операционной системы, включая файл подкачки. Вторая половина может дублировать данные в массиве RAID 1. Если один диск выйдет из строя, то после его замены и повторной установки Windows ваши ценные данные не потеряются.
Ещё одним сценарием может стать одновременное использование нескольких жёстких дисков для двух разных применений. Например, предположим, что у нас есть 8 приводов по 100 Гбайт каждый. В массиве RAID 5 будет доступно 700 Гбайт (суммарная ёмкость всех дисков за исключением ёмкости одного). Если мы ограничимся только 500 Гбайт, то у нас будет достаточно места для 200 Гбайт массива RAID 0 на тех же дисках. В результате мы получаем надёжное хранилище RAID 5 и очень быстрое хранилище для временных данных. Чего ещё можно желать?
Мы попытались выполнить этот сценарий с адаптерами RAIDCore и Adaptec 2200S. Получилось только на RAIDCore.
RAIDCore RC4852: BIOS и конфигурация
Как обычно, практически все вещи можно выполнить в BIOS контроллера. Но более удобно воспользоваться программой управления RAIDCore под Windows (см. скриншоты).