Configure settings for HDFS NFS gateway:
NFS gateway uses the same configurations as used by the NameNode and DataNode. Configure the following properties based on your application's requirements:
-
Edit the hdfs-default.xml file on your NFS gateway machine and modify the following property:
<property>
<name>dfs.namenode.accesstime.precision</name>
<value>3600000</value>
<description>The access time for HDFS file is precise up to this value.
The default value is 1 hour. Setting a value of 0 disables
access times for HDFS.
</description>
</property>
-
Add the following property to hdfs-site.xml:
<property>
<name>dfs.nfs3.dump.dir</name>
<value>/tmp/.hdfs-nfs</value>
</property>
-
Start the NFS gateway service.
Three daemons are required to provide NFS service: rpcbind (or portmap), mountd and nfsd.
The NFS gateway process has both nfsd and mountd. It shares the HDFS root "/" as the only export. We recommend using the portmap included in NFS gateway package as shown below:
Stop nfs/rpcbind/portmap services provided by the platform:
service nfs stop
service rpcbind stop
Start the included portmap package (needs root privileges):
hadoop portmap
OR
hadoop-daemon.sh start portmap
Start mountd and nfsd.
No root privileges are required for this command. However, verify that the user starting the Hadoop cluster and the user starting the NFS gateway are same.
hadoop nfs3
OR
hadoop-daemon.sh start nfs3
-
Verify that the HDFS namespace is exported and can be mounted.
showmount -e $nfs_server_ip
You should see output similar to the following:
Exports list on $nfs_server_ip :
/ *
-
Mount the export “/” on a windows client.
mount -o nolock $your_ip:/! W: