Господа, Я выполнил инструкции из этого отличного поста, но не смог подключиться. Эластичная файловая система (EFS) монтируется вне AWS
Я использую CoreOS в кластере Mesos. У нас есть EFS, подключенная ко всем узлам в кластере, чтобы они могли обмениваться данными, сценариями и т. Д. У нас есть VPN-туннель к AWS VPC, чтобы мы могли подключаться из офиса.
Мои пользователи хотели бы загрузить некоторые сценарии в EFS и получить результаты вычислений, чтобы они хотели смонтировать NFS локально. Итак, я запускаю haproxy, как рекомендовано в статье выше.
sudo docker run -d --net=host haproxy /bin/bash -c "echo -e 'listen fs-1e7bb658-us-east-1\n bind :2049\n mode tcp\n option tcplog\n timeout tunnel 300000\n server fs-1e7bb658-us-east-1a us-east-1a.fs-1e7bb658.efs.us-east-1.amazonaws.com:2049 check inter 60000 fastinter 15000 downinter 5000' > /haproxy.cfg && haproxy -f /haproxy.cfg"
Конфигурация на случай непонятности:
listen fs-1e7bb658-us-east-1
bind :2049
mode tcp
option tcplog
timeout tunnel 300000
server fs-1e7bb658-us-east-1a us-east-1a.fs-1e7bb658.efs.us-east-1.amazonaws.com:2049 check inter 60000 fastinter 15000 downinter 5000
Которая запускает haproxy с туннелем к EFS, как предложено в вышеупомянутой теме. Я знаю, что он работает, потому что я могу смонтировать EFS, используя IP-адрес Haproxy, во вторую папку на узле кластера (т.е. / testing), и когда я пишу файл в / testing, я вижу его во всех узлах в / shared папке . Например:
sudo mount 100.100.100.68:/ /testing # Mount using haproxy
echo "testing123!" > /testing/testing.txt # write to a file
cat /shared/testing.txt # get from any node in the cluster
>>> testing123!
Итак, проблема в том, что когда я хочу смонтировать из OSX, я получаю:
grodriguez:/ Guimo$ sudo mount 100.100.100.68:/ /sharedfiles
mount_nfs: can't mount / from 100.100.100.68 onto /sharedfiles: RPC prog. not avail
Я знаю, что HaProxy слушает, потому что могу делать из OSX:
grodriguez:/ Guimo$ telnet 100.100.100.68 2049
Trying 100.100.100.68...
Connected to 100.100.100.68.
Escape character is '^]'.
Таким образом, он подключается к службе с помощью telnet, но не подключается используя nfs.
Группа безопасности довольно либеральна, и, кроме того, я бы не подключился с помощью telnet, если бы он не работал. Таким образом, служба работает на этом порту.
Я читал, что могу попытаться найти службы mountd и nfs, но ничего. Может быть, EFS их скрывает. Может быть, поэтому OSX жалуется на отсутствие службы.
grodriguez:/ Guimo$ rpcinfo -p 100.100.100.68
program vers proto port
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45358 status
100024 1 tcp 60755 status
100021 1 udp 43439 nlockmgr
100021 3 udp 43439 nlockmgr
100021 4 udp 43439 nlockmgr
100021 1 tcp 34893 nlockmgr
100021 3 tcp 34893 nlockmgr
100021 4 tcp 34893 nlockmgr
Но все же, если туннель не работает, почему агенты должны успешно подключаться?
Кстати. Я также пробовал подключиться с помощью AWS, но у OSX тоже есть проблемы.
grodriguez:/ Guimo$ mount -t nfs4 -o nfsvers=4.1 100.100.100.68:/ /sharedfiles
mount: exec /System/Library/Filesystems/nfs4.fs/Contents/Resources/mount_nfs4 for /sharedfiles: No such file or directory
Любая помощь приветствуется.
С уважением,
grodriguez:/ Guimo$ telnet 100.100.100.68 2049
Trying 100.100.100.68...
Connected to 100.100.100.68.
Escape character is '^]'.
Таким образом, он подключается к службе с помощью telnet, но не подключается с помощью nfs.
Группа безопасности довольно либеральна, и, кроме того, я бы не подключился с помощью telnet, если бы он не работал. Таким образом, служба работает на этом порту.
Я читал, что могу попытаться найти службы mountd и nfs, но ничего. Может быть, EFS их скрывает. Может быть, поэтому OSX жалуется на отсутствие службы.
grodriguez:/ Guimo$ rpcinfo -p 100.100.100.68
program vers proto port
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45358 status
100024 1 tcp 60755 status
100021 1 udp 43439 nlockmgr
100021 3 udp 43439 nlockmgr
100021 4 udp 43439 nlockmgr
100021 1 tcp 34893 nlockmgr
100021 3 tcp 34893 nlockmgr
100021 4 tcp 34893 nlockmgr
Но все же, если туннель не работает, почему агенты должны успешно подключаться?
Кстати. Я также пробовал подключиться с помощью AWS, но у OSX тоже есть проблемы.
grodriguez:/ Guimo$ mount -t nfs4 -o nfsvers=4.1 100.100.100.68:/ /sharedfiles
mount: exec /System/Library/Filesystems/nfs4.fs/Contents/Resources/mount_nfs4 for /sharedfiles: No such file or directory
Любая помощь приветствуется.
С уважением,
grodriguez:/ Guimo$ telnet 100.100.100.68 2049
Trying 100.100.100.68...
Connected to 100.100.100.68.
Escape character is '^]'.
Таким образом, он подключается к службе с помощью telnet, но не подключается с помощью nfs.
Группа безопасности довольно либеральна, и, кроме того, я бы не подключился с помощью telnet, если бы он не работал. Таким образом, служба работает на этом порту.
Я читал, что могу попытаться найти службы mountd и nfs, но ничего. Может быть, EFS их скрывает. Может быть, поэтому OSX жалуется на отсутствие службы.
grodriguez:/ Guimo$ rpcinfo -p 100.100.100.68
program vers proto port
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45358 status
100024 1 tcp 60755 status
100021 1 udp 43439 nlockmgr
100021 3 udp 43439 nlockmgr
100021 4 udp 43439 nlockmgr
100021 1 tcp 34893 nlockmgr
100021 3 tcp 34893 nlockmgr
100021 4 tcp 34893 nlockmgr
Но все же, если туннель не работает, почему агенты должны успешно подключаться?
Кстати. Я также пробовал подключиться с помощью AWS, но у OSX тоже есть проблемы.
grodriguez:/ Guimo$ mount -t nfs4 -o nfsvers=4.1 100.100.100.68:/ /sharedfiles
mount: exec /System/Library/Filesystems/nfs4.fs/Contents/Resources/mount_nfs4 for /sharedfiles: No such file or directory
Любая помощь приветствуется.
С уважением,
Я читал, что могу попытаться найти службы mountd и nfs, но ничего. Может быть, EFS их скрывает. Может быть, поэтому OSX жалуется на отсутствие службы.
grodriguez:/ Guimo$ rpcinfo -p 100.100.100.68
program vers proto port
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45358 status
100024 1 tcp 60755 status
100021 1 udp 43439 nlockmgr
100021 3 udp 43439 nlockmgr
100021 4 udp 43439 nlockmgr
100021 1 tcp 34893 nlockmgr
100021 3 tcp 34893 nlockmgr
100021 4 tcp 34893 nlockmgr
Но все же, если туннель не работает, почему агенты должны успешно подключаться?
Кстати. Я также пробовал подключиться с помощью AWS, но у OSX тоже есть проблемы.
grodriguez:/ Guimo$ mount -t nfs4 -o nfsvers=4.1 100.100.100.68:/ /sharedfiles
mount: exec /System/Library/Filesystems/nfs4.fs/Contents/Resources/mount_nfs4 for /sharedfiles: No such file or directory
Любая помощь приветствуется.
С уважением,
Я читал, что могу попытаться найти службы mountd и nfs, но ничего. Может быть, EFS их скрывает. Может быть, поэтому OSX жалуется на отсутствие службы.
grodriguez:/ Guimo$ rpcinfo -p 100.100.100.68
program vers proto port
100000 4 tcp 111 portmapper
100000 3 tcp 111 portmapper
100000 2 tcp 111 portmapper
100000 4 udp 111 portmapper
100000 3 udp 111 portmapper
100000 2 udp 111 portmapper
100024 1 udp 45358 status
100024 1 tcp 60755 status
100021 1 udp 43439 nlockmgr
100021 3 udp 43439 nlockmgr
100021 4 udp 43439 nlockmgr
100021 1 tcp 34893 nlockmgr
100021 3 tcp 34893 nlockmgr
100021 4 tcp 34893 nlockmgr
Но все же, если туннель не работает, почему агенты должны успешно подключаться?
Кстати. Я также пробовал подключиться с помощью AWS, но у OSX тоже есть проблемы.
grodriguez:/ Guimo$ mount -t nfs4 -o nfsvers=4.1 100.100.100.68:/ /sharedfiles
mount: exec /System/Library/Filesystems/nfs4.fs/Contents/Resources/mount_nfs4 for /sharedfiles: No such file or directory
Любая помощь приветствуется.
С уважением, Guimo
Edit: В случае, если это не ясно из моего примечания ниже. Я запустил debian с помощью docker для Mac, затем установил поддержку nfs4 в контейнер, затем подключился к туннелю HaProxy. Все прошло нормально, и я вижу свой файл testing.txt.
Так что я предполагаю, что это проблема OSX и не имеет ничего общего с вышеприведенным решением, которое просто великолепно.
Для всех, кто ищет ответы на подобные вопросы, комментарий Майкла решил мою проблему.
У нас есть прямое подключение к AWS и после добавления правильного входящего (офисная подсеть TCP 2049) в группу безопасности, я могу смонтировать EFS на моем локальном MacBook.
sudo mount -t nfs -o vers=4 -o tcp -w x.x.x.x:/ efs