Что лучше программный или аппаратный raid

Введение в RAID: основные термины и подходы

Устройства хранения данных позволяют защитить любые важные данные сервера и сохранить их для последующего извлечения. Если у вас нет высоких требований к избыточности или производительности, вам вполне подойдёт один диск. В противном случае можно использовать RAID.

Данное руководство ознакомит вас с общими понятиями RAID, преимуществами подобных массивов и различиями в технологиях их реализации.

Что такое RAID?

RAID расшифровывается как Redundant Arrays of Independent Disks (избыточный массив дисковых накопителей). Это технология виртуализации данных, которая объединяет несколько дисков в логический блок. Существует несколько шаблонов виртуализации, благодаря чему администраторы могут повысить производительность ил избыточность данных. RAID внедряется как промежуточный слой между неформатированными устройствами или разделами и файловой системой.

Когда используется RAID?

Обычно RAID используется для повышения производительности и избыточности.

Избыточность данных – это технология, позволяющая повысить доступность данных путём их накопления и дублирования. В случае сбоя одного из устройств копию данных можно будет извлечь с другого устройства.

Примечание: Избыточность и резервное копирование – не одно и то же. RAID-массивам бекап так же необходим, как и любому другому типу устройств.

В отдельных случаях RAID используется для оптимизации производительности. Потоки ввода и вывода на некоторых устройствах ограничены. В RAID-массивах данные либо избыточны, либо распределены, а это означает, что операции чтения можно выполнять на нескольких дисках, а это увеличивает общую пропускную способность. Операции записи также можно оптимизировать: RAID позволяет делить данные и записывать на отдельный диск лишь часть общего объема данных.

Недостатками RAID являются:

Аппаратный и программный RAID

RAID можно реализовать с помощью разных технологий.

Аппаратный RAID

Специальное аппаратное обеспечение RAID – это RAID-контроллеры или RAID-карты, с помощью которых можно создавать и управлять массивами RAID независимо от операционной системы. Контроллеры RAID имеют специальный процессор для управления устройствами RAID.

Конечно, аппаратный RAID имеет и значительные недостатки.

Программный RAID

Также RAID можно настроить с помощью операционной системы. Поскольку отношения между дисками определяются операционной системой, а не встроенным программным обеспечением аппаратного устройства, такой RAID называется программным.

Преимущества программного RAID:

Недостатки программного RAID:

Полуаппаратный RAID (Fake RAID)

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

Преимущества полуаппаратного RAID:

Недостатки полуаппаратного RAID:

Большинство системных администраторов стараются избегать полуаппартного RAID, поскольку он имеет недостатки первых двух типов RAID.

Терминология RAID

Ниже приведены общие термины RAID, которые нужно знать.

Уровни RAID

Характеристики RAID-массива определяются его уровнем. Рассмотрим самые распространённые уровни.

RAID 0

RAID 0 объединяет два и больше устройств путём чередования данных. Преимуществом является повышенная производительность (благодаря распределению данных операции чтения и записи могут потреблять всю мощность каждого устройства). Теоретически RAID 0 предлагает производительность отдельного диска, умноженную на количество дисков (в реальности производительность будет немного меньше). Еще одно преимущество: полезная емкость массива – это суммарная пропускная способность всех составляющих дисков.

Недостатки такого массива:

RAID 1

RAID 1 – это зеркальный массив, состоящий из двух или больше дисков. Данные, записанные в такой массив, помещаются на каждом устройстве группы. Таким образом, каждое устройство имеет полный набор данных, обеспечивая избыточность в случае отказа одного из дисков. В массиве RAID 1 данные будут доступны до тех пор, пока в массиве функционирует хотя бы одно устройство. Массив можно восстановить путем замены неисправных дисков. Чтобы добавить данные на новые диски, достаточно скопировать их со старых дисков.

RAID 5

RAID 5 объединяет функции предыдущих двух уровней. RAID 5 – дисковый массив с чередованием и отказоустойчивостью. RAID 5 вычисляет код четности для всех данных, хранящихся в массиве, чтобы использовать его для восстановления данных при сбоях. Диск получает блок четности вместо блока данных.

Преимущества RAID 5:

RAID 6

