【发布时间】:2018-09-09 07:39:48
【问题描述】:
我参考了this 链接,对 YARN 的工作原理有了相当的了解。 YARN 能够运行多租户应用程序,例如 MR、Spark 等。
关键点是特定于应用程序的ApplicationMaster (AM)。
当客户端向资源管理器提交作业时,资源管理器如何知道它是什么类型的应用程序(MR、Spark)并因此启动适当的 ApplicationMaster?
谁能帮助 RM 如何知道提交给它的 Job 类型?
编辑:
这个问题是:RM如何知道提交了什么样的Job而不是YARN或MR或Spark之间的任何关系。
RM 收到一个 Job,所以它必须启动第一个 Container 来运行特定于应用程序的 ApplicationMaster,因此 RM 是如何知道向它提交了什么样的 Job?
这是我要问的问题,这与复制的内容不同。
【问题讨论】:
-
这肯定不是真的_“当客户向资源管理器提交作业时”,因为 RM 甚至不处理任何类型的作业。您到底想知道哪些特定于 Apache Spark 的信息?否则,我看不出它与 Spark 有什么关系。请详细说明。
-
我并没有说任何特定于 Spark 或 MR 的内容。我的问题是:RM 怎么知道提交了什么样的工作?它可能是 MR、Spark 或其他任何东西?因为根据提交的Job的类型,启动了对应的Application Master,那么RM怎么知道提交的是什么类型的Job呢。
-
实际上是一个很好的问题,因为 Spark 究竟如何与 YARN 集成?参与这种关系的组件有哪些?
-
@ErnestKiwele:这个问题与您所建议的问题不重复。这个问题说:RM如何知道提交了什么样的Job,可能是MR Job,Spark Job等。
标签: apache-spark hadoop mapreduce hadoop-yarn hadoop2