hadoop启动错误:datanode,tasktracker不会启动和数据复制错误

时间:2015-04-13 16:55:05

标签: ubuntu hadoop mapreduce

我正在尝试在5台计算机的(测试)集群上安装Hadoop 1.2.1,其中一个节点用作JobTracker,NameNode和Secondary NameNode。其余4台机器都是奴隶。

有两个问题。

1)在master的conf / masters和conf / slaves文件中,我分别提供了master和slave的IP地址。在从站上,主站文件为空,从站文件包含自己的IP。

启动hadoop(bin / start-all.sh)时,TaskTracker和DataNode无法启动。我在/ etc / hosts文件中输入了这些机器的主机名,并尝试在主机和从机文件中输入它们的主机名。这没有任何区别 - TaskTracker和DataNode无法启动。

启动hadoop服务时,我收到一条消息,表明已经编写了TaskTracker和DataNode日志。但奇怪的是,我没有在那个地方找到它们。以下是我收到的消息

  

10.6.80.4:启动datanode,登录到/home/ubuntu/hadoop-1.2.1/libexec /../ logs / hadoop-ubuntu-datanode-dsparq-instance4.out

     

10.6.80.2:启动tasktracker,登录到/home/ubuntu/hadoop-1.2.1/libexec /../ logs / hadoop-ubuntu-tasktracker-dsparq-instance2.out

2)在JobTracker / NameNode日志中,多次列出以下异常。

  

错误:java.io.IOException:文件<>只能复制到0   节点,而不是1

这些问题的解决方案(在StackOverflow上)建议重新格式化hdfs并检查/ etc / hosts的条目。我尝试了他们两个,但这没有帮助。

请告诉我如何解决这些错误。提前谢谢。


添加core-site.xml和mapred-site.xml的内容(在所有机器上都相同)

芯-site.xml中

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>

<property>
        <name>fs.default.name</name>
        <value>hdfs://10.6.80.21:8020</value>
</property>

<property>
        <name>hadoop.tmp.dir</name>
        <value>/hadoop/hdfs</value>
</property>

</configuration>

mapred-site.xml中

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<property>
<name>mapred.job.tracker</name>
<value>hdfs://10.6.80.21:8021</value>
</property>

</configuration>

1 个答案:

答案 0 :(得分:1)

应该将日志写入* .out文件,但它不包含太多信息。在/ var / log / hadoop /目录中查找有关namenode或其他恶魔的最新日志的* .log文件(如果你有基于RPM的安装其他查看$ HADOOP_HOME日志文件夹)。针对上述问题,请确保所有节点中的core-site.xml都指定了namenode详细信息。同样,检查整个集群中的mapred-site.xml,它应该包含jobtracker的地址。

还要确保跨群集维护主机名,或者只使用ip地址。 我们必须在整个集群中创建hadoop.tmp.dir(我们在核心站点中提到的位置),它应该具有适当的文件权限,以便您的hdfs用户可以执行读/写操作。

<强>核心-site.xml中

<property>
      <name>hadoop.tmp.dir</name>
      <value>/loation/for/temp/dir</value>
      <description>A base for other temporary directories.</description>
    </property>

    <property>
      <name>fs.default.name</name>
      <value>hdfs://namenodehostname</value>
      <description>The name of the default file system.</description>
    </property>

<强> Mapred-site.xml中

<property>
  <name>mapred.job.tracker</name>
  <value>jobtrackerhostname</value>
  <description>The host and port that the MapReduce job tracker
  </description>
</property>

如果您认为所有上述属性都已在群集中设置且仍然面临问题。请更新您的完整日志以及配置文件。