如何在本地(独立)模式下运行hadoop而不出现ConnectionRejected异常?

jm2pwxwz  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(293)

遵循“hadoop:设置单节点集群”教程(https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/singlecluster.html#yarn_on_single_node),我试图在本地(独立)模式下运行hadoop,但遇到connectiondensed异常。当我尝试运行此命令时:

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar grep input output 'dfs[a-z.]+'

我得到以下信息:

java.net.ConnectException: Call From 4295i/127.0.1.1 to localhost:9000 failed on connection exception: java.net.ConnectException: Connection refused;

一个很长的堆栈跟踪跟在后面,还有一个指向http://wiki.apache.org/hadoop/connectionrefused. 我应该如何避免这个例外?
或者,如何执行以下3个步骤(它们是上面链接中的指令选项)
检查客户端使用的主机名是否正确。
检查客户端试图与之通信的ip地址,以确定主机名是否正确。
请确保异常中的目标地址不是0.0.0.0—这意味着您实际上没有为此配置客户端的实际地址。
以下是我在core-site.xml中的配置:

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

以下是我在hdfs-site.xml中的配置:

<configuration>
  <property>
    <name>dfs.name.dir</name>    
    <value>/home/USERNAME/pseudo/dfs/name</value>    
  </property>    
  <property>    
    <name>dfs.data.dir</name>    
    <value>/home/USERNAME/pseudo/dfs/data</value>    
  </property>    
  <property>    
    <name>dfs.replication</name>    
    <value>1</value>    
  </property>    
</configuration>

mapred-site.xml.template和yarn-site.xml的配置为空。

wbrvyc0a

wbrvyc0a1#

我观察到一些配置问题。您提到的存储namenode和datanode数据的路径不是绝对路径。它应该以斜杠(/)开头。我所做的更改如下所示。另一个建议是最好将此目录保持在用户主目录之外。

<configuration>

<property>

<name>dfs.name.dir</name>

<value>/home/USERNAME/pseudo/dfs/name</value>

</property>

<property>

<name>dfs.data.dir</name>

<value>/home/USERNAME/pseudo/dfs/data</value>

</property>

相关问题