数据岗位面试题更新 2026-08-05

请描述 Apache Hadoop YARN 的整体架构,并说明其核心组件分别承担哪些职责?

数据技术原理Apache Hadoop YARN

考察说明

考查对 YARN 资源管理架构及其核心组件职责的理解。

回答思路

  1. 【回答框架 1】YARN 采用主从架构,核心是 ResourceManager(RM)与 NodeManager(NM)。RM 负责全局资源管理与调度,NM 负责单节点资源监控与任务执行。
  2. 【回答框架 2】RM 内部包含 Scheduler 与 ApplicationsManager:Scheduler 仅做资源分配,不跟踪应用状态;ApplicationsManager 接受作业提交、协商容器并监控 ApplicationMaster(AM)失败。
  3. 【回答框架 3】每个应用启动一个 AM,AM 向 RM 申请资源(容器),并与 NM 协作启动和监控任务。容器是资源分配的基本单位,封装 CPU、内存等。
  4. 【回答框架 4】客户端提交作业后,RM 分配首个容器启动 AM,AM 再按需申请更多容器执行任务,形成两级调度模型。
  5. 【回答框架 5】整体设计将资源管理与作业控制分离,提升扩展性与多框架共享能力。
  6. 【关键点 1】YARN 主从架构由 RM、NM、AM 和容器组成。
  7. 【关键点 2】RM 负责全局资源调度,NM 负责节点资源管理。
  8. 【关键点 3】AM 是应用级控制器,向 RM 申请资源并监控任务。
  9. 【关键点 4】容器是资源隔离与分配的基本单位。
  10. 【关键点 5】两级调度模型支持多计算框架共存。
  11. 【易错点 1】不要将 RM 的 Scheduler 与作业状态管理混为一谈,Scheduler 不跟踪应用状态。
  12. 【易错点 2】容器不等于进程,它只是资源抽象,实际任务进程由 NM 启动。
  13. 【易错点 3】AM 失败后由 RM 重新启动,但任务状态恢复依赖应用自身机制。