RAID 6 – аналог массива RAID 5, дисковый массив с чередованием и двумя дисками контроля чётности. Такой массив может выдержать сбой двух дисков. Это является существенным преимуществом в связи с увеличением вероятности дополнительного сбоя диска во время интенсивного восстановления после сбоя. Как и другие уровни RAID с чередованием данных, скорость операций чтения, как правило, достаточно высока. Кроме того, RAID 6 имеет все преимущества массива RAID 5.

Вложенный RAID 1+0

Традиционно массив RAID 10 считается вложенным массивом; по сути, это массив RAID 0, состоящий из двух и больше массивов RAID 1. Сегодня RAID 10 также называют RAID 1+0. В целом такая архитектура требует минимум 4 диска: RAID 0 чередуется по двум массивам RAID1, в каждом из которых минимум два устройства.

Массивы RAID 1+0 обладают высокой производительностью RAID 0 и зеркалированием RAID 1, что обеспечивает избыточность данных. Этот тип конфигурации может обрабатывать сбои дисков в любом из зеркальных массивов RAID 1, пока хотя бы один диск остаётся доступным.

RAID 10 в mdadm

Массивы Linux (mdadm) предлагают собственную версию RAID 10, который имеет преимущества RAID 1+0, но при этом обладает гибкостью и некоторыми дополнительными функциями.

Как и RAID 1+0, RAID 10 в mdadm поддерживает множество копий и чередование данных. Однако такие устройства упорядочены не по принципу зеркальных пар: в данном случае администратор сам принимает решение о количестве копий, которые будут записаны в массив. Данные фрагментированы и записываются в массив в нескольких экземплярах, при этом каждая копия фрагмента записывается на различные физические устройства. В конечном результате существует то же самое количество копий, но массив не ограничен вложенностью.

Такой массив имеет ряд преимуществ.

Источник

Аппаратный райд vs Программный?

В материнке не аппаратный рейд, а фейкрейд.

Аппаратные рейды имеют смысл для оффлоада математики — RAID5, RAID6. Мирроры и стрипы лучше делать софтово.

Аппаратные рейды это для очень, очень, очень узкой ниши, я честно говоря даже с трудом представляю для какой именно.

Программный рейд во первых проще, во вторых безопаснее т.к. если у вас что то сдохнет то вы это что то спокойно восстановите, а если у вас сдохнет рейд контроллер то будут проблемы.
В третьих нормальные рейд контроллеры стоят достаточно дорого. А разница в скорости будет заметна только если у вас в качестве сервера селерон-800 какой нибудь.

А и да, ни в коем случае не используйте fake-raid т.к. эти замечательные устройства вобрали в себя все недостатки обоих решений…

Ну, не для такой уж и «узкой». Я сравнивал производительность md и адаптековских рейдов на RAID6 — софтовый прососал. Хотя на мирроре из кучи дисков прососал адаптек.

Аппаратный рейд должен делать то, для чего на него отдельный процессор нашлёпнули — математику считать. Ну и слегка уменьшать saturation на шине.

NVidia’вский рейд весьма неплох, но в вашей ситуации (fbsd) проще, наверное, будет сделать программный.

Единственное преимущество «аппаратного» рейда перед программным — возможность загрузки при потере любого харда из массива. На программном рейде для этого вам, как минимум, надо будет руками установить загрузчик второй диск, иначе можете оказаться в глупой ситуации — всё цело, и ОС и данные, а загрузиться не можете.

Встроенный в материнку рейд в нетоповых моделях обычно представляет из себя софтварное убожество. Ну как правило, я не знаю чего там на вашем асусе.

По опыту работы я скажу что программный рейд gmirror во фре немногим уступает некоторым аппаратным. Разве что у него батарейки нет и отдельного процессора и памяти.

Однако вот в этих рейдах что идут на борту, зачастую тоже нет ни батарейки (по любому), ни проца своего ни памяти.

И тут возникает вопрос. А правильно ли схватят его драйвера FreeBSD? И если да, можно ли будет увидеть отдельные диски за этим рейдом? Как мониторить статус аппаратного рейда?

Вот этих вот всех вопросов не возникает при использовании gmirror.

Встроеный в материнку рейд ОБЫЧНО есть просто микропроцесор по обработке некоторых специфических операций( XOR и другие проверки чексум )
Все остальное, в смысле мозги, зашиты в биос и в любом случае выполняются на проце.

