首页 > 解决方案 > docker 中的伪分布式 hadoop dfs。从本地计算机连接到 dfs 时出现问题

问题描述

我已经设置了 docker 文件,它在运行时启动了一个伪分布式 dfs。我的目标是测试我的 spark 应用程序以查看它是否正确写入 dfs。但是对于初学者来说,我只是想从本地终端运行这个命令,以确保我可以从本地机器连接到 docker 容器中的 dfs:

hdfs dfs -ls hdfs://localhost:9000/

当我的 core-site.xml 看起来像这样时:

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
  </property>
</configuration>

当我尝试通过本地 hdfs-client 连接时,我会不断收到此错误: ls: End of File Exception between local host is: "MacBook-Pro.local/192.168.0.4"; destination host is: "localhost":9000; : java.io.EOFException; For more details see: http ://wiki.apache.org/hadoop/EOFException

当我将 core-site.xml 更改为如下所示时:

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://0.0.0.0:9000</value>
  </property>
</configuration>

它工作正常,我能够从本地机器连接到 dfs。

我只是想知道为什么。

标签: dockerhdfs

解决方案


推荐阅读