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

在AWS EKS集群中通过spark submit启动Driver Pod失败

解决EKS集群中Spark Cluster模式Driver Pod启动报错问题

可能原因及修复步骤

1. Spark镜像配置错误

Spark官方镜像(如apache/spark或bitnami/spark)在cluster模式下,启动Driver的正确入口并非直接使用driver命令。如果你的Pod配置里把command设为["driver"],必然会出现找不到可执行文件的报错。

修复:

  • 确认--conf spark.kubernetes.driver.container.image指定的镜像为官方合规镜像,确保镜像包含完整的Spark运行环境。
  • 若自定义了Driver Pod的启动命令,应使用镜像内置的spark-submit脚本,比如官方镜像用/opt/spark/bin/spark-submit,bitnami镜像用/opt/bitnami/spark/bin/spark-submit。

2. 自定义镜像缺失必要文件或路径配置错误

如果用的是自己构建的Spark镜像,可能存在Spark二进制文件未正确打包、$PATH未包含Spark的bin目录等问题。

修复:

  • 构建镜像时,在Dockerfile中添加环境变量配置,将Spark的bin目录加入PATH:
    ENV PATH="/opt/spark/bin:${PATH}"
    
  • 验证镜像内存在spark-submit等必要可执行文件,且文件拥有可执行权限。

3. Spark提交参数错误

提交任务时错误设置了spark.kubernetes.driver.command参数,指定了不存在的driver命令,会直接导致启动失败。

修复:

  • 检查提交命令,移除错误的spark.kubernetes.driver.command配置,或者替换为正确的启动命令。示例正确提交命令:
    spark-submit \
      --master k8s://https://<eks-api-server-url> \
      --deploy-mode cluster \
      --name spark-test \
      --conf spark.kubernetes.container.image=apache/spark:3.5.0 \
      --conf spark.kubernetes.driver.pod.name=spark-driver-test \
      local:///opt/spark/examples/src/main/python/pi.py
    
  • 注意任务文件路径要使用local://前缀,且路径需与镜像内的实际文件位置一致。

4. EKS节点容器运行时配置异常

极少数情况下,containerd配置异常会导致无法正确解析镜像内的可执行文件路径。

修复:

  • 检查EKS节点上的containerd配置,确保容器环境变量继承正常,未被错误覆盖。
  • 重启节点的containerd服务,或重新部署节点组,恢复正常的运行时环境。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 02:40:55