Apache spark 某些spark提交配置选项未反映在k8s pod中

Apache spark 某些spark提交配置选项未反映在k8s pod中,apache-spark,kubernetes,Apache Spark,Kubernetes,我正在使用spark submit在我的k8s群集上创建一个spark驱动程序盒。当我跑的时候 bin/spark提交 --k8s主机://https://my-cluster-url:443 --部署模式群集 --名称火花试验 --class com.my.main.class --conf spark.executor.instances=3 --conf spark.kubernetes.allocation.batch.size=3 --conf spark.kubernetes.nam

我正在使用
spark submit
在我的k8s群集上创建一个spark驱动程序盒。当我跑的时候

bin/spark提交
--k8s主机://https://my-cluster-url:443
--部署模式群集
--名称火花试验
--class com.my.main.class
--conf spark.executor.instances=3
--conf spark.kubernetes.allocation.batch.size=3
--conf spark.kubernetes.namespace=我的命名空间
--conf spark.kubernetes.container.image.pullSecrets=my cr secret
--conf spark.kubernetes.container.image.pullPolicy=Always
--conf spark.kubernetes.driver.volumes.persistentVolumeClaim.my pvc.mount.path=/var/service/src/main/resources/
--conf spark.kubernetes.container.image=my registry.io/spark test:test-3.0.0
local:///var/service/my-service-6.3.0-RELEASE.jar
spark submit
在我的k8s群集中成功创建了一个pod。但是,我指定的许多配置选项都看不到。例如,pod没有安装在
/var/service/src/main/resources/
上的卷,尽管在名为
my pvc
的集群上存在
persistentVolumeClaim
。此外,pod未被赋予指定的图像pull secret
my cr secret
,导致
ImagePullBackOff
错误。另一方面,pod是在
my namespace
命名空间和拉策略
始终
中正确创建的

我尝试过使用spark和

为什么在我的群集上创建的pod中没有反映某些配置选项?

解决了这个问题:

我目前在本地安装了spark 2.3.1,变量
spark\u HOME
指向
/usr/local/spark
。对于当前的这个项目,我下载了spark 2.4.5的发行版。我在2.4.5目录中运行
bin/spark submit
,据我所知,它应该指向捆绑在2.4.5中的
spark submit
。但是,运行
bin/spark submit--version
显示正在运行的版本是2.3.1。在我上面的问题中被忽略的配置在2.3.1中不可用


只需将
SPARK\u HOME
更改到新目录,即可解决此问题

您是否检查了密码是否存在且正确,您可以使用
kubectl get secret my cr secret-oyaml
执行此操作。是,这个秘密也适用于我用
部署
手动创建的其他pod,以及
pod
启动的映像是什么?
my registry.io/spark test:test-3.0
。使用
/bin/docker图像工具构建。sh
pod
是否处于
运行状态?你应该检查吊舱上的事件,为什么它不工作。