YARN可以抢占Spark驱动程序吗?

问题描述 投票:0回答:1

任何人都可以澄清,YARN是否可以抢占Spark驱动程序,因为应用程序消耗的资源超过了其队列允许的资源?

此问题来自于产品集群上的场景:

  1. CDH 5.12,Hadoop 2.6.0,使用了公平的调度程序
  2. 队列A = 50%,队列B = 25%,队列C = 25%
  3. 两个应用程序,例如app1和app2在队列B中运行,并且耗尽了所有群集资源。
  4. 一段时间后,app3在队列A中启动并声明其资源
  5. app1和app2杀死了他们的一些执行器(至少我看到了ERROR | SIGTERM handler | org.apache.spark.executor.CoarseGrainedExecutorBackend | RECEIVED SIGNAL TERM
  6. app1打印有关ApplicationMaster死亡的错误消息:ERROR | SIGTERM handler | org.apache.spark.deploy.yarn.ApplicationMaster | RECEIVED SIGNAL TERM。 NM日志只是说驱动程序容器被杀死:Stopping container with container Id: app1_driver_containerId

我在文档中找不到任何证据可以证明RM可以杀死应用程序母版。 Docs说,它礼貌地要求master释放资源,而我却没有释放它们,然后强行杀死了容器。它可以杀死AM吗?

hadoop apache-spark yarn
1个回答
0
投票

简短的回答是,尽管有添加故障单的标签以避免https://issues.apache.org/jira/browse/YARN-9537

© www.soinside.com 2019 - 2024. All rights reserved.