Yarn 是否根据我们在 spark-submit 命令中传递的执行程序数量为 application master 分配一个容器

Does Yarn allocates one container for the application master from the number of executors that we pass in our spark-submit command

假设我在 yarn-client 模式下提交 Spark 应用程序。在 Spark 提交中,我将 --num-executors 作为 10 传递。当客户端将这个spark应用提交给resourceManager时,

资源管理器是否从 --num-executors(10) 中为应用程序主进程分配一个执行器容器,其余 9 个将分配给实际的执行器?

是给application master分配一个新容器还是给executor单独分配10个容器?

--num-executors 是向集群管理器(也可能是 Hadoop YARN)请求该数量的执行程序。这是 Spark 的要求。

(YARN 应用程序的)应用程序管理器只是 YARN 的一个东西。

有可能Spark应用也可以是YARN应用。在这种情况下,Spark 应用程序获得 10 个容器和 1 个用于 AM 的额外容器。