搬遷vm導(dǎo)致hadoop namenode啟動(dòng)失敗的問題
原來在vmworkstation上部署了3臺(tái)hadoop的分布式環(huán)境,運(yùn)行一切正常。因?yàn)橘Y源問題,我把其中一臺(tái)的vm文件copy到另外一臺(tái)實(shí)體機(jī)上,一共copy了3分,又打算部署一個(gè)同樣的hadoop分布式環(huán)境。配置好ssh互相認(rèn)證授權(quán),機(jī)器建可以互相訪問。所有配置都沒有,除了機(jī)器名,相應(yīng)改掉core-site.xml, mapred-site.xml里面的機(jī)器名稱。執(zhí)行start-all.sh,但namenode啟動(dòng)一會(huì)就掛了,報(bào)如下錯(cuò)誤:
- .......
- InterruptedException.java.lang.InterruptedException: sleep
- interrupted2010-05-21 01:02:37,555 INFO
- org.apache.hadoop.hdfs.server.namenode.DecommissionManager:
- Interrupted Monitorjava.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:619)
- .......
- ERROR
- org.apache.hadoop.hdfs.server.namenode.NameNode:
- java.net.BindException:
- Cannot assign requested address
- at sun.nio.ch.Net.bind(Native Method)
- at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:119)
- at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
- at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
- at org.apache.hadoop.http.HttpServer.start(HttpServer.java:424)
- at org.apache.hadoop.hdfs.server.namenode.NameNode.startHttpServer(NameNode.java:246)
網(wǎng)上找了很多資料,有說hosts里面機(jī)器名不對(duì),應(yīng)該改成domain,或者拿掉localhost這一行,也有說防火墻沒關(guān)閉等等。但嘗試過都還是不行。
最后上一個(gè)外國網(wǎng)站發(fā)現(xiàn)說是因?yàn)閐fs.http.address指向的IP有問題,指向了本地IP,而應(yīng)該是非本地IP。我記得我自己并沒有配置這個(gè)property,但還是
檢查下hdfs-site.xml,發(fā)現(xiàn)之前我配置過這個(gè)屬性,IP指向另一個(gè)IP,但我把這個(gè)屬性用“#” comment掉了,怎么還會(huì)生效呢。我拿掉comment,把
IP改成我新配的namenode機(jī)器名。
- <property>
- <name>dfs.http.address</name>
- <value>master35:50070</value>
- </property>
原文由站長(zhǎng)網(wǎng)http://www.software8.co/wzjs/qtyy/2559.html原創(chuàng)投稿
再重啟,好了。搞了我很久的問題,但我還是很奇怪我已經(jīng)comment掉了,應(yīng)該不會(huì)生效的啊,神了。
posted on 2013-01-15 15:40 你爸是李剛 閱讀(968) 評(píng)論(0) 編輯 收藏