温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。


Fayson的github:https://github.com/fayson/cdhproject


提示:代码块部分可以左右滑动查看噢


1.文档编写目的




Hadoop支持通过NFSv3挂载HDFS文件系统到本地目录,允许用户像访问本地文件系统一样访问HDFS,对于普通用户来说大大的简化了HDFS的使用。该功能通过引入NFS Gateway服务实现,将NFS协议转换为HDFS访问协议。本篇文章主要讲述如何将HDFS文件系统挂载到Linux本地。


  • 内容概述

1.安装NFS GateWay服务

2.安装NFS依赖包

3.挂载HDFS目录到本地目录及自动挂载

4.测试NFS挂载


  • 测试环境

1.CM和CDH版本为5.11.2


2.安装NFS GateWay服务




1.使用管理员账号登录Cloudera Manager,进入HDFS服务“实例”界面


如何将HDFS文件系统挂载到Linux本地文件系统_文件系统


2.点击“添加角色实例”


如何将HDFS文件系统挂载到Linux本地文件系统_文件系统_02


3.点击“继续”


如何将HDFS文件系统挂载到Linux本地文件系统_文件系统_03


4.选择新添加的NFS GateWay服务并启动


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_04


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_05


启动成功


如何将HDFS文件系统挂载到Linux本地文件系统_hive_06


至此完成HDFS的NFS GateWay服务安装。


3.在Linux下挂载NFS文件系统




由于机器有限,这里Fayson选择集群任意节点(ip-172-31-21-45.ap-southeast-1.compute.internal)进行NFS挂载。


1.登录172.31.21.45服务,安装NFS依赖包


[ec2-user@ip-172-31-21-45 ~]$ sudo yum -y install nfs-utils*


如何将HDFS文件系统挂载到Linux本地文件系统_hive_07


2.创建本地NFS挂载目录


[ec2-user@ip-172-31-21-45 ~]$ sudo mkdir /hdfs_nfs_mount


如何将HDFS文件系统挂载到Linux本地文件系统_文件系统_08


3.在命令行执行如下命令挂载NFS文件系统


[ec2-user@ip-172-31-21-45 ~]$ sudo mount -t nfs -o vers=3,proto=tcp,nolock ip-172-31-26-80.ap-southeast-1.compute.internal:/ /hdfs_nfs_mount


如何将HDFS文件系统挂载到Linux本地文件系统_文件系统_09


这里可以看到我们的NFS文件系统目录已挂载成功。


4.自动挂载NFS文件系统




1.编辑/etc/fstab文件,在文件最后行增加如下配置


[ec2-user@ip-172-31-21-45 ~]$ sudo vim /etc/fstab #
# /etc/fstab
# Created by anaconda on Tue Oct 25 15:56:15 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#UUID=d8048d39-5ce3-4cdf-9115-416a99b36906 / xfs defaults 0 0ip-172-31-26-80.ap-southeast-1.compute.internal:/ /hdfs_nfs_mount nfs defaults 0 0


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_10


2.重启OS后查看是否挂载成功


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_11


5.验证NFS挂载




1.进入/hdfs_nfs_mount目录,列出HDFS根目录下所有的文件


[ec2-user@ip-172-31-21-45 ~]$ cd /hdfs_nfs_mount/[ec2-user@ip-172-31-21-45 hdfs_nfs_mount]$ ll


如何将HDFS文件系统挂载到Linux本地文件系统_hive_12


HDFS根目录文件列表


如何将HDFS文件系统挂载到Linux本地文件系统_hive_13


通过本地文件系统浏览的目录与HDFS上面的文件系统一致。


2.使用ec2-user用户向本地文件系统/hdfs_nfs_mount/fayson目录拷贝文件


[ec2-user@ip-172-31-21-45 ~]$ cp fayson.keytab /hdfs_nfs_mount/fayson/[ec2-user@ip-172-31-21-45 ~]$ ll /hdfs_nfs_mount/fayson/total 28181-rw------- 1 ec2-user 2584148964      514 Dec 27 08:39 fayson.keytab-rw-r--r-- 1 ec2-user 2584148964 28855325 Oct  3 10:28 item.csv[ec2-user@ip-172-31-21-45 ~]$


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_14


3.查看HDFS文件系统的/fayson目录


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_15


如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_16


可以看到HDFS文件系统的/fayson目录下文件与本地文件系统/hdfs_nfs_mount/fayson目录文件内容一致。


为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。








推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

如何将HDFS文件系统挂载到Linux本地文件系统_hdfs_17

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操