大数据开发yarn工作流程的细节要点你注意到了吗?
今天继续为大家带来Yarn的知识,都知道细节决定成败,我们在工作中更是格外注意细节问题,一不小心的错误可能都让整个编程运行失败。因此细节知识我们可不能落下,下面就开始本期大数据开发的学习。
一、Yarn基本架构
Yarn在整体上看还是采用了和Hadoop1.x一样的Master/Slave结构(横向扩展混杂Slave/Slave结构),在整个Yarn资源管理系统当中,ResourceManager作为Master,各个节点的NodeManager作为Slave。各个节点上NodeManager的资源由ResourceManager统计进行管理和调度。当应用程序提交后,会有一个单独的Application来对该应用程序进行跟踪和管理,同时该Application还会为该应用程序想Resource申请资源,并要求NodeManager启动该应用程序占用一定资源的任务。下图主要以MR和MPI这两种应用来描述Yarn运行的基本架构:
二、组件基本介绍
1、ResourceManager
ResourceManager是Yarn的核心组件,主要由任务调度器(YarnScheduler)和应用程序管理器(Applications Manager)组成。其主要功能是负责系统资源的管理和分配。
任务调度器(YarnScheduler)
任务调度器根据系统资源容量以及管理员对队列的限制条件,按照一定的策略将资源分配给正在运行的应用程序。另外,任务调度器和Hadoop1.x一样也是一个热插拔模块,你可以自定义自己的任务调度器,同样你也可以直接使用其他任务调度器,如,Fair Scheduler或者Capacity Scheduler。
应用程序管理器(Applications Manager)
应用程序管理器,负责管理整个系统中所有应用程序,包括应用程序提交、向任务调度器申请资源启动ApplicationMaster、监控ApplicationMaster运行状态并在失败时重新启动它。
ResourceManager中还包含了其他组件,如ResourceTrackerService用来直接处理心跳,NMLivelinessMonitor用来监控NodeManager,NodesListManager 提供NodeManager的黑白名单等等。
2、ApplicationMaster(AM)
每当用户提交了一个应用程序就会为这个应用程序产生一个对应的ApplicationMaster,并且这个这个单独进程是在其中一个子节点上运行的。它的主要功能:为应用向ResourceManager申请资源、在job对Task实行调度、与NodeManager通信以启动或者停止任务、监控所有任务的运行情况,并且在任务失败的情下,重新为任务申请资源并且重启任务、负责推测任务的执行、当ApplicationMaster向ResourceManager注册后,ApplicationMaster可以提供客户端查询作业进度信息等。
3、NodeManager(NM)
NM是每个子节点上的资源和任务管理器,一方面,它会定向通过心跳信息向RM汇报本节点上的资源使用情况和各个Container的运行情况;另一方面,它会接收并且处理来自AM的Container启动和停止的各种请求。它的能有点像Hadoop1.x中的TaskTracker。
4、Container
Container是Yarn中对系统资源的抽象,同时它也是系统资源分配的基本单位,它封装节点上多维度资源,其中包括CPU、内存、磁盘、网络等。Yarn会为每个任务分配一个Container,并且该任务只能够使用该Container中所描述的资源。值得关注的的是,Yarn中的Container和MRv1中的Slot是完全不同的,Container是一个动态的资源划分单位,它是根据实际提交的应用程序所需求的资源自动生成的,换句话说,Container其里边所描述的CPU、内存等资源是根据实际应用程序需求而变的。而Slot是一个静态的资源抽象单位,每一个同类型的Slot所描述的资源信息都是一样的。
三、工作流程
1.用户向Yarn中提交一个MR(MapReduce)任务,由ResourceManager中的Applications Manager接收
2.Applications Manager负责资源的分配, 根据任务计算出所需要的资源,如cpu资源和内存资源,将这些资源封装成Container
3.Applications Manager将任务和Container发送给Resource Scheduler(资源调度器)
4.Resource Scheduler将任务和Container分配给Application Master, 由Application Master进行二次划分, 将任务分解成MapTask和ReduceTask
5.Application Master将MapTask和ReduceTask分配给NodeManager,三个NodeManager随机接收到MapTask或者ReduceTask , 由NodeManager负责任务的执行
6.Application Master会对NodeManager的任务完成情况进行监控, 而Applications Manager会对NodeManager的任务资源使用情况进行监控.
7.如果NodeManager上的任务执行成功,会把成功信息发送给Application Master和Applications Manager, 然后Applications Manager会进行资源的回收.
8.如果NodeManager上的任务执行失败,会把失败信息发送给Application Master和Applications Manager, 然后Applications Manager仍然会进行资源的回收. 此时Application Master会向Applications Manager申请资源, 重新将这个任务分配给这个NodeManager , 循环往复, 直到任务执行成功.
以上就是本期的所有内容了,大数据开发的内容学习量是比较大的,因此大家要把握还自己的学习计划,不要因为省力而忽略掉细节。
希望大家点个关注,及时收取最新文章推送,想了解更多敬请咨询加米谷大数据。
有问题的欢迎在评论区留言,如有侵权请告知。
自主品牌唯一一款售价过百万的SUV,它是不是真的物有所值呢?这些年,很多传统自主品牌都在试图通过各种方式,有的是推出更高端的车型,有的是推出高端的品牌,来打破价格的天花板,进军高端汽车市场,当然其中也不乏成功案例,比如哈弗H9,比如领克。不
它是自主品牌最早的插电混动车之一,纯电续航70km,油耗1。6L虽然纯电动车已成大势所趋,但不少品牌依然在坚持另外一个方向,就是PHEV插电混合动力车型。其中就包括本田丰田这样的日系品牌,也有吉普福特这样的美系品牌,以及奔驰宝马大众这样的德系品
综合扭矩700,动力不输S8,还不需要花200多万随着新能源的兴起,各大车企纷纷紧随潮流,逐步拓展自家在此领域的阵容,奥迪作为经典豪华品牌,自然也不例外,2022款奥迪A8PHEV就是奥迪纯电阵容中的一款。外观方面,2022款奥迪
爱押了解到,下一代iPhone或将采用钛合金材质钛合金原材料正逐渐进入民用型行业,在诊疗体育文化及日用品行业得到了很多的运用,十分受市场的青睐。据外媒报道,iPhone已经考虑用铝合金制作的iPad机壳,代替目前的铝镁合金机壳。
为什么本命年要穿红色?本命年要穿带有踩小人的红袜子穿红内裤戴红围巾,为什么?这来自于中华人民对红色的寓意,红色意味着吉祥,春节贴对联画灯笼贴年画穿红衣,都是为了辟邪为了吉祥,可以说人们对于红色的崇拜不会
Tomcat架构初识整体架构补充一下tomcat和jdk对应关系规范JDK版本6。X7。X8。X8。5。X9。XJDK5。06。07。07。08。0Servlet2。53。03。13。14。0JSP2
Tomcat1目录结构及部署Tomcat目录结构bin执行目录sh文件liux上的,bat文件windows上的lib依赖的jar包confcatalina。policy权限相关Permission,Tomc
害人不浅的拼多多我烦透拼多多了!相信大家都在拼多多上给别人砍过价或助力过,又或者您就是让别人砍价的那位。但是我相信也有很多像我一样不喜欢被砍价打扰的人群存在。最开始我也是让别人帮忙砍价,首次用拼多
Tomcat内嵌式Tomcat及手写内嵌式Tomcat嗯,代码如下。importorg。apache。catalina。Contextimportorg。apache。catalina。Hostimportorg。apache。cat
2020年6月中高端手机芯片性能排行榜数据来自极客湾今天逛B站看了极客湾最新出的视频,对市面上存在的SOC进行了一个详细的测评,并得到了一份性能天梯图,很有帮助和参考意义。在各项性能对比时极客湾基于Geekbench5对CPU的单核
华为手机支持AI字幕新增韩语实时转写能力智慧语音是适用于华为手机的智能助理,致力于通过先进的语音交互技术解放用户双手,满足用户在不同场景下方便高效的操作需求。1AI字幕新增韩语实时转写能力,并支持翻译成中文,打破语言障碍