it-swarm-ru.tech

Можно ли разместить домашнюю папку в NFS?

Я планирую развернуть несколько компьютеров с киосками и хотел бы оставить их с небольшим pendrive в качестве загрузочного диска, оставляя остальные на простом резервном сервере, аля LTSP .

Прямо сейчас я обдумываю два варианта. NFSed/home/или локальная копия ~ /, скопированная при входе в систему, rsynced при выходе из системы.

Я опасаюсь, что работа с файлами может быть слишком медленной, или моя сеть может получить засорена .

30
voyager

Я использую NFS для своих домашних каталогов в нашей производственной среде. Есть несколько хитростей.

  1. Не подключайте NFS к /home - таким образом, вы можете иметь локального пользователя, который позволит вам войти в случае, если сервер NFS выйдет из строя. Мы монтируем на /mnt/nfs/home

  2. Используйте мягкое монтирование и очень короткое время ожидания - это предотвратит блокирование процессов навсегда.

  3. Используйте автомонтер . Это снизит использование ресурсов, а также означает, что вам не нужно беспокоиться о перезапуске служб, когда сервер NFS запускается, если он по какой-то причине отключается.

    auto.master:
      +auto.master
      /mnt/nfs /etc/auto.home --timeout=300
    
    auto.home
       home -rw,soft,timeo=5,intr      home.bzzprod.lan:/home
    
  4. Используйте систему единого входа, чтобы не сталкиваться с проблемами, связанными с разрешениями. У меня есть сервер OpenLDAP.

30
Aaron Brown

Будьте осторожны с мягкими креплениями! Мягкое монтирование файловой системы NFS означает, что IO потерпит неудачу после истечения времени ожидания. Будьте уверены, что именно этого вы и хотите в домашних каталогах пользователей! Думаю, вы этого не сделаете. Использование жесткого монтирования на Домашние каталоги в сочетании с опцией intr чувствуют себя здесь намного безопаснее.

Жесткое время не истечет: IO операции будут повторяться бесконечно. Опция intr позволяет прервать процесс монтирования. Поэтому, если вы смонтируете экспорт и столкнетесь с ошибкой, хард-монтирование заблокирует ваш сеанс. Опция intr позволит прервать монтирование, поэтому комбинация довольно безопасна и гарантирует, что вы не потеряете данные пользователя.

В любом случае, autofs делает все это еще проще.

7
wzzrd

HowtoForge опубликовал статью под названием Создание NFS-подобного автономного сервера хранения данных с GlusterFS на Debian Lenny , вы можете проверить это.

Вот краткое описание того, почему это хорошая "выполнимая" альтернатива NFS, со страницы проекта GlusterFS :

GlusterFS самостоятельно лечит себя на лету. Там нет fsck. Бэкэнд хранилища доступен напрямую как обычные файлы и папки (стиль NFS). При включенной репликации GlusterFS может противостоять аппаратным сбоям.

Более подробную информацию можно найти в проектной документации.

Кроме того, еще одна приятная вещь об использовании GlusterFS - если вам нужно больше места на вашем SAN вы просто добавляете еще один блок хранения (серверный узел) и вы можете параллельно масштабировать/увеличивать хранилище, когда есть это нужно.

7
faultyserver

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

В наши дни вы можете сказать многим программам хранить свои кэши в другом месте (например, на локальном диске), установив XDG_CACHE_HOME переменная окружения в сценарии входа. Многие программы (например, Firefox) по-прежнему требуют ручной настройки, поэтому вам, вероятно, придется проделать дополнительную работу, чтобы идентифицировать и настроить их единообразно для всех ваших пользователей.

4
Sam Morris

Единственное, что следует отметить, это то, что когда сервер NFS отключен - ваши монтирования будут зависать - мягкое монтирование не будет блокироваться, поэтому можно избежать самого "зависания", однако это не решит проблему домашних каталогов, как без домашнего каталог, пользователь все равно прикручен.

Даже когда сервер NFS восстанавливается, если вы ничего не делаете с этим, проблема замораживания останется - вам придется убить процесс на монтирующей машине и перемонтировать. Причина этого заключается в том, что когда сервер NFS возвращается в рабочее состояние, ему назначается другой fsid - так что вы можете, по крайней мере, решить эту проблему путем жесткого кодирования fsids на сервере NFS, для пример...

_#. Home Directories
/usr/users \
  192.168.16.0/22(rw,sync,no_root_squash,fsid=1) \
  192.168.80.0/22(rw,sync,no_root_squash,fsid=1)

#. Scratch Space
/var/ftp/scratch \
  192.168.16.0/22(rw,async,no_root_squash,fsid=3) \
  192.168.80.0/22(rw,async,no_root_squash,fsid=3) \
  172.28.24.151(rw,async,root_squash,fsid=3)
_

Страница --- exports(5) ...

_fsid=num
          This option forces the filesystem identification portion of the file handle
          and  file attributes used on the wire to be num instead of a number derived
          from the major and minor number of the block device on which the filesystem
          is  mounted.   Any 32 bit number can be used, but it must be unique amongst
          all the exported filesystems.

          This can be useful for NFS failover, to ensure that  both  servers  of  the
          failover  pair use the same NFS file handles for the shared filesystem thus
          avoiding stale file handles after failover.
_

... Хотя это указывает на то, что до тех пор, пока основные/второстепенные числа не меняются (чего они обычно не делают, за исключением случаев, когда вы экспортируете тома SAN/многолучевого распространения, где они могут меняться), я обнаружил, что мы Я полностью устранил проблему - то есть, если сервер NFS возвращается - соединение было восстановлено быстро - я до сих пор не знаю, почему это имело значение для таких устройств, как, например, _/dev/sdaX_.

Теперь я должен указать, что мой аргумент в значительной степени анекдотичен - на самом деле не имеет смысла, почему он исправил проблему, но "кажется" это решило - как-то - здесь, вероятно, есть другие переменные, которые я еще не обнаружен. знак равно

4
Xerxes

Во многих местах, где я работал, используются смонтированные NFS домашние каталоги. Как правило, нет большой разницы в производительности (и пользователи киосков, вероятно, немного менее требовательны, чем разработчики, которые знают, как достать своего местного ИТ-специалиста). Одна проблема, с которой я столкнулся, это то, что происходит, когда я захожу на рабочий стол Gnome и сервер NFS отключается по тем или иным причинам. Вещи становятся действительно безразличными.

3
kbyrd

На практике NFS хорошо работает для домашнего каталога, если есть коммутируемая сеть 100 Мбит или лучше. Для более чем 10-20 киосков сервер должен иметь гигабитное соединение. Вы не выиграете конкурсы производительности, но такие вещи, как Firefox и Open Office будут работать нормально.

Копирование в домашний каталог будет основной проблемой с точки зрения задержек при входе в систему (в сети с пропускной способностью 100 Мбит/с, максимальная скорость которой составляет 12 МБ/с. Домашний каталог с емкостью 100 МБ близок к 10 секундам.) Rsync ускорит синхронизацию кэша веб-браузера ... 10 минут и 500 файлов болят.

2
Alexandre Carmel-Veilleux

Я использую NFSed дома, и он отлично работает. но вы должны убедиться, что сеть достаточно быстра и никогда не будет отключена.

2
cd1

Посмотрите на cachefilesd . Я сам этим не пользовался, но выглядит многообещающе.

Демон cachefilesd управляет файлами и каталогами кэширования, которые используются сетевыми файловыми системами, такими как AFS и NFS, для постоянного кэширования на локальный диск.

Также не забудьте настроить параметры rsize и wsize и по возможности использовать кадры Jumbo.

1
Cristian Ciupitu