为什么要获取Hadoop Startup SafemodeException

时间:2012-06-18 12:26:47

标签: hadoop

我们设置了具有三个节点的 hadoop 群集。当我们启动集群时,我们会收到类似

的错误消息
ssh: Could not resolve hostname master:

但在我们的应用程序中,在配置中没有使用该名称。 但是守护进程也都在主服务器和从服务器上运行。但在检查UI时,只有一个节点是活动节点。 任何人都可以帮助我这些conf文件所指的位置。

2 个答案:

答案 0 :(得分:0)

可能是,您已将“master:”而不是“master”写入文件$ HADOOP_HOME / conf / masters | $ HADOOP_HOME / conf目录/奴隶...

这是一个dns问题,在环境设置过程中可能会遇到很多dns问题。您可以使用hadoop-dns-checker工具找出问题......

答案 1 :(得分:0)

你写了conf/mastersconf/slaves file吗?在您的hadoop文件夹中,执行以下操作:

echo localhost > conf/masters;
echo localhost > conf/slaves;

此外,在conf/core-site.xml中,请务必设置fs.default.name

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://127.0.0.1:9000</value>
  </property>
</configuration>

conf/mapred-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>

  <property>
    <name>dfs.datanode.socket.write.timeout</name>
    <value>0</value>
  </property>
</configuration>