7 配置YARN
YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce之上,提供了高可用性、高扩展性。
7.1 修改配置文件 mapred-site.xml
cd /usr/local/hadoop/etc/hadoop
vim mapred-site.xml #在<configuration></configuration>中间加上如下内容
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
7.2 修改配置文件 gedit yarn-site.xml,方法同上
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>
注:上面的localhost可以改成具体的IP地址。
7.3 启动YARN:
root@hadoop01:/usr/local/hadoop#./sbin/start-yarn.sh
注:
因为使用root用户运行,所以需要在./sbin目录中修改start-yarn.sh和stop-yarn.sh两个文件
在文件中加入以下三行:
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
7.4 开启历史服务器,才能在Web中查看任务运行情况(对spark没意义)
#下面这条命令在新服务器中无法使用了,需要改成下面的新命令
#./sbin/mr-jobhistory-daemon.sh start historyserver
#新指令
./bin/mapred --daemon start historyserver
7.5 查看任务
root@hadoop01:/usr/local/hadoop# jps
15538 SecondaryNameNode
16855 NodeManager
15319 DataNode
17307 Jps
15147 NameNode
16715 ResourceManager
注:
如果没有NodeManager和ResourceManager,则需要修改yarn-env.sh,在文件中添加如下三行
cd /usr/local/hadoop/etc/hadoop
export YARN_RESOURCEMANAGER_OPTS="--add-opens java.base/java.lang=ALL-UNNAMED"
export YARN_NODEMANAGER_OPTS="--add-opens java.base/java.lang=ALL-UNNAMED"
7.6 停止服务器
./sbin/stop-yarn.sh
mapred --daemon stop historyserver
注:
如果启动yarn后,能在浏览目录中发现tmp文件夹,说明安装成功。
但是需要设置tmp文件夹的权限:
hdfs fd -chown -R hadoop:hadoop /tmp
此tmp是网页的逻辑地址,须使用"/"