You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1环境下Hadoop 3.3.4 MapReduce任务启动失败排查求助

解决Mac M1上Hadoop 3.3.4 MapReduce任务的JAVA路径错误问题

核心原因

Mac M1为ARM64架构,Hadoop的YARN容器默认可能尝试调用x86架构的Java路径,或者容器内未正确继承/设置JAVA_HOME环境变量,导致找不到Java可执行文件。

具体修复步骤

1. 确认本地JAVA_HOME的正确路径

在终端执行echo $JAVA_HOME,获取类似/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home的路径,确保使用的是ARM64版本JDK(不要用依赖Rosetta兼容的x86版本)。

2. 修改YARN配置文件传递环境变量

编辑$HADOOP_HOME/etc/hadoop/yarn-site.xml,添加以下配置,强制在容器中注入JAVA_HOME:

<property>
    <name>yarn.app.mapreduce.am.env</name>
    <value>HADOOP_MAPRED_HOME=${HADOOP_HOME};JAVA_HOME=${JAVA_HOME}</value>
</property>
<property>
    <name>mapreduce.map.env</name>
    <value>HADOOP_MAPRED_HOME=${HADOOP_HOME};JAVA_HOME=${JAVA_HOME}</value>
</property>
<property>
    <name>mapreduce.reduce.env</name>
    <value>HADOOP_MAPRED_HOME=${HADOOP_HOME};JAVA_HOME=${JAVA_HOME}</value>
</property>

3. 固定hadoop-env.sh中的JAVA_HOME

确保$HADOOP_HOME/etc/hadoop/hadoop-env.sh里的JAVA_HOME为硬编码的绝对路径,避免依赖系统环境变量:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home

替换为你实际获取到的JAVA_HOME路径。

4. 检查MapReduce核心配置

编辑$HADOOP_HOME/etc/hadoop/mapred-site.xml,确认以下配置:

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<property>
    <name>mapreduce.application.classpath</name>
    <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
</property>

5. 重启Hadoop服务

执行命令重启所有服务:

stop-all.sh
start-all.sh

或单独重启YARN与MapReduce服务:

stop-yarn.sh && stop-mapred.sh
start-yarn.sh && start-mapred.sh

6. 验证修复效果

重新运行wordcount示例:

hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar wordcount /input /output

注意提前创建/input目录并上传测试文件,/output目录不能预先存在。

额外排查点

  • 若问题仍存在,执行java -version确认JDK架构,输出需包含aarch64字样,确保是ARM64版本。
  • 避免使用通过Rosetta安装的x86版本JDK,Hadoop容器在ARM架构下无法兼容该环境。

内容的提问来源于stack exchange,提问作者Jatin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 12:50:23