YARN UI看不了app 日志2
app 日志查看异常
Last updated
Was this helpful?
app 日志查看异常
Last updated
Was this helpful?
查看日志,出现如下错误提示
同时发现正在运行app 日志是可以查看的
正在运行的app 日志可见,也就是本地日志是有的,通过yarn.nodemanager.log-dirs 配置目录我们也确认了正在运行的app 日志存在 所以我们猜测就是日志聚合的时候出现问题。
通过container ID 到rm 主节点查询container 运行到NM,再通过container ID查询相关日志,得到如下异常信息
通过对异常进一步分析,发现这个异常应该不影响日志聚合。同时我们也在hdfs 查到了聚合之后对日志
结合上面异常情况,我们考虑日志聚合成功,但是查询日志出现问题。有可能是通过hdfs 查询日志过程中,出现连接异常 Operation category READ is not supported in state standby
最有可能是 historyserver 异常
打开historyserver 日志, /data/var/log/hadoop-mapreduce/mapred]# vim mapred-mapred-historyserver-tbds-9-37-23-115.log 获取如下异常信息
从问题提示看应该是客户端和服务端用的认证方式不一样,通过查看historyserver 认证配置(hadoop-mapreduce]# vim conf/core-site.xml)如下图:
可以看到客户端使用的是 simple 认证,而namenode 配置的认证方式是tbds
将client的认证方式与namenode 的认证方式保持一致(修改配置需要重启)。
timelineserver 和 JobHistoryServer 是两个独立的进程,timelineserver 的入口类是ApplicationHistoryServer。JobHistoryServer 入口类是org.apache.hadoop.mapreduce.v2.hs.JobHistoryServer
官网将 JobHistoryServer 作为timelineServer 的一部分,我理解的原因是yarn ui 入口是 timelineServer ,要查询app 日志,首先从timelineServer 获取app详情,其中有container的日志链接,而具体的日志内容目前依然还是从 JobHistoryServer 获取。
yarn ui 入口是 timelineServer ,要查询app 日志,首先从timelineServer 获取app详情,其中有container的日志链接,而具体的日志内容目前依然还是从 JobHistoryServer 获取,JobHistoryServer 通过访问hdfs 拉取聚合之后的日志信息
查看conf/yarn-site.xml 文件 yarn.log.server.url 配置属性 JobHistoryServer 在tbds 可以看到