【问题标题】:hdfs dfs commands: failed on connection exception: java.net.ConnectException: Connection refusedhdfs dfs 命令:连接异常失败:java.net.ConnectException:连接被拒绝
【发布时间】:2020-11-19 14:16:24
【问题描述】:

每当我运行任何hdfs dfs 命令时,我都会收到Call From hostnamehere/10.138.238.104 to hostnamehere:9000 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

我在网上搜索了很多解决方案,但似乎每个人都提供了相同的几个解决方案,但没有一个对我有用。我尝试了以下方法:

stop-dfs.shstart-dfs.sh --- 这没有帮助

stop-dfs.shhadoop namenode -format 然后 start-dfs.sh --- 这会修复它大约 5 分钟(我可以运行 hdfs dfs 命令)然后它会回到 ConnectException 错误。

仔细检查我的core-site.xml 和其他 hadoop .xml 配置以确保它们正确(与另一个工作的 hdfs 集群完全相同的配置)

检查/etc/hosts 以确保主机和主机名正确。

systemctl stop/start hadoop --- 没有帮助

从我尝试过的所有事情中,唯一暂时有效的方法是做hadoop namenode -format,但它只修复了大约 5 分钟,然后又坏了。有人有其他建议吗?我很困惑,因为它怎么能工作几分钟然后不起作用?这一定意味着配置是正确的,否则它永远不会工作一次对吗?

【问题讨论】:

  • 好的,但是5分钟后,namenode守护进程还在吗?使用jps查找进程
  • 不,jps 没有这些进程,9000 端口也没有打开……不知怎的,它们只能使用几分钟,这是我认为的根本问题
  • 某些东西正在杀死这些进程,这就是你无法保持连接的原因
  • 这是在云端还是您正在运行一个承诺集群?
  • 在 DigitalOcean 上,如果有什么东西正在杀死我的进程,我该如何调试?

标签: java hadoop hdfs


【解决方案1】:

检查你的 /etc/hosts 检查你的core-site.xml,确保你的ip和你的hdfs一样://ip:8020 和 stop-dfs.sh start-dfs.sh 好的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-13
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 1970-01-01
    • 1970-01-01
    • 2017-08-10
    相关资源
    最近更新 更多