Для себя выбрал програмный рейд. По скорости не на много медленее не только материнского, но и true-апаратного( особенно если винтов мало ).
И я спокон.
Не так давно один друг полпитера обьездил в поисках «именно такого вот» контролера, который у него сгорел.

Хотя это все фигня, если задаться целью надо брать отдельную систему хранения данных, которая сама со всем разбереться, и с гарантией

У меня есть опыт использования gmirror около 4 лет и md около 3.
Так же я использовал аппаратный рейд на одном файлохранилище.

Главное достоинство программных рейдов — не надо думать, а что будет если умрет контроллер. По скоростям, как говорили уже выше, разница не особо заметна.

Сама эксплуатация программных рейдов очень проста и не требует ухода за собой.

Вообщем, я за программный рейд.

Программный.
1) не факт, что фря увидит ваши диски отдельно с аппаратным — не увидите когда умрет один из дисков
2) умрет мать — придётся искать точно такую же.

Между отдельной платой и программным, выбор всё же в сторону платы, для которой есть вторая на замену.

Источник

Аппаратный RAID: особенности использования

Организация единого дискового пространства — задача, легко решаемая с помощью аппаратного RAID-контроллера. Однако следует вначале ознакомиться с особенностями использования и управления таким контроллером. Об этом сегодня расскажем в нашей статье.

Надежность и скорость работы дисковых накопителей — вопрос, волнующий каждого системного администратора. Несмотря на заверения производителей о качестве собственных устройств — HDD и SSD продолжают выходить из строя в самое неподходящее время, теряя драгоценные данные. Технология S.M.A.R.T. в большинстве случаев дает возможность оценить «здоровье» накопителя, но это не гарантирует того, что диск будет продолжать беспроблемно работать.

Предсказать выход диска из строя со 100%-ой точностью невозможно, поэтому следует предусмотреть вариант, при котором это не станет проблемой или причиной остановки сервисов. Использование RAID-массивов решает эту задачу. Рассмотрим три основных подхода, применяющихся для этой задачи:

Внешний вид

Мы выбрали решения Adaptec от компании Microsemi. Это RAID-контроллеры, зарекомендовавшие себя удобством использования и высокой производительностью. Их мы устанавливаем, если наш клиент решил заказать сервер произвольной или фиксированной конфигурации.

Для подключения дисков используются специальные интерфейсные кабели. Со стороны контроллера используются разъемы SFF8643. Каждый кабель позволяет подключить до 4-х дисков SAS или SATA (в зависимости от модели). Помимо этого интерфейсный кабель еще имеет восьмипиновый разъем SFF-8485 для шины SGPIO, о назначении которой поговорим чуть позже.

Помимо самого RAID-контроллера существует еще два дополнительных устройства, позволяющих увеличить надежность:

После того, как электропитание сервера восстановлено, содержимое кэша автоматически будет записано на диски. Именно такие модули устанавливаются в наши серверы с аппаратным RAID-контроллером и Cache Protection.

Это особенно важно, когда включен режим отложенной записи кэша (Writeback). При пропадании электропитания содержимое кэша не будет сброшено на диски, что приведет к потере данных и, как следствие, штатная работа дискового массива будет нарушена.

Технические характеристики

Температура

Вначале хотелось бы затронуть такую важную вещь, как температурный режим аппаратных RAID-контроллеров Adaptec. Все они оснащены небольшими пассивными радиаторами, что может вызвать ложное представление о небольшом тепловыделении.

Производитель контроллера приводит в качестве рекомендуемого значения воздушного потока — 200 LFM (linear feet per minute), что соответствует показателю 8,24 литра в секунду (или 1,02 метра в секунду). Рассчитаны такие контроллеры исключительно на установку в rackmount-корпусы, где такой воздушный поток создается скоростными штатными кулерами.

От 0°C до 40-55°C — рабочая температура большинства RAID-контроллеров Adaptec (в зависимости от наличия установленных модулей), рекомендованная производителем. Максимальная рабочая температура чипа составляет 100°C. Функционирование контроллера при повышенной температуре (более 85°C) может вывести его из строя. Удобства ради приводим под спойлером табличку рекомендуемых температур для разных серий контроллеров Adaptec.

Series 2 (2405, 2045, 2805) and 2405Q 55°C без модулей
Series 5 (5405, 5445, 5085, 5805, 51245, 51645, 52445) 55°C без батарейного модуля, 40°C с батарейным модулем ABM-800
Series 5Z (5405Z, 5445Z, 5805Z, 5805ZQ) 50°C с модулем ZMCP
Series 5Q (5805Q) 55°C без батарейного модуля, 40°C с батарейным модулем ABM-800
Series 6E (6405E, 6805E) 55°C без модулей
Series 6/6T (6405, 6445, 6805, 6405T, 6805T) 55°C без ZMCP модуля, 50°C с ZMCP модулем AFM-600
Series 6Q (6805Q, 6805TQ) 50°C с ZMCP модулем AFM-600
Series 7E (71605E) 55°C без модулей
Series 7 (7805, 71605, 71685, 78165, 72405) 55°C без ZMCP модуля, 50°C с ZMCP модулем AFM-700
Series 7Q (7805Q, 71605Q) 50°C с ZMCP модулем AFM-700
Series 8E (8405E, 8805E) 55°C без модулей
Series 8 (8405, 8805, 8885) 55°C без ZMCP модуля, 50°C с ZMCP модулем AFM-700
Series 8Q (8885Q, 81605Z, 81605ZQ) 50°C с ZMCP модулем AFM-700

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

Скорость работы

Для того чтобы продемонстрировать, как наличие аппаратного RAID-контроллера способствует увеличению скорости работы сервера, мы решили собрать тестовый стенд со следующей конфигурацией:

Затем в этот же стенд поставим RAID-контроллер Adaptec ASR 7805 с модулем защиты кэша AFM-700, подключим к нему эти же жесткие диски и выполним точно такое же тестирование.

С программным RAID

Несомненное преимущество программного RAID — простота использования. Массив в ОС Linux создается с помощью штатной утилиты mdadm. При установке операционной системы чаще всего создание массива предусмотрено непосредственно из установщика. В случае, когда такой возможности установщик не предоставляет, достаточно всего лишь перейти в соседнюю консоль с помощью сочетания клавиш Ctrl+Alt+F2 (где номер функциональной клавиши — это номер вызываемой tty).

Проверяем, чтобы на дисках не было метаданных, например, от предыдущего массива:

На всех 4-х дисках должно быть сообщение:

В случае, если на одном или нескольких дисках будут метаданные, удалить их можно следующим образом (где sdX — требуемый диск):

Создадим на каждом диске разделы для будущего массива c помощью fdisk. В качестве типа раздела следует указать fd (Linux RAID autodetect).

Собираем массив RAID 10 из созданных разделов с помощью команды:

Сразу после этого будет создан массив /dev/md0 и будет запущен процесс перестроения данных на дисках. Для отслеживания текущего статуса процесса введите:

Пока процесс перестроения данных не будет завершен, скорость работы дискового массива будет снижена.

После установки операционной системы и Bitrix24 на созданный массив мы запустили стандартный тест и получили следующие результаты:

С аппаратным RAID

Прежде чем сервер сможет использовать единое дисковое пространство RAID-массива, необходимо выполнить базовую настройку контроллера и логических дисков. Сделать это можно двумя способами:

Утилита позволяет не только управлять настройками контроллера, но и логическими устройствами. Инициализируем физические диски (вся информация на дисках при инициализации будет уничтожена) и создадим массив RAID-10 с помощью раздела Create Array. При создании система запросит желаемый размер страйпа, то есть размер блока данных за одну I/O-операцию:

Важно — размер страйпа задается только один раз (при создании массива) и это значение в дальнейшем изменить нельзя.

Сразу после того, как контроллеру отдана команда создания массива, также, как и с программным RAID, начинается процесс перестроения данных на дисках. Этот процесс работает в фоновом режиме, при этом логический диск становится сразу доступен для BIOS. Производительность дисковой подсистемы будет также снижена до завершения процесса. В случае, если было создано несколько массивов, то необходимо определить загрузочный массив с помощью сочетания клавиш Ctrl + B.

После того как статус массива изменился на Optimal, мы установили Bitrix24 и провели точно такой же тест. Результат теста:

Сразу становится понятно, что аппаратный RAID-контроллер ускоряет операции чтения и записи на дисковый носитель за счет использования кэша, что позволяет быстрее обрабатывать массовые обращения пользователей.

