无法检查hadoop上的节点[连接被拒绝]

时间:2012-06-06 16:28:29

标签: hadoop

如果我输入http://localhost:50070http://localhost:9000来查看节点,我的浏览器会向我显示我认为无法连接到服务器的任何内容。 我用这个命令测试了我的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 / core-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>
嘿,伙计们请你注意, 如果我运行此命令

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

但没有效果!你有什么想法,我怎样才能解决我的问题?

6 个答案:

答案 0 :(得分:13)

在启动hadoop服务之前,您需要注意的事情很少。

检查返回的内容:

hostname --fqdn 

在你的情况下,这应该是localhost。 同时在/ etc / hosts中注释掉IPV6。

在启动HDFS之前是否格式化了namenode。

hadoop namenode -format

你是如何安装Hadoop的?日志文件的位置将取决于此。通常它位于“/ var / log / hadoop /”位置,如果您使用了cloudera的分布。

如果你是一个完整的新手,我建议使用Cloudera SCM安装Hadoop,这很容易。我已经发布了my approach in installing Hadoop与Cloudera的发行版。

另外

确保DFS位置具有写入权限。它通常位于@ /usr/local/hadoop_store/hdfs

这是一个常见的原因。

答案 1 :(得分:4)

我得到了同样的问题,这解决了我的问题:

问题在于给予文件夹的权限 “chmod”755或更高的文件夹 的/ home /用户名/ hadoop的/ *

答案 2 :(得分:4)

另一种可能性是namenode没有运行。

您可以删除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)

答案 3 :(得分: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>

此属性的默认位置是/ 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 :(得分:1)

我假设这是你第一次安装hadoop。

一开始请检查您的守护进程是否正常工作。要做到这一点(在终端中):

jps

如果只显示jps,则表示所有后台驻留程序都已关闭。请检查日志文件。特别是namenode。日志文件夹可能位于/ usr / lib / hadoop / logs

如果您有一些权限问题。在安装过程中使用本指南。

Good installation guide

我正在拍摄这些解释,但这些是最常见的问题。

答案 5 :(得分: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>