从 quickstart.cloudera/172.17.0.2 调用到 quickstart.cloudera:8020 连接异常失败:java.net.ConnectException: 连接被拒绝

Call From quickstart.cloudera/172.17.0.2 to quickstart.cloudera:8020 failed on connection exception: java.net.ConnectException: Connection refused

我对 Docker 和 Hadoop 系统还很陌生。我已经在 Ubuntu 16.04 中安装了 Docker 并在新的 Docker 容器中安装了 运行 来自 Cloudera 的 Hadoop 映像。但是当我尝试 运行 hdfs 中的任何命令时,错误消息显示为:

Call From quickstart.cloudera/172.17.0.2 to quickstart.cloudera:8020 failed on connection exception: java.net.ConnectException: Connection refused;

我不知道如何解决这个问题。我期待您的帮助。

端口 8020 用于 hdfs-namenode 服务,所以我猜测该服务未启动或失败。

你能试试重启一下吗?

command: sudo  service hadoop-hdfs-namenode restart

您还可以检查名称节点服务的状态。

Command: sudo  service hadoop-hdfs-namenode status

此外,检查 hadoop-hdfs-datanode 服务,因为它可能还需要重新启动。

command: sudo  service hadoop-hdfs-datanode restart

如果您仍然遇到错误,请检查 /var/log/hadoop-hdfs 中的 NameNode 日志并将其添加到您的问题中以供进一步分析。

在我的例子中,重启 namenode、datanode 和 yarn 资源管理器工作正常。

sudo service hadoop-yarn-resourcemanager restart
sudo  service hadoop-hdfs-namenode restart
sudo service hadoop-hdfs-datanode restart