URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 84853
[ Назад ]

Исходное сообщение
"NFS: FreeBSD Server, Linux Client. Тормоза... при sync?"

Отправлено freeBSDun , 09-Апр-09 17:54 
Дано:
NFS-сервер FreeBSD 7.1 i386
NFS-клиент Linux (RHEL-4) ядро 2.6.9 x86-64

Опции монтирования: rw,intr,bg,rsize=32768,wsize=32768,hard,timeo=120,tcp

Клиент пытается записывать на сервер файлы размером по 1 гигабайту подряд. (Резервное копирование Oracle). Сама запись протекает на полной скорости 100-мегабитного интерфеса, всё замечательно... но когда пытается перейти к следующему файлу - всё зависает на несколько минут, rpciod начинает есть 100% процессора, load average взлетает под пятнашку (нормальное значение 2-2.5).

Косяк, судя по всему, происходит при вызове sync. (как минимум, если в процессе "бодрого заливания" файла сказать sync - систему тоже клинит).

(При монтировании hard обязателен, tcp - очень желательно).
(Версию linux-ядра прямо сейчас поменять не удастся)
(Лить на линукс-сервер - не вариант, свободного терабайта на линукс-серверах нет, а на этом есть FreeBSD-специфичный софт)
(Вариант с "подъемом" файлов по ftp/sftp/rcp - не канает)

Помогите, не дайте уйти на самбу! Или хоть подскажите, каким запросом гуглить...


Содержание

Сообщения в этом обсуждении
"NFS: FreeBSD Server, Linux Client. Тормоза... при sync?"
Отправлено IKC , 09-Апр-09 19:31 
rw,bg,hard,nointr,tcp,timeo=300,rsize=32768,wsize=32768
или в металинке почитай 279393.1 ноту
там расписано почему и как

"NFS: FreeBSD Server, Linux Client. Тормоза... при sync?"
Отправлено freeBSDun , 10-Апр-09 08:23 
>rw,bg,hard,nointr,tcp,timeo=300,rsize=32768,wsize=32768
>или в металинке почитай 279393.1 ноту
>там расписано почему и как

К сожалению, ASFU-лицензия не дает читать металинк. Впрочем, попробую сегодня добыть, спасибо.

Однако, nointr приводит к зависанию процесса, использующего NFS, намертво, даже по kill -9 не убивается, если что-то случается со связью и/или nfs-сервером. А случиться может - хотя бы потому, что Oracle-сервер на "личном" 3000 kVah бесперебойнике висит, а NFS-сервер на "половинке" 1000 kVah-ного.  

Или ключевое слово - timeo=300 ?