如何在Azure Spark集群通过Apache Livy设置spark.driver.extraClassPath?
给Apache Livy提交的Spark作业添加配置
没问题,要给通过Livy提交的Spark作业加自定义配置很简单——你只需要在POST请求的JSON参数里新增conf字段,把需要的Spark配置以键值对形式放进去就行,这些配置最终会传递给底层的SparkSubmit命令,和直接用spark-submit --conf参数的效果完全一致。
修改后的提交命令示例
比如你要调整executor资源、指定YARN队列,修改后的curl命令如下:
curl -X POST --data '{ "file": "/home/xxx/lib/MyJar.jar", "className": "org.springframework.boot.loader.JarLauncher", "conf": { "spark.executor.memory": "4g", "spark.executor.cores": 2, "spark.yarn.queue": "my-priority-queue", "spark.driver.memory": "2g" } }' -H "Content-Type: application/json" localhost:8998/batches
关键注意点
- 所有你在
spark-submit里用--conf设置的参数,都可以放到conf对象中,格式统一为"配置项": "对应值" - 如果需要添加更多配置,直接在
conf对象里继续追加键值对即可 - 提交后可以通过Livy的批次状态接口(比如
GET localhost:8998/batches/{你的批次ID})查看配置是否生效,也可以去YARN控制台查看Spark应用的详情确认
内容的提问来源于stack exchange,提问作者moun




