【Hadoop框架】Yarn 核心组件+工作流程+基本使用

news/2024/12/14 6:51:00/文章来源:https://www.cnblogs.com/o-O-oO/p/18606276
一、Yarn的基本概念和架构二、Yarn的工作流程三、Yarn的核心组件及其功能
‌   3.1 ResourceManager‌3.2 NodeManager3.3 ApplicationMaster四、Yarn的基本使用4.1 Yarn Shell 命令4.2 Yarn Shell 使用示例4.2.1 首先确定 Yarn 集群启动4.2.2 发起任务4.2.3 查看任务4.2.4 终止作业运行五、问题5.1 问题一5.1.1 报错5.1.2 处理

Yarn(Yet Another Resource Negotiator)是一个分布式资源管理框架,主要用于管理和调度大数据集群中的资源。Yarn 从 MapReduce 中分离出来,成为独立的资源调度框架,旨在提供更通用和高效的管理方式。‌

一、Yarn的基本概念和架构

Yarn 采用主从架构,包括一个主节点(ResourceManager)和多个从节点(NodeManager)。ResourceManager 负责处理客户端请求、监控 NodeManager、进行资源调度等;NodeManager 则负责具体服务器上的资源和任务管理‌。

二、Yarn的工作流程

Yarn 的工作流程可以分为以下几个阶段:

1、作业提交阶段‌

客户端向 ResourceManager 提交作业申请。

2‌、作业初始化阶段‌

ResourceManager 中的 ApplicationManager 处理请求并返回 JobID 和 HDFS 路径。

3‌、任务分配阶段‌

客户端将作业相关资源提交到指定的 HDFS 路径,并申请执行作业。

4‌、任务执行阶段‌

ApplicationMaster 从 HDFS 获取作业资源并计算任务资源,向 ResourceScheduler 申请执行任务所需资源。

5‌、任务完成阶段‌

ApplicationMaster 监测到所有任务执行完毕后,通知 ResourceManager 释放资源‌。

三、Yarn的核心组件及其功能

‌3.1 ResourceManager‌

处理客户端请求、监控 NodeManager、进行资源调度。它包括两个主要组件:资源调度器(ResourceScheduler)和应用程序管理器(ApplicationManager)‌。

3.2 NodeManager

负责具体服务器上的资源和任务管理,定时向 ResourceManager 汇报资源使用情况和 Container 的运行情况,接收和处理启动和停止 Container 的命令‌。

3.3 ApplicationMaster

每个应用程序对应一个 ApplicationMaster,负责单个应用程序的管理、数据切片、向 ResourceManager 申请资源并分配内部任务‌。

四、Yarn的基本使用

Yarn 是一个资源管理框架,所以它可以对提交到集群中的任务进行查看,并可以强制结束这些任务。

4.1 Yarn Shell 命令

# Yarn application [command_options]
命令参数 描述
-list 从RM列出应用任务
-kill 杀掉应用任务
-status 查看应用任务状态

4.2 Yarn Shell 使用示例

一般使用流程,是先用 list 查看集群中未完成的所有任务以及它的 ID,如果想查看任务详细信息则使用 status,如果想强制终止任务则使用 kill。

4.2.1 首先确定 Yarn 集群启动

使用命令 jps 命令确定。

# jps

1、node01 节点查看

2、 node02 节点查看

3、node03 节点查看

4.2.2 发起任务

使用 mapreduce 官方自带的案例,提交到 Yarn 集群中运行,然后再将其终止掉。

# cd $HADOOP_HOME/share/hadoop/mapreduce

计算圆周率,第一个参数为 Map 运行次数,第二个参数为投掷次数(用于计算圆的一种方式,此参数越大,计算出的圆周率越准确)

# hadoop jar hadoop-mapreduce-examples-3.3.6.jar pi 10 100000

4.2.3 查看任务

# yarn application -list

4.2.4 终止作业运行

新打开一个Shell窗口,执行Yarn命令,终止作业运行

# yarn application -kill <Application ID>

当任务提交到 Yarn 集群中运行的时候,默认情况下,控制台会输出作业运行的 Log 信息,此时使用 CTRL^C 不能终止任务,只是停止其在控制台的信息输出,而任务已经提交到分布式集群中去运行了。终止任务,必须先使用 Yarn application -list 获取进程号,再使用-kill进行终止。

五、问题

5.1 问题一

5.1.1 报错

找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster。

5.1.2 处理

1、 查看classpath

# hadoop classpath

2、 修改 yarn-site.xml

将 hadoop classpath 的输出内容,添加到 yarn-site.xml 文件中。

# vim yarn-site.xml

3、 将修改后的文件分到到其他节点

# scp yarn-site.xml node02:`pwd`
# scp yarn-site.xml node03:`pwd`

4、 重启 yarn

#关闭Yarn
stop-yarn.sh

#开启Yarn
start-yarn.sh

