spark 日志清理问题

jar 包在spark的 standalone 的 cluster 模式下执行

报错如下

2018-06-04 16:08:37 ERROR ClientEndpoint:70 - Exception from cluster was: java.io.IOException: Failed to create directory /usr/lib/spark/work/driver-20180604160832-0001
java.io.IOException: Failed to create directory /usr/lib/spark/work/driver-20180604160832-0001
    at org.apache.spark.deploy.worker.DriverRunner.createWorkingDirectory(DriverRunner.scala:141)
    at org.apache.spark.deploy.worker.DriverRunner.prepareAndRunDriver(DriverRunner.scala:172)
    at org.apache.spark.deploy.worker.DriverRunner$$anon$1.run(DriverRunner.scala:92)

错误原因

spark-submit 提交任务时,会指定jar包的位置,spark会为每一个提交的application生成一个文件夹,默认位于$SPARK_HOME/work目录下,用以存放从HttpFileServer下载下来的第三方库依赖及Executor运行时生成的日志信息。这样容易导致硬盘空间不足

解决方法:

1.暴力删除,使用rm -r删除work文件,再重新创建一个

2.修改spark-env.sh,添加下面的配置

SPARK_WORKER_OPTS=”-Dspark.worker.cleanup.enabled=true
当程序停止后,对应的程序文件夹会被清理掉


猜你喜欢

转载自blog.csdn.net/shuai_fan/article/details/80569365
今日推荐