Предупреждение: networking.k8s.io/v1beta1 Вход устарел в версии v1.19 , недоступен в версии v1.22 ; используйте networking.k8s.io/v1 Вход

#kubernetes #kubernetes-ingress

Вопрос:

Мой файл ingress.yml приведен ниже

 apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: example-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
    kubernetes.io/tls-acme: "true"
    cert-manager.io/cluster-issuer: "example-issuer"
spec:
  rules:
  - host: example.com
    http:
      paths:
      - backend:
          serviceName: example-service
          servicePort: http
        path: /                 
  tls:
  - secretName: example-tls-cert
    hosts:
      - example.com
 

После изменения апиверсии: networking.k8s.io/v1beta1 чтобы networking.k8s.io/v1 получаю ошибку ниже.

ошибка проверки данных: [Ошибка проверки(правила Ingress.spec. [0].http.пути[0].серверная часть): неизвестное поле «Имя службы» в io.k8s.api.networking.v1.Обратный вход, ошибка проверки(правила Ingress.spec. [0].http.пути[0].серверная часть)

Комментарии:

1. kubernetes.io/docs/reference/using-api/deprecation-guide/…

Ответ №1:

Попробуй ниже

 apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: example-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
    kubernetes.io/tls-acme: "true"
    cert-manager.io/cluster-issuer: "example-issuer"
spec:
  rules:
  - host: example.com
    http:
      paths:
      - pathType: Prefix
        path: /
        backend:
          service:
            name: example-service
            port:
              number: 80
  tls:
   - secretName: example-tls-cert
     hosts:
       - example.com