一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式操作系统平台,而MapReduce任务相当于其中的应用程序。

一、Yarn基本架构

1.构成

  • ResourceManager
    • 处理客户端请求
    • 监控NodeManager
    • 启动和监控ApplicationMaster
    • 资源的分配和调度
  • NodeManager
    • 管理单个节点上的资源
    • 处理来自ResourceManager的命令
    • 处理来自ApplicationMaster的命令
  • ApplicationMaster
    • 数据切分
    • 为应用程序申请资源,并分配给对应的Map任务和Reduce任务
    • 任务的监控和容错
  • Container
    • Yarn中的资源抽象,封装一个节点上的多维度资源,如内存、cpu、磁盘、网络等