hadoop YARN主要思想和架构

深入解析YARN系统如何通过分离资源管理与作业管理来提高可用性和性能,详细介绍ResourceManager、NodeManager、ApplicationMaster及Container的作用与交互流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

抽空继续看hadoop相关资料,记录心得。原创喔,转载请注明本文链接,谢谢。


众所周知,因为hadoop1.X 中凸显的问题,尤其是JobTracker单点瓶颈,单点风险的问题,YARN的主要设计思路就是将JobTracker承担的两大块任务(集群资源管理和作业管理)进行分离。其中集群资源管理由全局的资源管理器(ResourceManager)管理;作业管理由每个作业的应用主体(ApplicationMaster 图中简写为App Mstr)管理。然后TaskTracker演化成节点管理器(NodeManager)。结构图如下:


    1)资源管理器 ResourceManager

     根据功能不同将资源管理器分成2个组件:

        a)调度器(Scheduler)

              根据集群中容量、队列和资源等限制,将资源分配给各个正在运行的应用。它只负责资源的分配,它根据各个应用的资源需求和集群各个节点的Container(容器是集群节点将自身内存、CPU、磁盘等资源封装在一起的抽象概念,在YARN第一个版本中,只实现了内存分片)进行调度。

        b)应用管理器(ApplicationManager)

              负责接收作业,与Scheduler协商获取第一个资源容器(Container)用于执行应用的任务主体;通过应用主体(ApplicationMaster)定期发送的“heartbeat”来监督它们,保证其可用性,如果ApplicationMaster失败就为重启失败的ApplicationMaster分配容器,并重启它。

    2)节点管理器  NodeManager

         负责启动应用的Container,监控Container的资源使用情况,保证已启动的Container不会使用超过分配的资源量,并把这些信息汇报给Scheduler。它为task构建容器环境,包括二进制可执行文件,jars等。还为所在的节点提供一个管理本地存储资源的简单服务。

    3)应用主体 ApplicationMaster

        与Scheduler协商资源;

        与NodeManager合作,在合适的Container中运行对应的组件task,并监控这些task执行;

        如果Container出现故障,重新向Scheduler申请其他资源;

        计算应用所需的资源量,并转化成调度器可识别的协议信息包;

        在ApplicationMaster出现故障后,会负责重启它,但由ApplicationMaster自己从之前保存的应用程序执行状态中恢复。

    4)资源容器 Container

        在YARN中,系统资源的组织形式是将节点上得可用资源分割,每一份通过封装组织成系统的一个资源单元,即Container,它的职责就是运行、保存或传输ApplicationMaster提交的作业或需要存储和传输的数据。


YARN系统可用性保证:

YARN最大程度的保证了各个组件的可用性,保证能使其在失败之后迅速恢复并提供服务。

1)ResourceManager在运行服务过程中,使用ZooKeeper保存资源管理的状态,包括ApplicationManager进程情况、队列定义、资源分配情况、NodeManager情况等信息。在其失败后,根据ZooKeeper保存的状态信息中进行自我恢复。

2)ResourceManager中的ApplicationManager负责监控MapReduce ApplicationMaster的执行情况。在发生失败后,ApplicationManager重启ApplicationMaster,再由ApplicationMaster恢复某个特定的MapReduce作业。






















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值