1

这真让我抓狂。我已经为此工作了几天,似乎无法解决这个问题。我有一个在桉树上运行的私有云进行测试,还有 4 个运行 Ubuntu 12.04 的虚拟机。我试图让 cloudera 运行 HDFS 和 map-reduce,但是当我尝试启动它时,数据节点似乎永远无法与名称节点通信。它安装良好并通过了所有的发布前检查。主机文件都设置了 127.0.0.1 localhost 和其他虚拟机的 ip 和主机名,防火墙都被禁用,安全组设置为允许一切。我可以使用名称节点上的 telnet 和 netstat 从数据节点连接到名称节点的 8022 端口,如下所示:

tcp 0 0 172.31.254.119:9000 0.0.0.0:* LISTEN 6519/python
tcp 0 0 0.0.0.0:7432 0.0.0.0:* LISTEN 5672/postgres
tcp 0 0 127.0.0.1:9001 0.0.0.0:* LISTEN 6 python
tcp 0 0 172.31.254.119:50090 0.0.0.0:* LISTEN 8694/java
tcp 0 0 0.0.0.0:7180 0.0.0.0:* LISTEN 5680/java
tcp 0 0 0.0.0.0:7182 0.0.0.0:* LISTEN 5680 /java
tcp 0 0 172.31.254.119:8020 0.0.0.0:* LISTEN 8689/java
tcp 0 0 172.31.254.119:50070 0.0.0.0:* LISTEN 8689/java
tcp 0 0 172.31.254.119:8022 0.0.0.0:* LISTEN 8689/java
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 576/sshd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 5486/ postgres
tcp6 0 0 :::7432 :::* LISTEN 5672/postgres
tcp6 0 0 :::22 :::* LISTEN 576/sshd

但我不断收到的错误是:

无法发布事件:SimpleEvent{attributes={STACKTRACE=[org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.protocol.DisallowedDatanodeException):Datanode 拒绝与 namenode 通信:DatanodeRegistration(172.31.254.110, storageID=DS-1259113373-172.31.254.110-50010-1378398035331, infoPort=50075, ipcPort=50020, storageInfo=lv=-40;cid=cluster9;nsid=46459994;c=0)

我将非常感谢任何比我有更多 Linux/cloudera/eucalyptus 经验的人提供的任何建议。

谢谢大家。

4

1 回答 1

1

您已指定使用环回,但 DN 将自己标识为 172.31.254.110。使用正确的主机名而不是 127.0.0.1。为了更安全,将每台机器的主机名和 IP 添加到所有其他机器的 /etc/hosts 文件中。如果问题仍然存在,请告诉我您的配置文件。

于 2013-09-05T18:41:19.200 回答