【问题标题】:Hadoop safemode recovery - taking lot of timeHadoop 安全模式恢复 - 花费大量时间
【发布时间】:2011-02-17 00:48:30
【问题描述】:

我们在 Amazon EC2 上运行我们的集群。我们正在使用 cloudera 脚本来设置 hadoop。在主节点上,我们启动下面的服务。

609   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start namenode'
610   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start secondarynamenode'
611   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start jobtracker'
612 
613   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop dfsadmin -safemode wait'

在从机上,我们运行以下服务。

625   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start datanode'
626   $AS_HADOOP '"$HADOOP_HOME"/bin/hadoop-daemon.sh start tasktracker'

我们面临的主要问题是,hdfs 安全模式恢复需要一个多小时,这导致我们的工作完成延迟。

以下是主要的日志消息。

1. domU-12-31-39-0A-34-61.compute-1.internal 10/05/05 20:44:19 INFO ipc.Client: Retrying connect to server: ec2-184-73-64-64.compute-1.amazonaws.com/10.192.11.240:8020. Already tried 21 time(s).
2. The reported blocks 283634 needs additional 322258 blocks to reach the threshold 0.9990 of total blocks 606499. Safe mode will be turned off automatically.

任务跟踪器日志中抛出第一条消息,因为作业跟踪器未启动。由于 hdfs 安全模式恢复,作业跟踪器未启动。

在恢复过程中抛出第二条消息。

我做错了什么吗? 正常的hdfs安全模式恢复需要多长时间? 在启动作业跟踪器之前不启动任务跟踪器,是否会有任何加速? amazon 集群上是否有任何已知的 hadoop 问题?

感谢您的帮助。

【问题讨论】:

    标签: amazon-ec2 hadoop cloud hdfs


    【解决方案1】:

    在安全模式下花费的时间通常与集群的大小成正比。也就是说,正常时间最多是几分钟,而不是几小时。有几件事需要检查。

    1. 确认所有数据节点都正确启动。数据节点需要几秒钟或几分钟的时间来报告大量块是正常的。检查数据节点日志以了解启动期间发生的情况。
    2. 确保您有足够的名称节点线程(hdfs-site.xml 中的 dfs.namenode.handler.count)能够处理要签入的数据节点的数量。默认值为 10,应该是适合多达 20 个节点左右的集群。除此之外,增加它可能是有意义的。您可能会在数据节点日志中看到表明这一点的重试。这就是重试消息似乎向我表明的内容(例如重试 21 次)。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-10
      • 2015-03-14
      • 1970-01-01
      • 1970-01-01
      • 2015-02-11
      • 1970-01-01
      相关资源
      最近更新 更多