gpt4 book ai didi

bash - 如何从Kubernetes访问Spark Shell?

转载 作者:行者123 更新时间:2023-12-02 11:53:14 26 4
gpt4 key购买 nike

我已经使用helm chart在GCE中将Spark部署到Kubernetes。根据values.yaml中的默认配置,Spark部署到路径/opt/spark。我已经通过运行kubectl --namespace=my-namespace get pods -l "release=spark"检查Spark是否已成功部署。有1位主人和3位 worker 在运行。

但是,当我尝试通过从Google云控制台执行spark-submit --version来检查Spark版本时,它返回了-bash: spark-submit: command not found

我已经导航到/opt目录,但/spark文件夹丢失了。我应该怎么做才能打开Spark shell终端并执行Spark命令?

最佳答案

您可以通过检查服务进行验证
kubectl get services -n <namespace>
您可以转发特定服务并尝试在本地运行以检查
kubectl port-forward svc/<service name> <external port>:<internal port or spark running port>
您可以在本地尝试运行spark终端,它将连接到在GCE实例上运行的spark。

如果您查看 Helm 图文档,还可以使用UI选项,也可以通过port-forward访问UI

Access via SSH inside pod


Kubectl exec -it <spark pod name> -- /bin/bash

在这里您可以直接运行spark命令。 spark-submit --version

Access UI



如果在 Helm chart 中启用了UI,则可以通过端口转发访问UI。
kubectl port-forward svc/<spark service name> <external port>:<internal port or spark running port>

External Load balancer



这个特殊的 Helm chart 也创建了 External Load balancer,您也可以使用
External IP

Access Shell



如果要通过LB IP和端口连接
./bin/spark-shell --conf spark.cassandra.connection.host=<Load balancer IP> spark.cassandra-connection.native.port=<Port>

使用端口转发创建连接
Kubectl get svc -n <namespace>
./bin/spark-shell --conf spark.cassandra.connection.host=localhost spark.cassandra-connection.native.port=<local Port>

关于bash - 如何从Kubernetes访问Spark Shell?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60210110/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com