apache-spark - 如何正确设置 spark.driver.log.dfsDir 参数?
问题描述
使用 Spark 3.1.1
如何正确设置spark.driver.log.dfsDir
?
我的spark-defaults.conf
:
spark.eventLog.dir hdfs://namenode:9000/shared/spark-logs
spark.history.fs.logDirectory hdfs://namenode:9000/shared/spark-logs
spark.history.fs.update.interval 30s
spark.history.ui.port 8099
spark.history.fs.cleaner.enabled true
spark.history.fs.cleaner.maxAge 30d
spark.driver.log.persistToDfs.enabled true
spark.driver.log.dfsDir hdfs://namenode:9000/shared/driver-logs
在我的 spark 驱动程序上使用 spark-submit 时出现以下错误。
21/05/19 15:05:34 ERROR DriverLogger: Could not persist driver logs to dfs
java.lang.IllegalArgumentException: Pathname /home/app/odm-spark/hdfs:/namenode:9000/shared/driver-logs from /home/app/odm-spark/hdfs:/namenode:9000/shared/driver-logs is not a valid DFS filename.
为什么它将应用程序位置作为 URL 的前缀?
解决方案
设置它的正确方法是:
spark.driver.log.dfsDir /shared/driver-logs