apache-spark - 在Kubernetes上运行Spark示例失败

标签 apache-spark kubernetes minikube

  • 我的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中找到

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

    最佳答案

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

    Spark v2.4.5 fabric8 Kubernetes客户端v4.6.1与Kubernetes API兼容,直到1.15.2(请参阅answer)。

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

    另外,此问题可能是由this问题注释中描述的OkHttp库错误引起的。

    关于apache-spark - 在Kubernetes上运行Spark示例失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61538791/

    相关文章:

    scala - Spark Scala 2.10 元组限制

    docker - kubernetes上的 Spark :预期为HTTP 101响应,但为 '403 Forbidden'

    apache-spark - 使用USING和PARTITIONED BY子句的spark hive create table的有效语法是什么?

    ssl - 如何将 Kubernetes Nginx Ingress 与 Consul 和 Consul Connect 集成

    apache-spark - Spark : Creating a RDD from a REST service

    amazon-web-services - 如何允许代入角色从 EC2 连接到 AWS 上的 EKS?

    python - 如何从Python进程登录Kubernetes容器日志

    azure - 从 azr 注册表拉取时出现 ErrImagePull

    docker - 127.0.0.1 :5000: getsockopt: connection refused in Minikube

    kubernetes - Kubernetes 是否缓存 docker-registry secret ?