我正在运行一个火花独立群集,其中有3个节点。一个是主人,另外两个是工人。我在全部三个位置的/home/bizruntime/***.jar的所有三个节点中复制了作业,并且当我使用主服务器中的spark-submit提交作业时,作业正在运行。Spark Launcher无法触发Spark Job?
但是我的集群处于远程位置,每次都无法访问主节点终端。所以我想用Spark Launcher来触发我的笔记本电脑这个Windows机器的工作。但是当我在我的笔记本电脑上在Eclipse中运行我的spark启动程序时,它会启动一个驱动程序,我可以在Spark UI中看到它,但是它会给出错误。当我在日志中检查错误时,是因为没有在节点中找到jar。
我在appResource()函数中给出的路径Spark启动器是/home/bizruntime/***.jar这个。但他们在$ Eclipse_Worksapce /家庭/ bizruntime搜索JAR/***。罐子
我的问题是如何给它绝对路径,而不$ Eclipse_Worksapce。
package com.biz.Remote_Start;
import java.io.IOException;
import org.apache.spark.launcher.SparkAppHandle;
import org.apache.spark.launcher.SparkLauncher;
/**
* Hello world!
*
*/
public class App {
public static void main(String[] args) {
try {
Process handle = new SparkLauncher()
.setAppResource("home/bizruntime/Read_from_ADL-0.0.1-SNAPSHOT.jar")
.setMainClass("com.biz.Read_from_ADL.App")
.setMaster("spark://192.168.1.154:7077")
.setDeployMode("cluster")
.launch();
handle.waitFor();
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}
出来的任何进一步的探索,我在你的代码中看到一个错字。 ho ** M ** e或ho ** N ** e? – Trompa
它的家@Trompa –
我被告知......你在截图上看到它的磨刀石,对吧? – Trompa