You can specify the minimum threshold parameters for a virtual service or a pool to make it serviceable. This section explains the virtual service and pool configurations to define the parameters through the CLI.
Virtual Service Configuration
When a virtual service references multiple pools, either through the use of Pool Groups or Content Switching, the min_pools_up
parameter may be used to specify the minimum number of those pools that must be in UP state in order for the virtual service itself to be marked as UP.
min_pools_up
for a virtual service is configured as shown below.
[admin:abc-ctrl]: virtualservice> min_pools_up 3 [admin:abc-ctrl]: virtualservice> save +------------------------------------+-----------------------------------+ | Field | Value | +------------------------------------+-----------------------------------+ | uuid |virtualservice-9c5eee94-fd57- | | |4ef6-b912-fadbb10ae464 | |name |vs-1 | |----------------------truncated output----------------------------------| |min_pools_up |3 | +------------------------------------+-----------------------------------+
Verify the configuration as shown below.
[admin:abc-test-ctrl]: > show virtualservice vs_1 +------------------------------------+-----------------------------------+ | Field | Value | +------------------------------------+-----------------------------------+ | uuid |virtualservice-9c5eee94-fd57- | | |4ef6-b912-fadbb10ae464 | |name |vs-1 | |----------------------truncated output----------------------------------| |use_vip_as_snat |false | |traffic_enabled |true | |min_pools_up |3 | +------------------------------------+-----------------------------------+
Pool Configurations
Use
min_servers_up
to specify the minimum number of servers required to beUP
for the pool’s health to be marked as available. If this parameter is not defined, the pool is marked as available as long as at least one server isUP
.Use
min_health_monitors_up
to specify the minimum number of health monitors required to succeed, to decide whether to mark the corresponding server asUP
. If this parameter is not defined, the server is marked asUP
only if all the health monitors are successful.min_servers_up
andmin_health_monitors_up
are configured in a pool as shown below:
[admin:abc-ctrl]: pool> min_servers_up 2 [admin:abc-ctrl]: pool> min_health_monitors_up INTEGER Minimum number of health monitors in UP state to mark server UP. [admin:abc-ctrl]: pool> min_health_monitors_up 1 [admin:abc-ctrl]: pool> save +------------------------------------+-----------------------------------+ | Field | Value | +------------------------------------+-----------------------------------+ |uuid |pool-6fb04b70-5547-4232-b7b7- | | |33e72ee33d64 | |--------------------------truncated output------------------------------| |min_servers_up |3 | |min_health_monitors_up |1 | +------------------------------------+-----------------------------------+
Verify the configuration as shown below:
[admin:abc-test-ctrl]: > show pool vs_1-pool +------------------------------------+-----------------------------------+ | Field | Value | +------------------------------------+-----------------------------------+ |uuid |pool-6fb04b70-5547-4232-b7b7- | | |33e72ee33d64 | |--------------------------truncated output------------------------------| |min_servers_up |3 | |min_health_monitors_up |1 | +------------------------------------+-----------------------------------+
For example, If two servers are marked DOWN
. This does not meet the minimum threshold (three servers in UP
state). Therefore, the pool is marked DOWN
and is not available for any virtual service referencing it.
If the minimum threshold parameters are not defined, NSX Advanced Load Balancer retains the default behavior.
Use Cases:Minimum Health Monitors
NSX Advanced Load Balancer designates a server as UP
only when all the monitors bound to it are UP
. If one of the health monitors marks it DOWN
, NSX Advanced Load Balancer considers the server as DOWN
.
In scenarios where multiple services are monitored on a backend server using separate monitors. If either one is available, NSX Advanced Load Balancer will mark that server as UP
. For example, GET
for /foo.html
and GET
for /bar.html
. If either is available, NSX Advanced Load Balancer marks the server UP
.
In a similar use case, to specify the minimum number of health monitors required to succeed and to decide whether to mark the corresponding server as UP
, define the parameter min_health_monitors_up
. If this parameter is not defined, the server is marked as UP
only if all the health monitors are successful.
Minimum Servers
NSX Advanced Load Balancer marks a pool as up when one of the servers present in that pool is UP
. In a scenario where at least two servers are required to be marked as up to mark the pool as UP
, the option min_servers_up
can be used to specify the numbers of servers that should be up to mark the pool as UP
. If this parameter is not defined, the pool is marked as available as long as at least one server is UP
.
See also,