Аппаратный RAID низкого уровня против программного RAID [закрыт]

16

Я хочу создать бюджетный архив RAID 1 объемом 6 ТБ на старом компьютере.

MB: Intel d2500hn 64bit
CPU: Intel Atom D2500
RAM: 4GB DDR3 533 MHz
PSU: Chinese 500W
NO GPU
1x Ethernet 1Gbps
2x SATA2 ports
1x PCI port
4x USB 2.0

Я хочу построить архив RAID1 в Linux (я думаю, что CentOS 7, тогда я установлю все, что мне нужно, я думаю, что ownCloud или что-то подобное), я буду использовать его в своей домашней локальной сети.

Это лучше 10-20 $ рейд PCI контроллер или программный RAID?

Если программный рейд лучше, какой мне выбрать на CentOS? Лучше поставить систему на внешний USB и использовать 2 диска на разъемах, или я должен поместить систему в один диск и затем создать RAID?

Если бы я сделал 3 диска RAID 5, я должен выбрать аппаратный рейд PCI или просто разъем PCI SATA?

Игорь З.
источник
11
Пожалуйста, не делайте R5, это опасно
Chopper3
1
Разве на этот вопрос не ответили раньше? Например, serverfault.com/questions/214/raid-software-vs-hardware
Томми
3
Это вопрос мнений, вы найдете много людей, которые болеют за программное обеспечение, и много людей, болеющих за оборудование. По моему это зависит. Программный RAID Linux хорошо зарекомендовал себя и доказал свою ценность снова и снова, но он создает очень легкие накладные расходы (что незначительно, особенно в RAID 1). RAID 5 не следует использовать, если вы цените свои данные из-за URE, см. Youtube.com/watch?v=A2OxG2UjiV4 Эмпирическое правило: если вы используете RAID 1 и у вас есть выбор между дешевым аппаратным RAID и программным RAID, перейдите на программное обеспечение ,
Броко
3
@Tom Этим ответам ~ 9 лет, и вопрос HW / SW-RAID сильно изменился, я думаю. ОП: В вашем случае я бы зеркалировал диски в программном RAID1, включая установку CentOS.
Леннией
2
Люди всегда утверждают, что аппаратный RAID экономит нагрузку на процессор. Но использование процессора, необходимое для копирования данных, практически равно нулю. Я не могу представить, чтобы загрузка процессора была проблемой в программном RAID.
USR

Ответы:

40

«Аппаратная» RAID-карта стоимостью 10–20 $ - это не что иное, как непрозрачный двоичный двоичный файл драйвера, использующий только программную реализацию RAID. Держитесь подальше от этого.

Карта RAID за 200 $ обеспечивает надлежащую аппаратную поддержку (т. Е. RoC, использующий другой непрозрачный двоичный двоичный объект, который лучше и не работает на центральном процессоре хоста). Я предлагаю держаться подальше от этих карт также потому, что из-за отсутствия кэша обратной записи они не дают ощутимых преимуществ по сравнению с программной реализацией RAID.

Плата RAID за 300/400 $ с кэшем обратной записи, защищенным от потери мощности, стоит купить, но не для небольших ПК / NAS на базе Atom.

Вкратце: я настоятельно рекомендую вам использовать программный RAID-массив Linux. Другой вариант, который стоит серьезно рассмотреть, - это зеркальная настройка ZFS, но с процессором Atom и только 4 ГБ ОЗУ не стоит ожидать высокой производительности.

Для получения дополнительной информации читайте здесь

shodanshok
источник
Спасибо, я буду использовать mdadm, вы посоветуете поставить систему на внешний USB и два диска, которые используются в качестве памяти, или я должен установить систему, а затем создать рейд с добавлением диска? Спасибо
Игорь З.
@ IgorZ. Мне не понятно, как вы хотите подключить свои диски. Из вашего поста кажется, что у вас есть только 2 порта SATA, поэтому я бы установил ОС на жесткий диск USB или флэш-накопитель (если вы собираетесь использовать USB-флэш-накопитель, обязательно купите pendrive с приличной производительностью произвольной записи 4k).
Shodanshok
RoC? SoC - это система на кристалле, то есть «маленький компьютер», но что такое RoC?
ilkkachu
Порт захода Доказательство концепции?
BaronSamedi1958
1
RoC означает R помощи O н C бедра. По сути, это маркетинговый термин для определения встроенной системы, работающей под управлением ОС, связанной с RAID, с аппаратной разгрузкой для расчета четности.
Шоданшок
11

Иди ZFS. Шутки в сторону. Он намного лучше по сравнению с аппаратным RAID, и причина проста: он использует полосы переменного размера, так что эквиваленты режимов RAID с четностью (Z1 и Z2, RAID5 и RAID6) работают на уровне RAID10, все еще будучи чрезвычайно экономичными. + вы можете использовать флэш-кэш (ZIL, L2ARC и т. д.), на котором выполняется @ выделенный набор линий PCIe.

https://storagemojo.com/2006/08/15/zfs-performance-versus-hardware-raid/

В Linux есть ZFS, ZoL.

https://zfsonlinux.org/

