yarn系统架构与安装

1.1 YARN系统架构

YARN的基本思想是将资源管理和作业调度/监视功能划分为单独的守护进程。其思想是拥有一个全局ResourceManager (RM),以及每个应用程序拥有一个ApplicationMaster (AM)。应用程序可以是单个作业,也可以是一组作业。

一个ResourceManager和多个NodeManager构成了YARN资源管理框架。他们是YARN启动后长期运行的守护进程,来提供核心服务。

  • ResourceManager

  • NodeManager

  • container

  • ApplicationMaster(简称AM)

YARN的角色 MapReduce 1.x的角色
ResourceManager、Application Master、Timeline Server JobTracker
NodeManager TaskTracker
Container Slot
复制代码
是在系统中的所有应用程序之间仲裁资源的最终权威,即管理整个集群上的所有资源分配,内部含有一个Scheduler(资源调度器)
复制代码
是每台机器的资源管理器,也就是单个节点的管理者,负责启动和监视容器(container)资源使用情况,并向ResourceManager及其 Scheduler报告使用情况
复制代码
即集群上的可使用资源,包含cpu、内存、磁盘、网络等
复制代码
实际上是框架的特定的库,每启动一个应用程序,都会启动一个AM,它的任务是与ResourceManager协商资源,并与NodeManager一起执行和监视任务

1.2. YARN的配置

YARN属于Hadoop的核心组件,不需要单独安装,只需要修改一些配置文件即可。

1.2.1. mapred-site.xml

root@qianfeng01 hadoop-3.3.1\]# vi /usr/local/hadoop-3.3.1/etc/hadoop/mapred-site.xml ```                mapreduce.framework.name        yarn     ``` ##### 1.2.2. yarn-site.xml \[root@qianfeng01 hadoop-3.3.1\]# vim /usr/local/hadoop-3.3.1/etc/hadoop/yarn-site.xml ```java yarn.resourcemanager.hostname qianfeng01 yarn.nodemanager.aux-services mapreduce_shuffle ``` ##### 1.2.3. hadoop-env.sh \[root@qianfeng01 hadoop-3.3.1\]# vim /usr/local/hadoop-3.3.1/etc/hadoop/hadoop-env.sh ```python # 添加如下: export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root ``` ##### 1.2.4. 分发到其他节点 ``` [root@qianfeng01 hadoop-3.3.1]# scp -r /usr/local/hadoop-3.3.1/etc/hadoop/* qianfeng02:/usr/local/hadoop-3.3.1/etc/hadoop/ [root@qianfeng01 hadoop-3.3.1]# scp -r /usr/local/hadoop-3.3.1/etc/hadoop/* qianfeng03:/usr/local/hadoop-3.3.1/etc/hadoop/ ``` ##### 1.2.5. YARN的服务启停 | 描述 | 命令 | |------------------------|---------------| | 开启YARN全部服务,在RM所在服务器上操作 | start-yarn.sh | | 停止YARN全部服务,在RM所在服务器上操作 | stop-yarn.sh | \| 单点开启YARN相关进程,在对应所在服务器上操作 \| yarn --daemon start resourcemanager yarn --daemon start nodemanager \| \| 单点停止YARN相关进程,在对应所在服务器上操作 \| yarn --daemon stop resourcemanager yarn --daemon stop nodemanager \| > 当YARN的进程开启之后,我们可以在WebUI上查看到集群的资源信息、任务的运行状态等 > > [http://192.168.10.101:8088](http://192.168.10.101:8088 "http://192.168.10.101:8088") | 服务名称 | web UI端口 | url | 备注 | |-------------------|----------|------------------------------------------------------------------------------|------------------| | NameNode | 9870 | [http://qianfeng01:9870/](http://qianfeng01:9870/ "http://qianfeng01:9870/") | 所有注意服务启动的主机名或者ip | | SecondaryNameNode | 50090 | [http://qianfeng02:9868](http://qianfeng02:9868/ "http://qianfeng02:9868") | | | historyServer | 19888 | [http://qianfeng01:19888](http://qianfeng01:19888 "http://qianfeng01:19888") | 默认历史服务 | | DataNode | 50075 | [http://qianfeng01:9864/](http://qianfeng01:9864/ "http://qianfeng01:9864/") | | | ResouceManager | 8088 | [http://qianfeng01:8088](http://qianfeng01:8088 "http://qianfeng01:8088") | 默认8088 | | NodeManager | 8042 | [http://qianfeng01:8042](http://qianfeng01:8042 "http://qianfeng01:8042") | 默认8042 | [Guff_hys_python数据结构,大数据开发学习,python实训项目-CSDN博客](https://blog.csdn.net/HYSliuliuliu?type=blog "Guff_hys_python数据结构,大数据开发学习,python实训项目-CSDN博客")

相关推荐
C澒11 分钟前
前端分层架构实战:DDD 与 Clean Architecture 在大型业务系统中的落地路径与项目实践
前端·架构·系统架构·前端框架
皮卡丘不断更4 小时前
告别“金鱼记忆”:SwiftBoot v0.1.5 如何给 AI 装上“永久项目大脑”?
人工智能·系统架构·ai编程
成茂峰4 小时前
软考高级·系统架构设计师 | 四、信息技术安全知识
安全·信息安全·系统架构·架构设计师
牵牛老人4 小时前
【Qt 开发后台服务避坑指南:从库存管理系统开发出现的问题来看后台开发常见问题与解决方案】
开发语言·qt·系统架构
行走正道7 小时前
CANN仓库日志系统架构 分级日志与性能开销优化源码解读
系统架构·cann
若风的雨1 天前
【deepseek 学习】RT-Thread 简介
系统架构
学历真的很重要1 天前
【系统架构师】第二章 操作系统知识 - 第二部分:进程管理(详解版)
学习·职场和发展·系统架构·系统架构师
智算菩萨1 天前
【网络工程师入门】DNS域名系统的深度解读与实践应用指南
网络·网络协议·系统架构
Coder_Boy_1 天前
企业级项目高并发监控场景-Spring Boot 集成 Graphite & InfluxDB 实战文档
java·spring boot·后端·系统架构
盈创力和20072 天前
本地可视 + 超低功耗:带 E-Ink 屏的 LoRa 温湿度终端系统架构与功耗优化实践
系统架构·电子墨水屏·lora温湿度传感器·无线温湿度监测·超低功耗设计