我的hadoop集群遇到了一些问题。我试着用它做一些基准来检查它的性能,看看mapreduce是否工作正常,但是我得到了一些奇怪的beahviours。事实上,mapreduce正在启动和处理它的映射阶段,但我从中得到了一些错误:我首先使用teragen来创建数据:
$ hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar teragen 500 random-data然后工作开始了,我在没有停止这个过程的情况下失败了:
17/02/23 12:29:27 INFO client.RMProxy:连接到ResourceManager at /172.16.138.145:8032 17/02/23 12:29:28 INFO terasort.TeraSort:用2生成500 17/02/23 12:29:28信息mapreduce.JobSubmitter:分裂数:2 17/02/23 12:29:28信息mapreduce.JobSubmitter:提交作业标记: job_1487846108320_0007 17/02/23 12:29:28信息impl.YarnClientImpl:提交的申请application_1487846108320_0007 17/02/23 12:29:28信息mapreduce.Job:用于跟踪工作的网址:0007/ 17/02/23 12:29:28信息mapreduce.Job:运行作业: job_1487846108320_0007 17/02/23 12:29:34 INFO mapreduce.Job:作业job_1487846108320_0007在uber模式下运行: false 17/02/23 12:29:34 INFO mapreduce.Job: map 0%减少0% 17/02/23 12:29:47信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000001_0,状态:失败 17/02/23 12:29:48信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000000_0,状态:失败 17/02/23 12:30:02信息mapreduce.Job: map减少50% 17/02/23 12:30:02信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000001_1,状态:失败 17/02/23 12:30:03信息mapreduce.Job: map 0%减少0% 17/02/23 12:30:03信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000000_1,状态:失败 17/02/23 12:30:15信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000001_2,状态:失败 17/02/23 12:30:16信息mapreduce.Job:任务Id : attempt_1487846108320_0007_m_000000_2,状态:失败 17/02/23 12:30:30信息mapreduce.Job: map 100%减少0% 17/02/23 12:30:31 INFO mapreduce.Job:作业job_1487846108320_0007失败,状态因: task_1487846108320_0007_m_000001失败而失败 作业失败,任务失败。故障映射:1故障减少:0
我检查了相关datanode中的日志,发现以下行对每个失败重复如下:
2017-02-23 11:36:12,901 INFO AsyncDispatcher事件处理程序org.apache.hadoop.mapreduce.v2.app.job.impl.TaskAttemptImpl: attempt_1487846108320_0001_m_000001_1 TaskAttempt从运行过渡到FAIL_CONTAINER_CLEANUP 2017-02-23 11:36:12,901 INFO AsyncDispatcher事件处理程序attempt_1487846108320_0001_m_000001_1诊断报告: 2017-02-23 11:36:12,902 INFO ContainerLauncher #5 ContainerLauncher EventType: CONTAINER_REMOTE_CLEANUP for container_1487846108320_0001_01_000004 taskAttempt attempt_1487846108320_0001_m_000001_1 2017年-02-23 11:36:12,903 INFO ContainerLauncher #5 ContainerLauncher attempt_1487846108320_0001_m_000001_1 2017年-02-23 11:36:12,903 INFO ContainerLauncher #5 ContainerLauncher开放代理:Datanode3 3:34121 2017-02-23 11:36:12,923 INFO AsyncDispatcher事件处理程序AsyncDispatcher attempt_1487846108320_0001_m_000001_1 TaskAttempt从FAIL_CONTAINER_CLEANUP过渡到FAIL_TASK_CLEANUP 2017-02-23 11:36:12,924 INFO CommitterEvent处理器#2处理事件EventType: TASK_ABORT 2017-02-23 11:36:12,932警告org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter:#2 CommitterEvent处理器不能删除hdfs://172.16.138.145:9000/user/hdfs/random-dataSmallV7.7/_temporary/1/_temporary/attempt_1487846108320_0001_m_000001_1 2017-02-23 11:36:12,932 INFO AsyncDispatcher事件处理程序AsyncDispatcher attempt_1487846108320_0001_m_000001_1 TaskAttempt从FAIL_TASK_CLEANUP过渡到失败
在这种情况下,作业失败了,但有时我会收到错误,但作业会成功。(很少)你知道导致这种FAIL_CONTAINER_CLEANUP的原因吗?或者这个问题的潜在原因?这里只使用映射器,不请求减速器,但当减速器涉及到其他情况时,错误也会发生。
提前谢谢你的想法。
发布于 2017-03-01 09:49:06
我终于解决了。在一些/etc/文件中有一行引用到我的节点: 127.0.1.1 Datanode1
我用机器的FQDN替换了这一行: 172.16.138.147 Datanode1
这使hadoop能够找到我的服务器的引用并修复此错误。
我希望这会对其他人有所帮助。
https://stackoverflow.com/questions/42416921
复制相似问题