Discussion:
[Gluster-users] Cannot mount NFS
Horacio Sanson
15 years ago
Permalink
I have a two server replicated volume that I can mount without problems using
the native client but I cannot make this work via NFS no matter what.

I read the mailing list and the FAQ, applied all fixes but still no luck.


System:
Two Gluster nodes with vanilla Ubuntu 10.10 LTS 64bit.
One client with vanilla Ubuntu 10.10 Desktop 32bit
One client with vanilla Ubuntu 10.10 LTS 64bit

Gluster: Installed using glusterfs_3.1.0-1_amd64.deb

Command used to create volume:
sudo gluster volume create www replica 2 transport tcp \
192.168.4.90:/opt/www 192.168.4.91:/opt/www

Below I present all my attempts to get NFS mounted on the two clients I have
so everything below multiply by 2:

1. NFS Mount attempt 1: After creating the volume

$ sudo mount -v -t nfs 192.168.4.91:/www /mnt
mount.nfs: timeout set for Thu Nov 4 10:37:17 2010
mount.nfs: trying text-based options
'vers=4,addr=192.168.4.91,clientaddr=192.168.4.111'
mount.nfs: mount(2): Connection refused

2. NFS Mount attempt 2: Seems UDP is not supported so I added the tcp option:

$ sudo mount -v -o mountproto=tcp -t nfs 192.168.4.91:/www /mnt
mount.nfs: timeout set for Thu Nov 4 10:38:36 2010
mount.nfs: trying text-based options 'mountproto=tcp,addr=192.168.4.91'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: portmap query retrying: RPC: Unable to receive

mount.nfs: prog 100003, trying vers=3, prot=17
mount.nfs: portmap query failed: RPC: Unable to receive
- Connection refused
mount.nfs: trying text-based options 'mountproto=tcp,addr=192.168.4.91'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: portmap query retrying: RPC: Unable to receive

3. NFS Mount attempt 3: Google tells me I need to start portmap

- on both Gluster servers and the clients I installed portmap
$ sudo aptitude install portmap # This should be a dependency of Gluster deb
$ sudo service portmap start

- on the client:
$ sudo mount -v -o mountproto=tcp -t nfs 192.168.4.91:/www /mnt
mount.nfs: timeout set for Thu Nov 4 10:42:07 2010
mount.nfs: trying text-based options 'mountproto=tcp,addr=192.168.4.91'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: portmap query retrying: RPC: Program not registered

mount.nfs: prog 100003, trying vers=3, prot=17
mount.nfs: portmap query failed: RPC: Program not registered

mount.nfs: prog 100003, trying vers=2, prot=6
mount.nfs: portmap query retrying: RPC: Program not registered

mount.nfs: prog 100003, trying vers=2, prot=17
mount.nfs: portmap query failed: RPC: Program not registered

mount.nfs: prog 100003, trying vers=2, prot=6
mount.nfs: portmap query retrying: RPC: Program not registered

mount.nfs: prog 100003, trying vers=2, prot=17
mount.nfs: portmap query failed: RPC: Program not registered

mount.nfs: requested NFS version or transport protocol is not supported

4. Me throwing keyboard throught the fourth floor window.

5. NFS Mount attempt 4: Retry 3 but without tcp option, maybe it is not needed
with portmap started:

$ sudo mount -v -t nfs 192.168.4.91:/www /mnt
mount.nfs: timeout set for Thu Nov 4 10:45:37 2010
mount.nfs: trying text-based options
'vers=4,addr=192.168.4.91,clientaddr=192.168.4.111'
mount.nfs: mount(2): Connection refused
mount.nfs: trying text-based options
'vers=4,addr=192.168.4.91,clientaddr=192.168.4.111'
mount.nfs: mount(2): Connection refused
mount.nfs: trying text-based options
'vers=4,addr=192.168.4.91,clientaddr=192.168.4.111'
mount.nfs: mount(2): Connection refused

5. Re-read FAQ, there is something about DNS being use for authentication.
Sounds related to the Connection refused error I am getting:

