ZFS на Linux для RHEL/OEL NFS Совместное использование

ZFS на Linux для RHEL/OEL NFS Совместное использование

Я пробую ZFS на Linux для Oracle Linux (OLE) 6.1 (совместимый с Red Hat RHEL 6.1 клон). Я успешно скомпилировал и установилсплизфсна нем для Oracle Unbreakable Kernel. Zfs работает, и я создал зеркало

zpool create -f -o ashift=12 tank mirror sdb sdc

Теперь я пытаюсь поделиться своим пулом zfs под названием "tank/nfs", как упоминалось всайт zfsonlinux.

zfs set sharenfs=on tank/nfs

Поэтому я создалтанк/нфси установитьнфскна.

Теперь я пытаюсь смонтировать общий ресурс nfs на локальном хосте, чтобы проверить его.

mount -t nfs4 127.0.0.1:/tank/nfs /mnt

Но я получаюmount.nfs4: mount system call failed

Итак, вопрос:

Как предоставить общий доступ к папке NFSили тома iSCSI в OLE правильно и смонтировать егос Linux-клиентом через ZFSна Linux.

ответ mount 127.0.0.1:/tank/nfs /mnt

решение1

Должно быть, что-то не так с конфигурацией вашего сервера NFS.

Пожалуйста, попробуйте следовать этомукакдля настройки RHEL 6 в качестве сервера NFS.

решение2

Чтобы установить монтирование NFS, необходимо portmapзапустить службу перед попыткой монтирования.

Запустите /sbin/service portmap startи повторите попытку монтирования NFS.

Для RHEL6 и новее это rpcbind-/sbin/service rpcbind start

решение3

По моему опыту работы с ZFS на FreeBSD и Debian GNU/kFreeBSD, я обнаружил, что функция sharenfs реализована не очень хорошо. Вы можете настроить экспорт NFS в /etc/exports.

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

Экспорт NFS в Linux

Вам придется отредактировать файл /etc/exports, чтобы включить NFS в Linux. С NFSv4 в Linux каждая экспортированная файловая система должна быть смонтирована в одном каталоге, называемом псевдофайловой системой NFSv4. В данном случае это будет /tank. Точки монтирования в псевдофайловой системе могут быть экспортированы с различными методами управления доступом и параметрами экспорта. Любые файловые системы, смонтированные в псевдофайловой системе, должны получить свою собственную строку экспорта в /etc/exports.

/etc/exports:

/tank *(fsid=0)
/tank/nfs *(rw,sync)

Чтобы изменения в /etc/exports вступили в силу, необходимо запустить exportfs -r.

Для NFSv4 вам потребуется запустить idmapd как на клиенте, так и на сервере, чтобы упростить сопоставление имени пользователя с номером идентификатора пользователя.

В Linux NFSv4 экспорт отличается от NFSv3 и ниже. Учитывая, что псевдофайловая система — /tank, ваша команда монтирования будет:

mount -t nfs -o vers=4 server:/nfs /mnt

Для NFSv3 это будет:

mount -t nfs -o vers=3 server:/tank/nfs /mnt

решение4

Рассмотрите возможность использования ZFS нативно на Solaris или SolE 11 или OpenIndiana. По моему мнению, ZFS на Linux еще не готов к производству. ZFS с NFS имеют нативную интеграцию в ОС на базе Solaris, но не на Linux.

Связанный контент