`
dmcp
  • 浏览: 24391 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

通过NFSv3挂载HDFS到本地目录

 
阅读更多

1.1 配置

编辑$HADOOP_HOME/etc/hadoop/hdsf-site.xml文件,增加如下配置:

<property>

<name>dfs.access.time.precision</name>

<value>3600000</value>

<description>The access time for HDFS file is precise upto thisvalue.

The default value is 1 hour. Setting a value of 0 disables

access times for HDFS.

</description>

</property>

<property>

<name>dfs.datanode.max.xcievers</name>

<value>1024</value>

</property>

<property>

<name>dfs.nfs3.dump.dir</name>

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

</property>

ü 上述的属性名称dfs.access.time.precision已经被dfs.namenode.accesstime.precision替换,建议使用这个名称;

ü 上述的属性名称dfs.datanode.max.xcievers已经被dfs.datanode.max.transfer.threads替换,建议使用这个名称;

编辑log4j.property文件,增加如下配置:

log4j.logger.org.apache.hadoop.hdfs.nfs=DEBUG

log4j.logger.org.apache.hadoop.oncrpc=DEBUG

1.2 启动

然后可以启动portmap了,注意这里需要root权限才能启动:

sudo ./bin/hdfs portmap -start

若提示端口已经被占用,则说明系统已经启动了,需要先停止:

service portmap stop

然后再启动。

再启动nfs,一定要先启动portmap才能启动nfs:

./bin/hdfs nfs3 start

可以通过以下两个命令来观察是否启动OK:

rpcinfo -p 192.168.111.130 #后面的ip地址是namenode的启动服务器地址

showmount -e 192.168.111.130

在/mnt目录下建立挂载目录hdfs

mkdir –p /mnt/hdfs

挂载到目标目录,注意这里使用的是mount.nfs,若没有则需要手工先安装,以下命令是在ubuntu12.04server版本是进行的:

sudo mount.nfs -o nolock 192.168.111.130://mnt/hdfs

若上述命令提示mount.nfs不存在,则需要提前先安装好:

sudo apt-get install nfs-common

或者

sudo mount -o nolock 10.3.3.141:/ /mnt/hdfs #这是在suse机器上的命令

或者

sudo mount -t nfs -o vers=3,proto=tcp,nolock10.3.3.141:/ /mnt/hdfs #这是在suse机器上的命令

1.3 测试

实测如下:

一台namenode(10.3.3.141),两台datanode(10.3.3.142,10.3.3.143):

1、往hdfs上复制文件:

[aihadoop@suse-141 ~] $ time cp jdk.tar.gz/mnt/hdfs/

real0m6.733s

user0m0.000s

sys0m0.264s

[aihadoop@suse-141 ~] $ ll jdk.tar.gz

-rw-r--r-- 1 aihadoop aihadoop 156209379 2013-12-2015:57 jdk.tar.gz

[aihadoop@suse-141 soft_bak] $ llspark-0.8.1-incubating-bin-hadoop2.tgz

-rw------- 1 aihadoop aihadoop 225613885 2013-12-2314:49 spark-0.8.1-incubating-bin-hadoop2.tgz

[aihadoop@suse-141 soft_bak] $ time cp spark-0.8.1-incubating-bin-hadoop2.tgz/mnt/hdfs/

real0m7.671s

user0m0.000s

sys0m0.376s

从上面的测试来看,在目前这个环境中:上传速度约为:26m/s

2、从hdfs上复制文件到本地目录:

[aihadoop@suse-141 workdir] $ time cp/mnt/hdfs/test_put_250_06_20130604148159 .

real0m3.243s

user 0m0.000s

sys0m0.508s

[aihadoop@suse-141 soft_bak] $ lltest_put_250_06_20130604148159

-rw-r--r-- 1 aihadoop aihadoop 102324750 2014-01-0317:25 test_put_250_06_20130604148159

[aihadoop@suse-141 workdir] $ time cp/mnt/hdfs/jdk.tar.gz .

real0m4.750s

user0m0.004s

sys0m0.420s

[aihadoop@suse-141 workdir] $ ll jdk.tar.gz

-rw-r--r-- 1 aihadoop aihadoop 156209379 2014-01-0317:44 jdk.tar.gz

[aihadoop@suse-141 soft_bak] $ time cp/mnt/hdfs/input/100_01_20130726021112 .

cp: writing `./100_01_20130726021112': No spaceleft on device #这里空间不够,写部分成功了。

real3m35.862s

user0m0.164s

sys0m17.613s

[aihadoop@suse-141 soft_bak] $ ll 100_01_20130726021112

-rw-r--r-- 1 aihadoop aihadoop 40210227202014-01-03 17:31 100_01_20130726021112

从上面的测试来看,在目前这个环境中:下载速度约为:32m/s,当下载的文件在hdfs的缓存中时,下载速度非常快。

从客户端进行文件上传和下载的速度取决于HDFS部署的硬件环境和datanode的个数。

分享到:
评论

