7

我已经成功设置了一个有 6 个节点的 Hadoop 集群(master、salve<1-5>)

  • 格式化namenode -> 完成
  • 启动和关闭集群 -> 工作正常
  • 执行“hadoop dfs -ls /”会出现此错误 ->错误:INFO ipc.Client: Retrying connect to server: localhost

我试图查看正在运行的服务:

sudo netstat -plten | grep java
hduser@ubuntu:~$ sudo netstat -plten | grep java

tcp 0 0 0.0.0.0:50070 0.0.0.0:* LISTEN 1000 93307 11384/java
tcp 0 0 0.0.0.0:44440 0.0.0.0:* LISTEN 1000 92491 11571/java
tcp 0 0 0.0.0.0:406.3. * LISTEN 1000 92909 11758/java
tcp 0 0 0.0.0.0:50010 0.0.0.0:* LISTEN 1000 93449 11571/java
tcp 0 0 0.0.0.0:50075 0.0.0.0:* LISTEN 1000 93673 10t0.1.0.cp
10t0.7 0.0:50020 0.0.0.0:* 听 1000 93692 11571/java
tcp 0 0 127.0.0.1:40485 0.0.0.0:* LISTEN 1000 93666 12039/java
tcp 0 0 0.0.0.0:44582 0.0.0.0:* LISTEN 1000 93013 11852/java
tcp 0 0 145.42.43.0.0 :4310.42.0.0.0 : * 听 1000 92471 11384/java
tcp 0 0 10.42.43.1:54311 0.0.0.0:* 听 1000 93290 11852/java
tcp 0 0 0.0.0.0:50090 0.0.0.0:* 听1000 93460 7
tcp 70011 0.0:34154 0.0.0.0:* 听 1000 92179 11384/java
tcp 0 0 0.0.0.0:50060 0.0.0.0:* LISTEN 1000 94200 12039/java
tcp 0 0 0.0.0.0:50030 0.0.0.0:* LISTEN 1000 93550 11852/java

它的主 IP 绑定到端口 54310 和 54311,而不是本地主机(环回)。

conf-site.xml 已正确配置:

<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hduser/hadoop/tmp</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://master:54310</value>
</property>
</configuration>

为什么期望 localhost 绑定到 54310 而不是我在此处配置的 master hich。帮助表示赞赏。我该如何解决这个问题?

干杯

4

3 回答 3

1

显然,在我添加新的 hadoop(1.0.4) bin 目录之前,有人将旧的 hadoop(1.0.3) bin 目录添加到了路径变量中。因此,每当我从 CLI 运行“hadoop”时,它都会执行旧 hadoop 的二进制文件,而不是新的。

解决方案:

  • 删除旧 hadoop 的整个 bin 路径

  • 关闭集群 - 退出终端

  • 登录新的终端会话

  • 启动节点

  • 试过hadoop dfs -ls /-> 工作正常!!!!很好的教训。

于 2012-11-14T17:17:05.963 回答
0

看来很多人都遇到过这个问题。

可能不需要更改 /etc/hosts,并确保您可以相互访问主从,并且您的 core-site.xml 指向正确的主节点和端口号是相同的。

然后仅在主节点上运行 $HADOOP/bin/stop-all.sh、$HADOOP/bin/start-all.sh。(如果在 slave 上运行可能会导致问题)。使用JPS检查是否所有服务如下。

在主节点上:4353 DataNode 4640 JobTracker 4498 SecondaryNameNode 4788 TaskTracker 4989 Jps 4216 NameNode

从节点上:3143 Jps 2827 DataNode 2960 TaskTracker

于 2014-04-22T18:38:13.880 回答
0

另外,检查namenode和datanode之间的防火墙规则

于 2014-08-21T17:33:10.950 回答