在做完全分布式搭建的实验时遇见这样的问题:
启动第一台虚拟机的hadoop时,namenode无法启动,日志报错如下:
java.net.BindException: Port in use: hadoop03:50090
at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:919)
at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:856)
at org.apache.hadoop.hdfs.server.namenode.NameNodeHttpServer.start(NameNodeHttpServer.java:142)
at org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:752)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:638)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:811)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:795)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1488)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1554)
Caused by: java.net.BindException: 无法指定被请求的地址
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:914)
... 8 more
我也已经把三台虚拟机的端口号为50090的所有进程杀死了,但namenode还是启动不了,求解答
我知道问题可能出在哪里了,可能是我第一次刚安装好Hadoop后,启动了Hadoop,那个时候好像是出现了namenode和datanode,然后现在启动集群,我没有停止上次启动的所有namenode和datanode进程,没有删除data和log数据就直接重新格式化了,到后面就一直没有出现namenode,搞了大半天,头都搞大了,然后我就把三台虚拟机的hadoop全部删除了,重新装了一遍之后就启动起来啦
之前可以正常启动吗