首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >星星之交向驱动程序发送错误的java路径。

星星之交向驱动程序发送错误的java路径。
EN

Stack Overflow用户
提问于 2022-09-08 21:45:27
回答 1查看 107关注 0票数 1

我正在向本地运行的容器式星火集群提交一个作业。火花版本3.2.1。我用的是比纳米的火花筒图像。

这项工作是用scala编写的。我创造了一个“胖罐子”。

现在,当我以客户端模式(--deploy-mode client)将jar提交到集群(从本地容器到容器外部)时,在本地文件系统中提供jar的路径。工作成功完成。

但是,当我切换到集群模式(--deploy-mode cluster)并提供指向上传到s3的jar的链接时,作业就失败了。我收到的错误是:

代码语言:javascript
运行
复制
INFO DriverRunner: Launch Command: "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java" "-cp" "/Users/username/Downloads/spark-3.2.1/conf:/opt/bitnami/spark/jars/*" "-Xmx1024M" "-Dspark.driver.supervise=false" "-Dspark.app.name=CsvToDelta" "-Dspark.jars=linkToS3" "-Dspark.master=spark://localhost:7077" "-Dspark.submit.deployMode=cluster" "-Dspark.submit.pyFiles=" "-Dspark.rpc.askTimeout=10s" "org.apache.spark.deploy.worker.DriverWrapper" "spark://Worker@172.20.0.3:46501" "/opt/bitnami/spark/work/driver-20220908212120-0004/spark-scala-csv-to-delta_2.12-1.0.jar" "CsvToDelta"
spark-worker_1  | 22/09/08 21:22:39 INFO DriverRunner: Killing driver process!
spark-worker_1  | 22/09/08 21:22:39 WARN Worker: Driver driver-20220908212120-0004 failed with unrecoverable exception: java.io.IOException: Cannot run program "/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java" (in directory "/opt/bitnami/spark/work/driver-20220908212120-0004"): error=2, No such file or directory

如您所见,它无法找到java可执行文件。这是因为它试图找到java的位置是不正确的。

"/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java"是java存在于本地(容器外)的地方。在容器中,java存在于不同的路径中:/opt/bitnami/java/bin/java

我不明白为什么spark submit告诉驱动程序(我假设驱动程序正在工人容器上运行)在本地而不是容器有效的位置查找java (为什么spark提交告诉驱动程序在哪里找到java?)是因为在构建胖罐子的方式上有某种配置吗?(不应该是因为相同的jar在客户端模式下工作)

在集群模式下,我的submit命令如下所示:spark-submit --deploy-mode cluster --class "CsvToDelta" --master spark://localhost:7077 'linkToS3Jar'

客户端模式的命令:spark-submit --deploy-mode client --class "CsvToDelta" --master spark://localhost:7077 spark-scala-csv-to-delta_2.12-1.0.jar

EN

回答 1

Stack Overflow用户

发布于 2022-09-17 00:18:29

首先,将所有文件(包括jar)放置到HDFS中,然后运行星火提交集群模式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73655323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档