首页 > 解决方案 > spark-submit 将包添加到工作节点

问题描述

如果我使用spark-submitwith--packages并提供一个 maven 包,该包是添加到工作节点还是仅添加到主节点?

我正在使用--packages参数并指定单个 Maven 依赖项。我已经获得了驱动程序 pod 的外壳,并确认 jar 正在下载到驱动程序。

但是,工作日志正在抛出ClassNotFoundExceptions此依赖项中的类的一部分。我希望依赖于主节点而不是工作节点。

如何将此依赖项添加到工作节点?

标签: apache-sparkspark-submit

解决方案


正如文档中提到的:

https://spark.apache.org/docs/latest/submitting-applications.html

使用 spark-submit 时,应用程序 jar 以及 --jars 选项中包含的任何 jar 将自动传输到集群。--jars 之后提供的 URL 必须用逗号分隔。该列表包含在驱动程序和执行程序类路径中。目录扩展不适用于 --jars。

用户还可以通过使用 --packages 提供逗号分隔的 Maven 坐标列表来包含任何其他依赖项。

是的,jar 将被上传到集群,因此工作节点上的所有 jvm。


推荐阅读