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

复制代码
<configuration>
    <!-- 指定MapReduce作业执行时,使用YARN进行资源调度 -->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>
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 复制代码
<configuration>
    <!-- 设置ResourceManager -->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>qianfeng01</value>
    </property>
​
    <!--配置yarn的shuffle服务-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value> 
    </property>
</configuration>
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

服务名称 web UI端口 url 备注
NameNode 9870 http://qianfeng01:9870/ 所有注意服务启动的主机名或者ip
SecondaryNameNode 50090 http://qianfeng02:9868
historyServer 19888 http://qianfeng01:19888 默认历史服务
DataNode 50075 http://qianfeng01:9864/
ResouceManager 8088 http://qianfeng01:8088 默认8088
NodeManager 8042 http://qianfeng01:8042 默认8042

Guff_hys_python数据结构,大数据开发学习,python实训项目-CSDN博客

相关推荐
荆棘鸟智能1 小时前
果蔬AI分选系统架构设计:视觉识别、边缘推理与气阀时序控制
人工智能·系统架构
Liaiyang669 小时前
空圈容错视角 · 多维切面篇:我们生活的世界,不止三维
人工智能·算法·系统架构·前沿技术·哲学·认知科学
draracle21 小时前
为什么 AI 无法胜任系统架构
人工智能·系统架构
小天源1 天前
智叟云集系统架构解析:从品牌 AI 可见度监测到前后端协同
人工智能·react.js·系统架构·node.js·react·ai监测·ai品牌监测
2301_780356701 天前
基于AIoT平台的智慧医院+智慧康养系统架构设计与数据互通方案
系统架构
ABB自动化1 天前
本特利内华达3500系统
系统架构·云计算·系统安全·plc 控制器
RockHopper20252 天前
元模型驱动的开发模式与软件开发智能体的认知负担(短文版)
系统架构·智能体·模型驱动·元模型驱动
Vitaliy Kostrov(柯维远)2 天前
谁来承担额外工作?CDN 参与者如何协商资源
nginx·缓存·系统架构·开源·cdn
省钱兄--zs2 天前
无人自助拼豆系统架构设计与功能实现落地部署全流程实战指南
java·数据仓库·spring boot·系统架构·需求分析
9624562 天前
餐饮 SaaS 优惠券系统架构演进(九)营销策略 DSL 与规则生命周期:从运营配置、静态校验到编译执行、影响面分析与安全发布
安全·系统架构