原创 超哥的IT私房菜

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/852350.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于中间畸变流估计的滚动快门校正

基于中间畸变流估计的滚动快门校正提出通过直接估计从全局快门(GS)到滚动快门(RS)的失真,来校正滚动快门(SS)失真的图像。现有的方法通常使用从RS到GS的未失真流进行校正。它们最初从连续的RS帧预测流,随后使用时间相关的缩放因子将其重新缩放为从RS帧到底层GS图像的位…

鸿蒙NEXT开发案例:颜文字搜索器

【引言】 本文将介绍一个名为“颜文字搜索器”的开发案例,该应用是基于鸿蒙NEXT平台构建的,旨在帮助用户快速查找和使用各种风格的表情符号。通过本案例的学习,读者可以了解如何在鸿蒙平台上进行数据处理、UI设计以及交互逻辑的实现。 【环境准备】 • 操作系统:Windows 10…

CycleINR:任意尺度医学数据三维超分辨率的循环隐式神经表示

CycleINR:任意尺度医学数据三维超分辨率的循环隐式神经表示在医学3D数据领域,如CT和MRI图像,普遍的各向异性分辨率的特点是层内分辨率高,但层间分辨率低。相邻切片之间的分辨率降低带来了挑战,阻碍了最佳的观看体验,并阻碍了稳健的下游分析算法的发展。各种体积超分辨率算…

用于大规模单像素成像的双尺度变换器

用于大规模单像素成像的双尺度变换器单像素成像(SPI)是一种潜在的计算成像技术,通过解决单像素探测器捕获的少量测量值中的病态重建问题来产生图像。深度学习在SPI重构方面取得了令人瞩目的成功。然而,之前较差的重建性能和不切实际的成像模型,限制了其在现实世界中的应用…

应用题3

这道题知识点参考书116页二叉树遍历相关知识。 知识点:二叉树中序遍历,后序遍历的顺序是什么如何将一棵二叉树转化为树(或森林)中序遍历(左->根->右)后序遍历(左->右->根)根据中序遍历和后序遍历的特点,我们可以知道,中序遍历中根节点在中间,后序遍历中…

河北知识付费系统热门课程是什么

在当今科技快速发展的社会环境中,教育领域也随之发生着深刻的变革。尤其是随着互联网及数字媒体的应用日渐普及,知识付费及在线教育成为了新时代学习者的优选途径。河北的知识付费系统通过其丰富的教学资源与创新的教学模式满足了不同年龄、层次的学习者多样化的需求。为了回…

转载:【AI系统】AI 框架作用

深度学习范式主要是通过发现经验数据中,错综复杂的结构进行学习。通过构建包含多个处理层的计算模型(网络模型),深度学习可以创建多个级别的抽象层来表示数据。例如,卷积神经网络 CNN 可以使用大量图像进行训练,例如对猫狗分类去学习猫和狗图片的特征。这种类型的神经网络…

转载:【AI系统】卷积操作原理

卷积是神经网络里面的核心计算之一,它是一种特殊的线性运算。而卷积神经网络(CNN)是针对图像领域任务提出的神经网络,其受猫的视觉系统启发,堆叠使用卷积层和池化层提取特征。它在 CV 领域方面的突破性进展引领了深度学习的热潮。 回到卷积本身,其变种丰富、计算复杂,神…

转载:【AI系统】Winograd 算法

在上一篇文章的介绍中,介绍了 Im2Col 技术,它通过将三维张量重新排列成矩阵形式,然后利用基于内存访问局部性的优化库如 GEMM(通用矩阵乘法库)加速计算。随后,还探讨了空间组合优化,这一种利用局部性原理来提升效率的技术。 在本文将重点介绍 Winograd 优化算法,它是矩…

转载:【AI系统】Im2Col 算法

作为早期的 AI 框架,Caffe 中卷积的实现采用的是基于 Im2Col 的方法,至今仍是卷积重要的优化方法之一。 从上一篇文章的介绍中可以看到,在 CNN 中卷积直接计算的定义中,卷积核在输入图片上滑动,对应位置的元素相乘后相加求和,滑窗的大小由卷积核决定。由于滑动操作时的窗…

转载:【AI系统】模型转换基本介绍

模型转换的主要任务是实现模型在不同框架之间的流转。随着深度学习技术的发展,训练框架和推理框架的功能逐渐分化。训练框架通常侧重于易用性和研究人员的算法设计,提供了分布式训练、自动求导、混合精度等功能,旨在让研究人员能够更快地生成高性能模型。 而推理框架则更专注…

转载:【AI系统】知识蒸馏原理

本文将介绍知识蒸馏(Knowledge Distillation, KD)的原理,这是一种通过从大型的教师模型向小型的学生模型转移知识来实现模型压缩和优化的技术。知识蒸馏的核心思想是利用教师模型在大量数据上积累的丰富知识,通过特定的蒸馏算法,使学生模型能够学习并吸收这些知识,从而达…