YARN安装配置

本文介绍了YARN的基本概念,包括ResourceManager、NodeManager、ApplicationMaster和Container的角色。详细讲解了YARN的安装部署过程,如配置yarn-site.xml和mapred-site.xml,并提供了启动和关闭步骤。最后,讨论了Hadoop YARN的配置参数及其重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)YARN初步理解

yarn结构图如下:

1、YARN

  下一代的MapReduce系统框架,也称为MRv2(MapReduce version 2), 它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度。

  YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业调度/监控)分离,主要方法是创建一个全局的ResourceManager(RM)

  和若干个针对应用程序的ApplicationMaster(AM)。这里的应用程序是指传统的MapReduce作业或作业的DAG。

2、ResourceManager(RM)

  RM和与NM(NodeManager每个节点一个)共同组成整个数据计算框架,RM是系统中将资源分配给各个应用的最终决策者。

  RM有两个组件组成:

    调度器(Scheduler)

    应用管理器(ApplicationsManager,ASM)

  调度器根据容量、队列等限制条件(如每个队列分配一定的资源,最多执行一定数量的作业等),将系统中的资源分配给各个正在运行的应用程序。

  需要注意的是,该调度器是一个“纯调度器”,它不再从事任何与具体应用程序相关的工作,比如不负责监控或者跟踪应用的执行状态等,也不负责重新启动

  因应用执行失败或者硬件故障而产生的失败任务,这些均交由应用程序相关的ApplicationMaster完成。调度器仅根据各个应用程序的资源需求进行资源分配,

  而资源分配单位用一个抽象概念“资源容器”(Resource Container,简称Container)表示,Container是一个动态资源分配单位,它将内存、CPU、磁盘、网络等资源封装在一起,

  从而限定每个任务使用的资源量。此外,该调度器是一个可插拔的组件,用户可根据自己的需要设计新的调度器,YARN提供了多种直接可用的调度器,比如Fair Scheduler和Capacity Scheduler等。

3、NodeManager(NM)

  NM是每个节点上的资源和任务管理器,一方面,它会定时地向RM汇报本节点上的资源使用情况和各个Container的运行状态;另一方面,它接收并处理来自AM的Container启动/停止等各种请求。

4、ApplicationsManager(ASM)

  ASM主要负责接收作业,协商获取第一个容器用于执行AM和提供重启失败AM container的服务。

5、ApplicationMaster(AM)

  AM实际上是一个具体的框架库,它的任务是【与RM协商获取应用所需资源】和【与NM合作,以完成执行和监控task的任务】

<think>好的,我需要帮用户查找关于Spark on Yarn安装配置教程,特别是黑马程序员的资料。首先,用户提供的引用中,引用[^1]提到黑马程序员的Spark教程,可能包含相关内容。但问题在于用户提供的链接是否直接对应到Spark on Yarn配置部分。 我需要先检查引用内容。引用[^1]是Spark教程,但描述中只提到4天快速入门,可能涵盖基础内容,但不确定是否包含Spark on Yarn的具体配置步骤。用户可能需要更详细的步骤,比如环境变量设置、配置文件修改等。 接下来,引用[^2]是Hadoop的下载地址,而Spark on Yarn需要Hadoop环境,所以可能需要指导用户安装Hadoop 3.3.0,并配置Yarn。引用[^3]是下载工具,可能对用户下载所需软件有帮助,但不太相关于安装配置本身。 用户可能需要的步骤包括:1. 确保Hadoop(Yarn)已正确安装;2. 下载并解压Spark;3. 配置Spark的环境变量配置文件(如spark-env.sh);4. 测试Spark on Yarn模式。 需要确认黑马程序员的教程中是否有这些步骤。由于引用的教程是基于Python的,可能涉及PySpark的配置,需要注意相关细节。另外,可能需要引导用户参考官方文档作为补充,因为第三方教程可能步骤不全。 用户可能遇到的常见问题包括环境变量配置错误、Yarn资源管理配置不当,或者Spark与Hadoop版本不兼容。因此,在回答中应提醒注意版本匹配,例如Spark 3.2与Hadoop 3.3.0的兼容性。 最后,需要确保回答结构清晰,分步骤说明,并引用提供的参考资料,特别是黑马程序员的教程Hadoop的下载链接。如果教程中没有详细步骤,建议用户查阅官方文档或提供额外资源链接。</think>以下是根据黑马程序员Spark教程整理的Spark on Yarn安装配置步骤: ### 一、环境准备 1. 已安装Hadoop 3.3.0集群(下载地址见引用) 2. 下载Spark 3.2版本(需与Hadoop版本匹配) 3. 确保YARN_RESOURCEMANAGER_USER环境变量已配置 ### 二、核心配置步骤 1. 解压Spark安装包并配置环境变量 ```bash export SPARK_HOME=/opt/spark-3.2.0-bin-hadoop3.2 export PATH=$PATH:$SPARK_HOME/bin ``` 2. 修改`spark-env.sh`配置文件 ```bash cp $SPARK_HOME/conf/spark-env.sh.template $SPARK_HOME/conf/spark-env.sh echo "export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop" >> spark-env.sh echo "export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop" >> spark-env.sh ``` 3. 配置`spark-defaults.conf` ```properties spark.master yarn spark.eventLog.enabled true spark.eventLog.dir hdfs://namenode:8020/spark-logs ``` ### 三、验证部署 执行测试任务: ```bash spark-submit --class org.apache.spark.examples.SparkPi \ --master yarn \ --deploy-mode cluster \ $SPARK_HOME/examples/jars/spark-examples_2.12-3.2.0.jar 10 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值