***@store90:~$ sudo gluster set www rpc-auth.addr.namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www rpc-auth.addr.namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www rpc-auth.addr.namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www add.namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www rpc-auth.namelookup off
unrecognized word: set (position 0)
***@store90:~$ sudo gluster set www rpc-auth.addr.namelookup off
unrecognized word: set (position 0)

6. Set up hosts file so each Gluster node and client can resolve their
hostnames locally.

$ NFS Mount attempt 5,6,7,8: Try all mount options from 1-5 above, including
4 several times but with the hosts file correctly set up.

7. Bang head against wall.... get huge cup of coffee.

8. Re-read mailing list: It seems that gluster NFS may conflict with the kernel
NFS service:

$ sudo aptitude search nfs-kernel-server
p nfs-kernel-server

it is not installed so this could not be the problem.....

9: NFS Mount attempt 8,10,11,12: Last try

$ Try all mount options from 1-5 above, including 4 several times but using
the ip-address of the other gluster brick node..... still no joy.

10: Check iptables -L, hosts.deny and hosts.allow files. There are no
restrictions of any kind. All iptable chains are empty and with default ACCEPT
and hosts.deny and hosts.allow are empty.

9. Write this email to Gluster-users mailing list and go home.
--
regards,
Horacio Sanson
Bernard Li
15 years ago
Permalink
Hi Horacio:

The NFS native server only works with NFSv3, I saw that in some of
your attempts your client might have negotiated using v3, but haven't
seen you explicitly specifying that in the mount call, perhaps you can
try something like this:

# mount -o nfsvers=3 gluster-nfs:/export /share

For further details, please see this bug report:

http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1688

Cheers,

Bernard
...
Horacio Sanson
15 years ago
Permalink
Bernard,

Thanks for the prompt delay... unfortunately it doesn't work either:

$ sudo mount -v -o mountproto=tcp,nfsvers=3 -t nfs store90:/www /mnt
mount.nfs: timeout set for Thu Nov 4 11:51:31 2010
mount.nfs: trying text-based options
'mountproto=tcp,nfsvers=3,addr=192.168.4.90'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: portmap query retrying: RPC: Program not registered

mount.nfs: prog 100003, trying vers=3, prot=17
mount.nfs: portmap query failed: RPC: Program not registered

mount.nfs: requested NFS version or transport protocol is not supported

thanks,
...
--
regards,
Horacio Sanson
Bernard Li
15 years ago
Permalink
Post by Horacio Sanson
$ sudo mount -v -o mountproto=tcp,nfsvers=3 -t nfs store90:/www /mnt
Are you missing the mountpoint here?

BTW, what does `showmount -e` output when you run it on your gluster servers?

Cheers,

Bernard
Horacio Sanson
15 years ago
Permalink
Post by Bernard Li
Post by Horacio Sanson
$ sudo mount -v -o mountproto=tcp,nfsvers=3 -t nfs store90:/www /mnt
Are you missing the mountpoint here?
The mount point is /mnt
Post by Bernard Li
BTW, what does `showmount -e` output when you run it on your gluster servers?
This is showmount in the server side:

showmount -e
clnt_create: RPC: Program not registered
Post by Bernard Li
Cheers,
Bernard
--
regards,
Horacio Sanson
Shehjar Tikoo
14 years ago
Permalink
Please try some of the steps mentioned at:

http://www.gluster.org/faq/index.php?sid=679&lang=en&action=show&cat=5

Thanks
...
Horacio Sanson
14 years ago
Permalink
Thanks for all the help... I finally managed to get this working correctly.

All I needed to do was install the nfs-common package in both servers and
clients and restart the glusterd daemon on the servers:

$ sudo aptitude install nfs-common
$ sudo service glusterd restart

after this running "showmount -e" shows the correct result on all gluster
nodes:

$showmount -e <gluster-server-ipaddress>
Export list for <server-ipaddress>:
/datar2 *
/www *
/upload *

Hope this saves some headaches and spares some keyboards for someone with the
same problem.

Also the glusterFS deb file for Ubuntu should list nfs-common as a dependency
to avoid this problem in the first place.

thanks again.....
...
--
regards,
Horacio Sanson
Continue reading on narkive:
Loading...