LINUX.ORG.RU

Изменение скорости текущего хранилища NAS

 ,


1

1

Други, подскажите

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

Итак имеется 10гигабитная локальная сеть, в которой порядка 20 рабочих станций работающих одновременно с файлохранилищем, которое монтируется на каждую машину по nfs.

Файлохранилище организовано на базе mdadm, где поднят RAID 6 (chunk 512k), на 8 HDD 7200rpm

Сеть проверил через iperf связь каждой машины с хранилищем стабильно порядка 9.5 Гигабит/c.

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

Итак, тест я делал так:

dd if=/dev/zero of=/mnt/server/Trash/test.img bs=8k count=256k По результатам нескольких попыток подряд средняя скорость записи в хранилище была 505 Мб/с

dd if=/mnt/server/Trash/test.img of=./test.img По результатам нескольких попыток подряд средняя скорость чтения из хранилища была 150 Мб/с

dd if=/mnt/server/Trash/test.img of=./test.img bs=8k По результатам нескольких попыток подряд средняя скорость чтения из хранилища была 510 Мб/с

dd if=/mnt/server/Trash/test.img of=./test.img bs=64k По результатам нескольких попыток подряд средняя скорость чтения из хранилища была 600 Мб/с

dd if=/mnt/server/Trash/test.img of=./test.img bs=512k По результатам нескольких попыток подряд средняя скорость чтения из хранилища была 600 Мб/с

Таким образом! Скорость записи в хранилище оказалось порядка 505 М/c. Скорость чтения в среднем 150 М/c без параметра bs, а с bs=8k скорость выше почти в 3.5 раза, а с bs=64k или 512k (тут я особой разницы не заметил) скорость чтения выше почти в 4 раза.

Вопрос. Ребята, скажите:

  1. вообще насколько этот тест отвечает реалиям?
  2. насколько данные результаты адекватны имеющейся конфигурации сети и рейда, если учесть что сеть 10 Гигабит, а рейд 6 на 8 дисках 7200 rpm.
  3. почему скорость чтения без bs такая низкая, а при наличии параметра bs увеличивается в разы и с какой тогда скоростью в реальности происходит чтение файлов, когда люди работают с хранилищем.
  4. если такой способ тестирования не очень адекватен, подскажите как тогда можно лучше затестить эти данные?

И на серваке и на рабочих станциях установлен Arch Linux

Понимаю, что мои данные это не идеальный тестовый стенд в идеальных условиях, но все же мне бы хотелось базово оценить, насколько я вообще смог выжать максимум из имеющейся сети и из рейда по производительности. И если не смог, то дальше найти где затык. К примеру, мне почему-то кажется, что скорость чтения с рейда даже при наличии параметра bs низковата. Что скажете, други?



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

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

man dd читать надо, bs=512 по-умолчанию.

Лучше использовать fio.

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

А можно подробнее про fio?

И если по умолчанию bs=512k, то почему такая разница в результатах, когда я явно указываю bs=512k и когда вообще не указываю этот параметр. Ведь по идее разницы быть не должно?

ITdreamer
() автор топика
Последнее исправление: ITdreamer (всего исправлений: 1)

И на серваке и на рабочих станциях установлен Arch Linux

а какую работу работают на этих рабочих станциях, помимо канпиляния арча. зачем там 10гбитная сеть и более быстрое хранилище

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

для тестирования disk io есть спец. программы iozone например

blkreplay - block device testing and benchmarking toolkit
blktrace - utilities for block layer IO tracing
collectl - Utility to collect Linux performance data
dbench - The dbench (disk) and tbench (TCP) benchmarks
nmon - performance monitoring tool for Linux
iozone3 - Filesystem and Disk Benchmarking Tool
futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 1)

dd создаёт последовательную нагрузку. Реальная нагрузка от нескольких рабочих станций параллельная. Параллельную нагрузку надо моделировать с помощью fio. dd это вообще не бенчмарк, в отличие от fio.

iliyap ★★★★★
()

Тебе надо мерять IOPS, fio в твоём случае идеально подойдёт. В интернете много инструкций как пользоваться fio и на то как измерять.

itn ★★★
()