在Kubernetes上运行Spark示例失败

问题描述 投票:0回答:1
  • 我的Mac OS / X版本:10.15.3
  • Minikube版本:1.9.2

我启动minikube时使用以下命令,而无需进行任何额外配置。

minikube start --driver=virtualbox
--image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers' --cpus 4 --memory 4096 --alsologtostderr

并且我从Spark官方网站下载spark-2.4.5-bin-hadoop2.7,并通过以下命令构建spark图像

eval $(minikube docker-env)
./bin/docker-image-tool.sh -m -t 2.4.5 build

然后,我在存储Spark 2.4.5的本地计算机中使用follwing命令运行Spark-pi。


kubectl create serviceaccount spark
kubectl create clusterrolebinding spark-role --clusterrole=admin --serviceaccount=default:spark --namespace=default
./bin/spark-submit \
--master k8s://https://192.168.99.104:8443 \
--deploy-mode cluster \
--name spark-pi \
--class org.apache.spark.examples.SparkPi \
--conf spark.kubernetes.authenticate.driver.serviceAccountName=spark \
--conf spark.executor.instances=1 \
--conf spark.kubernetes.container.image=spark:2.4.5 \
local:///opt/spark/examples/jars/spark-examples_2.11-2.4.5.jar

我收到以下错误

enter image description here

完整日志可以在full log中找到

谁能解释这个错误以及如何解决?

apache-spark kubernetes minikube
1个回答
0
投票

请检查您与Minikube一起启动的Kubernetes版本。

Sparkv2.4.5fabric8 Kubernetes客户端v4.6.1与Kubernetes API兼容,最高支持1.15.2(请参阅answer)。

您可以通过在--kubernetes-version命令中添加minikube start标志(请参阅docs)来使用Minikube启动特定的Kubernetes API版本。

© www.soinside.com 2019 - 2024. All rights reserved.