VMware NSX-T Load Balancer, Virtual Server, Pool & Monitor Components

Today we are going to talk about VMware NSX-T components like Load Balancer, Virtual Server, Pool and Monitor. Let's start with load balancer

VMware NSX-T Load Balancer
A load-balancer defines a virtual service, or virtual server, identified by a virtual IP address  (VIP) and a UDP/TCP port. 

The NSX-T load balancer is running on a Tier-1 gateway. The arrows in the above diagram represent a dependency: the two load balancers LB1 and LB2 are respectively attached to the Tier-1 gateways 1 and 2. 

Fig 1.1- VMware NSX-T Load Balancer

Load balancers can only be attached to Tier-1 gateways (not Tier-0 gateways), and one Tier-1 gateway can only have one load balancer attached to it. 

This virtual server offers an external representation of an application  while decoupling it from its physical implementation: traffic received by the load balancer can be  distributed to other network-attached devices that will perform the service as if it was handled by  the virtual server itself. 

This model is popular as it provides benefits for application scale-out and  high-availability:

Application scale-out
The following diagram represents traffic sent by users to the VIP of a virtual server,  running on a load balancer. This traffic is distributed across the members of a pre-defined  pool of capacity. The server pool can include an arbitrary mix of physical servers, VMs or containers that together, allow scaling out the application.

Application high-availability
The load balancer is also tracking the health of the servers and can transparently remove a failing server from the pool, redistributing the traffic it was handling to the other members

Modern applications are often built around advanced load balancing capabilities, which go far beyond the initial benefits of scale and availability. In the example below, the load balancer selects different target servers based on the URL of the requests received at the VIP

 Due to its native capabilities, modern applications  can be deployed in NSX-T without requiring any third  party physical or virtual load balancer. The next sections in this part describe the architecture of the NSX-T load balancer and its deployment modes.  

In order to make its adoption straightforward, the different constructs associated to the NSX-T  load balancer have been kept similar to those of a physical load balancer. The following diagram  show a logical view of those components.

Virtual Server
On a load balancer, the user can define one or more virtual server (the maximum number depends on the load balancer form factor – See NSX-T Administrator Guide for load balancer scale information). 

A virtual server is defined by a VIP and a TCP/UDP port number, for example IP: TCP port 80. The diagram represents four virtual servers VS1, VS2, VS5 and VS6. 

A virtual server can have basic or advanced load balancing options such as forward specific client requests to specific pools, or redirect them to external sites, or even block them. 

A pool is a construct grouping servers hosting the same application. Grouping can be configured using server IP addresses or for more flexibility using Groups. 

NSX-T provides advanced load balancing rules that allow a virtual server to forward traffic to multiple pools. 

A monitor defines how the load balancer tests application availability. Those tests can range from basic ICMP requests to matching patterns in complex HTTPS queries. 

The health of the individual pool members is then validated according to a simple check (server replied), or more advanced ones, like checking whether a web page response contains a specific string. 

Monitors are specified by pools: a single pool can use only 1 monitor, but the same monitor can be used by different Pools. 

NSX-T Load Balancing deployment modes 
NSX-T load balancer is flexible and can be installed in either traditional in-line or one-arm topologies. This section goes over each of those options and examine their traffic patterns. 

In-line load balancing In in-line load balancing mode, the clients and the pool servers are on different side of the load balancer. In the design below, the clients are on the Tier-1 uplink side, and servers are on the Tier-1 downlink side