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

Windows环境Spark2.3+Minikube+K8s运行SparkPi Demo报错求助

排查Minikube上Spark 2.3 SparkPi部署问题

我之前在Windows环境下用Minikube部署Spark 2.3的SparkPi也踩过类似的坑,给你分享几个实用的排查方向:

问题1:提示SparkPi未找到

这个问题大概率是jar包路径错误或者镜像内缺少对应依赖包,可以按以下步骤逐一验证:

  • 先确认你使用的spark:spark镜像里是否存在指定的jar包:
    1. 通过minikube ssh进入Minikube节点
    2. 执行docker run -it spark:spark bash进入镜像内部
    3. 查看路径/opt/spark/examples/jars/下是否有spark-examples_2.11-2.3.0.jar
      如果不存在,建议换成官方的Spark 2.3镜像apache/spark:2.3.0,这个镜像内置了完整的示例jar包,路径也完全匹配你命令里的配置
  • 另外要再次确认类名拼写是否完全正确:org.apache.spark.examples.SparkPi,注意大小写和包名层级,别漏了任何一个点

问题2:spark-submit仅返回"State"日志无后续输出

这种情况说明Spark Driver Pod已经启动,但后续执行出现了阻塞或错误,你需要深入查看Pod日志和K8s资源状态来定位问题:

  1. 查看Driver Pod的完整日志:
    执行以下命令获取详细错误信息:
    kubectl logs spark-pi-driver
    
    这里能看到具体的失败原因,比如镜像拉取失败、权限不足、内存配置不够等
  2. 检查Pod状态:
    执行kubectl get pods,观察spark-pi-driver的状态:
    • 如果是ImagePullBackOff:说明spark:spark镜像拉取失败,要么换官方镜像,要么先在Minikube本地加载镜像(执行minikube docker-env,然后在当前终端拉取镜像,这样Minikube就能直接使用本地镜像,不用从远程仓库拉取)
    • 如果是CrashLoopBackOff:结合日志看具体崩溃原因,常见的是Spark配置冲突,比如spark.kubernetes.driver.pod.name重复,或者JVM内存分配不足
  3. 配置K8s权限:
    Spark 2.3在K8s上运行需要Driver Pod有足够的权限创建Executor Pod,你可以创建一个专用的Service Account并绑定权限:
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: spark-service-account
    ---
    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
      name: spark-role-binding
    roleRef:
      apiGroup: rbac.authorization.k8s.io
      kind: ClusterRole
      name: edit
    subjects:
    - kind: ServiceAccount
      name: spark-service-account
      namespace: default
    
    然后在spark-submit命令中添加配置:--conf spark.kubernetes.authenticate.driver.serviceAccountName=spark-service-account
  4. 验证Minikube网络连通性:
    执行minikube status确认Minikube正常运行,同时检查你的Windows主机能否访问Minikube的API地址https://192.168.1.40:8443,可以用curl -k https://192.168.1.40:8443测试(-k参数跳过证书验证)

先按这些步骤排查,应该能快速定位到具体问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:20:42