一、WebUI 使用
与HDFS一样,YARN也提供了一个WebUI服务,可以使用YARN Web用户界面监视群集、队列、应用程序、服务、流活动和节点信息。还可以查看集群详细配置的信息,检查各种应用程序和服务的日志。
1.1 首页
浏览器输入http://node2.itcast.cn:8088/访问YARN WebUI服务,页面打开后,以列表形式展示已经运行完成的各种应用程序,如MapReduce应用、Spark应用、Flink应用等,与点击页面左侧Application栏目红线框Applications链接显示的内容一致。
1.2 应用程序分析
当点击任意一个应用程序时,会打开一个新页面,并展示这个应用程序的运行信息。以MR应用为例,如果应用程序正在运行,打开的页面如图10-1-2所示;如果应用程序已经运行完成,打开的页面如下图所示。
- 正在运行的MR应用程序
- 运行完成的MR应用程序
二、HistoryServer 服务
YARN中提供了一个叫做JobHistoryServer的守护进程,它属于YARN集群的一项系统服务,仅存储已经运行完成的MapReduce应用程序的作业历史信息,并不会存储其他类型(如Spark、Flink等)应用程序的作业历史信息。
- 当启用JobHistoryServer服务时,仍需要开启日志聚合功能,否则每个Container的运行日志是存储在NodeManager节点本地,查看日志时需要访问各个NodeManager节点,不利于统一管理和分析。
- 当开启日志聚合功能后AM会自动收集每个Container的日志,并在应用程序完成后将这些日志移动到文件系统,例如HDFS。然后通过JHS的WebUI服务来提供用户使用和应用恢复。
2.1 启用 JHS 服务
在【mapred-site.xml】文件中配置指定JobHistoryServer服务地址和端口号,具体操作如下。
- 编辑文件:
[root@node1 ~]# vim /export/server/hadoop/etc/hadoop/mapred-site.xml |
- 添加属性配置:
<property> <name>mapreduce.jobhistory.address</name> <value>node1.itcast.cn:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>node1.itcast.cn:19888</value> </property> <property> <name>mapreduce.jobhistory.intermediate-done-dir</name> <value>/mr-history/intermediate</value> </property> <property> <name>mapreduce.jobhistory.done-dir</name> <value>/mr-history/done</value> </property> |
- 同步mapred-site.xml文件到集群其他机器,命令如下:
[root@node1 ~]# cd /export/server/hadoop/etc/hadoop [root@node1 hadoop]# scp -r mapred-site.xml [email protected]:$PWD [root@node1 hadoop]# scp -r mapred-site.xml [email protected]:$PWD |
2.2 启用日志聚合
首先配置运行在YARN上应用的日志聚集功能,当应用运行完成,将日志相关信息上传至HDFS文件系统,编辑文件【yarn-site.xml】和添加属性配置。
- 编辑文件:
[root@node1 ~]# vim /export/server/hadoop/etc/hadoop/yarn-site.xml |
- 添加属性配置:
<property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <property> <name>yarn.nodemanager.remote-app-log-dir</name> <value>/app-logs</value> </property> <p |