YARN JOB HISTORYRI日志故障: Aggregation may not be complete
1 运行的spark job和MR ,HIVE,flink都无法查看yarn容器运行日志。查看yarn job历史服务器运行日志,发现如下错误信息:
yarn job history 根据如下提示信息,可以知道是哪个节点。如下为hadoop002节点。
job history进程日志信息位于: /var/log/hadoop-mapreduce/hadoop-cmf-yarn-JOBHISTORY-hadoop001.log.out
2 网上查看的信息,基本上是 将如下配置路径恢复为如下默认值。
我查看自己的配置,本身这样,没有任何修改。
3 查看上述 /var/log/hadoop-mapred/hadoop-cmf-yarn-JOBHISTORY-hadoop001.log.out日志信息,发现如下错误:
mapred账号无 /tmp/logs目录的读写权限。
检查发现/tmp/logs 的属主变成了hadoop. 改回mapred,
再次运行,还是无法解决问题。
从上述提示信息hadoop002 节点管理器日志, 发现报错信息
/var/log/hadoop-yarn/hadoop-cmf-yarn-NODEMANAGER-hadoop000.log.out
给所有用户777权限。
郁闷的是,按照上述方式修改后还是无法解决问题。
没办法,按照https://cloud.tencent.com/developer/article/1585727 文章提示,
重新创建日志聚合路径/tmp/logs,不过看到提示信息/tmp/logs已经存在了(HDFS路径), 手动删除,再重新创建,重启yarn,问题解决。 不清楚之前的步骤是否没有重启yarn导致问题没解决。反正现在OK了。
4 说明下:
上述路径 yarn.nodemanager.remote-app-log-dir参数,配置了Yarn application开启日志聚合时,指定的日志聚合路径。
一旦应用程序跑完,相关日志会立即被删除,并被转移到聚合路径下。
如果没有权限,导致日志无法查看。