转载自:http://hi.baidu.com/wylinux/item/eaeafb43fcb406af60d7b931
BindException: Problem binding to cs-01.localhost.localdomain/192.168.0.4:9001 : Address already in use
2012-06-10 20:43:03,004 INFO org.apache.hadoop.mapred.JobTracker: Starting jobtracker with owner as hadoop
2012-06-10 20:43:03,095 FATAL org.apache.hadoop.mapred.JobTracker: java.net.BindException: Problem binding to cs-01.localhost.localdomain/192.168.0.4:9001 : Address already in use
at org.apache.hadoop.ipc.Server.bind(Server.java:226)
at org.apache.hadoop.ipc.Server$Listener.<init>(Server.java:300)
at org.apache.hadoop.ipc.Server.<init>(Server.java:1478)
at org.apache.hadoop.ipc.RPC$Server.<init>(RPC.java:505)
at org.apache.hadoop.ipc.RPC.getServer(RPC.java:466)
at org.apache.hadoop.mapred.JobTracker.<init>(JobTracker.java:2288)
at org.apache.hadoop.mapred.JobTracker.<init>(JobTracker.java:2171)
at org.apache.hadoop.mapred.JobTracker.startTracker(JobTracker.java:300)
at org.apache.hadoop.mapred.JobTracker.startTracker(JobTracker.java:291)
at org.apache.hadoop.mapred.JobTracker.main(JobTracker.java:4956)
Caused by: java.net.BindException: Address already in use
at sun.nio.ch.Net.bind(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:126)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
at org.apache.hadoop.ipc.Server.bind(Server.java:224)
... 9 more
[hadoop@cs-01 logs]$ netstat -tunlp
(No info could be read for "-p": geteuid()=502 but you should be root.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:9425 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN -
tcp 0 0 ::ffff:192.168.0.4:9000 :::* LISTEN -
tcp 0 0 ::ffff:192.168.0.4:9001 :::* LISTEN -
tcp 0 0 :::50090 :::* LISTEN -
tcp 0 0 :::50030 :::* LISTEN -
tcp 0 0 :::50070 :::* LISTEN -
tcp 0 0 :::22 :::* LISTEN -
tcp 0 0 ::1:25 :::* LISTEN -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
端口没有完全释放可能 实际使用的时候就算是关闭集群,端口显示还是占用的
直接root 用户pkill java了 java进程没有完全关闭的
本文详细阐述了在使用Hadoop时遇到JobTracker启动失败的问题,原因在于端口9001已被其他进程占用。通过提供解决步骤,包括检查当前端口占用情况、使用netstat命令查看端口状态以及最终使用pkill命令结束相关进程,成功解决了端口冲突导致的启动失败问题。
305

被折叠的 条评论
为什么被折叠?



