Одновременное чтение и запись - сильно падает производительность

Status
Not open for further replies.

AlexTS

Cadet
Joined
Jul 29, 2017
Messages
3
Здравствуйте!

Подскажите, пожалуйста, где искать узкое место.

Занимаемся видеомонтажом. Имеется 2 сервера на freenas. Около 15 клиентов мак (открыт доступ только по afp). Гигабитная сеть. Специфика работы означает одновременный доступ клиентов, в основном на чтение. Причем больших файлов.

На серверах, соответственно, лежит видео. Один постарее (мать supermicro, 2xXEON, 32 гб оперативной с ecc), второй поновее (мать асус на серверном чипсете, но на i7, 64 гб оперативной). Дисковая конфигурация примерно одинакова. Через контроллер adaptec 8805 (раньше 6805е) подключены 8 sas винтов hitachi (раньше просто sata wd black) по 4 Тб каждый. Естественно, заведено через jbod и отдано под zfs raidz. Кеш из ssd не делали, ввиду специфики задач (объемы данных большие и данные все время разные...) Сеть 4-х ствольные гигабитные адаптеры интел, которые работают в режиме агрегации. Коммутатор cisco 350x 48-портовый (раньше hp 2510).

Результаты в целом приятные. Каждый клиент имеет свой канал к серверу до 110 Мбайт/сек реальной пропускной способности. Причем падать эта цифра начинает на 5-м клиенте, подключенном к тому же серверу, что вполне устраивает.

Что не устраивает, и в чем, собственно, заключается вопрос. Как только кто-то один начинает на сервер что-либо ПИСАТЬ - чтение падает у всех практически в минимум. Растут задержки, вплоть до жестких задержек при открытии папок...

Возможно, если бы у нас данные были "обычного офисного типа", т.е. много мелких файлов - возможно, никто никаких задержек даже не заметил бы... Но, раз уж речь идет о больших потоковых файлах (100МБ~2ГБ, до 30ГБ, и их много), то и падение общей производительности ощущается больнее.

Подскажите, в какую сторону копать?

Из уже сделанных выводов:
  1. Специально указал какое железо используется сейчас, и какое было раньше - разницы по поводу одновременного чтения/записи нет. От замены этого железа по сути вопроса ничего не изменилось.
  2. Тип агрегации также на практике не влияет. Load ballance или LACP - ситуация одинакова. Да, в статистике системы, действительно, запись идет только по одному из 4-х интерфейсов, но реально клиенты читать не могут нормально во время записи. Другие типы агрегации, поддерживаемые фринасом, не рассматривались ввиду нецелесообразности. Сетевые карты интел и свитчи (что hp, что cisco) - поддерживают данные типы агрегации по стандартам.
  3. Производительность дисковой системы вроде бы достаточна для таких задач и даже слегка избыточна.
Из предположений:
  1. Возможно, дело в сетевой агрегации, которая работает не корректно/предназначена для других задач? Стоит ли пробовать отказаться от агрегации в принципе и перейти на один 10Гбит линк от сервера до свитча?
  2. Возможно софтовый рейд на зфс не предназначен для таких задач и одновременных операций чтения/записи? Может, стоит отказаться от зфс и собрать аппаратный рейд 5-го уровня из тех же дисков, средствами того же контроллера адаптек 8805?
  3. Все гораздо проще и у меня что-то неправильно настроено/сконфигурировано? Я что-то упускаю из виду?
  4. Решения на основе SAN не предлагайте из-за дороговизны оных, потому NAS и используем)))
Буду благодарен за любые свежие идеи/комментарии.
 
Last edited:

Lordbl4

Dabbler
Joined
Jul 4, 2016
Messages
42
в сторону ARC смотрели? что происходит с загрузкой памяти во время просадок скорости?
 

AlexTS

Cadet
Joined
Jul 29, 2017
Messages
3
Вроде бы ничего не меняется, как была память занята практически вся, так и остается...
Честно говоря, специально за этим не следил. То есть, понятно, во время "просадок" смотрел статистику, видел активность сетевых интерфейсов, дисков, но в графиках памяти ничего в глаза особо не бросилось...
Понаблюдаю еще, конечно.
 
Status
Not open for further replies.
Top