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

K8s v1.26.3创建Ingress端点报错求助

问题解决:K8s v1.26.3 Ingress创建报错(未知字段serviceName/servicePort)

错误原因

你使用的是networking.k8s.io/v1版本的Ingress API,但配置里还在沿用旧版本(v1beta1)的serviceName和servicePort字段。从Kubernetes 1.22开始,Ingress的backend结构已更新,这两个字段被移除,必须使用新的嵌套格式。

修改后的正确Ingress配置

将原配置中的backend部分替换为service.name和service.port的结构,完整配置如下:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  labels:
    env: prod
    app: demo-ms
    layer: frontend
  name: prod-demo-ingress
  namespace: prod
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
    - host: demo.abc.in
      http:
        paths:
          - path: /
            pathType: Prefix  # v1版本必须指定路径类型,可选值:Prefix/Exact/ImplementationSpecific
            backend:
              service:
                name: prod-demo-service
                port:
                  number: 8080

关键修改点

  • 新增pathType字段:v1版本Ingress强制要求指定路径匹配类型,根据业务需求选择Prefix(前缀匹配)、Exact(精确匹配)或ImplementationSpecific(由Ingress控制器决定)
  • 字段结构调整:把serviceName改为service.name,servicePort改为service.port.number;如果使用端口名称,可替换为name: <自定义端口名>

重新应用配置

执行以下命令更新Ingress资源:

kubectl apply -f ingress.yaml -n prod

内容的提问来源于stack exchange,提问作者Satyam Pandey

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 11:42:44