hadoop datanode无法启动。 "不包含有效的主机:端口权限"

时间:2015-05-22 07:02:50

标签: xml hadoop

我目前正在使用hadoop 1.2.1(因为我需要运行空间处理软件才支持此版本)。我尝试在多节点模式下部署一个主服务器和三个从服务器。

我确信我能够在没有密码(包括他们自己)的情况下在所有主服务器和从服务器之间进行ssh。此节点上的主机名也是正确的。 每个节点共享相同的主机文件:

192.168.56.101 master
192.168.56.102 slave1
192.168.56.103 slave2
192.168.56.104 slave3

我一直在奴隶节点遇到问题,错误日志信息如下,

2015-05-21 23:39:16,841 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.lang.IllegalArgumentException: Does not contain a valid host:port authority: file:///
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:164)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:212)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:244)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getServiceAddress(NameNode.java:236)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:359)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:321)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1712)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1651)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1669)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.secureMain(DataNode.java:1795)
    at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:181

core-site.xml中的配置

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

在mapred-site.xml中:

<configuration>
    <property>
        <name>mapred.job.tracter</name>
        <value>master:8012</value>  
    </property>
</configuration>

在hdfs-site.xml中:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
</configuration

3 个答案:

答案 0 :(得分:4)

节点主机名的命名约定可能存在问题。 确保它们不包含&#34; _&#34;等符号。 检查Wikipedia是否有限制。

答案 1 :(得分:2)

尝试更改&#34; master&#34;在所有配置文件中的实际IP地址。

答案 2 :(得分:0)

你说好了。运行命令“$ HADOOP_HOME / sbin / start-dfs”后需要运行命令“ $ HADOOP_HOME / bin / hdfs namenode -format master