LINUX.ORG.RU
ФорумTalks

Просветите за RAID контроллеры

 ,


2

1

Вот они бывают дешевые и дорогие. С большим и малым буфером памяти.

Пусть задача будет такая:
Тащить чередующийся рейд из 4-6 шт 2-3тб 7.2k 3.5" дисков sata (!sas).
Цели в бешеных iops нет. Файлы не очень мелкие (не меньше 500кб, в основном десятки и сотни мб).
И почти не кэшируемые (файлов не очень много, и они не часто изменяются, скорее чтение-копирование-удаление-запись_нового).

Должно тупо линейно выдавать большую скорость.

Можно ли рассчитывать, что чтение с такого тома (чередование 4-6 дисков) будет пошустрее, чем одного диска? Будет ли это «пошустрее» и при параллельных операциях записи (читаем-пишем в пределах одного тома)?

Нужно ли гнаться за 512\1024мб кэшем или пофигу? Нужна ли батарейка на контролере, если:
а) будет упс (на несколько минут)
б) потеря данных при записи от пропадания питания не страшна (все равно начинать сначала)

Кто делает говно, а кто хорошо? Кому переплачиваем за имя?

Сюда же вопрос про диски:
Насколько том из 6-8шт 1тб 7.2k 2.5" «ноутбучных» дисков sata (!sas) будет хуже описанного выше «из 4-6 шт 2-3тб 7.2k 3.5» дисков sata (!sas)"? Или пофигу?

Как считывать смарт с дисков? Я уже третий контроллер смотрю (на арендованном на время железе) - ни одна привычная мониторилка не находит смарт.



Последнее исправление: dk- (всего исправлений: 2)

Нужен ли тут вообще контроллер? Может тупо на встроенном в мать собирать такое? Или будет оверхед из-за расчетов на ЦП?

Чем отличаются диски «для рейда» от обычных? Я где-то читал, что там одно отличие. Вроде «если „рейдовый“ диск обнаружил ошибку, то он не пытается ее исправить, а сообщает об этом контроллеру». Но что это значит я не понял.

dk-
() автор топика
Ответ на: комментарий от dk-

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

dk-
() автор топика

Во-вторых мониторилка жестких у рейдов своя, за утилитой на сайт.

steemandlinux ★★★★★
()
Ответ на: комментарий от steemandlinux

от 2-3 до 10-12тб

Линейной скорости очень хочется. Рейд не ради объема. Там перезаписывается очень много.
А софт не умеет «распределят нагрузку между разными томами».

dk-
() автор топика
Ответ на: комментарий от steemandlinux

Ну и как бонусом, план на двух отдельных дисках собрать зеркало. К зеркалу уже есть некоторые требования по надежности.

dk-
() автор топика
Ответ на: комментарий от dk-

Рейд0 из большого количества дисков вылетит с очень большой вероятностью. Может хотя бы рейд10, там скорость чтения такая же, запись да, меньше.

steemandlinux ★★★★★
()
Ответ на: комментарий от steemandlinux

А в чем суть?
Некое статистическое накопление вероятностей факапов? (Ну как развал рейда 5 объемом больше пары тб)

У меня как-то крутился на мега нагрузках 0-рейд из 6шт 15к сас дисков. Правда недолго, и УМВР некорректно.

dk-
() автор топика

Кто делает говно, а кто хорошо? Кому переплачиваем за имя?

Как считывать смарт с дисков? Я уже третий контроллер смотрю (на арендованном на время железе) - ни одна привычная мониторилка не находит смарт.

Страдания вендузятника. mdadm чем не устраивает?

RussianNeuroMancer ★★★★★
()

Раз у тебя есть бабло на контроллеры, потрать его на отдельный комп под NAS и подними там RaidZ.

Lordwind ★★★★★
()

Стоит подумать об SSD похожего объема.
Боюсь, что затраты будут одного порядка, но преимущества флэшек очевидны...

pekmop1024 ★★★★★
()
Последнее исправление: pekmop1024 (всего исправлений: 1)

Ваш выбор mdadm. Проседания по процу не видел, >200 мегабайт/с на унылых гринах WD видел.

Stage1 ★★
()

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

gh0stwizard ★★★★★
()
Ответ на: комментарий от dk-

Нужен ли тут вообще контроллер? Может тупо на встроенном в мать собирать такое?

это если только хотите знатно по##аться при его починке. Имеет смысл брать или полноценный железный контроллер, или собирать mdadm'ом.

Кому переплачиваем за имя?

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

xfilx ★★
()
Ответ на: комментарий от RussianNeuroMancer

страдания подсаженного проприетарщика.

а как не подсаживаться? чем ему пользоваться? научи человека, взбзднуть по-тихому каждый может.

Rastafarra ★★★★
()

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

gh0stwizard ★★★★★
()

Буфер памяти нужен. Чем больше, тем лучше, но 512 хватает. Если будет упс, то батарейка не нужна. Ноутбучные диски будут хуже.

В рейд пихай только RE диски, у них есть верхний предел на время чтения. С обычными дисками будешь мучаться, регулярно пересобирая рейд. На 8 дисков, имхо, лучше ставить 6 рейд. Падения производительности при этом нет.

