提交到yarn上的application出错,最简单直接的查错方式就是查看log,有时还需分析提交到yarn上的job.jar。
yarn-site.xml中有几个配置项与日志的保存与删除,本地job执行文件的保留与删除有关。若不做配置,日志和job.jar会在application执行结束后被直接删除掉。
yarn.log-aggregation-enable true 执行结束后收集各个container本地的日志
yarn.log-aggregation.retain-seconds 2592000 收集的日志的保留时间,以秒为单位,到时后被删除,保留30天后删除
yarn.log.server.url http://hostname:19888/jobhistory/logs log server的地址
yarn.nodemanager.local-dirs /hadoop/yarn/local 存放application执行本地文件的根目录,执行完毕后删除,按用户名存储
yarn.nodemanager.log-dirs /hadoop/yarn/log 存放application本地执行日志的根目录,执行完毕后删除,按用户名存储
yarn.nodemanager.log.retain-second 604800 日志的保留时间,log aggregation没有enable时,有效
yarn.nodemanager.remote-app-log-dir /app-logs 聚合日志后在hdfs的存放地址
yarn.nodemanager.remote-app-log-dir-suffix logs 集合日志后的存放地址由 ${remote-app-log-dir}/${user}/{thisParam}构成
yarn.nodemanager.delete.debug-delay-sec 600 application执行结束后延迟10min删除本地文件及日志
参考: https://hadoop.apache.org/docs/r2.4.1/hadoop-yarn/hadoop-yarn-common/yarn-default.xml
网友评论