【Flink】Flink任务缺失Jobmanager日志的问题排查

Flink任务缺失Jobmanager日志的问题排查

问题不是大问题,不是什么代码级别的高深问题,也没有影响任务运行,纯粹因为人员粗心导致,记录一下排查的过程。

问题描述

一个生产环境的奇怪问题,环境是flink1.15.0 on yarn3.2.2的,研发人员反馈业务正常运行,但是最近变更算法替换新包的时候有业务异常,然后需要排查日志的时候发现没有日志,打开Jobmanager日志就会一直转圈:

【Flink】Flink任务缺失Jobmanager日志的问题排查_第1张图片

排查过程

页面因为一直转圈,就看了下控制台请求,报错是404,找不到对应的日志文件

【Flink】Flink任务缺失Jobmanager日志的问题排查_第2张图片

【Flink】Flink任务缺失Jobmanager日志的问题排查_第3张图片

检查了一下ApplicationMaster的启动日志,看到在容器启动的时候是有传入相关的log.file参数的,所以基本排除提交命令这块的问题:

echo "Launching container"
exec /bin/bash -c "$JAVA_HOME/bin/java -Xmx3462817376 -Xms3462817376 -XX:MaxMetaspaceSize=268435456 -Dlog.file="/data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.log" -Dlog4j.configuration=file:log4j.properties -Dlog4j.configurationFile=file:log4j.properties org.apache.flink.yarn.entrypoint.YarnApplicationClusterEntryPoint -D jobmanager.memory.off-heap.size=134217728b -D jobmanager.memory.jvm-overhead.min=429496736b -D jobmanager.memory.jvm-metaspace.size=268435456b -D jobmanager.memory.heap.size=3462817376b -D jobmanager.memory.jvm-overhead.max=429496736b 1> /data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.out 2> /data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.err"

【Flink】Flink任务缺失Jobmanager日志的问题排查_第4张图片

因为这个环境早前有把flink从1.13.2升级到1.15.0的情况,又验证了一下版本是不是有问题,使用1.13.2提交一个example任务:

/usr/local/flink/bin/flink run-application -t yarn-application     -Dtaskmanager.numberOfTaskSlots=1    -Djobmanager.memory.process.size=4096m     -Dtaskmanager.memory.process.size=6144m     -Dyarn.provided.lib.dirs="viewfs://nsX/ns7/user/flink_lib" -Dyarn.application.name="Flink-Test"    -Dyarn.flink-dist-jar="viewfs://nsX/ns7/user/flink_lib/flink-dist-1.13.2.jar"  SocketWindowWordCount.jar  --hostname localhost --port 22

你还别说真就打出日志了:

【Flink】Flink任务缺失Jobmanager日志的问题排查_第5张图片

对比了一下AM的的web日志页,发现1.15启动的缺少jobmanager.log文件

【Flink】Flink任务缺失Jobmanager日志的问题排查_第6张图片

【Flink】Flink任务缺失Jobmanager日志的问题排查_第7张图片

依次检查了log4j的相关配置,新旧版本也没有区别,又看了一眼提交命令,提交命令里有一个指定依赖目录的参数yarn.provided.lib.dirs,瞅一眼看看是不是有问题

【Flink】Flink任务缺失Jobmanager日志的问题排查_第8张图片

好嘛,看着1.13.2的依赖目录和1.15.0比差了几个log4j的包,把相应的包补齐到1.15.0的目录里,再提交任务,一切正常:

【Flink】Flink任务缺失Jobmanager日志的问题排查_第9张图片

你可能感兴趣的:(运维,大数据,flink,运维,大数据)