Под linux:

1. смарт считывается соотв. утилитой, у меня это megacli

smartctl -a -d sat+megaraid,8 /dev/sda > «${dir}/smartctl.sda8»

2. линейную скорость чтения можно поднять так:

blockdev --setra 128 /dev/sdd

Ну и незабываем, про саму скорость диска и то, что в начале и в конце она различается в 2 раза.

Мой контроллер от intel, но на самом деле это LSI:

01:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2108 [Liberator] (rev 03)

PS: SSD под это дело не бери, у них линейная скорость не высокая, либо $/гб очень дофига.

soomrack ★★★★★
()
Последнее исправление: soomrack (всего исправлений: 1)
Ответ на: комментарий от dk-

Может тупо на встроенном в мать собирать такое?

И когда сдохнет мать - играть в русскую рулетку - заведется ли RAID на другом чипсете или нет. Плавали, знаем. Варианта 2: или отдельная плата(лучше 2 одинаковые, 1 - про запас, сам понимаешь) за сотни нефти(количество сотен регулируется наличием необходимых тебе фич) или бюджетный вариант - софтрейд средствами ОС.

Pinkbyte ★★★★★
()

Как считывать смарт с дисков? Я уже третий контроллер смотрю (на арендованном на время железе) - ни одна привычная мониторилка не находит смарт.

Обычно этим занимаются утилиты от производителя RAID-контроллера. Далеко не каждый производитель делает их под онтопик. Иногда smartctl умеет в RAID-контроллеры(опция -d), но он их не так чтобы очень много.

Pinkbyte ★★★★★
()

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

sin_a ★★★★★
()
Ответ на: комментарий от true_admin

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

soomrack ★★★★★
()
Ответ на: комментарий от true_admin

Может это были контроллеры из низкого ценового диапазона? Типа для заработки бабла, которое и продавали как LSI, а не под другими брендами типа intel и пр.?

soomrack ★★★★★
()
Ответ на: комментарий от Lordwind

Мне нужен доступ непосредственно с хоста, а не по сети.

dk-
() автор топика
Ответ на: комментарий от pekmop1024

Да ладно?
1тб ссд стоит около 20к руб. Даже выше. Это цена одного контроллера (с запасом?). А винты по 2.5к\тб

dk-
() автор топика

нету рейдов, кроме mdadm и zraid.

tazhate ★★★★★
()

если у тебя видеоархив - raidz и zfs идеальна. у меня на ней целый телепродакшн жил.

tazhate ★★★★★
()

а про диски - wd raptor или wd red, зависит от бюджета.

tazhate ★★★★★
()
Ответ на: комментарий от Pinkbyte

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

dk-
() автор топика
Ответ на: комментарий от stevejobs

Нет. Ибо надо от 4-5тб. С выходом на 10-12.

dk-
() автор топика
Ответ на: комментарий от soomrack

Значит без RE никак? Пичаль, они сильно дороже.

А что контроллеры (железные) 6го рейда реально сделают массив сильно быстрее чем одиночный том? «Сильно» = в 2-3 раза, а не на 30-50%.

dk-
() автор топика
Ответ на: комментарий от tazhate

К сожалению софт вин\мак онли. Под линукс банарника нет.

Да и... ради молотилки файлов разве зфс не слишком интерпрайзна?

dk-
() автор топика
Ответ на: комментарий от dk-

К сожалению софт вин\мак онли. Под линукс банарника нет.

Ты шару делаешь, или что? Какая разница, какая ос?
Это раз.

Второе - под mac есть zfs, для винды можно юзать сеть, аля nfs.

Да и... ради молотилки файлов разве зфс не слишком интерпрайзна?

Она идеальна для молотилки файлов, если есть возможность юзать хорошие инструменты, именно их и надо юзать ;)

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

Нужен доступ именно с хоста. Никакой сети.

Один хот (на 2-4 сокета). И том в нем.

А в чем идеальность зфс? Ну в общих чертах. Я когда на вики описание читал, мне казалось, что это из одной оперы со чпуксом и т.п.

dk-
() автор топика
Ответ на: комментарий от dk-

А в чем идеальность зфс? Ну в общих чертах. Я когда на вики описание читал, мне казалось, что это из одной оперы со чпуксом и т.п.

Стабильнейшая стабильность + контроль чексум каждого файла + быстрая работа + блаблаблабла на еще много времени.

Нужен доступ именно с хоста. Никакой сети.

В таком случае под маком будет все ок.

tazhate ★★★★★
()
Ответ на: комментарий от tazhate

Чексумм отключается? Отключить если, быстрее будет? Стабильность не так важна как скорость.

Хм. Т.е. надо подбирать мать под хакинтош. Я же не смогу макпрокупить. А мак-сервер на что попало не встает?

dk-
() автор топика
Ответ на: комментарий от dk-

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

Если важна скорость, то я выступаю снова за файловую шару, гигабитную сеть и iscsi или nfs, а саму шару держать на zfs.

Хранилка должна быть хранилкой, а не локалстораджем на много теров.

tazhate ★★★★★
()
Ответ на: комментарий от dk-

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

tazhate ★★★★★
()
Ответ на: комментарий от dk-

Значит без RE никак? Пичаль, они сильно дороже.

Ну можно и без них. У меня на 8-ми зеленых 2TB WD raid6 жил 3 года. Потом перешел на 1TB WD RE, уже год как. С тех пор еще ни один диск не отваливался.

А что контроллеры (железные) 6го рейда реально сделают массив сильно быстрее чем одиночный том? «Сильно» = в 2-3 раза, а не на 30-50%.

raid6, 8 дисков WD 5400, утилита zcav выдала следующие показатели (запущена для всего диска):

raid6: 510 мегабайт в секунду
один диск: 57 мегабайт в секунду

еще:

raid6:
hdparm 701 MB/sec
dd 762 MB/sec (write) 732 MB/sec (read)

Вот для таких настроек:

#!/bin/sh
#-------------------------------------------------------------------------------
# Оптимальные настройки для файловой системы xfs на:
# — raid6
# — 8 disks
# — 1MB strip size
#-------------------------------------------------------------------------------

dir_data=«/root/fs»
if [[ -z $1 ]]; then
    test=1
else
    test=$1
fi

dir=$dir_data/$test
mkdir -p $dir

umount /mnt/raid6

echo 1  > /proc/sys/vm/dirty_background_ratio
echo 10 > /proc/sys/vm/dirty_ratio

echo 128 > /sys/block/sda/queue/nr_requests

echo noop > /sys/block/sda/queue/scheduler

blockdev --setra 65536 /dev/sda


#-------------------------------------------------------------------------------
# Виртуальный диск для логов фс (в оперативной памяти, для тестов)
#
losetup -d /dev/loop0
dd if=/dev/zero of=/dev/shm/log bs=4k count=40k
losetup /dev/loop0 /dev/shm/log 

#-------------------------------------------------------------------------------
# Создание файловой системы
#
mkfs.xfs -f -s size=4k -b size=4k -d su=1m,sw=6,agcount=12 -l logdev=/dev/loop0,size=128m /dev/sda1 > $dir/xfs.info
mount -o allocsize=1g,logdev=/dev/loop0,noatime,attr2,nobarrier,logbufs=8,logbsize=256k /dev/sda1 /mnt/raid6

Против одного диска:

dd: 93MB/sec (read) 83MB/sec (write)

с такими настройками:

#!/bin/sh
#-------------------------------------------------------------------------------
# Оптимальные настройки для файловой системы xfs на:
# — WD10EACS
#-------------------------------------------------------------------------------

dir_log=«/root/optimization/sdb2/aligned/xfs_best»
mkdir -p $dir_log

umount /mnt/data0

#echo 1  > /proc/sys/vm/dirty_background_ratio
#echo 20 > /proc/sys/vm/dirty_ratio

echo 128 > /sys/block/sdb/queue/nr_requests
echo cfq > /sys/block/sdb/queue/scheduler

blockdev --setra 128 /dev/sdb


#-------------------------------------------------------------------------------
# Виртуальный диск для логов фс (в оперативной памяти, для тестов)
#
losetup -d /dev/loop2
dd if=/dev/zero of=/dev/shm/data0.xfs bs=4k count=34k
losetup /dev/loop2 /dev/shm/data0.xfs

#-------------------------------------------------------------------------------
# Создание файловой системы
#
mkfs.xfs -f -s size=4k -b size=4k -d agcount=8 -l logdev=/dev/loop2,size=128m /dev/sdb2 > $dir_log/xfs.info
mount -o allocsize=1g,logdev=/dev/loop2,noatime,attr2,nobarrier,logbufs=8,logbsize=256k /dev/sdb2 /mnt/data0

xfs_db -r -c uuid /dev/sdb2 > $dir_log/xfs.uuid




#-------------------------------------------------------------------------------
# Тест производительности

mkdir -p «/mnt/data0/tmp»
chmod 777 «/mnt/data0/tmp»

user=«soomrack»
ram=8
count=$(( $ram * 250000 ))

/usr/bin/time -o $dir_log/dd-of.time \
    sh -c «dd if=/dev/zero of=/mnt/data0/tmp/dd.txt bs=8k count=${count} && sync» 2> $dir_log/dd.write

/usr/bin/time -o $dir_log/dd-if.time \
    sh -c «dd if=/mnt/data0/tmp/dd.txt of=/dev/null bs=8k» 2> $dir_log/dd.read


/usr/bin/time -o $dir_log/bonnie++.time \
    sh -c «bonnie++ -f -n 0 -c 4 -x 4 -u ${user} -d /mnt/data0/tmp > $dir_log/bonnie++.csv»

sync
sleep 10
/usr/bin/time -o «$dir_log/bonnie++.all.time» \
    sh -c «bonnie++ -x 4 -u ${user} -d /mnt/data0/tmp > $dir_log/bonnie++.all.csv»

PS: это все были обычные диски, не RE.

soomrack ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.