文档首页/ MapReduce服务 MRS/ 组件操作指南(LTS版)/ 使用Yarn/ Yarn常见问题/ 开启Native Task特性后,Reduce任务在部分操作系统运行失败
更新时间:2025-07-14 GMT+08:00

开启Native Task特性后,Reduce任务在部分操作系统运行失败

问题

运行包含Reduce的Mapreduce任务时,通过-Dmapreduce.job.map.output.collector.class=org.apache.hadoop.mapred.nativetask.NativeMapOutputCollectorDelegator命令开启Native Task特性,任务在部分操作系统运行失败,日志中提示错误“version 'GLIBCXX_3.4.20' not found”。

回答

该问题原因是操作系统的GLIBCXX版本较低,导致该特性依赖的libnativetask.so.1.0.0库无法加载,进而导致任务失败。

规避手段

  1. 登录FusionInsight Manager。

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

  2. 选择“集群 > 服务 > Yarn > 配置 > 全部配置”。
  3. 在左侧导航栏选择“ResourceManager(角色) > 自定义”。
  4. 在“resourcemanager.mapred-site.customized.configs”参数中添加以下内容。

    • 名称:mapreduce.job.map.output.collector.class
    • 取值:org.apache.hadoop.mapred.MapTask$MapOutputBuffer

  5. 保存修改的配置。保存完成后请重新启动配置过期的服务或实例。
  6. 修改完成后需要重新下载客户端,或者更新客户端配置。