一、集群环境,还是如下三台服务器
- 192.168.32.101 node1
- 192.168.32.102 node2
- 192.168.32.103 node3
二、YARN架构
- YARN,主从架构,有2个角色
- 主(Master)角色:ResourceManager
- 从(Slave) 角色:NodeManager
- 两个角色各自的功能是什么?
- ResourceManager: 管理、统筹并分配整个集群的资源
- NodeManager:管理、分配单个服务器的资源,即创建管理容器,由容器提供资源供程序使用
- 什么是YARN的容器?
- 容器(Container)是YARN的NodeManager在所属服务器上分配资源的手段
- 创建一个资源容器,即由NodeManager占用这部分资源
- 然后应用程序运行在NodeManager创建的这个容器内
- 应用程序无法突破容器的资源限制
- YARN辅助角色
- 代理服务器(ProxyServer):Web Application Proxy Web应用程序代理
- 历史服务器(JobHistoryServer): 应用程序历史信息记录服务
三、MapReduce配置文件
在 $HADOOP_HOME/etc/hadoop 文件夹内,修改一下文件:
- mapred-env.sh文件,添加如下环境变量
# 设置JDK路径
export JAVA_HOME=/export/jdk
# 设置JobHistoryServer进程内存为1G
export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000
# 设置日志级别为INFO
export HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA
- mapred-site.xml文件,添加如下配置信息
<!-- 针对MR任务,它会将mapreduce作业提交给resourcemanage -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!--job运行日志信息访问地址 -->
<property>