2011-06-10 66 views
5

我目前正在學習Hadoop和我試圖安裝一個單節點測試中http://hadoop.apache.org/common/docs/current/single_node_setup.html「的Hadoop的NameNode -format」返回的java.net.UnknownHostException

我已經將ssh配置定義(我可以登錄沒有密碼)。

我的服務器位於我們的Intranet上,位於代理之後。

當我試圖運行

斌/ Hadoop的NameNode的-format

我得到以下的java.net.UnknownHostException異常:

$ bin/hadoop namenode -format 
11/06/10 15:36:47 INFO namenode.NameNode: STARTUP_MSG: 
/************************************************************ 
STARTUP_MSG: Starting NameNode 
STARTUP_MSG: host = java.net.UnknownHostException: srv-clc-04.univ-nantes.prive3: srv-clc-04.univ-nantes.prive3 
STARTUP_MSG: args = [-format] 
STARTUP_MSG: version = 0.20.203.0 
STARTUP_MSG: build = http://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20-security-203 -r 1099333; compiled by 'oom' on Wed May 4 07:57:50 PDT 2011 
************************************************************/ 
Re-format filesystem in /home/lindenb/tmp/HADOOP/dfs/name ? (Y or N) Y 
11/06/10 15:36:50 INFO util.GSet: VM type  = 64-bit 
11/06/10 15:36:50 INFO util.GSet: 2% max memory = 19.1675 MB 
11/06/10 15:36:50 INFO util.GSet: capacity  = 2^21 = 2097152 entries 
11/06/10 15:36:50 INFO util.GSet: recommended=2097152, actual=2097152 
11/06/10 15:36:50 INFO namenode.FSNamesystem: fsOwner=lindenb 
11/06/10 15:36:50 INFO namenode.FSNamesystem: supergroup=supergroup 
11/06/10 15:36:50 INFO namenode.FSNamesystem: isPermissionEnabled=true 
11/06/10 15:36:50 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100 
11/06/10 15:36:50 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s) 
11/06/10 15:36:50 INFO namenode.NameNode: Caching file names occuring more than 10 times 
11/06/10 15:36:50 INFO common.Storage: Image file of size 113 saved in 0 seconds. 
11/06/10 15:36:50 INFO common.Storage: Storage directory /home/lindenb/tmp/HADOOP/dfs/name has been successfully formatted. 
11/06/10 15:36:50 INFO namenode.NameNode: SHUTDOWN_MSG: 
/************************************************************ 
SHUTDOWN_MSG: Shutting down NameNode at java.net.UnknownHostException: srv-clc-04.univ-nantes.prive3: srv-clc-04.univ-nantes.prive3 
************************************************************/ 

之後, hadoop開始了

./bin/start-all.sh 

但還有一個新的異常,當我試圖複製一個本地文件:

bin/hadoop fs -copyFromLocal ~/file.txt file.txt 

DataStreamer Exception: org.apache.hadoop.ipc.RemoteException: java.io.IOException: File /user/lindenb/file.txt could only be replicated to 0 nodes, instead of 1 
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1417) 

我怎麼能解決這個問題嗎?

感謝

+0

我在CentOS虛擬機的Cloudera發行版上格式化我的NameNode時收到類似的錯誤。你能告訴我你對/ etc/hosts文件做了什麼嗎?我目前有以下幾行: – 2013-11-19 20:38:27

+0

'127.0.0.1 localhost.localdomain localhost'和':: localhost6.localdomain6 localhost6' – 2013-11-19 20:39:08

回答

4

UnknownHostException時的Hadoop嘗試解析DNS名稱(SRV-CLC-04.univ-nantes.prive3)的IP地址被拋出。這失敗了。

查找配置文件中的域名並將其替換爲「localhost」。 (或更新DNS,將名稱解析爲IP地址)

+0

謝謝,我在/ etc/hosts中添加了一個別名 – Pierre 2011-06-15 06:41:58

+0

謝謝,我也有相同的issu更新/ etc/hosts文件幫助 – Rak 2015-10-18 14:25:55

0

您創建的tmp目錄應具有所有權問題。這就是爲什麼Hadoop是不能寫入TMP directoy修復它運行以下命令

sudo chown hduser:hadoop /app/<your hadoop tmp dir> 
0

追加下面以/etc/hosts可以幫助:

127.0.0.1 localhost yourhostname 
3

首先得到您的計算機的主機名。它可以通過運行$hostname命令獲得。 然後將127.0.0.1 localhost hostname添加到/etc/hosts文件中。這應該可以解決問題。