<p>I am using ALB ingress controller for my 10 microservices.</p>

<p>But Path based routing is not working . Everytime ingress is creating a new load balancer for each service.</p>

<p>My requirement is to have a single load balancer and then use path based routing to browse to different services.</p>

<p>Please let me know what annotations I am missing and how to achieve this?</p>

<p>Example ingress is attached here which I'm currently using:</p>

<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: abcd
  namespace: "default"
  annotations:
     kubernetes.io/ingress.class: "alb"
     alb.ingress.kubernetes.io/certificate-arn: arn:aws:acmxxxxx
     alb.ingress.kubernetes.io/listen-ports:
     alb.ingress.kubernetes.io/scheme: internal
     alb.ingress.kubernetes.io/subnets: subnet-1,subnet-2
     alb.ingress.kubernetes.io/security-groups: sg-1
spec:
  rules:
    - host:    abcd.com
      http:
        paths:
          - path: /def
            backend:
              serviceName: abcd
              servicePort: 80
</code></pre>

<p>According to <a href="https://github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/298" rel="nofollow noreferrer">https://github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/298</a>
it is not likely to be feasible</p>
<p>the only workable solution is <a href="https://github.com/jakubkulhan/ingress-merge" rel="nofollow noreferrer">ingress merge</a></p>
<p>there is sample code in <a href="https://aws.amazon.com/cn/blogs/china/merging-alb-progress-controller-on-the-eks-platform/" rel="nofollow noreferrer">aws blog</a></p>
<p>I haved use them and it works, through sometimes ingress-merge created additional alb, but you could delete it manually.</p>
