By default, when a real-server is created, the ADX will perform the following checks:
- Layer 2 ARP
- Layer 3 ICMP Ping
After the real-server is attached to the virtual-server using the bind command, the ADX will perform Layer 4 or Layer 7 checks based on the configuration.
It is essential to make sure that there is nothing blocking L2 or L3 checks between the ADX and the Server like a Firewall.
As there are multiple health checks for Brocade ADX, it is better to limit these checks to specific health checks to prevent any issues.
For example, when a real-server is created and “port http” configured,
port http url “HEAD /” is automatically added. Using “port http l4-check-only” will limit the health-check to Layer 4 health check instead of the Layer 7 checks. By default, for L7 “HEAD /” will mark the real-server as UP, if the response status code is 200-299, 401. This can be limited by using the command:
port http status-code 200 200
The above command will mark the real-server’s HTTP port UP, only if the response status-code is 200.
It is also essential to remember that the ADX will perform the L4 & L7 checks only once – when the real-server is bound to the virtual-server. If you require periodic checks, you would have to utilize the following command:
port http keepalive
The above command tells the ADX to keep checking the real-server’s port periodically instead of checking it only once.
A simple real-server would look like this for L4 Health-Check:
server real-server RS1 10.10.10.1
port http
port http keepalive
port http l4-check-only
port http url “HEAD /”
Reference: