问题正是标题中指定的内容。
我想在192.168.1.1
上启动我的驱动程序,但实际上当我将我的火花应用程序提交给纱线时,纱线将选择随机机器作为我的应用程序的驱动程序。
我可以在纱线群集模式下手动选择驱动程序吗? 这个重复的问题不适用于纱线。
答案 0 :(得分:2)
像Yaron之前回复的那样,YARN作为主人有两种选择:
如果选择群集模式,则根据纱线中的资源可用性,让纱线管理生成驱动程序的位置。如果选择客户端模式,则会在运行spark-submit的服务器上的客户端进程中生成驱动程序。
因此,您的问题的解决方案应该是运行命令
spark-submit --master yarn --deploy-mode client ...
在您希望驱动程序打开的计算机上。
确保:
答案 1 :(得分:0)
如果您想使用特定计算机作为驱动程序,则应使用YARN Client mode
SPARK docs - launching spark on yarn:
有两种部署模式可用于启动Spark YARN上的应用程序。在集群模式下,Spark驱动程序在内部运行 由YARN在集群上管理的应用程序主进程, 并且客户端可以在启动应用程序后离开。在客户端 模式,驱动程序在客户端进程和应用程序中运行 master仅用于从YARN请求资源。
在YARN Client
模式下 - 驱动程序在客户端进程中运行(您可以选择驱动程序计算机,它是执行spark-submit命令的计算机)
在YARN Cluster
模式下 - Spark驱动程序在应用程序主进程内运行,该进程由群集上的YARN管理。