kubernetessingress路由到另一个服务

kubernetessingress路由到另一个服务,kubernetes,kubernetes-ingress,nginx-config,configmap,Kubernetes,Kubernetes Ingress,Nginx Config,Configmap,当我点击xyz.abc.com/login时,它应该转到测试服务,当我点击URL xyz.abc.com/(任何内容)时,它应该转到test1服务,但目前,当我点击xyz.abc.com/login时,它并没有转到那里,而是转到test1服务random.com/login,所以转到NLB中基于路径的路由 那么如何实现这个场景呢 有人能帮忙吗 kind: Ingress apiVersion: extensions/v1beta1 metadata: name: test namespa

当我点击xyz.abc.com/login时,它应该转到测试服务,当我点击URL xyz.abc.com/(任何内容)时,它应该转到test1服务,但目前,当我点击xyz.abc.com/login时,它并没有转到那里,而是转到test1服务random.com/login,所以转到NLB中基于路径的路由 那么如何实现这个场景呢 有人能帮忙吗

kind: Ingress
apiVersion: extensions/v1beta1
metadata:
  name: test
  namespace: test
  labels:
    app.kubernetes.io/managed-by: Helm
  annotations:
    cert-manager.io/cluster-issuer: letsencrypt-prod
    kubernetes.io/ingress.class: internet-facing-ingress
    nginx.ingress.kubernetes.io/rewrite-target: /
    nginx.ingress.kubernetes.io/server-snippet: >
      rewrite /login(.*) /v2/login/ break; rewrite / / break;

      rewrite /integration/customer(.*) /v1/integration/customer$1; break;

      rewrite /admin/customer(.*) /v2/admin/customer$1; break;

      rewrite /admin/abc1(.*) /v2/admin/abc1$1;
      break;
spec:
  tls:
    - hosts:
        - xyz.abc.com
      secretName: serverv1-tls
  rules:
    - host: xyz.abc.com
      http:
        paths:
          - path: /login
            backend:
              serviceName: test
              servicePort: 80
          - path: /
            backend:
              serviceName: test1
              servicePort: 80
外部服务:

kind: Service
apiVersion: v1
metadata:
  name: test1
  namespace: test1
spec:
  type: ExternalName
  sessionAffinity: None
  externalName: random.com
status:
  loadBalancer: {}

在路径中,只需最后添加
/login/
/即可

rules:
        - host: xyz.abc.com
          http:
            paths:
              - path: /login/
                backend:
                  serviceName: test
                  servicePort: 80
              - path: /
                backend:
                  serviceName: test1
                  servicePort: 80
如果可能,最简单的方法是分离入口