`

NFS挂载hdfs到本地

阅读更多

NFS挂载hdfs到本地

 

nfs hdfs nfs hdfs

 

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

  • fuse 挂载:需要另外安装fuse工具,详细请参考: 
    http://duguyiren3476.iteye.com/blog/2054506
  • nfs挂载:apache hadoop2.x以后的版本中自带了一个nfs3的插件服务,下面将详细讲解nfs挂载的方式。 

 

测试环境

  • apache hadoop 2.5.2
  • jdk 1.7
  • ubuntu 14.04

NFS挂载hdfs

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的HTML页面。 —— 维基百科

配置core-site.xml

<property>
    <name>hadoop.proxyuser.nfsserver.groups</name>
    <value>*</value>
    <description>允许所有用户组用户代理</description>
</property>
<property>
    <name>hadoop.proxyuser.nfsserver.hosts</name>
    <value>localhost</value>
    <description>允许挂载的主机域名</description>
</property>
</property>

修改hdfs-site.xml

<property>
    <name>nfs.dump.dir</name>
    <value>/tmp/.hdfs-nfs</value>
</property>
<property>
    <name>nfs.rtmax</name>
    <value>1048576</value>
    <description>This is the maximum size in bytes of a READ request supported by the NFS gateway. If you change this, make sure you also update the nfs mount's rsize(add rsize= # of bytes to the mount directive).</description>
</property>
<property>
    <name>nfs.wtmax</name>
    <value>65536</value>
    <description>This is the maximum size in bytes of a WRITE request supported by the NFS gateway. If you change this, make sure you also update the nfs mount's wsize(add wsize= # of bytes to the mount directive).</description>
</property>
<property>
    <name>nfs.exports.allowed.hosts</name>
    <value>* rw</value>
    <description>允许所有主机对文件有rw权限</description>
</property>

重启hadoop集群服务

root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/stop-all.sh

root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/stop-all.sh

以上启动,只需启动hdfs服务即可

关闭本机的nfs服务

centos关闭nfs服务

      service nfs stop
      service rpcbind stop

ubuntu关闭nfs服务

root@localhost:/opt/hdfsnfs# /etc/init.d/nfs-kernel-server stop
root@localhost:/opt/hdfsnfs# /etc/init.d/rpcbind stop

如果没有nfs服务则可略过

启动hadoop nfs

root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/hadoop-daemon.sh start portmap
root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/hadoop-daemon.sh start nfs3

停止服务

root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/hadoop-daemon.sh stop portmap
root@localhost:/opt/hdfsnfs# /opt/work/hadoop/sbin/hadoop-daemon.sh stop nfs3

查看本机挂载状况

root@localhost:/opt/hdfsnfs# showmount -e localhost
Export list for localhost:
/ *
root@localhost:/opt/hdfsnfs# 

上述的localhost是指第一步的core-site.xml中的hadoop.proxyuser.nfsserver.hosts的值 
如果出现上述的 / *说明服务启动成功

挂载到本地制定目录

root@localhost:~# mkdir -p /opt/hdfsnfs   #创建挂载的目标点
root@localhost:~# mount -t nfs -o vers=3,proto=tcp,nolock,noacl localhost:/  /opt/hdfsnfs/
root@localhost:~# ll /opt/hdfsnfs/
总用量 581
drwxr-xr-x 15 root      2584148964    480  57 17:49 ./
drwxr-xr-x 24 root      root         4096  57 17:44 ../
drwxr-xr-x  3 root      2584148964     96 1225 17:10 2014/
drwxr-xr-x  3 root      2584148964     96  29 16:55 2015/
drwxr-xr-x 10 root      2584148964    320  422 17:53 hbase/
drwxr-xr-x  3 root      2584148964     96  429 16:11 lib/
-rw-r--r--  1 root      2584148964 583045  57 18:00 lzo-2.06.tar.gz
drwxr-xr-x  4 root      2584148964    128  415 10:12 merge/
drwxr-xr-x  3 root      2584148964     96  415 10:26 opt/
drwxr-xr-x  4 root      2584148964    128  56 18:42 out/
drwxr-xr-x  3 root      2584148964     96  48 16:49 target/
drwxr-xr-x 27 root      2584148964    864  57 11:20 test/
drwx------ 18 root      2584148964    576  57 15:21 tmp/
drwxr-xr-x  3 root      2584148964     96  29 10:46 user/
drwxr-xr-x  3 146731693 2584148964     96  327 19:42 usr/
root@localhost:~# 

即可在本地查看hdfs上的所有文件

总结

fuse配置起来麻烦,hdfs的nfs配置方式相对简单,依赖的插件少,配置简单,当然里面的acl控制,hdfs的安全需要根据自己的业务进行配置

分享到:
评论
2 楼 zhangyou1010 2017-06-05  
zhangyou1010 写道
请教,我执行mount -t nfs -o vers=3,proto=tcp,nolock,noacl localhost:/  /opt/hdfsnfs/ 命令后,提示:mount.nfs: mount system call failed

不知道博主是否有遇到过类似问题?谢谢。



该问题,已经解决。谢谢。
1 楼 zhangyou1010 2017-06-05  
请教,我执行mount -t nfs -o vers=3,proto=tcp,nolock,noacl localhost:/  /opt/hdfsnfs/ 命令后,提示:mount.nfs: mount system call failed

不知道博主是否有遇到过类似问题?谢谢。

相关推荐

    hdfs-webdav.rar_hadoop_hadoop webdav_hadoop 系统_hadoop2.0 d_hdfs

    描述中提到“将Hadoop分布式文件系统以NFS形式进行挂载”,这指的是使用Network File System (NFS)协议将HDFS挂载到本地文件系统或远程服务器上。NFS是一种广泛使用的协议,它允许不同操作系统之间的文件共享。通过...

    nfs-utils-1.1.1.tar.gz_nfs utils_nfs-utils

    2. `nfsd`:这是NFS服务器的主要组件,处理来自客户端的文件系统请求,并将这些请求转发到本地文件系统。 3. `/etc/exports`:这是NFS服务器的配置文件,定义了哪些目录可以被共享,以及对这些目录的访问控制规则。...

    HDFS CSI插件加速大数据集群中的Kubernetes.pptx

    2. HDFS FUSE:通过FUSE(用户空间文件系统)在Kubernetes节点上挂载HDFS,但性能可能受限。 3. HDFS CSI基于NFS网关:利用NFS网关,通过CSI提供HDFS存储,增加了Kubernetes的兼容性。 4. Ozone CSI:Ozone是Hadoop...

    Ubuntu 14.04下NFS安装配置

    Ubuntu 14.04 下 NFS 安装配置 NFS(Network File System)是一种允许不同主机之间共享文件...NFS 是一种文件目录共享模式,以本地方式进行访问,而 HDFS 是一种分布式的文件系统,能够在服务器中进行数据的负载均衡。

    Hadoop2.7.1——NFS部署

    ### Hadoop 2.7.1 —— NFS 部署详解 ... 从 HDFS 复制文件到本地:** ```bash cp /mnt/hdfs/jdk.tar.gz . ``` 完成上述步骤后,即可实现Hadoop 2.7.1 的 NFS 部署,并能够进行数据的高效读写操作。

    高可用性的HDFS:Hadoop分布式文件系统深度实践

    6.2.10 挂载NFS 6.2.11 启动Ucarp 6.2.12 格式化 6.2.13 系统启动 6.2.14 检查 6.2.15 NameNode失效切换写文件实验 6.2.16 NameNode失效切换读文件实验 6.3 Avatar FaceBook版本的使用 6.3.1 Hadoop FaceBook版本...

    JuiceFS产品介绍和客户案例.pdf

    JuiceFS的主要特点包括支持POSIX、NFS和HDFS API,兼容Linux命令行工具链,提供无限容量和弹性扩展的存储能力,并且支持私有部署,同时作为全托管式服务,无需客户自行运维。 在技术架构方面,JuiceFS包含了元数据...

    【Alluxio分布式存储系统 v2.4.1】以前称为Tachyon+通过公共接口连接众多存储系统

    目前Alluxio支持Microsoft Azure Blob Store,Amazon S3,Google Cloud Storage,OpenStack Swift,GlusterFS, HDFS,MaprFS,Ceph,NFS,Alibaba OSS,Minio以及单节点本地文件系统,后续也会支持更多其他存储系统...

    【Alluxio分布式存储系统 v2.4.1】以前称为Tachyon+通过公共接口连接众多存储系统.zip

    目前Alluxio支持Microsoft Azure Blob Store,Amazon S3,Google Cloud Storage,OpenStack Swift,GlusterFS, HDFS,MaprFS,Ceph,NFS,Alibaba OSS,Minio以及单节点本地文件系统,后续也会支持更多其他存储系统...

    Hadoop2.0部署文档

    在NFS服务器(如10.65.172.30)上设置NFS服务,并在其他节点上挂载NFS目录。 5. **Zookeeper部署** Zookeeper是一个分布式协调服务,对于Hadoop HA至关重要。部署zookeeper-3.4.3-cdh4.1.2版本,每个节点都需要...

    CCTC 2016 百度王耀-百度的分布式文件系统之路

    - MFS:MFS是MooseFS的简称,它是一个将数据切片分散到多个存储设备上的分布式网络文件系统,能够实现数据容错,并支持本地文件系统的挂载方式。MFS支持类GFS的开源C实现,提供高易用性,支持POSIX标准。 - CCDB...

    chukwa安装配置[定义].pdf

    注意,`CHUKWA_PID_DIR`不应在不同Chukwa实例之间共享,而应是本地路径,而不是NFS挂载。例如,你可以创建`/tmp/chukwa/log`和`/tmp/chukwa/pidDir`目录并分别赋值给这两个变量。 - 如果需要,可以设置`CHUKWA_...

    云存储设计

    面对单机硬盘空间限制,云存储通过网络文件系统(NFS)等技术,将多台机器的文件系统挂载至本地,营造出统一的存储体验。然而,单机挂载过多远程文件系统会消耗大量本地资源,因此,完全分布式的文件系统成为了解决...

    腾讯云分布式对象存储架构设计与实践.pdf

    * ISCSI/FC大数据HDFS接口容器PV/PVC挂载CDC挂载协议接口多协议数据互通管控面 * 统一多地多中心容灾打通公有云支持自研服务器FPGA加速核心能力树状namespace * 存储核心——CHDFS私有存储核心——CSP平坦namespace...

    Alluxio分布式存储系统-其他

    目前Alluxio支持Microsoft Azure Blob Store,Amazon S3,Google Cloud Storage,OpenStack Swift,GlusterFS, HDFS,MaprFS,Ceph,NFS,Alibaba OSS,Minio以及单节点本地文件系统,后续也会支持更多其他存储系统...

    glusterfs3.7.9

    6. **跨域服务**:支持多种协议,如NFS、SMB、FTP、HDFS等,方便不同类型的客户端访问,实现了与多种应用的兼容。 7. **无中心元数据**:GlusterFS的元数据分布在各个节点上,避免了元数据服务器成为性能瓶颈的问题...

    腾讯云分布式对象存储架构设计与实践-SACC2021年中国系统架构师大会.pdf

    11. 数据管理与服务:腾讯云存储提供数据生命周期管理、数据管理生命周期、跨区域复制、数据清单、事件通知、版本管理等服务,以及大数据HDFS接口、容器PV/PVC挂载、CDC挂载等。 12. 性能与效率:腾讯云存储通过EC...

    大数据人工智能量化投资平台.pdf

    - 允许用户像使用本地文件一样访问远程文件。 - **Linux系统文件权限管理** - 文件权限决定了谁可以访问文件以及如何访问。 - 使用chmod命令设置权限。 - **Linux RPM包** - RPM是一种流行的Linux包管理系统。 ...

Global site tag (gtag.js) - Google Analytics