You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Kubernetes上的Spark Driver设置Preferred Service Name

解决Spark on Kubernetes固定Driver Service名称以配置Ingress的问题

要让Spark在Kubernetes集群中生成固定名称的Driver Service(不带随机后缀),你需要使用spark.kubernetes.driver.service.name配置参数,而非你尝试的spark.kubernetes.resourceNamePrefix。

具体操作

提交Spark作业时,添加该配置项直接指定固定的Service名称,比如你需要的some-test-job-v1-ui-svc:

spark-submit \
  --master k8s://https://<你的K8s API服务器地址> \
  --deploy-mode cluster \
  --name some-test-job-v1 \
  --conf spark.kubernetes.driver.service.name=some-test-job-v1-ui-svc \
  # 补充其他必要配置(如镜像、资源限制等)
  你的Spark作业.jar

参数说明

  • spark.kubernetes.driver.service.name:直接为Driver指定固定的Service名称,生成的Service完全匹配你设置的值,不会附加随机ID,正好满足Ingress对固定服务名称的需求。
  • spark.kubernetes.resourceNamePrefix:仅为所有K8s资源(Pod、Service等)添加前缀,仍会保留随机后缀,无法生成完全固定的Service名称,不适合你的场景。

对应的Ingress配置

你的Ingress配置无需修改,因为Service名称已固定为some-test-job-v1-ui-svc,可以直接匹配:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: some-test-job-v1
spec:
  ingressClassName: nginx-private
  rules:
    - host: some-test-job-v1.spark.example.com
      http:
        paths:
        - path: /
          pathType: Prefix
          backend:
            service: 
              name: some-test-job-v1-ui-svc
              port:
                number: 4040
  tls:
    - hosts:
        - some-test-job-v1.spark.example.com
      secretName: some-test-job-v1-spark-example-com

内容的提问来源于stack exchange,提问作者Vadim Yangunaev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 04:05:12