Yarn伪分布式部署

本文介绍了如何在伪分布式环境中部署Yarn,包括配置mapred-site.xml和yarn-site.xml,以及部署后的ResourceManager和NodeManager角色。此外,还提到了日志文件的位置和查看日志的三种方法。

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

MapReduce用来计算的,是jar包提交到Yarn上的,本身不需要部署;

Yarn是用来资源和作业调度的,需要部署

MapReduce on Yarn

 部署过程:

1.  配置mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

2.配置yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

ResourceManager daemon  老大 资源管理者
NodeManager daemon  

### HDFS 伪分布式部署配置教程 #### 1. 创建 Hadoop 用户 为了保持系统干净并避免权限冲突,建议为 Hadoop 创建一个专用用户。以下是具体操作步骤: ```bash sudo useradd -m hadoop -s /bin/bash sudo passwd hadoop sudo adduser hadoop sudo ``` 完成上述命令后,需切换至 `hadoop` 用户以继续后续操作[^4]。 #### 2. 更新 Apt 和安装 SSH 确保系统的 APT 软件包管理器是最新的,并安装必要的工具如 SSH Server: ```bash sudo apt-get update sudo apt-get install openssh-server ssh localhost ``` 在首次连接时,输入 `yes` 接受密钥交换,并提供密码完成登录。随后可通过以下命令实现无密码登录配置: ```bash ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 0600 ~/.ssh/authorized_keys ``` 这一步骤允许在同一台机器上模拟分布式环境中的节点通信[^4]。 #### 3. 安装 Java 环境 Hadoop 需要依赖于 Java 环境才能运行。推荐安装 OpenJDK 或 Oracle JDK 版本之一。例如,使用以下命令安装 OpenJDK: ```bash sudo apt-get install openjdk-8-jdk java -version ``` 确认已正确安装 Java 后,还需设置 `JAVA_HOME` 环境变量以便 Hadoop 正常识别 Java 路径。编辑 `.bashrc` 文件并将以下内容追加进去: ```bash export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export PATH=$PATH:$JAVA_HOME/bin source ~/.bashrc ``` #### 4. 下载与解压 Hadoop 前往 Apache 官方网站或其他可信源下载最新稳定版 Hadoop 压缩包。假定将其放置于 `/tmp` 目录,则执行如下指令完成解压及重命名过程: ```bash tar -zvxf /tmp/hadoop-*.tar.gz -C /usr/local/ mv /usr/local/hadoop-* /usr/local/hadoop chown -R hadoop:hadoop /usr/local/hadoop ``` 至此,已完成基本准备工作[^3]。 #### 5. 编辑核心配置文件 进入 Hadoop 的配置目录 (`/usr/local/hadoop/etc/hadoop`) 对几个重要 XML 文件作出调整。 ##### (a) **core-site.xml** 设定 NameNode 地址及其存储路径参数: ```xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> </property> </configuration> ``` ##### (b) **hdfs-site.xml** 规定副本数量以及其他必要选项: ```xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> ``` ##### (c) **mapred-site.xml** 此文档通常不存在,默认名为模板形式存在即 `mapred-site.xml.template` ,复制一份再修改之: ```bash cp mapred-site.xml.template mapred-site.xml ``` 接着填入框架类型字段值设为 YARN : ```xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` ##### (d) **yarn-site.xml** 最后针对资源调度部分做相应改动: ```xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> ``` #### 6. 初始化 HDFS 文件系统 切换回到 hadoop 用户身份之后,利用下面这条语句初始化磁盘结构布局: ```bash /usr/local/hadoop/bin/hdfs namenode -format ``` #### 7. 启动服务 依次开启各个组件的服务程序: ```bash start-dfs.sh start-yarn.sh mr-jobhistory-daemon.sh start historyserver ``` 此时可以通过浏览器访问两个 URL 页面来观察集群状况: - Namenode WebUI: http://localhost:50070/ - ResourceManager WebUI: http://localhost:8088/ 另外借助 jps 工具也可以直观看到正在运作的关键线程列表,像 DataNode, NodeManager, SecondaryNameNode 等等都应该可见[^1]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值