5. yarn

一. yarn产生背景:


  1. mapreduce 1.0的问题:
    1)JobTracker性能问题 , 2)JobTracker单点问题  ,3)只支持mapreduce一个计算框架
 
  2. 资源利用率:


3. 运维成本与数据共享:
   运维成本
   如果采用“一个框架一个集群”的模式,则可能需要多个管理员管理这些集群,进而增加运维成本,共享模式通常需要少数管理员即可完成多个框架的统一管理
   数据共享
   随着数据量的暴增,跨集群间的数据移动不仅需花费更长的时间,且硬件成本也会大大增加,而共享集群模式可让多种框架共享数据和硬件资源,将大大减小数据移动带来的成本

4. 总结:



二. yarn基本架构:



ResourceMannager
  • 整个集群只有一个(起ha,有backup),负责集群资源的统一管理和调度
  • 功能:
    • 处理客户端请求
    • 启动/监控ApplicationMaster
    • 监控NodeManager 
    • 资源分配与调度
NodeManager
  • 整个集群有多个,负责单节点资源管理和使用
  • 功能:
    • 单个节点上的资源管理和任务管理    
    • 处理来自ResourceManager的命令   
    • 处理来自ApplicationMaster的命令
ApplicationMaster 
  • 每个应用有一个,负责应用程序的管理
  • 功能:
    • 数据切分
    • 为应用程序申请资源,并进一步分配给内部任务
    • 任务监控与容错 
Container
  • 对任务运行环境的抽象
  • 描述一系列信息 :
    • 任务运行资源(节点、内存、CPU)
    • 任务启动命令
    • 任务运行环境 

三. yarn运行过程:







原文地址:https://www.cnblogs.com/51runsky/p/7cd2023db55ecd4e5c3de43315cd2bb7.html