我正在尝试在多节点群集上运行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
我不确定如何解决此错误。任何帮助将不胜感激。
答案 0 :(得分:0)
您的端口似乎已在使用here
如何追查问题
1)确定程序尝试绑定到哪个端口
2)以root身份使用netstat -a -t --numeric-ports -p列出按编号和进程使用的端口。 (在OS / X上你需要使用lsof)
3)识别正在使用的端口和正在使用的程序
4)确保主机名有效:尝试ping它;使用ifconfig列出网络接口及其IP地址。
5)尝试确定它的使用原因。 telnet并指向Web浏览器都是很好的技巧。
6)更改其中一个程序的配置以在另一个端口上侦听。
希望有所帮助