配置
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>10080</value>
<description>日志存储时间</description>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
<description>是否启用日志聚集功能</description>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/tmp/logs</value>
<description>当应用程序运行结束后,日志被转移到的HDFS目录(启用日志聚集功能时有效),如此便可通过appmaster UI查看作业的运行日志。</description>
</property>
<property>
<name> yarn.nodemanager.remote-app-log-dir-suffix</name>
<value>logs</value>
<description>远程日志目录子目录名称(启用日志聚集功能时有效)</description>
</property>
当任务运行结束后,YARN会把appmaster container任务的日志都上传到HDFS的地址中;每个用户的作业在/tmp/logs下都有自己用户名对应的日志,比如,test用户其作业在HDFS上日志路径为/tmp/logs/test/logs/。
现在公司生产环境一周作业日志量1个PB以上,解决防止作业日志占用大量空间的问题只能通过减少日志存储时间了。
网友评论