更新时间:2025-07-14 GMT+08:00

配置Yarn大作业扫描

操作场景

Yarn大作业扫描功能主要用于监控Hive、HetuEngine、Spark等作业的本地临时文件(例如shuffle文件是否过大)、监控Hive、HetuEngine、Spark的关键HDFS目录(不支持OBS)是否过大。对于占用存储资源(本地磁盘或者关键HDFS目录)过大的作业上报事件。

监控的HDFS目录请参见表1

表1 监控HDFS目录

组件

监控HDFS目录

阈值

Hive

hdfs://hacluster/tmp/hive-scratch/*/

400G

HetuEngine

hdfs://hacluster/hetuserverhistory/*/coordinator/

100G

Spark

hdfs://hacluster/sparkJobHistory/

100G

约束与限制

本章节内容仅适用于MRS 3.5.0及之后版本。

操作步骤

  1. 登录FusionInsight Manager。

    登录集群Manager具体操作,请参考访问MRS集群Manager

  2. 选择“集群 > 服务 > Yarn > 配置 > 全部配置”。
  3. 搜索并根据实际需要修改相关参数。

    • 配置Yarn大作业监控
      表2 配置Yarn大作业参数

      参数名称

      参数描述

      取值样例

      job.monitor.check.period

      大作业监控周期。

      • 配置为0表示禁用大作业监控。
      • 取值范围:1~720
      • 单位:分钟。

      10

      job.monitor.local.thread.pool

      获取NodeManager的监控的大作业的信息的线程数。

      取值范围:1~500

      50

      max.job.count

      上报的事件中显示大作业的数量。

      取值范围:1~500

      5

      job.monitor.local.dir.threshold

      监控NodeManager本地磁盘作业目录的大小,超过当前阈值就会上报事件。

      • 默认值:20
      • 取值范围:1~1800000000000
      • 单位:GB。

      20

    • 配置HetuEngine作业大目录监控
      表3 配置HetuEngine

      参数名称

      参数描述

      取值样例

      hetu.job.hdfs.monitor.dir

      监控HetuEngine作业的大目录监控路径,不允许监控根目录。

      如果需要监控的目录包含用户目录等可变目录使用/*/代替。

      hdfs://hacluster/hetuserverhistory/*/coordinator/

      hetu.job.appId.parser.rule

      监控HetuEngine作业的大目录监控路径中作业ID的提取规则。例如:

      • {subdir}/{appid}:作业ID在监控目录的子目录中,子目录名称不固定。
      • {appid}:作业ID在监控目录下。

      {appid}

      hetu.job.hdfs.dir.threshold

      监控HetuEngine作业的大目录阈值,超过当前阈值就会上报事件。

      • 取值范围:1~1800000000000
      • 默认值:100
      • 单位:GB。

      100

    • 配置Hive作业大目录监控
      • 对于大作业扫描特性中Hive组件,需要配置“hive-ext.record.mr.applicationid=true”时才能生效,详细操作步骤如下:

        在Manager界面,“集群 > 服务 > Hive > 配置 > 全部配置”,在左侧导航栏选择“HiveServer(角色) > 自定义”,在“hive.server.customized.configs”参数中添加参数名称“hive-ext.record.mr.applicationid”,值为“true”,保存配置。

        然后在Yarn组件的“全部配置”页面修改以下参数。

      • Hive大作业扫描特性目前只针对MR引擎。
      表4 配置Hive

      参数名称

      参数描述

      取值样例

      hive.job.hdfs.monitor.dir

      监控Hive作业的大目录监控路径,不允许监控根目录。

      如果需要监控的目录包含用户目录等可变目录使用/*/代替。

      hdfs://hacluster/tmp/hive-scratch/*/

      hive.job.appId.parser.rule

      监控Hive作业的大目录监控路径中作业ID的提取规则。例如:

      • {subdir}/{appid}:作业ID在监控目录的子目录中,子目录名称不固定。
      • {appid}:作业ID在监控目录下。

      {subdir}/{appid}

      hive.job.hdfs.dir.threshold

      监控Hive作业的大目录阈值,超过当前阈值就会上报事件。

      • 取值范围:1~1800000000000
      • 默认值:400
      • 单位:GB。

      400

    • 配置Spark作业大目录监控
      表5 配置Spark

      参数名称

      参数描述

      取值样例

      spark.job.hdfs.monitor.dir

      监控Spark作业的大目录监控路径,不允许监控根目录。

      如果需要监控的目录包含用户目录等可变目录使用/*/代替。

      hdfs://hacluster/sparkJobHistory/

      spark.job.appId.parser.rule

      监控Spark作业的大目录监控路径中作业ID的提取规则,例如:

      • {subdir}/{appid}:作业ID在监控目录的子目录中,子目录名称不固定。
      • {appid}:作业ID在监控目录下。

      {appid}

      spark.job.hdfs.dir.threshold

      监控Spark作业的大目录阈值,超过当前阈值就会上报事件。

      • 取值范围:1~1800000000000
      • 默认值:100
      • 单位:GB。

      100

  4. 保存修改的配置。保存完成后请重新启动配置过期的服务或实例以使配置生效。