hadoop2.2.0 nodemanager启动后失败分析!!!

在安装好hadoop2.2.0集群后,依次执行start-dfs.sh和start-yarn.sh脚本启动hadoop相关的服务。各个服务均能正常启动。可是过了一段时间后会发现nodemanager会自动失败退出。
java

检查日志信息发现一直报本机与一个0.0.0.0的链接失败,而后继续与进行通讯尝试一段时间后nodemanager失败。具体信息以下: node

org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.net.ConnectException: Call From node2/222.18.159.123 to 0.0.0.0:8031 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused apache

Caused by: java.net.ConnectException: Call From node2/222.18.159.123 to 0.0.0.0:8031 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused oop




经过检查配置文件知道8031端口出如今yarn-site.xml配置文件的yarn.resourcemanager.scheduler.address配置项中。yarn.resourcemanager.scheduler.address 是resourcemanager暴漏给nodemanager的地址和端口。nodermanager利用这个地址经过心跳机制与RM通讯。
正常状况下个人NM应该与RM通讯,可是NM却一直与0.0.0.0通讯.所以查阅官方默认的yarn-site.xml配置文件,发现其中yarn.resourcemanager.hostname的默认值被设置成:0.0.0.0了(怪不得一直与0.0.0.0通讯)。发现原来是我设置的主机ip在这里没有生效。
在yarn-site.xml中添加一项新的项,将yarn.resourcemanager.hostname的值修改成master机器的ip地址。


重启hadoop服务,一切正常!!!


注:nodemanager启动后要经过心跳机制按期与RM通讯,不然RM会认为NM死掉,会中止NM的服务。
同时经过此次失败提醒出现问题要多去尝试(我几乎把网上的方法试了个遍。。。。。。)多参考官方文档。 spa

相关文章
相关标签/搜索