Yarn JobHistory配置详解

作为一名经验丰富的开发者,我将带领你了解Yarn JobHistory的配置过程。首先,我们需要了解整个配置过程的流程。下面是一个简单的流程图:

graph LR
A[开始] --> B(配置yarn-site.xml)
B --> C(配置mapred-site.xml)
C --> D(配置hadoop-mapreduce-historyserver.properties)
D --> E(启动JobHistory Server)

接下来,我将详细解释每一步需要做什么,包括需要使用的代码和注释。

步骤一:配置yarn-site.xml

在这一步中,我们需要对yarn-site.xml进行配置。在配置文件中,我们需要设置以下几个参数:

<!-- 开启JobHistory -->
<property>
  <name>yarn.log-aggregation-enable</name>
  <value>true</value>
</property>

<!-- 设置JobHistory Server的地址 -->
<property>
  <name>yarn.timeline-service.address</name>
  <value>hostname:port</value>
</property>

<!-- 设置JobHistory存储路径 -->
<property>
  <name>yarn.timeline-service.store-class</name>
  <value>org.apache.hadoop.yarn.server.timeline.LeveldbTimelineStore</value>
</property>

<!-- 设置JobHistory存储路径 -->
<property>
  <name>yarn.timeline-service.leveldb-timeline-store.path</name>
  <value>/tmp/jobhistory</value>
</property>
  • yarn.log-aggregation-enable参数用于开启JobHistory日志聚合功能。
  • yarn.timeline-service.address参数用于设置JobHistory Server的地址。
  • yarn.timeline-service.store-class参数用于指定JobHistory存储的方式。
  • yarn.timeline-service.leveldb-timeline-store.path参数用于设置JobHistory存储的路径。

步骤二:配置mapred-site.xml

在这一步中,我们需要对mapred-site.xml进行配置。在配置文件中,我们需要设置以下几个参数:

<!-- 开启JobHistory日志聚合功能 -->
<property>
  <name>mapreduce.jobhistory.aggregator.enable</name>
  <value>true</value>
</property>

<!-- 设置JobHistory Server的地址 -->
<property>
  <name>mapreduce.jobhistory.address</name>
  <value>hostname:port</value>
</property>

<!-- 设置JobHistory存储路径 -->
<property>
  <name>mapreduce.jobhistory.webapp.address</name>
  <value>hostname:port</value>
</property>
  • mapreduce.jobhistory.aggregator.enable参数用于开启JobHistory日志聚合功能。
  • mapreduce.jobhistory.address参数用于设置JobHistory Server的地址。
  • mapreduce.jobhistory.webapp.address参数用于设置JobHistory Web应用的地址。

步骤三:配置hadoop-mapreduce-historyserver.properties

在这一步中,我们需要对hadoop-mapreduce-historyserver.properties进行配置。在配置文件中,我们需要设置以下几个参数:

# 设置JobHistory Server的地址
mapreduce.jobhistory.address=hostname:port

# 设置JobHistory存储路径
mapreduce.jobhistory.webapp.address=hostname:port
  • mapreduce.jobhistory.address参数用于设置JobHistory Server的地址。
  • mapreduce.jobhistory.webapp.address参数用于设置JobHistory Web应用的地址。

步骤四:启动JobHistory Server

在完成上述配置之后,我们需要启动JobHistory Server以使配置生效。在终端中,使用以下命令启动JobHistory Server:

$ yarn --daemon start historyserver

以上就是配置Yarn JobHistory的详细过程。接下来,让我们通过甘特图和序列图来更清晰地展示配置过程。

甘特图

下面是一个配置Yarn JobHistory的甘特图,用于展示每个步骤的时间安排:

gantt
    dateFormat  YYYY-MM-DD
    title Yarn JobHistory配置甘特图

    section 配置yarn-site.xml
    配置yarn-site.xml           :done, a1, 2022-01-01, 1d

    section 配置mapred-site.xml
    配置mapred-site.xml         :done, a2, 2022-01-02, 1d

    section 配置hadoop-mapreduce-historyserver.properties
    配置hadoop-mapreduce-historyserver.properties  :done, a3, 2022-01-03, 1d