暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

linux&windows通过nfs挂载HDFS

hadoop江湖 2015-09-18
1218

hdfs是分布式系统,要想访问hdfs上的文件,可以用java api 或者hadoop shell等工具,如果想操作hdfs文件系统就像操作本地文件系统一样的便捷,可以将hdfs文件系统挂载到本地的一个目录上,那么挂载的方式有两种:

1、fuse 挂载:需要另外安装fuse工具,详细请参考:
http://duguyiren3476.iteye.com/blog/2054506

2、nfs挂载:apache hadoop2.x以后的版本中自带了一个nfs3的插件服务。

近期部门hou同学进行了验证,下面将详细讲解nfs挂载的方式。

一、测试环境

  • Hadoop2.6.0

  • Centos7

二、配置文件

1、core-site.xml

<property>

<name>hadoop.proxyuser.root.groups</name>

<value>*</value>

</property>

<property>

<name>hadoop.proxyuser.root.hosts</name>

<value>*</value>

</property>

2、hdfs-site.xml

<property>

<name>nfs.superuser</name>

<value>hadoop</value>

</property>

<property>

<name>dfs.namenode.accesstime.precision</name>

<value>3600000</value>

</property>

<property>

<name>nfs.dump.dir</name>

<value>/tmp/.hdfs-nfs</value>

</property>

<property>

<name>nfs.exports.allowed.hosts</name>

<value>10.19.155.* rw</value>

</property>

注:10.19.155 为我的局域网网段

三、重启集群(伪分布式)

[hadoop@localhost223 sbin]$ start-dfs.sh

[hadoop@localhost223 sbin]$ start-yarn.sh

[hadoop@localhost223 sbin]$ jps

17872 SecondaryNameNode

18670 Jps

18146 ResourceManager

17350 NameNode

18440 NodeManager

17594 DataNode

四、关闭本机NFS服务

[hadoop@localhost223 sbin]$ sudo service nfs stop

[hadoop@localhost223 sbin]$ sudo service rpcbind stop

五、启动hadoop nfs

[hadoop@localhost223 hadoop-2.6.0]$ sudo sbin/hadoop-daemon.sh --script bin/hdfs start portmap


[hadoop@localhost223 hadoop-2.6.0]$ sudo sbin/hadoop-daemon.sh --script bin/hdfs start nfs3

六、查看本机挂载情况

[hadoop@localhost223 sbin]$ showmount –e localhost


七、linux挂载到本地目录


[hadoop@localhost223 hadoop-2.6.0]$ sudo mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync 10.19.155.223:/ /mnt/hdfs/

注:10.19.155.223问hadoop ip ;/mnt/hdfs/ 为本地文件夹

八、windows挂载到本地目录

C:\Windows\system32>net use M: \\10.19.155.41\!

命令成功完成。


C:\Windows\system32>M:


M:\>ls

testMount testMount1 testMount2


M:\>cd testMount


M:\testMount>ls

capacity-scheduler.xml hdfs-site.xml kms-site.xml

core-site.xml httpfs-site.xml mapred-site.xml

hadoop-policy.xml kms-acls.xml yarn-site.xml

九、遗留问题

1、不能挂载hdfs上的文件夹,只能挂载根目录

2、Linux挂载可进行文件的修改,在hdfs产生备份

3、Windows挂载可进行文件的拷贝、粘贴、读操作,但不支持对hdfs上的文件进行修改

十、总结

Hdfs配置nfs相对简单,但对文件的控制性有限,hdfs的安全也是需要考虑的问题,特别是windows挂载,可用性不高。


相关资源可访问我的网盘:

http://yunpan.cn/cdhBZTTNkDnU2 访问密码 a312



文章转载自hadoop江湖,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论