mapreduce在访问主机上的datanode时返回错误

goqiplq2  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(395)

我用三台机器建立了一个hadoop2.4.0集群。一台主机部署了namenode、资源管理器、datanode和节点管理器。其他两台工作机使用datanode和node manager进行部署。当我运行配置单元查询时,工作失败,错误为
2014-06-11 13:40:13364 warn[main]org.apache.hadoop.mapred.yarnchild:异常运行child:java.net.connectexception:调用from master/127.0.0.1 tomaster:43607 failed 打开连接异常:java.net.connectexception:connection>rejected;有关详细信息,请参阅:http://wiki.apache.org/hadoop/connectionrefused 在sun.reflect.nativeconstructoraccessorimpl.newinstance0(本机方法)在sun.reflect.nativeconstructoraccessorimpl.newinstance(nativeconstructoraccessorimpl)。java:5>7) 在sun.reflect.delegatingconstructoraccessorimpl.newinstance(delegatingconstructoraccessorimp>l。java:45)在java.lang.reflect.constructor.newinstance(构造函数。java:526)在org.apache.hadoop.net.netutils.wrapwithmessage(netutils。java:783)在org.apache.hadoop.net.netutils.wrapexception(netutils。java:730)在org.apache.hadoop.ipc.client.call(client。java:1414)在org.apache.hadoop.ipc.client.call(client。java:1363)在org.apache.hadoop.ipc.writeablerpcengine$invoker.invoke(writeablerpcengine)。java:231)com.sun.proxy.$proxy9.gettask(未知源代码)org.apache.hadoop.mapred.yarnchild.main(yarnchild。java:136)原因:java.net.connectexception:连接在sun.nio.ch.socketchannelimpl.checkconnect(本机方法)处被拒绝sun.nio.ch.socketchannelimpl.finishconnect(socketchannelimpl。java:739)在org.apache.hadoop.net.socketiowithtimeout.connect(socketiowithtimeout)上。java:206)在org.apache.hadoop.net.netutils.connect(netutils。java:529)在org.apache.hadoop.net.netutils.connect(netutils。java:493)在org.apache.hadoop.ipc.client$connection.setupconnection(客户端。java:604)在org.apache.hadoop.ipc.client$connection.setupiostreams(client。java:699)在org.apache.hadoop.ipc.client$connection.access$2800(client。java:367)在org.apache.hadoop.ipc.client.getconnection(client。java:1462)在org.apache.hadoop.ipc.client.call(client。java:1381) ... 4个以上
如果我禁用了主机上的datanode,一切都正常。我想知道是否允许在主计算机上部署datanode。提前谢谢你的好心帮助。
顺便说一句,这三台机器上的my/etc/主机是相同的:
127.0.0.1本地主机
10.1.154.231母版
10.1.153.220从动件1
10.1.153.133从动件2

axr492tv

axr492tv1#

请在您的主机上设置无密码ssh。
你可以通过

cat ~/id_rsa.pub >> ~/.ssh/authorized_keys2

确保权限正确

chmod 0600 ~/.ssh/authorized_keys2
nzk0hqpo

nzk0hqpo2#

在这种情况下,您可以通过检查yourhadoopfolder/logs/hadoop-[hadoop user]-namenode-master.log中的日志来检查namenode是否在主机上正确启动
这通常是由于hdfs以前没有格式化造成的。运行

hadoop namenode -format

当然,您需要再次将数据放入集群。

相关问题