IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

Hadoop学习笔记(四)之YARN

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码
小闫辛苦码了 2920个字

文章可能占用您 8分钟

欢迎关注「全栈技术精选」

今日分享
Hadoop学习笔记(四)之YARN
小闫同学pythonnote.cn
查看:13144回复:541

The only way of finding the limits of the possible is by going beyond them into the impossible.

——Arthur C. Clarke

HadoopYARN,你了解吗?更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』

前情回顾

Hadoop学习笔记(一)

Hadoop学习笔记(二)之HDFS

Hadoop学习笔记(三)之MapReduce

1.YARN

1.1 背景

YARN的出现是为了解决在Hadoop1.x版本中存在的一些问题。

之前,MapReduceMaster/Slave结构,也就是集群中一个Job Tracker多个Task TrackerJob Tracker负责资源管理和作业调度,Task Tracker负责定期向Job Tracker报告节点的状态(节点死活,资源使用情况、任务执行情况)以及接收Job Tracker的命令来执行。不知你是否发现,问题就出现在这一个Job Tracker上,它挂掉,整个集群都完蛋。而且它由于负责了所有节点的RPC请求,压力可想而知,也因此成为了节点规模扩大的瓶颈。最后一点便是集群仅支持MapReduce,不支持其他计算框架。如果想使用Spark呢?对不起,再搭建一个集群,想使用HBase只能再搭建一个集群。这样的一堆集群既不好管理,又使得资源利用率极低(一段时间内这个集群忙,那个集群闲),同时跨集群的数据转移更是问题。于是乎,YARN诞生了。更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』

1.2 简介

1)YARN全称是Yet Another Resource Negotiator「另一种资源协调者」。

2) 它是一个通用的资源管理系统。

3) 它的引入提高了集群的利用率,便于资源统一管理调度,在数据共享方面也带来了极大好处。

4) 它是Job Tracker的替代者。

1.3 架构

Hadoop学习笔记(四)之YARN

1)YARN由四部分组成:ClientResourceManager(RM)、NodeManager(NM)、ApplicationMaster(AM)。

2) 采用了Master/Slave结构。一个ResourceManager对应多个NodeManagerClientResourceManager提交任务或终止任务。ApplicationMaster(AM) 由对应的应用程序完成,每个应用程序对应一个ApplicationMaster(AM) ,ApplicationMaster(AM) 向ResourceManager申请资源用于在NodeManager上启动相应的任务。NodeManager(NM) 通过心跳信息向ResourceManager汇报自身状态信息。MapTask对应的是MapReduce作业启动时产生的任务,MPITaskMPI框架对应的执行任务。

MPI是消息传递接口,可以理解为更原生的一种分布式模型

1.4 核心组件功能

1)ResourceManager:整个集群只有一个。负责集群资源的统一管理和调度;启动或监控ApplicationMaster(一旦某个AM出现故障,RM将会在另一个节点上启动该AM);监控NodeManager,接收其心跳信息并为其分配任务(一旦某个NM出故障,标记一下该NM上的任务,来告诉对应的AM如何处理)。

2)NodeManager:整个集群中有多个,负责单节点资源管理和使用。定时向ResourceManager汇报节点状态信息;接收并处理来自ResourceManagerContainer启动或停止的各种命令;处理来自ApplicationMaster的命令。更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』

3)ApplicationMaster:每个应用一个,负责应用程序的管理。数据切分;为应用程序或作业向ResourceManager申请资源(Container),并分配给内部任务;与NodeManager通信以启动或者停止任务;任务监控和容错(在任务执行失败时重新为该任务申请资源以重启任务);处理ResourceManager发过来的命令:终止Container、让NodeManager重启等。

4)Container:对任务运行环境的抽象。任务运行资源(节点、内存、CPU);任务启动命令;任务运行环境;任务是运行在Container中,一个Container中既可以运行ApplicationMaster,也可以运行具体的MapReduceMPISpark Task

1.5 工作原理

Hadoop学习笔记(四)之YARN

1) 用户向YARN中提交应用程序/作业,其中包括ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。

2)Resource Manager为作业分配第一个Container,并与对应的NodeManager通信,要求它在这个Container中启动该作业的ApplicationMaster

3)Application Master首先向Resource Manager注册,这样用户可以直接通过Resource Manager查询作业的运行状态;然后将为各个任务申请资源并监控任务的运行状态,直到运行结束。即重复步骤(7)。

4)Application Master采用轮询的方式通过RPC请求向ResourceManager申请和获取资源。

5) 一旦ApplicationMaster申请到资源,便与对应的NodeManager通信,要求它启动任务。

6)NodeManager启动任务。更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』

7) 各个任务通过RPC协议向ApplicationMaster汇报自己的状态和进度,以便ApplicaitonMaster随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务;在作业运行过程中,用户可随时通过RPCApplicationMaster查询作业当前运行状态。

8) 作业完成后,ApplicationMasterResourceManager注销并关闭自己。

1.6 特点

1)ResourceManager基于ZooKeeper实现高可用机制,避免发生单点故障。

2)Node Manager执行失败后,ResourceManager将失败任务告诉对应的ApplicationMaster,由ApplicationMaster决定如何处理失败的任务。

3)Application Master执行失败后,由ResourceManager负责重启ApplicationMaster需处理内部任务的容错问题,并保存已经运行完成的Task,重启后无需重新运行。更多精彩文章请关注公众号『Pythonnote』或者『全栈技术精选』

学习自《基于Hadoop与Spark的大数据开发实战》一书

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

Hadoop学习笔记(四)之YARN

排版:小闫

图片素材:小闫

文案:小闫

长按扫描下方二维码即刻关注小闫

Hadoop学习笔记(四)之YARN
Hadoop学习笔记(四)之YARN
Hadoop学习笔记(四)之YARN

原文始发于微信公众号(全栈技术精选):Hadoop学习笔记(四)之YARN


Warning: A non-numeric value encountered in /data/wangzhan/tech.souyunku.com.wp/wp-content/themes/dux/functions-theme.php on line 1154
赞(64) 打赏



未经允许不得转载:搜云库技术团队 » Hadoop学习笔记(四)之YARN

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码
IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

评论 抢沙发

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏


Fatal error: Uncaught Exception: Cache directory not writable. Comet Cache needs this directory please: `/data/wangzhan/tech.souyunku.com.wp/wp-content/cache/comet-cache/cache/https/tech-souyunku-com/index.q`. Set permissions to `755` or higher; `777` might be needed in some cases. in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php:367 Stack trace: #0 [internal function]: WebSharks\CometCache\Classes\AdvancedCache->outputBufferCallbackHandler() #1 /data/wangzhan/tech.souyunku.com.wp/wp-includes/functions.php(5109): ob_end_flush() #2 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(303): wp_ob_end_flush_all() #3 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #4 /data/wangzhan/tech.souyunku.com.wp/wp-includes/plugin.php(470): WP_Hook->do_action() #5 /data/wangzhan/tech.souyunku.com.wp/wp-includes/load.php(1097): do_action() #6 [internal function]: shutdown_action_hook() #7 {main} thrown in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php on line 367