Ich habe den folgenden Ingress für meinen Namespace auf Kubernetes mit Pfaden/api/1.0/Umleitung zu meinem alten Dienst und der Rest Umleitung zum neuen. Bevor ich meinen alten Dienst verwerfe und lösche, möchte ich, dass Nginx nur auf den folgenden Dienst mit einem HTTP 426-Umleitungsfehlercode antwortet:/api/1.0/Pfade.
Wie kann ich das machen ?
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: xxx-ingress
namespace: xxx-ingress
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/proxy-next-upstream: "error timeout http_502 non_idempotent"
nginx.ingress.kubernetes.io/proxy-pass-headers: "Content-Length"
spec:
ingressClassName: nginx
tls:
- hosts:
- api.xxx.com
- www.xxxcom
secretName: xxx-ingress-tls
rules:
- host: api.xxx.com
http:
paths:
- path: /api/1.0/users/password/reset/token
pathType: ImplementationSpecific
backend:
service:
name: old-service
port:
number: 80
- path: /api/1.0/users/login
pathType: ImplementationSpecific
backend:
service:
name: old-service
port:
number: 80
- path: /api/1.0/users/request_migration_sync
pathType: ImplementationSpecific
backend:
service:
name: old-service
port:
number: 80
- path: /api/1.0/users/migrate
pathType: ImplementationSpecific
backend:
service:
name: old-service
port:
number: 80
- path: /
pathType: ImplementationSpecific
backend:
service:
name: new-service
port:
number: 80
- host: www.xxx.com
http:
paths:
- path: /
pathType: ImplementationSpecific
backend:
service:
name: new-service
port:
number: 80