BaronSamedi1958
источник
3
Обычно я бы искренне согласился с этим, но у него всего 4 ГБ ОЗУ, поэтому ZFS может работать неоптимально ...
Джош
1
+1. В любом случае, ZRAID известен низким IOPS по сравнению с зеркалированием + чередованием: в основном, каждый vdev верхнего уровня имеет производительность IOPS одного диска. Посмотри сюда
шоданшок
В прошлый раз, когда я смотрел, ZFS требовалось 1 ГБ ОЗУ на ТБ RAID, поэтому у OP недостаточно ОЗУ. Это изменилось?
Марк
2
Согласовано. ZFS - лучший выбор для архивных данных. Производительность всегда зависит от размера полосы и размера блоков, которые будут записаны на диск, поэтому ее сложно рассчитать, но очень просто оптимизировать производительность :) Более того, ZFS не была предназначена для виртуализации или интенсивного ввода-вывода нагрузка.
Стрепсилс
1
2Mark: это для дедупликации.
BaronSamedi1958
3

Вот еще один аргумент в пользу программного обеспечения в дешевой системе.

Вещи ломаются, вы знаете это, поэтому вы используете raid, но raid-контроллеры также ломаются, как и ram, процессор, блок питания и все остальное, включая программное обеспечение. В большинстве случаев достаточно просто заменить поврежденный компонент на эквивалентный или более качественный. Подайте 100 Вт, возьмите 150 Вт и начинайте. Аналогично с большинством компонентов. Однако с аппаратным рейдом теперь есть три исключения из этого шаблона: рейд-контроллер, жесткие диски и материнская плата (или другой вышестоящий, если не карта расширения).

Давайте посмотрим на карту рейда. Большинство карт рейдов плохо документированы и несовместимы. Вы не можете заменить карточку компании xyz на карточку abc, поскольку они хранят данные по-разному (при условии, что вы можете выяснить, кто сделал карточку для начала). Решение этой проблемы состоит в том, чтобы иметь запасную карту рейда, точно такую ​​же, как у серийной.

Жесткие диски не так плохи, как у raid-карт, но поскольку у raid-карт есть физические разъемы к дискам, вы должны использовать совместимые диски, и значительно большие диски могут вызвать проблемы. При заказе сменных дисков требуется значительная осторожность.

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

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

Единственный недостаток программного рейда в дешевой системе - загрузка. Насколько я знаю, единственный загрузчик, который поддерживает raid, это grub, и он поддерживает только raid 1, что означает, что ваш / boot должен храниться в raid 1, что не является проблемой, если вы используете только raid 1 и только небольшую проблему в большинство других случаев. Однако сам grub (в частности, загрузочный блок первого этапа) не может быть сохранен в рейде. Это можно сделать, поместив запасную копию на другие диски.

hildred
источник
Способ, которым я настроил свой загрузочный RAID 1, состоял в том, чтобы создать /bootраздел на каждом и раздел данных на каждом для /(вместо того, чтобы выделить весь диск массиву). Пока вы создаете отдельный загрузочный раздел на каждом диске и запускаете его grub-installна каждом диске, все они должны быть загрузочными, и md должен иметь возможность монтировать деградированный массив. Я полагаю, что это будет работать и с другими версиями, кроме RAID 1.
nstenz
@nstenz, ты описал мои настройки почти точно. Раздел данных получил raid6 и lvm, а boot получил raid 1.
hildred
1
  1. Как уже говорили другие, аппаратный RAID не приносит никакой пользы и различных недостатков. Мои основные причины, по которым я предпочитаю программный RAID, состоят в том, что он проще и более переносим (и, следовательно, с большей вероятностью будет иметь успешное восстановление после различных сценариев сбоев).

  2. (Также, как говорили другие) RAID 3 с 3 дисками - это действительно плохая схема RAID - это почти худший из всех миров с очень небольшим преимуществом. Вроде компромисс между RAID 0 и RAID 1, и немного лучше, чем любой из них, но это единственное, что можно сказать об этом. RAID перешел на гораздо лучшие схемы, такие как RAID 6.

  3. Мой совет (аппаратный):

    • Получите 4-портовую карту SATA для этого слота PCI, и вы получите шесть портов SATA - один для загрузочного диска и пять для дисков с данными. Я вижу один за ~ 15 долларов, рекламируемый как аппаратный RAID, но вы можете просто игнорировать эти функции и использовать его как обычный SATA.

    • Получите небольшой SSD для загрузочного диска. Я знаю, что до сих пор существует мнение, что «твердотельные накопители слишком дороги», но это уже едва ли правда, и совсем не так, для малого - 120 ГБ - это гораздо больше, чем нужно для этого загрузочного диска, и вы можете получить его для ~ $ 25.

    • Дополнительное, но действительно приятное дополнение (если в корпусе вашего компьютера имеются 3 отсека для 5,25 "дисков) - это преобразователь отсека для дисков: вы можете превратить 3 отсека для 5,25" (оптических) дисков в 5 3,5-дюймовых (HDD) с фронтальной загрузкой и возможностью горячей замены отсеки, так что вам не придется разбирать машину (или даже выключать ее) для замены дисков (найдите «объединительная плата 5 в 3»).

    • Используйте 5 жестких дисков любого размера в RAID 6 (двойное резервирование, 3x свободного места на диске).

  4. Мой совет (программное обеспечение): посмотрите на OpenMediaVault для программного обеспечения ОС / файлового сервера. Это «дистрибутив устройства», идеально подходящий именно для такого типа использования - на основе Debian (фактически это порт Linux на базе BSN FreeNAS) со всем, предварительно настроенным для сервера NAS. Это делает настройку и управление программным RAID (а также LVM, сетевыми ресурсами и т. Д.) Действительно простыми.

dgould
источник