안녕하세요 여러분, 아주 이상한 문제에 갇혀 있습니다. HBase와 hadoop을 내 컴퓨터에서 액세스하여 다른 VM에 설치하고 있습니다. 이제 hadoop을 제대로 설치하고 iran을 설치했습니다 .//start- all.sh와 내가 보는 모든 프로세스가 perfectly.So을 실행하고 있는지 내가 JPS을하고 난
JobTracker에
tasktracker
네임 노드
secondrynamenode
데이터 노드가
모든 것이 good.Now 때 설정 HBase를 실행중인 것을보고 그리고 나서 hadoop과 Hbase를 시작했는데 namenode가 실행 중이 아니고 namenode 로그 파일에서 로그에 있음을 알았습니다. 내가 포트를 확인이 예외
NameNode : java.net.BindException
java.lang.InterruptedException: sleep interrupted
at java.lang.Thread.sleep(Native Method)
at org.apache.hadoop.hdfs.server.namenode.DecommissionManager$Monitor.run(DecommissionManager.java:65)
at java.lang.Thread.run(Thread.java:662)
2012-05-19 08:46:07,493 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Number of transactions: 0 Total time for transactions(ms): 0Number of transactions batched in Syncs: 0 Number of syncs: 0 SyncTimes(ms): 0
2012-05-19 08:46:07,516 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: java.net.BindException: Problem binding to localhost/23.21.195.24:54310 : Cannot assign requested address
at org.apache.hadoop.ipc.Server.bind(Server.java:227)
at org.apache.hadoop.ipc.Server$Listener.<init>(Server.java:301)
at org.apache.hadoop.ipc.Server.<init>(Server.java:1483)
at org.apache.hadoop.ipc.RPC$Server.<init>(RPC.java:545)
at org.apache.hadoop.ipc.RPC.getServer(RPC.java:506)
at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:294)
at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:497)
at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:1268)
at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:1277)
Caused by: java.net.BindException: Cannot assign requested address
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:225)
... 8 more
2012-05-19 08:46:07,516 INFO org.apache.hadoop.hdfs.server.namenode.NameNode: SHUTDOWN_MSG:
를 T와 모든 conf의 다시하고 다시 파일 만 해결책을 찾지 못했습니다 조정한다. 누구든지 아이디어가 있다면 안내해주세요.
Thnaks alot
'ping localhost'를 콘솔에 입력하면 무엇이 표시됩니까? 제 생각에는 localhost가 127.0.0.1이 아닌 다른 것으로 해결하는 것과 관련이있을 수 있습니다 :'localhost/23.21.195.24 : 54310'이 당신의 로그에있는 것입니다. 최근에/etc/hosts 파일을 수정 했습니까? –
예 제가 수정했습니다 - 내/etc/hosts에 (23.21.195.24 hbase) 항목을 넣었고 내/etc/hosts 파일이 좋아 보이도록 내 127.0.01 localhost 항목에 주석을 달았습니다 (# 127.0.01 localhost) - 23.21.195.24 hbase xyz.hbase.com localhost) – khan
이 오류가 발생하는 다른 사람들을위한 제안 : 좀비 프로세스가 아직 9000에 바인딩되어 있지 않은지 확인하십시오. 지금 당장 나에게 일어난 일입니다. 내가 한 첫 번째 작업은'jps -l'을 실행하여 namenode가 아직 실행 중인지 확인하는 것이지, 나타나지 않았기 때문에 명백한 진단을 배제했습니다. 나는 netstat -nl |을 돌릴 때까지 이것을 고치려고 많은 시간을 낭비했다. grep 9000'을 사용했고 실제로 뭔가가 9000에 바인딩된다는 것을 알았습니다. –