Как установить приоритет ввода / вывода для клиентских процессов NFS?

Конфигурация: сервер Linux и NAS Box (Netgear), выступающий в качестве сервера NFS.

Для одного процесса на сервере linux легко использовать всю пропускную способность ввода / вывода, просто скопировав файл из общего ресурса nfs в общий ресурс nfs. Канал ввода / вывода заблокирован, и все остальные процессы на сервере почти остановятся, ожидая ввода / вывода. Нагрузка возрастает до 10-20 (четыре ядра), появляется все больше и больше процессов pdflush... пока кто-то не остановит копию файла.

Как я могу ограничить пропускную способность ввода / вывода, которую использует процесс cp? nice не поможет конечно, но и ionice -c3 не имеет никакого эффекта Влияет ли ionice на nfs mount? Есть ли что-то вроде nfsnice?

2 ответа

Каковы ваши значения "rsize" и "wsize"?

Обычно современные Linux-клиенты NFS согласовывают максимальные значения с сервером, но иногда они могут оказаться далеко от базы. Например, у нас было rsize=1m,wsize=1m в /proc/mounts, не зная, что NAS не может поддерживать более 32768. Та же медлительность, тот же эффект скачка загрузки, как вы описали.

Уменьшение обоих значений до 32 КБ немедленно решило проблему медлительности и растущей нагрузки, и настольный компьютер оставался полностью отзывчивым даже при копировании гигабайт на NFS. И у нас есть наши домашние каталоги по NFS...

Возможно, реализация NFS-сервера на вашем NAS-сервере немного "хвастается", предлагая больший размер, чем он может пережевать...?

ура

Похоже, что Netgear NAS не успевает и вызывает заблокированные операции ввода-вывода. Как выглядит NAS? Сколько дисков? Как выглядит конфигурация RAID? Похоже, это проблема на стороне сервера.

Другие вопросы по тегам