【发布时间】:2014-12-10 13:34:33
【问题描述】:
我有一个 YARN 集群,其中一个主节点运行资源管理器和 2 个其他节点。我能够以“纱线集群”模式从客户端机器提交火花应用程序。有没有办法可以配置集群中的哪个节点启动 Spark 应用程序主节点?
我问这个是因为如果应用程序主节点在主节点中启动它工作正常,但如果它在其他节点中启动我得到这个:
正在重试连接服务器:0.0.0.0/0.0.0.0:8030。
并且该作业被简单地接受并且永远不会运行
【问题讨论】:
我有一个 YARN 集群,其中一个主节点运行资源管理器和 2 个其他节点。我能够以“纱线集群”模式从客户端机器提交火花应用程序。有没有办法可以配置集群中的哪个节点启动 Spark 应用程序主节点?
我问这个是因为如果应用程序主节点在主节点中启动它工作正常,但如果它在其他节点中启动我得到这个:
正在重试连接服务器:0.0.0.0/0.0.0.0:8030。
并且该作业被简单地接受并且永远不会运行
【问题讨论】:
如果您使用的是足够新的 YARN 版本(2.6 或更高版本,根据Spark docs),您可以使用node labels in YARN。
本 Hortonworks 指南介绍了 applying node labels to your YARN NodeManagers。
如果您使用 Spark 1.6 或更新版本,那么this JIRA 增加了对在 Spark 中使用 YARN 节点标签的支持;然后你只需传递spark.yarn.am.nodeLabelExpression 来限制AppMaster 节点的放置,如果你需要它,spark.yarn.executor.nodeLabelExpression 用于执行器放置。
【讨论】: