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

Spark独立集群(Windows7)作业提交后一直处于WAITING状态求助

解决Spark独立集群作业一直处于WAITING状态的排查步骤

嘿,我之前在Windows环境部署Spark独立集群时也踩过类似的坑,既然你已经排除了防火墙和目录权限问题,那咱们从几个容易被忽略的方向入手排查:

  • 确认Worker节点的实际可用资源
    Spark UI显示节点注册成功不代表有空闲资源。你可以打开UI的Workers页面,仔细看每个Worker的Cores Used和Memory Used统计,确认有没有剩余的核心和内存。另外在Worker节点用tasklist命令看看系统进程的资源占用情况,说不定是其他程序把资源占满了。

  • 核对作业提交的资源请求参数
    有可能你提交作业时指定的--executor-cores、--executor-memory超过了集群的总可用资源。比如两个节点加起来只有4核8G内存,但你要求每个executor用3核5G,那肯定没资源分配,作业就一直等。可以先试试用最小参数提交测试:

    spark-submit --class com.your.package.MainClass --master spark://your-master-ip:7077 --executor-cores 1 --executor-memory 1g your-application.jar
    
  • 检查Master的调度配置
    看看Master节点的spark-defaults.conf里有没有设置spark.deploy.defaultCores这类参数,这个参数会限制作业默认能使用的核心数,如果设得太小,作业也会因为拿不到足够资源而等待。可以尝试注释掉这个参数或者调整到合理值,然后重启Master服务。

  • 验证Spark版本与Windows 7的兼容性
    高版本的Spark(比如3.x及以上)对Windows 7的支持不太友好,很多依赖库在Win7上会有兼容性问题。如果你用的是新版本,建议降级到2.4.x系列,这个版本在Win7上的稳定性会好很多。

  • 重启Worker进程试试
    有时候Worker进程虽然在UI上显示注册成功,但实际上已经假死了。去Worker节点的任务管理器找到Spark对应的java.exe进程,结束后重新启动Worker,再提交作业看看状态变化。

  • 深挖Master日志的细节
    去Master节点的spark/logs目录,找到最新的Master日志文件,搜索和WAITING相关的日志内容,通常会有更具体的提示,比如“insufficient resources for executor”,这能直接帮你定位问题根源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:18:41