管理资源以在同一集群上运行多个spark应用程序



我正试图在同一集群上运行两个spark应用程序。YARN是正在使用的资源管理器。我的两个spark应用程序都使用动态分配。

当我启动第一个应用程序时,它会耗尽集群上的所有资源。当我启动第二个应用程序时,YARN不会为其分配任何资源,因为第一个应用程序正在使用这些资源。一旦第一个应用程序完成,那么第二个应用程序就只运行。

同时运行这两个应用程序的方法是什么?我知道我可以在启动每个应用程序之前手动为它们分配特定数量的资源,但这对我来说似乎不是一个好的解决方案。我在AWS EMR上使用Hue/Oozie来运行spark应用程序。理想情况下,我更喜欢这样一种解决方案,即能够为每个应用程序分配最大百分比的集群资源。

您必须以公平的共享调度方式配置YARN(在此处阅读更多信息(。一般来说,Hadoop生态系统是共享系统,根据项目或应用程序的优先级,可以配置YARN,使所有应用程序获得同等优先级,或者公平地共享容器。如果你不配置任何东西,它将进入默认(FIFO(,并基于可用的容器。

相关内容

最新更新