I'm trying to deploy two copies of ingress-nginx for different service IPs, which is necessary for my routing and firewall requirements. I've been using the helm chart found [here](https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx?modal=values). However, in a new cluster, the apps keep going out of sync in ArgoCD because both deployments are attempting to manage RBAC configurations—though I can disable RBAC on one by setting `rbac.create: false`. Additionally, there's an issue with `ValidatingWebhookConfiguration/ingress-nginx-admission`, which is included in both applications, `argocd/ingress-nginx-1` and `ingress-nginx-2`. I followed the official documentation [here](https://kubernetes.github.io/ingress-nginx/user-guide/multiple-ingress/) for deploying multiple ingress controllers, but it doesn't provide guidance on handling RBAC or WebHook configurations. Any advice on best practices for this setup?
1 Answer
To manage multiple ingress-nginx instances effectively, make sure to use the `nameOverride` or `fullnameOverride` settings to give each instance a unique identity. Also, it's crucial to define every unique value manually (like `admissionWebhooks.name` and `controller.controllerValue`). This way, you can avoid conflicts. Additionally, avoid deploying both ingress controllers in the same namespace; make sure they are separated for better organization!

Thanks! Using nameOverride really clears things up for me. I wasn't aware it could simplify the setup so much!