我在kuberenets上部署了火花
helm install microsoft/spark --version 1.0.0
(也尝试了比南图表,结果相同)
我转到$ SPARK_HOME / bin
docker-image-tool.sh -r -t my-tag build
此返回 找不到docker映像。此脚本必须从可运行的Apache Spark发行版中运行。
,但是所有spark可运行对象都在此目录中。
bash-4.4# cd $SPARK_HOME/bin
bash-4.4# ls
beeline find-spark-home.cmd pyspark.cmd spark-class spark-shell.cmd spark-sql2.cmd sparkR
beeline.cmd load-spark-env.cmd pyspark2.cmd spark-class.cmd spark-shell2.cmd spark-submit sparkR.cmd
docker-image-tool.sh load-spark-env.sh run-example spark-class2.cmd spark-sql spark-submit.cmd sparkR2.cmd
find-spark-home pyspark run-example.cmd spark-shell spark-sql.cmd spark-submit2.cmd
任何建议我在做什么错? 我没有使用Spark进行其他任何配置,我是否缺少某些东西?我应该自己安装docker还是任何其他工具?
答案 0 :(得分:1)
您在这里混在一起。
运行helm install microsoft/spark --version 1.0.0
时,您将在Kubernetes中部署具有所有必备组件的Spark。头盔正在为您做所有的辛苦工作。运行此命令后,即可使用Spark。
在使用Helm部署Spark之后,您尝试从已经在Kubernetes上运行的Spark Pod内部部署Spark。
这是两个不同的东西,不应该混在一起。 This指南介绍了如何在Kubernetes上手动运行Spark,但幸运的是,可以像以前一样使用Helm完成此操作。
运行helm install myspark microsoft/spark --version 1.0.0
时,输出告诉您如何访问spark webui:
NAME: myspark
LAST DEPLOYED: Wed Apr 8 08:01:39 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
NOTES:
1. Get the Spark URL to visit by running these commands in the same shell:
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc --namespace default -w myspark-webui'
export SPARK_SERVICE_IP=$(kubectl get svc --namespace default myspark-webui -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$SPARK_SERVICE_IP:8080
2. Get the Zeppelin URL to visit by running these commands in the same shell:
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get svc --namespace default -w myspark-zeppelin'
export ZEPPELIN_SERVICE_IP=$(kubectl get svc --namespace default myspark-zeppelin -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
echo http://$ZEPPELIN_SERVICE_IP:8080
让我们检查一下:
$ export SPARK_SERVICE_IP=$(kubectl get svc --namespace default myspark-webui -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
$ echo http://$SPARK_SERVICE_IP:8080
http://34.70.212.182:8080
如果打开此URL,则表示Spark Webui已准备就绪。