[Sysadmins] оптимальный raid-5 на 4 дисках... ?

Alexey Shabalin a.shabalin на gmail.com
Сб Мар 19 15:21:34 UTC 2011


2011/3/3 Maks Re <admaks на gmail.com>:
> Здравствуйте,
>
> имеется домашний тазик
> на нем я установил 4 диска WD10EARS (сначало было 3, потом добавил 4-й с перестройкой массива)
>
> проблема - низкая скорость и высока нагрузка при записи.
>
> в частности - при копировании по smb, LA может взлететь до 50 (!)
>
>
> как что покрутить?
> чтобы избавиться от такого...

На днях я для себя собирал NAS. Опишу, что бы и самому не забыть.
4 диска WD по 2Тб, mini-ITX мать с atom-D525.
Server-litgh-1.1.3-x86_64 почему то не захотел ставиться (систему
ставил на старинную IDE-флэшку 1Гб - то ли медленно записывал, то ли
посчитал, что места не хватит - ошибка на этапе установки пакетов).
Пришлось обманывать компьютер - поставил на рабочей машине систему в
виртуалку, а потом через бэкап tar развернул на новой машине. Починил
загрузчик и всё завелось.

Что делал с дисками. Простой raid5 и ext4.
- fdisk -c -u /dev/sdb и т.д. весь диск - один раздел типа fd.

- создаём раид:
mdadm --create --chunk=128 --level=5 --raid-devices=4
--bitmap=internal --bitmap-chunk=131072 /dev/sd[bcde]
строится раид долго, около 5 часов. Можно сразу выполнить - будет быстрее:
echo 16384 > /sys/block/md0/md/stripe_cache_size

- после постройки раида, создаём файловую систему(для расчётов
параметров использовал калькулятор
http://busybox.net/~aldot/mkfs_stride.html ):
mkfs.ext4 -b 4096 -E stride=32,stripe-width=96 /dev/md0

И заключительный штрих - добавил в /etc/rc.d/rc.local:
#!/bin/sh

# Set read-ahead
echo "Setting rad-ahead to 32 Mib for /dev/md0"
blockdev --setra 65536 /dev/md0

echo "Setting srtip_cache_size to 16 Mib for /dev/md0"
echo 16384 > /sys/block/md0/md/stripe_cache_size


Получилось следующее:
# dd if=/dev/zero of=./111 bs=10M count=100
100+0 записей считано
100+0 записей написано
 скопировано 1048576000 байт (1,0 GB), 6,7883 c, 154 MB/c

# dd if=/dev/zero of=./111 bs=50M count=100
100+0 записей считано
100+0 записей написано
 скопировано 5242880000 байт (5,2 GB), 39,5708 c, 132 MB/c

Даже 130 для дома мне хватит, всё равно сеть столько не пропустит.

-- 
Alexey Shabalin


Подробная информация о списке рассылки Sysadmins