Hodoop HDFS NFS GateWay 挂载到其他机器深入详解

简介: 教你如何实现Hodoop HDFS NFS GateWay 挂载到其他机器。

0、前提有三台机器:

10.0.1.31 为Hadoop NameNode节点机器。
10.1.1.36为Hadoop DataNode节点机器。
10.1.111.13为非Hadoop机器。

目前查到的资料里面显示HDFS NFS GateWay的挂载方式为:

参考:
https://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-hdfs/HdfsNfsGateway.html

[root]# mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync localhost:/ /hdfs_y 

1、本机挂载方式正常

参考:http://blog.csdn.net/laoyang360/article/details/50865025

以下完成了Hdfs路径挂载到本地。

[root@WEB-W031 hdfsnew]# mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync 10.0.1.31:/ /hdfs_2
[root@WEB-W031 hdfsnew]# 
[root@WEB-W031 hdfsnew]# 
[root@WEB-W031 hdfsnew]# 
[root@WEB-W031 hdfsnew]# cd /hdfs_2
[root@WEB-W031 hdfs_2]# ls -al
total 12
drwxr-xr-x 9 root 2584148964 288 Mar 16 16:30 .
drwxr-xr-x 34 root root 4096 Mar 17 10:02 ..
drwxr-xr-x 2 root 2584148964 64 Mar 16 15:01 dl
drwxr-xr-x 3 root 2584148964 96 Mar 16 16:23 input
drwxr-xr-x 2 root 2584148964 64 Mar 16 16:22 output
drwxr-xr-x 4 hadoop 2584148964 128 Mar 16 16:30 output2
drwxr-xr-x 4 root root 128 Mar 11 18:05 testing
drwxrwx--- 3 hadoop 2584148964 96 Mar 9 11:14 tmp
drwxr-xr-x 3 hadoop 2584148964 96 Mar 9 13:24 user
[root@WEB-W031 /]# mount
10.0.1.31:/ on /hdfsnew type nfs (rw,sync,nfsvers=3,proto=tcp,nolock,noacl,addr=10.0.1.31)
10.0.1.31:/ on /hdfs_2 type nfs (rw,sync,nfsvers=3,proto=tcp,nolock,noacl,addr=10.0.1.31)

采取直接挂载到其他机器目录的方式会报错:(不支持如下挂载,网上也没有类似的挂载方式)

[root@WEB-W031 hdfsnew]# mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync 10.0.1.31:/ 10.1.1.36:/hdfs_2
mount.nfs: Input/output error

2、【最终挂载方法】在Hadoop的DataNode节点挂载会ok(如下机器IP为10.1.1.36)

以下完成了NameNode10.0.1.31节点挂载到DataNode节点。
[root@Processor036 hdfs36]# mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync 10.0.1.31:/ /hdfs_2
[root@Processor036 hdfs36]# cd /hdfs_2
[root@Processor036 hdfs_2]# ls -al
total 12
drwxr-xr-x 9 root 2584148964 288 Mar 16 16:30 .
drwxr-xr-x 33 root root 4096 Mar 17 10:02 ..
drwxr-xr-x 2 root 2584148964 64 Mar 16 15:01 dl
drwxr-xr-x 3 root 258

4148964 96 Mar 16 16:23 input
drwxr-xr-x 2 root 2584148964 64 Mar 16 16:22 output
drwxr-xr-x 4 hadoop 2584148964 128 Mar 16 16:30 output2
drwxr-xr-x 4 root root 128 Mar 11 18:05 testing
drwxrwx--- 3 hadoop 2584148964 96 Mar 9 11:14 tmp
drwxr-xr-x 3 hadoop 2584148964 96 Mar 9 13:24 user

3、在非Hadoop机器的另外机器上挂载方法同2

以下完成了NameNode10.0.1.31节点挂载到非Hdaoop节点(10.1.111.13)。

[root@ 13]# mount -t nfs -o vers=3,proto=tcp,nolock,noacl,sync 10.0.1.31:/ /hdfs_13

4、如何在非Hadoop的机器上操作Hadoop账号建立的文件?

初始10.1.111.13上面并没有hadoop用户,
所以:新建的文件的uid 和 gid会显示666(原有10.0.1.31上的hadoop账号的uid和gid)。

修改方法:
即:在机器10.1.111.13新建hadoop账户,并修改其uid和gid为666

方法一:
groupmod -g 666 hadoop //修改hadoop用户的gid为666
usermod -g 666 hadoop //修改hadoop用户的uid为666
方法二:
直接修改/etc/passwd 找到hadoop账号修改。

修改后:

[hadoop@etl02 hdfs_13]$ ls -al 
drwxrwxr-x   3 hadoop hadoop       96 Mar 17 13:18 make_in_31

至此,三台机器都可以用hadoop账号读写文件。以下三行分别是在三台机器写入的。

[hadoop@WEB-W031 test22]$ cat test36 
363633636363  //36机器写入
1313131313131313 //13机器写入
inni31_31_31_31  //31机器写入

反思:

本机挂载之前就搞定了,但是挂载到其他机器反复尝试了很多方法, 后来回到原点,挂载本机的方法就可以挂载到其他机器。很有意思。


作者:铭毅天下
转载请标明出处,原文地址:http://blog.csdn.net/laoyang360/article/details/50917665

相关文章
|
6月前
|
Linux
Linux安装NFS挂载NFS卸载客户端服务端都有
Linux安装NFS挂载NFS卸载客户端服务端都有
156 0
|
6月前
|
Ubuntu 网络协议 Unix
【Linux】新唐NUC977挂载NFS实现网络文件传输
【Linux】新唐NUC977挂载NFS实现网络文件传输
|
6月前
|
Linux Shell Windows
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
通过Linux挂载Windows端NFS服务实现板端Linux传输文件到PC
426 0
|
6月前
|
弹性计算 Serverless 网络安全
于在阿里云函数计算中挂载NFS共享时出现了问题
于在阿里云函数计算中挂载NFS共享时出现了问题
100 1
|
6月前
|
Unix Linux 文件存储
文件传输、文件挂载MOUNT:NFS、CIFS、ADB、SAMBA
文件传输、文件挂载MOUNT:NFS、CIFS、ADB、SAMBA
249 0
|
8天前
|
缓存 网络协议 测试技术
NFS挂载信息如何调整?
NFS挂载信息如何调整?
38 3
|
7天前
|
Linux
如何查看当前的NFS挂载信息?
如何查看当前的NFS挂载信息?
65 2
|
1月前
|
Unix Linux 网络安全
NFS挂载服务
【10月更文挑战第14天】
42 2
|
1月前
|
Kubernetes 容器
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
基于Ubuntu-22.04安装K8s-v1.28.2实验(三)数据卷挂载NFS(网络文件系统)
136 0
|
3月前
|
Ubuntu Linux
内核实验(四):Qemu调试Linux内核,实现NFS挂载
本文介绍了在Qemu虚拟机中配置NFS挂载的过程,包括服务端的NFS服务器安装、配置和启动,客户端的DHCP脚本添加和开机脚本修改,以及在Qemu中挂载NFS、测试连通性和解决挂载失败的方法。
192 0
内核实验(四):Qemu调试Linux内核,实现NFS挂载
下一篇
无影云桌面