章节内容:

上一节完成:

  • HDFS 文件操作
  • WordCount 案例 分布式运行
  • 查看运行结果

背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。
之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。

注意,如果你和我一样,打算用公网部署,那一定要做好防火墙策略,避免不必要的麻烦!!!
请大家都以学习为目的,也请不要对我的服务进行嗅探或者攻击!!!

但是有一台公网服务器我还运行着别的服务,比如前几天发的:autodl-keeper 自己写的小工具,防止AutoDL机器过期的。还跑着别的Web服务,所以只能挤出一台 2C2G 的机器。那我的配置如下了:

  • 2C4G 编号 h121
  • 2C4G 编号 h122
  • 2C2G 编号 h123

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_mapreduce


请确保上一节内容全部完毕和跑通!!!

目前问题

YARN中运行的任务生产的日志都看不了,所以如果需要查看程序历史的运行结果,需要配置历史服务器。

历史服务

mapred-site

修改 mapred-site.xml,在之前的基础上,添加如下的内容:

<!-- 历史服务器端地址 -->
<property>
        <name>mapreduce.jobhistory.address</name>
        <value>h121.wzk.icu:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>h121.wzk.icu:19888</value>
</property>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_mapreduce_02

同步配置

通过分发脚本将脚本同步,你也可以手动都配置一下。

rsync-script mapred-site.xml
  • 1.

保证这三台节点的配置一致即可!

  • h121
  • h122
  • h123

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_大数据_03

启动服务

h121 机器上运行

mr-jobhistory-daemon.sh start historyserver
  • 1.

查看结果

jps
  • 1.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_大数据_04

访问网页

http://h121.wzk.icu:19888/jobhistory
  • 1.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_mapreduce_05

日志聚集

h121节点上修改 yarn-site.xml 修改为如下的内容:

vim yarn-site.xml
  • 1.
<!-- 日志聚集 -->
<property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
</property>
<!-- 日志保留时间设置7天 -->
<property>
        <name>yarn.log-aggregation.retain-seconds</name>
  <value>604800</value>
</property>
<property>
        <name>yarn.log.server.url</name>
        <value>http://h121.wzk.icu:19888/jobhistory/logs</value>
</property>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

修改截图如下:

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_服务器_06

同步配置

同样的,你也可以使用手动进行同步,只要保证配置是一致的即可

rsync-script yarn-site.xml
  • 1.

重启服务

h121 上进行操作:

yarn-daemon.sh stop resourcemanager
yarn-daemon.sh stop nodemanager
mr-jobhistory-daemon.sh stop historyserver
  • 1.
  • 2.
  • 3.

h121 上继续操作:

yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
mr-jobhistory-daemon.sh start historyserver
  • 1.
  • 2.
  • 3.

测试效果

hdfs dfs -rm -R /wcoutput
  • 1.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_mapreduce_07

运行测试

重新运行我们之前跑的 WordCount 的案例:

cd /opt/servers/hadoop-2.9.2
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.2.jar wordcount /wcinput /wcoutput
  • 1.
  • 2.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_分布式_08

查看日志

http://h121.wzk.icu:19888/jobhistory
  • 1.

Hadoop-06-Hadoop集群 历史服务器配置 超详细 执行任务记录 JobHistoryServer MapReduce执行记录 日志聚合结果可视化查看_服务器_09