EMR Hadoop长期运行的作业被杀死

问题描述 投票:1回答:1

当我使用一个映射器运行Sqoop时,我具有一个EMR群集,用于将700万条记录查询作为Avro文件传输到S3。 30分钟(+-5分钟)后,映射任务有时会被杀死,有时只是保持状态运行(永不结束),但是又创建了另一个映射任务并将其更改为状态运行,就像替换上一个任务一样,并且该工作从未结束。如果我更改查询以返回大约一百万条记录,则该作业正常结束。查看日志,我仅发现此

2019-10-31 10:20:29,991 INFO [RMCommunicator Allocator] org.apache.hadoop.mapreduce.v2.app.rm.RMContainerAllocator: Killing taskAttempt:attempt_1572476771816_0004_m_000000_4004 because it is running on unusable node:ip-10-0-2-41.us-east-2.compute.internal:8041

有人可以为此提供解决方案吗?

hadoop yarn sqoop amazon-emr
1个回答
0
投票

您需要将mapreduce.task.timeout设置为0。按照https://hadoop.apache.org/docs/r2.8.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml

如果任务既不读取输入,不写入输出也不更新其状态字符串,则终止该任务之前的毫秒数。值为0将禁用超时。

我认为Sqoop不会让YARN知道它仍在运行,因此映射器被杀死。

© www.soinside.com 2019 - 2024. All rights reserved.