2012-06-06 19 views
11

如果我輸入http://localhost:50070http://localhost:9000來查看節點,我的瀏覽器不會顯示任何內容,我認爲它無法連接到服務器。 我測試了我的Hadoop使用此命令:無法檢查hadoop上的節點[連接被拒絕]

hadoop jar hadoop-*test*.jar TestDFSIO -write -nrFiles 10 -fileSize 1000 

但也沒有工作,它會嘗試連接到服務器,這是輸出:

12/06/06 17:25:24 INFO mapred.FileInputFormat: nrFiles = 10 
12/06/06 17:25:24 INFO mapred.FileInputFormat: fileSize (MB) = 1000 
12/06/06 17:25:24 INFO mapred.FileInputFormat: bufferSize = 1000000 
12/06/06 17:25:25 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 0 time(s). 
12/06/06 17:25:26 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 1 time(s). 
12/06/06 17:25:27 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 2 time(s). 
12/06/06 17:25:28 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 3 time(s). 
12/06/06 17:25:29 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 4 time(s). 
12/06/06 17:25:30 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 5 time(s). 
12/06/06 17:25:31 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 6 time(s). 
12/06/06 17:25:32 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 7 time(s). 
12/06/06 17:25:33 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 8 time(s). 
12/06/06 17:25:34 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:9000. Already tried 9 time(s). 
java.net.ConnectException: Call to localhost/127.0.0.1:9000 failed on connection exception: java.net.ConnectException: Connection refused 

我改變了一些文件是這樣的: 在CONF /芯-site.xml中:

<configuration> 
    <property> 
    <name>fs.default.name</name> 
    <value>hdfs://localhost:9000</value> 
    </property> 
在CONF/HDFS-site.xml中

<configuration> 
    <property> 
    <name>dfs.replication</name> 
    <value>1</value> 
    </property> 
</configuration> 
</configuration> 
中的conf

/mapred-site.xml中:

<configuration> 
    <property> 
    <name>mapred.job.tracker</name> 
    <value>localhost:9001</value> 
    </property> 
</configuration> 

嘿傢伙thnks的關注, 如果我運行此命令

cat /etc/hosts 

我看到:

127.0.0.1 localhost 
127.0.1.1 ubuntu.ubuntu-domain ubuntu 

# The following lines are desirable for IPv6 capable hosts 
::1  ip6-localhost ip6-loopback 
fe00::0 ip6-localnet 
ff00::0 ip6-mcastprefix 
ff02::1 ip6-allnodes 
ff02::2 ip6-allrouters 

如果我運行這一個:

ps axww | grep hadoop 

我看到這樣的結果:

2170 pts/0 S+  0:00 grep --color=auto hadoop 

,但沒有效果你有衣蝶,我怎樣才能解決我的問題?

+0

什麼在你的/ etc/hosts文件中? –

+0

我沒有發現,你知道嗎,主機文件在哪裏?在hadoop文件夾中有 – Baper

+0

? – Baper

回答

12

在啓動hadoop服務之前,您需要注意的幾件事情。

檢查一下這個返回:

hostname --fqdn 

你的情況,這應該是localhost。 也在/ etc/hosts中註釋掉IPV6。

您是否在啓動HDFS之前格式化了namenode。

hadoop namenode -format 

你是怎麼安裝Hadoop的。日誌文件的位置將取決於此。如果您使用過cloudera的發行版,通常位於「/ var/log/hadoop /」位置。

如果你是一個完整的新手,我建議使用Cloudera SCM來安裝Hadoop,這很容易。我已經發布了Cloudera的發行版my approach in installing Hadoop

此外

確保DFS位置有寫權限。它通常坐落在@/usr/local/hadoop_store/hdfs

這是一個常見的原因。

+1

我有同樣的問題。名稱節點格式化後,它解決了問題。但是,我必須使用「hdfs dfs -mkdir/user; hdfs dfs -mkdir/user/{my-user-name} –

1

我假設你是第一次安裝hadoop。

開始時請檢查您的守護進程是否正常工作。要做到這一點(在終端):

jps 

如果只有jps出現,意味着所有的守護進程都關閉。請檢查日誌文件。特別是namenode。日誌文件夾可能在某處/ usr/lib/hadoop/logs

如果您有一些權限問題。在安裝過程中使用本指南。

Good installation guide

我這個解釋的拍攝,但這些是最常見的問題。

+2

」來創建主目錄,請注意,jps只會顯示當前用戶運行的JVM(所以如果你'將hadoop作爲專用用戶運行,並從其他用戶的會話中調用jps,hadoop進程將不會顯示) - http://docs.oracle.com/javase/1.5.0/docs/tooldocs/share/jps .html –

+0

你是對的,如果你以僞分佈模式啓動hadoop,你應該使用sudo jps,因爲所有的守護進程都是由超級用戶在默認情況下運行的,我是對嗎? – wonsky

2

還編輯您的/ etc/hosts文件並將127.0.1.1更改爲127.0.0.1 ...適當的dns解析對於hadoop非常重要並且有點棘手太多..您還可以在core-site.xml中添加以下屬性文件 -

<property> 
     <name>hadoop.tmp.dir</name> 
     <value>/path_to_temp_directory</value> 
    </property> 

此屬性的默認位置是/它獲取每個restart..so你失去了在每個您的所有信息restart..also在您添加這些屬性系統後清空tmp目錄HDFS-site.xml中文件 -

<property> 
     <name>dfs.name.dir</name> 
     <value>/path_to_name_directory</value> 
    </property> 

    <property> 
     <name>dfs.data.dir</name> 
     <value>/path_to_data_directory</value> 
    </property> 
4

我得到了同樣的問題,這解決了我的問題:

問題在於給文件夾 「CHMOD」 755或更大的文件夾權限 /家/用戶名/的Hadoop/*

+0

感謝Ramy它爲我工作。 – Ragav

4

另一種可能性是名稱節點沒有運行。

可以刪除HDFS文件:

rm -rf /tmp/hadoop* 

重新格式化HDFS

bin/hadoop namenode -format 

,並重新啓動的Hadoop服務

bin/hadoop/start-all.sh (Hadoop 1.x) 

sbin/hadoop/start-all.sh (Hadoop 2.x) 
0

嗨編輯您的核心conf/core-site.xml並將localhost更改爲0.0.0.0。使用下面的conf。這應該工作。

<configuration> 
    <property> 
    <name>fs.default.name</name> 
    <value>hdfs://0.0.0.0:9000</value> 
    </property> 
相關問題