<p>We have a multi tenant application and for each tenant we provision separate container image.
Likewise we create a subdomain for each tenant which will be redirected to its own container.
There might be a scenario where 1000s of tenants can exist and its dynamic.</p>
<p>So it has become necessary for us to consider the limitations in ingress controllers for Kubernetes in general before choosing. Especially the nginx-ingress.</p>
<ol>
<li><p>Is there any max limitation on number of Ingress resources or rules inside ingress that can be created? Or will there be any performance or scaling issues when too many ingress resources are created ?</p>
</li>
<li><p>Is it better to add a new rule(for each subdomain) in same ingress resource or to create separate ingress resource for each subdomain ?</p>
</li>
</ol>

<p>AFAIK, there are no limits like that, You will either run out of resources or find a choke point first. <a href="https://www.loggly.com/blog/benchmarking-5-popular-load-balancers-nginx-haproxy-envoy-traefik-and-alb/" rel="nofollow noreferrer">This</a> article compares resource consumption of several loadbalancers.</p>
<p>As for Nginx-ingress there are few features hidden behind paid nginx plus version as listed <a href="https://github.com/nginxinc/kubernetes-ingress/blob/master/docs/nginx-ingress-controllers.md" rel="nofollow noreferrer">here</a>.</p>
<p>If You wish to have dynamic configurations and scalability, You should try envoy based ingress like <a href="https://www.getambassador.io/learn/kubernetes-ingress/?gclid=EAIaIQobChMIqtOT6Kyx6gIVhumyCh3PKAf9EAAYASAAEgK9nPD_BwE" rel="nofollow noreferrer">Ambassador</a> or <a href="https://istio.io/latest/docs/concepts/traffic-management/" rel="nofollow noreferrer">Istio</a>.</p>
<p>Envoy offers dynamic configuration updates which will not interrupt existing connections. More info <a href="https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/operations/hot_restart" rel="nofollow noreferrer">here</a>.</p>
<p>Check out <a href="https://medium.com/flant-com/comparing-ingress-controllers-for-kubernetes-9b397483b46b" rel="nofollow noreferrer">this</a> article which compares most of popular kubernetes ingress controllers.</p>
<p><a href="https://engineeringblog.yelp.com/2017/05/taking-zero-downtime-load-balancing-even-further.html" rel="nofollow noreferrer">This</a> article shows a great example of pushing HAproxy and Nginx combination to its limits.</p>
<p>Hope it helps.</p>
