During my last NSX V2T migration I ran into an issue which I want to share with you:
- The load balancer is migrated from NSX for vSphere (NSX-v) to NSX-T Datacenter as a native (non-AVI) load-balancer.
- One of the virtual servers is configured with a Source IP persistency (where the persistency profile has no time-out configured)
- Virtual IP addresses are reachable.
- All Virtual Servers of a given load balancer are affected.
- The NSX-T GUI shows a status UNKNOWN for the load balancer and it’s related component (virtual servers and server pools).
- reboot doesn’t fix anything.
- running the following command on the NSX-T Edge CLI returns the following:
NSXTEdge01> get load-balancer <Load-Balancer UUID> status Internal Error: Query LB Engine Failed.
The issue is caused by a missing parameter in the load-balancer configuration file, which totally locks up the load-balancer an it’s virtual servers. Due the missing time-out setting on the persistency profile, the “expire” parameter cannot be written in the load-balancer configuration file: locking up nginx (the load-balancer which NSX-T uses internally).
Configure the time-out setting of the persistency profile -or- create a new source IP Persistency profile (which is technically burning your house down to catch a fly).