
Apache yarn入门介绍
发布日期:2021-05-18 08:19:01
浏览次数:18
分类:精选文章
本文共 3235 字,大约阅读时间需要 10 分钟。
Yarn资源管理框架详解
Yarn是一款开源的应用资源管理框架,广泛应用于大数据作业的资源调度和分配。它通过 ResourceManager、NodeManager 和 ApplicationMaster 等组件,构建了一个高效的集群资源管理系统。本文将从多个维度详细探讨 Yarn 的架构、安装配置及工作原理。
Yarn的构成
Yarn 的核心组件包括 ResourceManager(ResourceManager)、NodeManager(NodeManager)和 Container(容器)。此外,ApplicationMaster(ApplicationMaster,简称 AM)也在其中发挥重要作用。
-
ResourceManager(RM)
RM 负责管理整个集群的资源分配,内置了调度器(Scheduler)。它接收来自客户端(ApplicationMaster)的资源请求,并根据集群资源情况,将任务分配到适当的节点上。 -
NodeManager(NM)
每台工作节点的资源管理者,负责启动和监控 Container 的运行状态。NM 提交Container 使用情况统计,并定期汇报给 ResourceManager,并从 ResourceManager 获得新的任务启动指令。 -
ApplicationMaster(AM)
AM 是用户提交任务的入口点,与 ResourceManager 协商资源,同时与各个 NodeManager 建立通信,监督任务的执行进度。 -
Container
Container 是集群上可用资源的体现,包括 CPU、内存、存储和网络等资源。每个 Container 映射到一个物理或虚拟资源chunk,运行用户提交的任务。
Yarn的安装与配置
安装 Yarn 可能需要结合 Hadoop 的其他组件,因此需要针对性地配置相关配置文件。
-
配置文件解读
-
mapred-site.xml
主要配置如下:mapreduce.framework.name yarn mapreduce.jobhistory.address my pc01:10020 mapreduce.jobhistory.webapp.address my pc01:19888 -
yarn-site.xml
ResourceManager 所在主机及其他关键配置:yarn.resourcemanager.hostname my pc01 yarn.nodemanager.aux-services mapreduce_shuffle yarn.nodemanager.aux-services.mapreduce_shuffle.class org.apache.hadoop.mapred.ShuffleHandler yarn.resourcemanager.scheduler.address my pc01:8030 yarn.resourcemanager.resource-tracker.address my pc01:8031 yarn.resourcemanager.address my pc01:8032 yarn.resourcemanager.admin.address my pc01:8033 yarn.resourcemanager.webapp.address my pc01:8088
-
-
命令执行
starting 命令:start-yarn.sh
-
日志查看
日志路径:/usr/local/hadoop/logs
进程查看示例:
[root@mypc01 hadoop]# jps 3045 DataNode 3909 Jps 2950 NameNode 3388 ResourceManager 3485 NodeManager
Yarn调度器
调度器是资源分配的核心模块,决定集群如何分配资源给容器。Yarn 提供三种调度器:
FIFO调度器
先进先出,任务按顺序执行,不适合并行处理,通常用于小型资源环境。容量调度器
为小任务保留固定资源,即使大任务在运行,其他任务仍能获取一部分资源。公平调度器
每个任务获得均等资源,公平分配集群资源。调度器选择地址:
# 修改yarn-site.xmlyarn.resourcemanager.scheduler.class org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler
Yarn命令行
使用命令行工具进行操作:
[root@mypc01 hadoop]# which yarn /usr/local/hadoop/bin/yarn
命令用途示例:
- 查看帮助:
yarn -h
- 运行 ResourceManager:
yarn resourcemanager
任务提交流程
申请 Application ID
ارتباط客户端与 ResourceManager,获取 application_id。上传资源文件
将 job.xml、分片文件及 JAR 包上传至 HDFS。生成任务并提交
ResourceManager 将任务添加至任务队列,等待调度。资源分配与容器启动
根据调度器规则,NodeManager 获得任务并申请 Container。任务执行
NodeManager 启动 ApplicationMaster,初始化任务并分发处理任务。结果报告
任务完成后,ApplicationMaster 通知客户端。通过以上步骤,Yarn 实现了对集群资源的高效管理与任务的平稳运行。
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年04月18日 21时03分57秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
2024,java开发,已经炸了吗?
2025-03-29
2025入门黑客技术必读书籍(非常全面)带你从小白进阶大佬!收藏这一篇就够了
2025-03-29
2025入门黑客技术必读书籍(非常全面)带你从小白进阶大佬!收藏这篇就够了
2025-03-29
2025大语言模型入门该怎么学?零基础入门到精通,收藏这篇就够了
2025-03-29
2025年3月全国计算等级考试(报名操作指南)从零基础到精通,收藏这篇就够了!
2025-03-29
2025年中国云计算市场四大趋势前瞻,从零基础到精通,收藏这篇就够了!
2025-03-29
2025年十大最佳漏洞管理工具,从零基础到精通,收藏这篇就够了!
2025-03-29
2025想做黑客?先来学习 SQL 注入,零基础入门到精通,收藏这篇就够了
2025-03-30
2025春招计算机就业哪些方向最香?零基础入门到精通,收藏这篇就够了
2025-03-30
2025最全版《安全技术交底》.docx。从零基础到精通,收藏这篇就够了!
2025-03-30
2025最新大模型技术学习过程梳理,零基础入门到精通,收藏这篇就够了
2025-03-30
2025版万字长文入门大语言模型(LLM)零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新0基础怎么转行网络安全?零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新Bash Shell入门指南,零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新C++快速入门(适合小白)零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新CTF选手必藏的50个实战解题思路,零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新Java教程(非常详细)零基础入门到精通,收藏这篇就够了
2025-03-30
2025版最新LangChain框架快速入门,零基础入门到精通,收藏这篇就够了
2025-03-30