当 Spark 作业托管在 Jboss 上并尝试连接到 master 时,调用 RpcHandler #receive() 以获取单向消息时出错

Sna*_*a15 5 java jboss apache-spark

部署在 Jboss 服务器上时,我无法连接到 master 上的 spark

我有一个使用 Java 和 Spark API 设计的应用程序,用于将数据加载到 oracle 数据库。我已经在 J​​boss 上部署了这个应用程序,它在我的本地 master spark session 上运行良好,但是当我尝试将我的 spark.master 更改为集群模式并从我的本地访问 url 时,它没有连接到 master。我总是看到 - 加载成员文件时发生错误:java.net.BindException:无法分配请求的地址:服务 'sparkDriver' 重试 16 次后失败(在随机空闲端口上)!考虑将服务“sparkDriver”的适当绑定地址(例如 SparkDriver 的 spark.driver.bindAddress)显式设置为客户端(本地)上的正确绑定地址和错误 TransportRequestHandler: Error while invoking RpcHandler

receive() 用于单向消息。

java.io.InvalidClassException: org.apache.spark.rpc.netty.NettyRpcEndpointRef; l 本地类不兼容:stream classdesc serialVersionUID = 6257082371135760434 - 主机上的这个错误。我的本地和主机上都有相同的版本(spark 2.4.2 & Hadoop 2.7、Scala 2.12.8 和 sparkcore.2.8.0 在我的 pom.xml 中)。当我试图查找此错误时,我才知道存在版本不匹配,但我没有。有人可以帮忙吗?

创建 sparksession -

sparkSession = new SparkSession.Builder().master("spark://ip.addresss:7077").config("spark.submit.deployMode","cluster").appName("Java JDBC Spark").config("spark.driver.bindAddress","ip.addresss").getOrCreate();
Run Code Online (Sandbox Code Playgroud)

Shy*_*yam 0

这是因为您用来创建 Spark 会话的 Spark 配置文件。就我而言,当我纠正同样的问题时,它起作用了。