Scala Spark 连接到远程集群
Scala Spark connect to remote cluster
我希望连接到远程集群并执行 Spark 进程。
所以,据我所知,这是在 SparkConf 中指定的。
val conf = new SparkConf()
.setAppName("MyAppName")
.setMaster("spark://my_ip:7077")
其中 my_ip 是我集群的 IP 地址。
不幸的是,我被拒绝连接。所以,我猜必须添加一些凭据才能正确连接。我将如何指定凭据?似乎可以用 .set(key, value) 来完成,但没有任何线索。
缺少两件事:
- 集群管理器应设置为
yarn
(setMaster("yarn")),部署模式应设置为 cluster
,
您当前的设置用于独立的 Spark。更多信息在这里:
http://spark.apache.org/docs/latest/configuration.html#application-properties
- 另外,你需要从集群中获取
yarn-site.xml
和core-site.xml
文件并将它们放在HADOOP_CONF_DIR
中,这样Spark就可以获取yarn设置,比如IP你的主节点。更多信息:https://theckang.github.io/2015/12/31/remote-spark-jobs-on-yarn.html
顺便说一句,如果您使用 spark-submit
提交作业,这将有效,以编程方式实现它更复杂,并且只能使用 yarn-client
模式,远程设置很棘手。
- 为了使用 spark 在 yarn 中启动应用程序,您应该为
spark-submi
t 命令使用 --master yarn
或在应用程序配置初始化中使用 setMaster("yarn")
。
- 如果要从远程主机发送
"spark-submit"
命令,可以使用popuar Java Secure Channel (JSCH)当然应该在集群上正确设置环境参数
我希望连接到远程集群并执行 Spark 进程。 所以,据我所知,这是在 SparkConf 中指定的。
val conf = new SparkConf()
.setAppName("MyAppName")
.setMaster("spark://my_ip:7077")
其中 my_ip 是我集群的 IP 地址。 不幸的是,我被拒绝连接。所以,我猜必须添加一些凭据才能正确连接。我将如何指定凭据?似乎可以用 .set(key, value) 来完成,但没有任何线索。
缺少两件事:
- 集群管理器应设置为
yarn
(setMaster("yarn")),部署模式应设置为cluster
, 您当前的设置用于独立的 Spark。更多信息在这里: http://spark.apache.org/docs/latest/configuration.html#application-properties - 另外,你需要从集群中获取
yarn-site.xml
和core-site.xml
文件并将它们放在HADOOP_CONF_DIR
中,这样Spark就可以获取yarn设置,比如IP你的主节点。更多信息:https://theckang.github.io/2015/12/31/remote-spark-jobs-on-yarn.html
顺便说一句,如果您使用 spark-submit
提交作业,这将有效,以编程方式实现它更复杂,并且只能使用 yarn-client
模式,远程设置很棘手。
- 为了使用 spark 在 yarn 中启动应用程序,您应该为
spark-submi
t 命令使用--master yarn
或在应用程序配置初始化中使用setMaster("yarn")
。 - 如果要从远程主机发送
"spark-submit"
命令,可以使用popuar Java Secure Channel (JSCH)当然应该在集群上正确设置环境参数