Управление контроллером

Непосредственно из операционной системы управление контроллером производится с помощью программного обеспечения, доступного для скачивания с сайта производителя. Доступны варианты для большинства операционных систем и гипервизоров:

С помощью указанных утилит можно, не прерывая работу сервера, легко управлять логическими и физическими дисками. Также можно задействовать такой полезный функционал, как «подсветка диска». Мы уже упоминали про пятый кабель для подключения SGPIO — этот кабель подключается напрямую в бэкплейн (от англ. backplane — соединительная плата для накопителей сервера) и позволяет RAID-контроллеру полностью управлять световой индикацей каждого диска.

Следует помнить, что бэкплэйны поддерживают не только SGPIO, но и I2C. Переключение между этими режимами осуществляется чаще всего с помощью джамперов на самом бэкплэйне.

Каждому устройству, подключенному к аппаратному RAID-контроллеру Adaptec, присваивается идентификатор, состоящий из номера канала и номера физического диска. Номера каналов соответствуют номерам портов на контроллере.

Замена диска — штатная операция, впрочем, требующая однозначной идентификации. Если допустить ошибку при этой операции, можно потерять данные и прервать работу сервера. С аппаратным RAID-контроллером такая ошибка является редкостью.

Делается это очень просто:

Контроллер даст соответствующую команду на бэкплэйн, и светодиод нужного диска начнет равномерно моргать цветом, отличающимся от стандартного рабочего.

Например, на платформах Supermicro штатная работа диска — зеленый или синий цвет, а «подсвеченный» диск будет моргать красным. Перепутать диски в этом случае невозможно, что позволит избежать ошибки из-за человеческого фактора.

Настройка кэширования

Теперь пару слов о вариантах работы кэша на запись. Вариант Write Through означает, что контроллер сообщает операционной системе об успешном выполнении операции записи только после того, как данные будут фактически записаны на диски. Это повышает надежность сохранности данных, но никак не увеличивает производительность.

Чтобы достичь максимальной скорости работы, необходимо использовать вариант Write Back. При такой схеме работы контроллер будет сообщать операционной системе об успешной IO-операции сразу после того, как данные поступят в кэш.

Важно — при использовании Write Back настоятельно рекомендуется использовать BBU или ZMCP-модуль, поскольку без него при внезапном отключении электричества часть данных может быть утеряна.

Настройка мониторинга

Вопрос мониторинга статуса работы оборудования и возможности оповещения стоит достаточно остро для любого системного администратора. Для того чтобы настроить «связку» из Zabbix и RAID-контроллера Adaptec рекомендуем воспользоваться перечисленными решениями.

Зачастую требуется отслеживать состояние контроллера напрямую из гипервизора, например, VMware ESXi. Задача решается с помощью установки CIM-провайдера с помощью инструкции Microsemi.

Прошивка

Необходимость прошивки RAID-контроллера возникает чаще всего для исправления выявленных производителем проблем с работой устройства. Несмотря на то, что прошивки доступны для самостоятельного обновления, к этой операции следует подойти очень ответственно, особенно если процедура выполняется на «боевой» системе.

Если нашему клиенту требуется сменить версию прошивки контроллера, то ему достаточно создать тикет в нашей панели управления. Системные инженеры выполнят перепрошивку RAID-контроллера до требуемой версии в указанное время и сделают это максимально корректно.

Важно — не следует выполнять перепрошивку самостоятельно, поскольку любая ошибка может привести к потере данных!

Заключение

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

Системные инженеры Selectel бесплатно выполнят базовую настройку дискового массива на аппаратном RAID-контроллере при заказе сервера произвольной конфигурации. В случае, если потребуется дополнительная помощь с настройкой, мы будем рады помочь в рамках нашей услуги администрирования. Также мы подготовили для наших читателей небольшую памятку по командам утилиты arcconf.

Используете ли вы аппаратные RAID-контроллеры? Ждем вас в комментариях.

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • Что лучше программная инженерия или прикладная математика и информатика
  • Что лучше программная инженерия или информационные системы и технологии
  • Что лучше программная инженерия или информационная безопасность
  • Что лучше программная инженерия или информатика и вычислительная техника
  • Что лучше программист или юрист

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии