在master上启动后,NodeManager进程因绑定错误而失败

时间:2014-07-31 12:20:53

标签: hadoop

我正在尝试在多节点群集上运行wordcount作业。每次启动进程时,NodeManager都会成功启动,但之后就会消失。日志文件显示以下错误:

Caused by: java.net.BindException: Problem binding to [0.0.0.0:8040] java.net.BindException: Address already in use; For more details see:  http://wiki.apache.org/hadoop/BindException
    at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:719)
    at org.apache.hadoop.ipc.Server.bind(Server.java:422)
    at org.apache.hadoop.ipc.Server$Listener.<init>(Server.java:534)
    at org.apache.hadoop.ipc.Server.<init>(Server.java:2203)
    at org.apache.hadoop.ipc.RPC$Server.<init>(RPC.java:897)
    at org.apache.hadoop.ipc.ProtobufRpcEngine$Server.<init>(ProtobufRpcEngine.java:505)
    at org.apache.hadoop.ipc.ProtobufRpcEngine.getServer(ProtobufRpcEngine.java:480)
    at org.apache.hadoop.ipc.RPC$Builder.build(RPC.java:742)
    at org.apache.hadoop.yarn.factories.impl.pb.RpcServerFactoryPBImpl.createServer(RpcServerFactoryPBImpl.java:169)
    at org.apache.hadoop.yarn.factories.impl.pb.RpcServerFactoryPBImpl.getServer(RpcServerFactoryPBImpl.java:132)
    ... 13 more

我试图在0.0.0.0:8040终止该进程,但这会导致与虚拟机的连接丢失。我的/ etc / hosts文件如下所示:

127.0.0.1 localhost
192.168.50.2 master
192.168.50.8 slave-e1a2365d-ef73-4c94-8212-7d607e4ae0f3
192.168.50.9 slave-bbd66c22-678c-474e-94cf-095dfcc11d5c

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

我不确定如何解决此错误。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您的端口似乎已在使用here

如何追查问题

1)确定程序尝试绑定到哪个端口

2)以root身份使用netstat -a -t --numeric-ports -p列出按编号和进程使用的端口。 (在OS / X上你需要使用lsof)

3)识别正在使用的端口和正在使用的程序

4)确保主机名有效:尝试ping它;使用ifconfig列出网络接口及其IP地址。

5)尝试确定它的使用原因。 telnet并指向Web浏览器都是很好的技巧。

6)更改其中一个程序的配置以在另一个端口上侦听。

希望有所帮助