kubectl apply ingress:未知字段错误

Man*_*oid 1 kubernetes kubectl kubernetes-ingress

我的入口为:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: mongoexpress-ingress
spec:
  rules:
  - host: mylocalmongoexpress.com
    http:
      paths:
      - backend:
          serviceName: mongoexpress-service
          servicePort: 8081
Run Code Online (Sandbox Code Playgroud)

当我运行“kubectl apply -f mongoexpress-ingress.yaml”时,出现错误:

错误:验证“mongoexpress-ingress.yaml”时出错:验证数据时出错:[ValidationError(Ingress.spec.rules[0].http.paths[0].backend):io.k8s.api 中的未知字段“serviceName”。 networking.v1.IngressBackend,ValidationError(Ingress.spec.rules [0] .http.paths [0] .backend):io.k8s.api.networking.v1.IngressBackend中的未知字段“servicePort”,ValidationError(Ingress.spec .rules[0].http.paths[0]): io.k8s.api.networking.v1.HTTPIngressPath] 中缺少必填字段“pathType”;如果您选择忽略这些错误,请使用 --validate=false 关闭验证

浏览在线资源,我在 yaml 文件中找不到问题。

那么我在这里缺少什么?

goh*_*m'c 5

Ingress 规范已从 v1beta1 更改为 v1。尝试:

...
spec:
  rules:
  - host: mylocalmongoexpress.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: mongoexpress-service
            port:
              number: 8081
Run Code Online (Sandbox Code Playgroud)