我目前正在尝试将hdfs安装到ubuntu机器上的本地目录中。我正在使用hadoop-fuse-dfs软件包。
所以,我正在执行以下命令
ubuntu@dev:~$ hadoop-fuse-dfs dfs://localhost:8020 /mnt/hdfs
输出
INFO /var/lib/jenkins/workspace/generic-package-ubuntu64-12-04/CDH4.5.0-Packaging-Hadoop-2013-11-20_14-31-53/hadoop-2.0.0+1518-1.cdh4.5.0 .p0.24〜精确/ SRC / Hadoop的HDFS项目/ Hadoop的HDFS / SRC /主/天然的/熔断器的DFS / fuse_options.c:164 添加FUSE arg / mnt / hdfs
但是,当我尝试在本地访问挂载的hdfs时,我看到错误消息(请检查附加的快照)
ls: cannot access /mnt/hdfs: No such file or directory
total 4.0K
d????????? ? ? ? ? ? hdfs
PS:我已经执行了以下命令,但仍然得到相同的输出。
$ sudo adduser ubuntu fuse
$ sudo addgroup ubuntu fuse
我错过了什么吗?请提出一些解决方法。
答案 0 :(得分:0)
至少当hadoop-fuse-dfs无法连接到默认情况下在端口8020上运行的文件系统元数据操作时,会发生这种情况,例如由于网络配置问题。
您可以在运行hadoop-fuse-dfs之前从主机测试该连接是否正常工作,例如由
telnet your-name-node 8020
GET /
答案 1 :(得分:0)
您需要使用hostname而不是localhost。我遇到了同样的问题,在将localhost更改为也在hosts文件中定义的主机名后,它得到了修复。
hadoop-fuse-dfs dfs://{hostname}:8020 /mnt/hdfs
根据Cloudera
在HA部署中,使用HDFS名称服务而不是NameNode URI;也就是说,在hdfs-site.xml中使用dfs.nameservices的值。