jidckii
@jidckii
system administrator

ZFS raidz ограничивает скорость ребилда?

Есть freenas с raidz(1) из 9 дисков 4тб + 1 под hotspare .
Используется для cifs шары.
Для теста закинул 5 Тб данных на том и решил проверить сколько будет длиться ребилд.
Дернул 1 диск и понял, что время перестроения какое то невероятно огромное получится.
за прошедшие 5 часов пересчитало всего около 2 %.
При этом скорость чтения с дисков в районе 1 Мб ну и запись на замену такая же идет.
1448904419.png1448904455.png
а сейчас еще просела.

scan: resilver in progress since Mon Nov 30 17:11:04 2015
189G scanned out of 5.74T at 8.87M/s, 182h38m to go
21.0G resilvered, 3.22% done

В данный момент к хранилищу никто не обращается.
Чем может быть обоснованно такое поведение ?
Может в настройках zfs есть какой то ограничитель влияющий на скорость чтения с дисков при ребилде массива ?
  • Вопрос задан
  • 1268 просмотров
Решения вопроса 1
jidckii
@jidckii Автор вопроса
system administrator
нагуглил сам

# ZFS tuning
#         Mostly taken from:  http://broken.net/uncategorized/zfs-performance-tuning-for-scrubs-and-resilvers/
vfs.zfs.l2arc_write_boost=160000000             # Set the L2ARC warmup writes to 160 MBps
vfs.zfs.l2arc_write_max=320000000               # Set the L2ARC writes to 320 MBps
vfs.zfs.resilver_delay=0                        # Prioritise resilver over normal writes (default 2)
vfs.zfs.scrub_delay=0                           # Prioritise scrub    over normal writes (default 4)
vfs.zfs.top_maxinflight=128                     # Up the number of in-flight I/O (default 32)
vfs.zfs.resilver_min_time_ms=5000               # Up the length of time a resilver process takes in each TXG (default 3000)
vfs.zfs.vdev.max_pending=24                     # Set the queue depth (number of I/O) for each vdev
  #-->                                          # Set this really high.  Then monitor the L(q) column in gstat under load.
  #-->                                          # Set it to just slightly lower than the highest number you see.


добавляем в sysctl.conf
# servise sysctl restart

Скорость выросла в 10 раз,и все уперлось в CPU.
scan: resilver in progress since Mon Nov 30 17:11:04 2015
        5.36T scanned out of 5.74T at 101M/s, 1h7m to go
        609G resilvered, 93.25% done
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы