我希望连接到远程集群并执行Spark进程.
所以,根据我的阅读,这是在SparkConf中指定的.
val conf = new SparkConf()
.setAppName("MyAppName")
.setMaster("spark://my_ip:7077")
其中my_ip是我的集群的IP地址.
不幸的是,我拒绝连接.所以,我猜测必须添加一些凭据才能正确连接.我如何指定凭据?它似乎可以用.set(键,值)来完成,但在此没有任何线索.
最佳答案 缺少两件事:
>集群管理器应设置为yarn(setMaster(“yarn”))并将deploy-mode设置为cluster,
您当前的设置用于Spark独立版.更多信息:
http://spark.apache.org/docs/latest/configuration.html#application-properties
>此外,您需要从群集中获取yarn-site.xml和core-site.xml文件并将它们放在HADOOP_CONF_DIR中,以便Spark可以获取纱线设置,例如主节点的IP.更多信息:http://theckang.com/2015/remote-spark-jobs-on-yarn/
顺便说一句,如果你使用spark-submit提交作业,这将有效,编程实现它更复杂,并且只能使用非常难以远程设置的yarn-client模式.