This document explains why assigning a single Virtual IP (VIP) to multiple Load Balancer Services (LBS) causes traffic failures in an NSX Edge.
Problematic Configuration Example:
Two separate Load Balancer: LB-A and LB-B.
Under LB-A - Virtual-Server-A with VIP 192.168.1.100:443
Under LB-B - Virtual-Server-B with the same VIP 192.168.1.100:8443
VMware NSX
NSX load balancer service operate independently. Sharing a single VIP across different LBs is architecturally invalid due to:
- Each LBS runs its own NGINX master and worker processes, so having multiple identical VIP within multiple LBS would cause conflicting the entries in LB rule table.
- Since each LBS operates as an independent NGINX instance, the system cannot deterministically forward traffic to a single destination, leading to unpredictable routing, packet drops, and overall communication failure.
To use a single VIP for multiple services,
- Consolidate all Virtual Servers into one unified LBS instance.
- Create separate Virtual Servers under that single VIP using unique port numbers (e.g., 10010, 9443, 8443, 3346).
- Confirm traffic flows normally to each designated port.
Note: Managing multiple ports under a single VIP within one LB instance is the standard, supported NSX architecture design.
Key Load Balancer Concepts
https://techdocs.broadcom.com/us/en/vmware-cis/nsx/vmware-nsx/4-2/administration-guide/load-balancer/key-load-balancer-concepts.html