Hi everyone,
I'm trying to get ESXi 4 to use an NFS export as a datastore, but it continually fails to connect. The error shown on the vSphere Client is the well-known "NFS Error: Unable to Mount filesystem: The mount request was denied by the NFS server. Check that the export exists and that the client is permitted to mount it"
The NFS server is running OpenSolaris 2009.06. I am able to mount the NFS export from another OpenSolaris box successfully.
The solaris box (solar) is on 10.0.0.50
The ESXi server is on 10.0.0.52
The NFS export is /tank/nfs/vm1
The vm1 directory is globally readable and writable.
drwxrwxrwx 2 jamesb staff 2 2009-06-19 22:12 vm1
I set up the share using: zfs set sharenfs=rw=10.0.0.52,root=10.0.0.52 tank/nfs/vm1
I have also tried without the rw option, and without the root option, without any luck.
showmount -e
export list for solar:
/tank/nfs/vm1 10.0.0.52
(or, if I removed the rw and root options I get: /tank/nfs/vm1 (everyone))
sharemgr show -vp
default nfs=()
zfs
zfs/tank/nfs/vm1 nfs=() nfs:sys=(rw="10.0.0.52" root="10.0.0.52")
/tank/nfs/vm1
Snoop shows the following:
10.0.0.52 -> solar TCP D=111 S=755 Syn Seq=2233513954 Len=0 Win=65535 Options=
solar -> 10.0.0.52 TCP D=755 S=111 Syn Ack=2233513955 Seq=3630673266 Len=0 Win=49232 Options=
10.0.0.52 -> solar TCP D=111 S=755 Ack=3630673267 Seq=2233513955 Len=0 Win=33304 Options=
10.0.0.52 -> solar PORTMAP C GETPORT prog=100005 (MOUNT) vers=3 proto=TCP
solar -> 10.0.0.52 TCP D=755 S=111 Ack=2233514059 Seq=3630673267 Len=0 Win=49128 Options=
solar -> 10.0.0.52 PORTMAP R GETPORT port=34596
10.0.0.52 -> solar TCP D=111 S=755 Fin Ack=3630673299 Seq=2233514059 Len=0 Win=33304 Options=
10.0.0.52 -> solar TCP D=34596 S=756 Syn Seq=82774780 Len=0 Win=65535 Options=
solar -> 10.0.0.52 TCP D=755 S=111 Ack=2233514060 Seq=3630673299 Len=0 Win=49232 Options=
solar -> 10.0.0.52 TCP D=756 S=34596 Syn Ack=82774781 Seq=3630723273 Len=0 Win=49232 Options=
solar -> 10.0.0.52 TCP D=755 S=111 Fin Ack=2233514060 Seq=3630673299 Len=0 Win=49232 Options=
10.0.0.52 -> solar TCP D=34596 S=756 Ack=3630723274 Seq=82774781 Len=0 Win=33304 Options=
10.0.0.52 -> solar TCP D=111 S=755 Ack=3630673300 Seq=2233514060 Len=0 Win=33303 Options=
10.0.0.52 -> solar MOUNT3 C Mount /tank/nfs/vm1
solar -> 10.0.0.52 TCP D=756 S=34596 Ack=82774889 Seq=3630723274 Len=0 Win=49124 Options=
solar -> 10.0.0.52 MOUNT3 R Mount Permission denied
10.0.0.52 -> solar TCP D=34596 S=756 Fin Ack=3630723306 Seq=82774889 Len=0 Win=33304 Options=
solar -> 10.0.0.52 TCP D=756 S=34596 Ack=82774890 Seq=3630723306 Len=0 Win=49232 Options=
solar -> 10.0.0.52 TCP D=756 S=34596 Fin Ack=82774890 Seq=3630723306 Len=0 Win=49232 Options=
10.0.0.52 -> solar TCP D=34596 S=756 Ack=3630723307 Seq=82774890 Len=0 Win=33303 Options=
Can anyone help or suggest where I might look next? I'm completely stumped.
Many thanks,
James.
zfs sharenfs=rw=@10.0.0.52,root=@10.0.0.52 tank/nfs/vm1
You also need to make sure your ESXi kernel IP has a DNS entry that Opensolaris can resolve. You may also need to modify /etc/default/nfs to set NFS_SERVER_VERSMAX=3
Hi dilidolo,
Thanks for the suggestions. The servers are offline over the weekend. I will try your ideas on Monday and let you know how it goes.
James.
Thanks dilidolo - that's got it working now!
I added a reverse DNS entry for my ESXi host, and also added the '@' before the IP address in the nfs options as you suggested.
James.