hadoop" ipc.Client:重试连接到服务器"错误

时间:2015-04-17 06:39:47

标签: hadoop

关于如何解决这个hadoop错误有很多想法

15/04/17 10:59:57 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 0 time(s).

然而,我尝试了所有但仍然看到错误!这是我的配置

1)core-site.xml

$ cat ../../apache/hadoop-1.0.2/conf/core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
  <name>fs.default.name</name>
  <value>hdfs://localhost:54310</value>
</property>
</configuration>

2)mapred-site.xml

$ cat ../../apache/hadoop-1.0.2/conf/mapred-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
  <name>mapred.job.tracker</name>
  <value>localhost:54311</value>
</property>
<property>
  <name>mapred.child.java.opts</name>
  <value>-Xmx512m</value>
</property>
</configuration>

3)端口的iptables

# cat /etc/sysconfig/iptables
*filter
:INP UT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2049 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 54310 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 54311 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

# /etc/init.d/iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]

$ netstat -an | grep 54310
$ netstat -an | grep 54311
tcp        0      0 ::ffff:127.0.0.1:54311     :::*                        LISTEN
tcp      238      0 ::ffff:127.0.0.1:54311      ::ffff:127.0.0.1:44216      ESTABLISHED
tcp        0      0 ::ffff:127.0.0.1:44216      ::ffff:127.0.0.1:54311      ESTABLISHED

4)开始hadoop

$ $HADOOP_HOME/bin/start-all.sh
Warning: $HADOOP_HOME is deprecated.

starting namenode, logging to /home/mahmood/bigdatabench/apache/hadoop-1.0.2/libexec/../logs/hadoop-mahmood-namenode-tiger.out
mahmood@localhost's password:
localhost: Warning: $HADOOP_HOME is deprecated.
localhost:
localhost: starting datanode, logging to /home/mahmood/bigdatabench/apache/hadoop-1.0.2/libexec/../logs/hadoop-mahmood-datanode-tiger.out
mahmood@localhost's password:
localhost: Warning: $HADOOP_HOME is deprecated.
localhost:
localhost: secondarynamenode running as process 7583. Stop it first.
jobtracker running as process 7792. Stop it first.
mahmood@localhost's password:
localhost: Warning: $HADOOP_HOME is deprecated.
localhost:
localhost: tasktracker running as process 8019. Stop it first.

5)检查java进程

$ jps
10292 Jps
8019 TaskTracker
7792 JobTracker
7583 SecondaryNameNode

6)我仍然得到那个错误

$ hadoop fs -ls hdfs://localhost:54310/
Warning: $HADOOP_HOME is deprecated.

15/04/17 10:59:57 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 0 time(s).
15/04/17 10:59:58 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 1 time(s).
15/04/17 10:59:59 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 2 time(s).
15/04/17 11:00:00 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 3 time(s).
15/04/17 11:00:01 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 4 time(s).
15/04/17 11:00:02 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 5 time(s).
15/04/17 11:00:03 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 6 time(s).
15/04/17 11:00:04 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 7 time(s).
15/04/17 11:00:05 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 8 time(s).
15/04/17 11:00:06 INFO ipc.Client: Retrying connect to server: localhost/127.0.0.1:54310. Already tried 9 time(s).
Bad connection to FS. command aborted. exception: Call to localhost/127.0.0.1:54310 failed on connection exception: java.net.ConnectException: Connection refused

更新:

虽然我认为我已经格式化了文件系统,但事实证明hdfs格式命令已中止,我没有注意到。原因是我用 y 回答了这个问题Re-format filesystem in /home/mahmood/bigdatabench/apache/hadoop-1.0.2/folders/name ? (Y or N)。但正确的答案是按 Y (大写字母!!)。

所以正确的步骤是

1- stop-all.sh

2- hadoop namenode -format

3- start-all.sh

ipc错误已经消失:)

我该如何解决?

2 个答案:

答案 0 :(得分:0)

我认为,您从客户端计算机运行此命令,在配置文件中需要提供ip地址/主机名而不是localhost以避免此类问题。尝试在配置文件中输入主机名,然后再试一次。

答案 1 :(得分:0)

此错误已得到处理。

请检查以下应在主节点和数据节点上执行的配置列表。

大师: 1)禁用IP v6 2)禁用防火墙 3)在hdfs-site.xml和映射的XML文件而不是localhost中使用物理IP。 4)在etc / hosts文件中,请注释除主控物理IP和数据节点物理IP地址以外的所有条目。从127。***开始的所有IP和IP v6条目都应添加注释。

Datanode: 1)在etc / hosts文件中,请注释除主控物理IP和数据节点物理IP地址以外的所有条目。从127。***开始的所有IP和IP v6条目都应添加注释。 2)在hdfs-site.xml和映射的XML文件而不是localhost中使用物理IP。