`
zhangxiong0301
  • 浏览: 356823 次
社区版块
存档分类
最新评论

hadoop2.x配置jobHistory server(转)

阅读更多

Hadoop自带了一个历史服务器,可以通过历史服务器查看已经运行完的Mapreduce作业记录,比如用了多少个Map、用了多少个Reduce、作业提交时间、作业启动时间、作业完成时间等信息。默认情况下,Hadoop历史服务器是没有启动的,我们可以通过下面的命令来启动Hadoop历史服务器

  1. $ sbin/mr-jobhistory-daemon.sh   start historyserver
复制代码


这样我们就可以在相应机器的19888端口上打开历史服务器的WEB UI界面。可以查看已经运行完的作业情况。历史服务器可以单独在一台机器上启动,主要是通过以下的参数配置:

  1. <property>
  2.     <name>mapreduce.jobhistory.address</name>
  3.     <value>0.0.0.0:10020</value>
  4. </property>
  5. <property>
  6.     <name>mapreduce.jobhistory.webapp.address</name>
  7.     <value>0.0.0.0:19888</value>
  8. </property>
复制代码


上面的参数是在mapred-site.xml文件中进行配置,mapreduce.jobhistory.address和mapreduce.jobhistory.webapp.address默认的值分别是0.0.0.0:10020和0.0.0.0:19888,大家可以根据自己的情况进行相应的配置,参数的格式是host:port。配置完上述的参数之后,重新启动Hadoop jobhistory,这样我们就可以在mapreduce.jobhistory.webapp.address参数配置的主机上对Hadoop历史作业情况经行查看。

  很多人就会问了,这些历史数据是存放在哪里的?是存放在HDFS中的,我们可以通过下面的配置来设置在HDFS的什么目录下存放历史作业记录:


  1. <property>
  2.     <name>mapreduce.jobhistory.done-dir</name>
  3.     <value>${yarn.app.mapreduce.am.staging-dir}/history/done</value>
  4. </property>
  5. <property>
  6.     <name>mapreduce.jobhistory.intermediate-done-dir</name>
  7.     <value>${yarn.app.mapreduce.am.staging-dir}
  8.                          /history/done_intermediate</value>
  9. </property>
  10. <property>
  11.     <name>yarn.app.mapreduce.am.staging-dir</name>
  12.     <value>/tmp/hadoop-yarn/staging</value>
  13.     <description>这个配置项是放在yarn-site.xml里面的。该参数指定的目录在hdfs上,主要用来存放application的说明信息,包括依赖的jar,输入数据的划分信息以及作业的执行计划等</descrption>
  14. </property>
复制代码


上面的配置都默认的值,我们可以在mapred-site.xml文件中进行修改。其中,mapreduce.jobhistory.done-dir参数的意思是在什么目录下存放已经运行完的Hadoop作业记录;mapreduce.jobhistory.intermediate-done-dir的意思是正在运行的Hadoop作业记录。我们可以到mapreduce.jobhistory.done-dir参数配置的目录下看看里面存放的是什么东西:

  1. [wyp@master /home/wyp/hadoop]# bin/hadoop fs -ls /jobs/done/
  2. Found 2 items
  3. drwxrwx---   - wyp supergroup          0 2013-12-03 23:36 /jobs/done/2013
  4. drwxrwx---   - wyp supergroup          0 2014-02-01 00:02 /jobs/done/2014
  5. [wyp@master /home/wyp/hadoop]# bin/hadoop fs -ls /jobs/done/2014/02/16
  6. Found 27 items
  7. drwxrwx--- - wyp supergroup 0 2014-02-16 02:02 /jobs/done/2014/02/16/001216
  8. drwxrwx--- - wyp supergroup 0 2014-02-16 02:44 /jobs/done/2014/02/16/001217
  9. drwxrwx--- - wyp supergroup 0 2014-02-16 03:38 /jobs/done/2014/02/16/001218
  10. drwxrwx--- - wyp supergroup 0 2014-02-16 04:20 /jobs/done/2014/02/16/001219
  11. drwxrwx--- - wyp supergroup 0 2014-02-16 05:14 /jobs/done/2014/02/16/001220
  12. [wyp@master hadoop]# bin/hadoop fs -ls /jobs/done/2014/02/16/001216
  13. Found 1318 items
  14. -rwxrwx---   3 wyp    supergroup   45541335 2014-02-16 00:11 /jobs/done/2014
  15. /02/16/001216/job_1388830974669_1216161-1392478837250-wyp-insert+overwrite
  16. +table+qt_city_query_ana...e%28Stage-1392480689141-5894-33-SUCCEEDED-wyp.jhist
  17. -rwxrwx---   3 wyp    supergroup     193572 2014-02-16 00:11 /jobs/done
  18. /2014/02/16/001216/job_1388830974669_1216161_conf.xml
  19. -rwxrwx---   3 wyp    supergroup   45594759 2014-02-16 00:11 /jobs/done/2014
  20. /02/16/001216/job_1388830974669_1216162-1392478837250-wyp-insert+overwrite
  21. +table+qt_city_query_ana...e%28Stage-1392480694818-5894-33-SUCCEEDED-wyp.jhist
  22. -rwxrwx---   3 wyp    supergroup     193572 2014-02-16 00:11 /jobs/done
  23. /2014/02/16/001216/job_1388830974669_1216162_conf.xml
复制代码


 通过上面的结果我们可以得到一下几点:
  (1)、历史作业记录是存放在HDFS目录中;
  (2)、由于历史作业记录可能非常多,所以历史作业记录是按照年/月/日的形式分别存放在相应的目录中,这样便于管理和查找;
  (3)、对于每一个Hadoop历史作业记录相关信息都用两个文件存放,后缀名分别为*.jhist,*.xml。*.jhist文件里存放的是具体Hadoop作业的详细信息,如下:


  1. {
  2.   "type": "JOB_INITED",
  3.   "event": {
  4.       "org.apache.hadoop.mapreduce.jobhistory.JobInited": {
  5.          "jobid": "job_1388830974669_1215999",
  6.          "launchTime": 1392477383583,
  7.          "totalMaps": 1,
  8.          "totalReduces": 1,
  9.          "jobStatus": "INITED",
  10.          "uberized": false
  11.       }
  12.    }
  13. }
复制代码

这是Hadoop JOB初始化的一条信息,通过观察我们知道,*.jhist文件里面全部都是Json格式的数据。根据type进行区分这条Json的含义,在Hadoop中,总共包含了一下几个type:


  1. "JOB_SUBMITTED",
  2. "JOB_INITED",
  3. "JOB_FINISHED",
  4. "JOB_PRIORITY_CHANGED",
  5. "JOB_STATUS_CHANGED",
  6. "JOB_FAILED",
  7. "JOB_KILLED",
  8. "JOB_ERROR",
  9. "JOB_INFO_CHANGED",
  10. "TASK_STARTED",
  11. "TASK_FINISHED",
  12. "TASK_FAILED",
  13. "TASK_UPDATED",
  14. "NORMALIZED_RESOURCE",
  15. "MAP_ATTEMPT_STARTED",
  16. "MAP_ATTEMPT_FINISHED",
  17. "MAP_ATTEMPT_FAILED",
  18. "MAP_ATTEMPT_KILLED",
  19. "REDUCE_ATTEMPT_STARTED",
  20. "REDUCE_ATTEMPT_FINISHED",
  21. "REDUCE_ATTEMPT_FAILED",
  22. "REDUCE_ATTEMPT_KILLED",
  23. "SETUP_ATTEMPT_STARTED",
  24. "SETUP_ATTEMPT_FINISHED",
  25. "SETUP_ATTEMPT_FAILED",
  26. "SETUP_ATTEMPT_KILLED",
  27. "CLEANUP_ATTEMPT_STARTED",
  28. "CLEANUP_ATTEMPT_FINISHED",
  29. "CLEANUP_ATTEMPT_FAILED",
  30. "CLEANUP_ATTEMPT_KILLED",
  31. "AM_STARTED"
复制代码

而*.xml文件里面记录的是相应作业运行时候的完整参数配置,大家可以进去查看一下。

  (4)、每一个作业的历史记录都存放在一个单独的文件中。
  mapreduce.jobhistory.intermediate-done-dir配置的目录下主要存放的是当前正在运行的Hadoop任务的记录相关信息,感兴趣的同学可以进去看看,这里就不介绍了。
  如果对Hadoop历史服务器WEB UI上提供的数据不满意,我们就可以通过对mapreduce.jobhistory.done-dir配置的目录进行分析,得到我们感兴趣的信息,比如统计某天中运行了多少个map、运行最长的作业用了多少时间、每个用户运行的Mapreduce任务数、总共运行了多少Mapreduce数等信息,这样对监控Hadoop集群是很好的,我们可以根据那些信息来确定怎么给某个用户分配资源等等。

 细心的同学可能发现,在Hadoop历史服务器的WEB UI上最多显示20000个历史的作业记录信息;其实我们可以通过下面的参数进行配置,然后重启一下Hadoop jobhistory即可。
  1. <property>
  2.     <name>mapreduce.jobhistory.joblist.cache.size</name>
  3.     <value>20000</value>
  4. </property>
复制代码

 

分享到:
评论

相关推荐

    hadoop1.x与hadoop2.x配置异同

    在探讨Hadoop1.x与Hadoop2.x配置的异同之前,我们首先简要回顾一下GridGain In-Memory HDFS的特性,这是基于行业首个高性能双模式内存文件系统,完全兼容HDFS。GridGain FileSystem(GGFS)作为Hadoop HDFS的即插即...

    hadoop2.x主要配置

    包含了hadoop配置文件core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml

    Hadoop3.x系统文档

    文档中对于Hadoop 3.x常用配置与Hadoop 2.x的对比,提供了一系列常见配置项的解释,例如: - 如何指定Hadoop临时路径,这关系到Hadoop执行过程中临时文件的存放。 - dfs.blocksize可以使用的单位,文件块大小是HDFS...

    理清Hadoop1.x与Hadoop2.x区别

    理清Hadoop1.x与Hadoop2.x区别,对比分析。 Hadoop是大数据惊世之作,必学的东西,需要知道: 它由哪些部分组成? 各自的作用是什么? 如果工作的?

    Hadoop 2.x与3.x 22点比较,Hadoop 3.x比2.x的改进

    在这篇文章中,我们将讨论Hadoop 2.x与Hadoop 3.x之间的比较。 Hadoop3版本中添加了哪些新功能,Hadoop3中兼容的Hadoop 2程序,Hadoop 2和Hadoop 3有什么区别? 二、Hadoop 2.x与Hadoop 3.x比较 本节将讲述Hadoop 2...

    win32win64hadoop2.7.x.hadoop.dll.bin

    标题“win32win64hadoop2.7.x.hadoop.dll.bin”暗示了这是一个与Hadoop 2.7.x版本相关的二进制文件,适用于32位和64位的Windows操作系统。描述中提到,这些文件是用于在Windows环境下部署Hadoop时必需的组件,并且在...

    Hadoop2.X集群安装与配置

    本文将详细介绍如何在三节点环境下安装和配置Hadoop 2.x 集群。 一、环境准备 在开始Hadoop的安装前,你需要确保你的硬件环境满足基本需求,包括足够的内存、硬盘空间以及至少三台服务器或虚拟机。每台节点应安装...

    初识Hadoop 2.x.pdf

    ### Hadoop 2.x 入门知识点概览 #### 一、大数据应用发展前景 随着信息技术的飞速发展,数据量呈爆炸式增长,这不仅带来了挑战也孕育着新的机遇。根据2015年中国(深圳)IT领袖峰会的讨论,大数据正逐渐成为推动...

    hadoop2.x 介绍

    hadoop2.x 介绍,及对比hadoop1.x的区别。hadoop2.x的新特性的详细介绍。

    适合hadoop2.9.* 以及 hadoop2.7.* 的winutils.exe_hadoop.dll 配置文件

    2. **复制文件**: 解压后,你会找到`winutils.exe`和`hadoop.dll`。将这两个文件复制到你的Hadoop安装目录下的`bin`子目录。例如,如果Hadoop安装在`C:\hadoop\hadoop-2.9.x\bin`,则应该将这两个文件粘贴到这里。 3...

    Hadoop 2.X HDFS源码剖析-高清-完整目录-2016年3月

    Hadoop 2.X HDFS源码剖析-高清-完整目录-2016年3月,分享给所有需要的人!

    Hadoop2.x 深入浅出企业级应用实战

    Hadoop2.x版本是对前一个版本的重大改进,它引入了YARN(Yet Another Resource Negotiator),这是一个资源管理和任务调度平台,它不仅改进了系统的可扩展性,还为各种数据处理模型提供了更好的支持。 《Hadoop2.x...

    hadoop2.x 安装文档

    &lt;value&gt;org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider &lt;name&gt;dfs.ha.fencing.methods &lt;value&gt;sshfence &lt;name&gt;dfs.ha.fencing.ssh.private-key-files &lt;value&gt;/root/....

    hadoop3.x盘地址及官方其他版本下载地址.rar

    Hadoop 3.x系列是Hadoop的主要版本之一,相比之前的Hadoop 2.x,它引入了诸多改进和优化,提升了整体的存储性能和计算效率。在本文中,我们将深入探讨Hadoop 3.x的关键特性、优化之处以及如何获取和安装这个版本。 ...

    Apache Hadoop2.x 安装入门详解 PDF

    Hadoop 2.x 是该框架的一个重要版本,引入了许多改进和优化,使得它更加适合企业级的大数据处理需求。本教程将详细讲解Apache Hadoop 2.x的安装过程,帮助初学者快速入门。 一、Hadoop的体系结构 Hadoop的核心由两...

    Hadoop 2.x Administration Cookbook epub

    Hadoop 2.x Administration Cookbook 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

    大数据技术之Hadoop3.x-视频教程网盘链接提取码下载 .txt

    Hadoop是大数据技术中最重要的框架之一,是学习大数据必备的第一课,在Hadoop平台之上,可以更容易地开发和运行其他处理大规模数据的框架。尚硅谷Hadoop视频教程再次重磅升级!以企业实际生产环境为背景,增加了更...

    hadoop2.x安装

    hadoop2.x安装指南.

    Hadoop 2.x单节点部署学习。

    此外,`mapreduce.jobtracker.address`在旧版Hadoop中是必要的,但在Hadoop 2.x中已被替换为YARN相关配置。 在部署Hadoop 2.x单节点环境时,你需要先下载并安装Hadoop二进制包,然后根据你的硬件和需求调整上述配置...

    hadoop 2.X 伪分布式配置文件

    这个压缩包文件“hadoop 2.X 伪分布式配置文件”是为在单个机器上模拟Hadoop集群的伪分布式环境而设计的。这种环境对于学习、测试和调试Hadoop组件非常有用,因为它避免了实际分布式环境中的复杂性,同时保留了主要...

Global site tag (gtag.js) - Google Analytics