我在kubernetes上使用spark-on-k8s-operator运行了一个spark job。这个job通常需要不到5分钟的时间来完成,但有时我会遇到一个job卡住的问题,因为我仍然在调查执行器丢失。
我如何在Spark中指定一个超时,以使驱动程序在执行超过指定的超时时杀死所有的执行器和它自己?
我在kubernetes上使用spark-on-k8s-operator运行了一个spark job。这个job通常需要不到5分钟的时间来完成,但有时我会遇到一个job卡住的问题,因为我仍然在调查执行器丢失。
我如何在Spark中指定一个超时,以使驱动程序在执行超过指定的超时时杀死所有的执行器和它自己?
1条答案
按热度按时间smdnsysy1#
spark.scheduler.excludeOnFailure.unschedulableTaskSetTimeout
在中止无法调度的TaskSet之前等待获取新执行器并调度任务的超时时间(以秒为单位),因为由于任务失败而排除了所有执行器。
从https://spark.apache.org/docs/latest/configuration.html开始
据我所知,Spark helm图表不提供
spark.scheduler.excludeOnFailure.unschedulableTaskSetTimeout
配置选项请参阅https://github.com/GoogleCloudPlatform/spark-on-k8s-operator/blob/master/charts/spark-operator-chart/README.md