Назад | Перейти на главную страницу

Монтирование NFS (размещенного в Ubuntu на Hyper-V) в контейнеры Docker

У нас есть два компьютера, один под управлением Windows Server 2016 и Windows 10 Enterprise. На сервере размещен общий ресурс NFS (для файловой системы NTFS), который был создан после этого. руководство.

На сервере также есть виртуальная машина Hyper-V (Ubuntu 16.04), на которой размещен сервер NFS в файловой системе ext4.

Для удобства назовем их следующим образом:

Экспорт nfs из HA выглядит так:

/nfsshare *(rw,sync,no_subtree_check) 

Пользователь и группа /nfsshare никому не изменен, nogroup.

Клиентский компьютер, WB, может монтировать общие ресурсы NFS как из WA, так и из HA.

На клиентском компьютере мы запускаем контейнеры Linux с помощью Docker для Windows. Контейнеры работают с дополнительными возможностями для SYS_ADMIN и в привилегированном статусе. Мы можем пинговать IP-адреса как WA, так и HA из контейнеров.

Когда мы пытаемся смонтировать общие ресурсы NFS, он успешно монтирует общий ресурс NFS WA, но, к нашему удивлению, он выдает следующую ошибку при монтировании общего ресурса NFS в HA.

mount.nfs: timeout set for Wed Nov  7 10:50:49 2018
mount.nfs: trying text-based options 'nolock,hard,sec=sys,vers=4.1,addr=10.0.0.142,clientaddr=172.17.0.4'
mount.nfs: mount(2): Operation not permitted
mount.nfs: Operation not permitted

Мы не можем понять, в чем именно заключается проблема.

Для всех операций монтирования мы использовали следующую команду

mount -v -t nfs -o nolock,hard,sec=sys,vers=4.1 IP:/nfshare /mnt/data

ПРИМЕЧАНИЕ: WA и WB находятся в доменной сети Windows.

На всякий случай, если объяснение было запутанным:

РЕДАКТИРОВАТЬ 1: Теперь мы создали экземпляр Linux в виртуальной машине Hyper-V и на клиенте (назовем его HB). HB может монтировать общие ресурсы NFS как из WA, так и из HA. Первый выпуск до сих пор остается загадкой.