Oozie工作流AM启动数及YARN资源超限问题咨询
问题解答
关于队列AM资源占用的疑问
你的猜测正确,Queue AM Resource Usage = <memory:4096, vCores:1>中的4096MB确实是Oozie Launcher AM占用的资源。Oozie工作流启动时,会先拉起一个Launcher AM负责协调整个工作流的执行,它默认占用的内存通常为4096MB。
关于AM资源限制与请求的疑问
- 你的理解完全正确:队列层面的AM资源总限制为12288MB,当前用户在该队列下的AM资源限制为8192MB。YARN的队列资源限制是全局约束,用户级限制是对单个用户在该队列下可使用的AM资源的额外限制。
- 8192MB的AM请求是Spark作业本身发起的。Spark on YARN模式下,Spark作业需要专属的Application Master管理任务执行,该请求是单个Spark AM的资源需求,不会生成两个4096MB的AM。
Oozie工作流中的Application Master数量
Oozie工作流生成的AM数量取决于动作类型:
- 固定存在一个Oozie Launcher AM,负责整个工作流的调度与动作执行协调。
- 每个需在YARN上独立运行的动作会生成对应AM:
- Spark动作会启动一个Spark AM
- 若错误分支的Shell动作配置为YARN模式执行,会额外启动一个Shell动作对应的AM
- 邮件通知动作属于Oozie轻量动作,不会生成额外AM
你的场景中,正常运行时会有2个AM(Oozie Launcher AM + Spark AM);若触发错误分支的Shell动作,会再增加1个Shell动作的AM。
内容的提问来源于stack exchange,提问作者SD_
相关产品推荐
相关产品推荐

