我有一个 spark 集群在运行
minikube
:
$ k get pods
NAME READY STATUS RESTARTS AGE
spark-master-0 1/1 Running 0 7d
spark-worker-0 1/1 Running 0 7d
spark-worker-1 1/1 Running 0 7d
我已经端口转发给主人:
$ k port-forward spark-master-0 8080:8080
Forwarding from 127.0.0.1:8080 -> 8080
Forwarding from [::1]:8080 -> 8080
我正在尝试创建一个
JavaSparkSession
但我不确定要使用哪个主 URL:
SparkConf sparkConf = new SparkConf()
.setMaster("???")
.setAppName("test-spark");
SparkSession.builder()
.config(sparkConf)
.getOrCreate();
尝试了以下没有用的
"local"
"localhost:8080
http://localhost:8080
spark://localhost:8080
k8s://http://192.168.1.2:8080
k8s://https://kubernetes:443
它们都不起作用。得到以下错误:
Caused by: org.apache.spark.SparkException: Could not parse Master URL: '<MASTER URL FROM LIST ABOVE>'
我使用什么主 URL?谢谢
这应该有效:
k8s://https://{MasterIp}:{Port}
更新: 我使用 K8s,在你的情况下它应该是 spark,我也检查过并且在 k8s 之后我没有使用 HTTPS
SparkConf conf = new SparkConf().setAppName("App_Name")
.setMaster("spark://192.168.58.2:8080").set("spark.ui.port","8080");