`

Hadoop YARN各个组件和流程的学习

 
阅读更多
一、基本组成结构

* 集群唯一的ResourceManager
* 每个任务对应的ApplicationMaster
* 每个机器节点上的NodeManager
* 运行在每个NodeManager上针对某个任务的Container


1. ResourceManager
负责对各个 NodeManager 上的资源进行统一管理和调度。

包含两个组件:
* Scheduler:调度器根据容量、队列等限制条件(如每个队列分配一定的资源,最多执行一定数量的作业等),将系统中的资源分配给各个正在运行的应用程序
* Applications Manager:应用程序管理器负责管理整个系统中所有应用程序,包括应用程序提交、与调度器协商资源以启动ApplicationMaster、监控ApplicationMaster运行状态并在失败时重新启动它等

2. NodeManager
NM 是每个节点上的资源和任务管理器。
* 定时地向 RM 汇报本节点上的资源使用情况和各个Container 的运行状态
* 接收并处理来自AM 的Container启动/ 停止等各种请求

3. ApplicationMaster
用户提交的每个应用程序均包含一个AM,主要功能包括:
* 与 RM 调度器协商以获取资源(用 Container 表示)
* 将得到的任务进一步分配给内部的任务
* 与 NM 通信以启动 / 停止任务
* 监控所有任务运行状态,并在任务运行失败时重新为任务申请资源以重启任务

4. Container
Container 是 YARN 中的资源抽象, 它封装了某个节点上的多维度资源, 如内存、CPU、磁盘、网络等,当AM 向RM 申请资源时,RM 为AM 返回的资源便是用Container表示的。

二、YARN 的工作流程
1.用户向 YARN 中提交应用程序, 其中包括 ApplicationMaster 程序、启动ApplicationMaster 的命令、用户程序等。

2.ResourceManager 为该应用程序分配第一个Container,并与对应的Node-Manager 通信,要求它在这个Container中启动应用程序的ApplicationMaster。

3.ApplicationMaster 首先向ResourceManager 注册,这样用户可以直接通过ResourceManage 查看应用程序的运行状态,然后它将为各个任务申请资源,并监控它的运行状态,直到运行结束,即重复步骤4~7。

4.ApplicationMaster 采用轮询的方式通过RPC 协议向ResourceManager 申请和领取资源。
一旦ApplicationMaster 申请到资源后,便与对应的NodeManager 通信,要求它启动任务。
NodeManager 为任务设置好运行环境(包括环境变量、JAR 包、二进制程序等)后,将任务启动命令写到一个脚本中,并通过运行该脚本启动任务。

5.各个任务通过某个RPC 协议向ApplicationMaster 汇报自己的状态和进度,以让ApplicationMaster 随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。在应用程序运行过程中,用户可随时通过RPC向ApplicationMaster 查询应用程序的当前运行状态。

6.应用程序运行完成后,ApplicationMaster 向ResourceManager 注销并关闭自己。

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Hadoop的yarn详解

    通过本书的学习,读者可以全面掌握Hadoop YARN的架构设计和实现原理,不仅理解各个组件的功能和工作方式,还能深入到源代码层面,从而在实际工作中更加高效地部署和优化YARN集群。此外,本书还通过对比分析了不同...

    Hadoop YARN 基本架构和发展趋势

    在Hadoop YARN的基本架构中,核心组件包括ResourceManager(RM)、NodeManager(NM)和ApplicationMaster(AM)。ResourceManager是集群的中心控制器,负责接收客户端请求,启动和监控ApplicationMaster,监控...

    Apache Hadoop YARN:Moving beyond MapReduce and Batch Processing with Hadoop 2

    Apache Hadoop YARN是Hadoop 2.0核心组件之一,它代表了Hadoop技术的重大进步,超越了原有的MapReduce和批处理的局限性。Hadoop YARN权威指南是一本专门介绍YARN架构及其功能的书籍。首先,我们需要了解Hadoop YARN...

    HadoopYARN权威指南

    YARN(Yet Another Resource Negotiator),是Apache Hadoop生态系统中的核心组件之一,负责管理和调度集群资源,使得大数据处理更加高效和灵活。下面将详细阐述YARN的主要概念、工作原理及其在实际应用中的重要性。...

    Hadoop2.0YARN

    Hadoop 2.0 YARN,全称Yet Another Resource Negotiator,是Apache Hadoop生态系统中的一个核心组件,它在Hadoop 1.0 MapReduce的基础上进行了重大改进,旨在解决资源管理和调度的问题,以提高分布式计算的效率和...

    03_Hadoop MapReduce与Hadoop YARN.zip

    在大数据处理领域,Hadoop MapReduce和YARN是两个至关重要的组件,它们构成了Apache Hadoop生态系统的核心部分。MapReduce是一种编程模型,用于处理和生成大规模数据集,而YARN(Yet Another Resource Negotiator)...

    Apache Hadoop YARN_Apachehadoop_

    Apache Hadoop 是一个开源的分布式计算框架,主要由两个核心组件构成:HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)。本教程将深入探讨YARN,它是Hadoop生态系统中的资源管理...

    Hadoop技术内幕深入解析YARN架构设计与实现原理PDF

    《Hadoop技术内幕深入解析YARN架构设计与实现原理》这本书深入探讨了Hadoop生态系统中的核心组件YARN(Yet Another Resource Negotiator),它是Hadoop 2.x版本中的关键改进,旨在解决早期Hadoop MapReduce的资源...

    05.hadoop上课笔记之hadoop5mapreduce和yarn

    Hadoop.MapReduce 和 YARN 笔记 本节笔记主要介绍了 Hadoop.MapReduce 和 YARN 的基本概念、组成部分、工作原理以及实践应用。 一、MapReduce 概念 MapReduce 是 Hadoop 的核心组件之一,负责处理大规模数据。...

    基于hadoop监控的grafana模板

    本主题聚焦于如何利用Grafana来监控Hadoop生态系统中的各个组件,提高系统的可观察性和管理效率。 首先,我们来看Hadoop生态组件: 1. HDFS (Hadoop Distributed File System): 包括NameNode (NN) 和DataNode (DN)...

    Hadoop技术内幕:深入解析YARN架构设计与实现原理

    根据提供的文件信息,我们可以总结出一系列与Hadoop YARN相关的重要知识点...综上所述,本书是深入了解Hadoop YARN不可或缺的参考资料,对研究、应用和优化Hadoop生态系统中YARN的各个方面提供了全面的技术支持和指导。

    董西城-Hadoop技术内幕-深入理解YARN架构设计与实现原理----带完整书签--完整版共394页

    《董西城-Hadoop技术内幕-深入理解YARN架构设计与实现原理》是一部全面解析Hadoop生态系统中YARN(Yet Another Resource Negotiator)核心组件的专业著作。这本书详细介绍了YARN的架构、设计思想以及实现机制,旨在...

    hadoop依赖包

    Hadoop是Apache软件基金会开发的一个开源分布式计算框架,它的核心设计是基于两个主要组件:HDFS(Hadoop Distributed File System)和MapReduce。HDFS是一个分布式文件系统,它允许存储和处理海量数据;而MapReduce...

    Hadoop-2.8.1+Zookeeper-3.4.6(HDFS,YARN HA)部署指南

    - **Hadoop**:在主节点(hadoop001)上执行`$HADOOP_HOME/sbin/start-all.sh`,并在副节点(hadoop002)上执行`$HADOOP_HOME/sbin/yarn-daemon.sh start resourcemanager`以及`$HADOOP_HOME/sbin/mr-jobhistory-daemon....

    hadoop权威指南4和源码

    它允许在廉价硬件上处理和存储大量数据,主要由两个核心组件构成:HDFS(Hadoop Distributed File System)和MapReduce。 2. **HDFS**:HDFS是一种高度容错性的分布式文件系统,能够自动将数据复制到多个节点,确保...

    Hadoop平台详细搭建过程

    Hadoop集群搭建完成后,需要按照特定的顺序启动各个服务,比如先启动NameNode和DataNode,然后启动YARN。同时,需要掌握使用Hadoop自带的监控工具来检查集群的健康状态和资源使用情况。 9. Hadoop应用开发: 当...

    Hadoop学习总结

    总结来说,Hadoop的学习涵盖了HDFS的基础概念、数据读写流程,以及Map-Reduce模型的理解和应用。掌握这些知识点,不仅能够帮助你理解和操作Hadoop系统,也为进一步探索大数据处理和分析打下坚实基础。在实践中不断...

Global site tag (gtag.js) - Google Analytics