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

Windows10 64位下Spark-2.3一主一从配置任务提交失败求助

针对Windows10 64位Spark2.3一主一从集群任务提交失败的排查方案

结合你给出的已完成配置步骤,我整理了几个高频问题点和对应的排查方法,帮你定位任务失败的原因:

一、环境变量细节校验

  • 检查HADOOP_CONF_DIR路径格式:Windows系统下建议使用正斜杠/或双反斜杠\\避免转义问题,比如将路径改为 F:/spark/Hadoop2/hadoop-2.7.6/etc/hadoop
  • 确认winutils.exe是否存在:Windows下Spark依赖Hadoop的winutils工具,你需要下载与hadoop-2.7.6版本匹配的winutils.exe,放到HADOOP_HOME/bin目录下,缺失这个工具会直接导致HDFS相关操作失败
  • 验证JDK位数:确保JAVA_HOME指向的是64位JDK1.8,虽然你的版本1.8.0_121符合要求,但32位JDK会和64位系统/Spark产生兼容性问题

二、Hadoop配置文件关键项检查

core-site.xml

  • 确认fs.defaultFS配置的主节点地址正确,比如 hdfs://master:9000,同时在C:\Windows\System32\drivers\etc\hosts文件中添加主从节点的主机名-IP映射(例如192.168.1.100 master),避免节点间解析失败
  • 检查hadoop.tmp.dir配置的临时目录是否存在且有读写权限,建议设置为自定义路径比如 F:/spark/hadoop_tmp,提前创建好目录

hdfs-site.xml

  • 调整dfs.replication值:一主一从集群中,副本数建议设置为1(因为只有一个DataNode节点),避免出现副本无法写入的错误
  • 确认dfs.namenode.name.dir和dfs.datanode.data.dir的路径已创建且权限充足,比如设置为 F:/spark/hadoop_data/namenode 和 F:/spark/hadoop_data/datanode

mapred-site.xml

  • 确保已将mapred-site.xml.template重命名为mapred-site.xml,如果是Spark standalone集群,至少要配置mapreduce.framework.name为yarn或local(根据你的集群模式选择)

三、Spark集群启动与任务提交校验

  • 确认主节点正常运行:启动主节点后,访问http://你的主节点IP:8080(默认端口8080),查看集群状态是否显示正常
  • 正确启动从节点:执行命令 spark-class org.apache.spark.deploy.worker.Worker spark://master:7077(默认主节点端口7077),确保从节点能成功注册到主节点,同时关闭Windows防火墙避免节点间通信被拦截
  • 提交任务时指定集群地址:使用spark-submit命令时必须加上--master spark://master:7077参数,否则会默认使用local模式,无法提交到集群

四、日志定位具体错误

如果以上排查都没问题,直接查看Spark日志:日志默认存放在SPARK_HOME/logs目录下,spark-*-master-*.out和spark-*-worker-*.out文件中会记录详细的错误信息(比如连接超时、权限不足、依赖缺失等),根据日志内容可以精准定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:30:22