Spark配置jobhistory日志定时清理

2020-07-27 11:05:44 | 编辑

之前一篇文章《spark on yarn日志配置及webUI界面日志查看》详细说明了spark日志怎么配置怎么查看,无论选择存储在哪里,时间一长,大量的任务日志会占用大量的空间,所以我们要定时清理,只保存最近一段时间的日志。

spark history配置参数官方说明:http://spark.apache.org/docs/latest/monitoring.html#spark-history-server-configuration-options

1.配置spark-history-server定时清理

在启动spark-history-server的spark client端配置

spark-defaults.conf

spark.history.fs.cleaner.enabled = true #是否开启清理,默认false 一定要设置为true,否则磁盘会占满
spark.history.fs.cleaner.interval = 1d #多久清理一次
spark.history.fs.cleaner.maxAge = 7d #保留多久的数据
spark.history.retainedApplications  30  #默认50 缓存的app信息个数,不要太大。否则很占内存

 

2.配置清理yarn 聚合日志列表清理

yarn-site.xml

1.yarn.log-aggregation-enable

参数说明:是否启用日志聚合功能,日志聚合开启后保存到HDFS上。

默认值:false

2.yarn.log-aggregation.retain-seconds

参数说明:聚合后的日志在HDFS上保存多长时间,单位为s。

默认值:-1(不启用日志聚合),例如设置为86400,24小时

3.yarn.log-aggregation.retain-check-interval-seconds

参数说明:删除任务在HDFS上执行的间隔,执行时候将满足条件的日志删除(超过参数2设置的时间的日志),如果是0或者负数,则为参数2设置值的1/10,上例值在此处为8640s。

默认值:-1

4.yarn.nodemanager.log.retain-seconds

参数说明:当不启用日志聚合此参数生效,日志文件保存在本地的时间,单位为s

默认值:10800

5.yarn.nodemanager.remote-app-log-dir

参数说明:当应用程序运行结束后,日志被转移到的HDFS目录(启用日志聚集功能时有效),修改为保存的日志文件夹。

默认值:/tmp/logs

6.yarn.nodemanager.remote-app-log-dir-suffix

参数说明:远程日志目录子目录名称(启用日志聚集功能时有效)。

默认值:logs 日志将被转移到目录${yarn.nodemanager.remote-app-log-dir}/${user}/${thisParam}下

 

 

登录后即可回复 登录 | 注册
    
关注编程学问公众号