FAQ-easycost-audit_summary-easyops任务超时导致被kill

问题描述/异常栈
easycost-audit_summary-easyops 任务报错Job totay_last_time does not have cancel method cancel
报错示例:
FAQ-easycost-audit_summary-easyops任务超时导致被kill - 图1
中台页面:
FAQ-easycost-audit_summary-easyops任务超时导致被kill - 图2
yarn日志:task 超过10分钟
FAQ-easycost-audit_summary-easyops任务超时导致被kill - 图3
发现版本
EasyData-V8.0-UPdate09
解决方案
解决方案:
1、 调大mapreduce.task.stuck.timeout-ms,默认10mins。
FAQ-easycost-audit_summary-easyops任务超时导致被kill - 图4
2、调整采集audit log时候的脚本,让其切分为更多的文件,每个文件变小,那么并发就高些了,每个map task处理的数据就少了,运行时间就缩短了。
查看文件大小情况:
hdfs dfs -ls -h hdfs://easyops-cluster/user/mammut_service/nnaudit/easyops-cluster/year-mon-d
cd /usr/easyops/smilodon_fsimage_audit/default_smilodon_fsimage_audit/upload_audit/202410162036358771c0a5e68/current/upload_audit/
less upload-audit.sh, 40000000 改成 10000000
FAQ-easycost-audit_summary-easyops任务超时导致被kill - 图5
重跑 upload-audit.sh
查看hdfs 文件,文件大小缩小约4倍
hdfs dfs -ls -h hdfs://easyops-cluster/user/mammut_service/nnaudit/easyops-cluster/year-mon-d
3、如果audit log每日数据量非常大,建议两种方式都调整,否则超时时间不好精准控制,还有任务运行时间大大增加。
问题原因
Hadoop MR任务Map阶段数据量大,溢写磁盘阶段耗时较长,导致map task超时(10mins)被yarn kill掉

作者:刘家有