相关推荐

    Centos7安装配置NFS服务和挂载

    本文详细介绍了 Centos7 安装配置 NFS 服务和挂载的步骤,包括安装 nfs-utils 软件包,编辑 exports 文件,启动 nfs 服务,安装 NFS 客户端,挂载 NFS 服务器上的目录等内容。通过这些步骤,可以实现文件实时同步,...

    nfsv4.1.pdf

    2. **目录委派**:NFSv4.1提供了更高效的目录委派机制,允许客户端在本地缓存目录状态,从而减少了与服务器的通信次数。 3. **并行访问**:NFSv4.1通过引入pNFS支持并行访问,显著提升了大规模数据处理的效率。而在...

    NFSv3 1813翻译版

    MNT协议是挂载操作的协议,客户端使用MNT协议连接到NFS服务器,获取文件系统的挂载信息,然后将该文件系统挂载到本地的文件系统层次结构中。 6. **NFSv3程序处理过程**: NFSv3定义了一系列的RPC程序,每个程序...

    unfs3:UNFS3是NFSv3服务器规范的用户空间实现

    UNFS3,一个用户空间NFSv3服务器(C)2003-2009,帕斯卡·施密特(Pascal Schmidt) UNFS3是NFSv3服务器规范的用户空间实现。 UNFS3支持所有NFSv3过程,但READDIRPLUS过程除外。 它尝试在用户空间限制的范围内向NFS...

    sblim-cmpi-nfsv3-1.1.1-9.el7.i686.rpm

    官方离线安装包,亲测可用

    hadoop培训视频training stuff

    NFS(Network File System)允许用户像访问本地文件系统一样访问远程文件系统,通过NFSv3,Hadoop用户可以通过熟悉的文件操作方式访问HDFS上的数据。NFS的引入简化了HDFS的使用,实现了NFS协议到HDFS协议的转换,使...

    EMC VNX系列存储nfsv4配置指南.pdf

    文中提到了如何挂载文件系统以及如何将其转换为混合访问策略(MIXED access policy),这样可以使得文件系统同时支持NFSv3和NFSv4。 访问控制和权限管理是文件系统安全性的核心,因此文中详细介绍了如何通过NFSv4来...

    ntfs-mount.tar.gz

    例如,描述中提到的`mount -t nfs-3g 设备名 挂载目录`,这个命令是用来挂载NFSv3(NFS版本3)的服务器共享目录到本地的特定目录。 1. `-t nfs-3g`:这里的`-t`选项指定文件系统类型,`nfs-3g`表示NFS版本3,支持高...

    activemq master-slave搭建的NFSV4文档

    为了实现高可用性和容错性,ActiveMQ 支持主从(master-slave)架构,这种架构可以通过复制数据来确保即使主节点故障,服务也能无缝切换到备用节点。在 ActiveMQ 5.8 版本中,使用 NFSV4(Network File System ...

    NFSv4.1-rfc5661

    目录委托(Directory Delegations)是NFSv4.1的另一项核心特性,它允许服务器将目录的管理权限委派给客户端,使得客户端在特定条件下可以自主管理目录,而无需每次都与服务器通信确认。这种机制极大提高了文件系统...

    VMware:vSphere 6.5挂载NFS存储.docx

    通过上述步骤,我们不仅完成了NFS存储在vSphere 6.5集群中的挂载,还验证了其配置的有效性和稳定性。这对于构建高效、可靠的虚拟化环境至关重要。NFS存储因其灵活性和扩展性成为众多企业的首选方案之一,掌握其配置...

    NFS4的使用

    在NFSv2和NFSv3中,挂载点通常是在系统启动时通过fstab文件静态配置的,而在NFS4中,挂载操作可以在运行时动态执行,无需修改fstab。这为用户提供了更大的灵活性,可以根据需要即时挂载或卸载远程文件系统,而无需...

    rfc1813-中文版.pdf

    这使得已经使用NFSv2的系统可以平滑过渡到NFSv3。 5. **变化**:与NFSv2相比,NFSv3引入了若干改进,包括增强的文件锁机制、硬链接支持、文件所有权和权限的原子改变,以及更强大的错误处理能力。 在文档的后续...

    go-nfs:golang NFSv3服务器

    Golang网络文件服务器NFSv3协议在纯Golang中的实现。当前状态:最少测试挂载,只读和读写支持用法目前最有趣的演示在example/osview 。启动服务器, go run ./example/osview . 。的本地文件夹.将是坐骑中的初始视图...

    NFSv4delegation

    因此,委托机制在延迟较高的环境中能够提升NFSv4的性能,但其有效性也取决于本地和远程操作速度的比率。 在NFSv4中,存在两种类型的委托:写委托(Write Delegation)和读委托(Read Delegation)。写委托允许单个...

    NFS文档 NFS最全文档 NFS详解文档

    - **服务器挂载**:NFSv3 对服务器挂载机制进行了改进,支持更复杂的挂载操作。 - **I/O 写入合并**:NFSv3 支持将多个小的写操作合并成一次较大的写操作,减少了网络传输次数,提升了效率。 - **更强的锁机制**:...

    NFSv4.1文档,里面的并行网络文件系统很有用

    pNFS通过将数据直接从客户端传输到存储节点上,而不是通过一个中央服务器进行中转,从而显著提高了数据传输的速度和效率。 - **分布式数据布局**:pNFS支持将文件分割成多个块,并将这些块分布存储在不同的物理存储...

    NFS报文_抓包分析_ubuntu12.04

    首先,NFSV4报文是通过RPC(Remote Procedure Call)机制进行传输的,这意味着NFS操作被封装为RPC调用。这些调用包括但不限于打开、读取、写入、创建、删除文件等。NFSV4报文包含两个主要部分:请求和应答。请求报文...

    阿里云-文件存储-快速入门-D.docx

    NFSv4协议推荐的挂载命令是`sudo mount -t nfs4 挂载点域名或IP:/ 挂载目录`,而NFSv3协议的推荐挂载命令是`sudo mount -t nfs -o vers=3,nolock,proto=tcp 挂载点域名或IP:/ 挂载目录`。完成挂载后,可以使用`mount...

    NFSv4 ACL Editor-开源

    通过NFSv4 ACL Editor,用户可以在不完全支持NFSv4 ACL特性的客户端上查看和修改这些权限设置,从而确保数据安全性和访问控制的灵活性。 这款开源软件的意义在于,它降低了管理NFSv4 ACL的复杂性,使得系统管理员...

Global site tag (gtag.js) - Google Analytics