вторник, 29 марта 2011 г.

NFS: учимся монтировать

[черновик]
Большая дока
http://www.time-travellers.org/shane/papers/NFS_considered_harmful.html

Основной файл с тем, что экспортируем - /etc/exports
А вот то, что там пишется, в centos и freebsd отличается.
Пример задачи: монтируем /mnt, с возможностью монтировать любую папку оттуда, на запись
Есть ещё проблема - 3 и 4 версии весьма отличаются, демонами, параметрами итд.

FreeBSD:
/mnt -maproot=0 -alldirs

CentOS:
/mnt 192.168.2.0/24(rw,no_root_squash)

Про solaris: http://solarisblog.ru/networks/osnovy-nfs-v-os-solaris
Варианты монтирования клиентом:
вручную через mount -t nfs
через fstab
через automount

Оптимизация
rsize - "буфер чтения", число байт для чтения файла от сервера. На стадии установления соединения выясняется максимальный размер этого буфера. Чем больше, тем быстрее работа NFS, но в случае сбоя и больше времени на восстановление. На плохом канале большой буфер может сделать соединение нерабочим. В локалке можно выставить 32768

wsize - "буфер записи". См выше.

Выставляется в лине и фре по разному.
linux: rsize=16384,wsize=16384
freebsd: -w=32768,-r=32768
Более того, вывод будет отличаться:
linux: (rw,rsize=16384,wsize=16384,addr=192.168.2.15)
freebsd: (nfs, asynchronous, noatime)
Опции немного разные, но главное - в лине прописаны эти буферы, а во фре -- нет.

Монтирование на клиенте.
1) fstab
Стандартная строка выгляжит так:
server:/url /local/url nfs defaults 0 0

Дополнительные ключи
Размеры буфера чтения и записи.
freebsd: (rw|ro),(tcp|udp),(intr|nointr),(hard|soft),noatime,(nfsv3|nfsv4),(bg|fg),-w=32768,-r=32768,timeo=300

Есть (не)маленький шанс поймать в messages ошибки
kernel: lockd: server nfs-server not responding, timed out
last message repeated 15 times
В частности, у меня была такая ошибка при линковке линя к фря-серверу. Думаю, надо тюнить систему, но не совсем понятно, куда. Или это просто баг?
В общем, использование tcp даже в локалке обязательно. Сильно повышает стабильность. А на гигабите udp может быть и опасен.

1 комментарий:

  1. Достала nfs в своё время, всё время что-то глючило в дебиане.
    Долго не рисковал связываться, поставил в убунте, работает как часы.

    ОтветитьУдалить