YARN Application Master无法连接到资源管理器 [英] YARN Application Master unable to connect to Resource Manager
问题描述
我有一个4节点的集群(1 Namenode /资源管理器3 datanodes /节点管理器)
我试图运行一个简单的tez示例orderedWordCount
hadoop jar C:\HDP\tez-0.4.0.2.1.1.0-1621\tez-mapreduce-examples-0.4。 0.2.1.1.0-1621.jar orderedwordcount sample / test.txt / sample / out
获得接受,应用程序主控和容器得到设置,但在nodemanager上,我看到了这些日志
2014-09-10 17:53:31,982 INFO
[ServiceThread:org.apache.tez.dag.app.rm.TaskSchedulerEventHandler]
org.apache.hadoop.yarn.client.RMProxy:连接到ResourceManager
,位于/0.0.0.0 :8030
2014-09-10 17:53:34,060 INFO
[ServiceThread:org.apache.tez.dag.app.rm.TaskSchedulerEventHandler]
org.apache.hadoop.ipc.Client:重试连接到服务器:
0.0.0.0/0.0.0.0:8030。已经尝试0次(s);重试策略为RetryUpToMaximumCountWithFixedSleep(maxRetries = 10,sleepTime = 1000
MILLISECONDS)
在配置超时后,作业失败
我搜索了这个问题,它总是指向yarn.resourcemanager.scheduler.address配置。在我所有的资源管理器节点和节点管理器中,我都正确地定义了这个配置,但由于某种原因,它没有被拾取。
<性>
< name> yarn.resourcemanager.hostname< / name>
<值> 10.234.225.69< /值>
< / property>
<属性>
< name> yarn.resourcemanager.address< / name>
< value> $ {yarn.resourcemanager.hostname}:8032< /值>
< / property>
<属性>
< name> yarn.resourcemanager.webapp.address< / name>
< value> $ {yarn.resourcemanager.hostname}:8088< /值>
< / property>
<属性>
< name> yarn.resourcemanager.scheduler.address< / name>
< value> $ {yarn.resourcemanager.hostname}:8030< /值>
< / property>
<属性>
< name> yarn.resourcemanager.resource-tracker.address< / name>
< value> $ {yarn.resourcemanager.hostname}:8031< /值>
< / property>
<属性>
< name> yarn.resourcemanager.admin.address< / name>
< value> $ {yarn.resourcemanager.hostname}:8033< /值>
< / property>
您的ResourceManager可能正在侦听IPv6端口,而您的工作节点(即NodeManagers)可能使用IPv4连接到ResourceManager
要快速检查是否属于这种情况,请执行
netstat -aln | grep 8030
如果您得到类似于 ::: 8030
,那么你的ResourceManager确实正在监听一个IPv6端口。如果它是一个IPv4端口,你应该看到类似于 0.0.0.0:8030
的东西要解决这个问题,你可能会考虑在所有机器上禁用IPv6并再次尝试。
I have a 4 node cluster (1 Namenode/Resource Manager 3 datanodes/node managers)
I am trying to run a simple tez example orderedWordCount
hadoop jar C:\HDP\tez-0.4.0.2.1.1.0-1621\tez-mapreduce-examples-0.4.0.2.1.1.0-1621.jar orderedwordcount sample/test.txt /sample/out
The job gets accepted ,the Application master and container gets setup but on the nodemanager I see these logs
2014-09-10 17:53:31,982 INFO [ServiceThread:org.apache.tez.dag.app.rm.TaskSchedulerEventHandler] org.apache.hadoop.yarn.client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8030
2014-09-10 17:53:34,060 INFO [ServiceThread:org.apache.tez.dag.app.rm.TaskSchedulerEventHandler] org.apache.hadoop.ipc.Client: Retrying connect to server: 0.0.0.0/0.0.0.0:8030. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
After configurable timeout the job fails
I searched for this problem and it always pointed to yarn.resourcemanager.scheduler.address configuration. In all my resource manager node and node managers I have this configuration defined correctly but for some reason its not getting picked up
<property>
<name>yarn.resourcemanager.hostname</name>
<value>10.234.225.69</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property>
It might be possible that your ResourceManager is listening on an IPv6 Port while your worker nodes (i.e NodeManagers) might be using IPv4 to connect to the ResourceManager
To quickly check if this is the case, do a
netstat -aln | grep 8030
If you get something similar to :::8030
, then your ResourceManager is indeed listening on an IPv6 Port. If its a IPv4 port, you should see something similar to 0.0.0.0:8030
To fix this, you might want to consider disabling IPv6 on all your machines and try once again.
这篇关于YARN Application Master无法连接到资源管理器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!