FortiADC Handbook Configuring Health Checks PDF
FortiADC Handbook Configuring Health Checks PDF
FortiADC Handbook Configuring Health Checks PDF
In server load balancing deployments, the system uses health checks to poll the members of the real server pool
to test whether an application is available. You can also configure additional health checks to poll related servers,
and you can include results for both in the health check rule. For example, you can configure an HTTP health
check test and a RADIUS health check test. In a web application that requires user authentication, the web server
is deemed available only if the web server and the related RADIUS server pass the health check.
In link load balancing deployments, the health check can poll either the ISP link group member itself or a “beacon”
server that is deployed on the other side of the ISP link. A beacon is an IP address that must be reachable in order
for the link to be deemed available. A beacon can be any IP address, such as a main office, core router, or virtual
server at another data center.
If you expect a backend server is going to be unavailable for a long period, such as
when it is undergoing hardware repair, it is experiencing extended down time, or when
you have removed it from the server farm, you can improve the performance of the
FortiADC system by setting the status of the pool member to Disabled, rather than
allowing the system to continue to attempt health checks.
Table 108 describes the predefined health checks. You can get started with these or create custom objects.
Table 108: Predefined health check configuration objects
Predefined Description
LB_HLTHCK_HTTP Sends a HEAD request to the server port 80. Expects the server to
return an HTTP 200.
LB_HLTHCK_HTTPS Sends a HEAD request to the server port 443. Expects the server to
return an HTTP 200.
Predefined Description
LB_HLTHCK_TCP_ Sends a TCP echo to server port 7. Expects the server to respond with
ECHO the corresponding TCP echo.
l You must have a good understanding of TCP/IP and knowledge of the services running on your backend servers.
l You must know the IP address, port, and configuration details for the applications running on backend servers. For
some application protocol checks, you must specify user credentials.
l You must have Read-Write permission for Load Balance settings.
After you have configured a health check, you can select it in the SLB server pool, LLB link group, or GLB server
configuration.
You can clone a predefined configuration object to help you get started with a
user-defined configuration.
To clone a configuration object, click the clone icon that appears in the tools
column on the configuration summary page.
FortiADC Handbook 341
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring health checks
Settings Guidelines
General
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Destination l IPv4
Address Type l IPv6
Hostname For HTTP or HTTPS health checks, you can specify the hostname (FQDN)
instead of the destination IP address. This is useful in VM environments where
multiple applications have the same IP address.
Interval Seconds between each health check. Should be more than the timeout to prevent
overlapping health checks. The default is 10.
Timeout Seconds to wait for a reply before assuming that the health check has failed. The
default is 5.
Up Retry Attempts to retry the health check to see if a down server has become available.
The default is 1.
Down Retry Attempts to retry the health check to see if an up server has become unavailable.
The default is 1.
Specifics
ICMP
Settings Guidelines
TCP Echo
Port Listening port number of the backend server. Usually HTTP is 80, FTP is 21, DNS
is 53, POP3 is 110, IMAP4 is 143, RADIUS is 1812, and SNMP is 161.
TCP SSL
Port Listening port number of the backend server. Usually HTTP is 80, FTP is 21, DNS
is 53, POP3 is 110, IMAP4 is 143, RADIUS is 1812, and SNMP is 161.
Local Cert For TCP SSL only. Click the down arrow and select a local SSL Health Check
Client certificate from the list menu. The certificate titled "Factory" is the default
certificate shipped with your FortiADC. The rest, if any, are the custom
certificates that you have created.
HTTP/HTTPS
Port Listening port number of the backend server. Usually HTTP is 80. If testing an
HTTP proxy server, specify the proxy port.
Local Cert For HTTPS only. See TCP / TCP Half Open Connection / TCP SSL / UDP above.
HTTP If the real server pool members are HTTP proxy servers, specify an HTTP
CONNECT CONNECT option:
l Local CONNECT—Use HTTP CONNECT to test the tunnel connection through the
proxy to the remote server. The member is deemed available if the request returns
status code 200 (OK).
l Remote CONNECT—Use HTTP CONNECT to test both the proxy server response
and remote server application availability. If you select this option, you can configure
an HTTP request within the tunnel. For example, you can configure an HTTP
GET/HEAD request to the specified URL and the expected response.
l No CONNECT—Do not use the HTTP CONNECT method. This option is the
default. The HTTP CONNECT option is useful to test the availability of proxy servers
only.
See the FortiADC Deployment Guide for FortiCache for an example that uses
this health check.
FortiADC Handbook 343
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring health checks
Settings Guidelines
Remote Host If you use HTTP CONNECT to test proxy servers, specify the remote server IP
address.
Remote Port If you use HTTP CONNECT to test proxy servers, specify the remote server port.
l HTTP GET—Send an HTTP GET request to the server. A response to an HTTP GET
request includes HTTP headers and HTTP body.
l HTTP HEAD—Send an HTTP HEAD request. A response to an HTTP HEAD request
includes HTTP headers only.
Receive String A string expected in return when the HTTP GET request is successful.
Status Code The health check sends an HTTP request to the server. Specify the HTTP status
code in the server reply that indicates a successful test. Typically, you use status
code 200 (OK). Other status codes indicate errors.
l Match String
l Match Status
l Match All (match both string and status)
Not applicable when using HTTP HEAD. HTTP HEAD requests test status code
only.
DNS
Domain Name The FQDN, such as www.example.com, to use in the DNS A/AAAA record health
check.
Host Address IP address that matches the FQDN, indicating a successful health check.
Port Listening port number of the backend server. Usually RADIUS is 1812 and
RADIUS accounting is 1813.
Settings Guidelines
Password l User—If the backend server does not use CHAP, select this option.
Type l CHAP—If the backend server uses CHAP and does not require a secret key, select
this option.
NAS IP NAS IP address RADIUS attribute (if the RADIUS server requires this attribute to
Address make a connection).
SIP / SIP-TCP
Port Specify the port number. Valid values range from 0 to 65535.
SIP Request Specify the SIP request type to be used for health checks:
Type
l SIP Options
l SIP Register
Status Code The expected response code. If not set, response code 200 is expected. Specify 0 if
any reply should indicate the server is available.
SMTP
Port Listening port number of the backend server. Usually SMTP is 25.
Domain Name The FQDN, such as www.example.com, to use in the SMTP HELO request used
for health checks.
POP3
Port Listening port number of the backend server. Usually POP3 is 110.
IMAP4
Port Listening port number of the backend server. Usually IMAP4 is 143.
FortiADC Handbook 345
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring health checks
Settings Guidelines
Folder Select an email mailbox to use in the health check. If the mailbox does not exist
or is not accessible, the health check fails. The default is INBOX.
FTP
Port Listening port number of the backend server. Usually FTP is 21.
File Specify a file that exists on the backend server. Path is relative to the initial login
path. If the file does not exist or is not accessible, the health check fails.
Passive Select this option if the backend server uses passive FTP.
SNMP
Port Listening port number of the backend server. Usually SNMP is 161 or 162.
CPU Maximum normal CPU usage. If overburdened, the health check fails.
Memory Maximum normal RAM usage. If overburdened, the health check fails.
Disk Maximum normal disk usage. If the disk is too full, the health check fails.
Community Must match the SNMP community string set on the backend server. If this does
not match, all SNMP health checks fail.
CPU Weight 100
Memory 100
Weight
SNMP-Custom
Port Listening port number of the backend server. Usually SNMP is 161 or 162.
Settings Guidelines
Community Must match the SNMP community string set on the backend server. If this does
not match, all SNMP health checks fail.
l ASN_INTEGER
l ASN_OCTET_STR
l ASN_OBJECT_ID
l ASN_COUNTER
l ASN_UINTEGER
SSH
Port Listening port number of the backend server. Usually SSH is 22.
L2 Detection
No specific Link Layer health checker. Sends ARP (IPv4) or NDP (IPv6) packets to test
options whether a physically connected system is available.
RTSP
Port Specify the listening port number. Valid values range from 0 to 65535.
MySQL
FortiADC Handbook 347
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring health checks
Settings Guidelines
Port Specify the listening port number of the MySQL server. Valid values range from 0
to 65535.
Diameter
Origin Host Specify the FortiADC appliance that originates the Diameter message. The value
is in FQDN format and used to uniquely identify a Diameter node for duplicate
connection and routing loop detection.
Note: Some Diameter servers do not accept multiple connections from the same
origin host. If you set the origin host the same as the origin host (Identity) of the
Diameter load-balance profile and use the health check and Diameter load
balance profile in the same virtual server, the health check or the Diameter load-
balance profile may run into certain undefined problems.
Origin Realm Specify the realm of the FortiADC appliance that originates the Diameter
message. The value is in FQDN format.
Vendor ID Specify the type Unsigned32 vendor ID which contains the IANA "SMI Network
Management Private Enterprise Codes" value assigned to the vendor of a
Diameter application. The default is 12356.
Product Name Specify the type UTF8String product name which contains the vendor assigned
name for the product.
Host IPv4 Specify the type IPv4 address used to inform a Diameter peer of the sender's IP
Address address when the destination address type is IPv4. The default is blank, meaning
that it is the address of the FortiADC's outgoing interface.
Host IPv6 Specify the type IPv6 address used to inform a Diameter peer of the sender's IP
Address address when the destination address type is IPv6. The default is blank, meaning
that it is the address of the FortiADC's outgoing interface.
Settings Guidelines
Acct Specify the type Unsigned32 accounting application ID used to advertise support
Application ID of the accounting portion of an application. This field is optional; the default is 0
(zero).
l Service name
l SID
l Connect string
Script
FortiADC Handbook 349
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Monitoring health check status
FortiADC enables you to monitor the health of server in real time directly from your desktop, as described below.
Parameter Description
Port Enter the port number, if applicable. Note: This field is available only
for health check configurations that require port numbers.
You create schedule objects to use in link load balancing policies. A policy rule can be time-bound: one time,
daily, weekly, or monthly.
Basic Steps
3. Give the schedule a name, save it, and add schedule members as described in Table 111.
4. Save the configuration.
Table 111: Schedule member configuration
Settings Guidelines
Name Unique group name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Member
Name Unique member name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
You create address objects to specify matching source and destination addresses in policies.
l Firewall policies
l QoS policies
l Connection limit policies
l Link load balancing policies
Note: For link load balancing, you can also add address objects to address groups, which can then be used in link
load balance policies.
Basic Steps
FortiADC Handbook 351
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring IPv4 address groups
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Type l IPv4/Netmask
l Address Range
You configure address group objects when you have more than one address object you want to specify in rules
that match source or destination addresses. For example, if you subscribe customer 1 and customer 2 to a group
of links, then you can create rules that match the customer 1 OR customer 2 address space and load balance the
set of gateways assigned to them.
Basic Steps
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Member List
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
You create address objects to specify matching source and destination addresses in policies.
l Firewall policies
l QoS policies
l Connection limit policies
l Link load balancing policies
Note: For link load balancing, you can also add address objects to address groups, which can then be used in link
load balance policies.
Basic Steps
FortiADC Handbook 353
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Configuring IPv6 address groups
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Type l IPv6/Netmask
l Address Range
You configure address group objects when you have more than one address object you want to specify in rules
that match source or destination addresses. For example, if you subscribe customer 1 and customer 2 to a group
of links, then you can create rules that match the customer 1 OR customer 2 address space and load balance the
set of gateways assigned to them.
Basic Steps
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Member List
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
ISP address books contain IP subnet addresses and associated province location settings for ISP links.
l ISP routes
l LLB proximity routes
l LLB policies
l GLB data center configuration
The province setting is used in GLB deployments in China to enable location awareness that is province-specific.
For example, a user can be directed to a data center in specific location inside the country, such as Beijing or
Guangdong, rather than simply China.
Note: In systems with multiple VDOMs, these commands apply to the current VDOM only. In other words, if you
configure an exclusion, it is applicable to the current VDOM only; it does not change the predefined address book.
You can use the Inquire utility to see whether an IP address belongs to any of the address books. If an address
can be found in more than one address book, the results are returned in the following priority:
FortiADC Handbook 355
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Managing ISP address books
1. User-defined
2. Restored
3. Predefined
Figure 75: ISP address book types
The text file for the Restored entries has the following format:
#this is a comment line
ISP name:ABC
Province:Beijing
1.1.1.0/24
Province:Unknown
2.2.0.0 255.255.0.0
#this is a comment line too
3.3.3.3/32
ISP name:DEF
Province:Shanghai
4.4.4.0 255.255.255.0
5.5.0.0/16
You use the Restore utility to import the file and the Back Up utility to export it.
You use the Clean utility to erase entries that were imported from the text file. The clean operation does not
affect the predefined addresses or user-configured entries. If a restored entry has user-configured elements (for
example, an exclude list), the clean operation clears the addresses but preserves the configuration and converts it
to a user-defined type.
Basic Steps
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Excluded Address Address/mask notation specifying a subnet to be excluded from the address
book entry. Create exclusions to predefined and restored address books only.
Note: This field applies to predefined and restored address books only; it is
not applicable or available for user-defined address books.
FortiADC Handbook 357
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Creating service objects
Settings Guidelines
Province Select the associated province location. The configuration supports the
following selections:
FortiADC provides more than two dozen predefined services, as shown on the Shared Resources > Service >
Service page. In addition, it allows you to create your service objects as well. Service objects are an important
part of the following policy configurations:
l Firewall policies
l QoS policies
l Connection limit policies
l Link load balancing policies
Note: For link load-balancing, you can also add service objects to service groups; then use service groups in LLB
policies.
Basic Steps
Settings Guidelines
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
l ip (default)
l icmp
l tcp
l udp
l tcp-and-udp
l sctp
Protocol 1
Note: This applies only when Protocol Type is to set to IP. In that case, it displays
the protocol number without port.
Specify Source This option becomes available when TCP, UDP, SCTP, or TCP-AND-UDP is
Port selected as the protocol type. When selected, you also need to specify the
Minimum Source Port and Maximum Source Port below.
Minimum 1
Source Port
Maximum 65535
Source Port
Minimum 1
Destination
Port
Maximum -65535
Destination
Port
You configure service group objects when you have more than one service you want to specify in a rule that
matches service. You can group all Web services and group all mail services, for example, if you want to have
FortiADC Handbook 359
Fortinet Technologies, Inc.
Chapter 10: Shared Resources Creating service groups
Basic Steps
Settings Guidelines
Name Specify a unique name for the service group configuration. Valid characters are A-
Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.
Member List
Name Configuration name. Valid characters are A-Z, a-z, 0-9, _, and -. No spaces.
After you initially save the configuration, you cannot edit the name.